☰
YOLO11模型转换为.rknn(支持RK3588/RK3576等)
2026/10/24 19:44:41 网站建设 项目流程

本文档主要提供将YOLO11从PT模型转换到RKNN模型的流程

本文适用开发环境如下:

Windows 开发环境:Windows 10 64bit

一、项目文件梳理

YOLO11训练、转换、部署所需四个项目文件:

第一个:YOLO11模型训练项目文件(GitHub - ultralytics/ultralytics at v8.3.31 · GitHub),

第二个:瑞芯微仓库中YOLO11的pt转onnx项目文件(GitHub - airockchip/ultralytics_yolo11 · GitHub);

第三个:用于在虚拟机中进行onnx转rknn的虚拟环境配置项目文件(GitHub - airockchip/rknn-toolkit2 at v2.3.0 · GitHub);

第四个:在开发板上做模型部署的项目文件(GitHub - airockchip/rknn_model_zoo at v2.3.0 · GitHub)。

第一个模型训练文件是v8.3.31

第二个ONNX转换文件为默认main分支

第三个文件rknn-toolkit2为v2.3.0

第四个文件rknn_model_zoo也用v2.3.0(rknn-toolkit2尽量和rknn_model_zoo版本一致)

注:ultralytics从v8.3.0开始就是YOLO11的版本Tags了。

二、PT转ONNX

把训练得到的PT模型放置到第二个项目文件中

注:我把PT模型重命名为best.pt

执行命令:python E:/pythonProject/ultralytics_yolo11-pt-onnx/ultralytics/engine/exporter.py \ --weights E:\pythonProject\ultralytics_yolo11-pt-onnx\best.pt \ --imgsz 640 \ --dynamic False \ --simplify True \ --format onnx

执行完毕后,会生成 ONNX 模型,用netron打开该模型,如下所示:

可以看到,YOLO11的输出都是9个!!! YOLO11在RKNN转换过程中,是要有三个分支的,分别80×80检测头,40×40检测头,20×20检测头。每个检测头下,都有三个输出,分别是box边框输出,即图上的1×64×80×80;还有各类别输出,即1×3×80×80(这里的3就是指3个类别),最后是综合置信度输出,即1×1×80×80。(其余检测头同理)

最后该模型down下来后复制到虚拟机中。

三、ONNX转RKNN

支持

· RK3562

· RK3566

· RK3568

· RK3588

· RK3576

· RK1808

· RV1109

· RV1126

板子的转换:

在自己的虚拟机中进行转换。先安装转换环境

这里我们先conda create -n rknn230 python=3.8创建环境.

然后conda activate rknn230激活当前环境

现在需要用到rknn-toolkit2-2.3.0文件,即第三个项目文件。

进入该项目文件的目录,找到两个文件:txt和whl

在终端输入

pip install -r requirements_cp38-2.3.0.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

pip install rknn_toolkit2-2.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

此时,我们的转rknn环境就配置完成了。

现在要进行模型转换,可以参考rknn_model_zoo-2.3.0\examples\yolo11下的README指导进行转换(注,现在需要用到第四个项目文件了,即rknn_model_zoo):

1.先修改python文件夹下的convert.py和yolo11.py

修改完成后,rk3588在当前rknn230环境下的终端输入:python convert.py ../model/best.onnx rk3588

rk3576在当前rknn230环境下的终端输入:python convert.py ../model/best.onnx rk3576

用netron打开rknn模型,输入输出如下:

由上图可以看到,onnx模型的9个输出会一样出现在rknn模型上。所以如果onnx模型有问题,则无法转出正常的rknn模型。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询