2011-10-19 38 views
0

我想在Windows XP上使用OpenCV 2.3.1从Claron MicronTracker cam(FireWire)捕获图像。功能cvCaptureFromCAM不起作用。我读到OpenCV无法从Windows平台下的USB以外的数码相机获取数据 - 这是真的吗?在Windows上使用OpenCV从FireWire摄像头获取数据没有解决方案?无法使用OpenCV从FireWire cam捕获图像

请帮帮我。

回答

2

你当然可以在Windows上使用OpenCV和Firewire相机。我已经与几个不同的Firewire相机厂商(Point Grey,Imaging Source等)一起完成了这项工作。不幸的是,您将无法使用OpenCV VideoCapture类来执行此操作。

您的选择是使用CMU1394驱动程序(假设您的上述相机与其兼容)或供应商的相机驱动程序来捕获帧以及数据缓冲区在cv::Mat中的位置。如果您需要特定的相机参数控制,最好的办法就是使用供应商的驱动程序。这会给你最大的控制力,但将你紧紧地与他们的相机联系起来。您可以分类VideoCapture,并在相同的接口下实施供应商的驱动程序,以减少这种耦合。

Here是用CMU驱动程序做这个的一个简短例子。

编辑:我今天发现了OpenCV的已自2010年5月,将实现该是here类内置了对CMU兼容的相机支持。我不相信这是默认编译到库中的。所以,你将不得不从源代码自己构建OpenCV。您需要取消注释//#define HAVE_CMU1394 1以使其正常工作。希望有帮助!

+0

感谢您的回答,我会尽量按照您的解释去做。 –

+0

我按照[此处](http://www-2.cs.cmu.edu/~iwan/1394/install.html)所示的步骤操作,但相机不接受CMU 1394作为其新驱动程序。 –

相关问题