Jetson Nano踩坑记录贴——安装OpenCv、Tensorflow、pytorch
准备工作
又一次格式化了nano,从头开始安装。
更新
sudo apt-get update
sudo apt-get upgrade
Swap交换空间增加并使其永久有效,否则后面编译可能会出问题
sudo fallocate -l 4G /var/swapfile
sudo chmod 600 /var/swapfile
sudo mkswap /var/swapfile
sudo swapon /var/swapfile
sudo bash -c 'echo "/var/swapfile swap swap defaults 0 0" >> /etc/fstab'
配置cuda
cd ~
vim .bashrc
按i后将下列三行语句添加到最后
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export CUDA_ROOT=/usr/local/cuda
按下esc后输入:wq回车,最后source该文件
source .bashrc
验证是否成功
nvcc -V
若不提示bash: nvcc: command not found则修改成功
更新python3并安装pip3
sudo apt-get install python3-pip python3-dev
更新pip3
python3 -m pip install --upgrade pip
安装依赖
sudo apt-get install zram-config
sudo apt update
sudo apt install -y build-essential cmake git libgtk2.0-dev pkg-config libswscale-dev libtbb2 libtbb-dev
sudo apt install -y python-dev python3-dev python-numpy python3-numpy
sudo apt install -y curl
sudo apt install -y libjpeg-dev libpng-dev libtiff-dev
sudo apt install -y libavcodec-dev libavformat-dev
sudo apt install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
sudo apt install -y libv4l-dev v4l-utils qv4l2 v4l2ucp libdc1394-22-dev
sudo add-apt-repository "deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ xenial main multiverse restricted universe"
sudo apt update
sudo apt install libjasper1 libjasper-dev
一、Opencv安装
1.下载解压包
wget -t 0 -c https://github.com/opencv/opencv/archive/4.1.0.zip
wget -t 0 -c https://github.com/opencv/opencv_contrib/archive/4.1.0.zip
unzip opencv-4.1.0.zip
unzip opencv_contrib-4.1.0.zip
解压完后我们可以发现在opencv-4.1.0文件中有CmakeList文件,因此后续在此文件夹中进行。而在编译的过程中,大概率会缺11个.i文件,可以在编译过程中看到问题一个个去下然后放到opencv_contrib-4.1.0/modules/xfeatures2d/src/
目录下,也可直接去网上搜索下载。
2.创建编译环境并编译
cd opencv-4.1.0
mkdir release
cd release/
cmake -D WITH_CUDA=ON \
-D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.1.0/modules \
-D WITH_GSTREAMER=ON \
-D WITH_LIBV4L=ON \
-D BUILD_opencv_python2=ON \
-D BUILD_opencv_python3=ON \
-D BUILD_TESTS=OFF \
-D BUILD_PERF_TESTS=OFF \
-D BUILD_EXAMPLES=OFF \
-D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local ..
make -j4 #编译可能需要较长时间
sudo make install
参考https://www.bilibili.com/video/BV11441167oK?t=1058
3.测试opencv
在终端中输入以下语句测试是否安装成功
python3
import cv2
cv2.__version__
二、Tensorflow安装
tf需要与其对应版本的各种依赖库,在此推荐一个网站。同时强烈推荐在网好的时候安装。https://docs.floydhub.com/guides/tensorflow/#tensorflow-115
1.安装依赖库
sudo apt-get update
sudo apt-get install libhdf5-serial-dev hdf5-tools libhdf5-dev zlib1g-dev zip libjpeg8-dev liblapack-dev libblas-dev gfortran
sudo apt-get install python3-pip
sudo pip3 install -U pip testresources setuptools
如果网络不好,下面的库建议一个一个安装
sudo pip3 install -U numpy==1.17.4 future==0.18.2 mock==3.0.5 h5py==2.10.0 keras_preprocessing==1.1.0 keras_applications==1.0.8 gast==0.2.2 futures protobuf pybind11
安装其它包
sudo apt-get install python3-matplotlib
sudo apt-get install python3-dev python3-setuptools libtiff5-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev libharfbuzz-dev libfribidi-dev tcl8.6-dev tk8.6-dev python3-tk
sudo pip3 install pillow
2.安装tf 1.15
sudo pip3 install --pre --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v44 tensorflow==1.15.2+nv20.6
或者于官网下载对应版本https://developer.nvidia.com/embedded/downloads#?search=tensorflow
后用pip3安装
pip3 install tensorflow-1.15.2+nv20.6-cp36-cp36m-linux_aarch64.whl
安装过程中会自动补充部分依赖库,若报错则手动安装该库即可
3.测试Tensorflow
python3
import tensorflow as tf
tf.__version__
若输出为'1.15.2'
则安装完成
三、pytorch安装
1.下载安装pytorch
下载torch-1.6.0a0+b31f58d-cp36-cp36m-linux_aarch64.whl
文件。
若有读者需要,后期可上传之前提到的所有文件。
sudo pip3 install torch-1.6.0a0+b31f58d-cp36-cp36m-linux_aarch64.whl
2.测试pytorch
python3
import torch
torch.__version__
若结果为‘1.6.0a0+b31f58d’
则安装成功
若提示如下:则安装libopenblas-dev
sudo apt-get install libopenblas-dev
若按正常步骤操作,那么之后应该不会再有上图的报错情况。
到此我们成功完成了cv、tf、torch的安装。
下载安装torchvision
最后再安装一下对应版本的torchvision,注意:版本一定要对应!
sudo apt-get install libjpeg-dev zlib1g-dev
git clone --branch v0.7.0 https://gitee.com/zero-one-game/vision torchvision
cd torchvision
sudo python3 setup.py install