如今的产品变得愈发智能,力图为使用者提供额外价值。 为了优化其使用,智能用品需要了解它们的环境。 人工智能可以解密来自各种传感器(如加速度计或麦克风)的数据,使这些数据对人类有意义。 例如,我们教会了一个神经网络如何区分场景(室内、室外、车内),以便能够根据用户所处环境优化设备行为。 经过STM32Cube.AI优化后,AI模型可以在超低功耗微控制器上运行,方便在各种产品中嵌入智能。 通过用新数据重新训练AI模型,此方法可以轻松应用于许多其他用例或环境。
方法
声学场景分类 (ASC) 的目标是将实际环境分为三个预定义类别(室内、室外、车内),这些类别的声学特征由单个数字麦克风进行捕获。 演示在一个小型板载SensorTile上运行,通过蓝牙低功耗与智能手机应用程序连接。
ASC配置以16 kHz(16位,1通道)的速率使用板载MEMS麦克风捕获音频。 每毫秒都会接收到一个DMA中断,其中包含最后的16个PCM音频样本。 这些样本将在滑动窗口中累积,该窗口包含1024个样本,具有50%的重叠。 每累积512个样本(即32毫秒),缓冲区就将注入ASC预处理,以进行特征提取。 ASC预处理将音频特征提取到LogMel (30×32) 声谱图中。
为了计算效率和内存管理优化,该步骤被划分为两个程序:
– 第一部分:使用FFT和筛选器组应用,从时域输入信号计算32列声谱图中的一列,将其转换为梅尔标度(30个梅尔带)。
– 第二部分:当所有32列都已完成计算(即经过1024毫秒后),对梅尔标度声谱图应用对数标度,创建ASC卷积神经网络的输入特征。
每1024毫秒,将 (30×32) LogMel声谱图输入到ASC卷积神经网络输入,然后可以将输出标签分类为室内、室外和车内。
传感器
数字MEMS麦克风(参考:MP34DT05-A)
数据
数据格式:22h53m的音频样本
结果
模型:意法半导体量化卷积神经网络
输入大小:30×32
复杂度:517 K MACC
存储器占用:
31 KB Flash存储器用于加权
18 KB RAM用于激活
80 MHz时STM32L476(低功耗)的性能
应用案例:1次分类/秒
预处理/后处理:3.7 MHz
NN处理:6 MHz
功耗 (1.8 V)
