当前位置:首页 > 厂商动态 > 米尔电子
[导读]在人工智能与边缘计算深度融合的今天,将AI模型高效部署于终端设备已成为产业智能化的关键。本文将分享基于米尔MYD-LR3576边缘计算盒子部署菜品识别安卓Demo的实战经验。该设备凭借其内置的强劲瑞芯微RK3576芯片,为视觉识别模型提供了充沛的本地AI算力,成功将“智慧识菜”的能力浓缩于方寸之间,充分证明了其作为边缘AI应用坚实载体的卓越性能与可靠性。

人工智能边缘计算深度融合的今天,将AI模型高效部署于终端设备已成为产业智能化的关键。本文将分享基于米尔MYD-LR3576边缘计算盒子部署菜品识别安卓Demo的实战经验。该设备凭借其内置的强劲瑞芯微RK3576芯片,为视觉识别模型提供了充沛的本地AI算力,成功将“智慧识菜”的能力浓缩于方寸之间,充分证明了其作为边缘AI应用坚实载体的卓越性能与可靠性。

实机演示效果

本地部署,实时推理。在这段实机视频中,MYD-LR3576正同步运行YOLOv11s(目标检测)与PPLCNetV2(特征提取)模型。其性能核心在于:两个模型的NPU推理时间均被压缩至惊人的20ms/帧,为高性能边缘AI应用提供了坚实底座。

本文以米尔电子的MYD-LR3576边缘计算盒子为例,讲解如何在Android平台部署yolo11s、PPLCNETV2模型实现实时菜品识别。为开发者与研究者提供一份兼具实践参考与技术洞察的模型端到端的部署指南。

MYD-LR3576边缘计算盒(搭载米尔基于RK3576核心板)

1. 基本介

1.1 边缘计算盒

米尔MYD-LR3576-B边缘计算盒是一款基于瑞芯微RK3576处理器设计的高性能嵌入式AI设备。 该处理器集成八核CPU架构(4×Cortex-A72 + 4×Cortex-A53)与算力达6 TOPS的NPU(2核心),具备强大的边缘端AI推理能力。

产品标配8GB LPDDR4X内存与64GB eMMC存储,支持双千兆网口、WiFi 6、多路USB 3.0及4K显示输出,提供完整的Debian/Linux软件开发环境。

凭借其高性能NPU与丰富接口,该设备可高效支撑计算机视觉、智能分析等边缘AI场景,为菜品识别、工业质检等应用提供稳定可靠的硬件平台。

1.2 RKNN-Toolkit2 SDK

要将YOLOv11s、PPLCNetV2等主流AI模型高效地部署在MYD-LR3576-B这样的边缘设备上,并充分发挥其NPU的算力,离不开一个关键的软件工具链——RKNN-Toolkit2。这是由瑞芯微官方提供的核心SDK,专为其RK系列芯片的NPU(神经网络处理单元)设计。

1.2.1 RKNN-Toolkit2 是什么?

RKNN-Toolkit2是一个功能完整的模型转换、推理和性能评估工具包。它的核心作用在于充当一个“翻译官”和“优化器”,将开发者们在主流深度学习框架(如PyTorch, TensorFlow, ONNX等)上训练好的模型,转换成可以在瑞芯微NPU上高效运行的专用格式——RKNN模型。

1.2.2 核心功能与工作流程

该工具链为AI模型在边缘端的部署提供了全流程支持:

1. 模型转换

· 支持多框架输入: 可直接加载PyTorch(.pt)、TensorFlow(.pb)、ONNX(.onnx)等格式的模型。

· 量化优化: 支持将FP32模型量化为INT8或INT16精度,在保证精度的同时,大幅减小模型体积、提升推理速度、降低功耗。这正是实现20ms超快推理的关键步骤之一。

· 模型优化: 工具会自动对模型图结构进行编译和优化,使其适配RKNPU的硬件架构,提取最大性能。

2. 仿真推理与精度分析

· 在模型部署到物理设备(如MYD-LR3576-B)之前,可以在PC上进行仿真推理,验证模型转换后的正确性和精度,极大方便了前期的调试工作。

3. 性能评估

· 提供模型性能分析工具,可以评估模型在NPU上的理论推理时间和内存占用,帮助开发者进行模型选型和优化。

4. 跨平台部署支持

· 除了Python环境下的开发工具,RKNN-Toolkit2还提供了C/C++版本的运行时库(RKNN API)。这使得开发者可以轻松地将优化后的RKNN模型集成到最终的生产环境中,无论是Linux、Android还是Debian系统(正如MYD-LR3576-B所搭载的),都能实现高效、低延迟的推理。

1.2.3 与MYD-LR3576的完美协同

在本文的菜品识别Demo中,正是利用了RKNN-Toolkit2的强大能力:

· 步骤一: 在PC端将预训练好的YOLOv11s(目标检测)和PPLCNetV2(图像分类)模型通过该工具链转换为.rknn格式文件。

· 步骤二: 将转换好的RKNN模型文件与调用RKNN Runtime的应用程序一同部署到MYD-LR3576边缘计算盒上。

