目前tx2系统是jetpack4.5,并且刷机的时候把opencv也给刷进去了,所以我知道自己的opencb是4.4.1。但这里,我把opencv版本查询命令也给附上
#opencv3
opencv --version
#opencv4
pkg-config --modversion opencv4
源码下载地址
OpenCV4.1.1: https://github.com/opencv/opencv/releases/tag/4.1.1
OpenCV_contrib 4.1: https://github.com/opencv/opencv_contrib/releases/tag/4.1.1
依赖安装
sudo apt-get install build-essential
sudo apt-get install libglew-dev libtiff5-dev zlib1g-dev libjpeg-dev libavcodec-dev libavformat-dev libavutil-dev libpostproc-dev libswscale-dev libeigen3-dev libtbb-dev libgtk2.0-dev pkg-config libpng-dev
sudo apt-get install libatlas-base-dev gfortran
我看网上都说需要把原来的opencv库给卸掉,我觉得会出问题,所以我没卸按照别人blog继续下去了,但在安装依赖的时候我出现了依赖冲突的问题,我觉得会不会是我没有卸载的原因,或者是没执行autoremove命令的原因,但这里我用实际经验告诉大家,执行autoremove命令以后依赖还是会冲突。在这里奉劝大家不要执行autoremove命令,很可能会导致你以前配好的环境出现问题,不要执行,没有意义,亲身经历,童叟无欺。这里我附上我遇见这种问题的解决办法,再次感谢这2位博主,亲测有效!
Ubuntu 安装libjpeg-dev 时报错_sundynes的博客-CSDN博客_ubuntu 安装libjpeg
这是我给的cmake指令
cmake \
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_PNG=OFF \
-DBUILD_TIFF=OFF \
-DBUILD_TBB=OFF \
-DBUILD_JPEG=OFF \
-DBUILD_JASPER=OFF \
-DBUILD_ZLIB=OFF \
-DBUILD_EXAMPLES=ON \
-DBUILD_opencv_java=OFF \
-DBUILD_opencv_python2=OFF \
-DBUILD_opencv_python3=ON \
-DENABLE_PRECOMPILED_HEADERS=OFF \
-DWITH_OPENCL=OFF \
-DWITH_OPENMP=OFF \
-DWITH_FFMPEG=ON \
-DWITH_GSTREAMER=OFF \
-DWITH_GSTREAMER_0_10=OFF \
-DWITH_CUDA=ON \
-DWITH_GTK=ON \
-DWITH_VTK=OFF \
-DWITH_TBB=ON \
-DWITH_1394=OFF \
-DWITH_OPENEXR=OFF \
-DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0 \
-DCUDA_ARCH_BIN=6.2 \
-DCUDA_ARCH_PTX="" \
-DINSTALL_C_EXAMPLES=ON \
-DINSTALL_TESTS=OFF \
-DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.1.1/modules \
..
具体的安装过程,大家参考一下这篇blog
Jetson nano编译安装OpenCV4.1.1和OpenCV_contirb-4.1.1_ryunin的博客-CSDN博客
编译过程中出现的一些问题:
1. boostdesc_bgm.i文件的问题:
安装OpenCV时提示缺少boostdesc_bgm.i文件的问题解决方案(附带百度云资源)_AlexWang30的博客-CSDN博客_boostdesc_bgm.i
2. fatal error: features2d/test/test_detectors_regression.impl.hpp: No such file or directory
原因是没找到这个文件,解决方法如下:
将opencv / modules / features2d复制,然后粘贴到build目录中来解决该问题。
3.找不着cv2
sudo gedit /etc/ld.so.conf.d/opencv.conf 此时是空的,写进入 /usr/local/lib //将opencv库添加到路径,从而可以让系统找到
sudo ldconfig //使上述配置命令生效
sudo gedit /etc/bash.bashrc //配置bash 在末尾添加如下命令
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
source /etc/bash.bashrc //使bash配置生效
sudo updatedb //更新
Jetson nano编译安装OpenCV4.1.1和OpenCV_contirb-4.1.1_ryunin的博客-CSDN博客
更改bash路径以后,查找opencv版本还是失败了,后来我才知道opencv4.几以后编译的时候需要把生成版本号查询文件的选项打开