语音识别-科普性介绍
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
随机过程理论在语音识别中的应用
第一章语音识别总述
1.1语音识别技术简介
语音识别技术就是让机器通过识别和理解过程,把语音信号转变为相应的文本或命令的技术。在当下流行的即时通讯软件(如:微信、QQ等)里,语音识别技术得到了非常广泛的应用。当对方发来一段语音信息而自己不方便收听时便可以使用语音转化功能将语音信息转化成文字信息。此外,在许多输入法(如:讯飞输入法)中也可以使用语音输入功能。用户只需要对着麦克风说话,输入法便可以将语音转换为文字填入输入框,在方便用户的同时也提高了文字输入效率。
语音识别涉及的领域包括:数字信号处理、声学、语音学、计算机科学、心理学、人工智能等,是一门涵盖多个学科领域的交叉科学技术。
语音识别的技术原理是模式识别,其一般过程可以总结为:预处理、特征提取、基于语音模型库下的模式匹配、基于语言模型库下的语言处理、完成识别。
图1.0.1 语音识别过程
第二章预处理
声音的实质是波。在现如中得到广泛应用的音频文件格式(如:mp3等)都经过了压缩无法直接识别。语音识别所使用的音频文件格式必须是未经压缩处理的wav格式文件。下图是一个波形示例。
图2.0.2 语音波形示例
有了声波源文件输入便可以按照图2.1.1所示的各个步骤进行识别。
2.1静音切除
如图2.1.2所示,在得到的声波信号输入中需要实际处理的信号并不一定占满整个时域,会有静音和噪声的存在。因此,必须先对得到的输入信号进行一定的预处理,消去静音的部分并且滤除噪声的干扰才能对实际需要处理的有效语音进行识别。
噪声处理部分本文已在上文进行过讨论,这里不再赘述。去除静音需要用到V AD算法,本文对其做简单介绍。
2.1.1 V AD算法
V AD算法全称为V oice Activity Detection,又称语音边界检测。其可实现的功能有对语音信号进行打断、去除语音信号中的静音部分从而获取有效语音,还可以去除一部分噪声对后续语音识别过程造成的干扰。V AD主要是对输入语音信号的一些时域或频域特征判断其是否属于静音部分。本文只对这些参数做简要介绍,具体算法不属于本文重点因而不在此做细致讨论。
2.1.2时域参数
时域参数是通过对输入信号在时域上的特征参量进行区分。在信噪比较高的环境下使用时域参数进行区分效果显著。
1.相关性分析
通过对足够短的时间范围内的语音信号进行相关性检测可以初步判定该时间范围内的信号是否属于静音部分。在实际应用中,静音的部分实际上会混有各种各样的噪声,因此并非绝对意义上静音。噪声在各个时间范围内的相关性比较低,而人说话的语音相关性则比较强。因此,在高信噪比的条件下区分成功率很
高。然而,由于噪声多种多样,因此相关性分析只适用于区分小部分噪声与语音,这是其局限性所在。
2.时域能量
静音部分的噪声能量相较于有效语音能量而言要少得多,因此可以通过比较短时间范围内的输入信号能量来判定该段信号是否输入静音部分。而在实际生活中,会出现高能量噪声的情况,此时再用时域能量参数就显得爱莫能助。.
3.
2.1.2频域参数
频域参数的抗噪性能要优于时域参数,但是由于需要用到傅立叶变换等变换方法进行分析域转换,因此相应的计算复杂度较高,花费时间也较长。
1.谱熵
熵本是源于热力学的参数,用于描述系统的混乱度。在信息论中用于描述信息源的不确定性。
图2.1.1 噪声谱图2.1.2 语音谱在实际应用中,噪声谱较为平坦,谱熵较大。而语音能量集中在低频段,谱熵较小,因此可通过谱熵来判断信号属于噪声还是有效语音。谱熵的可靠性不会受信号大小的影响,其大小只与信噪比有关。
2.自适应子带
即使在很低的信噪比下,语音帧仍然具有较高信噪比的子带,而噪声帧却没有。因此可以根据每帧信号的最小频带所占的该帧总能量的概率来自适应选择子带的多少。
2.2分帧
2.2.1分帧简介
如图2.0.2的有效语音信号波形在时域上是无法对其进行识别的的。因此必须算出有效语音信号在频域上的分布情况,因而需要对有效语音信号做傅立叶变换从而得到其在频域上的分布情况。
图2.2.1 有效语音信号波形图
傅立叶变换的前提是输入信号是平稳的,而如图2.2.1所示的有效语音信号的前三分之一和后三分之二明显不一样,这是由于发音者的发音姿态变换而导致的,所以整体来看语音信号不平稳。但如果取适量小的时间范围内(如图中矩形框圈出的时间范围),仅在该时间范围内做分析的话,发声者的发声姿态基本不变,语音信号就可以看成平稳的,就可以截取出来做傅立叶变换了。将有效语音信号的截取成一帧一帧的平稳信号的过程就称为分帧。
2.2.1分帧时长
由上述的讨论可知,通过分帧操作所得到的每一帧信号需满足如下两个条件:
1.它必须足够短来保证帧内信号是平稳的。上文提到过,发音者发音姿态的变化是导致信号不平稳的原因,所以在一帧的期间内发音姿态不能有明显变化。即一帧的长度应当小于一个音素的长度。正常语速下,音素的持续时间大约是 50至200 ms,所以帧长一般取为小于 50 ms。
2.每一帧信号又必须包括足够多的振动周期,因为傅立叶变换是对信号的频域进行分析,只有每一个频率成分在时域重复振动足够多次才能分析频率。语音的基频,男声在 100 Hz左右,女声在 200 Hz左右,换算成周期就是 10 ms和5 ms。既然一帧要包含多个周期,所以一般取至少 20 ms。
通过以上的讨论,帧长一般取为 20 至50 ms,20、25、30、40、50 都是比较常用的数值。
2.3加窗
为了提高傅立叶变换所得频谱的分辨率,取出来的一帧信号,在做傅立叶变换之前,要先进行加窗的操作,即与一个窗函数相乘,如图2.3.1所示。