当前位置: 首页 > news >正文

树莓派超全系列教程文档--(63)rpicam-apps可用选项介绍之常用选项

rpicam-apps可用选项介绍之常用选项

    • `rpicam-apps` 选项参考
      • 常用选项
        • `help`
        • `version`
        • `list-cameras`
        • `camera`
        • `config`
        • `timeout`
        • `preview`
        • `fullscreen`
        • `qt-preview`
        • `nopreview`
        • `info-text`
        • `width` 和 `height`
        • `viewfinder-width` 和 `viewfinder-height`
        • `mode`
          • 打包格式详细信息
          • 解压格式详细信息
        • `viewfinder-mode`
        • `lores-width` 和 `lores-height`
        • `hflip`
        • `vflip`
        • `rotation`
        • `roi`
        • `hdr`

文章来源: http://raspberry.dns8844.cn/documentation

原文网址

rpicam-apps 选项参考

常用选项

除非另有说明,否则以下选项适用于所有具有相似或相同语义学的 rpicam-apps

要将以下选项之一传递给应用程序,请在选项名称前加上 -- .如果选项需要值,请在选项名称后立即传递该值,并用单个空格分隔。如果值包含空格,请将值用引号括起来。

一些选项有速记别名,例如 -h 而不是 --help 。使用这些速记别名而不是完整的选项名称可以节省空间和时间,但会降低易读性。

help

别名: -h

打印完整的选项集,以及每个选项的简要概要。不接受值。

version

打印 libcamrpicam-apps 的版本字符串。不接受值。

示例输出:

rpicam-apps build: ca559f46a97a 27-09-2021 (14:10:24)
libcamera build: v0.0.0+3058-c29143f7
list-cameras

列出连接到Raspberry Pi的检测到的相机及其可用的传感器模式。不接受值。

传感器模式标识符具有以下形式: S<Bayer order><Bit-depth>_<Optional packing> : <Resolution list>

裁剪在本机传感器像素中(即使在像素合并模式下)指定为 (<x>, <y>)/<Width>×<Height> . (x, y) 指定传感器阵列中大小为 width x height 的裁剪窗口的位置。

例如,以下输出显示有关索引0的 IMX219 传感器和索引1的 IMX477 传感器的信息:

Available cameras
````````````-
0 : imx219 [3280x2464] (/base/soc/i2c0mux/i2c@1/imx219@10)Modes: 'SRGGB10_CSI2P' : 640x480 [206.65 fps - (1000, 752)/1280x960 crop]1640x1232 [41.85 fps - (0, 0)/3280x2464 crop]1920x1080 [47.57 fps - (680, 692)/1920x1080 crop]3280x2464 [21.19 fps - (0, 0)/3280x2464 crop]'SRGGB8' : 640x480 [206.65 fps - (1000, 752)/1280x960 crop]1640x1232 [41.85 fps - (0, 0)/3280x2464 crop]1920x1080 [47.57 fps - (680, 692)/1920x1080 crop]3280x2464 [21.19 fps - (0, 0)/3280x2464 crop]
1 : imx477 [4056x3040] (/base/soc/i2c0mux/i2c@1/imx477@1a)Modes: 'SRGGB10_CSI2P' : 1332x990 [120.05 fps - (696, 528)/2664x1980 crop]'SRGGB12_CSI2P' : 2028x1080 [50.03 fps - (0, 440)/4056x2160 crop]2028x1520 [40.01 fps - (0, 0)/4056x3040 crop]4056x3040 [10.00 fps - (0, 0)/4056x3040 crop]

对于上面示例中的IMX219传感器:

  • 所有模式都有 RGGB Bayer排序
  • 所有模式均可在所列分辨率下提供 8 位或 10 位 CSI2 封装读数
camera

选择要使用的相机。从 可用相机列表。

config

别名: -c

指定一个包含CLI选项和值的文件。考虑一个名为 example_configuration.txt 的文件,该文件包含以下文本,将选项和值指定为键值对,每行一个选项,仅长(非别名)选项名称:

timeout=99000
verbose=

TIP: 省略您通常在命令行上传递的前导 -- 。对于缺少值的标志,例如上面示例中的 verbose ,您必须在后面添加 =

然后,您可以运行以下命令来指定99000毫秒的超时和详细输出:

$ rpicam-hello --config example_configuration.txt
timeout

别名: -t

默认值:5000毫秒(5秒)

指定应用程序在关闭前运行多长时间。这适用于视频录制和预览窗口。捕获静止图像时,应用程序会在捕获输出图像之前显示 timeout 毫秒的预览窗口。

