瑞芯微推理RKNN使用

参考资料

toolkit2
官网资料
野火实践指南

Ubuntu22.04实践

安装toolkit2

  1. 安装命令

    bash 复制代码
    pip3 install -r xxx/packages/requirements_cp310-1.6.0.txt
    pip3 install xxx/packages/rknn_toolkit2-1.6.0+81f21f4d-cp310-cp310-linux_x86_64.whl

    注意加上 -i xxx 可能会造成下载tf-estimator-nightly-2.8.0.dev2021122109失败,所以安装ensorboard-2.8.0时不加-i xxx 。

  2. 检测是否安装成功

    python 复制代码
    (toolkit2_1.5) llh@YH-LONG:~$ python3
    Python 3.10.12 (main, Nov 20 2023, 15:14:05) [GCC 11.4.0] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> from rknn.api import RKNN
    >>> 

推理步骤与过程

  1. 模型转换

    • 将其它模型转为onnx模型
    • 将onnx模型转换为rknn模型 python convert.py .../model/yolov8n.onnx rk3588
  2. 进行推理测试

    板端推理 python yolov8.py --model_path .../model/yolov8.rknn --target rk3568 --img_show

    • 遇到问题1 ValueError: 'rknn_model_zoo' is not in list. 解决办法将"rknn_model_zoo"改为实际项目名字"rknn_model_zoo-main"
    • 遇到问题2 error: no devices/emulators found. 板子连接问题,未连接板子或板子未连接好

    PC端推理 可在examples目录下找到对应的模型测试文件,如.../examples/onnx/yolov5/test.py。在目录下可直接执行python test.py

  3. 板端推理前置步骤

    • 板端GCC安装 [GCC下载](https://releases.linaro.org/components/toolchain/binaries/6.3-
      2017.05/aarch64-linux-gnu/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu.tar.xz)

    • 计算机端 ./build-linux.sh -t rk3568 -a aarch64 -d yolov8 执行完毕会生成install文件夹

    • 将生成的文件推到板端 adb push install/<TARGET_PLATFORM>linux/rknn_yolov8_demo/ /userdata/

    • 进入板端,运行命令

      bash 复制代码
      adb shell
      cd /userdata/rknn_yolov8_demo
      
      export LD_LIBRARY_PATH=./lib
      ./rknn_yolov8_demo model/yolov8.rknn model/bus.jpg
    • 生成结果为out.png。adb pull /userdata/rknn_yolov8_demo/out.png

相关推荐
User_芊芊君子28 分钟前
CANN图编译器GE全面解析:构建高效异构计算图的核心引擎
人工智能·深度学习·神经网络
爱吃大芒果32 分钟前
CANN神经网络算子库设计思路:ops-nn项目的工程化实现逻辑
人工智能·深度学习·神经网络
哈__44 分钟前
CANN加速VAE变分自编码器推理:潜在空间重构与编码解码优化
人工智能·深度学习·重构
觉醒大王1 小时前
哪些文章会被我拒稿?
论文阅读·笔记·深度学习·考研·自然语言处理·html·学习方法
禁默1 小时前
Ops-Transformer深入:CANN生态Transformer专用算子库赋能多模态生成效率跃迁
人工智能·深度学习·transformer·cann
杜子不疼.1 小时前
基于CANN GE图引擎的深度学习模型编译与优化技术
人工智能·深度学习
chaser&upper1 小时前
预见未来:在 AtomGit 解码 CANN ops-nn 的投机采样加速
人工智能·深度学习·神经网络
机器懒得学习1 小时前
智能股票分析系统
python·深度学习·金融
vx_biyesheji00011 小时前
豆瓣电影推荐系统 | Python Django 协同过滤 Echarts可视化 深度学习 大数据 毕业设计源码
大数据·爬虫·python·深度学习·django·毕业设计·echarts
饭饭大王6662 小时前
当 AI 系统开始“自省”——在 `ops-transformer` 中嵌入元认知能力
人工智能·深度学习·transformer