基于MFCC与HMM的语音控制智能循迹小车系统
项目介绍
本项目设计并实现了一套集成语音识别与自动循迹功能的智能小车控制系统。系统采用MFCC(梅尔频率倒谱系数)进行语音特征提取,结合隐马尔可夫模型(HMM)实现高精度语音指令识别,通过串口通信实时控制小车动作。系统具备环境噪声抑制、多模式控制切换和实时状态监控等功能,实现了"前进""后退""左转""右转""停止"等语音指令的可靠识别与控制。
功能特性
- 语音指令识别:支持5种基础控制命令的语音识别,采用谱减法进行噪声抑制
- 实时控制响应:识别成功后立即通过串口向Arduino小车发送控制指令
- 双模式运行:语音控制模式与红外传感器自动循迹模式可灵活切换
- 状态实时监控:MATLAB GUI界面动态显示识别结果、小车运动状态及传感器数据
- 性能统计分析:自动记录识别结果并生成识别准确率报表
使用方法
- 硬件连接:确保麦克风正常工作,串口正确连接Arduino控制板
- 系统启动:运行主程序文件,初始化语音识别模型和串口通信
- 模式选择:通过GUI界面选择语音控制模式或自动循迹模式
- 语音控制:在安静环境下清晰说出控制指令(距麦克风30-50cm)
- 状态监控:实时观察GUI界面显示的小车运动状态和传感器数据
系统要求
- 软件环境:MATLAB R2018a或更高版本(需安装Signal Processing Toolbox)
- 硬件配置:计算机配备可用麦克风,支持16kHz/16bit音频采集
- 串口支持:系统需具备可用串口(用于Arduino通信)
- 内存要求:至少4GB可用内存(语音模型加载需要)
文件说明
主程序文件集成了系统的核心功能模块:负责初始化语音识别模型参数与GUI交互界面,实现音频信号的实时采集与预处理(包括端点检测和谱减法降噪),完成MFCC特征向量序列的提取与HMM模式匹配计算,管理串口通信协议以实现控制指令的可靠传输,同时协调处理红外传感器数据采集与循迹逻辑判断,并更新图形界面中的状态显示与识别结果统计报表。