1、准备环境 

1.1、相机

没安装camorama需要先安装一下

因为之前我们买的是森云智能GMSL摄像头,0X03CC一直不会用,后来换回了IMX390,才顺利的出来图像。

sudo apt-get install camorama
camorama

1.2、jetpack

每个人不一样,需要对照自己的来。

我的jetpack 是4.6 对应L4T是32.6.1

JetPack Archive | NVIDIA Developer

arm的A55架构几年了 arm a15 a53_目标检测

 1.3 、Archiconda虚拟环境

        因为anaconda不太支持arm架构,所以安装不方便,看了几个博文,最终选择这个。使用方法和anaconda一样。        

下载链接:

https://github.com/Archiconda/build-tools/releases/download/0.2.3/Archiconda3-0.2.3-Linux-aarch64.sh

由于某些原因你不能直接下载某些资源,这里采用的方法是用自己的笔记本下载后,通过同一wifi下用mobax,sftp传输文件、ssh执行安装命令。

sh Archiconda3-0.2.3-Linux-aarch64.sh

arm的A55架构几年了 arm a15 a53_python_02

一路yes,然后就可以创建新的环境。创建环境之前先看下项目需求。

同样你需要某种方法访问到github,yolov5/requirements.txt at master · ultralytics/yolov5 · GitHub

 对应项目的requirements.txt查看具体需求,比如这里是

arm的A55架构几年了 arm a15 a53_ubuntu_03

注意第一次安装的时候,是安装的python3.7,后来发现并没有用到cuda,帧率特别低。

但是我们发现whl,是根据python3.6的,所以第二次安装的时候,用的是python3.6

 建立一个虚拟环境,重新打开一下terminal终端。

conda create -n py36 python=3.6
conda activate py36

1.4、安装pytorch

Jetson Zoo - eLinux.org下载安装torch-1.7.0-cp36-cp36m-linux_aarch64.whl,我们的是jetpack4.6

arm的A55架构几年了 arm a15 a53_ico_04

pip install torch-1.7.0-cp36-cp36m-linux_aarch64.whl

(直接pip install pytorch pip install torchvision可能不行,因为是aarch64架构的,安装完只能用cpu跑)

arm的A55架构几年了 arm a15 a53_ubuntu_05

安装torchvision,查找pytorch官方推荐的pytorch1.7对应的是torchvision0.8.0,但是只找到了0.8.1的whl,不过经过测试应该死没问题的,github有时不太稳定,进入到下载的文件夹安装。

git clone -b v0.8.1 https://github.com/pytorch/vision.git vision-0.8.1
cd vision-0.8.1
sudo /home/fury/archiconda3/envs/py36/python3.6 setup.py install

最后一行sudo xxxxxxx setup.py install中的xxxxxxxxxxx需要自己修改,可以通过命令conda env list 看一下自己虚拟环境中的的python安装在哪里,然后替换相同路径就可以。

这里可以测试一下,看看版本和cuda是否正确。先进入python,再查看是否成功显示版本信息。

python
import torch
print(torch.__version__)
print(torch.cuda.is_available())

1.5、安装require

也可以先跳过,后边如果缺包就会报错,一个个安就好了,不一定全。

pip3 install Cython matplotlib==3.2.2 numpy==1.18.5 Pillow==7.1.2 PyYAML==5.4.1 scipy==1.5.4 tensorboard==1.15.0

其中有一个报错是找不到CV2,又是复制文件又是软连接的,最终都不行,然后发现直接pip就可以,其他小问题百度都很好解决了。

pip install opencv-python

2、yolov5运行

2.1、下载yolov5

GitHub - ultralytics/yolov5: YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite

2.2、下载权重,放到新建的weights文件夹

Release v3.0 · ultralytics/yolov5 · GitHub

arm的A55架构几年了 arm a15 a53_目标检测_06

 2.3 执行命令

python detect.py --source 0 --weights=“weights/yolov5s.pt” 

arm的A55架构几年了 arm a15 a53_ubuntu_07

2.4 

可能中途还有一些其他小问题,可以百度一下。

 3、留坑

还是有点慢,相机帧率是30,但是这个16帧率,后边在看看能不能加速。