RK3588 rknpu2及rknn-toolkit2使用说明

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

相关推荐
小羊没烦恼!15 分钟前
铁道部新客票系统设计(二)
开发语言·前端·数据库·python·oracle·c#·php
quantdash_cc1 小时前
从实时行情到价格观察表:用 Python 和 Pandas 构建策略输入数据
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
镜子AI1 小时前
镜子AI工程实践:用 Python 做 GEO 实体一致性审计,并自动生成 JSON-LD 结构化数据
人工智能·python·json
Zenova EdgeOS1 小时前
Linux 内核日志 dmesg 进阶实战:从现场过滤到持久化闭环
linux·运维·服务器
郝亚军2 小时前
ec_private.pem的生成方法
linux·运维·服务器
NendoZen2 小时前
Arch Linux解决Grub无法SAVEDEFAULT问题(uki启动问题)
linux·运维·服务器
忆挽篱笙歌3 小时前
进程控制管理
linux·运维·服务器
Escalating_xu3 小时前
【Linux 网络编程】connect 的断线重连:用状态机写一个能恢复连接的 TCP 客户端
linux·网络·tcp/ip
Zucker n5 小时前
英语“论文”语法检查工具
linux·windows
2601_962885725 小时前
如何用 Python 计算 VaR 和 CVaR(在险价值)?
开发语言·python