我不清楚libusb和libdc1394库是如何工作的,除了他们处理相机的握手和通过USB总线的数据传输。 OpenCV通常可以非常容易地打开相机并开始处理帧,但不幸的是,当它不起作用时,不清楚如何调试。我找到了libusb和libdc1394的python包装器,并将它们包含在我的代码中,这导致没有错误,但也没有运气抓取框架。
如果您没有确切的答案,建议解决此问题的策略,即我应该如何系统地接近这一点,诊断所有可能的故障模式。有没有办法让我可以看到更多OpenCV试图检测和从相机读取时发生的事情?
我的python / opencv代码适用于简单的capture = cv2.VideoCapture(0)
但不适用于capture = cv2.VideoCapture(1)
,输出如下:
Warning, camera failed to properly initialize!
Cleaned up camera.
通常cv2.VideoCapture(0)会在我的macbook上提供内置摄像头,据我所知,cv2.VideoCapture(1)将提供下一个可用的摄像头(即通过USB插入)。
我知道相机在Windows机器上运行良好(在Windows Movie Maker中)。我是否需要在引擎盖下做一些事情才能让python和opencv在OS X下识别相机?