从敲击到洞察:基于AutoML和Zephyr®的TinyML榴莲成熟度检测

Figure 1

   

摘要

本文提出了一种面向榴莲成熟度检测的高效边缘AI解决方案。该解决方案将信号处理(SP)特征提取流水线与AutoML训练的卷积神经网络(CNN)相结合,实现实时、高精度的分类识别。借助ADI公司的一次性(OFA)训练流水线,系统可自动搜索最高效的CNN,无需依赖人工反复试错式网络设计。这一优势在高度量化的TinyML部 署场景中尤为重要。该解决方案基于Zephyr OS 4.1构建,提供模块化、可移植的嵌入式软件基础,能够简化系统集成并加速开发落地。AutoML与Zephyr相结合,大幅降低机器学习和嵌入式工程开发的专业技术门槛,帮助客户更高效地采用边缘AI微控制器单元(MCU)。此外,由于神经网络天然具备模态无关特性,这套SP + TinyML流水线可轻松迁移至音频、视觉及各类传感器领域的其他边缘推理任务。

引言

通过敲击榴莲(一种热带水果)并听音判断成熟度,本质是分析敲击过程中产生的振动信号特征。该方法可间接评估榴莲内部果肉硬度、密度和含水率等物理状态;其核心原理是,不同成熟度的榴莲因内部组织结构差异,呈现出不同的振动响应特性。

通过分析振动响应的时频特征,系统可在不切开榴莲的情况下判定榴莲成熟度,从而避免果品损耗,并提供即时分析结果,因此适用于大规模分拣场景。该技术已日益广泛地应用于农业分选和生鲜零售领域,是农产品质量声学无损检测的典型应用。

传统方案提取频谱质心(即频域信号能量重心)作为分类的关键指标。该方案在受控条件下有效,但频谱质心极易受到外部噪声、敲击力度与位置以及个体差异(果实大小、果皮厚度和果刺形态等)影响,导致跨批次、跨环境场景下其稳健性常常较差。与之相比,AI方案直接以时频特征输入(短时傅里叶变换(STFT)或梅尔频谱等)训练轻量级卷积或序列模型,学习具备区分度、抗噪声的特征表达。结合数据增强/域自适应技术,此类模型的跨场景泛化能力显著提升。此外,借助模型量化与神经架构搜索(NAS),可将轻量化网络部署于边缘端,在实现低延迟与低功耗运行的同时,满足生产分拣与零售质检的高吞吐量需求。因此,与单一频谱质心阈值法相比,AI榴莲成熟度分类方案在实际部署中展现出更优异的稳健性和可扩展性。搭配不确定性估计和在线重新校准功能,该方案可进一步保障现场长期稳定性与可维护性。

系统架构概述

