RKNN Toolkit工具使用总结

开发环境Ubuntu 18.04

RKNN Toolkit工具下载链接:https://github.com/rockchip-linux/rknn-toolkit

安装RKNN Toolkit

pip3 install --user -r rknn-toolkit/packages/requirements-cpu.txt
pip3 install --user -U rknn-toolkit/packages/rknn_toolkit-1.4.0-cp36-cp36m-linux_x86_64.whl

模型转换 

cd rknn-toolkit/examples/rknn_convert
python rknn_convert.py /home/aaron/pro/tb/tb3/npu/rknn-toolkit-1.4.0/rknn-toolkit/examples/rknn_convert/models/tensorflow/mobilenet-ssd out_rknn False

第1个参数是要转换的原始模型的路径(可以直接填目录,但该目录需要包含`model_config.yml`文件)

第2个参数是转换后模型输出目录

第3个参数是是否开启预编译(加速模型加载时间)

NPU模型开发板上部署

这里以RK1808为例

RKNN-Toolkit 通过 PC 的 USB 连接到开发板硬件,将构建或导入的 RKNN 模型传到 RK1808 上运行,并从 RK1808 上获取推理结果、性能信息。

执行以下步骤

  1. 确保开发板的 USB OTG 连接到 PC,并且 ADB 能够正确识别到设备,即在 PC 上执行adb devices -l命令能看到目标设备。

  2. 调用 init_runtime 接口初始化运行环境时需要指定 target 参数和 device_id 参数。其中 target 参数表明硬件类型, 选值为 rk1808, 当 PC 连接多个设备时,还需要指定 device_id 参数,即设备编号,可以通过adb devics命令查看,

  3. rknn-toolkit/example/mobilenet_v1为例举例如下:

    $ adb devices
    List of devices attached 
    0123456789ABCDEF        device
    

    即改为

    ret = rknn.init_runtime(target='rk1808', device_id='0123456789ABCDEF')
    
  4. 运行

    python3 ./test.py

运行成功后就可以获得经过RK1808推理后得到的数据。

猜你喜欢

转载自blog.csdn.net/wzhrsh/article/details/114630981