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

相关推荐
zhangzeyuaaa16 小时前
深入理解 Python GIL:从机制到释放时机
java·网络·python
姚青&16 小时前
Linux 文件处理命令
linux·运维·服务器
PSLoverS16 小时前
c++如何读取和修改可执行文件的PE头信息_IMAGE_NT_HEADERS解析【进阶】
jvm·数据库·python
gmaajt17 小时前
React Native 单元测试中第三方依赖的正确 Mock 策略
jvm·数据库·python
a95114164217 小时前
宝塔面板数据库查询响应慢_利用慢查询日志进行优化
jvm·数据库·python
tryqaaa_17 小时前
学习日志(二)【linux全部命令,http请求头{有例题},Php语法学习】
linux·学习·http·php·web
zhangzeyuaaa17 小时前
深入理解 Python 进程间通信:Queue 与 Pipe 实战解析
网络·python·中间件
2401_8314194417 小时前
如何用 http 模块创建一个基础的 Web 服务器处理请求
jvm·数据库·python
pele17 小时前
Redis如何防止AOF文件无限增大_触发BGREWRITEAOF命令进行日志重写
jvm·数据库·python
qq_4142565717 小时前
golang如何设计HTTP中间件链_golang HTTP中间件链设计方法
jvm·数据库·python