Jetson nano跟着教程无脑部署YOLOV5

一、官方镜像的烧录

1.下载官方镜像

百du网盘:https://pan.baidu.com/s/1zxwG9tm0Tbhg2vMSPMKwpQ

提取码:ej73

2.格式化SD卡

我用的这个软件,感觉挺好用的找到破解版,哈哈。。

百du网盘:https://pan.baidu.com/s/15G4m_9LMTAE11raN67A_zw

提取码:jg9a

3.烧录镜像软件

https://etcher.balena.io/

 烧录完成后还有个验证,要点时间等。

 

4.原神,启动!!

这个梗是这样,没玩过原神!

5.给个root
sudo passwd root

设置root密码

二、抓紧时间干活

ubuntu第一步还是换源。

1.备份一下
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo gedit /etc/apt/sources.list
 2.换源
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe

 也可以换成别的源,根据自己的感觉搞。

3.添加cuda的环境变量
gedit ~/.bashrc

在后面添加以下内容

export PATH=/usr/local/cuda-10.2/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export CUDA_ROOT=/usr/local/cuda

保存退出后更新一下

source ~/.bashrc

然后检查一下配置是否OK

nvcc -V

检查完后我们继续往下

4.安装pip3
sudo apt-get update
sudo apt-get install python3-pip python3-dev -y
然后再更新一下pip3吧
pip3 install --upgrade pip
后面我在配置的时候有个报错要升级一下

 

查看python3的版本3.6.9 。。

5.下库
sudo apt-get install build-essential make cmake cmake-curses-gui -y
sudo apt-get install git g++ pkg-config curl -y
sudo apt-get install libatlas-base-dev gfortran libcanberra-gtk-module libcanberra-gtk3-module -y
sudo apt-get install libhdf5-serial-dev hdf5-tools -y
sudo apt-get install nano locate screen -y

这个下载基本上没什么问题,很容易就安装好了。。。 

6.依赖环境
sudo apt-get install libfreetype6-dev -y
sudo apt-get install protobuf-compiler libprotobuf-dev openssl -y
sudo apt-get install libssl-dev libcurl4-openssl-dev -y
sudo apt-get install cython3 -y

这里也没什么问题 

7.OpenCV一些依赖和库
sudo apt-get install build-essential -y
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev -y
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff5-dev libdc1394-22-dev -y
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev liblapacke-dev -y
sudo apt-get install libxvidcore-dev libx264-dev -y 
sudo apt-get install libatlas-base-dev gfortran -y
sudo apt-get install ffmpeg -y

 到目前位置这里都很顺利。。

8.更新cmake

百du网盘:https://pan.baidu.com/s/1yI1cdaMR_Q9-xwuR-C51-Q

提取码:dciv

也可以自己下载,网址http://www.cmake.org/files/v3.13/cmake-3.13.0.tar.gz

tar xpvf cmake-3.13.0.tar.gz cmake-3.13.0/  #解压
cd cmake-3.13.0/
./bootstrap --system-curl	# 时间有点长
make -j4 #编译 时间有点长
echo 'export PATH=~/cmake-3.13.0/bin/:$PATH' >> ~/.bashrc  #添加环境变量
source ~/.bashrc #更新.bashrc

 

三、pytorch1.8.0

1.下载

https://forums.developer.nvidia.com/t/pytorch-for-jetson-version-1-9-0-now-available/72048

找到1.8的版本下载

或者网盘下载

百du网盘:https://pan.baidu.com/s/1WUKz7_BdEcFOiNX_bSCkCw

提取码:3sbm

下载完后

sudo pip3 install #把文件拖过来即可

 注意这个地方用国内的网好像下载不下来,我是用了别的方法。。。。

四、安装torchvision 0.9.0版本

这里要注意,版本都是对应的不能太高不能太低。所以适合就好,继续。

1.上依赖
sudo apt-get install libopenmpi2
sudo apt-get install libopenblas-dev
sudo apt-get install libjpeg-dev zlib1g-dev
2.安装 

https://github.com/pytorch/vision

 里面0.7的版本

百du网盘:https://pan.baidu.com/s/1U3z1rMUaI22Whrsye29Xsg

提取码:3daq

