jetson xavier nx源码安装opencv4.5.1
1、下载源码
在github或gitee下载对应版本的OpenCV和OpenCV-Contrib,解压opencv4.5.x与opencv-contrib4.5.x,并将opencv-contrib4.5.x文件夹放到opencv4.5.x文件夹中。
为什么要分两个包?
OpenCV Contrib是OpenCV的扩展模块,包含了许多最新的以及可能还没有正式发布有待进一步完善的算法,可以理解为是OpenCV的扩展包,Github网页点击查看。 这有点类似于Matlab中的各个可选安装扩展包。这是github上opencv-contrib各个modules的简要介绍
下载链接:
2、卸载原有的opencv
sudo apt purge libopencv*
3、cmake生成Makefile
编译之前需要安装一些依赖库
sudo apt-get install build-essential pkg-config libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev
安装好依赖,进行cmake,生成Makefile
cd opencv4.5.0
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/ -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib4.5.x/modules -D CUDA_ARCH_BIN='7.2' -D WITH_CUDA=1 -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D CUDA_FAST_MATH=1 -D WITH_CUBLAS=1 -D OPENCV_GENERATE_PKGCONFIG=1 -D WITH_GTK_2_X=ON ..
cmake过程中可能会报错,需要下载一些后缀名为.i的文件,但是因为网络下载失败:
boostdesc_bgm.i boostdesc_bgm_bi.i boostdesc_bgm_hd.i
boostdesc_lbgm.i boostdesc_binboost_064.i boostdesc_binboost_128.i
boostdesc_binboost_256.i vgg_generated_120.i vgg_generated_64.i
vgg_generated_80.i vgg_generated_48.i
打开CMakeDownloadLog.txt 找到过程中没有下载成功的部分,打开链接,直接将内容复制,然后写成对应文件,将其放在opencv_contrib4.5.x/modules/xfeatures2d/src/即可
4、make编译
在build目录执行
make
如果在编译过程中报错:
opencv 找不到 feature2d/test/test_detectors_regression.impl.hpp 文件
那么需要在CMakelists.txt添加包含头文件路径。
vim opencv/CMakeLists.txt
在官方默认配置完的后面添加,又尽量在项目构建的前面,这样可以经历规避配置问题,又可以不影响官方配置过程
include_directories("modules")
然后重新cmake,make即可
安装
sudo make install
参考链接
https://blog.csdn.net/u012939880/article/details/105864932
https://blog.csdn.net/Tracy_Baker/article/details/113808390