完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 左岸cpx 于 2017-5-22 07:34 编辑 本节,我想分享一下交叉编译OpenCV的方法,由于OpenCV并没有发行ARM版本的OpenCV,所以我们需要下载opencv-unix到Linux宿主机上,利用交叉编译器arm-linux-gcc来将opencv编译成可以在ARM平台上运行的链接库。 先看一下,交叉编译后的OpenCV在Sinlinx A83T板子上运行的效果。 如上图,我这里通过V4L2获取了UVC相机拍摄的图片,视场中有一个标定靶,我们通过OpenCV里的库函数识别出两个圆的位置,并加以跟踪,在圆心处绘制蓝色的点。 1024 x 768的分辨率,帧频在6左右。 以下的交叉编译,全都是在宿主机上完成的,编译之后的OpenCV库文件,用U盘拷贝到板子上即可。 更为具体的内容,在我的CSDN博客上有:http://blog.csdn.net/u011964923/article/details/72588038 OK,所有的步骤如下: 系统环境: Ubuntu12.04 + OpenCV2.4.9 + arm-linux-gcc-4.3.2 (一)安装依赖库 运行OpenCV需要依赖一些库文件,所以在对OpenCV进行交叉编译之前,首先要安装7个依赖库。依赖关系如下: OpenCV |--------zlib |--------jpeg |--------libpng |--------zlib |--------tiff |--------zlib |--------ffmpeg |--------x264 |--------xvidcore首先需要下载这7个库文件,直接百度/谷歌搜索这些库文件,进入官网下载,解压。 1)libz的交叉编译
2)libpng的交叉编译
3)libjpeg的交叉编译
make过程中会报错:
这是因为,缺少libtool文件。 重新编译安装:
make install的过程中又会报错:
这是因为不存在 /usr/local/libjpeg/bin路径,及没有bin这个文件夹。
然后,重新执行 make install,上述的“文件夹不存在错误还会出现几次”,同样地,缺少哪个文件夹,我们就过去新建哪个文件夹就可以了。大概还会缺少man/man1, include等文件夹。记得,新建文件夹后要重新 make install,直到安装成功为止。 4)yasm的交叉编译
5)libx264的交叉编译
6)libxvid的交叉编译
7)ffmpeg的交叉编译
至此,所有的依赖库都已安装完毕,安装路径为:/usr/local/arm/opencv-depend (二)交叉编译OpenCV2.4.91)下载OpenCV2.4.9 2)安装cmake gui
3)拷贝文件 4)配置交叉编译工具链
粘贴以下配置:
保存之后:
默认安装目录为 opencv-2.4.9/build/install ,改为 /usr/local/arm/opencv-install 修改编译选项: 根据自己的需要选择编译的选项,有的选项需要安装相应的依赖的库,否则编译会出错 修改 CMakeCache.txt, CMAKE_EXE_LINKER_FLAGS原来为空,加上 -lpthread -lrt
(三)最后一个步骤 1)将 /usr/local/arm/opencv-install下的文件夹 opencv2 复制到 /usr/local/arm/4.3.2/arm-none-linux-gnueabi/include/下 2)将 /usr/local/arm/opencv-depend/lib/下的所有文件 和 /usr/local/arm/opencv-install/lib/下的所有文件 都拷贝到板子上/lib目录下,OpenCV的程序即可在arm板子上运行了。 本文的交叉编译方法参考了以下两篇博文和一个帖子的4楼,在此表示感谢! |
|
相关推荐
1 个讨论
|
|
只有小组成员才能发言,加入小组>>
芯灵思SinlinxA33开发板Linux内核workqueue(附实测代码)
11901 浏览 0 评论
芯灵思SinlinxA33开发板Linux内核 tasklet 机制(附实测代码)
12561 浏览 0 评论
芯灵思Sinlinx A33开发板 Linux内核等待队列poll ---阻塞与非阻塞
34838 浏览 0 评论
芯灵思Sinlinx A33开发板Linux中断编程 3-应用程序
34773 浏览 0 评论
38852 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-27 17:36 , Processed in 0.390460 second(s), Total 35, Slave 28 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号