单位文秘网 2022-02-14 08:07:11 点击: 次
摘 要:文章主要介绍了对不同来源的语音,如手机扬声器、电视、电脑、收音机、室内、室外、二次录音等来源的语音识别的方法。采用双门限端点检测的方法选取一段连续的语音的起点和终点,使用Matlab进行多尺度一维小波分解,然后求得每一层的能量,把能量在各层分布的百分比作为特征参数进行识别。语音来源的识别,在公安、司法、语音识别等有重要的应用。
关键词:小波变换;语音来源识别;Matlab
1 引言
语音信号的来源是多式多样的,可以来源于电视、电话、麦克风、收音机、室内、室外等。这些不同来源的语音信号会表现出不同的特征,有的比较明显的人耳可以轻松地区别出来,而有的人耳是很难分辨出来的。据调查,国内外针对语音识别的研究多集中在声纹识别、声源位置识别等方面,在语音来源识别方面研究较少。语音来源识别主要找寻区别不同来源声音的方法,如区别一次录音和二次录音,区别来源于室内、室外的声音,区别来源于电视、电话、收音机、电脑等的声音。
语音来源识别的一个根本问题是合理的选用特征。选择的标准应体现对于不同来源的声音,相应特征间的距离应大,而对于相同来源的声音,彼此间距离应小。选取特征应该尽量和语音的内容无关,这样才能区别不同来源的语音信号。
语音来源识别和语音识别在本质上是类似的,都是一种模式识别的过程。主要包括语音信号预处理、特征提取、特征建模(建立参考模式库)、模式匹配等几个功能模块。
预处理过程包括预滤波、采样和量化、端点检测等,由于本系统的研究过程中,使用录音笔录制好.wav文件,预滤波、采样和量化都已经完成,所以预处理只需要进行端点检测即可。经过预处理的语音数据就可以进行特征参数提取。在训练阶段,获取不同来源的语音数据的特征参数,为每一种来源的语音得到一个模型,建立模板库。在识别阶段,测试语音信号经过相同的通道得到语音参数,生成测试模板,与参考模板进行匹配,将匹配距离最小的作为识别结果。
2 语音信号输入
由于我们研究的目的是识别不同来源的语音,因此我们先用录音笔录制不同来源的语音信号。将录制的声音文件进行格式转化成.wav格式。然后直接利用MATLAB的wavread(file)函数读入语音信号。
3 端点检测
本系统的预处理过程主要就是进行端点检测,无论是在训练还是识别阶段,都要先采用端点检测算法确定语音的起点和终点,以获得一段连续的有声段进行分析。语音端点检测是一个重要环节,其算法的优劣会直接影响后面特征参数的提取,从而影响整个系统的优劣。端点检测我们采用的是短时能量短时过零率双门限端点检测。
双门限端点检测就是进行两级检测,即短时能量检测和短时过零率检测。开始检测前,需要设定4个门限,分别为短时能量和短时过零率设置一个高门限和一个低门限:EH、EL和ZH、ZL。语音端点检测可分为四部分:静音段、过度段、语音段、结束段。在静音段,如果能量或过零率有一个超过了其低门限,则认为进入了过度段。在过度段,两个参数的其中一个超越了高门限才被认为是进入语音段。当其中一个参数降至低门限则认为进入结束段。
在双门限端点检测中4个门限的设定很重要,这将直接影响端点检测的结果。本系统中EH、EL、ZH、ZL的取值分别为:
4 特征参数提取
通过端点检测,我们得到了语音的起点和终点:StartPoint、EndPoint.在起点和终点间的是一段连续的语音,正是我们需要进行参数提取的对象,根据端点检测的结果截取一段连续的语音段。
特征参数的提取采用的方法主要是进行小波变换。我们利用了MATLAB小波工具箱提供的以下几个实现一维小波分解的函数:
[C,L]=wavedec(X,N,’wname’),多尺度一维小波分解函数。
D=detcoef(C,L,N),一维小波变换细节序列提取函数。
A=appcoef(C,L,’wname’,N),一维小波变换近似序列提取函数。
我们提取特征参数的时候,选取了db6小波,利用MATLAB提供的小波分解函数进行了5级分解。小波的选取和分解级数的选取,是我们经过不断试验后的结果。
[c,l]=wavedec(X,5,’db6’);
上式中X是经过端点检测后截取的语音段。上述函数返回的近似和细节都存放在c中,l存放的是近似和各阶细节系数对应的长度。
之后用appcoef(C,L,’wname’,N)提取近似系数,用detcoef(C,L,N)提取各阶细节系数。
这样便通过小波变换分解得到了近似和各阶系数。我们根据分解后各阶系数能量分布的不同来区别不同来源的声音。求得各阶的能量和总能量。使用近似系数和各阶细节系数能量占总能量的比值将作为特征参数,用于语音来源的识别。
5 训练和识别过程
在训练阶段,从train文件夹下读取样本数据,获取特征参数,将这些参数保存下来作为模板数据。
在我们目前的系统中,共有7种不同来源的声音,因此在训练阶段,我们读取了7个语音文件提取特征参数,作为模板库。把模板数据存储在mfcc.mat 文件中。在识别阶段只需要把mfcc.mat文件导入进去,便获得了模板数据。
在识别阶段,我们将待识别的语音文件输入进来。通过和训练阶段一样的方法得到特征参数。得到待测语音的特征参数以后,便可以求待测语音特征参数和模板语音特征参数的距离。求得测试语音和7个模板语音特征参数的距离后,将距离从小到大排序。排序之后将距离最小的作为识别的结果。
在我们系统的测试阶段,我们录制了两份不同来源的语音。将其中一组作为模板,另外一组作为测试。7段语音的来源均得到了正确的识别结果。
6 结束语
不同来源的语音经过小波分解之后,各级小波系数的能量分布将不同。该语音来源识别系统将小波分解后各层系数的能量百分比作为特征系数。该系统首先经过端点检测得到一段连续的语音信号,然后用db6小波进行5级小波分解,之后求得各级小波的能量百分比作为特征参数。先经过训练阶段得到模板数据,然后在识别阶段得到待测语音和模板语音特征参数的距离,选取距离最小的作为识别结果。
参考文献
[1]刘然.基于小波变换的说话人识别应用研究[D].西安:西安电子科技大学,2011
[2]李战明,王贞.基于小波包分析特征参数的说话人识别系统[J].电声技术,2005,(06)
[3]李宏松,苏健民,黄英来,于慧伶.基于声音信号的特征提取方法[J].信息技术,2006,(01)
[4]魏星,周萍. 语音识别系统及其特征参数的提取研究[J]. 计算机现代化,2009,(09)
作者简介:邝斌(1993,10-),男,江西赣州人,本科,主要研究:音频信号处理。
(责任编辑:单位文秘网) )地址:https://www.kgf8887.com/show-115-98580-1.html
下一篇:分析公路线性连续性设计方法
版权声明:
本站由单位文秘网原创策划制作,欢迎订阅或转载,但请注明出处。违者必究。单位文秘网独家运营 版权所有 未经许可不得转载使用