Nvidia jetson agx 中部署yolov5,并测试

一、前言

在Windows或者Ubuntu系统一般都使用anaconda作为虚拟环境管理器,但是由于jetson系列的产品核心是基于ARM框架的,无法安装acoconda。安装Miniforge. 下载Mambaforge-22.11.1-4-Linux-aarch64.sh
网址https://github.com/conda-forge/miniforge/releases
在这里插入图片描述

安装

sh  Mambaforge-22.11.1-4-Linux-aarch64.sh

二、创建环境

1、由于yolov5需要安装pytorch,最新的是适用python=3.8的
https://pytorch.org/get-started/previous-versions

conda create -n yolov5 python=3.8.10  //创建虚拟环境,环境名yolov5
conda activate yolov5     //进入环境
//conda deactivate      //退出

2.本文配置yolov5 v4.0的环境,根据官方requirements.txt进行如下安装:

pip install Cython matplotlib==3.2.2 numpy==1.18.5 Pillow PyYAML==5.4.1 scipy==1.5.4 tensorboard==1.15.0      
 //执行上述命令时,网速导致安装失败,可加pip临时使用源解决 。-i https://pypi.tuna.tsinghua.edu.cn/simple
 pip install Cython matplotlib==3.2.2 numpy==1.18.5 Pillow PyYAML==5.4.1 scipy==1.5.4 tensorboard==1.15.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

三、虚拟环境中调用opencv

此时我们只需找到 jetson中安装的python下的cv2
/lib/python3.8/dist-packages/cv2/python-3.8 路径下的cv2.cpython-38-aarch64-linux-gnu.so文件,复制到刚才安装mambaforge路径 /home/xmm17/mambaforge/envs/yolov5/lib/python3.8文件夹下即可。
注意:虚拟环境的路径每个人都不同,自行修改!
1找到 jetson中安装的python在这里插入图片描述2 cp 安装Miniforge文件夹下

cp /lib/python3.8/dist-packages/cv2/python-3.8/cv2.cpython-38-aarch64-linux-gnu.so /home/xmm17/mambaforge/envs/yolov5/lib/python3.8

在这里插入图片描述

3

conda activate yolov5 //进入环境
python3
import cv2  //导入cv2

在这里插入图片描述返回报错ImportError: /lib/x86_64-linux-gnu/libp11-kit.so.0: undefined symbol: ffi_type_pointer, version LIBFFI_BASE_7.0
这里是python版本不兼容导致的
解决方法:https://blog.csdn.net/qq_38606680/article/details/129118491
打开至conda虚拟环境下lib文件夹中,路径为/home/xmm17/mambaforge/envs/yolov5/lib,在文件夹内启动终端,输入命令ls -l,获得结果如图所是

在这里插入图片描述这边选择的方式是将该路径下的libffi.so.7文件备份后(重命名为libffi_bak.so.7),再在该路径下创建一个新的libffi.so.7链接至/lib/x86_64-linux-gnu/libffi.so.7.1.0,即输入命令:

sudo ln -s /lib/x86_64-linux-gnu/libffi.so.7.1.0 libffi.so.7
sudo ldconfig

在这里插入图片描述之后我们再次导入opencv库,成功。

import cv2

四、安装PyTorch,根据版本对应安装torchvision

https://forums.developer.nvidia.com/t/pytorch-for-jetson/72048

sudo apt-get install virtualenv
python3 -m virtualenv -p python3 torch
source torch/bin/activate
cd ~/Downloads/install/torchvison/   //
cd ../
pip3 install torch-1.11.0-cp38-cp38-linux_aarch64.whl //Torch安装  PyTorch v1.11 - torchvision v0.12.0
cd torchvison/
python3 setup.py install //torchvision安装 v0.12.0

在这里插入图片描述
安装检测

python3
import torch  
import torchvision

安装成功

测试

接上usb摄像头,将相应的权重文件

开始测试:

git clone -b v4.0 https://github.com/ultralytics/yolov5.git   //zhijiexiazai
cd ~/torch/yolov5-master
python3 detect.py --weights ../yolo5s/yolov5s.pt --source 0 --conf 0.25

在这里插入图片描述

总结

安装的时候,多从官方网站查找相关的方法说明,不能只看别人的总结。安装的过程还是相对复杂。所以记录下来。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值