语音识别的第一步就是语音特征提取,语音信号是在人体中肺、喉、声道等器官构成的语音产生系统中产生的,它是一个高度不平稳的信号,它的幅度谱和功率谱也随着时间不停的变化,但是在足够短的时间内,其频谱特征相当平稳,因此在进行语音分析时,我们多采用分帧的方式进行短时分析,查看多篇文章中,使用帧长为25ms,帧移为10ms的方式进行分帧,并且计算出每帧内的功率谱进行其他的操作。功率谱在一些特征提取技术中得到应用,比如MFCC、Fbank,查询多篇文章,了解了几种被广泛应用个的特征提取技术,他们的特性不同也就决定了他们有着不同的应用范围,因此,对下面这几款常用的方法都进行基本的理解。
1、短时能量
2、短时过零率
3、Fbank
4、MFCC
5、LPC
6、LPCC
7、LSF
8、DWT
9、PLP
10、CQT
上述方法中的短时能量和短时过零率已在之前的代码中简单实现过,因此暂不再深入探究,后续遇到实际问题时再行优化。对于Fbank和MFCC这两种方式,放到一起进行总结,因为MFCC=MFCC+DCT。
Fbank:Filter Bank,也就是指使用梅尔滤波器组。
MFCC:Mel-Frequency cepstral cofficients,梅尔频率倒谱系数。
DCT:Discrete Cosine Transform,离散余弦变换。
MFCC的实现过程如下: