2

我只是尝试使用以下命令在 Raspberry Pi 上使用 opencv 访问 USB 网络摄像头:

import cv2, time

cap = cv2.VideoCapture(0)
time.sleep(3)

while True:
    time.sleep(0.1)
    ret, frame = cap.read()

    if ret:
        cv2.imshow('frame', frame)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

cap.release()
cv2.destroyAllWindows()

它只是生成一个永无止境的错误消息流: VIDIOC_QBUF: Invalid Argument

当我插入 Logitech Webcam C260 或 Logitech Webcam C910 时,摄像头灯会亮起并创建 /dev/video0 文件。还尝试了两种不同的 RPi 4。

我的个人镜像构建:Raspberry Pi 4、Raspbian Buster v10、Python 3.7.3、OpenCV 4.1.0

PyImageSearch 提供的图像构建:Raspberry Pi 4、Raspbian Buster v10、Python 3.7.3、OpenCV 4.1.1

其他人遇到过这个问题https://raspberrypi.stackexchange.com/questions/105358/raspberry-pi4-error-while-using-2-usb-cameras-vidioc-qbuf-invalid-argument,但我还没有找到任何解决方案。

任何帮助,将不胜感激。

4

1 回答 1

1

我遇到了同样的问题,通过安装 uv4l-uvc 解决了这个问题。

sudo apt install uv4l uv4l-uvc
于 2020-01-11T02:23:17.737 回答