背景:
最近为了打比赛入手了一块jetson nano b01,但由于之前完全没接触过,导致有很多不懂的地方,查了很多资料,csdn里很多都零零散散,我作为小白,记录一下我遇到的问题。
叠甲:
本人究极无敌小白,如果下面讲错了,大家见谅,我意在分享自己到最后成功部署yolov5中遇到的问题。
python版本问题:
这块板子自带的是2.7和3.6.9。也就是python和python3。这个python版本最好不要随意升级,会出现很多莫名其妙的错误,至少我作为小白解决不了。所以安装了更高版本的python后不要软链接到python3。
还有一点建议是最好在虚拟环境里搭建环境,如果环境崩了可以省去很多麻烦。
虚拟环境:
因为jetson nano b01是aarch64架构,conda是没有对应版本的,所以我们如果要用conda,需要安装Archiconda。
其目的就是将conda移植到aarch64平台上。尤其是它包括了conda这个命令工具。可以直接在这里下载安装包:
Archiconda/build-tools
如何安装大家自己去搜。
同理,python3-venv也是可以使用的,这个比较简单,但我觉得是不如conda的,大家可以自行选择。
pytorch安装
因为这个板子没法安装正常的conda,但torch自己的安装包和教程是在conda下进行的,所以也没有对应的aarch64的torch安装包。
所以我们需要找对应版本的包。包链接如下PyTorch for Jetson - Announcements - NVIDIA Developer Forums
我直接给出我安装的是torch1.9.0,这个板子的cuda是10.2.0。怎么查看大家自己搜教程。
同时还有一个要注意的是,这个torch只能在python3.6上部署,在自己升级python版本上部署会报很多错。(如果我说错了,大家见谅,毕竟我也很小白,但torch1.9.0是可以成功安装,并且运行yolov5的)。
python3.6对应的是jetpack4,jetpack5是会报错的。这在上面链接里会看到,选择时大家可能会有问题。具体查看,大家可以看这个板子的具体配置。
yolov5部署
因为yolov5在现在更新后,官方说的最低版本是3.7。但实际上3.6也是可以跑起来的,最后我自己的模型速度是0.1秒一帧。
所以在安装requireme.txt的时候,python3.6达不到要求,就安装已有的最高版本即可,最后是可以跑起来的。