1903|1

187

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

技术帖来啦——飞凌嵌入式RK3588开发板推理模型转换及测试 [复制链接]

RKNN(Rockchip Neural Network)是一种用于嵌入式设备的深度学习推理框架,它提供了一个端到端的解决方案,用于将训练好的深度学习模型转换为在嵌入式设备上运行的可执行文件。使用RKNN框架可以在嵌入式设备上高效地运行深度学习模型,这对于需要在资源受限的设备上进行实时推理的应用场景非常有用。例如,可以将RKNN用于智能摄像头、机器人、无人机等嵌入式设备中,实现物体检测、人脸识别、图像分类等人工智能功能。

RKNN-Toolkit2是为用户提供在 PC、 Rockchip NPU 平台上进行模型转换、推理和性能评估的开发套件,用户通过该工具提供的 Python 接口可以便捷地完成模型转换、量化功能、模型推理、性能和内存评估以及量化精度分析等多种操作。

下面,我们就使用RKNN-Toolkit2工具将rknpu2工程中的yolov5s.onnx模型转换为yolov5s.rknn模型为例进行讲解。

开发工具:飞凌嵌入式OK3588-C开发板

开发环境:Ubuntu20.04

01
下载RKNN-Toolkit2


02
安装依赖
requirements_cp36-1.3.0.txt文件,在rknn-toolkit2/doc目录下:

03
开发环境与OK3588-C开发板连接
开发环境中安装adb

使用USB-typeC线连接到板子的TypeC0接口,PC端识别到虚拟机中。

在开发环境中检查是否连接成功

如果连接成功会返回板子的设备ID,如下:

04
下载NPU工程

05
将rknn_server和rknn库发送到开发板

06
模型转换
在开发环境中进入到rknn_toolkit2工具中的examples目录中选择一个模型。本例选择的是将onnx模型转换为RKNN模型。

修改test.py

在rknn.config中添加target_platform='rk3588'

在rknn.init_runtime中添加target='rk3588'

修改完成后,运行test.py

运行成功结果如下:


同时在目录下会生成yolov5s.rknn模型。

07
编译测试源码
进入到rknpu2/examples/rknn_yolov5_demo目录下,设置环境变量:

执行编译脚本,进行编译:

然后在rknpu2/examples/rknn_yolov5_demo/install/rknn_yolov5_demo_Linux目录下会生成rknn_yolov5_demo

08
测试
将上边生成的yolov5s.rknn模型和install目录下的rknn_yolov5_demo_Linux拷贝到开发板中

使用rknn模型进行物体识别命令如下:


执行结果如下:

将生成的out.jpg拷贝到本地电脑中查看,识别结果如下。

此帖出自ARM技术论坛

最新回复

在资源受限的设备上进行实时推理的应用场景确实非常有用   详情 回复 发表于 2023-6-6 07:45
点赞 关注
 

回复
举报

6609

帖子

0

TA的资源

五彩晶圆(高级)

沙发
 

在资源受限的设备上进行实时推理的应用场景确实非常有用

此帖出自ARM技术论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表