Jetson-Xavier-NX刷机+pytorch环境配置+yolov5运行
Posted Endlessnight7
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jetson-Xavier-NX刷机+pytorch环境配置+yolov5运行相关的知识,希望对你有一定的参考价值。
前言:最近在使用英伟达的Jetson-Xavier-NX板子,主要用于机器视觉,第一次接触NX板子,将配置的过程在这里记录一下,希望能对你有所帮助。
目录
2.安装Miniforge(Anaconda的arm代替版)
一、镜像烧录
1.下载镜像
nx板子的镜像都保存在TF卡中,所以使用nx板子之前需要将镜像烧录到TF卡中,镜像是在英伟达官网下载的,地址是:Jetson 下载中心 | NVIDIA Developer
百度网盘链接:https://pan.baidu.com/s/1T6XIMQERzkMJDCoELcapNw 提取码:5ukg
2.写入镜像
镜像下载好后,需要用读卡器将TF卡与笔记本连接,使用软件进行烧录,我使用的是balenaEtcher进行烧录,烧录镜像分为两步,第一步是格式化TF卡,第二步是写入,balenaEtcher会完成这两步操作。
balenaEtcher百度网盘链接:https://pan.baidu.com/s/1EHlA0o5kT-lfeaPPuFkpWQ 提取码:j3tq
Select image:自己选择下载好的镜像文件(sd-blob.img)
Select drive: 软件会自动选择已插入的TF卡
烧录镜像时会把原先的TF卡分成很多卡(F、G、H、I...不必惊慌,出现以下提示框,点右上角×就行)
接下来按照提示操作就行,下图红框无需点击。
3.开机
开机前的准备:显示器1个、键盘1个、鼠标1个,NX板子电源线连接即可开机,开机过程中会有一个类似Windows的开机设置,按照提示操作就行,系统语言默认选择English,NX板子自带wifi模块,开机过程中会提示你连接wifi,连接即可。
4.远程连接
使用远程连接软件可以连接NX板子,方便操作,前提是在同一网络下,开机后打开终端(ctrl+alt+t),输入ifconfig查看看wlan下地址。
远程连接软件我使用的是Xshell和Xftp,如果无法连接,先尝试一下是否能ping通,一般而言,默认都是能ping通的。
二、环境配置
1.更新源
打开终端输入:(一步一步来,网速慢的话时间会长一点)
sudo apt-get update
sudo apt-get full-upgrade
有不理解的,可以参考一下亚博的教程:Jetson Xavier NX ,教程中关于cuda、cudnn的配置可以稍后再弄。
2.安装Miniforge(Anaconda的arm代替版)
由于NX板子Ubuntu系统是arrch64架构的,不支持Anaconda,所以选择MInifore进行安装,使用xftp远程连接NX板子(操作与Xshell连接一样),连接后你会看到以下界面,新建或选择一个文件夹将Miniforge的安装包拖入即可。
Miniforge下载地址 Releases · conda-forge/miniforge · GitHub
百度网盘链接:https://pan.baidu.com/s/1AkRRz95XSKsVXpI7edy9cg 提取码:cbzz
今天先写到这里,朋友叫我去烤烧烤,网盘链接下午再写上!
烧烤不错,继续写~
cd进入Miniforge存放的文件夹,输入以下命令:
sh Miniforge-pypy3-4.10.3-5-Linux-aarch64.sh
安装过程并不是自动的,有些地方会让你按Enter确认,好好看看提示,基本上就没什么问题了。
3.配置国科大conda环境
conda config --prepend channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --prepend channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
4.添加环境变量
首先输入以下命令
vim ~/.bashrc
按 ↓ 直到文本底部,再按 i 对文本进行编辑,将以下内容粘贴到最下方
# Miniforge环境变量
export PATH=/home/moemil/miniforge-pypy3/bin:$PATH
# cuda环境变量
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,然后输入冒号(shift+回车左边按键),输入wq!,强制保存退出
退出后输入以下命令,激活环境变量。
source ~/.bashrc
输入以下命令可以进入Miniforge的base环境下:
source activate
5.配置pytorch环境
5.1创建虚拟环境
输入以下命令,其中的“pytorch”为环境名称,可以根据自己喜好修改。
conda create -n pytorch python=3.6
命令运行过程跟使用Anaconda一致,中途输入y继续。
安装完成后输入,进入pytroch虚拟环境。
conda activate pytorch #再强调一遍pytorch为自己设定的环境名称
5.2安装pytorch
依次运行以下命令,torch的下载地址是:PyTorch for Jetson - version 1.10 now available - Jetson Nano - NVIDIA Developer Forums
百度网盘链接:https://pan.baidu.com/s/1rBoUXE4f2wZtzq6H1Jv6Xg 提取码:5uo3
sudo apt-get install python3-pip libopenblas-base libopenmpi-dev
pip3 install Cython
pip3 install numpy
pip3 install torch-1.7.0-cp36-cp36m-linux_aarch64.whl
测试是否安装成功,输入python,然后在输入以下命令。
import torch
print(torch.__version__)
print('CUDA available: ' + str(torch.cuda.is_available()))
a = torch.cuda.FloatTensor(2).zero_()
print('Tensor a = ' + str(a))
b = torch.randn(2).cuda()
print('Tensor b = ' + str(b))
c = a + b
print('Tensor c = ' + str(c))
5.3安装torchvision
上面安装的pytorch是1.7.0,对应 torchvision 版本是0.8.1,选择一个文件夹cd进入,输入以下命令,文件将clone到当前文件夹。
# torch1.7.0--torchvision0.8.1
git clone --branch v0.8.1 https://github.com/pytorch/vision torchvision
# 网不好的话使用下面的命令进行进行clone
git clone --branch v0.8.1 https://gitee.com/rchen1997/torchvision torchvision
下载成功后, cd进入torchvision,输入以下命令。
export BUILD_VERSION=0.8.1
sudo python3 setup.py install
如果出现下图的错误,对setup.py文件进行修改,输入以下命令:
vim setup.py
找到 if has ffmpeg,修改后保存退出
if has ffmpeg 改为 if False
然后再次执行命令:(其实命令也不用那么严谨,python setup.py install照样能运行)
sudo python3 setup.py install
在这里非常感谢Geek L 的分享,让我的问题得以解决。Nvidia Jetson XAvier NX开发套件从装机到pytorch环境搭建YoloV5+DeepSort+TensorRT_m0_46339652的博客-CSDN博客_jetson nx yolov5目录1. 刷机与装机1.1 准备VMware工作站和linux的unbuntu16.04虚拟机:2.将SD上的系统移动至SSD3. SSH配置4. 查看Jetpack版本2. 深度学习环境配置2.1 python环境配置2.1.1 安装Miniforge(Conda的Arm代替版)2.2 配置Miniforge——伪conda环境2.3 pytorch环境配置2.3.1 查看cuda版本2.2 pytorch虚拟环境创建2.2 安装pytorch-gp2.3 安装torchvision二级目录三级目录1.https://blog.csdn.net/m0_46339652/article/details/119875117?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164406519016780274194697%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=164406519016780274194697&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-1-119875117.pc_search_insert_ulrmf&utm_term=jetson+nx+xavier%E8%BF%90%E8%A1%8Cyolov5&spm=1018.2226.3001.4187
三、运行yolov5
在运行yolov5之前,也需要安装其所需要的包,具体按照requirements.txt安装即可,我将我安装的命令下在下面:
pip install opencv-python==4.1.2
pip install tqdm==4.41.0
pip install Pillow==7.1.2
pip install PyYAML==5.3.1
pip install requests==2.23.0
pip install scipy==1.4.1
pip install pandas==1.1.4
pip install seaborn==0.11.0 #安装时附带安装matplotlib,直接安装matplotlib不成功,玄学了
pip install scikit-build==0.11.1
pip install thop
pip install pycocotools==2.0.4
我安装matplotlib的时候一直失败,就先安装了其他包,没想到安装seaborn的时候附带将matplotlib装上了,大家安装的时候可以先安装seaborn试试。
conda list # 可以查看已安装的包
所有包安装完成后,进入yolov5文件夹,输入以下命令,测试是否能成功运行。
python detect.py
该博客是我配置完环境后写的,可能有些地方写的不好,日后想起来会进行补充。
以上是关于Jetson-Xavier-NX刷机+pytorch环境配置+yolov5运行的主要内容,如果未能解决你的问题,请参考以下文章