я пытаюсь скомпилировать VLC 2.0 на Ubuntu 13.10 с поддержка opencv (v. 2.4.6.1). Компиляция выдает следующие ошибки:
COMPILE : libopencv_example_plugin_la-opencv_example.lo
opencv_example.c: In function 'Filter':
ERROR : opencv_example.c:185: 45: too few arguments to function 'cvHaarDetectObjects'
cvSize(20, 20) );
^
In file included from /usr/local/include/opencv/cv.h:71:0,
from opencv_example.c:41:
/usr/local/include/opencv2/objdetect/objdetect.hpp:139:15: note: declared here
CVAPI(CvSeq*) cvHaarDetectObjects( const CvArr* image,
^
WARNING : opencv_example.c:210: 57: assignment discards 'const' qualifier from pointer target type [enabled by default]
p_sys->event_info.p_region[i].p_description = "Face Detected";
^
make: *** [all] Error 2
Кто-нибудь сталкивался с такой же проблемой, или есть представление о том, как ее решить? Любая помощь приветствуется. Кажется, что поддержка opencv в прошлом была ошибочной, но проблема, похоже, была решена. А также тестирование библиотеки opencv с примером кода дает удовлетворительные результаты, так что я думаю, что проблема исходит от VLC …
Столкнулся с той же проблемой сегодня.
Откройте opencv_example.c или напишите, найдите строку создания cvHaarDetectObjects. Начинается с
CvSeq *faces = cvHaarDetectObjects( p_img[0], ...
Замените всю декларацию cvHaarDetectObjects на строку следующим образом:
CvSeq *faces = cvHaarDetectObjects( p_img[0], p_sys->p_cascade, p_sys->p_storage,
1.15, 5, CV_HAAR_DO_CANNY_PRUNING, cvSize(0, 0), cvSize(20,20));
Эти изменения сделали мой opencv_example.c хорошо скомпилированным (opencv-2.4.9, vlc-2.0.1, Ubuntu-12.04)
Других решений пока нет …