零基础配置jetson nano深度学习yolov5环境(一、前期预备)

零基础配置jetson nano深度学习yolov5环境(一、前期预备)


写在前面

  • 1、因为我之前配置过jetson nano 4GB的b01板子,也跑了一下速度,用的是yolov5s的FP32的engine模型,大概是5帧左右,加速FP16后,大概提升1-2帧,int8据说是板子不支持的,我也转了,但是检测不到任何东西,可能是不支持,精度损失没了。关于速度,看别人的板子检测大概是10帧左右,我经过测试发现是因为摄像头的原因,我的摄像头是USB免驱,是1080p,所以加载有点延时。在最近的nano 2g板子上测试是8帧左右,而用一个电路板摄像头,不知道什么版本,测试是10帧左右,反正与摄像头配置有很大关系。
  • 2、最近来一个研究院实习了,需要配置一块板子,也是需要跑yolo算法,这次就我之前的经验和这次的经历总结一个配置jetson板子的介绍。目前手上的这块板子底板是WeAct的CB_A5,淘宝店有详细介绍,优势是板子尺寸小,电源可直接24V供电,缺点是不容易配置,但我全程走下来发现还好,再就是输出的引脚有点少,可能适合做项目吧,单独够用就行,没有多余浪费。

这是WEACT的一些资料:github链接。还提供了一个3d打印的外壳。
在这里插入图片描述
底板图


一、调试必备软硬件以及常用linux指令(建议)

1. 硬件

为了便于前期操作,准备好一块有HDMI连接线的显示屏,usb键盘,usb鼠标(当然也可以蓝牙的,但是可能连接不上,建议用有线的),一个USB拓展,一根网线或者一个免驱的usb插口的wifi模块

2. 软件

可以自行搜索下载,也可以用我最后发的百度网盘资料。

  • 电脑上装一个winscp,方便通过节点快速传资料,因为你的jeson很有可能连不上网,下载不了东西,那么就可以通过网线,电脑给jeson共享网络就行了,或者用wifi模块连接wifi。
    这是winscp的界面winscp - 共享网络可以是你电脑连接wifi,然后wifi的那个适配器共享即可,如果只输出一跟网线,那么wifi共享就默认这根网线了。注意:winscp连接时,需要你知道jeson的ifconfig地址,一般是192开头的,保证电脑跟板子连接同一个wifi或者共享网络,这样就保证在一个网段了,就可以互传文件省u盘的麻烦。 - 其他的我没用,这些就够了。当然你也可以下载vnc或者向日葵,远程调试,但是vnc还需要注册,向日葵得双方都安装上才行。我个人觉得没必要了,这些够用了。
    这是wifi共享网络。有的可能没有,自己百度打开几个服务,然后记得重启。
    在这里插入图片描述

3、常用linux指令(便于配置环境):

下面这些基本的会用就行了,剩下的全都copy。

gedit ~/.bashrc    #这个是新窗口打开这个文件

vim ~/.bashrc      #这个是终端进入这个文件,按照提示进入模式,一般没提示就是i插入,e编辑。
                   #esc是退出模式,:wq是保存且退出。取消编写是ctrl+z
nano ~/.bashrc     #这个是终端打开,ctrl+x是退出,提示Y保存            
source ~/.bashrc   #应用环境变量
wget 网址          #下载东西
tar-xzvf 文件      #解压
sudo               #管理员权限操作
su				   #root权限操作(全部权限)
rm-rf 文件目录     #删除文件(慎用,小心删了就没了,最好删之前复制粘贴一份)
mv/cp 原文件 目标路径   #移动/复制 文件(最好su进入root权限下操作)

4、终端调试配置(方便终端书写命令,提高速度):

在 进入终端>编辑 >首选项>(样式:光标闪烁 ; 快捷方式:复制粘贴那里直接选住,摁快捷键,我建议直接ctrl+c/v)
在这里插入图片描述

二、总体配置思路及注意点

  • 重要 :主要有两个相对完整的链接可以参考:link1link2。我也是在他们的基础上配置的,但是由于我的板子有点变态,有些操作可能是有问题的,最终百度也解决了。我们后面的操作也按照这两个的链接来配置。

  • 关于内存:安装之前首先要保证板子内存够用,我整体调试下来,只要有2G用来安装torch,python,torchvision,以及配置yolo的检测导出,就够用了。当然你越大越好。

  • 主要配置思路:我们首先是安装torch以及配置相关的东西,保证torch可用,同时可以cuda加速,使用GPU计算,这个实现之后再配置yolo相关的环境,期间有涉及版本不对应,下载不了的情况,需要更换源等等,但都比较容易解决。

  • 关于虚拟环境:我们尽量是在虚拟环境里面装,因为在虚拟环境装比较干净,这样遇到的问题更少,虚拟环境是arrichconda,因为我们板子是arrch架构的arm64架构,不同于别的conda,只能下载这个。保证已经连上网,按照conda安装参考链接里但是仍然有可能从github下载不了,可以用自己电脑从这里下载,下载之后再用winscp传过去,再用bash指令安装,没有权限就用su或者sudo。
    在这里插入图片描述

  • 关于安装版本: 需要先安装python3.6,一定是3.6,因为后面需要安装torch1.8,和torchvisoin0.9,均需要满足python版本对应,有人是python3.8,当然也有对应的torch,但是教程偏少,报错不好找到解决方案。

  • 关于权限不够:过程中会遇到权限不够的情况,一般是sudo,但是也可能不行,有的人建议su进入root权限下,但是root权限跟你的虚拟环境并不互通,所以除非迫不得已,我不建议进入root下操作。可以先试试手动更改文件的权限,鼠标右键可以更改权限,如果本来是root用户,那就改不了,如果是你的用户名,就可以更改权限,使其任何人或者使用人可更改。一般不是root,root权限的都是系统的文件,我们也不会改这种。

  • 关于环境变量.bashrc文件,虚拟环境的环境变量跟外面的环境变量是一样的,但是跟root下的环境变量不一样哈,为了保证不出问题,尽量在虚拟环境中编辑环境变量bashrc文件,可以用nano,vim,gedit,没有权限就加上sudo。这个虚拟环境的环境变量里面一般就放cuda的一个环境(用于加速),再就是cmake的环境(用于底层库编译),别的安装之后其实不必在乎环境变量。后面如果别的不能用的话,可以将虚拟环境之外的库,建立软连接,连接到虚拟环境里面,这个是小问题。

  • 大概整体就这样,具体细节我们下一节讲。下一讲主要在建立虚拟环境的基础上进行安装python,安装torch等等。

三、总结

本节介绍了配置jetson 板子跑yolo环境的软硬件配置,以及配置的大概思路。如果有需要我可以把我配置的一些软件都一起打包发出来,省的大家到处下载,也可以把我的yolo环境发出来,我的可以导出engine模型,并且可以测试engine模型,如果自己配置可能有很多问题,比如tensort到处报错。
链接:https://pan.baidu.com/s/1dBp209uD337h4mlBI6sFrw
提取码:ehzl
在这里插入图片描述

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值