RKNN_AI工具在RK板卡上的部署

YOLO11 在 RK3576 上部署流程(Python 3.8 推荐)

本文档整理了从环境准备到模型推理的完整流程。

备选轻量化版本工具 rknn-toolkit-lite2

192.168.3.102板卡已配置环境

1. 板卡上,环境准备

  1. Python 版本 板卡:安装python,sudo apt install *** ,推荐使用 Python 3.8 ,官方文档支持到 Python 3.12

  2. 解压并上传必要文件 将以下** 工具 ** 和 ** 示例模型 **文件上传到 RK3576板卡上:

scp ./rknn_model_zoo-2.3.0.zip develop@192.168.3.102:/home/develop/rknn_ai/ scp ./rknn-toolkit2-2.3.0.zip develop@192.168.3.102:/home/develop/rknn_ai/

工具软件https://github.com/airockchip/rknn-toolkit2.git

RKNN_AI_toolkit

示例模型https://github.com/airockchip/rknn_model_zoo/tree/v2.3.0

RKNN_AI_model_zoo

  1. 解压文件

cd ~/rknn_ai unzip rknn_model_zoo-2.3.0.zip unzip rknn-toolkit2-2.3.0.zip


2. 板卡上,安装 RKNN Toolkit 依赖

  1. 进入 ARM64 平台依赖目录:

cd ~/rknn_ai/rknn-toolkit2-2.3.0/rknn-toolkit2/packages/arm64

  1. 板卡上安装依赖:

~/rknn_ai/rknn-toolkit2-2.3.0/rknn-toolkit2/packages/arm64$: pip install -r arm64_requirements_cp38.txt

  1. 板卡上本地安装 RKNN Toolkit Wheel 包:

~/rknn_ai/rknn-toolkit2-2.3.0/rknn-toolkit2/packages/arm64$: pip install rknn_toolkit2-2.3.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

或明确使用本地安装使用 --no-index 禁用网络索引

pip install --no-index rknn_toolkit2-2.3.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

3. 板卡上,配置系统库

创建系统库目录(如果不存在):

sudo mkdir -p /usr/lib64

建立 librknnrt.so 软链接到系统库路径:

sudo ln -s ~/rknn_ai/rknn-toolkit2-2.3.0/rknpu2/runtime/Linux/librknn_api/aarch64/librknnrt.so /usr/lib64/librknnrt.so

刷新动态库缓存:

sudo ldconfig

此命令会重新扫描 /usr/lib64/ 等目录,并更新 /etc/ld.so.cache

验证是否生效

bash ldconfig -p | grep librknnrt.so

如果输出中包含 /usr/lib64/librknnrt.so,说明缓存已更新成功。

4. 准备模型文件

将模型库重命名为简短名称:

必须步骤,代码中会查找不带版本的rknn_model_zoo作为路径

mv ./rknn_model_zoo-2.3.0 ./rknn_model_zoo

下载 YOLO11 示例模型:

git clone https://github.com/airockchip/rknn_model_zoo/tree/v2.3.0
gdp@gdp:~/github/rknn_model_zoo-2.3.0/examples/yolo11/model$ : cd ~/rknn_ai/rknn_model_zoo/examples/yolo11/model chmod +x download_model.sh gdp@gdp:~/github/rknn_model_zoo-2.3.0/examples/yolo11/model$: ./download_model.sh


5. 推理运行

5.1 使用 PyTorch 或 ONNX 模型

x86主机运行

(env_isaaclab) gdp@gdp:~/github/rknn_model_zoo/examples/yolo11/model$: cd ../python (env_isaaclab) gdp@gdp:~/github/rknn_model_zoo/examples/yolo11/python$: python yolo11.py --model_path <pt_model/onnx_model> --img_show ex. python yolo11.py \ --model_path /home/gdp/github/rknn_model_zoo/examples/yolo11/model/yolo11n.onnx \ --img_show

在板卡上,yolo11n.onnx格式转换rknn_model

运行目录((base) develop@SuperShoes:~/rknn_ai/rknn_model_zoo/examples/yolo11/python)下的脚本convert.py

指令如下:

(base) develop@SuperShoes:~/rknn_ai/rknn_model_zoo/examples/yolo11/python$ python convert.py /home/develop/rknn_ai/rknn_model_zoo/examples/yolo11/model/yolo11n.onnx rk3576 fp

转换后,模型自动保存到该目录下(base) develop@SuperShoes:~/rknn_ai/rknn_model_zoo/examples/yolo11/model/yolo11n.onnx

打印脚本使用方法如下:

(base)develop@SuperShoes:~/rknn_ai/rknn_model_zoo/examples/yolo11/python$ python convert.py Usage: python3 convert.py onnx_model_path [platform] [dtype(optional)] [output_rknn_path(optional)] platform choose from [rk3562,rk3566,rk3568,rk3588,rk3576,rk1808,rv1109,rv1126] dtype choose from [i8, fp] for [rk3562,rk3566,rk3568,rk3588,rk3576] dtype choose from [u8, fp] for [rk1808,rv1109,rv1126]

5.2 使用 RKNN 模型

板卡运行 ssh @****** -Y

python yolo11.py --model_path <rknn_model> --target <TARGET_PLATFORM> --img_show ex. (base) develop@SuperShoes:~/rknn_ai/rknn_model_zoo/examples/yolo11/python$ python yolo11.py \ --model_path ~/rknn_ai/rknn_model_zoo/examples/yolo11/model/yolo11.rknn \ --target rk3576 --img_show
⚠ 注意:<rknn_model> 替换为实际 RKNN 模型路径,<TARGET_PLATFORM> 替换为目标平台,如 rk35``7``6rk3588

https://github.com/airockchip/rknn-toolkit2.git

https://github.com/airockchip/rknn_model_zoo/tree/v2.3.0

暂时无法在飞书文档外展示此内容

5.3 C++ 验证运行时库

***************************

6 参考

彬烽提供参考 【YOLO11部署至RK3588】模型训练→转换RKNN→开发板部署_yolo11 rknn-CSDN博客

主要参考官方文档 GitHub - airockchip/rknn_model_zoo at v2.3.0

GitHub - airockchip/rknn-toolkit2

相关推荐
渡我白衣4 小时前
深入理解 Transformer:Transformer 究竟是什么?
java·linux·开发语言·c++·人工智能·深度学习·transformer
咖啡星人k4 小时前
2026 AI 自动化测试:让 AI 帮你写用例、跑测试、修 Bug(MonkeyCode 云端实战)
人工智能·功能测试·单元测试·测试用例·bug·集成测试
Elastic 中国社区官方博客10 小时前
搜索倍增器:推动收入、生产力和 AI 实现规模化
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
wjkjpcba11 小时前
机器人控制板PCBA怎么加工?从SMT贴片到BGA焊接解析机器人电子制造工艺
大数据·人工智能
青 春 记 忆11 小时前
Dify Docker Compose 通用无损升级指南:从备份、双版本预演到切换与回滚
运维·人工智能·python·docker·容器
小猪妈咪爱学法11 小时前
欧盟最新发布《AI数字综合法案(Digital Omnibus‑on‑AI,AI综合修订法案)
人工智能·网络安全
ZGIAI11 小时前
ZGI Workflow 变量池:接住节点输出
人工智能·架构
梵构广告11 小时前
提升品牌识别度有哪些方法?
人工智能
ZGIAI11 小时前
ZGI 记忆隔离:多人共用不串号
人工智能·架构
星栈独行12 小时前
决定 Agent 交付下限的「操作系统」:Harness 六层架构拆解
人工智能·架构