Jeston nano 部署yolov5并使用tensorrt加速-极速版-(先进视觉赛)

目录

一、概述

二、部署流程

2.1 Jeston nano刷机流程

2.2 cuda配置

2.3 换系统源

2.4 Archiconda配置、创建

2.5 pip换源

2.6 yolov5环境配置

2.6.1 先按yolov5目录中的requirements.txt 下载对应的库

2.6.2 torch与torchvision配置,按照下面博客配置,只看torch部分就好

2.6.3 pyqt5配置

2.6.4 tensorrt配置

2.6.5 cmake配置

2.6.6 相机sdk配置

2.6.7 比赛代码配置

三、总结


一、概述

  本博客为博主参加2024 中国机器人大赛暨 RoboCup 机器人世界杯中国赛机器人先进视觉3D识别赛道时配置环境所记录的流程的整理,也作为给学弟学妹留下的传承,中间有包括几篇有参考的博客,都有附上链接。部署流程亲测有效!!!

注:我们相机到手两天跑通,这教程是真极速版

二、部署流程

2.1 Jeston nano刷机流程

按照下面流程部署,基本上不会有问题:

Jeston Nano入门笔记(一)--刷机教程

tips:

1.刷机的建议还是直接使用sd卡烧录比较快

2.对于对应镜像的寻找:官网:https://developer.nvidia.com/embedded/jetpack-sdk-45-archive(这是4.5的页面,需要其他的可以划到最下面有For older versions of JetPack, please visit the JetPack Archive.点击就可以选自己要的版本,部署的时候一定要按需要的版本下)

2.2 cuda配置

打开home目录下的bashrc(ctrl+h显示隐藏文件)

vim ./bashrc

#在结尾添加

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda10.2/lib64
export PATH=$PATH:/usr/local/cuda10.2/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda10.2

注意cuda版本,不要盲目复制

2.3 换系统源

作用是更换apt下载的源

这边建议直接使用鱼香ros一键换源

sudo wget http://fishros.com/install -O fishros && bash fishros

更换以后使用命令更新软件包

sudo apt-get update

2.4 Archiconda配置、创建

对jeston nano配置conda的平替Archiconda。按照下面博客的流程配就行。需要注意的是,使用bash Archiconda3-0.2.3-Linux-aarch64.sh命令后,其实一路回车加yes,最后这个脚本会自动把环境变量写入bashrc中,不需要按博客那样配。即bash完,就直接可以使用conda命令了。

博客链接:http://t.csdnimg.cn/VCyr5

还有一点需要注意:在bash前,记得把网络连接上,不然会报错。

2.5 pip换源

在配置这个前,先使用conda配置好自己需要的虚拟环境(这个还不会的,去搜索一下学习学习),在进入虚拟环境后使用一下命令更换pip源,如果需要换其他源可以自己去查一下。

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

2.6 yolov5环境配置

2.6.1 先按yolov5目录中的requirements.txt 下载对应的库

pip install -r requirements.txt 

 tips:

注释matplotlib:因为第一次下载时报错,先不下。其他的类似

注释torch和torchvison:大概率都会报错或者成功后版本不能用,之后再配

opencv版本改为需要的版本(可以成功下载且可以使用的):实验室的学弟学妹可以看我们留下的requirements.txt 

完成后再使用命令下载

成功后再配置前面没有成功的:单独使用pip下

2.6.2 torch与torchvision配置,按照下面博客配置,只看torch部分就好

博客链接:JetsonNano国产套件成功部署YoloV5手把手图解教程_jetson nano+yolov5是干什额-CSDN博客

在配置torchvision时先下载一下依赖库(注意因为没有跟着这篇博客从头到尾配,才在中间配置,更着配太慢了):

sudo apt-get install libopenmpi2 -y

sudo apt-get install libopenblas-dev -y

2.6.3 pyqt5配置

 博客链接:http://t.csdnimg.cn/LmHt5

2.6.4 tensorrt配置

直接使用软连接,注意这里,我的conda中是python3.6和系统对应,所以直接使用下面命令就好,对于其他情况,我在下面作一下声明。

1.如果jetpack版本是5.0以上的板子,系统环境是python3.8,那就把命令中的python3.6改一下就好。

2.如果你依旧是python3.6的系统环境,却想给python3.8使用系统的tensorrt,建议去学习一下使用pybind11来进行绑定。这边不作赘述。

命令:

