相机--相机标定实操

教程

camera_calibration移动画面示例

usb_cam使用介绍和下载

我使用的是USB相机,所以直接使用ros的usb_cam功能包驱动相机闭关获取实时图像,然后用ros的camera_calibration标定相机。

查询摄像机的信息

复制代码
v4l2-ctl -d 0 --all的作用

命令详解:

  • v4l2-ctl:这是 V4L2 的命令行控制工具,属于 v4l-utils 软件包。
  • -d 0:指定设备节点 /dev/video0-d 表示 device,后面的数字是设备索引号,例如:
    • /dev/video0 对应索引 0,
    • /dev/video1 对应索引 1,依此类推。
  • --all:显示该设备的所有可用信息,包括:
    • 设备驱动信息
    • 支持的视频格式
    • 当前设置的视频格式
    • 支持的帧率
    • 控制项(如亮度、对比度、饱和度等)
    • 流媒体状态等

我的设备:

复制代码
v4l2-ctl -d 0 --all
Driver Info:
        Driver name      : uvcvideo
        Card type        : SDYH-8P0P: SDYH-8P0P
        Bus info         : usb-xhci-hcd.2.auto-1.1
        Driver version   : 6.1.83
        Capabilities     : 0x84a00001
                Video Capture
                Metadata Capture
                Streaming
                Extended Pix Format
                Device Capabilities
        Device Caps      : 0x04200001
                Video Capture
                Streaming
                Extended Pix Format
Media Driver Info:
        Driver name      : uvcvideo
        Model            : SDYH-8P0P: SDYH-8P0P
        Serial           : 
        Bus info         : usb-xhci-hcd.2.auto-1.1
        Media version    : 6.1.83
        Hardware revision: 0x00000823 (2083)
        Driver version   : 6.1.83
Interface Info:
        ID               : 0x03000002
        Type             : V4L Video
Entity Info:
        ID               : 0x00000001 (1)
        Name             : SDYH-8P0P: SDYH-8P0P
        Function         : V4L2 I/O
        Flags            : default
        Pad 0x01000007   : 0: Sink
          Link 0x02000010: from remote pad 0x100000a of entity 'Extension 3' (Video Pixel Formatter): Data, Enabled, Immutable
Priority: 2
Video input : 0 (Input 1: ok)
Format Video Capture:
        Width/Height      : 1920/1080
        Pixel Format      : 'MJPG' (Motion-JPEG)
        Field             : None
        Bytes per Line    : 0
        Size Image        : 4147200
        Colorspace        : sRGB
        Transfer Function : Rec. 709
        YCbCr/HSV Encoding: ITU-R 601
        Quantization      : Default (maps to Full Range)
        Flags

Driver Info(驱动信息)

复制代码
Driver Info:
        Driver name      : uvcvideo
        Card type        : SDYH-8P0P: SDYH-8P0P
        Bus info         : usb-xhci-hcd.2.auto-1.1
        Driver version   : 6.1.83
        Capabilities     : 0x84a00001
                Video Capture
                Metadata Capture
                Streaming
                Extended Pix Format
                Device Capabilities
        Device Caps      : 0x04200001
                Video Capture
                Streaming
                Extended Pix Format
  • Driver name :使用的内核驱动名称,这里是 uvcvideo,表示这是一个支持 USB Video Class (UVC) 的设备。
  • Card type :设备型号,这里是摄像头的名字:SDYH-8P0P
  • Bus info:设备连接的总线位置,这里是通过 USB 接口连接的。
  • Driver version:驱动程序版本号,这里是 Linux 内核版本 6.1.83。
  • Capabilities :设备能力位掩码,表示该设备支持的功能:
    • Video Capture:可以捕获视频流。
    • Metadata Capture:支持元数据(如时间戳等)。
    • Streaming:支持流式传输。
    • Extended Pix Format:支持扩展像素格式。
    • Device Capabilities:支持查询设备能力。
  • Device Caps :设备接口的能力,比 Capabilities 更细粒度,这里与上面类似。

Media Driver Info(媒体驱动信息)

复制代码
Media Driver Info:
        Driver name      : uvcvideo
        Model            : SDYH-8P0P: SDYH-8P0P
        Serial           : 
        Bus info         : usb-xhci-hcd.2.auto-1.1
        Media version    : 6.1.83
        Hardware revision: 0x00000823 (2083)
        Driver version   : 6.1.83
  • Model:设备型号,同上。
  • Serial:序列号,这里为空,表示未提供。
  • Media version:媒体框架的版本号。
  • Hardware revision:硬件版本号(十六进制),可用于识别不同批次硬件。
  • Driver version:驱动版本号

Interface Info(接口信息)

