用OpenWrt package方式编译OpenCV

首先进入wrtnode文件夹,输入下面的命令开始配置。

make menuconfig

WRTnode团队已经为大家写了一个demo,功能是调用摄像头连续拍摄六张照片:

WRTnode  ---> demos  ---> <*> opencv-test ...... opencv demo app

当然,还需要选择摄像头驱动:

Kernel modules  --->  Video Support  --->  

<*> kmod-video-core .......... Video4Linux support
<*>   kmod-video-uvc ......... USB Video Class (UVC) support
-*-   kmod-video-videobuf2 ... videobuf2 lib

编译

输入下面的命令开始编译吧!

make V=s

如果你编译过程中报错了,错误信息是找不到highgui等信息,原因就是SDK默认不编译highgui,但是opencv-test需要highgui,因此我们需要修改OpenCV的Makefile文件。

编辑wrtnode/feeds/packages/libs/opencv/Makefile文件,将highguivideostab开启。选项位于CMAKE_OPTIONS

-DBUILD_opencv_highgui:BOOL=ON \
-DBUILD_opencv_videostab:BOOL=ON \

当然,即使添加了以后,编译还是可能出问题,那么我们还需要将位于wrtnode/feeds/wrtnode/wrtnode/opencv-test/src/Makefile的Makefile进行修改,这是测试代码的Makefile,我们需要去掉第十行代码:

编译完成以后记得刷写固件到WRTnode上,固件地址:

运行

连接USB摄像头之后,我们执行cv_test,不出意外将会拍摄6张图片。

Last updated