2011-10-19 3 views
0

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

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

ответ

2

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

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

Here - это короткий пример этого с драйвером CMU.

EDIT: Я узнал сегодня, что OpenCV была построена в поддержку КМУ совместимых камер с мая 2010 Класс, который реализует это here. Я не думаю, что это по умолчанию компилируется в библиотеки. Таким образом, вам придется самостоятельно создавать OpenCV из источника. Вам нужно раскомментировать строку //#define HAVE_CMU1394 1, чтобы заставить ее работать. Надеюсь, что это полезно!

+0

Спасибо за ваш ответ, я постараюсь сделать так, как вы объяснили. –

+0

Я следую шагам, как показано [здесь] (http://www-2.cs.cmu.edu/~iwan/1394/install.html), но камера не принимает CMU 1394 в качестве своего нового драйвера. –

Смежные вопросы