我正在尝试使用 opencv 和 python 将 beaglebone 与 usb 摄像头一起使用。我无法捕获图像。然而,命令行工具流光似乎工作。对于 python,我得到:
>>> import cv2
>>> cap = cv2.VideoCapture(0)
>>> cap.read()
libv4l2: error dequeuing buf: No such device
VIDIOC_DQBUF: No such device
不过,我可以从命令行执行以下操作,而且效果很好:
streamer -f jpeg -o image.jpeg
有一个/dev/video0当我使用 lsusb 时,我将相机视为
Bus 001 Device 003: ID 1908:2310 GEMBIRD
关于如何让相机与 cv2 一起工作的任何建议
事实证明,这台相机的分辨率非常低,我不得不指定它是 320x240,而不是默认的 640x480。无论如何,流光默认情况下是 320x240,所以它默认工作。
这是代码。
import cv2
cap = cv2.VideoCapture(0)
cap.set(3,320)
cap.set(4,240)
status,image = cap.read()
cv2.imwrite("current.jpg", image)
我是一名优秀的程序员,十分优秀!