я пытался использовать cvCaptureFromCAM для 2.2, и мне сказали, что cv :: Mat не будет работать с ним - PullRequest
1 голос
/ 28 июня 2011

Если cvCaptureFromCAM является версией захвата камеры 2.0-2.1, то какая версия 2.2? Если это все еще может работать на 2.2, то почему я получаю ошибку? Спасибо за помощь заранее.

Ответы [ 2 ]

3 голосов
/ 28 июня 2011
2 голосов
/ 29 июня 2011

Проблема в том, что вы смешиваете интерфейс C ++ OpenCV с интерфейсом C. Выберите один из них и придерживайтесь его до конца.

В интерфейсе C cvCaptureFromCAM() возвращает CvCapture*, который должен использоваться для извлечения кадров через cvQueryFrame(), а функция this возвращает IplImage*, а не cv::Mat.

CvCapture* capture = cvCaptureFromCAM(CV_CAP_ANY);

IplImage* frame = cvQueryFrame(capture);
// ... code to process frame ...

Если вы выбираете интерфейс C ++, проверьте ссылку, которую дал вам Мартин.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...