python - 我为什么会收到此错误:imutils VideoStream(src = 0)返回VIDIOC_QBUF:树莓派中的无效参数

标签 python opencv raspberry-pi webcam imutils

我只在Raspberry Pi 4中运行以下简单代码:

from imutils.video import VideoStream

# initialize the video streams and allow them to warmup
print("[INFO] starting cameras...")
webcam = VideoStream(src=0).start()

我可以使用Raspberry Pi相机毫无问题地运行此代码,但是Logitech C310网络摄像头出现错误。

错误是:VIDIOC_QBUF: Invalid argument
与终端中的fswebcam一起使用时,摄像头可以完美运行。我也尝试将其与在线摄像头测试一起使用,并且可以正常工作。我唯一的问题是相机无法与我的Python代码一起使用。我还尝试将其与opencv一起使用,并且返回None

硬件:Raspberry Pi 4 4GB

操作系统:Raspbian Buster

希望有人能帮助我,谢谢。

最佳答案

我通过降低分辨率解决了Logitech C920的类似问题。以最大分辨率(1920x1080),我还会收到VIDIOC_QBUF: Invalid argument错误,但是通过降低分辨率,我可以读取帧:

from cv2 import cv2
cam = cv2.VideoCapture(0)

# Change the camera setting using the set() function
cam.set(cv2.CAP_PROP_FRAME_WIDTH, 1920)
cam.set(cv2.CAP_PROP_FRAME_HEIGHT, 1080)

retval, frame = cam.read()

# do stuff with the captured image here
cam.release()

关于python - 我为什么会收到此错误:imutils VideoStream(src = 0)返回VIDIOC_QBUF:树莓派中的无效参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58763384/

相关文章:

opencv - 如何防止我的对象检测程序检测到多个不同大小的对象?

python - 获取正值之和与负值之和

Android CameraX Analyzer Image 格式为 YUV_420_888 到 OpenCV Mat

opencv - OpenCV图像拼接在右边界之后留下空白区域

c++ -/usr/bin/ld : build-debug/obj/gpsitem. o: 文件无法识别:文件被截断

java - Java 在 BeagleBone Black(或 Raspberry Pi)中运行良好吗?

Python bash 输出到字符串

python - 导入 zlib ImportError : No module named zlib

python - 如何在 Odoo 中从产品模板属性行创建产品变体?

python - Django 通过多个过滤器过滤,检查某些条件