第21卷第6期湖 北 工 业 大 学 学 报2006年12月
Vol.21No.6 Journal of Hubei Univer sity of Technology Dec.2006
[收稿日期]2006-10-13
[作者简介]宋 敏(1979-),女,湖北武汉人,湖北工业大学硕士研究生,研究方向:计算机语音技术应用.
[文章编号]1003-4684(2006)1220027203
MATLAB 环境下基于矢量量化的说话人识别系统
宋 敏1,刘幺和1,谭保华2
(1湖北工业大学机械工程学院,湖北武汉430068;2湖北工业大学理学院,湖北武汉430068)[摘 要]在MATLAB 环境下实现基于矢量量化的说话人识别系统.在实时录音的情况下,利用该识别系统,对不同人的1~7s 的语音进行辨识,准确率可达到98%.识别时间根据使用人数的不同,测试语音长度的不同辨识时间从1~20s,实现与文本无关的自动说话人确认的实时识别.[关键词]说话人识别系统;MATLAB;矢量量化[中图分类号]TN912.3
[文献标识码]:A
说话人识别是指通过说话人的语音来自动识别说话人的身份.目前,与文本无关的说话人识别的常用方法有基于非参数模型的矢量量化VQ (Vector Quantization)方法、基于参数模型的隐马尔可夫方法(H idden Markov Model)和基于人工神经网络[1].一般来讲,在存储数据量小的情况下,基于VQ 建立说话人识别的模型有良好的效果.
1 语音信号特征参数的提取
语音信号特征提取是语音识别和说话人识别的一个重要环节.特征提取的目的是对原始语音进行处理后计算语音对应的特征参数.常用的语音特征参数是基于Mel 频率倒谱系数(Mel 2Fr equency Cepstrum Coefficients,MFCC).因为人耳所听到的声音的高低与声音的频率并不成线性正比关系,所以基于听觉模型得到的MFCC 比基于声道模型得到的LPC(Linear Predictive Coding)倒谱系数更符合人耳的听觉特性[2].MFCC 将频谱转化为基于Mel 频标的非线性频谱,然后转换到倒谱域上.由于充分模拟了人的听觉特性,而且没有任何前提假设,MFCC 参数具有识别性能和抗噪能力,因此本系统采用MFCC 参数为语音特征参数.
MFCC 参数的计算过程[3]如下:
1)对输入语音帧预加重和加H amming 窗后作快速傅利叶变换(Fast Fourier Tr ansformation,FFT)得到其频谱,将时域信号转化为频域信号;
2)求出频谱平方,即能量谱,并用M 个Mel 带
通滤波器进行滤波,由于每个频带中分量的作用在人耳中是叠加的,因此将每个滤波器频带内的能量进行叠加,这是第k 个滤波器输入功率谱x c (k );
3)将每个滤波器的输出取对数,得到相应频带的对数功率谱,并进行反离散余弦变换,得到L 个MFCC 系数,由于在实际的语音识别的应用中,并不是取全部维数的MFCC 系数,有实验表明最前若干维以及最后若干维的MFCC 系数对语音的区分性能较大,通常取前12维的MFCC 系数即可
[2]
.
MFCC 系数
C n =
E M
k =1
log x c (k)cos [P (k-
0.5)n/M]
(n =1,2,,,L).
4)这种直接得到的MFCC 特征称作为静态特征,由于MFCC 主要反映语音的静态特征,要得到语音信号的动态特征则是将这种静态特征做一阶和二阶差分.
2 矢量量化
矢量量化是20世纪70年代后期发展起来的一种数据压缩技术,目前已在语音、图像压缩等领域得到广泛应用.矢量量化的理论基础是信息论的率失真理论,是仙农(C.E.SH ANNON )信息论在信源编码理论(source coding theory)方面的发展.其基本思想是将若干个标量数据组构成一个矢量,然后在矢量空间给以整体量化,从而压缩了数据而不损