一、装载系统
首先下载系统镜像
到这里下载https://developer.nvidia.com/embedded/downloads,选择自己需要的jetpack版本。我当时安装的时候查的资料都说jetpack和后面安装的pytorch以及tensorflow要对应,但是当时我没有注意安装的并不是对应的版本,然而我发现实践时并没有出现什么问题。
烧录系统
需要准备一个SD卡并且下载一个格式化软件SD Card Formatter
软件到这里下载https://www.sdcard.org/downloads/formatter/ ,用SD Card Formatter格式化SD卡,网上很多步骤,自行查询如何格式化,紧接着我们需要下载,安装并启动balenaEtcher,选择刚才下载的镜像文件,选择SD卡,选择Flash。(烧录过程中出现任何窗口都不要点击,烧录完成后直接拔出SD卡,不要点击任何弹出来的窗口,点击的话会出现各种问题,博主亲身经历,太惨烈了)
安装系统
将带有系统的SD卡插入我们的jetson中,链接显示器,会自动进入装系统的界面,根据自己的习惯安装即可,我选的是最小化安装,毕竟开发板用不到别的什么东西。至此系统安装完毕。
二、环境配置(cuda,torchvision,torch,tensorflow,opencv)
1、配置cuda(系统自带不需要安装)
先测试系统是否自带
nvcc -V
没有则配置路径否则:
sudo gedit ~/.bashrc
export CUDA_HOME=/usr/local/cuda-10.2
export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda-10.2/bin:$PATH
再进行测试
2、换源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
sudo gedit /etc/apt/sources.list
将ubuntu的源注释,更换为清华的源
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security multiverse
查看
sudo apt-get update
sudo apt-get upgrade
3、pytorch安装
首先需要安装pip3
sudo apt-get install python3-pip
然后安装依赖
1、sudo apt-get install libopenblas-base libopenmpi-dev
2、sudo pip3 install mpi4py(可能会出错,出错重试就行)
3、pip3 install Cython
4、pip3 install numpy
5、pip3 install numpy torch-1.6.0-cp36-cp36m-linux_aarch64.whl
测试
import numpy
若报错,在bashrc中加入:export OPENBLAS_CORETYPE=ARMV8
import torch
torch.__version__
安装torchvision
pytorch1.6.0对应的torchvision版本为0.7.0(具体的对应版本去官网查询)
git clone -b v0.7.0 https://github.com/pytorch/vision
(当连接不上github网站时采用git clone --branch v0.7.0 https://gitee.com/zero-one-game/vision torchvision )
cd vision (torchvision)
sudo python3 setup.py install
若报错fatal error: libavcodec/avcodec.h: No such file or directory
解决:打开vision中的setup.py
将if has_ffmpeg: 改为if False:即可
重新sudo python3 setup.py install
测试
import torchvisoin
torchvision.__version__
显示0.7.0a+...
4、tensorflow安装
安装tensorflow
根据官网(https://forums.developer.nvidia.com/t/official-tensorflow-for-jetson-agx-xavier/65523)
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==49.6.0
sudo pip3 install -U numpy==1.16.1 future==0.18.2 mock==3.0.5 h5py==2.10.0 keras_preprocessing==1.1.1 keras_applications==1.0.8 gast==0.2.2 futures protobuf pybind11(这是一行)
如果安装h5py出错,运行sudo apt-get install libhdf5-serial-dev hdf5-tools
pip3 install tensorflow-2.2.0+nv20.6-cp36-cp36m-linux_aarch64.whl
测试同上
5、配置opencv
系统自带4.1.1,在python3.6.9可以直接import cv2,且无特定版本要求,则安装完成
否则,按以下教程重装
首先移除nx中已经默认的opencv4.1.1
sudo apt-get purge libopencv*
sudo apt autoremove
sudo apt-get update
unzip opencv.zip
cd opencv-4.1.2
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DOPENCV_GENERATE_PKGCONFIG=ON - DCMAKE_INSTALL_PREFIX=/usr/local ..
make -j7
make
sudo make install
sudo ldconfig
sudo opencv_version
以上经验从各个博主加上自己实践得来,如果你的开发板也是jetson xavier nx 应该没什么问题。
如有错误请指教。