我有一个相当老的摄像头。我一直在尝试使其工作。我从guvcview开始工作,但是它只给我捕获的第一帧,然后停止。现在还好。
我正在尝试使用OpenCV重新创建此行为。我在linux上并使用python。据我了解,我最好的选择是让OpenCV使用guvcview正在使用的v4l2。
我的长远想法是只获取第一帧,但是要循环执行以获取“视频”,但是帧速率较低。
但是,通过下面的非常简单的程序,出现以下错误:
import cv2
cap = cv2.VideoCapture(0)
ret, frame = cap.read()
if frame:
cv2.imshow("frame", frame)
我循环执行此代码,直到向我展示一些东西。我得到的错误:
select timeout
VIDIOC_DQBUF: Resource temporarily unavailable
VIDIOC_QBUF: Invalid argument
我有时会在guvcview中得到相同的错误,但是重新启动该程序将解决此问题。请注意,在我的程序运行时,guvcview无法正常工作(即使未显示任何图像)。还要注意,read()函数需要几秒钟的时间才能返回。
我遇到相同的错误:(您找到解决方案了吗?
最好的问候oli