要无限期运行应用程序,请指定值 0

preview

别名: -p

设置桌面或DRM预览窗口的位置(x,y坐标)和大小(w,h尺寸)。不影响相机请求的图像的分辨率或长宽比。缩放图像大小和柱子或信箱图像长宽比以适应预览窗口。

以逗号分隔的形式传递预览窗口尺寸: x, y,w,h

示例: rpicam-hello --preview 100,100,500,500

在这里插入图片描述

fullscreen

别名: -f

强制预览窗口使用整个屏幕,没有边框或标题栏。缩放图像大小并调整图像宽高比,使其适合整个屏幕。不接受数值。

qt-preview

使用Qt预览窗口,它比替代窗口消耗更多资源,但支持X窗口转发。与 fullscreen 标志不兼容。不接受值。

nopreview

别名: -n

使应用程序_不_显示预览窗口。不接受值。

info-text

默认值: "#%frame (%fps fps) exp %exp ag %ag dg %dg"

在桌面环境中运行时,将提供的字符串设置为预览窗口的标题。支持以下图像元数据替换:

在这里插入图片描述

在这里插入图片描述

widthheight

每个都接受一个数字,定义捕获图像的尺寸(以像素为单位)。

对于 rpicam-stillrpicam-jpegrpicam-vid ,指定输出分辨率。

对于 rpicam-raw ,指定原始图像的分辨率。对于采用 2×2 分档读出模式的相机,指定等于或小于分档模式的分辨率可捕获 2×2 分档的原始图像。

对于 rpicam-hello ,没有效果。

例子:

  • rpicam-vid -o test.h264 --width 1920 --height 1080 捕获1080p视频。

  • rpicam-still -r -o test.jpg --width 2028 --height 1520 捕获2028×1520分辨率的JPEG。如果与HQ相机一起使用,则使用2×2 像素合并模式,因此原始文件( test.dng )包含2028×1520原始Bayer图像。

viewfinder-widthviewfinder-height

每个都接受一个数字,定义预览窗口中显示的图像的尺寸(以像素为单位)。不影响预览窗口尺寸,因为图像会调整大小以适应。不影响捕获的静止图像或视频。

mode

允许您以下列以冒号分隔的格式指定摄像机模式: <宽度>:<高度>:<比特深度>:<包装>。如果所提供的值不完全匹配,系统会为传感器选择最接近的可用选项。您可以使用打包 (P) 或未打包 (U) 的打包格式。影响存储视频和照片的格式,但不影响传递到预览窗口的帧格式。

位深和封装是可选的。
位深度默认为12。
打包默认为 P (打包)。

有关传感器可用的位深度、分辨率和封装选项的信息,请参阅 list-cameras

例子:

  • 4056:3040:12:P - 4056×3040 分辨率,每像素 12 位,打包。
  • 1632:1224:10 - 1632×1224 分辨率,每个像素 10 位。
  • 2592:1944:10:U - 2592×1944 分辨率,每像素 10 位,未打包。
  • 3264:2448 - 3264×2448 分辨率。
打包格式详细信息

打包格式使用较少的像素数据存储空间。

在 Raspberry Pi 4 和更早的设备上,打包格式使用 MIPI CSI-2 标准打包像素。这意味着

  • 10 位摄像头模式将 4 个像素打包成 5 个字节。前 4 个字节包含每个像素的 8 个最有效位(MSB),最后一个字节包含 4 对最小有效位(LSB)。
  • 12 位摄像机模式将 2 个像素打包成 3 个字节。前 2 个字节包含每个像素的 8 个最有效位 (MSB),最后一个字节包含两个像素的 4 个最小有效位 (LSB)。

在 Raspberry Pi 5 及更高版本的设备上_,打包格式通过视觉无损压缩方案将像素值压缩为每个像素 8 位(1 个字节)。

解压格式详细信息

解压缩格式提供的像素值更易于手动操作,但像素数据的存储空间却更大。

在所有设备上,未打包格式每个像素使用 2 个字节。

在 Raspberry Pi 4 和更早的设备上,应用程序会在 most significant end 应用零填充。在未打包格式中,10 位相机模式的像素值不能超过 1023。

在 Raspberry Pi 5 及更早的设备上,应用程序会在 least significant end 应用零填充,因此图像会使用传感器提供的像素深度的全部 16 位动态范围。

viewfinder-mode

mode 选项相同,但它适用于传递到预览窗口的数据。有关详细信息,请参阅 mode 文档。

lores-widthlores-height

从相机传送第二个分辨率较低的图像流,缩小到指定的尺寸。