· 步骤三: 应用程序通过RKNN Runtime API加载模型,调用NPU执行计算,最终实现了双模型协同、单次推理均仅20ms的卓越性能。

总结而言,RKNN-Toolkit2是释放MYD-LR3576-B内部6 TOPS NPU潜力的钥匙。 它大大降低了开发者将AI模型部署到瑞芯微边缘计算平台的技术门槛和开发周期,使得构建像实时菜品识别这样的高性能AI应用变得简单而高效。

1.3 RKNN Model Zoo

RKNN Model Zoo 是一个专为瑞芯微NPU打造的 “模型商店” 或 “开箱即用模型库” 。该项目收集了大量经典的、高性能的深度学习模型,并已经过预转换和调优,直接提供了现成的 RKNN格式模型文件,同时附带了完整的示例代码。

RKNN Model Zoo优点:

· 开箱即用的体验: 开发者无需从头开始进行模型训练和复杂的转换调试,可以直接下载所需的RKNN模型文件,利用提供的示例代码在MYD-LR3576等设备上快速运行起来,立即看到效果,极大地缩短了概念验证(PoC)的周期。

· 官方性能保证: 仓库中的模型都提供了详细的性能基准数据,包括在特定RK芯片上的推理速度和精度。这为开发者选型提供了权威参考,确保模型在目标设备上能够达到预期的性能。

· 最佳实践范例: 每个模型都附带完整的C++和Python示例代码,清晰地展示了如何加载RKNN模型、进行数据预处理、执行推理以及解析输出结果。这对于学习如何在自己的应用程序中集成和调用RKNN模型而言,是极具价值的学习资料。

2. 搭建环境

2.1 刷入Android系统

米尔的MYD-LR3576边缘盒子默认是Linux系统,在我们的场景中,需要先刷机为Android系统。

2.1.1 获取资料

登录米尔开发者中心,在开发者平台注册绑定产品信息,在包装盒侧面会有一个产品型号系列号,可通过微信扫码绑定。 绑定成功后,依次点击我的产品->软件资料->Android14操作系统:

然后复制提取码后点击“阿里云盘”字样即可打开米尔提供的所有相关资料文件。如:

是我们需要的文件,分别是软件开发指南、安卓系统镜像文件以及工具,下载上述文件。

2.1.2 镜像烧录

在软件开发指南中的第四章有详细的镜像编译步骤,开发者可以根据情况自行编译镜像,方便进行自定义。本文直接使用了资料中已经编译好的Android镜像进行烧录。

1. 安装驱动

驱动安装工具压缩包位于 03-Tools/DriverAssitant 目录下,解压运行 DriverAssitant工具,出现以下界面,首先点击卸载驱动,然后点击驱动安装:

2. 烧录镜像到EMMC

RKDevTool是瑞芯微提供的适用于 RK 系列芯片的 windows 下的便捷开发工具,为开发人员提供了固件烧录/镜像烧录|设备擦除|设备切换/固件解包等功能。

1. 首先登陆边缘盒子,使用Type-C线将边缘盒子的DEBUG(电源接口旁写着Type-C字样)口连接到windows电脑;然后打开设备管理器,配置COM口参数:

· 波特率:115200

· 数据位:8

· 停止位:1

· 校验位:无

· 流控:无

· 打开串口终端软件填入上述参数,然后给盒子上电,即可进入系统;

2. 进入系统后在终端输入reboot loader即可进入loader模式;

3. 打开工具文件夹下的RKDevTool(没有解压请解压),双击RKDevTool.exe,会看到提示:发现一个LOADER设备;

4. 此时点击升级固件->固件,选择刚刚下载的Android镜像文件(刚下载的为zip文件,解压出里面的镜像文件),然后点击升级按钮并等待完成:

5. 此时已经完成Android系统的烧录。

2.2 准备RKNN-Toolkit2环境

注意:这里的操作是在另外一台电脑上操作,并且已经配置了python环境或Conda环境。为模型转换、量化以及测试提供基础环境。

1. 可以直接通过网络安装:

2. 通过本地 wheel 包安装

首先克隆RKNN-Toolkit2项目文件:

或者手动下载下面涉及到的文件。

然后进入项目根目录后:

3. 模型转换

rknn_model_zoo中包含了很多官方已经适配的模型,包括模型训练以及模型转换脚本。

3.1 yolo11模型转换

rknn_model_zoo中已经包含了yolo全系列模型,因此yolo11模型的转换非常简单,我们直接将训练好的模型(通常是.pt格式)先转为onnx格式。该转换过程通常建议在与训练模型相同的环境中进行。 转换命令:

执行完毕后,会生成 ONNX 模型。假如原始模型为 yolo11s.pt,则生成 yolo11s.onnx 模型。 然后进入rknn_model_zoo项目根目录,再依次进入examples/yolo11/python路径下,有一个python转换脚本:convert.py,可通过python convert.py 查看脚本帮助文档:

根据文档可知,脚本的第一个参数是要被转换的onnx模型路径,第二个参数是平台,即SOC型号,第三个参数是量化相关,我们的平台是rk3576,如果量化则选i8,不量化则选fp。我们这里选择量化:

