RKNN-Toolkit2入门
RKNN-Toolkit2 的主要作用是在 x86 主机(Host)上将 ONNX、TensorFlow、Caffe 等模型转换为 .rknn 格式,然后部署到 瑞芯微(Rockchip)NPU 芯片(如 RK3566、RK3568、RK3588、RV1106 等)上进行推理。
📌 详细解释:RKNN-Toolkit2 到底是什么?
🔧 1. 它是一个“模型转换 + 量化 + 推理”工具包
RKNN-Toolkit2 不只是一个“转换器”,它提供了一整套流程:
A[原始模型: ONNX/TensorFlow/PyTorch] --> B[RKNN-Toolkit2]
B --> C{模型转换}
C --> D[量化: Float32 → INT8/U8]
D --> E[生成 .rknn 文件]
E --> F[部署到 RK 芯片]
F --> G[在 NPU 上推理]
💻 2. 运行平台:x86 PC 或服务器(Host)
✅ 你通常在 x86 Linux 主机上安装和运行 RKNN-Toolkit2
用于:
加载 ONNX 模型
配置输入/输出
执行量化(需要校准数据集)
转换为 .rknn 模型文件
仿真推理(rknn.inference() 在 PC 上模拟)
🖥️ 3. 目标平台:瑞芯微 NPU 芯片(Target)
❌ .rknn 模型不能在 x86 上直接用 NPU 加速
✅ 必须把 .rknn 文件部署到 RK 芯片设备上(如 RK3588 开发板)
在目标设备上使用 RKNN-API 加载模型,并在 NPU 上运行推理
+------------------+ +------------------+
| x86 主机 | | RK3588 设备 |
| (Ubuntu/PC) | | (嵌入式 Linux) |
| | | |
| • 原始模型 | | |
| • ONNX/TensorFlow | -----> | • .rknn 模型 |
| • RKNN-Toolkit2 | 复制 | • 应用程序 |
| • 转换 + 量化 | | • rknn-api |
| • 生成 .rknn | | • NPU 推理 |
+------------------+ +------------------+↑ ↑| |+--------- 开发阶段 ------------+-------- 部署阶段 ------->
为了使用 RKNPU,用户需要首先在计算机上运行 RKNN-Toolkit2 工具,将训练好的模型转换为 RKNN 格式的模型,然后使用 RKNN C API 或 Python API 在开发板上进行推理。
RKNN-Toolkit2 是一个软件开发工具包,供用户在 PC 和 Rockchip NPU 平台上执行模型转换、推理和性能评估。
RKNN-Toolkit-Lite2 为 Rockchip NPU 平台提供了 Python 编程接口,帮助用户部署 RKNN 模型并加速 AI 应用的实现。
RKNN Runtime 为 Rockchip NPU 平台提供了 C/C++ 编程接口,帮助用户部署 RKNN 模型并加速 AI 应用的实现。
获取RKNN-Toolkit2资源
先创建python虚拟环境,如
conda create -n rknn python=3.0
conda activate rknn
# 下载RKNN-Toolkit2仓库
git clone https://github.com/airockchip/rknn-toolkit2.git
我没有开梯子,暂时用这个代替: git clone https://gitcode.com/gh_mirrors/rkn/rknn-toolkit2.git
# 下载RKNN Model Zoo仓库(包含示例代码)
git clone https://github.com/airockchip/rknn_model_zoo.git
安装RKNN-Toolkit2
在激活的Conda环境中安装RKNN-Toolkit2及其依赖:
# 进入rknn-toolkit2目录
cd ~/rknn-toolkit2/rknn-toolkit2# 安装所需依赖库(根据Python版本选择对应的requirements文件)
如果没有pip包的话执行: conda install pip -y
然后:
pip install -r packages/x86_64/requirements_cp310-2.3.2.txt -i https://pypi.tuna.tsinghua.edu.cn/simple# 安装RKNN-Toolkit2 wheel包(注意版本号和Python版本匹配)
pip install packages/x86_64/rknn_toolkit2-2.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
验证安装
安装完成后,通过简单的Python脚本来验证RKNN-Toolkit2是否安装成功:
#!/usr/bin/env python3
from rknn.api import RKNN # 尝试导入RKNN模块# 如果导入成功,会打印以下信息
print("RKNN-Toolkit2 导入成功!")
print("恭喜,RKNN-Toolkit2 环境已准备就绪。")
如果程序没有报错并成功打印信息,说明RKNN-Toolkit2已正确安装。