图1展示了整体系统架构,由三部分构成:音频编解码器 ((MAX9867)、AI微控制器单元(MAX78002)和TFT-LCD显示模块(ST7789V)。在典型使用场景中,先使用金属刀具敲击榴莲,产生振动或声学信号;刀具前端集成的麦克风/振动传感器采集回波信号;模拟信号经MAX9867转换为数字信号,并以I2S格式流式传输至MAX78002;MCU内部运行信号处理(SP)算法,完成特征提取和卷积神经网络(CNN)推理;最后,榴莲成熟度的分类结果显示在TFT-LCD 屏幕上。

Figure 1. Overall system diagram.
图1. 整体系统示意图

本方案为一套集硬件、AutoML工具和系统级软件支持于一体的完整解决方案。ai8x工具链负责处理模型搜索和量化,而CodeFusion Studio 提供基于 Zephyr的开发环境,以简化集成并加速部署落地。

数据集与信号流水线

如引言所述,榴莲成熟度可通过振动频率响应特性来推断。因此,本方案采用STFT算法提取此特征,信号流水线如图2所示。

Figure 2. Signal pipeline.
图2. 信号流水线

首先,以8kHz采样率采集一段一秒长的原始音频信号。随后进行归一化处理,消除信号幅值差异。接着,执行STFT变换以获得信号幅度频谱。最后,由于MAX78002的CNN加速器仅支持方形输入数据,STFT频谱需经过零填充和维度折叠处理,再输入TinyDurianNet进行推理。

此解决方案将STFT频谱转换为RGB图像来构建数据集。初始数据集包含105个样本(35个接近成熟、35个完全成熟、35个未成熟)。如图3所示,通过在窗口内随机滑动STFT频谱来模拟真实滑动窗口采样,对数据进行增强。本例中,数据集更新为1155个样本:20%的样本用作测试集,80%的样本用作训练集。

Figure 3. Data augmentation for durian tapping signals.
图3. 榴莲敲击信号的数据增强

从超级网络到TinyDurianNet—AutoML 如何自动迭代量化边缘模型

在边缘智能部署中,神经网络模型的设计至关重要。客户通常选择ai8x工具提供的示例模型,或自行设计网络架构,然后基于自有数据集进行训练和推理。然而,训练结果往往不如人意。原因在于MAX78002使用的量化模型依赖低比特权重(INT8/INT4/INT2),每个权重携带的信息非常有限。因此,相较于传统FP32模型,量化模型更难稳定收敛,对网络架构设计的要求也更高。因此,采用AutoML搜索最优模型架构是一种高效解决方案。

ai8x提供了名为一次性(Once-For-All,简称OFA)的AutoML训练流水线。OFA的目标是:训练一个模型(超级网络)一次,自动获得多个性能适配的小型子网络。其训练流程分为以下三步:

超级网络训练

超级网络是一种大型CNN网络,具有更深的层、更大的卷积核和更多的通道。它基于FP32,容易过拟合分类任务,但无法直接部署在MCU上。在此任务中,我们手动创建了一个序列化CNN超级网络,如图4所示。OFA超级网络训练核心为知识蒸馏(KD)和共享权重。请记住,OFA的目标是训练一个超级网络并自动获得多个子网络,而非通过反复迭代获得准确度最优的子网络,因为搜索最优解决方案非常耗时。它要求搜索过程中找到的任何子网络在准确度上不应有较大偏差。因此,训练得到的超级网络应尽可能稳健。KD是一种机器学习训练技术,它让学生模型(通常是小模型)的输出性能与教师模型(通常是大模型)的输出性能对齐。在原始OFA论文中,教师模型是目标超级网络,而学生模型是从超级网络采样得到的架构子网络。子网络采样通过超级网络的弹性设计实现:形成较小的子网络时,可以缩减卷积核尺寸、深度和宽度。在每次KD迭代中,学生模型复用超级网络的权重,其更新后的参数直接写回至超级网络。KD和共享权重相结合,共同确保各子网络的准确度和一致性。

Figure 4. Knowledge distillation training for supernet.
图4. 超级网络的知识蒸馏训练

网络架构搜索(NAS)

完成稳健超级网络训练后,我们通过NAS自动搜索小型子网络,我们称之为TinyDurianNet。OFA采用进化搜索策略来迭代子网络架构。相较于基于强化学习(RL)的NAS、DARTS2等传统NAS搜索方案,OFA使用的进化搜索GPU资源占用更少,时间成本也更低,因而搜索过程非常高效。NAS过程会输出多个准确度相似、架构不同的候选子网络。可以根据目标硬件的性能特征和功耗限制,选择一个合适的子网络作为最终的TinyDurianNet。例如,如果准确度优先,可以选择参数更多的子网络;而对于资源受限或低功耗设备,则参数更少的更小子网络可能更合适。图5展示了从NAS过程获得的、基于FP32的TinyDurianNet。

Figure 5. Supernet vs. TinyDurianNet.
图5. 超级网络与TinyDurianNet

量化感知训练(QAT)

在原始OFA论文中,NAS找到子模型(基于FP32)后,子模型无需额外训练即可部署。然而,MAX78002 CNN加速器仅支持INT1、INT2、INT4和INT8权重,因此需要QAT来使TinyDurianNet适配MAX78002。QAT的核心原理是,在训练过程中模拟低比特量化误差(伪量化),让模型学会在前向和反向传播中自适应量化噪声,从而确保在低精度硬件上部署时保持准确度不变。ai8x的QAT在反向传播中采用直通估计器(STE)规则。图6展示了量化感知训练流程。QAT完成后,即可获得基于INT8的TinyDurianNet,它能直接部署在MAX78002上。

Figure 6. Quantization-aware training workflow.
图6. 量化感知训练工作流程

结果:AutoML训练与性能表现

本次AutoML完整训练使用一块NVIDIA GeForce RTX 4090 GPU完成。表1 汇总了OFA训练配置及对应耗时。

表1. OFA训练配置及对应时间成本
任务 学习率 轮次/迭代次数 时间成本
KD-Stage0(完整模型训练) 0.001 200 1小时
KD-Stage1(弹性卷积核) 0.001 3000
KD-Stage2(弹性深度) 0.001 2500
KD-Stage3(弹性宽度) 0.001 9300
NAS   50 10分钟
QAT-subnet1 0.001 300 8分钟
QAT-subnet2 0.001 300
QAT-subnet3 0.001 300

通过OFA流程训练得到三个子网络,从中选择一个作为TinyDurianNet。 图7显示了TinyDurianNet在测试集上的推理准确度。


Figure 7. TinyDurianNet performance on the test set.
图7. TinyDurianNet在测试集上的性能表现

结果:实际系统测试

图8展示了测试平台。我们预先录制了一些榴莲敲击振动信号,转换为音频波形文件后在PC上播放。音频信号通过音频线,以随机时序输入到MAX78002EVKIT

Figure 8. Durian ripeness detection test platform.
图8. 榴莲成熟度检测测试平台

测试结果如图9所示。


Figure 9. Real system tests.
图9. 实际系统测试

测试结果表明,该系统能够实现榴莲成熟度准确分类,展现出优异的稳健性。表2汇总了系统的推理速度和功耗指标。

表2. 系统性能指标
指标 性能
CNN推理时长 约3.06ms
功耗 约180mW

Zephyr OS如何优化AutoML落地部署流 水线

借助ai8x工具链,训练好的模型可以导出为运行于MAX78002的裸机工程,同时附带与CNN加速器交互的参考示例代码,帮助客户快速搭建推理流水线。然而,神经网络推理只是完整边缘AI系统的一部分。如图1所示,音频流采用I2S+DMA(直接存储访问)模式传输,分类结果还需在支持GUI的LCD上显示。因此,实际应用系统还需开发外设控制、数据流控制和LCD人机交互界面(此解决方案采用轻量级通用嵌入式UI生态系统(LVGL))。随着子系统数量与并发需求不断增加,裸机架构的复杂度与维护成本大幅上升,开发者需要手动移植和修改大量驱动程序与中间件。为此,本解决方案运行于Zephyr OS 4.1上,该操作系统提供了基于设备树的硬件抽象、统一的驱动模型、多线程与同步原语、DMA支持的外设子系统,以及模块化编译和包架构。

借助这些功能,开发者可在MAX78002上快速集成I2S采集、STFT特征提取、CNN推理和LCD交互功能,大幅减少系统集成工作量,加速从算法到可部署边缘AI产品的转化落地。

结论

本文重点介绍了MAX78002如何与AutoML和Zephyr OS相结合,实现完整高效的边缘AI工作流:从原始信号采集,到部署完成的TinyML推理。该解决方案兼具实时性能和低功耗特性,同时大幅降低模型设计工作量,为客户将机器学习集成至传感器类应用中提供了一条切实可行的路径。

同样的架构可快速适配其他基于“SP + 机器学习流水线”的任务,充分体现ADI边缘AI平台在加速开发、实现稳健量产级边缘智能方面的通用性。

参考文献

1Han Cai, Chuang Gan, Tianzhe Wang, Zhekai Zhang, Song Han.“Once-for-All: Train One Network and Specialize it for Efficient Deployment”。2020年4月。

2Hanxiao Liu, Karen Simonyan, Yiming Yang.“DARTS: Differentiable Architecture Search.”。2019年4月。

关于作者

Zhiheng Li
Zhiheng Li是ADI上海公司CAC团队的产品应用工程师。他主要从事高级音频和视频信号链应用开发,包括DSP、ADI A2B™、GMSL™和AI系统。Zhiheng拥有哈尔滨工程大学电子信息工程学士学位和香港中文大学电子工程硕士学位。他于2025年加入ADI公司。
Tong Zhang
Tong Zhang是ADI南京公司的高级软件系统工程师。他主要从事嵌入式软件和系统级设计工作,负责支持ADI A2B™、DSP、FPGA和边缘AI应用。他毕业于南京理工大学,获得控制理论与控制工程硕士学位,之后于2020年加入ADI公司。
Chenhui Xu
Chenhui Xu是ADI公司APGC系统解决方案部门的高级软件工程经理。他负责管理一支软件工程团队,专注于为SAP和中国市场开发软件解决方案,并提供现场技术支持。
Nandin Xu
Nandin Xu是ADI上海公司的一名应用工程师。他负责中国市场RDC、隔离调节器和精密DAC产品的技术支持工作。他毕业于武汉华中科技大学,并获得控制科学与控制技术硕士学位,于2013年加入ADI公司。业余时间他酷爱篮球和足球。
添加至 myAnalog

将文章添加到 myAnalog 的资源部分、现有项目或新项目。

创建新项目

关联至此文章

产品分类