基于MFCC和GMM的十说话人声纹识别系统
项目介绍
本项目实现了一个针对十位特定说话人的声纹识别系统。系统通过提取语音的梅尔频率倒谱系数(MFCC)特征,并利用高斯混合模型(GMM)为每位说话人建立独特的声纹模型。在识别阶段,系统能够将未知语音片段与已注册的说话人进行匹配,达到90%以上的识别准确率。核心匹配算法支持动态时间规整(DTW)或矢量量化(VQ)。
功能特性
- 注册功能:录入10位说话人的语音样本(每人3-5段WAV格式语音,采样率16kHz),建立对应的声纹模型。
- 识别功能:输入一段2–5秒的未知语音,系统返回最匹配的说话人ID及置信度分数。
- 高精度识别:基于GMM的声纹建模,确保识别准确率超过90%。
- 评估报告:提供识别准确率、混淆矩阵等详细性能评估指标。
- 模型持久化:训练好的GMM模型以
.mat格式保存,便于后续加载使用。
使用方法
训练阶段
- 准备训练语音:将10位说话人的语音样本(WAV格式,16kHz采样率)按指定结构放置。
- 配置参数:在配置文件中设置说话人ID列表及GMM模型参数(如混合度)。
- 执行训练:运行主程序,系统将提取MFCC特征并为每位说话人训练GMM模型,模型文件自动保存。
识别阶段
- 准备待识别语音:提供一段未知说话人的WAV格式语音片段(时长2–5秒)。
- 加载模型:系统自动加载已训练的GMM模型。
- 执行识别:系统输出最匹配的说话人ID及其置信度,并可选生成性能评估报告。
系统要求
- 操作系统:Windows / Linux / macOS
- 编程语言:MATLAB(推荐R2018a或更高版本)
- 依赖工具包:Signal Processing Toolbox, Statistics and Machine Learning Toolbox
- 语音格式:WAV,单声道,采样率16kHz
文件说明
主程序是系统的核心控制单元,它统筹调度整个声纹识别流程。具体实现了以下功能:解析输入参数与配置文件;控制训练流程,包括引导语音数据读取、MFCC特征提取以及GMM模型的训练与保存;管理识别流程,完成待测语音的特征匹配计算与结果输出;并可选择性地执行系统性能评估,生成准确性报告与混淆矩阵。