枯木逢春-我于北京
327 字
2 分钟
边缘端设备RK3588-RK3588S部署YOLO-V11及多线程优化
参考项目https://github.com/leafqycc/rknn-multi-threaded
环境部署
RK3588/RK3588S
板端 Anaconda 环境创建
安装 Anaconda
cd ~wget --user-agent="Mozilla" https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2024.10-1-Linux-aarch64.shsh Anaconda3-2024.10-1-Linux-aarch64.sh# 如果不能使用conda命令,在环境变量最后加上nano ~/.bashrcexport PATH=/home/orangepi/anaconda3/bin:$PATHsource ~/.bashrc
创建 yolo11 环境并激活
conda create -y -n yolo11 python=3.10conda activate yolo11
模型选择
板端下载官方预转换的 ONNX 模型
# yolo11nwget https://ftrg.zbox.filez.com/v2/delivery/data/95f00b0fc900458ba134f8b180b3f7a1/examples/yolo11/yolo11n.onnx# yolo11swget https://ftrg.zbox.filez.com/v2/delivery/data/95f00b0fc900458ba134f8b180b3f7a1/examples/yolo11/yolo11s.onnx# yolo11mwget https://ftrg.zbox.filez.com/v2/delivery/data/95f00b0fc900458ba134f8b180b3f7a1/examples/yolo11/yolo11m.onnx
使用服务器训练好的模型
模型部署
板端升级 Cmake 版本
conda install -c conda-forge cmake=3.25.*
板端安装 rknn-toolkit(2.3.0 版本)
git clone --branch v2.3.0 https://github.com/airockchip/rknn-toolkit2.gitcd rknn-toolkit2/packages/arm64
conda activate yolo11pip install -r arm64_requirements_cp310.txt -i https://pypi.tuna.tsinghua.edu.cn/simplepip install rknn_toolkit2-2.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
cd ~/rknn-toolkit2/rknn-toolkit-lite2/packagespip install rknn_toolkit_lite2-2.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
# 把 RKNN-Toolkit2 里的可执行文件和动态库手动复制到系统的标准路径中,方便系统识别和调用cd ~/rknn-toolkit2/rknpu2/runtime/Linux/rknn_server/aarch64/usr/binsudo cp * /usr/bin/cd ~/rknn-toolkit2/rknpu2/runtime/Linux/librknn_api/aarch64sudo cp * /usr/lib/
注意!务必检查安装的 torch 版本是否等于 1.13.1,版本不对会报错
# 若版本不对,使用下面命令重新安装torchpip install torch==1.13.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
板端克隆官方 Model 仓库
git clone https://github.com/airockchip/rknn_model_zoo.git
板端 ONNX 转 RKNN 模型
# 将ONNX模型放在rknn_model_zoo/examples/yolo11/modelcd rknn_model_zoo/examples/yolo11/pythonpython convert.py ../model/best.onnx rk3588 # model文件夹会得到yolo11.rknn
板端运行示例代码
python yolo11.py --model_path ../model/yolo11.rknn --target rk3588 --img_show
其他
查看 NPU 驱动版本
cat /sys/kernel/debug/rknpu/driver_version
查看实时 NPU 占用
sudo watch -n 1 "cat /sys/kernel/debug/rknpu/load"
边缘端设备RK3588-RK3588S部署YOLO-V11及多线程优化
https://blog.fuxieyi.top/posts/边缘端设备rk3588-rk3588s部署yolo-v11及多线程优化/