语音识别系统的第一步是进行特征提取,mfcc是描述短时功率谱包络的一种特征,在语音识别系统中被广泛应用。
一、mel滤波器
每一段语音信号被分为多帧,每帧信号都对应一个频谱(通过FFT变换实现),频谱表示频率与信号能量之间的关系。mel滤波器是指多个带通滤波器,在mel频率中带通滤波器的通带是等宽的,但在赫兹(Hertz)频谱内mel滤波器在低频处较密集切通带较窄,高频处较稀疏且通带较宽,旨在通过在较低频率处更具辨别性并且在较高频率处较少辨别性来模拟非线性人类耳朵对声音的感知。
赫兹频率和梅尔频率之间的关系为:
F m e l = 1125 ln ( 1 + f / 700 ) {F_{mel}} = 1125\ln (1 + f/700) Fmel=1125ln(1+f/700)
f = 700 ( e F / 1125 − 1 ) f = 700\left( {
{e^{F/1125}} - 1} \right) f=700(eF/1125−1)
假设在梅尔频谱内,有 M M M个带通滤波器 H m ( k ) , 0 ≤ m < M {H_m}\left( k \right),0 \le m < M Hm(k),0≤m<M,每个带通滤波器的中心频率为 F ( m ) F(m) F(m)每个带通滤波器的传递函数为:
H m ( k ) = { 0 , k < F ( m − 1 ) k − F ( m − 1 ) F ( m ) − F ( m − 1 ) , F ( m − 1 ) ≤ k ≤ F ( m ) F ( m + 1 ) − k F ( m + 1 ) − F ( m ) , F ( m ) ≤ k ≤ F ( m + 1 ) 0 , k > F (