每个都接受一个数字,定义低分辨率流的维度(以像素为单位)。

可用于预览和视频模式。不适用于静态捕获。如果您指定的长宽比与正常分辨率流不同,则会生成非方形像素。

对于 rpicam-vid ,禁用额外的颜色去噪处理。

与 图像后处理 结合使用时对图像分析很有用。

hflip

水平翻转图像。不接受值。

vflip

垂直翻转图像。不接受值。

rotation

旋转从传感器提取的图像。仅接受值0或180。

roi

裁剪从传感器的完整字段中提取的图像。接受四个十进制值,ranged0到1,格式如下: <x>,<y>,<w>, h> 。这些值中的每一个都代表可用宽度和高度的百分比,作为0到1之间的小数。

这些值定义了以下比例:

  • <x> :提取图像前要跳过的X坐标
  • <y> :提取图像前要跳过的Y坐标
  • <w> :要提取的图像宽度
  • <h> :要提取的图像高度

默认为 0,0,1,1 (从第一个X坐标和第一个Y坐标开始,使用100%的图像宽度,使用100%的图像高度)。

例子:

  • rpicam-hello--roi 0.25,0.25,0.5,0.5 选择从图像中心裁剪的总像素数的一半(跳过X坐标的前25%,跳过Y坐标的前25%,使用总图像宽度的50%,使用总图像高度的50%)。
  • rpicam-hello--roi 0,0,0.25,0.25 选择从图像左上角裁剪的总像素数的四分之一(跳过X坐标的前0%,跳过Y坐标的前0%,使用25%的图像宽度,使用25%的图像高度)。
hdr

默认值: off

以HDR模式运行相机。如果不带值传递,则假定 auto 。接受以下值之一:

  • off - 禁用 HDR。
  • auto - 在支持的设备上启用 HDR。使用传感器的内置 HDR 模式(如果可用)。如果传感器没有内置 HDR 模式,则使用可用的板载 HDR 模式。
  • single-exp - 使用板载 HDR 模式(如果可用),即使传感器有内置 HDR 模式。如果板载 HDR 模式不可用,则禁用 HDR

Raspberry Pi 5及更高版本的设备具有板载HDR模式。

要检查传感器中的内置 HDR 模式,除了 list-cameras 之外,还需传递此选项。

上一篇 – 树莓派超全系列教程文档–(62)使用rpicam-app通过网络流式传输视频
下一篇 – 树莓派超全系列教程文档–(64)rpicam-apps可用选项介绍之相机控制选项

http://www.xdnf.cn/news/980569.html

相关文章:

  • 绝缘胶垫怎么选择,耐压、防滑、厚度、质量参数如何选择?
  • [学习] C语言结构体与联合体的对比分析
  • 网络层 IP协议(第一部分)
  • Web前端基础之HTML
  • 通过Docker和内网穿透技术在Linux上搭建远程Logseq笔记系统
  • 对比学习(Contrastive Learning)方法详解
  • Docker Swarm overlay 和 docker_gwbridge
  • 我们来学mysql -- keepalive主从高可用
  • 线 性 数 据 结 构 双 雄:栈 与 队 列 的 原 理、实 现 与 应 用
  • K8S多维度问题排查
  • argocd部署cli工具并添加k8s集群
  • Spring cloud-k8s容器化部署
  • 6.10【Q】网络安全期末复习
  • 动态多目标进化算法:VARE(Vector Autoregressive Evolution)求解DF1-DF14,提供完整MATLAB代码
  • 线程(下)【Linux操作系统】
  • 鸿蒙Next仓颉语言开发实战教程:订单列表
  • 削皮刨结构化网格划分
  • Ubuntu 24.04 systemd-journald日志系统 journalctl 查看日志
  • 与AI联手,ModbusTCP 转Ethercat控制系统升级解决刚需新思路
  • 区块链世界的“破冰“之旅:比特币与以太坊首次组网全解析
  • 【MySQL进阶】MySQL程序
  • Spring Cache+Redis缓存方案 vs 传统redis缓存直接使用RedisTemplate 方案对比
  • 中心化交易所(CEX)架构:高并发撮合引擎与合规安全体系
  • Stream流常用方法大全
  • DAS-U250高性能分布式光纤声波传感器
  • 谷粒商城-分布式微服务 -集群部署篇[一]
  • MYSQL 字段切分特定值
  • 从 8 秒到 1 秒:前端性能优化的 12 个关键操作
  • 鱼书第三章代码MNIST
  • LVDS系列16:Xilinx 7系输出延迟ODELAYE2