【发布时间】:2016-10-18 14:43:25
【问题描述】:
我在 hp touchsmart 600 上运行 windows 7 64 位(32 位 python)。不久前我卸载然后重新安装了 opencv 2.4.3。在卸载和重新安装之间,我卸载了一些我认为没有被使用的程序。现在 opencv 仅在 opencv 能够正确访问我的网络摄像头之前显示黑屏。
但是,如果我使用摄像头 2(即 cam = create_capture(2,...)),opencv 能够正确使用我的网络摄像头。为什么camera 0突然停止工作?它是否以某种方式变成了摄像头 2,或者我是否可以卸载 opencv 访问我的网络摄像头所需的依赖项?此外,使用摄像头 1 和 3 也可以,即使我只有一个网络摄像头。
【问题讨论】:
-
如果您只有一个摄像头,只需传递值 -1(而不是零)。由于摄像头 0 停止工作,我只能猜测在 Windows 下无法保证第一个摄像头被分配给 0。但我建议转移到较新的 OpenCV API。在这个新版本中,您将使用
VideoCapture而不是CaptureFromCam,现在您指定 0(就像旧 API 中的 -1 一样)。 -
您能解释一下较新的 opencv api 是什么意思吗? opencv 2.4.3 不是最新的吗?
-
OpenCV 2.4.3 是最新版本。在其中,python 绑定有两个 API,旧的
cv和新的cv2。检查这个:stackoverflow.com/questions/10417108/…
标签: python opencv dependencies webcam