一种基于人耳掩蔽效应划分子带的语音端点检测方法与流程

文档序号:16188563发布日期:2018-12-08 05:27阅读:366来源:国知局
一种基于人耳掩蔽效应划分子带的语音端点检测方法与流程
本发明涉及含噪语音信号处理领域,具体地涉及一种基于人耳掩蔽效应划分子带的语音端点检测方法。
背景技术
语音端点检测是人机交互、语音识别、说话人识别的关键技术之一,随着计算机技术、网络技术和通讯技术的飞速发展,信息的获取方式不断丰富和多样化,音频数据的种类和数量也日益增多,如:新闻广播、会议录音、电话录音、音频采访、语音邮件等,这些音频文件中包含着大量有效的语音段,同时也会夹杂着许多冗余的部分,这给存储和语音处理造成了很大的负担,因此,语音端点检测就显得尤为重要,其作用是找出语音的起始点和结束点,分离出有效声段,语音端点检测作为一种语音信号预处理技术,在语音识别、语音增强、语音编码等系统中起着非常重要的作用,研究表明端点检测效果是影响识别率的重要因素,准确快速的检测出语音段不仅可以减少计算量和缩短处理时间,还能有效的排除非有效语音段造成的噪声干扰,从而使后续语音处理工作效率能得到较大的提高,目前端点检测技术中基于时域特征的传统语音端点检测方法以短时能量、短时过零率作为特征参数,在高信噪比时具有较好效果,但在低信噪比时检测性能急剧下降,因此无法保证检测的准确性。技术实现要素:针对上述现有技术的现状,本发明所要解决的技术问题在于提供一种准确率高的基于人耳掩蔽效应划分子带的语音端点检测方法。本发明解决上述技术问题所采用的技术方案为:一种基于人耳掩蔽效应划分子带的语音端点检测方法,包括以下步骤:设定参数、计算参数、计算谱线数、分帧处理、读取语音信号、计算音帧的频谱、计算子带的能量、计算语音信号能量、计算子带能量谱密度、计算子带谱熵、计算子带能熵比、判断语音帧号、计算门限值、开始判断语音信号、对比子带能熵比与门限值、判断语音帧号,具体如下:步骤1:所述设定参数为设定语音采样率fs、语音帧帧长tframe、信号长度tyuyin、帧滑动长度tmove;步骤2:所述计算参数为计算每个语音帧包含的采样点数fsample、频率分辨率df和语音帧数目fnum,由采样频率和语音帧长可得到每帧语音信号包含fsample=fs*tframe个样点;后续做fft变换后,每根谱线之间的间隔为频率分辨率df,df=fs/fsample,单位hz;tyuyin长的语音信号共分为fnum=tyuyin/tmove帧;步骤3:所述计算谱线数为计算每个子带的谱线数目,依据人耳掩蔽效应将(0hz-8000hz]范围内的语音信号划分为24个子带,具体划分方法如下:首先将(0hz-8000hz]划分为(0hz-500hz]、(500hz-1000hz]、(1000hz-2000hz]、(2000hz-4000hz]、(4000hz-8000hz]五个区间,其中(0hz-500hz]范围内均匀地分为8个子带,(500hz-1000hz]范围内均匀地分为4个子带,(1000hz-2000hz]范围内均匀地分为4个子带,(2000hz-4000hz]范围内均匀地分为4个子带,(4000hz-8000hz]范围内均匀地分为4个子带,每个子带包含的谱线数为子带带宽除以频率分辨率;步骤4:所述分帧处理为依据步骤1的参数对含噪语音信号进行滑动重叠分帧处理,从i=1第一帧语音信号开始;步骤5:所述读取语音信号为读取采样后的第i帧语音信号x(i,n),n=0,1,...,fsample-1;步骤6:所述计算音帧的频谱为对第i帧语音信号x(i,n)进行快速傅里叶变换(fft),得到第i语音帧的频谱s(i,k);步骤7:所述计算子带的能量为在频域内计算第i帧的24个子带的能量eb(i,m),m=1,2,...,24,计算过程具体如下;(1)当1≤m≤8时,式中:a=(m-1)*sub1+1,b=m*sub1(2)当9≤m≤12时,式中:a=(m-9)*sub2+1+8*sub1,b=(m-8)*sub2+8*sub1(3)当13≤m≤16时,式中:a=(m-13)*sub3+1+8*sub1+4*sub2b=(m-12)*sub3+8*sub1+4*sub2(4)当17≤m≤20时,式中:a=(m-17)*sub3+1+8*sub1+4*sub2+4*sub3b=(m-16)*sub4+8*sub1+4*sub2+4*sub3(5)当21≤m≤24时,式中:a=(m-21)*sub5+1+8*sub1+4*sub2+4*sub3+4*sub4,b=(m-20)*sub5+8*sub1+4*sub2+4*sub3+4*sub4步骤8:所述计算语音信号能量为计算第i帧的语音信号能量seb(i);步骤9:所述计算子带能量谱密度为计算第i帧的子带能量谱密度pb(i,m);pb(i,m)=eb(i,m)/seb(i),m=1,2,…,24步骤10:所述计算子带谱熵为计算第i帧的子带谱熵hb(i);步骤11:所述计算子带能熵比为计算第i帧的子带能熵比;sehb(i)=seb(i)/hb(i);步骤12:所述判断语音帧号为判断语音帧号i是否小于帧数fnum,若是,语音帧号i=i+1,返回步骤5,反之,则当前语音信号段能熵比计算结束;步骤13:所述计算门限值为计算当前语音段的门限值,level=min(sehb(i))+max(sehb(i))*0.3;步骤14:所述开始判断语音信号为从i=1第一帧语音信号开始;步骤15:所述对比子带能熵比与门限值为将第i帧的子带能熵比与设定的门限进行比较,若子带能熵比大于门限,则判断第i帧为语音帧,反之,判断第i帧为非语音帧;步骤16:所述判断语音帧号为判断语音帧号i是否小于帧数fnum,若是,语音帧号i=i+1,返回步骤15,反之,则当前语音信号段处理结束。优选地,所述步骤3中在(0hz-500hz]范围内均匀地分为8个子带,每个子带的带宽为500/8=62.5hz,系统的频率分辨率为df,所以在第一部分每个子带包含的谱线数为sub1=62.5/df根。优选地,所述步骤3中在(500hz-1000hz]范围内均匀地分为4个子带,每个子带的带宽为500/4=125hz,所以在第二部分每个子带包含的谱线数为sub2=125/df根。优选地,所述步骤3中在(1000hz-2000hz]范围内均匀地分为4个子带,每个子带的带宽为1000/4=250hz,所以在第二部分每个子带包含的谱线数为sub3=250/df根。优选地,所述步骤3中在(2000hz-4000hz]范围内均匀地分为4个子带,每个子带的带宽为2000/4=500hz,所以在第二部分每个子带包含的谱线数为sub4=500/df根。优选地,所述步骤3中在(4000hz-8000hz]范围内均匀地分为4个子带,每个子带的带宽为4000/4=1000hz,所以在第二部分每个子带包含的谱线数为sub5=1000/df=根。与现有技术相比,本发明的优点在于:本发明以此通过设定参数、计算参数、计算谱线数、分帧处理、读取语音信号、计算音帧的频谱、计算子带的能量、计算语音信号能量、计算子带能量谱密度、计算子带谱熵、计算子带能熵比、判断语音帧号、计算门限值、开始判断语音信号、对比子带能熵比与门限值、判断语音帧号等流程,本发明克服了现有技术的缺点与不足,提高了语音端点检测的准确率。附图说明图1是本发明的流程示意图;图2是本发明的滑动重叠分帧处理示意图。具体实施方式以下结合附图,对本发明的具体实施方式作进一步详述,以使本发明技术方案更易于理解和掌握。如图1-2所示,一种基于人耳掩蔽效应划分子带的语音端点检测方法,包括以下步骤:设定参数、计算参数、计算谱线数、分帧处理、读取语音信号、计算音帧的频谱、计算子带的能量、计算语音信号能量、计算子带能量谱密度、计算子带谱熵、计算子带能熵比、判断语音帧号、计算门限值、开始判断语音信号、对比子带能熵比与门限值、判断语音帧号,具体如下:步骤1:所述设定参数为设定语音采样率fs、语音帧帧长tframe、信号长度tyuyin、帧滑动长度tmove;步骤2:所述计算参数为计算每个语音帧包含的采样点数fsample、频率分辨率df和语音帧数目fnum,由采样频率和语音帧长可得到每帧语音信号包含fsample=fs*tframe个样点;后续做fft变换后,每根谱线之间的间隔为频率分辨率df,df=fs/fsample,单位hz;tyuyin长的语音信号共分为fnum=tyuyin/tmove帧;步骤3:所述计算谱线数为计算每个子带的谱线数目,依据人耳掩蔽效应将(0hz-8000hz]范围内的语音信号划分为24个子带,具体划分方法如下:首先将(0hz-8000hz]划分为(0hz-500hz]、(500hz-1000hz]、(1000hz-2000hz]、(2000hz-4000hz]、(4000hz-8000hz]五个区间,其中(0hz-500hz]范围内均匀地分为8个子带,(500hz-1000hz]范围内均匀地分为4个子带,(1000hz-2000hz]范围内均匀地分为4个子带,(2000hz-4000hz]范围内均匀地分为4个子带,(4000hz-8000hz]范围内均匀地分为4个子带,每个子带包含的谱线数为子带带宽除以频率分辨率;步骤4:所述分帧处理为依据步骤1的参数对含噪语音信号进行滑动重叠分帧处理,从i=1第一帧语音信号开始;步骤5:所述读取语音信号为读取采样后的第i帧语音信号x(i,n),n=0,1,...,fsample-1;步骤6:所述计算音帧的频谱为对第i帧语音信号x(i,n)进行快速傅里叶变换(fft),得到第i语音帧的频谱s(i,k);步骤7:所述计算子带的能量为在频域内计算第i帧的24个子带的能量eb(i,m),m=1,2,...,24,计算过程具体如下;(1)当1≤m≤8时,式中:a=(m-1)*sub1+1,b=m*sub1(2)当9≤m≤12时,式中:a=(m-9)*sub2+1+8*sub1,b=(m-8)*sub2+8*sub1(3)当13≤m≤16时,式中:a=(m-13)*sub3+1+8*sub1+4*sub2b=(m-12)*sub3+8*sub1+4*sub2(4)当17≤m≤20时,式中:a=(m-17)*sub3+1+8*sub1+4*sub2+4*sub3b=(m-16)*sub4+8*sub1+4*sub2+4*sub3(5)当21≤m≤24时,式中:a=(m-21)*sub5+1+8*sub1+4*sub2+4*sub3+4*sub4,b=(m-20)*sub5+8*sub1+4*sub2+4*sub3+4*sub4步骤8:所述计算语音信号能量为计算第i帧的语音信号能量seb(i);步骤9:所述计算子带能量谱密度为计算第i帧的子带能量谱密度pb(i,m);pb(i,m)=eb(i,m)/seb(i),m=1,2,…,24步骤10:所述计算子带谱熵为计算第i帧的子带谱熵hb(i);步骤11:所述计算子带能熵比为计算第i帧的子带能熵比;sehb(i)=seb(i)/hb(i);步骤12:所述判断语音帧号为判断语音帧号i是否小于帧数fnum,若是,语音帧号i=i+1,返回步骤5,反之,则当前语音信号段能熵比计算结束;步骤13:所述计算门限值为计算当前语音段的门限值,level=min(sehb(i))+max(sehb(i))*0.3;步骤14:所述开始判断语音信号为从i=1第一帧语音信号开始;步骤15:所述对比子带能熵比与门限值为将第i帧的子带能熵比与设定的门限进行比较,若子带能熵比大于门限,则判断第i帧为语音帧,反之,判断第i帧为非语音帧;步骤16:所述判断语音帧号为判断语音帧号i是否小于帧数fnum,若是,语音帧号i=i+1,返回步骤15,反之,则当前语音信号段处理结束;所述步骤3中在(0hz-500hz]范围内均匀地分为8个子带,每个子带的带宽为500/8=62.5hz,系统的频率分辨率为df,所以在第一部分每个子带包含的谱线数为sub1=62.5/df根,所述步骤3中在(500hz-1000hz]范围内均匀地分为4个子带,每个子带的带宽为500/4=125hz,所以在第二部分每个子带包含的谱线数为sub2=125/df根,所述步骤3中在(1000hz-2000hz]范围内均匀地分为4个子带,每个子带的带宽为1000/4=250hz,所以在第二部分每个子带包含的谱线数为sub3=250/df根,所述步骤3中在(2000hz-4000hz]范围内均匀地分为4个子带,每个子带的带宽为2000/4=500hz,所以在第二部分每个子带包含的谱线数为sub4=500/df根,所述步骤3中在(4000hz-8000hz]范围内均匀地分为4个子带,每个子带的带宽为4000/4=1000hz,所以在第二部分每个子带包含的谱线数为sub5=1000/df=根。上述中一种基于人耳掩蔽效应划分子带的语音端点检测方法的工作过程如下:首先假设含有噪声的语音信号的时域波形为x(t),语音信号具有短时平稳性,在短时间内(一般为10~35毫秒内)可以看做近似平稳过程,然后按照以下步骤进行:步骤1:所述设定参数为设定语音采样率fs、语音帧帧长tframe、信号长度tyuyin、帧滑动长度tmove;步骤2:所述计算参数为计算每个语音帧包含的采样点数fsample、频率分辨率df和语音帧数目fnum,由采样频率和语音帧长可得到每帧语音信号包含fsample=fs*tframe个样点;后续做fft变换后,每根谱线之间的间隔为频率分辨率df,df=fs/fsample,单位hz;tyuyin长的语音信号共分为fnum=tyuyin/tmove帧;步骤3:所述计算谱线数为把每条谱线的谱熵改为子带的谱熵,将人耳可听的(0hz-8000hz]范围内的语音信号划分为24个子带,具体划分方法如下:(0hz-500hz]、(500hz-1000hz]、(1000hz-2000hz]、(2000hz-4000hz]、(4000hz-8000hz]五个区间,其中(0hz-500hz]范围内均匀地分为8个子带,(500hz-1000hz]范围内均匀地分为4个子带,(1000hz-2000hz]范围内均匀地分为4个子带,(2000hz-4000hz]范围内均匀地分为4个子带,(4000hz-8000hz]范围内均匀地分为4个子带,每个子带包含的谱线数为带宽除以频率范围内包含的子带数;步骤4:所述分帧处理为依据步骤1的参数对含噪语音信号进行滑动重叠分帧处理,从i=1第一帧语音信号开始;步骤5:所述读取语音信号为读取采样后的第i帧语音信号x(i,n),n=0,1,...,fsample-1;步骤6:所述计算音帧的频谱为对第i帧语音信号x(i,n)进行快速傅里叶变换(fft),得到第i语音帧的频谱s(i,k);步骤7:所述计算子带的能量为在频域内计算第i帧的24个子带的能量eb(i,m),m=1,2,...,24,计算过程具体如下;(1)当1≤m≤8时,式中:a=(m-1)*sub1+1,b=m*sub1(2)当9≤m≤12时,式中:a=(m-9)*sub2+1+8*sub1,b=(m-8)*sub2+8*sub1(3)当13≤m≤16时,式中:a=(m-13)*sub3+1+8*sub1+4*sub2b=(m-12)*sub3+8*sub1+4*sub2(4)当17≤m≤20时,式中:a=(m-17)*sub3+1+8*sub1+4*sub2+4*sub3b=(m-16)*sub4+8*sub1+4*sub2+4*sub3(5)当21≤m≤24时,式中:a=(m-21)*sub5+1+8*sub1+4*sub2+4*sub3+4*sub4,b=(m-20)*sub5+8*sub1+4*sub2+4*sub3+4*sub4步骤8:所述计算语音信号能量为计算第i帧的语音信号能量seb(i);步骤9:所述计算子带能量谱密度为计算第i帧的子带能量谱密度pb(i,m);pb(i,m)=eb(i,m)/seb(i),m=1,2,…,24步骤10:所述计算子带谱熵为计算第i帧的子带谱熵hb(i);步骤11:所述计算子带能熵比为计算第i帧的子带能熵比;sehb(i)=seb(i)/hb(i);步骤12:所述判断语音帧号为判断语音帧号i是否小于帧数fnum,若是,语音帧号i=i+1,返回步骤5,反之,则当前语音信号段能熵比计算结束;步骤13:所述计算门限值为计算当前语音段的门限值,level=min(sehb(i))+max(sehb(i))*0.3;步骤14:所述开始判断语音信号为从i=1第一帧语音信号开始;步骤15:所述对比子带能熵比与门限值为将第i帧的子带能熵比与设定的门限进行比较,若子带能熵比大于门限,则判断第i帧为语音帧,反之,判断第i帧为非语音帧;步骤16:所述判断语音帧号为判断语音帧号i是否小于帧数fnum,若是,语音帧号i=i+1,返回步骤15,反之,则当前语音信号段处理结束。所述步骤3中在(0hz-500hz]范围内均匀地分为8个子带,每个子带的带宽为500/8=62.5hz,系统的频率分辨率为df,所以在第一部分每个子带包含的谱线数为sub1=62.5/df根。所述步骤3中在(500hz-1000hz]范围内均匀地分为4个子带,每个子带的带宽为500/4=125hz,所以在第二部分每个子带包含的谱线数为sub2=125/df根。所述步骤3中在(1000hz-2000hz]范围内均匀地分为4个子带,每个子带的带宽为1000/4=250hz,所以在第二部分每个子带包含的谱线数为sub3=250/df根。所述步骤3中在(2000hz-4000hz]范围内均匀地分为4个子带,每个子带的带宽为2000/4=500hz,所以在第二部分每个子带包含的谱线数为sub4=500/df根。所述步骤3中在(4000hz-8000hz]范围内均匀地分为4个子带,每个子带的带宽为4000/4=1000hz,所以在第二部分每个子带包含的谱线数为sub5=1000/df=根。实施例:以语音信号采样率fs为16000hz,即每秒取16000个样点;帧长为16毫秒,即0.016秒;语音信号长度为1.6秒;每帧之间的重叠度为16毫秒为例。由采样频率和语音帧长可得到每帧语音信号包含16000*0.032=512个样点;频率分辨率df=fs/512=16000hz/512=31.25hz;1.6秒长的语音信号共分为1.6/0.016-1=99帧。(0hz-500hz]范围内每个子带包含的谱线数为sub1=62.5/31.25=2根。在(500hz-1000hz]范围内每个子带包含的谱线数为sub2=125/31.25=4根。在(1000hz-2000hz]范围内每个子带包含的谱线数为sub3=250/31.25=8根。在(2000hz-4000hz]范围内每个子带包含的谱线数为sub4=500/31.25=16根。在(400hz-8000hz]范围内每个子带包含的谱线数为sub5=1000/31.25=32根。分别使用常规谱熵法和本发明的基于人耳掩蔽效应划分子带的语音端点检测方法进行对比分析,正确检测率统计结果如表1所示。表1不同信噪比下的语音端点检测结果信噪比15db10db5db常规谱熵法95.8691.4575.48子带能熵法99.9897.8587.82最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的技术人员应当理解,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行同等替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神与范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1