yolov5 自训练pt模型转onnx,再转rknn,并部署 注意事项

yolov5 部署到rk3588 教程来自

yolov5训练pt模型并转换为rknn模型,部署在RK3588开发板上------从训练到部署全过程_yolov5 rknn-CSDN博客

1.通过android studio 部署代码在rk3588板子上运行代码

项目来源

rknn-toolkit2/rknpu2/examples/rknn_yolov5_android_apk_demo at master · rockchip-linux/rknn-toolkit2 (github.com)

在这个教程中

2.yolov5版本和onnx版本必须一致

3.激活函数

根据此教程中的yolov5最好是修改为rule激活函数所训练的,yolov5更换激活函数教程:

更换YOLOv5激活函数_yolov5中silu改成relu-CSDN博客

4.在上文的教程中,test.py文件里的量化不可以关闭, anchors需要修改为训练模型的python代码里 anchors

如果是rk3588板子则记得修改test.py 中的

rknn.config(mean_values=[[0, 0, 0]], std_values=[[255, 255, 255]],target_platform='rk3588')

anchors 在test.py文件的 yolov5_post_process(input_data) 函数

5. 在android studio的项目中同样也要修改anchors

post_process.cc 这个文件中,在211行左右,修改anchors

例如:

int anchor0[6] = {25, 59, 18, 99, 57, 76};

int anchor1[6] = {32, 164, 62, 217, 147, 165};

int anchor2[6] = {85, 388, 179, 457, 421, 368};

6.除了第一个教程里所说的test.py里需要修改CLASS分类,我们部署到android studio 的项目也需要修改CLASS参数

post_process.cc 文件第29行左右

define OBJ_CLASS_NUM 1

相关推荐
我爱cope4 分钟前
【Agent智能体4 | 智能体AI的应用】
数据库·人工智能·职场和发展
song50112 分钟前
Ascend C 算子开发:从入门到上手
c语言·开发语言·图像处理·人工智能·分布式·flutter·交互
yzx99101312 分钟前
超越向量检索:用 Graph RAG 构建具备推理能力的企业知识问答系统
人工智能·自动化
sunneo13 分钟前
02-大模型选型的产品视角(系列四-AI产品战略)
人工智能·产品运营·aigc·产品经理·ai-native
这是谁的博客?20 分钟前
AI Agent 架构设计与实现原理深度解析
人工智能·ai·langchain·agent·架构设计
勾股导航30 分钟前
DQN算法
人工智能·强化学习
贵慜_Derek37 分钟前
《从零实现 Agent 系统》连载 07|记忆系统:短期上下文 vs 长期外部记忆
人工智能·设计模式·架构
L、21839 分钟前
CANN ops-transformer 仓库详解:Transformer 算子的底层实现与性能优化
深度学习·性能优化·transformer
星辰AI39 分钟前
LLM 安全与对齐技术:构建可信赖的人工智能
人工智能·ai·语言模型
嗝o゚41 分钟前
昇腾CANN ge 仓的图优化 Pass:哪些 Pass 真正影响推理性能
pytorch·python·深度学习·cann·ge-pass