jetson AGX Opencv 编译记录

1.卸载Jackpack 自带的Opencv。
sudo apt-get purge libopencv*
sudo apt autoremove
sudo apt-get update

2.查看是否卸载成功
jtop
jetson AGX Opencv 编译记录_第1张图片
表示成功卸载。

开始安装Opencv4.5.1
源码下载:
https://github.com/opencv/opencv/releases
https://github.com/opencv/opencv_contrib/releases

我是将opencv_contrib 放在opencv的文件夹内,这个位置可以自己选择。
最终目录如下
.
├── 3rdparty
├── apps
├── build
├── cmake
├── CMakeLists.txt
├── CONTRIBUTING.md
├── COPYRIGHT
├── data
├── doc
├── include
├── LICENSE
├── modules
├── opencv_contrib-4.5.1
├── platforms
├── README.md
├── samples
└── SECURITY.md

准备环境

sudo apt-get update
sudo apt-get dist-upgrade -y --autoremove
sudo apt-get install -y \
        build-essential \
        cmake \
        git \
        gfortran \
        libatlas-base-dev \
        libavcodec-dev \
        libavformat-dev \
        libavresample-dev \
        libcanberra-gtk3-module \
        libdc1394-22-dev \
        libeigen3-dev \
        libglew-dev \
        libgstreamer-plugins-base1.0-dev \
        libgstreamer-plugins-good1.0-dev \
        libgstreamer1.0-dev \
        libgtk-3-dev \
        libjpeg-dev \
        libjpeg8-dev \
        libjpeg-turbo8-dev \
        liblapack-dev \
        liblapacke-dev \
        libopenblas-dev \
        libpng-dev \
        libpostproc-dev \
        libswscale-dev \
        libtbb-dev \
        libtbb2 \
        libtesseract-dev \
        libtiff-dev \
        libv4l-dev \
        libxine2-dev \
        libxvidcore-dev \
        libx264-dev \
        pkg-config \
        python-dev \
        python-numpy \
        python3-dev \
        python3-numpy \
        python3-matplotlib \
        qv4l2 \
        v4l-utils \
        v4l2ucp \
        zlib1g-dev

一般没有问题。有问题自行解决

开始编译

cd opencv-4.5.1
mkdir build && cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
           -D CMAKE_INSTALL_PREFIX=/usr/local \
		   -D ENABLE_PRECOMPILED_HEADERS=OFF \
           -D INSTALL_C_EXAMPLES=OFF \
           -D INSTALL_PYTHON_EXAMPLES=OFF \
		   -D BUILD_opencv_python2=OFF \
           -D BUILD_opencv_python3=ON \
           -D PYTHON_DEFAULT_EXECUTABLE=$(/usr/bin/python3 -c "import sys; print(sys.executable)")   \
           -D PYTHON3_EXECUTABLE=$(/usr/bin/python3 -c "import sys; print(sys.executable)")   \
           -D PYTHON3_NUMPY_INCLUDE_DIRS=$(/usr/bin/python3 -c "import numpy; print (numpy.get_include())") \
           -D PYTHON3_PACKAGES_PATH=$(/usr/bin/python3 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())") \
           -D WITH_V4L=ON \
		   -D WITH_LIBV4L=ON \
           -D WITH_CUDA=ON \
		   -D CUDA_CUDA_LIBRARY=ON \
		   -D WITH_CUDNN=ON \
		   -D CUDNN_VERSION='8.0' \
		   -D ENABLE_FAST_MATH=ON \
		   -D CUDA_FAST_MATH=ON \
           -D WITH_CUBLAS=ON \
           -D WITH_OPENGL=ON \
		   -D WITH_FFMPEG=ON  \
		   -D CUDA_ARCH_BIN=5.3,6.2,7.2 \
		   -D CUDA_ARCH_PTX= \
		   -D EIGEN_INCLUDE_PATH=/usr/include/eigen3 \
	       -D ENABLE_NEON=ON \
		   -D OPENCV_DNN_CUDA=ON \
		   -D OPENCV_ENABLE_NONFREE=ON \
		   -D OPENCV_GENERATE_PKGCONFIG=ON \
		   -D WITH_GSTREAMER=ON \
		   -D WITH_OPENGL=ON \
           -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib-4.5.1/modules ..	

需要注意OPENCV_EXTRA_MODULES_PATH 这个环境的路径。是相对build 的 opencv_contrib的路径(可以看我上面的目录规划)。

make -j8
sudo make install

这里可能会出错
1.会在编译79%左右出现opencv_contrib缺少boostdesc_bgm_bi.i文件或者boostdesc_*.i的文件。是因为国内网络下载问题。可以通过离线下载来解决。
下载地址:https://download.csdn.net/download/qq_25160191/87352373

将下载的文件放在
opencv_contrib-4.5.1/modules/xfeatures2d/src/

这里需要重新cmake

2.①fatal error: features2d/test/test_detectors_regression.impl.hpp: No such file or directory
原因是没找到这个文件,解决方法如下:
将opencv4.5.1 / modules / features2d复制,然后粘贴到build目录中来解决该问题。

https://blog.csdn.net/xiewenrui1996/article/details/108683866

源码没有问题,有可能有些错误是下载文件缺失导致的,根据错误地方和源码比对。

最终效果如下。
jtop
jetson AGX Opencv 编译记录_第2张图片

完结!!!!!

你可能感兴趣的:(opencv,python,人工智能)