首页
›
嵌入式边缘AI与TinyML
›
013-TinyML语音唤醒与关键词识别
›
《STM32语音关键词识别:I2S麦克风与CMSIS-DSP特征提取》
VIP20
本课程属于:013-TinyML语音唤醒与关键词识别
嵌入式边缘AI与TinyML · 共 20 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
📘
11. STM32语音关键词识别:I2S麦克风与CMSIS-DSP特征提取
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
课程导入
学习目标 · 课程结构 · STM32语音识别应用场景与整体流程
课程导入
学习目标
02
语音识别基础
语音信号特性 · 采样率 · 量化
语音识别基础
语音信号特性
03
硬件选型与接口
常见I2S数字麦克风(如INMP44… · ICS-43434)对比 · 引脚定义
硬件选型
接口
04
STM32的I2S外设
I2S协议原理 · STM32的I2S模块配置 · 主/从模式
STM32
I2S
05
CubeMX配置I2S
使用STM32CubeMX初始化I2… · DMA配置 · 中断优先级设置
CubeMX
I2S
06
麦克风数据采集
I2S读取麦克风数据 · 数据格式(24位/32位) · 左右声道处理
麦克风数据采集
I2S
07
DMA与双缓冲
DMA传输机制 · 双缓冲(Ping-Pong)设计 · 避免数据丢失与实时性优化
DMA
双缓冲
08
音频数据预处理
直流偏置去除 · 音量归一化 · 静音检测(VAD)基础
音频数据预处理
直流偏置去除
09
CMSIS-DSP库介绍
CMSIS-DSP功能模块 · 数学函数 · FFT
CMSIS-DSP
库介绍
10
特征提取概述
语音特征类型(时域 · 频域) · MFCC
特征提取概述
语音特征类型
11
预加重与分帧
预加重滤波器设计 · 分帧原理 · 帧长与帧移选择
预加重
分帧
12
快速傅里叶变换(FFT)
FFT原理 · CMSIS-DSP的FFT函数 · 频谱计算
FFT
快速傅里叶变换
13
梅尔滤波器组
梅尔刻度 · 三角滤波器组设计 · 滤波器组在CMSIS-DSP中的实现
梅尔滤波器组
梅尔刻度
14
对数与离散余弦变换(DCT)
对数压缩 · DCT原理 · MFCC系数计算流程
DCT
对数
15
MFCC特征提取实战
使用CMSIS-DSP实现完整MFC… · 输出特征向量
MFCC
特征提取实战
16
关键词识别模型选择
模板匹配 · DTW · 简单神经网络
关键词识别模型选…
模板匹配
17
模板匹配与DTW
动态时间规整原理 · 距离计算 · 在STM32上的实现与优化
DTW
模板匹配
18
轻量级神经网络
TinyML概念 · 全连接网络 · 在STM32上部署(如CMSIS-N…
轻量级神经网络
TinyML
19
数据集准备与标注
录制关键词音频 · 数据增强(噪声 · 音量变化)
数据集准备
标注
20
模型训练与转换
PC端训练(Python) · 模型量化 · 转换为C数组或TFLite
模型训练
转换
21
STM32推理实现
加载模型 · 前向推理 · CMSIS-NN加速
STM32
推理实现
22
系统集成
采集-特征提取-识别-输出控制 · 状态机设计 · 实时性优化
系统集成
采集
23
低功耗优化
睡眠模式 · DMA唤醒 · 降低采样率
低功耗优化
睡眠模式
24
调试与验证
使用串口打印特征值 · 逻辑分析仪查看I2S时序 · 调试常见问题
调试
验证
25
常见问题与解决
I2S数据错位 · 噪声干扰 · FFT频谱泄漏
常见问题
解决
26
性能评估
识别准确率 · 实时性 · 内存占用
性能评估
识别准确率
27
案例实战
基于STM32F4的“小智”关键词识… · 完整代码讲解
案例实战
STM32F4
28
案例实战
基于STM32H7的“OK Goog… · 多关键词扩展
案例实战
STM32H7
29
综合提升
多关键词识别 · 说话人识别 · 语音命令控制LED/电机等外设
综合提升
多关键词识别
30
课程总结与展望
项目复盘 · 常见误区 · 未来扩展(离线语音助手
课程总结
项目复盘
所属VIP或分类
同VIP:Arduino语音识别实战:板载麦克风到关键词输出
同VIP:ESP32语音唤醒项目:I2S采集、模型推理与联网告警
同VIP:TFLite-Micro语音唤醒:Micro-Speech示例深度改造