小编lic*_*.mk的帖子

如何优化 OpenCV 中视频流的帧抓取?

我在OpenCV中遇到了帧捕获效率低的问题。

\n\n
    \n
  1. 硬件软件。

    \n\n
      \n
    • 带 HDMI 显示屏的 Raspberry Pi 3(1.2 GHz 四核 ARM)
    • \n
    • 网络摄像机:LAN 连接、RTSP、H264 编解码器、1280x720 分辨率、20 fps、1 GOP、2500 kB/s VBR 比特率(参数可更改)。
    • \n
    • 操作系统 Raspbian Stretch
    • \n
    • Python 3.5
    • \n
    • OpenCV 4.1
    • \n
    • 流媒体1.0
    • \n
  2. \n
  3. 任务。

  4. \n
\n\n

从 IP 摄像机获取视频流,识别图像并显示生成的视频(带有标记和消息)。

\n\n

重要特点:实时处理、高清分辨率(1280x720)、高帧率(>20 fps)、连续运行数小时。

\n\n
    \n
  1. 我的解决方案。
  2. \n
\n\n

一般算法:源视频流 -> 解码和帧抓取 -> 在 OpenCV 中处理帧 -> 将处理后的帧组装成视频流 -> 使用 Raspberry Pi GPU 显示视频

\n\n

OpenCV 输出/显示方法 - imshow - 即使在低分辨率视频下也不能很好地工作。唯一允许使用 Raspberry Pi GPU 解码和显示视频的库是 Gstreamer。 …

python opencv video-capture gstreamer raspberry-pi3

5
推荐指数
1
解决办法
7664
查看次数

标签 统计

gstreamer ×1

opencv ×1

python ×1

raspberry-pi3 ×1

video-capture ×1