Failed to capture image from FireWire camera using OpenCV

I am trying to capture an image from a Claron MicronTracker (FireWire) camera using OpenCV 2.3.1 in Windows XP. The cvCaptureFromCAM function cvCaptureFromCAM not work. I read that OpenCV cannot receive data from digital cameras other than USB under Windows platforms - is that true? No solution for retrieving data from a FireWire camera using OpenCV on Windows?

Please help me.

0
source share
1 answer

You can use OpenCV with Firewire cameras in Windows. I did this with several different manufacturers of Firewire graphics cards (Point Gray, Imaging Source, etc.). Unfortunately, you cannot use the OpenCV VideoCapture class to do this.

Your options should use the CMU1394 driver (provided that your aforementioned camera is compatible with it) or the provider camera driver to capture frames and place these data buffers in cv::Mat . If you need specific control of camera settings, the best option would be to use a provider driver. This will give you maximum control, but firmly connect you to the camera. You can subclass VideoCapture and implement the vendor driver under the same interface to slightly soften this connection.

Below is a brief example of this with the CMU driver.

EDIT: Today I found out that since May 2010, OpenCV has built in support for CMU-compatible cameras. The class that implements this,. I don't think this compiles to libraries by default. Thus, you will have to create OpenCV from the source yourself. You need to uncomment the line //#define HAVE_CMU1394 1 to make it work. Hope this will be helpful!

+2
source

Source: https://habr.com/ru/post/1411985/


All Articles