本文介绍瑞芯微原厂RKNN端侧模型的测试验证方法,而关于开发环境搭建可以查看先前文章
https://www.elecfans.com/d/7651862.html。基于触觉智能RK3576开发板Purple Pi OH2演示。
RKNN
RKNN(Rockchip Neural Network) 是瑞芯微专为自家 NPU (神经网络处理单元) 开发的端侧神经网络计算框架,提供完整的 "模型转换 - 部署 - 推理" 解决方案。RK官方提供了RKNN软件栈可以帮助用户快速地将AI模型部署到Rockchip芯片,整体的框架如下。
RKNN-Toolkit2是为用户提供在计算机上进行模型转换、推理和性能评估的开发套件,RKNN-Toolkit2的主要框图如下。为了使用RKNPU,用户需要首先在计算机上运行RKNN-Toolkit2工具,将训练好的模型转换为RKNN格式模型,之后使用RKNN C API或Python API在开发板上进行部署。该工具提供的Python接口可以便捷地完成模型转换、量化、模型推理、性能和内存评估、量化精度分析、模型加密等功能。
RKNN Runtime负责加载RKNN模型,并调用NPU驱动实现在NPU上推理RKNN模型。推理RKNN模型时,包括原始数据输入预处理、NPU运行模型、输出后处理三项流程。根据不同模型输入格式和量化方式,RKNN Runtime提供通用API和零拷贝API两种处理流程:
- 通用API推理流程
提供一套简洁、无门槛的推理API,易于使用,流程如图所示。其中对数据的归一化、量化、数据排布格式转换、反量化等均在CPU上运行,模型本身的推理在NPU上运行。
- 零拷贝API推理
优化了通用API的数据处理流程,归一化、量化和模型推理都会在NPU上运行,NPU输出的数据排布格式和反量化过程在CPU或者NPU上运行。零拷贝API对于输入数据流程的处理效率会比通用API高。
运行示例程序
开始介绍测试方法之前,对开发环境搭建不了解可以看上集:瑞芯微RK3576原厂RKNN模型环境部署与功能验证技巧(上)
- RKNN Model Zoo介绍
本次将使用原厂RKNN Model Zoo工具,工具提供了示例代码,可助用户快速在Rockchip瑞芯微的开发板上运行各种常用模型,整个工程的目录结构如下:
- .
├── 3rdparty # 第三方库 ├── asset ├── build-android.sh ├── build-linux.sh # Linux构建脚本 ├── datasets # 数据集 ├── docs ├── examples # 示例代码 ├── FAQ_CN.md ├── FAQ.md ├── LICENSE ├── py_utils ├── README_CN.md ├── README.md ├── scaling_frequency.sh └── utils #
常用方法,如文件操作,画图等
其中,examples目录包括了一些常用模型的示例,例如MobileNet和 YOLO等。每个模型示例提供了Python 和 C/C++两个版本的示例代码。
以yolov5为例:
rknn_model_zoo ├── examples│ └── yolov5│ ├── cpp # C/C++ 版本的示例代码 │ ├── model # 模型、测试图片等文件 │ ├── python # 模型转换脚本和Python版本的示例代码 │ └── README.md └── ...
- RKNN Python Demo 使用方法
准备模型,执行脚本下载onnx测试模型:
# 进入 rknn_model_zoo/examples/yolov5/model 目录 cd Projects/rknn_model_zoo/examples/yolov5/model chmod a+x download_model.sh # 运行 download_model.sh 脚本,下载 yolov5 onnx 模型 ./download_model.sh
转换模型,执行以下命令将onnx模型转换为rknn模型:
# 进入 rknn_model_zoo/examples/yolov5/python 目录 cd Projects/rknn_model_zoo/examples/yolov5/python # 运行 convert.py 脚本,将原始的 ONNX 模型转成 RKNN 模型 python convert.py ../model/yolov5s_relu.onnx rk3576 i8 ../model/yolov5s_relu.rknn
连板调试,RKNN-Toolkit2的连板调试功能依赖板端的RKNN Server程序,该程序是一个运行在开发板上的后台代理服务,用于接收PC(测试使用Ubuntu虚拟机)通过USB传输过来的命令和数据,然后调用相应的运行时接口,并返回相应结果给PC。所以在做连板调试前需要确认开发板是否已启动RKNN Server程序。
adb shell ps | grep rknn_server
执行如下命令进行连板在线调试:
# 如果带上 --img_show 参数,则会显示结果图片 python yolov5.py --model_path ../model/yolov5s_relu.rknn --target rk3588 --img_show
- RKNN C Demo 使用方法
完整运行一个 RKNN C Demo,需要先将 C/C++ 源代码编译成可执行文件,然后将可执行文件、模型文件、测试图片等相关文件推送到板端上,最后在板端运行可执行文件。
在rknn_model_zoo工程下的build-linsx.sh脚本中指定前面下载的GCC交叉编译器路径:
GCC_COMPILER=/home/ido/rknn/Projects/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu
执行如下命令编译测试Demo,以yolov5为例:
# 运行 build-linux.sh 脚本 # 用法:./build-linux.sh -t -a -d [-b ] [-m] # -t : target (rk356x/rk3588) # 平台类型,rk3568/rk3566 都统一为rk356x # -a : arch (aarch64/armhf) # 板端系统架构 # -d : demo name # 对应 examples 目录下子文件夹的名称,如yolov5、mobilenet # -b : build_type(Debug/Release) # -m : enable address sanitizer, build_type need set to Debug chmod a+x build-linux.sh ./build-linux.sh -t rk3576 -a aarch64 -d yolov5
编译后的安装目录如下:
打包安装目录生成的文件部署到开发板系统:
tar -xf rknn_yolov5_demo.tar.gzcd rknn_yolov5_demo/chmod a+x rknn_yolov5_demo# 执行一下命令进行测试./rknn_yolov5_demo model/yolov5s_relu.rknn model/bus.jpg
命令执行完后会生成预测结果图片out.png,从板端拉取到本地查看,在本地电脑的终端中查看效果。
瑞芯微原厂RKNN模型推理测试方法攻略就完成了,关注触觉智能电子发烧友。
- 随机文章
- 热门文章
- 热评文章
- 研究人员利用人类细胞培养出人造鼠肺
- 用户称佩戴苹果Vision Pro后出现健康问题:头痛、黑眼圈、颈部酸痛
- 坐拥超5.2亿用户 中国电信促物联网应用走深走实
- 这事儿|九龄童玩游戏充值上万父亲自扇耳光:如何教育更妥当
- 美参议院投票结束针对国土安全部长的弹劾审判
- 央行邹澜:货币总量增长可能放缓 真正需要资金的高效企业会获得更多融资
- 白银被强烈看涨,黄金看跌情绪加剧
- 香港多所高校斩获日内瓦国际发明展大奖
- 和谐共生|“为子孙后代留下可持续发展的‘绿色银行’”
- 中央气象台4月22日06时发布暴雨黄色预警
- 美国休斯敦警察工会警告城市不安全:大量嫌犯正在街上徘徊
- 非上市银行的2023年:盈利分化,有的倍增有的“腰斩”
- 紧急召回!这一公司被约谈,事关电梯质量安全
- 1“赛事+”提升城市“流量” 陕西商洛拓经济发展新“赛道”
- 2“五一”临近 持基过节的投资者要注意这几点
- 3华发股份:成功入选“人民优选”品牌 五一黄金周热销30亿
- 4钟鼓楼老街区的古都新事
- 5非常危险!女子摔成粉碎性骨折!又是因为洞洞鞋,夏天多人中招……
- 6金税四期试点上线,财税体制改革拉开帷幕!或有资金借道信创ETF基金(562030)逢跌进场布局
- 7到2027年产业规模达到2000亿元 浙江发布历史经典产业高质量发展计划
- 8初步数据:我国一季度经常账户顺差392亿美元
- 9IDC:24Q1全球PC出货量恢复增长 达到疫情前水平
- 10“发现山西之美”TDC旅游发现者大会举办:共话文旅新生态 邀客体验新玩法
- 11(中国新貌)“国宝”大熊猫:栖居更美境 云游更广天
- 12瑞众保险副总裁俞德本出任公司临时负责人
- 13培养工程领域专业人才 非洲首所交通大学在尼日利亚投入使用
- 1大裁员下,特斯拉两名顶级高管离职
- 2奇瑞将与欧洲高端品牌签署技术平台授权协议
- 32024中国长三角青年企业家交流大会在杭州举办
- 4雷克萨斯GX中东版 全部在售 2023款 2022款 2020款 2019款 2018款成都远卓名车雷克萨斯GX中东版团购钜惠20万 欢迎上门试驾
- 5零跑C16将搭载中创新航磷酸铁锂电池
- 6Q1净利微增7%,宁德时代股东总数较2023年年末减少10728户
- 7哪吒,需要背水一战
- 8“新”中有“机”!创新服务承接新流量 撬动消费升级
- 9非创始版SU7何时交付 小米:工厂生产爬坡 全力提高产能
- 10央媒评卧铺挂帘:谁买的票谁做主
- 11江西南昌首部“多规合一”国土空间总体规划获批
- 12方程豹旗舰硬派越野!豹8正式亮相:仰望U8“青春版”登场
- 13583家族/造型霸气 方程豹豹8量产版发布



