Question

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 ../../bin/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)

Was it helpful?

Solution

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.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top