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.121.1.2 进入 toolkit2.3 环境内
conda activate toolkit2.31.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.whl1.1.4 测试安装
python3 # 进入python环境 # 若执行以下命令没有报错,则安装成功 from rknn.api import RKNN1.1.5 在 Docker 中安装 ADB
sudo apt-get install adb 在启动 Docker 容器时应注意挂载 USB 总线,不然在 Docker 内部无法找到 RK 设备: -v /dev/bus/usb:/dev/bus/usb1.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 adb1.2.2 启动 RKNN-Server
# 需要一直运行 rknn_server2 模型测试
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 devices2.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