⚠️ 选择量化需要准备校准数据,读取的数据路径在脚本中已经固定为../../../datasets/COCO/coco_subset_20.txt,这里需要修改为我们自己的数据,数量建议至少20张。

python convert.py onnx模型路径/yolo11s.onnx rk3576 i8

转换成功后可看到:

脚本默认将转换后的模型存储在../model中。

3.2 PPLCNETV2模型转换

PPLCNETV2网络是Paddle提供的,因此需要使用paddle2onnx工具,先将paddle格式转为onnx格式:

由于RKNN官方没有PPLCNET模型的Demo,因此我们需要自己根据模型转换的API文档编写rknn模型的转换脚本,可复制一份Yolo11的转换脚本进行修改,重点修改模型的输入输出形状、归一化参数等。然后参考yolo11的转换命令进行转换。

4. 菜品识别案例

本章将详细介绍基于米尔MYD-LR3576边缘计算盒开发的菜品识别安卓Demo应用。该案例完整展示了从特征库构建到实时识别的全流程,充分体现了设备在端侧AI应用中的实用性与高性能。

4.1 特征注册

特征注册是构建可扩展菜品识别系统的关键第一步,其目的是为系统创建一个本地的、可定制的菜品特征库。

· 操作流程: 用户在Demo界面点击“特征注册”按钮后选择一个事先准备好的文件夹。该文件夹内部包含多个子文件夹,每个子文件夹代表一道唯一的菜品,并以菜品名称命名(例如:“红烧肉”、“清蒸鲈鱼”)。子文件夹内则包含该菜品从不同角度、在不同光照条件下拍摄的若干张图片。

· 技术实现: Demo应用会遍历整个文件夹结构。对于每一张图片,系统会调用内置的PPLCNetV2特征提取模型进行特征提取。该模型会将输入的菜品图片转换成一个高维、紧凑的特征向量(也就是老生常谈的特征嵌入)。最后,系统将每道菜所有图片的特征向量与其名称关联起来,使用向量数据库存储于设备本地,形成一个结构化且高效查询的特征数据库。

该设计的优势在于:用户无需重新训练庞大的深度学习模型,仅需提供数十张示例图片,即可快速、灵活地扩充或修改系统所能识别的菜品库,极大地提升了应用的实用性和适应性。

4.2 菜品识别

Demo提供了三种识别模式,以适应不同场景下的需求:

4.2.1 拍照识别

用户可以直接调用设备摄像头,现场对菜品进行拍照。拍完后,系统立即对照片进行识别,并绘制识别结果。

4.2.2 本地图片识别

用户可以从手机相册中选择已有的菜品图片进行识别。

4.2.3 实时视频流识别

Demo启动设备摄像头并开启实时预览,视频流中的每一帧都会被送入识别流水线。系统能够连续、不间断地进行识别,并将结果实时覆盖显示在视频画面上,提供流畅的“所见即所识”体验。

4.3 识别流水线与性能表现

无论采用哪种识别模式,其核心的识别流水线是相同的,并且都得益于MYD-LR3576强大的NPU算力:

1. 目标检测: 当一张图片或视频帧输入后,首先由 YOLOv11s模型进行推理。它的任务是精准定位图片中菜品所在的位置,并输出其边界框,为后续处理划定了关键区域。

2. 特征提取: 系统将YOLOv11s检测出的菜品区域裁剪出来,并送入 PPLCNetV2特征提取模型中,生成该区域的特征向量。

3. 特征比对: 最后,系统将这个新生成的特征向量与特征注册阶段建立的数据库中的所有已知特征向量进行相似度计算(通常使用余弦相似度)。找出相似度最高的已知菜品,并将其名称作为识别结果输出。

性能亮点: 在MYD-LR3576上,经过RKNN-Toolkit2优化后,YOLOv11s和PPLCNetV2这两个模型在NPU上的单次推理时间均稳定在20ms左右,这确保了即使在最耗费资源的实时视频流模式下,系统也能保持较流畅的识别帧率。

4.4 准确率评估功能

为了量化识别系统的可靠性,Demo还内置了准确率评估功能。用户可以选择一个包含已标注图片的测试集,系统会自动运行批量识别,并将识别结果与真实标签进行比对,最终生成一份包含准确率等关键指标的评估报告,为模型优化和特征库完善提供了数据依据。

4.5 案例总结

该菜品识别Demo仅实现了基础功能,且没有做针对性优化,如所有操作都是同步进行,即摄像头数据获取或读取本地图像->格式转换->色彩空间转换->预处理->模型推理->结果后处理这一整套流程都是同步进行,且模型推理时仅使用了一个NPU核心(共两个),如果使用NPU进行图像处理并配合图像队列异步处理以及充分利用NPU核心,其性能可以达到15-20帧。即便Demo没有针对优化,RK3576的性能同样足够支撑端侧复杂AI流水线的能力。从高效的特征注册到实时的多模型推理,其强劲的NPU算力是实现所有功能流畅运行的基石,为智慧餐饮等领域提供了可靠的硬件解决方案。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