一、听觉特性。
人们不能完全搞清楚人耳的内部构造,这就不能利用状态空间的方法来分析人耳的听觉特性。但是,可以把人耳当成黑匣子,声音作为激励,人类的反应作为响应,利用信号与系统的经典分析方法,把声音作用于人耳,并观察人类的反应。于是,得到了人耳的听觉特性。
1、人耳对频率具有选择性。
人耳听到的声音的高低与声音频率不成线性关系,而是与该声音频率的对数近似成线性正比关系。
2、人类不能有效地分辨出所有的频率分量。
只有当两个频率分量相差一定带宽时,人类才能将其区分,否则人就会把两个音调听成一个,这称为屏蔽效应,这个带宽称为临界带宽,其计算公式如下:
当中心频率在1KHz以下时,临界带宽基本恒为100Hz。
当中心频率超过1KHz时,随中心频率的增长,临界带宽呈指数增长。
因此,我们构造Mel频率尺度来模仿人耳感知声音频率的对数关系,构造Mel滤波器组来模仿屏蔽效应。
二、Mel频率。
线性频率与Mel频率的关系如下:
在Mel频域内,人对音调的感知度为线性关系。
鉴于临界带宽的划分,Mel滤波器组将语音频率划分成一系列三角形的滤波器序列,即Mel滤波器组。
需要注意的是:这里的滤波器形状不一定是三角形,也可以是正弦波。
三、Mel滤波器组。
每个三角形滤波器的中心频率c(l)在Mel频率轴上等间隔分配。
第l个三角形滤波器有以下指标:
o(l)下限频率
c(l)中心频率
h(l)上限频率
c(l)=h(l-1)=o(l+1)
从上图可以看出,相邻两个三角形滤波器之间都有重叠部分,表征了屏蔽效应。
四、Mel滤波器组的中心频率。
中心频率f(m)可以用下面的方法来确定:
其中:fl为单个滤波器的下限频率,fh为单个滤波器的上限频率,N为FFT窗宽,Fs为采样频率,B-1为B的逆函数。
这些中心频率在Mel频域上是均匀分布的。
五、Mel滤波器组的传递函数。
Mel滤波器组是若干个作用的语音频谱范围内的带通滤波器。
每个滤波器具有三角滤波特性,其中心频率为f(m),每个带通滤波器的传递函数为:
六、梅尔频率倒谱系数 (Mel Frequency Cepstrum Coefficient, MFCC)。
MFCC先把线性频域映射到Mel频域,再转到倒谱上。MFCC不依赖于信号的性质,对输入信号不做任何的假设和限制,又适合人耳的听觉模型。
七、求解MFCC的流程。
八、预加重。
预加重与去加重常常用于通信系统中,以降低信道对高频分量的影响。在语音信号中,声带和嘴唇的辐射效应对高频分量产生衰减,所以这里的预加重是个高通滤波器,以增强高频分量的幅度,同时也突出高频的共振峰。
这个高通滤波器的传输函数如下:
μ取0.9~1.0之间,通常为0.97。
直接把原始的语音信号通过预加重的高通滤波器,以供后级使用。
九、分帧。
语音信号是个时变的非平稳随机过程,直接对其处理难以得到有用的信息。考虑到语音信号变化缓慢,可以将其切片,也就是分帧操作。
分帧后的语音信号可以看作一个近似的平稳随机过程。一般分帧的时间间隔为10~30ms。
为了避免相邻两帧之间变化过大,在相邻两帧之间存在一段重叠区域,称为帧移。帧移一般取1/2或1/3。
十、加窗。
加窗,一般有矩形窗和汉明窗两种。
矩形窗优点是直接截断,方便处理,主瓣比较集中,缺点是旁瓣较高,并有负旁瓣,导致变换中带进了高频干扰和泄漏,甚至出现负谱现象。
汉明窗也叫余弦窗或改进的升余弦窗。优点是主瓣加宽并降低,旁瓣显著减小,减少频谱泄漏。
考虑到频谱泄漏,这里通常使用汉明窗。将每一帧乘以汉明窗,以供后级使用。
十一、FFT。
由于直接用录音设备得到的往往是时域上的语音信号,要想将其映射到线性频率上,就必须用DFT或者FFT,以实现时域到频域的转换。
针对常用的基2FFT算法来说,对N点的信号,若N/2为整数,可以使用FFT,以加快算法的处理速度。
若N/2不为整数,就只能使用DFT,算法速度会随着点数的增加而下降。
所以在分帧时,点数必须为2的整数倍。
十二、取绝对值或平方值。
由于FFT出来结果的是复数,有实部和虚部,对其取绝对值,得到复数的模,而去掉相位。
模反应的是声音的幅值,幅值包含有用的信息。人耳对声音的相位并不敏感,可以忽略相位。
取平方值则是先取绝对值再取平方,对幅值的变化更为敏感。
十三、Mel滤波。
对上面的线性频率进行Mel滤波。
此处反应了人耳的听觉特性。
十四、取对数。
语音信号可视为声门激励信息及声道脉冲响应的卷积。录音设备可以视为与语音信号作卷积运算。所以,有必要将语音信号的声门激励信息、声道响应信息、信道信息由卷积关系变为线性关系,从而利用其它方法提取出基音周期、声道特性和信道特性。
对三角形滤波器组的输出求取对数,可以得到近似于同态变换的结果。
十五、倒谱与倒谱系数。
由上图可知,时域信号变换到频域,取对数,再变换到时域之后,得到倒谱。
而时域信号变换到频域,取对数,再经过DCT,得到的是倒谱系数,若在频域之后增加Mel滤波,则最终得到MFCC。
十六、离散余弦变换DCT。
由于相邻两个三角形滤波器有重叠部分,所以各个滤波器组输出的幅度或能量之间有很强的相关性。因此有必要去掉其相关性。
DCT具有正交的性质,它只计算实数。
把对数谱的结果进行奇偶延拓,再进行FFT,取出实数部分,就是DCT的结果。
DCT可以把信号的高频分量移动到低频,大多数的信号能量都集中在低频,也就是能量集中特性。所以DCT可以去掉各个滤波器组输出的能量相关性。
十七、MFCC的动态特征。
语音是连续变化的,每个语音帧不是独立的。将动态特征和静态特征结合起来,可以大大提高系统的识别能力。
以上求得的是每一帧 的MFCC的静态特征。把静态特征看作是离散型变量,通常用差分来描述MFCC对时间的变化速度,也就是MFCC对时间的斜率。
差分系数的计算方法:
其中di(n)为第i帧语音的一阶差分MFCC特征矢量的第n个系数,ci(n)为第i帧语音的MFCC特征矢量的第n个系数,N一般取2。
十八、MFCC的组成。
N维MFCC参数(N/3的MFCC系数+N/3的一阶差分系数+N/3的二阶差分系数)+帧的短时能量(可选)。