将opencv移植到某个平台,无非就是用该平台对应的编译器将opencv源代码编译成so库。 这里的target平台是hi3519A,所以得用交叉编译器arm-himix200-linux交叉编译器。
本系列为华为海思海思AI芯片(Hi3519A/3559A)方案学习系列之十二,系列文章请见底部。
作者:ltshan139
准备工作
1)安装交叉编译器,这个海思SDK说得很明白,也可以参考我之前的系列(三)Ubuntu18.0.4上编译Hi3519AV100 uboot和kernel
2)在ubuntu上安装cmake-gui: sudo apt-get install cmake-gui
3)下载opencv及contrib源代码
运行cmake
运行cmake-gui,弹出如下界面,并输入源代码和cmake build出来的目录。注意,第二个目录(build_hi3519A)是自己手动创建的。
点击configure,首先要选择交叉编译器平台,如下图所示。
点击finish后会configure一会直到成功。
选择install_prefix。 install_hi3519A也是自己创建的,路径可改。后面的make install 会把编译好的opencv libs拷贝到该目录下。
将opencv_contrib模块也编译进来
为防止后续源代码编译错误,还得加上下面配置
保险起见,添加交叉编译器root 目录
配置完成后点击generate来生成可编译得opencv代码。
编译
进入build_hi3519A目录 敲入命令: make -j8
编译过程中会遇到下面编译错误
解决办法如红框所示(common.cc)
测试
编译成功后,可以写如下一个小程序在海思平台上运行来测试opencv移植是否成功
编译命令如下,另外要注意得是,需要将libopencv_world.so拷贝到板子系统目录/lib下
版权声明:本文为CSDN博主「ltshan139」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/avideointerfaces/article/details/89477828
海思AI芯片系列文章
- 海思AI芯片(Hi3519A/3559A)方案学习(十一)分析bgr文件格式
- 海思AI芯片学习(十)将yolov3 darknet模型转换为caffemodel
- 海思AI芯片(Hi3519A/3559A)方案学习(九)wk格式的模型生成以及PC仿真
- 海思AI芯片(Hi3519A/3559A)方案学习(八)根文件系统运行遇到的两个问题
- 海思AI芯片(Hi3519A/3559A)方案学习(七)ext4根文件系统制作
- 海思AI芯片(Hi3519A/3559A)学习(六)No MMC device available和can't get kernel image两个问题的解决
- 海思AI芯片(Hi3519A/3559A)学习(五)SDK平台文档梳理 code
- 海思AI芯片(Hi3519A/3559A)学习(四)在3519A板子上运行sample code
- 海思Hi3519A/3559A(三)Ubuntu18.0.4上编译uboot和kernel
- 海思AI芯片(Hi3519A/3559A)方案学习(二)RuyiStudio安装
- 海思AI芯片(Hi3519A/3559A)方案学习(一)资料以及术语介绍
更多海思AI芯片方案学习笔记欢迎关注海思AI芯片方案学习。