RK3588 rknpu2及rknn-toolkit2使用说明

本文详细介绍了RKNN模型的四种推理方法,包括在PC端通过RKNN-Toolkit2、网络推理在板端、使用C语言API开发编译并在板端运行以及在板端直接使用rknn-toolkit2-lite进行Python脚本推理。同时涵盖了conda环境的配置和不同平台的安装步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

RKNN模型推理共有四种方式:
第一种是借助RKNN-Toolkit2的功能在模拟NPU上运行RKNN模型并获取推理结果(在PC端)
第二种是借助RKNN-Toolkit2的功能, 将板子与PC连接,将RKNN模型分发到指定的NPU设备进行推理并获取推理结果(网络推理在板端,脚本写在PC端)
第三种是调用RKNN SDK的C语言API进行测试代码编写,并使用交叉编译器进行编译,将得到的可执行文件拷贝到板子上运行(开发编译在PC端,运行在板端)2024.3.7已验证
第四种是在板端安装rknn-toolkit2-lite工具,使用python脚本在板端推理(代码开发运行都在板端)

安装conda:
下载wget https://mirrors.bfsu.edu.cn/anaconda/archive/Anaconda3-2022.10-Linux-x86_64.sh --no-check-certificate
执行bash Anaconda3-2022.10-Linux-x86_64.sh
关闭自动进入conda,去除终端命令前(base):conda config --show | grep auto_activate_base; conda config --set auto_activate_base False(True)

PC上运行RKNN-Toolkit2(ubuntu20.04的python版本是3.8)
启动环境变量source ~/.bashrc
升级 conda update -n base -c defaults conda
新建并激活python3.6环境conda create -n rknnkit python=3.6; conda activate rknnkit(查看:conda info --envs  删除:conda remove -n rknnkit --all  关闭环境:conda deactivate)
cd rknn-toolkit2
pip install -r ./doc/requirements_cp36-1.4.0.txt
pip install torch==1.10.1 torchvision==0.11.2 -i https://pypi.tuna.tsinghua.edu.cn/simple(上一步会报错,切换源安装,后再重新执行上一步)
pip install ./packages/rknn_toolkit2-1.4.0_22dcfef4-cp36-cp36m-linux_x86_64.whl
判断是否安装成功:python; from rknn.api import RKNN
模型转换并推理:cd examples/onnx/yolov5;python test.py

开发板上运行rknn-toolkit-lite(ubuntu20.04的python版本是3.8)
bash Miniconda3-latest-Linux-aarch64.sh
conda create -n rknnlite python=3.9
conda activate rknnlite
cd rknn-toolkit2-1.3.0/rknn_toolkit_lite2/packages
pip install rknn_toolkit_lite2-1.3.0-cp39-cp39-linux_aarch64.whl
判断是否安装成功:python; from rknnlite.api import RKNNLite
推理:cd rknn-toolkit2-1.3.0/rknn_toolkit_lite2/examples/inference_with_lite;python test.py

### 瑞芯微 RKNN-Toolkit2 使用指南 #### 安装与配置 为了顺利使用瑞芯微的RKNN-Toolkit2工具包,在开始之前需确保已正确安装并配置环境。对于支持的硬件平台如RK3576, RK3562, RK3566, RK3568, RK3588等,官方提供了详细的快速上手文档[^2]。 首先,获取最新的SDK版本可以从GitHub仓库下载[RKNPU2 SDK](https://github.com/airockchip/rknn-toolkit2)。按照README文件中的指示完成依赖项的安装以及必要的路径设置。这一步骤通常涉及Python库和其他软件组件的准备。 接着,验证安装是否成功的一个简单方式就是尝试启动可视化界面: ```bash python3 -m rknn.bin.visualization ``` 如果一切正常,则说明基本环境已经搭建完毕[^1]。 #### 编写和执行代码实例 当环境准备好之后,可以编写简单的测试程序来确认整个流程能否顺畅运作。例如,下面是一个用于加载预训练模型并进行图像分类预测的小例子(假设目标设备为RK3568): ```python import argparse from rknn.api import RKNN def main(): parser = argparse.ArgumentParser(description='Test YOLOv8 model on RK3568') parser.add_argument('--model_path', type=str, required=True, help='Path to the .rknn file') parser.add_argument('--target', default='rk3568', choices=['rk3568'], help='Target device name') parser.add_argument('--img_show', action="store_true", help='Show image after inference') args = parser.parse_args() # Initialize RKNN object and load model rknn = RKNN() ret = rknn.load_rknn(args.model_path) if ret != 0: print('Load RKNN model failed!') exit(ret) try: # Set inputs and run inference ... # Post-process outputs ... if args.img_show: # Display processed images or results here pass finally: del rknn if __name__ == '__main__': main() ``` 这段脚本展示了如何利用命令行参数指定不同的选项,并调用了`load_rknn()`函数读取`.rknn`格式的神经网络模型文件[^4]。 #### 常见错误处理 在实践过程中可能会遇到一些常见问题,比如找不到特定目录下的资源或者是无法识别连接的目标板卡等问题。针对这些问题已有解决方案被记录下来供参考。例如,“ValueError: 'rknn_model_zoo' is not in list”的解决方法是将"rknn_model_zoo"替换为实际存在的项目名称;而“no devices/emulators found.”则提示用户检查物理连接状况以确保开发板已被正确定位。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

悠哉无忧

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值