NVIDIA Jetson YOLOv5应用与部署

49 篇文章 80 订阅 ¥49.90 ¥99.00
本文详细介绍了如何在NVIDIA Jetson AGX Xavier上部署YOLOv5的深度学习环境。首先,通过miniforge创建虚拟环境,并指定Python 3.6版本以兼容CUDA 10.2。接着,安装torch 1.7.0和torchvision 0.8.1,确保GPU支持。之后,下载并安装YOLOv5依赖库,测试模型并在1920*1080视频上运行,平均每一帧耗时36ms。最后,列举了一些NVIDIA Jetson开发的常用命令。
摘要由CSDN通过智能技术生成

前言

在NVIDIA Jetson AGX Xavier 部署YOLOv5的深度学习环境,然后能正常推理跑模型。

首先介绍在NVIDIA Jetson 安装类似于Conda的虚拟环境,然后创建一个环境用来跑yolov5的;

然后在创建好的环境,跑起yolov5,总结要点。

目录

一、安装虚拟环境

二、创建环境

三、安装torch、torchvision

3.1 安装torch

3.2 安装torchvision

3.3 测试torch、torchvision

四、安装YOLOv5依赖库

五、测试模型

六、NVIDIA Jetson 开发常用命令


一、安装虚拟环境

NVIDIA Jetson AGX  Xavier 是arm架构的,无法正常无法安装Anaconda或Miniconda,但可以使用miniforge。两者使用起来并无明显区别,这里是指相关命令;不同点是:miniforge的下载通道是conda-forge。

miniforge的GitHub地址:GitHub - conda-forge/miniforge: A conda-forge distribution.
miniforge的.sh release下载地址:Releases · conda-forge/miniforge · GitHub

下载这种格式的 Mambaforge-x.xx.x-x-Linux-aarch64.sh  示例:

然后正常运行安装即可

sh Mambaforge-x.xx.x-x-Linux-aarch64.sh

二、创建环境

这里的命令和conda一样的;环境名称:yolov5;指定Python版本3.6(这个更重要,这个更重要,这个更重要!)

conda create -n yolov5 python=3.6

为什么一定要Python3.6的版本啊?其他不行吗?

一开始我是安装了Python3.9;后来安装Python3.7;发现都无法在 Jetson AGX Xavier 正常使用CUDA;后来发现这个系列目前的cuda10.2 ,对应Pytorch版本只支持Python3.6的,唉之前纠结了我一天时间。

然后添加环境变量(解决”Illegal instruction (core dumped)“错误)

sudo vim ~/.bashrc # 打开文件
export OPENBLAS_CORETYPE=ARMV8 # 末尾添加环境变量export OPENBLAS_CORETYPE=ARMV8,保存并关闭文件
source ~/.bashrc # 更新环境变量文件

三、安装torch、torchvision

这个比较关键,影响到能否正常使用cuda和GPU;先看一下torch和torchvision 之间的版本对应关系,这个很重要。

yolov5 需要 torch v1.7.0、torchvision 0.8.1

3.1 安装torch

来到官网下载PyTorch v1.7.0:PyTorch for Jetson - Jetson Nano - NVIDIA Developer Forums

 通过下面的指令进行安装:

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

3.2 安装torchvision

来到官网下载0.8.1版本的torchvision:Tags · pytorch/vision · GitHub

 先安装编译依赖

sudo apt-get install libjpeg-dev libavcodec-dev libavformat-dev libswscale-dev
pip install pillow --no-cache-dir

 下载完成后解压缩,cd到这个解压缩的文档中,执行以下命令进行安装:

python setup.py install

3.3 测试torch、torchvision

import torch
print(torch.cuda.is_available())
print(torch.backends.cudnn.version())

import torchvision
print(torchvision.__version__)

输出:(测试环境正常信息)

True
8000
0.8.0a0

四、安装YOLOv5依赖库

下载yolov5代码(目前最新是第六版),然后进入目录:

git clone https://github.com/ultralytics/yolov5
cd yolov5

修改 requirements.txt 文件,注释torch、torchvision两行就可以了

vim requirements.txt

 安装依赖库

pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple

-i https://mirrors.aliyun.com/pypi/simple 这是基于阿里云加速安装的。

五、测试模型

python detect.py --weights 'detect_models/yolov5s.pt' --source xx.mp4

 ......................................

 这是测试视频是1920*1080大小的,每一帧平均时间是36ms左右,感觉还不够快,后面再用TensorRT加速去加速。

部分效果:

六、NVIDIA Jetson 开发常用命令

基础信息:jetson_release

监控信息 先安装:sudo -H pip3 install jetson-stats
查看状态:sudo jtop

查询系统版本: cat /etc/lsb-release

查询内核心版本:uname -a

CPU概况:lscpu

硬盘概况:sudo parted -l

存档空间概况:df -h

查看运行进程:top

cuda版本:nvcc -V

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一颗小树x

您的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值