Невозможно захватить изображение с камеры FireWire с помощью OpenCV - PullRequest
0 голосов
/ 19 октября 2011

Я пытаюсь захватить изображение с камеры Claron MicronTracker (FireWire), используя OpenCV 2.3.1 в Windows XP.Функция cvCaptureFromCAM не работает.Я читал, что OpenCV не может получать данные с цифровых камер, кроме USB, на платформах Windows - это правда?Нет решения для получения данных с камеры FireWire с использованием OpenCV в Windows?

Пожалуйста, помогите мне.

1 Ответ

2 голосов
/ 19 октября 2011

Вы, безусловно, можете использовать OpenCV с камерами Firewire в Windows. Я сделал это с несколькими поставщиками камер Firewire (Point Grey, Источник изображений и т. Д.). К сожалению, вы не сможете использовать класс OpenCV VideoCapture для этого.

Вы можете использовать драйвер CMU1394 (при условии, что ваша вышеупомянутая камера совместима с ним) или драйвер камеры производителя для захвата кадров и размещения этих буферов данных в cv::Mat , Если вам нужен конкретный контроль параметров камеры, лучше всего использовать драйвер поставщика. Это даст вам максимальный контроль, но крепко соединит вас со своей камерой. Вы можете создать подкласс VideoCapture и реализовать драйвер поставщика под тем же интерфейсом, чтобы несколько смягчить эту связь.

Здесь - короткий пример того, как это сделать с драйвером CMU.

РЕДАКТИРОВАТЬ: Сегодня я узнал, что OpenCV имеет встроенную поддержку CMU-совместимых камер с мая 2010 года. Класс, который реализует это здесь . Я не верю, что это компилируется в библиотеки по умолчанию. Итак, вам придется собирать OpenCV из исходного кода самостоятельно. Вам нужно раскомментировать строку //#define HAVE_CMU1394 1, чтобы она заработала. Надеюсь, что это полезно!

...