PC+RK3588连板在线调试模型推理

1 环境搭建

1.1 PC 端环境搭建

包下载地址为:https://github.com/airockchip/rknn-toolkit2.git。此外,RK 官方也针对部分模型给出了相关部署例子,其工具库名为 rknn_model_zoo,下载地址为:https://github.com/airockchip/rknn_model_zoo.git。

在 PC 端我目前是在 Docker 中安装了 toolkit 2.3 版本的库。安装前提是默认你已经在 Docker 内部拉取了 Ubuntu 镜像,随后在 Ubuntu 中安装了 Anaconda。

1.1.1 创建 RKNN-Toolkit 环境

复制代码
conda create -n toolkit2.3 python=3.12

1.1.2 进入 toolkit2.3 环境内

复制代码
conda activate toolkit2.3

1.1.3 进入到拉取的 RKNN-Toolkit 文件夹中,并执行相关安装命令

复制代码
cd rknn-toolkit2/rknn-toolkit2
pip install -r rknn-toolkit2/packages/requirements_cp312-2.3.0.txt -i https://mirrors.bfsu.edu.cn/pypi/web/simple

pip install rknn-toolkit2/packages/rknn_toolkit2-2.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

1.1.4 测试安装

复制代码
python3 # 进入python环境

# 若执行以下命令没有报错,则安装成功
from rknn.api import RKNN

1.1.5 在 Docker 中安装 ADB

复制代码
sudo apt-get install adb
在启动 Docker 容器时应注意挂载 USB 总线,不然在 Docker 内部无法找到 RK 设备:
-v /dev/bus/usb:/dev/bus/usb

1.2 RK3588 配置

1.2.1 配置 rknn_server 和 librknnrt

在 rk3588 中拉取与 PC 端同样版本的 toolkit 库,随后通过下面的命令更新 rknn_server 和 librknnrt 版本。

复制代码
cd rknn-toolkit2/rknpu2
sudo cp runtime/Linux/rknn_server/aarch64/usr/bin/* /usr/bin  
sudo cp runtime/Linux/librknn_api/aarch64/librknnrt.so /usr/lib64
sudo apt-get install adb

1.2.2 启动 RKNN-Server

复制代码
# 需要一直运行
rknn_server

2 模型测试

2.1 连接rk3588

这里有两种方法:

第一种:通过 ADB 连接 RK3588

复制代码
adb connect 192.168.x.x:5555 # 连接rk3588
adb disconnect 192.168.x.x:5555 # 断开连接rk3588

第二种:通过 USB 连接 RK3588

直接通过 Type-C 线连接 RK3588 到 PC 端,随后在 PC 端执行下面的命令进行测试。

查看是否连接成功,只能用一种方法连接。

复制代码
adb devices

2.2 测试模型

在 PC 端进入到 rknn_model_zoo/examples/yolov5/python 文件夹中,执行下面的命令进行测试。

复制代码
cd rknn_model_zoo-2.3.0/examples/yolov5/python
# onnx转换为rknn模型
python convert.py ../model/yolov5s_relu.onnx rk3588

# rknn模型推理
python yolov5.py --model_path ./../model/yolov5.rknn --target rk3588 --img_show
相关推荐
赛博守夜人几秒前
AI安全攻防与治理之十:模型输出中的敏感信息从哪里来,记忆、检索、日志与上下文泄露的区别
人工智能·安全
fengyangaiGEO3 分钟前
外贸B2B GEO优化:为何是平台成功的关键?
大数据·人工智能·python
poiu12346573 分钟前
学生课程汇报PPT怎么准备?AI辅助工具使用观察
人工智能
解决问题no解决代码问题3 分钟前
Java金融后端转LLM应用开发 Day9:AGI认知、负责任AI与全课程知识体系收官全指南
人工智能
电科_银尘6 分钟前
【深度学习项目实战·04】VS Code远程开发:在本地编辑,在服务器运行与调试
服务器·人工智能·深度学习
软件派9 分钟前
Strawberry 1.0 核心应用场景与落地实践
人工智能
David猪大卫12 分钟前
【C++修炼】STL容器—stack与queue
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
系统集成-鹰翔13 分钟前
ERP接口月度统计少了零单月份:SQLite分组与最近三个月均值排查
javascript·数据库·经验分享·后端
德思特17 分钟前
弱网测试入门:为什么你的设备在电梯里会断网?
经验分享·弱网测试