sudo ln -s /usr/lib/python3.6/dist-packages/tensorrt* /home/nano/archiconda3/envs/yolo/lib/python3.6/site-packages

注意后面的位置改为你们自己虚拟环境对应的位置就好

2.6.5 cmake配置

跟着博客配就好:

博客链接:http://t.csdnimg.cn/OuaIQ

2.6.6 相机sdk配置

这边使用的是奥比中光的Astra +相机。

先配置一下缺少的库

下载pybind11

pip install pybind11(在conda中)

相机sdk链接:

官网链接:3D视觉AI开放平台

(顺便吐槽一下,这官网写的确实是有点太垃圾了,论坛里的东西质量也不高,还有售后服务群里的技术支持也是一言难尽,能不能学学别人地平线(bushi))

github:GitHub - orbbec/pyorbbecsdk: OrbbecSDK python binding

建议还是使用github的教程和代码,官网的有点问题。配置流程就按照github上配,但是教程都是用的python虚拟环境配,怪怪的,这边给一下我的配置过程。

#下载源码,建议直接windows里下载拷贝进去
git clone https://github.com/orbbec/pyorbbecsdk.git
#这边不需要下那些依赖什么的,因为跟着我的教程,opencv那些都有了
#配置cmakelist,因为使用conda,所以要配,官网那边就没说
set(Python3_ROOT_DIR "/home/anaconda3/envs/py3.6.8") # Replace with your Python3 path
set(pybind11_DIR "${Python3_ROOT_DIR}/lib/python3.6/site-packages/pybind11/share/cmake/pybind11") # Replace with your Pybind11 path
#开始配置
cd pyorbbecsdk
#这中间配置python虚拟环境的就不要了,进入conda环境配就行
pip3 install -r requirements.txt
mkdir build
cd build
cmake -Dpybind11_DIR=`pybind11-config --cmakedir` ..
make -j4
make install
#测试
cd pyorbbecsdk
export PYTHONPATH=$PYTHONPATH:$(pwd)/install/lib/
sudo bash ./scripts/install_udev_rules.sh
sudo udevadm control --reload-rules && sudo udevadm trigger
python3 examples/depth_viewer.py
python3 examples/net_device.py # Requires ffmpeg installation for network device

2.6.7 比赛代码配置

代码文件夹放到sdk中,运行比赛代码,根据报错缺的库一个个pip配置

注意:pycuda直接使用pip下不了,按照博客下

http://t.csdnimg.cn/fOUyF

如果报错time out ,就换个网络(可以试试热点)

之后就可以跑起来代码,接下来就可以开始规划里的代码改进优化以及数据集处理了。

三、总结

到这里关于比赛环境配置就写完了,关于配置,只要网络快,就是我说的极速配置,挺快的。祝大家比赛顺利!!!

这边提及一下和我一起配置环境的队友:凯旋yyds-CSDN博客

 

  • 30
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
要在Jetson Nano上部署Yolov5,您可以按照以下步骤进行操作: 1. 将生成的.wts文件复制到Jetson Nano上的yolov5文件夹中。您可以使用U盘将文件从Windows电脑复制到Jetson Nano上的yolov5文件夹中。 2. 打开yololayer.h文件,并根据您训练模型的类别数量修改CLASS_NUM的值。这个值应该与您训练模型时使用的类别数量相匹配。 3. 在yolov5文件夹中打开终端,并依次运行以下指令: ``` mkdir build cd build cmake .. make sudo ./yolov5 -s ../yolov5s.wts yolov5s.engine ``` 4. 这样就生成了yolov5s.engine文件,可以用于在Jetson Nano上进行目标检测。 另外,由于Jetson Nano的性能限制,yolov5s模型的识别速度大约为1秒9帧。如果您想提升性能,可以安装pycuda来加速计算。您可以参考相关教程来安装pycuda。 此外,如果您想在Jetson Nano上使用PyCharm进行代码调试,您还需要安装JDK。您可以使用以下指令安装JDK: ``` sudo apt install openjdk-11-jdk ``` 请注意,Jetson Nano在运行原yolov5时可能会受到内存限制,建议使用命令行来运行最终的部署。 #### 引用[.reference_title] - *1* [Jetson Nano部署YOLOv5Tensorrtx加速——(自己走一遍全过程记录)](https://blog.csdn.net/Mr_LanGX/article/details/128094428)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [Jetson nano部署Yolov5 ——从烧录到运行 1:1复刻全过程](https://blog.csdn.net/IamYZD/article/details/119618950)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值