1. 项目背景与核心需求
在边缘计算设备上部署YOLOv8模型时,瑞芯微(Rockchip)系列芯片因其出色的性价比和功耗表现成为热门选择。然而官方提供的YOLOv8 PyTorch模型(.pt文件)无法直接在瑞芯微NPU上运行,需要经过ONNX中间格式转换,最终生成适配RKNN推理框架的权重文件。这个转换过程涉及多个关键环节,每个步骤的细节处理直接影响最终模型的推理精度和性能。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境准备与工具链配置
2.1 基础软件环境
- Python 3.8-3.10:建议使用conda创建独立环境
- PyTorch 1.8+:需与CUDA版本匹配(如无GPU可装CPU版)
- Ultralytics YOLOv8:
pip install ultralytics - ONNX 1.12.0+:
pip install onnx - RKNN-Toolkit2:需从瑞芯微官网下载对应版本(如1.4.0)
注意:RKNN-Toolkit2必须与芯片型号严格匹配,RK3588/RK3566/RK3568等不同芯片需要不同版本的toolkit
2.2 关键工具安装验证
bash复制# 验证YOLOv8导出能力
yolo export model=yolov8n.pt format=onnx
# 检查RKNN环境
python -c "from rknn.api import RKNN; print(RKNN.__version__)"
3. PT到ONNX的转换实践
3.1 标准导出流程
python复制from ultralytics import YOLO
model = YOLO('yolov8n.pt') # 加载官方预训练模型
model.export(format='onnx',
dynamic=False, # 固定输入尺寸
simplify=True, # 启用ONNX简化
opset=12) # 使用ONNX 12算子集
3.2 关键参数解析
| 参数名 | 推荐值 | 作用说明