用unzip命令解压文件后
cd torchvision# 进入到这个包的目录下
export BUILD_VERSION=0.9.0
下载也需要用外网,我一开始用国内的网下载后,报错链接超时。。。
sudo python3 setup.py install		# 安装 时间有点.....
3.检查一下安装是否成功
python3
import torch
import torchvision
print(torch.cuda.is_available())	#输出True,就OK!!!!
exit()	# 最后退出python编译

五、下一些要跑yolo的包

1.注意!!! 

有些连接问题的话可以在安装的后面加上-i +源

例如: -i https://pypi.tuna.tsinghua.edu.cn/simple 来使用清华镜像源

2.继续下载。。。 
sudo pip3 install matplotlib==3.2.2
sudo pip3 install --upgrade Cython	#更新一下这个包
sudo apt-get remove python-numpy 
sudo apt-get remove python3-numpy 
sudo pip3 install numpy==1.19.4 -i https://pypi.tuna.tsinghua.edu.cn/simple
如果下载错误更新pip
pip3 install --upgrade pip
再更新
pip3 install --upgrade setuptools
我是这样解决的。。。
sudo pip3 install scipy==1.4.1.	# 这个包安装巨慢
sudo pip3 install tqdm==4.61.2
sudo pip3 install seaborn==0.11.1
sudo pip3 install scikit-build==0.11.1	# 安装opencv需要这个包
sudo pip3 install opencv-python==4.5.3.56	
sudo pip3 install tensorboard==2.5.0 
sudo pip3 install --upgrade PyYAML
# 我升级到了5.4.1 也可以sudo pip3 install PyYAML==5.4.1
之后我在梳理的时候,这个地方出现了问题,如果这里更新出现报错,先放一放。。。
sudo pip3 install thop
sudo pip3 install pycocotools

六、试跑yolov5  

1. 

下载官网对应的文件icon-default.png?t=N7T8https://github.com/ultralytics/yolov5/tree/v5.0

网盘链接,提取码:nr2t。 

在此文件中打开终端pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

然后上面 PyYAML没更新完成的也解决了。。(不明白不理解&……%¥)

2. 

下载对应的权重icon-default.png?t=N7T8https://github.com/ultralytics/yolov5/releases/tag/v5.0

 网盘链接,提取码:h6g3。

3.

把权重复制到yolov5的文件下

然后在此文件夹下打开终端  python3 detect.py --weights yolov5s.pt  

这样就没问题了。也是很顺利! 跑完后在runs文件夹里有两个图片可以看看效果。。

七、部署yolov5

1.下载TensorrT项目

TensorrT网址icon-default.png?t=N7T8https://github.com/wang-xinyu/tensorrtx/tree/yolov5-v5.0

2.生成wts文件

进入文件中的yolov5找到gen_wts.py文件复制到yolov5-5.0中 

输入python3 gen_wts.py --w yolov5s.pt 生成wts文件。

3.构建项目

然后把生成的wts文件复制到tensorrtx中的yolov5的文件夹中。。

mkdir ljr #建一个文件夹
cd ljr
cmake ..  #构建项目
#然后把wts文件复制到ljr中
make

4.生成引擎文件

继续在自己创建的文件下的终端输入命令把yolov5s.wts文件转为.engine(引擎文件)

sudo ./yolov5 -s yolov5s.wts yolov5s.engine s
6.测试 

tensorrtx-yolov5-v5.0\yolov5下新建sample文件夹,在里面放一张需要测试的图片(尽量放人的图片)进行测试。。在ljr文件下打开终端输入

sudo ./yolov5 -d yolov5s.engine ../sample/

7.调用摄像头

测试图片看不出效果,并且真正部署到生产环境,交付给用户使用.是通过调用摄像头.所以要改一下tensorrtx-yolov5-v5.0 -> yolov5.cpp

替换成这个文件,提取码jvud。

在ljr文件夹中make一下(只要是修改了yolov5.cpp就要重新make) 

sudo ./yolov5 -v yolov5s.engine

完成摄像头的调用就可以了。。(有可能摄像头调用不成功index 改成0,反正就是0或者1吧)

ls /dev/video  #加上tab键查看吧

到这里这个文章就结束。但是这只是配了个环境和调用摄像头,用自己的模型还需要继续研究,后面有机会也会从打标签到部署自己模型一步一步的教程。。

  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值