2

我在 Ubuntu 下带有网络摄像头的 Beagleboard xM 上运行 OpenCV。网络摄像头运行良好,但仅限于 YUYV 模式。即,使用 jpeg 压缩的 luvcview 有许多帧被截断,颜色不正确等。但是 luvcview -f YuYV 工作得很好。

是否可以为 OpenCV 禁用 jpeg 压缩?

我已经尝试使用 make 选项构建和安装 openCV:--without-jpeg,但是完成 make 和 make 安装需要 4 个小时,并且通常在完成 90%+ 时崩溃。

有没有办法交叉编译这个非 jpeg 版本的 OpenCV for ARM,或者使用预构建的安装包禁用 jpeg?

安装时出错:

[ 95%] 构建 CXX 对象测试/cv/CMakeFiles/opencv_test.dir/src/amoments.o 链接 CXX 可执行文件 ../../bin/opencv_test CMakeFiles/opencv_test.dir/src/highguitest.o:在函数 `CV_HighGuiTest ::运行(int)':

... ETC

../../lib/libopencv_features2d.so.2.2.0:未定义的对cv::SIFT;:SIFT(double, bool bool, int, int, int, int)) ...等的引用

collect2: ld 返回 1 退出状态 make[2]: * [bin/opencv_test] 错误 1 ​​make[1]: * [tests/cv/CMakeFiles/opencv_test.dir/all] 错误 2 make: * [all] 错误 2 (回到 bash)

4

1 回答 1

2

我有同样的问题。这可能会有所帮助:http ://tech.groups.yahoo.com/group/OpenCV/message/77273

您可以在 modules/features2d/src/sift.cpp 中启用 SIFT。您可以在文件中搜索#ifdef arm。注释 sift.cpp 中的第 51-53 行,例如://#define ARM_NO_SIFT

此外,如果您使用的是小猎犬,则需要使用 -DWITH_JPEG=OFF 选项运行 cmake。

于 2011-04-12T07:57:41.847 回答