版本:jetpack4.6 ubuntu18.04
之前想在系统上直接实现yolov5结果发现安装依赖包的时候老出错
于是便运用了Archiconda创建环境运行,前前后后折腾了快半个月,决定记录一下
TX2上系统与普通ubuntu不同,为arm版,(平时安装一些东西也要注意,不然会报错)在上面不能安装anaconda,要安装archiconda,常用运行指令都是一样的。
一. 首先在官网下载Archiconda3-0.2.3-Linux-aarch64.sh:官网链接
下载好后cd到下载的文件夹下并运行:
./Archiconda3-0.2.3-Linux-aarch64.sh
之后点yes,安装完毕。
二. 创建环境
conda基本指令:基本指令使用
我直接创建了一个名为pytorch的环境(代码中的pytorch可以换为自己命名,python版本也可换,若不带=3.6,则系统自动选择版本)
conda create -n pytorch python=3.6
然后激活环境
conda activate pytorch
便进入环境了
三. 环境中安装包(以下所属都在自己创建的环境中实行)
1. 安装cuda
原本不想安装太新的版本,怕后面不好配置
看别的教程直接conda install cudatoolkit=10.2就是报错,
Solving environment: failed
PackagesNotFoundError: The following packages are not available from current channels:
- cudatoolkit=10.2至今不知道为什么,有知道的小伙伴可以告诉我
然后直接
conda install cudatoolkit
自动安装了11.4.2版本,应该是最新的,下载过程很慢,也算是安装成功了。
2. 安装opencv
直接
conda install opencv
自动安装了4.5.3版本,好像也是最新的,也直接安装成功了。
3. 安装pytorch和torchvision(注意:此文章中的torch和torchvision为CPU版,运行yolov5s检测图片100ms左右,需要GPU版请移步)
(注意:一开始安装了torch1.8.0和torchvision0.8.0,运行yolov5的detect.py程序时提示torchvision版本需>=0.8.1,然后系统自动把我安装的torchvision的0.8.0删除了,又自动下载了torchvision的0.10.0版本,不得不感叹一下运行命令行的智能)
(注意:torch和torchvision以及python三者的版本对应关系
找到关系后到:pytorch和torchvision下载
我下载了:torch-1.9.0-cp36-cp36m-linux_aarch64.whl
和torchvision-0.10.0-cp36-cp36m-manylinux2014_aarch64.whl
cp后面的为你创建的环境中python的版本
aarch结尾的适配咱们的TX2开发板)
下载完成后将两个.whl文件移动到你创建的环境文件下再pip我的是archiconda3/envs/pytorch
cd到这个文件夹下
然后
pip install torch-1.9.0-cp36-cp36m-linux_aarch64.whl
pip install torchvision-0.10.0-cp36-cp36m-manylinux2014_aarch64.whl
便安装成功了。
其余的先不用安装,因为运行detect.py时会自动安装一些包,比如opencv-python。
之后将你训练好的yolov5的整个文件夹(假设文件夹名为yolov5_1)复制到你创建的环境文件夹下,我的是archiconda3/envs/pytorch
然后cd到这个目录下:cd archiconda3/envs/pytorch/yolov5_1
直接运行
python3 detect.py --source data/images --weights yolov5s.pt
运行应该会一直提示你缺什么包,然后你就直接按照提示,缺了哪个包直接pip install 包名
(有的时候直接带上软件包名字不行,想要保险操作就将提示的复制下来再搜索一下,网上都有解决方法)
到不提示缺少软件包之后z再运行,就会有一个自动下载requirements:什么什么
然后就能显示出检测结果了。