在NVIDIA Jetson TX2上编译opencv

环境:
NVIDIA Jetson TX2
Ubantu 16.04

卸载TX2上已经安装好的OpenCV

sudo apt-get purge libopencv*
sudo apt autoremove
sudo apt-get update

安装OpenCV:
1、下载源码
方法一,使用git指令下载

git clone https://github.com/opencv/opencv.git
cd opencv
git checkout -b v3.4.5 3.4.5
cd ..
git clone https://github.com/opencv/opencv_extra.git
cd opencv_extra
git checkout -b v3.4.5 3.4.5

方法二,从github官网下载
https://github.com/opencv/opencv
https://github.com/opencv/opencv_extra
https://github.com/opencv/opencv_contrib

注:
opencv_extra 中是扩展的一些数据集
opencv_contrib中是扩展的算法及模式

2、安装依赖包

sudo apt-get install \
    libglew-dev \
    libtiff5-dev \
    zlib1g-dev \
    libjpeg-dev \
    libpng12-dev \
    libjasper-dev \
    libavcodec-dev \
    libavformat-dev \
    libavutil-dev \
    libpostproc-dev \
    libswscale-dev \
    libeigen3-dev \
    libtbb-dev \
    libgtk2.0-dev \
    pkg-config

3、安装python的一些包

sudo apt-get install python-dev python-numpy python-py python-pytest
sudo apt-get install python3-dev python3-numpy python3-py python3-pytest

注:截止2019-08-16, 能找到的python3-numpy只支持到python3.5,所以,python最高只能安装3.5版

4、为编译opencv做必要的配置

mkdir build
cd build

 cmake \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/usr/local \
    -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=OFF \
    -DWITH_1394=OFF \
    -DWITH_OPENEXR=OFF \
    -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda \
    -DCUDA_ARCH_BIN=6.2 \
    -DCUDA_ARCH_PTX="" \
    -DINSTALL_C_EXAMPLES=OFF \
    -DINSTALL_TESTS=OFF \
    ..

在这里插入图片描述
注:因为使用的python是python3.6,所以:
-DBUILD_opencv_python2=OFF \
-DBUILD_opencv_python3=ON \

5、编译Opencv

sudo make -j6

在这里插入图片描述

6、安装OpenCV

sudo make install

在这里插入图片描述

7、验证

python3
>>> import cv2

遇到的问题及解决方案

1、在执行git指令时,报如下错误:
在这里插入图片描述
需要按提示设置github账号,及对应的姓名

wget https://bootstrap.pypa.io/get-pip.py  --no-check-certificate
sudo python get-pip.py

2、pip 重装后报错
在这里插入图片描述

wget https://bootstrap.pypa.io/get-pip.py  --no-check-certificate
sudo python get-pip.py

参考资料
https://docs.opencv.org/3.4.5/d6/d15/tutorial_building_tegra_cuda.html


版权声明:本文为xingao0114原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。