移植Opencv3.2到IMX6上

导读:OpenCV是一个跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。本文主要讲述如何在ubuntu12.04环境下,移植Opencv3.2到启扬IMX6开发板上。


计算机视觉市场巨大而且持续增长,且这方面没有标准API,如今的计算机视觉软件大概有以下三个痛点:

1、研究代码(慢,不稳定,独立并与其他库不兼容);

2、耗费很高的商业化工具(比如Halcon, MATLAB+Simulink);

3、依赖硬件的一些特别的解决方案(比如视频监控,制造控制系统,医疗设备)。

这是如今的现状,而标准的API将简化计算机视觉程序和解决方案的开发,OpenCV致力于成为这样的标准API。

OpenCV通过优化的C代码的编写对其执行速度带来了可观的提升,并且可以通过购买Intel的IPP高性能多媒体函数库(Integrated Performance Primitives)得到更快的处理速度。

(上图为OpenCV与当前其他主流视觉函数库的性能比较)

OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。

那么OpenCV2.3如何在ubuntu12.04环境下,移植到启扬i.MX6开发板上,且看下面一波操作!

移植环境:ubuntu12.04  

交叉编译器:arm-fsl-linux-gnueabi-gcc 版本4.6.2

目标板子:启扬IAC-IMX6-Kit

启扬智能IMX6嵌入式开发板

1、

下载opencv3.2 源码,参考链接:https://github.com/opencv/opencv/releases/tag/3.2.0   (下载tar.gz格式) ;

编译目录:/home/cheng/opencv/build

安装目录:/home/cheng/opencv/cv3.2

2、下载cmake cmake-gui2.8.7   命令行启动cmake-gui;

3、配置成功后,点击configure, 然后选择最后一项,点击next;

target root是寻找lib和include这些库文件和头文件,这些文件在交叉编译器安装目录下。 operating system 填写arm-fsl-linux-gnueabi-gcc  就是用的交叉编译器的名字。

4、去掉WITH_TIFF  WITH_CUDA   //不去掉也行,

修改CMAKE_BUILD_TYPE为Release   //不选也行,

CMAKE_INSTALL_PREFIX 选择安装目录;

5、修改: /home/cheng/opencv/build/  vimCMakeCache.txt  大致在196行

CMAKE_EXE_LINKER_FLAGS:STRING='' 修改为

CMAKE_EXE_LINKER_FLAGS:STRING=-ldl -lrt 备注:这个地方要根据具体情况修改

也可能是Libs: -L${libdir}  -lcv  -lcxcore  -lcvaux  -lml   -lpthread  -ldl

 

6、进入 /home/cheng/opencv/build/

make

make install

查看安装目录下的文件,将bin目录下的文件拷贝到开发板/bin目录下

Lib目录下的文件拷贝到开发板/lib目录下

移植过程中还遇到了其他的一些警告信息

由于环境或编译器使用的不同,遇到的情况可能不同,有错误建议多百度,多思考,静心。

版权声明:操作部分来自启扬程工博客。

转载请注明出处 https://blog.csdn.net/qq_38625051/article/details/78146808

猜你喜欢

转载自blog.csdn.net/vickycheung3/article/details/87281517