语音识别方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
语音识别方法
语音特征提取
将语音信号转换为特征向量,通过这些向量来进行语音相关任务的训练与识别。
语音识别对特征参数有如下要求:
1. 能将语音信号转换为计算机能够处理的语音特征向量;
2. 能够符合或类似人耳的听觉感知特性;
3. 在一定程度上能够增强语音信号、抑制非语音信号;
常用特征提取方法有如下几种:
●LPC
●声谱图
●倒谱分析
●MFCC (最常用)
声谱图
将一段连续的语音信号通过分帧、FFT、灰度映射转换为离散、低维的特征向量,框架图如下:
声谱图表示法流程
基本流程如下:
(1)将一段语音做分帧处理,即将其剪切为一段段语音片段(20~50ms之间);
(2)将每一帧的语音信号通过短时傅里叶变换(FFT)转为频域信号,得到每一帧的频
谱图,如下图所示,横轴为频率、纵轴为当前频率对饮的能量值。在实际使用中,频谱图有
三种,即线性振幅谱、对数振幅谱、自功率谱(对数振幅谱中各谱线的振幅都作了对数计算,所以其纵坐标的单位是dB(分贝)。这个变换的目的是使那些振幅较低的成分相对高振幅成分得以拉高,以便观察掩盖在低幅噪声中的周期信号);
语音频谱图
(3)将每一帧的频谱值映射为灰度图,灰度的深浅就代表了该频率段能量的大小,很黑的地方就是频谱图中的峰值(共振峰formants)。
倒谱分析
倒谱就是一种信号的傅里叶变换经对数运算后再进行傅里叶反变换得到的谱。倒谱分析
的目标是:从语音频谱中得到它的频谱包络(连接所有共振峰值点的平滑曲线),它在语音识别中被广泛用于描述特征。主要流程如下:
1.将原语音信号经过傅里叶变换得到频谱:X[k]=H[k]E[k],只考虑幅度就是:|X[k]
|=|H[k]||E[k] |;
2.我们在两边取对数:log||X[k] ||= log ||H[k] ||+ log ||E[k] ||;
3.再在两边取逆傅里叶变换得到:x[k]=h[k]+e[k]。
下面是一个语音的频谱图。峰值就表示语音的主要频率成分,把这些峰值称为共振峰(formants),而共振峰就是携带了声音的辨识属性,用它就可以识别不同的声音。因此,需要把它提取出来。提取的不仅是共振峰的位置,还得提取它们转变的过程。所以我们提取
的是频谱的包络(SpectralEnvelope)。这包络就是一条连接这些共振峰点的平滑曲线。
语音频谱图
由上图可以看出,原始的频谱由两部分组成:包络和频谱的细节。因此需要把这两部分分离开,就可以得到包络了。按照下图的方式进行分解,在给定logX[k]的基础上,求得logH[k]和logE[k]满足logX[k]=logH[k]+logE[k]。
倒谱分析流程图
由上面这个图我们可以看到,包络主要是低频成分,而高频主要是频谱的细节。把它俩叠加起来就是原来的频谱信号了。即,h[k]是x[k]的低频部分,因此将x[k]通过一个低通滤
波器就可以得到h[k]了,这就是我们要提取的频谱包络。
MFCC
人通过声道产生声音,声道的形状决定了发出怎样的声音。声道的形状包括舌头,牙齿等。如果我们可以准确的知道这个形状,那么我们就可以对产生的音素进行准确的描述。声道的形状在语音短时功率谱的包络中显示出来,而MFCC就是一种准确描述这个包络的一种特征。
MFCC的目标是:从语音频谱中得到它的梅尔(Mel)频谱的倒谱,先将线性频谱映射到基于听觉感知的Mel非线性频谱中,然后转换到倒谱上。主要流程如下:
4.先对语音进行预加重、分帧和加窗;
5.对每一个短时分析窗,通过 FFT 得到对应的频谱,然后通过Mel滤波器组得到
Mel频谱,log X[k] = log (Mel-Spectrum);
Mel(f) = 2595 * log10(1 + f / 700);
6.在Mel频谱上面进行倒谱分析
1)取对数:log X[k] = log H[k] + log E[k],
2)进行逆变换:x[k] = h[k] + e[k]。
实际逆变换一般是通过DCT离散余弦变换来实现,取DCT后的第2个到第13个系数作为MFCC系数),获得Mel频率倒谱系数MFCC,这个MFCC就是这帧语音的特征;