🗒️Yolo模型转换
00 分钟
2025-5-20
2025-5-20
type
status
date
slug
summary
password
tags
category
icon
以下都以yolo的姿态检测模型为例

1、准备需要用的程序

第一个工程:rknn-toolkit2,用于安装模型转换所需环境github地址:https://github.com/airockchip/rknn-toolkit2/releases
第二个工程:ultralytics_yolov8,(这个用官方的一样)用于pt模型转化为onnx模型,为了在rk板子上部署,官方对模型做了修改,训练好的pt模型放在这个工程中转化为onnx模型,github地址:https://github.com/airockchip/ultralytics_yolov8
第三个工程:rknn_model_zoo,用于onnx模型转rknn模型,github地址: https://github.com/airockchip/rknn_model_zoo/releases
 
将这三个加压到同一个文件夹下即可
 

2、环境配置安装(conda)

2.1、conda环境安装

conda安装配置找网上其他教程
conda新建新环境的时候python建议为3.8的稳定版本

2.2、rknn-toolkit环境安装

  1. cd进入该项目带有requirements依赖文件的路径
  1. pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/安装依赖包
  1. pip install rknn_toolkit2-2.1.0+708089d1-cp38-cp38-linux_x86_64.whl安装rknn_tookit的依赖
【注意事项】需要注意python版本,如何使python3.8则安装requirements_cp382.1.0.txt与rknn_toolkit2-2.1.0+708089d1-cp38-cp38linux_x86_64.whl,这些文件名称中的cp38为python3.8的意思,不同python版本安装对应的包,不然会报错

3、pt转onnx

官方方法到处模型
【注意事项1】
注意这句话,results = model.export(format=‘rknn’) ,此处格式虽然是rknn,但是导出的模型为onnx
【注意事项2】

4、onnx转rknn

  1. cd rknn_model_zoo-2.1.0/examples/yolov8_pose/python
  1. python convert.py ./yolov8n_pose.onnx rk3588# yolov8s_pose_ultra.onnx为ultra官方下载模型
【遇到问题】下载的ultra官方pt模型,onnx转rknn这一步报错
notion image
【解决方案】
netron查看模型,查看最终的输出
notion image
修改convert.py中代码,转换成功
notion image
具体能不能使用还得看在瑞芯微的板子上运行部署情况

5、参考链接: