赞
踩
OpenCV-4.3.0是较新的OpenCV版本,最新的版本是OpenCV-4.4.0,由于GitHub太慢总是下载失败,不得已就移植OpenCV-4.3.0这个版本用着先。在OpenCV中,新技术的支持和一些现有算法的优化都是体现在最新的版本中(目的是为了让用户用新版本),旧版本通常只修正bug。
相关资源下载链接:
https://download.csdn.net/download/qq_23235811/12897930
目标板信息:
CPU架构:四核cortex-A53
内核版本:Linux-3.10
处理器:aarch64
交叉编译器信息:
内核版本和处理器无所谓,按照自己的来
一、移植的先前准备如下:
1.centos-8虚拟机
2.安装cmake3和make工具
(1)安装cmake3
yum install cmake
yum install cmake-gui
(2)安装make
yum install make-gui
3.使用buildroot交叉编译生成的sysroot
我这里用的buildroot2019
二、移植的过程如下
1.配置源码和编译目录
2.配置交叉编译器信息
这里配置了:
操作系统是Linux,内核版本是3.10。交叉编译器,交叉编译器的 库文件目录、头文件目录等。配置完成点击finish。会自动配置
3.修改配置
把1394去掉,目标平台没有IEEE1394接口,此接口一般在INTEL高端主板和数码摄像机上用于视频采集。把gstream去掉,gstream和FFmpeg雷同,有了FFmpeg就不需要支持gstream。
把ITT、OPENCL、OPENJPEG、PNG去掉。
QT选上,WEBP去掉。配置完成后,再次点击Configure
4.检查配置
(1)检查QT
(2)配置安装目录
(3)配置编译release版本
(4)配置生成动态库
动态编译必选项,-fPIC。编译出与位置路径无关的代码,没有绝对地址,全部都是相对地址。
(5)配置OpenCV扩展库,扩展库下载链接在前面。
(6)完全去掉opencl依赖
配置完成,点击generate生成Makefile后,cd进/opt/toolchain/host/aarch64-buildroot-linux-gnu/sysroot/opencv-4.3.0目录,make -j4编译。
5.报错解决
出现报错
opencv_contrib-4.3.0/modules/xfeatures2d/src/boostdesc.cpp:654:37: 致命错误:boostdesc_bgm.i:没有那个文件或目录
将缺失的文件目录拷贝进目录opencv_contrib-4.3.0/modules/xfeatures2d/src/
出现报错
opencv_contrib-4.3.0/modules/xfeatures2d/test/test_features2d.cpp:51:62: 致命错误:features2d/test/test_detectors_regression.impl.hpp:没有那个文件或目录
进入编译构建目录/opt/toolchain/host/aarch64-buildroot-linux-gnu/sysroot/opencv-4.3.0/modules/xfeatures2d/CMakeFiles/opencv_test_xfeatures2d.dir修改flags.make
如下图:
6.编译成功
make install完成安装
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。