使用OpenCV在Python中捕捉摄像头流 - 需要帮助

5 投票
1 回答
9363 浏览
提问于 2025-04-16 10:49

我在Arch Linux上运行Python2.7。我是通过Pacman安装的OpenCV。

我使用的Python代码是:

import cv

capture = cv.CaptureFromCAM(0)

非常简单。目前我只是想让Python能够访问我的摄像头。但上面的代码输出了:

[user@host python]$ python2.7 webcam.py 
VIDIOC_QUERYMENU: Invalid argument
VIDIOC_QUERYMENU: Invalid argument
VIDIOC_QUERYMENU: Invalid argument

我的摄像头在Cheese(一个Linux的摄像头程序)中工作得很好。所以,应该没有驱动或模块的问题...

有什么想法吗?

1 个回答

3

看看这个链接: 使用OpenCV和Python显示摄像头画面

看起来你在调用 .CaptureFromCAM() 时没有传递正确的参数。如果只有一个摄像头,你可以这样做:

    capture = cv.CaptureFromCAM(-1)

这里的 -1 是告诉程序去找任何可以找到的摄像头(详细信息可以查看 这个链接)。

撰写回答