
实验二语音信号的特征提取.doc
5页实验二语音信号的特征提取实验目的1、熟练运用MATLAB^件进行语音信号实验2、熟悉短时分析原理、MFCC勺原理3、学习运用MATLAB编程进行MFCC勺提取4、学会利用短时分析原理提取MFCC寺征序列实验仪器设备及软件MATLAB三、实验原理1、MFCC语音识别和说话人识别中,常用的语音特征是基于Mel频率的倒谱系数(即MFCC)MFCC参数是将人耳的听觉感知特性和语音的产生机制相结合Mel频率可以用如下公式表示:fMei=2595log(1f/700)在实际应用中,MFCC倒谱系数计算过程如下;① 将信号进行分帧,预加重和加汉明窗处理,然后进行短时傅里叶变换并得到其频谱② 求出频谱平方,即能量谱,并用M个Mel带通滤波器进行滤波;由于每一个频带中分量的作用在人耳中是叠加的因此将每个滤波器频带内的能量进行叠加,这时第k个滤波器输出功率谱x'(k)③ 将每个滤波器的输出取对数,得到相应频带的对数功率谱;并进行反离散余弦变换,得到L个MFCC系数,一般L取12~16个左右MFCC系数为MCn八logx(k)cos[「:(k-0.5)n/M],n=1,2,...,LkJ④ 将这种直接得到的MFCC特征作为静态特征,再将这种静态特征做一阶和二阶差分,得到相应的动态特征。
2、LPC由于频率响应H(ejw)反映声道的频率响应和被分析信号的谱包络,因此用log|H(ejw)|做反傅里叶变换求出的LPC倒谱系数通过线性预测分析得到的合成滤波器的系统函数为pH(z)=1心八眈」),其冲激响--A应为h(n)h(n)的倒谱为h(n),H(z)二、「h(n)z』就是说H(z)的逆变换h(n)是存在的设h(0)=0式H(z)=6h(n)z』两边同时对Z-1求导,得1p1-'aizi-1.:z::A亠•AJh(n)z』得到'nh(n)z』1nz4nz1Pi4'iaiziAP1-、mz」i=1,于是有(1二aiz^1)二nh(n)z!1-bo='iaiz亠1令其左右两边z的各次幕前系数分别相等,得n=1A到h(n)和ai间的递推关系Ah(1)=a1an4・a«h(n)=an+迟(1一丄)aih(n—k),1兰n兰pi仝n,按其可直接从预测系数{ai}求得倒谱AP・Ah(n)=W(1一丄)aih(n—1),n>pi壬nh(n)这个倒谱是根据线性预测模型得到的,又称为LPC倒谱LPC倒谱由于利用线性预测中声道系统函数H(z)的最小相位特性,因此避免了一般同态处理中求复对数的麻烦。
四、实验步骤及程序MFCC特征序列(1) 、实验步骤① 输入样本音频② 给样本音频预加重、分帧、加窗③ 将处理好的样本音频做傅里叶变换④ 进行Mel频率滤波⑤ 进行Log对数能量⑥ 对样本求倒谱⑦ 输出MFCC图像(2) 、MFCC提取程序流程图图3.1MFCC特征提取(3) 、MFCC特征提取实验源程序closeallclearclc[x]=wavread('1.wav');bank=melbankm(24,256,8000,0,0.5,'m');bank=full(bank);bank=bank/max(bank(:));fork=1:12n=0:23;dctcoef(k,:)=cos((2*n+1)*k*pi/(2*24));endw=1+6*sin(pi*[1:12]./12);w=w/max(w);xx=double(x);xx=filter([1-0.9375],1,xx);xx=enframe(xx,256,80);fori=1:size(xx,1)y=xx(i,:);s=y'.*hamming(256);t=abs(fft(s));t=t.A2;c仁dctcoef*log(bank*t(1:129));c2=c1.*w';m(i,:)=c2:endfigureplot(m);xlabel('帧数');ylabel('幅度');title('MFCC');五、实验结果与分析MFCCMFCC1511111—*30111111111020406080100120140160180200帧数图3.3MFCC特征提取图像通过计算MFCC参数,获得了声纹识别的特征参数。
由于MFCC参数是对人耳听觉特征的描述,因此,可以认为,不同声纹的MFCC参数距离,能够代表人耳对两个语音听觉上的差异,可以为声纹的识别提供可靠的依据六、实验体会通过本次实验是我更加熟练运用MATLAB软件进行编程,对MFCC特征序列的提取原理有了更深的理解,能够更好地运用课堂上所学的基础知识运用到实验当中,对于以后的学习有了很大的帮助。












