yolov5训练的pt模型,转换为rknn并部署在瑞芯微RK3588开发板

一、下载源码

在GitHub中搜索并下载yolov5的源代码,然后放在自己部署好的项目环境。

直接用下面的命令即可部署适合yolov5的环境,至于缺什么库,什么版本不对的可以百度查一下。

pt模型转onnx模型

我这里已经把源码下载好并加载好了我的虚拟环境了

注意

要把models/yolo.py文件的class Detect(nn.Module)里的前向传播函数改成下面的

注意:如果改了这里的前向传播的话那么运行export.py文件的时候还会报一个错,也是需要改的。

注意:在训练时不要修改yolo.py的这段代码,训练完成后使用export.py进行模型导出转换时一定要进行修改,不然会导致后面的rknn模型转换失败!

复制代码
    def forward(self, x):
            z = []  # inference output
            for i in range(self.nl):
                x[i] = self.m[i](x[i])  # conv

            return x

运行export.py报错的话也要把下面被我注释掉的替换红色框的,此时再运行export.py文件就不会有错了。

复制代码
    if isinstance(y, list):
        shape = tuple(y[0].shape if hasattr(y[0], 'shape') else [1])
    else:
        shape = tuple(y.shape)

然后直接使用命令去执行,其中yolov5s.pt是权重文件,onnx是我们要输出以onnx结尾的权重文件,可以看到下面export.py文件开头里面写了,还可以输出其他文件结尾的

python export.py --weights yolov5s.pt --include onnx

执行完就会在当前目录下就会出现一个名字和yolov5s一样的名字,但是结尾是.onnx结尾的文件

onnx模型转rknn模型

然后再转去我们之前搭配好的转rknn的环境,至于怎么搭建可以看我博客里的另一篇文章。

写文章-CSDN创作中心

我现在已经切换到部署好转rknn的环境了,看看你部署好的环境是否有rknn-toolkit2这个库。

然后去GitHub把这个下面这个源码下载下来

地址:rockchip-linux/rknn-toolkit2 (github.com)

下载下来并且进入到下面图片的目录下。,并且把刚才上面生成的onnx结尾的文件放到下面的目录来

修改该目录下的test的内容

然后直接用命令运行这个test.py文件

复制代码
python test.py

运行完之后就从原来的onnx文件结尾的转到了我们要的rknn结尾的了

在这个test.py的main函数中可以了解到这个python文件的作用:

配置------加载onnx模型---导出rknn模型------rknn模型推理------后处理------输出结果**】**

下面是运行出来的结果,基本和在板子上运行出来是没什么区别的,此时就可以把这个rknn文件烧录到板子上了,然后要自己写一个推理的文件。

相关推荐
向哆哆4 天前
高精度织物缺陷检测数据集(适用YOLO系列/1000+标注)(已标注+划分/可直接训练)
yolo·目标检测
前网易架构师-高司机4 天前
带标注的驾驶员安全带识别数据集,识别率99.5%,可识别有无系安全带,支持yolo,coco json,pascal voc xml格式
xml·yolo·数据集·交通·安全带
向哆哆5 天前
粉尘环境分类检测千张图数据集(适用YOLO系列)(已标注+划分/可直接训练)
yolo·分类·数据挖掘
琅琊榜首20205 天前
移动端AI挂机新范式:YOLOv8+NCNN实现无Root视觉自动化
人工智能·yolo·自动化
智驱力人工智能5 天前
地铁隧道轨道障碍物实时检测方案 守护城市地下动脉的工程实践 轨道障碍物检测 高铁站区轨道障碍物AI预警 铁路轨道异物识别系统价格
人工智能·算法·yolo·目标检测·计算机视觉·边缘计算
智驱力人工智能5 天前
机场鸟类活动智能监测 守护航空安全的精准工程实践 飞鸟检测 机场鸟击预防AI预警系统方案 机场停机坪鸟类干扰实时监测机场航站楼鸟击预警
人工智能·opencv·算法·安全·yolo·目标检测·边缘计算
前端摸鱼匠6 天前
YOLOv8使用 Ultralytics 内置功能简化格式转换:介绍如何使用 yolo mode=data 等相关功能或辅助工具来加速和简化数据格式的准备工作
人工智能·yolo·目标检测·机器学习·目标跟踪·视觉检测
hans汉斯6 天前
《数据挖掘》期刊推介&征稿指南
图像处理·人工智能·算法·yolo·数据挖掘·超分辨率重建·汉斯出版社
卓越软件开发6 天前
毕设全栈开发一条龙:Java/SpringBoot/Vue/ 小程序 / Python / 安卓 / AI 图像识别 人脸检测 车牌识别 YOLO
开发语言·spring boot·python·yolo·小程序·毕业设计·课程设计
向哆哆6 天前
单车/共享单车目标检测数据集(适用YOLO系列)(已标注+划分/可直接训练)
人工智能·yolo·目标检测