全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 嵌入式技术 >

迅为高情性6TOPS算力的RK3576开发板NPU rknn-model-zo

时间:2025-07-01 14:54

人气:

作者:admin

标签: 迅为电子  开发板  rk3576 

导读:迅为RK3576开发板NPU rknn-model-zoo例程演示...

迅为iTOP-3576开发板采用瑞芯微RK3576高性能、低功耗的应用处理芯片,集成了4个Cortex-A72和4个Cortex-A53核心,以及独立的NEON协处理器。它适用于ARM PC、边缘计算、个人移动互联网设备及其他多媒体产品。

支持INT4/INT8/INT16/FP16/BF16/TF32混合运算,并凭借其强大的兼容性,可以轻松转换基于TensorFlow、MXNet、PyTorch、Caffe等一系列框架的网络模型。满足多种应用场景。

wKgZO2hjha-AX_l6AAZl__To0SE365.png

rknn-model-zoo中提供了当前主流算法部署到RK SOC的例程,包含了模型的转换、模型

Python api推理、模型的C api推理,rknn-model-zoo仓库在1.5小节已经讲解了获取方法,

而由于每个例程的使用都非常相似,所以在本章节只以deeplabv3例程为例进行例程演示。

DeepLabv3是一种用于语义分割的深度学习模型,由Google研究团队在2017年提出。它

是DeepLab系列模型的第三代产品,相比前两代模型在准确性和运行效率上都有显著提升。

5.1 模型下载和模型转换

不论是模型的Python api推理还是模型的C api推理都需要将常规模型转换为RKNN模型,

首先进入到deeplabv3目录

在model目录下有着常规模型的下载脚本,如下图所示:

wKgZO2hjha-AaGArAAB3GRttxrA630.png

然后赋予该脚本权限并运行该脚本,下载deeplabv3模型,

下载完成之后,可以看到当前目录多出来了deeplab-v3-plus-mobilenet-v2.pb模型,其他例

程的模型也是通过上述方法进行下载。然后来到python目录下,在python目录下有着模型转

换的python程序convert.py,

wKgZPGhjha-AR1N0AABvns_GCRY541.png

convert.py程序实际上就是由rknn-toolkit2编写的程序,所以在运行之前必须要确保根据

2.1小节搭建了rknn-toolkit2环境,convert.py的使用方法如下所示:

wKgZO2hjha-AbmrXAACKuwyZubo798.png

可以使用以下命令进行模型转换,表示将deeplab模型转换为在RK3576上运行的量化

RKNN模型,如下图所示:

python3 convert.py ../model/deeplab-v3-plus-mobilenet-v2.pb rk3576 i8

在运行的过程中会有一些警告,不影响转换结果,默认忽略即可,转换完成会在model

目录下生成名为deeplab-v3-plus-mobilenet-v2.rknn的RKNN模型,

至此,关于deeplabv3例程的模型下载和模型转换就演示完成了,rknn-model-zoo其他例

程的模型下载和模型转换步骤相同,模型转换完成之后,就可以进行推理测试了,rknn-model

-zoo提供了rknn-toolkit2 Python API连板推理和rknpu2 C API推理这两种方式,会在接下来

的小节中对两种方法进行演示。

5.2 Python API 推理

在每个rknn-model-zoo例程文件夹的python目录中除了模型转换程序还有推理程序,所

使用的也是由rknn-toolkit2 API编写的程序,

而由于rknn-toolkit2只能运行在X86的Linux系统中,所以这里采用的是连板推理的方式,

关于连板推理的演示可以看2.2.2小节,在本章节不再进行详细的介绍,直接进行演示。

首先启动开发板,这里开发板烧写的是ubuntu22镜像,使用其他镜像都可以,烧写完成

之后,需要先更新rknn_server和librknnrt.so文件,rknn_server和librknnrt.so分别为rknn-too

lkit2/rknpu2/runtime/Linux/rknn_server/aarch64/usr/bin和rknn-toolkit2/rknpu2/runtime/Linux/li

brknn_api/aarch64目录下如下图所示:

wKgZPGhjha-AXL9DAADsd4Gh3tE532.png

然后将rknn_server和librknnrt.so拷贝到开发板上,其中rknn_server需要拷贝到/usr/bin

目录下,而librknnrt.so要拷贝到/usr/lib目录,拷贝完成之后,运行rknn_server如下图所示:

wKgZPGhjha-AEVtQAAB2FglXPOo532.png

然后确保开发板的adb设备连接到了虚拟机ubuntu,连接成功之后在左侧菜单栏中会有一

手机的图标,

然后在终端使用“adb devices”命令查看当前连接的adb设备,存在adb设备表示连接成

功,

而deeplabv3.py程序的运行需要matplotlib依赖,所以要运行以下命令安装matplotlib,如

下图所示:

pip3 install matplotlib -i https://repo.huaweicloud.com/repository/pypi/simple/

安装完成之后就可以运行deeplabv3.py程序了,deeplabv3.py程序有三个参数,分别为

--model_path、--target和--device_id,--model_path表示RKNN模型路径,--target表示连接的

开发板SOC类型,--device_id为上面通过“adb devices”获取到的设备id,但由于只有一个设

备,所以--device_id参数可以忽略不写,所以推理命令如下所示:

wKgZO2hjhbCASrhhAAaIVKcVxVw059.png

运行完成之后,会在当前路径输出语义分割之后的图形output.png,原图形和分割之后的

对比图如下所示:

wKgZO2hjhbCAKREfAAeGCwA6GQA543.png

可以看到小朋友、自行车已经使用了不同的颜色进行了分割,至此对于Python API推理就

演示完成了。

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信