复制代码
Interface Info:
        ID               : 0x03000002
        Type             : V4L Video
  • ID:接口唯一标识符。
  • Type:接口类型,这里是标准的 V4L2 视频接口

Entity Info(实体信息)

复制代码
Entity Info:
        ID               : 0x00000001 (1)
        Name             : SDYH-8P0P: SDYH-8P0P
        Function         : V4L2 I/O
        Flags            : default
        Pad 0x01000007   : 0: Sink
          Link 0x02000010: from remote pad 0x100000a of entity 'Extension 3' (Video Pixel Formatter): Data, Enabled, Immutable
  • Entity:是 Media Framework 中的一个概念,代表一个功能模块(比如传感器、编码器等)。
  • Function:这个实体的功能是作为 V4L2 输入/输出设备。
  • Pad :表示实体的输入/输出端口。Sink 表示这是输入端口。
  • Link:表示与其他实体之间的连接关系,这里是来自另一个实体"Extension 3"的输出端口的数据链路,且为启用状态。

Format Video Capture(当前视频采集格式)

这是重点

复制代码
Format Video Capture:
        Width/Height      : 1920/1080
        Pixel Format      : 'MJPG' (Motion-JPEG)
        Field             : None
        Bytes per Line    : 0
        Size Image        : 4147200
        Colorspace        : sRGB
        Transfer Function : Rec. 709
        YCbCr/HSV Encoding: ITU-R 601
        Quantization      : Default (maps to Full Range)
        Flags
  • Width/Height:当前设置的图像分辨率,这里是 1920×1080。
  • Pixel Format :当前像素格式为 'MJPG',即 Motion JPEG,这是一种压缩格式,常用于摄像头以减少带宽需求。
  • Field :场模式,None 表示非隔行扫描(逐行扫描)。
  • Bytes per Line:每行字节数,对于 MJPG 格式通常为 0,因为它是压缩格式。
  • Size Image:一帧图像的大小(字节),这里是 1920×1080×(压缩后平均约 2B) ≈ 4MB。
  • Colorspace :色彩空间,这里是 sRGB
  • Transfer Function:传输函数,这里是 Rec. 709(标准伽马曲线)。
  • YCbCr Encoding:色度编码方式,这里是 ITU-R BT.601(适用于标清视频)。
  • Quantization :量化方式,Default (Full Range) 表示亮度值范围为 0~255(而不是 16~235 的 TV 范围)。
  • Flags:格式标志,目前为空。

查看相机支持的像素格式

复制代码
v4l2-ctl -d 0 --list-formats

问题

swscaler @ 0xaaaaf438c7e0] No accelerated colorspace conversion found from yuv422p to rgb24.

硬件加速不可用:你的系统可能缺少必要的硬件加速支持或驱动程序,无法提供从 YUV 到 RGB 的快速转换。

意味着 FFmpeg 在尝试将 YUV422P 格式的图像转换为 RGB24 格式时,没有找到任何硬件加速的方法来进行这个颜色空间转换。因此,它只能使用软件方式来完成这一任务,这通常会导致更高的 CPU 使用率,而且音频话题发送频率慢。

YUV 到 RGB 转换的需求 :当你使用 usb_cam 节点以原始像素格式(如 YUYV 或 YUV422P)读取摄像头数据时,ROS 需要将其转换为更常用的 RGB 格式以便进一步处理。如果没有硬件加速选项可用,这个转换过程将由 CPU 执行。

FFmpeg:

这是一个命令行工具,用于格式转换、裁剪、合并、缩放等操作。它可以将音频和视频数据从一种格式转换为另一种,并且支持大量的编解码器和文件格式。

本质上就是具有音频存储和发送格式转换一套代码。

相关推荐
youngong2 天前
强迫症之用相机快门数批量重命名文件
数码相机·文件管理
weixin_466485115 天前
halcon标定助手的使用
数码相机
诸葛务农7 天前
ToF(飞行时间)相机在人形机器人非接触式传感领域内的应用
数码相机·机器人
塞北山巅7 天前
相机自动曝光(AE)核心算法——从参数调节到亮度标定
数码相机·算法
美摄科技8 天前
相机sdk是什么意思?
数码相机
phyit8 天前
全景相机领域,影石何以杀出重围?
数码相机
鄃鳕8 天前
装饰器【Python】
开发语言·python·数码相机
聪明不喝牛奶8 天前
【已解决】海康威视相机如何升级固件
数码相机
PAQQ8 天前
1站--视觉搬运工业机器人工作站 -- 相机部分
数码相机·机器人
诸葛务农8 天前
人形机器人基于视觉的非接触式触觉传感技术
数码相机·机器人