OpenCV for ARM (Beagleboard) using YUYV instead of JPEG compression?
I am running OpenCV on a Beagleboard xM with a webcam under Ubuntu. The webcam runs fine, but only in YUYV mode. I.e., luvcview using jpeg compression has many frames which are half cut-off, incorrect colors etc. But luvcview -f YuYV works perfectly.
Is it possible to disable jpeg compression for OpenCV?
I've tried building and installing openCV with the make option: --without-jpeg, but it takes 4 hours to complete the make and make install and usually crashes at 90%+ completed.
Is there a way to cross-compile this no-jpeg version of OpenCV for ARM, or a way to disable jpeg using pre-built installation packages?
Error during make install:
[ 95%] Building CXX object tests/cv/CMakeFiles/opencv_test.dir/src/amoments.o Linking CXX executable ../../b开发者_如何学JAVAin/opencv_test CMakeFiles/opencv_test.dir/src/highguitest.o: In function `CV_HighGuiTest::run(int)':
... etc
../../lib/libopencv_features2d.so.2.2.0: undefined reference to cv::SIFT;:SIFT(double, bool bool, int, int, int, int))
... etc
collect2: ld returned 1 exit status make[2]: * [bin/opencv_test] Error 1 make[1]: * [tests/cv/CMakeFiles/opencv_test.dir/all] Error 2 make: * [all] Error 2 (back to bash)
I am having the same issue. This might help: http://tech.groups.yahoo.com/group/OpenCV/message/77273
you can enable SIFT in modules/features2d/src/sift.cpp. you can search for #ifdef arm in the file. commenting the line 51-53 in sift.cpp e.g.: //#define ARM_NO_SIFT
Also if you are using a beagle you'll need to run cmake with the -DWITH_JPEG=OFF option.
精彩评论