【问题标题】:YUYV Framerate faster than MJPG from USB Camera OpenCV来自 USB 相机 OpenCV 的 YUYV 帧速率比 MJPG 更快
【发布时间】:2018-09-30 08:28:10
【问题描述】:

我正在使用运行 cortex A5 @500MHz 的 SOM,并试图最大化从 USB 摄像头接收的帧速率。我的相机支持使用 YUYV 和 MJPEG 进行视频拍摄。

其他帖子建议强制 opencv 从摄像头读取 MJPEG 帧,但这会减慢帧速率。

目前我可以在 640x480 下以大约 18 fps 的速度读取 YUYV 格式和大约 10 fps 的速度读取 MJPEG。目前我只是抓帧,没有做任何其他处理。我在每个循环中获取 CAP_PROP_FOURCC 格式,以确保 opencv 正确设置捕获格式。

我目前正在运行 opencv 4 和 python3.5

任何想法为什么会发生这种情况?

编辑:捕获代码:

# Repeatedly capture current image
while True:
 ret, image = cap.read()
 if image is None:
    time.sleep(0.5)
    continue
 codec = cap.get(cv2.CAP_PROP_FOURCC)
 print(codec)
 # Print the framerate.
 text = '{:.2f}, {:.2f}, {:.2f} fps'.format(*fps.tick())
 print(text)

【问题讨论】:

  • mjpeg 需要更少的带宽,但需要更多的相机处理能力。尝试删除 CAP_PROP_FOURCC 读数,这可能会或可能不会很慢,具体取决于驱动程序。发布您的捕获代码。
  • opencv 4 是 alpha 状态 atm,最好使用 opencv 3.4.x atm。

标签: python python-3.x opencv


【解决方案1】:

请提供您正在使用的确切 SOM 和相机。

有很多因素,例如相机拍摄的图像格式、传输方式以及 SOM 接收和管理的方式。

就带宽而言,传输它们不应该是问题。

我假设 opencv 中的设置仅适用于 SOM,不会更改相机捕获的格式,因此 SOM 需要进行更多处理,因此帧速率会下降。

[编辑] 我还不能发表评论,所以我希望你能阅读这篇文章……你的相机链接已失效:/

【讨论】:

猜你喜欢
  • 2012-04-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-14
  • 1970-01-01
  • 2019-01-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多