开发指南 (Development Guide)
代码结构和规范
添加新功能
调试和测试
模型优化
参看1的doc/03_Rockchip_RKNPU_API_Reference_RKNN_Toolkit2_V2.3.2_CN.pdf,这是官方的API使用文档。
把onnx模型转为rknn模型的极简脚本:
# file name: onnx2rknn.py
from rknn.api import RKNN
rknn = RKNN()
rknn.config(target_platform='rk3588')
rknn.load_onnx(model='tennis.onnx')
rknn.build(do_quantization=False)
rknn.export_rknn(export_path='tennis.rknn')
rknn.release()
连接主机
目前有adb, ssh, 调试串口三种连接方式。日常调试推荐用ssh连接。
用户名:orangepi 密码:orangepi
# 调试串口连接
minicom -D /dev/ttyUSB0 -b 1500000
# usb线adb连接
adb devices
adb shell
# ssh连接
sudo ip a add 192.168.1.2/24 dev <ethN> # 设置主机的ip地址
ssh orangepi@192.168.1.20 # 开发板的两个网口分别设置为10和20,哪个能连上就用哪个
手动运行
系统启动后本程序会自动运行,可以手动运行观察输出。如下命令都是在开发板的系统上执行。
sudo systemctl stop my-car # 停止本程序的运行,注意下次重启后本程序依然会自动运行
conda activate rknn # 切换到本程序的运行环境
cd ~/Code/Desktop-Wanderer # 切换到本程序所在的目录
python -m src.main # 手动运行本程序
附录
1
https://github.com/airockchip/rknn-toolkit2.git