基于矢量量化(VQ)的语音识别系统
项目介绍
本项目实现了一个基于矢量量化技术的孤立词语音识别系统。系统通过提取语音信号的梅尔频率倒谱系数特征,并利用LBG算法训练生成特定词汇的矢量量化码本作为参考模板。在识别阶段,系统计算待识别语音特征与各参考码本之间的失真度,采用动态时间规整算法进行模式匹配,最终输出识别结果及置信度。该系统具有算法简洁、存储需求低、识别效率高的特点。
功能特性
- 完整的语音识别流程:包含语音预处理、特征提取、码本训练和模式匹配四大核心模块
- 灵活的参数配置:支持帧长、帧移、MFCC维度、码本大小等关键参数自定义调整
- 多格式支持:训练阶段支持多组WAV格式语音样本,识别阶段支持单条WAV格式语音输入
- 可视化分析:可选生成语音信号的时域波形、频谱图及MFCC特征图谱
- 量化评估:输出识别置信度(基于匹配失真度数值)作为识别可靠性参考
使用方法
训练阶段
- 准备训练语音数据:为每个待识别词汇准备一组发音录音(WAV格式)
- 配置系统参数:设置适当的帧长、帧移、MFCC维度和码本大小
- 执行训练程序:系统将自动提取特征并生成每个词汇对应的VQ码本文件(.mat格式)
识别阶段
- 输入待识别语音:提供单条WAV格式语音文件(建议16kHz采样率、单声道)
- 运行识别程序:系统将计算输入语音与所有训练码本的匹配度
- 获取识别结果:返回识别出的词汇标签字符串及相应的置信度数值
系统要求
- 操作系统:Windows/Linux/macOS
- 编程环境:MATLAB R2018b或更高版本
- 依赖工具包:Signal Processing Toolbox
- 音频格式:支持标准WAV音频文件
文件说明
主程序文件集成了系统的完整工作流程,负责协调各功能模块的协同运行。其主要能力包括:解析用户输入参数与运行模式选择,根据训练或识别需求分别调用相应的处理链路,管理语音数据的读取与预处理操作,控制MFCC特征参数的提取过程,组织LBG算法进行码本训练与存储,以及执行基于动态时间规整的模式匹配识别决策,并可选择性地激活可视化模块展示中间处理结果。