Rockchip RKNN 导出Ultralytics YOLO11 模型
在嵌入式设备上部署计算机视觉模型时,尤其是在采用 Rockchip 处理器的设备上部署计算机视觉模型时,拥有兼容的模型格式至关重要。将 Ultralytics YOLO11将模型导出为 RKNN 格式可确保优化性能并与 Rockchip 硬件兼容。本指南将指导您将YOLO11 模型转换为 RKNN 格式,以便在 Rockchip 平台上高效部署。
备注
本指南已在基于 Rockchip RK3588 的Radxa Rock 5B和基于 Rockchip RK3566 的Radxa Zero 3W上进行了测试。预计本指南也适用于支持rknn-toolkit2的其他基于 Rockchip 的设备,如 RK3576、RK3568、RK3562、RV1103、RV1106、RV1103B、RV1106B 和 RK2118。
什么是 Rockchip?
Rockchip 以提供多功能、高能效解决方案而闻名,其设计的先进片上系统 (SoC) 可支持各种消费电子产品、工业应用和人工智能技术。凭借基于 ARM 的架构、内置神经处理单元 (NPU) 和高分辨率多媒体支持,Rockchip SoC 可为平板电脑、智能电视、物联网系统和边缘 AI 应用等设备提供尖端性能。Radxa、ASUS、Pine64、Orange Pi、Odroid、Khadas 和 Banana Pi 等公司提供基于 Rockchip SoC 的各种产品,进一步扩大了其在不同市场的覆盖范围和影响力。
RKNN 工具包
RKNN 工具包是由 Rockchip 提供的一套工具和库,用于促进在其硬件平台上部署深度学习模型。RKNN 或 Rockchip 神经网络是这些工具使用的专有格式。RKNN 模型旨在充分利用 Rockchip 的 NPU(神经处理单元)提供的硬件加速,确保在 RK3588、RK3566、RV1103、RV1106 等设备和其他由 Rockchip 支持的系统上执行人工智能任务时的高性能。
RKNN 模型的主要特点
RKNN 模型为在 Rockchip 平台上部署提供了多项优势:
- 针对 NPU 优化:RKNN 模型经过专门优化,可在 Rockchip 的 NPU 上运行,确保实现最高性能和效率。
- 低延迟:RKNN 格式最大限度地减少了推理延迟,这对边缘设备上的实时应用至关重要。
- 特定平台定制:RKNN 模型可根据特定的 Rockchip 平台进行定制,从而更好地利用硬件资源。
闪存操作系统到 Rockchip 硬件
拿到基于 Rockchip 的设备后,第一步就是刷新操作系统,使硬件能够启动进入工作环境。在本指南中,我们将介绍我们测试的两款设备(Radxa Rock 5B 和 Radxa Zero 3W)的入门指南。
导出到 RKNN:转换YOLO11 模型
将Ultralytics YOLO11 模型导出为 RKNN 格式,并使用导出的模型运行推理。
备注
请确保使用基于 X86 的 Linux PC 将模型导出到 RKNN,因为不支持在基于 Rockchip 的设备(ARM64)上导出。
安装
要安装所需的软件包,请运行
有关安装过程的详细说明和最佳实践,请查阅我们的Ultralytics 安装指南。在安装YOLO11 所需的软件包时,如果遇到任何困难,请查阅我们的常见问题指南,了解解决方案和技巧。
使用方法
备注
目前仅支持检测模型的导出。未来将支持更多模型。
使用方法
出口参数
论据 | 类型 | 默认值 | 说明 |
---|---|---|---|
format |
str |
rknn |
导出模型的目标格式,定义与各种部署环境的兼容性。 |
imgsz |
int 或 tuple |
640 |
模型输入所需的图像尺寸。对于正方形图像,可以是一个整数,或者是一个元组 (height, width) 了解具体尺寸。 |
batch |
int |
1 |
指定导出模型的批量推理大小,或导出模型将同时处理的图像的最大数量。 predict 模式。 |
name |
str |
rk3588 |
指定 Rockchip 型号(rk3588、rk3576、rk3566、rk3568、rk3562、rv1103、rv1106、rv1103b、rv1106b、rk2118)。 |
有关导出过程的更多详情,请访问Ultralytics 有关导出的文档页面。
部署导出的YOLO11 RKNN 模型
成功将Ultralytics YOLO11 模型导出为 RKNN 格式后,下一步就是在基于 Rockchip 的设备上部署这些模型。
安装
要安装所需的软件包,请运行
使用方法
使用方法
基准
YOLO11 下面的基准测试由Ultralytics 团队在基于 Rockchip RK3588 的 Radxa Rock 5B 上运行,其中包括 rknn
模型格式测量速度和精度。
模型 | 格式 | 现状 | 大小(MB) | mAP50-95(B) | 推理时间(毫秒/分钟) |
---|---|---|---|---|---|
YOLO11n | rknn |
✅ | 7.4 | 0.61 | 99.5 |
YOLO11s | rknn |
✅ | 20.7 | 0.741 | 122.3 |
YOLO11m | rknn |
✅ | 41.9 | 0.764 | 298.0 |
YOLO11l | rknn |
✅ | 53.3 | 0.72 | 319.6 |
YOLO11x | rknn |
✅ | 114.6 | 0.828 | 632.1 |
备注
使用 coco8 数据集对上述基准进行了验证
摘要
在本指南中,您将学习如何将Ultralytics YOLO11 模型导出为 RKNN 格式,以增强其在 Rockchip 平台上的部署。您还将了解 RKNN 工具包以及在边缘人工智能应用中使用 RKNN 模型的具体优势。
有关使用的更多详情,请访问RKNN 官方文档。
此外,如果您想了解有关Ultralytics YOLO11 集成的更多信息,请访问我们的集成指南页面。您将在那里找到大量有用的资源和见解。
常见问题
如何将Ultralytics YOLO 模型导出为 RKNN 格式?
您可以使用Ultralytics YOLO 将模型轻松导出为 RKNN 格式。 export()
Ultralytics Python 软件包中的方法或通过命令行界面 (CLI)。确保使用基于 x86 的 Linux PC 进行导出,因为 Rockchip 等 ARM64 设备不支持此操作。您可以使用 name
参数,例如 rk3588
, rk3566
或其他。这一过程会生成一个优化的 RKNN 模型,可在 Rockchip 设备上部署,并利用其神经处理单元 (NPU) 加速推理。
示例
在 Rockchip 设备上使用 RKNN 模型有什么好处?
RKNN 模型专为利用 Rockchip 神经处理单元 (NPU) 的硬件加速功能而设计。与在相同硬件上运行ONNX 或TensorFlow Lite 等通用模型格式相比,这种优化大大加快了推理速度,减少了延迟。使用 RKNN 模型可以更有效地利用设备资源,从而降低功耗,提高整体性能,这对边缘设备上的实时应用尤为重要。通过将Ultralytics YOLO 模型转换为 RKNN,您可以在 RK3588、RK3566 等采用 Rockchip SoC 的设备上实现最佳性能。
我能否在NVIDIA 或Google 等其他制造商的设备上部署 RKNN 模型?
RKNN 模型专门针对 Rockchip 平台及其集成的 NPU 进行了优化。虽然从技术上讲,您可以使用软件模拟在其他平台上运行 RKNN 模型,但您将无法从 Rockchip 设备提供的硬件加速中获益。为了在其他平台上获得最佳性能,建议将Ultralytics YOLO 模型导出为这些平台专门设计的格式,如TensorRT 用于NVIDIA GPU 或TensorFlow Lite 用于 Google's EdgeTPU 。Ultralytics 支持导出为多种格式,确保与各种硬件加速器兼容。
RKNN 模型部署支持哪些 Rockchip 平台?
Ultralytics YOLO 导出到 RKNN 格式支持多种 Rockchip 平台,包括流行的 RK3588、RK3576、RK3566、RK3568、RK3562、RV1103、RV1106、RV1103B、RV1106B 和 RK2118。这些平台常见于 Radxa、ASUS、Pine64、Orange Pi、Odroid、Khadas 和 Banana Pi 等制造商的设备中。这种广泛的支持可确保您在各种搭载 Rockchip 的设备(从单板计算机到工业系统)上部署优化的 RKNN 模型,充分利用其人工智能加速功能来提高计算机视觉应用的性能。
在 Rockchip 设备上,RKNN 模型的性能与其他格式相比如何?
由于 RKNN 模型针对 Rockchip 的 NPU 进行了优化,因此在 Rockchip 设备上,RKNN 模型通常优于ONNX 或TensorFlow Lite 等其他格式。例如,Radxa Rock 5B (RK3588) 上的基准测试表明,RKNN 格式的YOLO11n的推理时间为 99.5 毫秒/图像,明显快于其他格式。如基准测试部分所示,这一性能优势在不同大小的YOLO11 模型中都是一致的。通过利用专用 NPU 硬件,RKNN 模型最大限度地减少了延迟,提高了吞吐量,是基于 Rockchip 的边缘设备上实时应用的理想选择。