语音活性检测方法、相关装置和设备与流程

文档序号:13806218阅读:194来源:国知局
语音活性检测方法、相关装置和设备与流程

本发明涉及计算机领域,尤其涉及语音活性检测方法、语音活性检测装置和语音活性检测设备。



背景技术:

语音识别是一门交叉学科。近二十年来,语音识别技术取得显著进步,开始从实验室走向市场。随着语音识别技术的发展,语音识别技术将进入工业、家电、通信、汽车电子、医疗、家庭服务、消费电子产品等各个领域。

语音活性检测(voiceactivitydetection,vad)又称语音活动检测、语音端点检测、语音边界检测等等,是用于语音处理的技术,用于检测语音信号是否存在。vad是语音识别技术的标配。

现有技术中,vad算法是根据每个语音帧计算出来的特征(例如短时能量,谱熵,谱熵能量积等)与阀值进行比较,从而来判断该语音帧是不是语音帧。然而,基于短时能量和谱熵的方案,其阀值不好设置;不同的设备,不同的录音环境对阀值的影响很大;基于谱熵能量积的方案往往不能有效的反应语音帧的特性,不能准确检测语音段。



技术实现要素:

本发明实施例所要解决的技术问题在于,提供一种语音活性检测方法、一种语音活性检测装置、一种语音活性检测设备以及一种计算机可读存储介质,解决现有技术基于短时能量和谱熵的方案阀值设置受录音环境影响大,或基于谱熵能量积的方案不能有效的反应语音帧的特性,造成不能准确检测语音段的技术问题。

为了解决上述技术问题,本发明实施例第一方面公开了一种语音活性检测方法,包括:

接收语音数据;所述语音数据包括多帧语音信号;

计算一帧语音信号的能量以及谱熵;

将所述语音信号的能量开根号,或者将所述语音信号的谱熵开根号;并根据开根号后的能量或者开根号后的谱熵,计算所述语音信号的谱熵能量根;

在所述语音信号的谱熵能量根小于第一预设阈值的情况下,判断出所述语音信号为非语音帧;或者在所述语音信号的谱熵能量根不小于第一预设阈值的情况下,判断出所述语音信号为语音帧。

本发明实施例第二方面公开了一种语音活性检测装置,包括用于执行上述第一方面的方法的单元。

本发明实施例第三方面公开了一种语音活性检测设备,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储应用程序代码;所述处理器被配置用于调用所述程序代码,执行上述第一方面的方法。

本发明实施例第四方面公开了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如上述第一方面的方法。

实施本发明实施例,在接收语音数据,计算一帧语音信号的能量以及谱熵后,将该语音信号的能量开根号,或者将该语音信号的谱熵开根号;并根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根,然后根据该谱熵能量根来判断该语音信号是否为语音帧。由于该谱熵能量根可以将时域和频域的特性结合得更加紧密,解决了现有技术中基于短时能量和谱熵的方案阀值设置受录音环境影响大,并且单一的特征很容易受噪音的影响而导致端点检测准确率很低的问题,也解决了基于谱熵能量积的方案时域和频域的特征结合不紧密,不能有效的反应语音帧的特性,造成不能准确检测语音段的技术问题,大大提高了语音检测的准确性。

附图说明

为了说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

图1是图1是本发明实施例提供的语音活性检测方法的场景构架示意图;

图2是本发明实施例提供一种语音活性检测方法的示意流程图;

图3是本发明提供的语音活性检测方法的另一实施例的流程示意图;

图4是本发明实施例提供的语音活性检测装置的结构示意图;

图5是本发明提供的语音活性检测装置的另一实施例的结构示意图;

图6是本发明实施例提供的语音活性检测设备的结构示意图;

图7是本发明提供的语音活性检测设备的另一实施例的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。

还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。

还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

具体实现中,本发明实施例中描述的终端包括但不限于诸如具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的移动电话、膝上型计算机或平板计算机之类的其它便携式设备。还应当理解的是,在某些实施例中,该设备并非便携式通信设备,而是具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的台式计算机。

在接下来的讨论中,描述了包括显示器和触摸敏感表面的终端。然而,应当理解的是,终端可以包括诸如物理键盘、鼠标和/或控制杆的一个或多个其它物理用户接口设备。

为了更好的理解本发明实施例提供的一种语音活性检测方法、语音活性检测装置以及语音活性检测设备,下面先对本发明实施例适用的语音活性检测方法的场景构架进行描述。参阅图1,图1是本发明实施例提供的语音活性检测方法的场景构架示意图。如图1所示,语音识别系统几乎都要进行语音活性检测,例如用户打开智能终端(如智能手机)进行语音指令的输入时,智能手机在采集语音数据或语音信号的时候,需要进行语音活性检测;又如,用户在家里与智能机器人进行语音交互的时候,该智能机器人也需要进行语音活性检测,以检测出语音信号的语音开始帧,然后再进行识别,得出并执行具体操控指令。

本发明实施例中的智能终端可以包括但不限于任何一种基于智能操作系统的手持式电子产品,其可与用户通过键盘、虚拟键盘、触摸板、触摸屏以及声控设备等输入设备来进行人机交互,诸如智能手机、平板电脑、个人电脑、智能机器人、医院或出入境等公共场所的智能语音自助一体机等。其中,智能操作系统包括但不限于任何通过向移动设备提供各种移动应用来丰富设备功能的操作系统,诸如安卓(androidtm)、iostm、windowsphonetm等。

需要说明的是,本申请提供的语音活性检测方法的场景构架不限于图1所示。

基于图1所示的语音活性检测方法的场景构架,参见图2,是本发明实施例提供一种语音活性检测方法的示意流程图,可以包括以下步骤:

步骤s200:接收语音数据;该语音数据包括多帧语音信号;

具体地,语音活性检测设备(或语音识别系统)可以通过自身麦克风等单元采集语音数据(即语音信号),从而接收到语音数据,也可以与外部设备通过数据通信接收语音数据。该语音数据包括多帧语音信号。

步骤s202:计算一帧语音信号的能量以及谱熵;

具体地,语音活性检测设备针对接收到的多帧语音信号,可以按照语音信号的帧顺序,计算每帧语音信号的能量以及谱熵。计算每个语音帧(即每帧语音信号)的短时能量(即能量),可以通过如下公式1来计算:

其中m表示帧长,l表示第l帧语音,x(n.l)表示第l帧语音中的第n个点的幅度。

谱熵是通过检测语音功率谱的平坦程度,从而达到语音端点检测的目的。对于一段频带很宽的语音信号来说,非语音段的功率谱在各频段的分布比较平稳,反映到信息量上,认为其所含的平均信息量即谱熵较大;而语音段的功率谱集中于某几个频段,起伏突变大,那么它所含的平均信息量即谱熵较小。计算谱熵分为两步:

1)快速傅里叶变换(fastfouriertransformation,fft);由于信号在时域上的变换通常很难看出信号的特性,所以通常将它转换为频域上的能量分布来观察,不同的能量分布,就能代表不同语音的特性。所以在乘上汉明窗后,每帧还必须再经过快速傅里叶变换以得到在频谱上的能量分布。对分帧加窗后的各帧信号进行快速傅里叶变换得到各帧的频谱。并对语音信号的频谱取模平方得到语音信号的功率谱。设语音信号的离散傅氏变换(discretefouriertransform,dft)可以如公式2:

公式2中,x(k,l)表示第l帧的第k个频段的谱幅度值;n是fft的变化长度(本技术方案中n为256)。

2)计算概率密度;由于语音信号更类似于功率信号,利用语音功率谱构造熵函数,同时考虑到功率谱的对称性,只取fft变换前一半的分量点,节省了计算,则其第l帧的带噪语音功率谱总能量可以如公式3:

第1帧第k个频段所对应的概率密度函数可以如公式4:

p(k,l)=|x(k,l)|2/esum(l)公式4

其谱熵可以如公式5:

步骤s204:将该语音信号的能量开根号,或者将该语音信号的谱熵开根号;并根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根;

具体地,本发明实施例中的谱熵能量根是一个新的语音特征。可以包括以下三种计算方式:

1)将语音信号的能量开根号,然后与语音信号的谱熵乘积,计算出语音信号的谱熵能量跟,如公式6:

2)将语音信号的谱熵开根号,然后与语音信号的能量乘积,计算出语音信号的谱熵能量跟,如公式7:

3)将语音信号的能量开根号,以及将语音信号的谱熵开根号,然后将开根号后的能量与开根号后的谱熵乘积,计算出语音信号的谱熵能量跟,如公式8:

步骤s206:在该语音信号的谱熵能量根小于第一预设阈值的情况下,判断出该语音信号为非语音帧;或者在该语音信号的谱熵能量根不小于第一预设阈值的情况下,判断出该语音信号为语音帧。

具体地,本发明实施例中的第一预设阈值可以为研发人员根据实验数据来设定的阈值,也可以该语音活性检测设备对当前语音数据进行预先的分析后设定的阈值。

实施本发明实施例,在接收语音数据,计算一帧语音信号的能量以及谱熵后,将该语音信号的能量开根号,或者将该语音信号的谱熵开根号;并根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根,然后根据该谱熵能量根来判断该语音信号是否为语音帧。由于该谱熵能量根可以将时域和频域的特性结合得更加紧密,解决了现有技术中基于短时能量和谱熵的方案阀值设置受录音环境影响大,并且单一的特征很容易受噪音的影响而导致端点检测准确率很低的问题,也解决了基于谱熵能量积的方案时域和频域的特征结合不紧密,不能有效的反应语音帧的特性,造成不能准确检测语音段的技术问题,大大提高了语音检测的准确性。

在另外一个实施方式中,如图3示出的本发明提供的语音活性检测方法的另一实施例的流程示意图,可以包括如下步骤:

步骤s300:接收语音信号;

具体地,如上述图2实施例中的步骤s200,这里不进行赘述。

步骤s302:对语音信号进行预加重;

具体地,将经采样后的数字语音信号s(n)通过一个高通滤波器(highpassfilter),如下公式9:

h(z)=1-a*z-1,0.9<a<1.0.公式9

其中,a可以取0.95、0.96等。经过预加重后的信号可以如公式10:

s(n)=s(n)-a×s(n-1).公式10

预加重的目的是提升高频部分,使信号的频谱变得平坦,保持在低频到高频的整个频带中,能用同样的信噪比求频谱。同时,也是为了消除发生过程中声带和嘴唇的效应,来补偿语音信号受到发音系统所抑制的高频部分,也为了突出高频的共振峰。

步骤s304:对预加重后的语音信号进行去除直流;

具体地,直流是频域的慢变成分,一般都是因为信号采集过程中仪器所致,如果需要进行频谱分析,那么因为直流的频谱泄漏,会严重影响低频谱的分析,直流一般不随时间变化,不反应信号的趋性,去除直流的公式可以如下公式11:

v[n]=s[n]-s[n-1]+a*v[n-1]公式11

其中,s[n]表示原始语音信号,v[n]表示去除直流后的语音信号,a可以取0.9997。

步骤s306:进行语音分帧;

具体地,对去除直流后的语音信号进行语音分帧,分成若干个语音帧。为了方便对语音分析,可以将语音分成一个个小段,称之为:帧。先将c个采样点集合成一个观测单位,称为帧。通常情况下c的值为256或512,涵盖的时间约为10~30ms左右。为了避免相邻两帧的变化过大,因此会让两相邻帧之间有一段重叠区域,此重叠区域包含了q个取样点,本发明实施例中q的值可以为c的1/2或1/3,例如若c取256,q可以取128)。通常语音识别所采用语音信号的采样频率为8khz或16khz,以16khz来说,若帧长度为256个采样点,则对应的时间长度是256/16000×1000=16ms。

步骤s308:对每一个语音帧加汉明窗;

语音在长范围内是不停变动的,没有固定的特性无法做处理,所以将每一帧代入窗函数,窗外的值设定为0,其目的是消除各个帧两端可能会造成的信号不连续性。常用的窗函数有方窗、汉明窗和汉宁窗等,根据窗函数的频域特性,常采用汉明窗。将每一帧乘以汉明窗,以增加帧左端和右端的连续性。假设分帧后的信号为s(n),n=0,1...,n-1,n为帧的大小,那么乘上汉明窗后,如下公式12:

s′(n)=s(n)×w(n)公式12

w(n)形式可以如下公式13:

其中,不同的a值会产生不同的汉明窗,本发明实施例中a可以取0.46。

步骤s310:计算一帧语音信号的能量以及谱熵;

具体可以参考上述图2实施例中的步骤s202,这里不进行赘述。

步骤s312:计算该多帧语音信号中的前n帧的谱熵能量根均值he(0)和谱熵均值h(0);

具体地,一般而言语音开始的一段时间内为无音或环境噪音,本发明实施例假设语音前n帧为背景噪音(例如n可以取15),计算其谱熵能量根均值he(0)为判决的阀值,其计算公式可以如下公式14:

其中,该h(l)为第l帧语音信号的谱熵,该e(l)为第l帧语音信号的谱熵的短时能量;本发明实施例中的第一预设阈值可以包括αhe(0),该α的取值范围包括[1,2]。

在其中一个实施例中,步骤s312在计算前n帧的谱熵能量根均值he(0)时,也可以计算前n帧的谱熵均值h(0),其计算公式可以如下公式15:

本发明实施例通过在检测语音开始过程会把当前帧计算出来的谱熵和谱熵能量根除以当前的帧数加到h(0)和he(0)上以增大阀值来避免语音偶然的波动影响判决,具体表现为语音并没有开始而判决认为语音开始了。从而进一步提高了检测的准确性。

步骤s314:计算语音信号中的前n帧的方差;

具体地,在计算出前n帧的谱熵均值h(0)之后,本发明实施例还可以引入方差的概念,也就是说,计算该前n帧的方差,具体可以如下公式16:

步骤s316:在判断出该方差大于第二预设阈值的情况下,重新执行计算语音信号中的前n帧的谱熵能量根均值he(0)和谱熵均值h(0);

具体地,本发明实施例中的第二预设阈值的取值范围可以包括[0.2,0.5],例如该第二预设阈值为0.3,那么当方差sq(0)大于0.3时,即认为语音存在非平稳噪音,此时计算的h(0)和he(0)失去了价值,需要重新计算前n帧的谱熵能量根均值he(0)和谱熵均值h(0);从而可以提高判决方法抗非平稳噪音能力。

步骤s318:通过公式来计算第k帧语音信号的谱熵能量根he(k);

具体地,该该k大于该n。将前n帧之后的后续语音帧计算得到的能量和谱熵代入公式得到后续语音帧的谱熵能量根。

步骤s320:在该语音信号的谱熵能量根小于第一预设阈值的情况下,判断出该语音信号为非语音帧;或者在该语音信号的谱熵能量根不小于第一预设阈值的情况下,判断出该语音信号为语音帧。

具体地,可以参考上述图2实施例中的步骤s206,这里不进行赘述。

步骤s322:在判断出连续的p帧语音信号的谱熵能量根小于第一预设阈值的情况下,将该谱熵能量根均值he(0)以及该h(0)乘以预设系数β;

具体地,本发明实施例的p的取值范围可以包括[30,60],通过判断出连续p帧;预设系数β可以大于0小于1,例如预设系数β为0.4。本发明实施例通过将乘以预设系数β以后的谱熵能量根均值he(0)以及h(0)作为新的谱熵能量根均值he(0)以及h(0),可以在判决过程中加入了自适应阈值机制,以自适应地调整本发明实施例的第一预设阈值,改善语音静音段和端点起点检测段检测不准的问题。

步骤s324:在判断出连续的m帧语音信号为语音帧的情况下,确定语音开始;

具体地,本发明实施例中的m的取值范围可以包括[5,15],例如可以取6。该m帧语音信号中的第一帧语音信号为第一帧语音帧。

步骤s326:在判断出连续的r帧语音信号为非语音帧的情况下,确定语音结束;

具体地,本发明实施例中的r的取值范围可以包括[40,80],例如可以取50。

步骤s328:在判断出连续的r帧语音信号中不存在相邻的两帧为语音帧的情况下,确定语音结束。

具体地,在检测语音结束的过程中,还可以包括:若连续的r帧语音信号中不存在相邻的两帧(即连续两帧)为语音帧,那么可以确定为语音结束;若当判断出有连续两帧(即相邻的两帧)为语音帧,那么不认定为语音结束,并重新开始语音结束的检测,例如重新判断连续的r帧语音信号中是否不存在相邻的两帧为语音帧。因为,针对某一个本来不是语音帧的检测,若出现误检(检测是语音帧)时,例如连续的r帧语音信号中只有其中的1帧是语音帧,使得语音本该被检测为结束,但实际上没有检测出语音结束;因此通过步骤s328,可以解决语音本该结束而判决没有结束的问题,增强了判决的鲁棒性。

本发明的其中一个实施例中,在步骤s310计算一帧语音信号的能量以及谱熵之后,还可以包括:当该语音信号的能量大于第三预设阈值的情况下,丢弃该语音信号;或者;当该语音信号的能量小于第四预设阈值的情况下,丢弃该语音信号。

具体地,本发明实施例中的第三预设阈值可以为1.15×1010,第四预设阈值可以为1000。通过判断语音信号的能量是否大于第三预设阈值,或是否小于第四预设阈值,可以丢弃一些硬件导致的噪音,使得语音检测更加准确。

实施本发明实施例,在接收语音数据,计算一帧语音信号的能量以及谱熵后,将该语音信号的能量开根号,或者将该语音信号的谱熵开根号;并根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根,然后根据该谱熵能量根来判断该语音信号是否为语音帧。由于该谱熵能量根可以将时域和频域的特性结合得更加紧密,解决了现有技术中基于短时能量和谱熵的方案阀值设置受录音环境影响大,并且单一的特征很容易受噪音的影响而导致端点检测准确率很低的问题,也解决了基于谱熵能量积的方案时域和频域的特征结合不紧密,不能有效的反应语音帧的特性,造成不能准确检测语音段的技术问题,大大提高了语音检测的准确性。

为了便于更好地实施本发明实施例的上述方案,本发明还对应提供了一种语音活性检测装置,下面结合附图来进行详细说明:

如图4示出的本发明实施例提供的语音活性检测装置的结构示意图,语音活性检测装置40可以包括接收单元400、第一计算单元402、开根号单元404和判断单元406,其中,

接收单元400,用于接收语音数据;该语音数据包括多帧语音信号;

第一计算单元402,计算一帧语音信号的能量以及谱熵;

开根号单元404,用于将该语音信号的能量开根号,或者将该语音信号的谱熵开根号;并根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根;

判断单元406,用于在该语音信号的谱熵能量根小于第一预设阈值的情况下,判断出该语音信号为非语音帧;或者在该语音信号的谱熵能量根不小于第一预设阈值的情况下,判断出该语音信号为语音帧。

具体地,开根号单元404根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根可以具体包括:

在将该语音信号的能量开根号之后,将开根号后的能量乘以该语音信号的谱熵,得到该语音信号的谱熵能量根。或者

在将该语音信号的谱熵开根号之后,将开根号后的谱熵乘以该语音信号的能量,得到该语音信号的谱熵能量根。或者

在将该语音信号的谱熵开根号,以及将该语音信号的谱熵开根号之后,将开根号后的能量乘以开根号后的谱熵,得到该语音信号的谱熵能量根。

在其中的一个实施例中,如图5示出的本发明提供的语音活性检测装置的另一实施例的结构示意图,语音活性检测装置40包括接收单元400、第一计算单元402、开根号单元404和判断单元406,还可以包括:第二计算单元408、阈值调整单元4010、方差计算单元4012、语音开始确定单元4014、第一语音结束确定单元4016、第二语音结束确定单元4018和语音丢弃单元4020,其中,

第二计算单元408,用于在第一计算单元402计算一帧语音信号的能量以及谱熵之后,开根号单元404将该语音信号的能量开根号,或者将该语音信号的谱熵开根号之前,计算该多帧语音信号中的前n帧的谱熵能量根均值he(0);其中

该h(l)为第l帧语音信号的谱熵,该e(l)为第l帧语音信号的谱熵的短时能量;

该第一预设阈值包括αhe(0),该α的取值范围包括[1,2]。

开根号单元404可以具体用于通过公式来计算第k帧语音信号的谱熵能量根he(k);该该k大于该n。

阈值调整单元4010,用于开根号单元404计算该语音信号的谱熵能量根之后,判断单元406判断出该语音信号为语音帧之前,在判断出连续的p帧语音信号的谱熵能量根小于第一预设阈值的情况下,将该谱熵能量根均值he(0)以及该h(0)乘以预设系数β,该预设系数β大于0小于1。

方差计算单元4012,用于在第二计算单元408计算语音信号中的前n帧的谱熵能量根均值he(0)之后,计算语音信号中的前n帧的方差;若该方差大于第二预设阈值的情况下,则重新执行该计算语音信号中的前n帧的谱熵能量根均值he(0)的步骤。

语音开始确定单元4014,用于在判断单元406判断出该语音信号为语音帧之后,在判断出连续的m帧语音信号为语音帧的情况下,确定语音开始;该m帧语音信号中的第一帧语音信号为第一帧语音帧。

第一语音结束确定单元4016,用于在判断单元406判断出该语音信号为非语音帧之后,在判断出连续的r帧语音信号为非语音帧的情况下,确定语音结束。

第二语音结束确定单元4018,用于在判断单元406判断出该语音信号为非语音帧之后,在判断出连续的r帧语音信号中不存在相邻的两帧为语音帧的情况下,确定语音结束。

语音丢弃单元4020,用于在第一计算单元402计算一帧语音信号的能量以及谱熵之后,当该语音信号的能量大于第三预设阈值的情况下,丢弃该语音信号;或者;当该语音信号的能量小于第四预设阈值的情况下,丢弃该语音信号。

需要说明的是,本发明实施例中的语音活性检测装置40为上述图2至图3实施例中的语音活性检测设备,该语音活性检测装置40中各模块的功能可对应参考上述各方法实施例中图2至图3实施例的具体实现方式,这里不再赘述。

为了便于更好地实施本发明实施例的上述方案,本发明还对应提供了一种语音活性检测设备,如图6示出的本发明实施例提供的语音活性检测设备的结构示意图,语音活性检测设备60可以包括括处理器61、输入单元62、输出单元63、存储器64和通信单元65,处理器61、输入单元62、输出单元63、存储器64和通信单元65可以通过总线66相互连接。存储器64可以是高速ram存储器,也可以是非易失性的存储器(non-volatilememory),例如至少一个磁盘存储器,存储器64包括本发明实施例中的flash。存储器64可选的还可以是至少一个位于远离前述处理器61的存储系统。存储器64用于存储应用程序代码,可以包括操作系统、网络通信模块、用户接口模块以及语音活性检测程序,通信单元65用于与外部单元进行信息交互;处理器61被配置用于调用该程序代码,执行以下步骤:

通过通信单元65接收语音数据;该语音数据包括多帧语音信号;或者该语音活性检测设备60还可以包括语音采集模块,通过该语音采集模块接收语音数据;

计算一帧语音信号的能量以及谱熵;

将该语音信号的能量开根号,或者将该语音信号的谱熵开根号;并根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根;

在该语音信号的谱熵能量根小于第一预设阈值的情况下,判断出该语音信号为非语音帧;或者在该语音信号的谱熵能量根不小于第一预设阈值的情况下,判断出该语音信号为语音帧。

具体地,处理器61根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根,可以包括:

在将该语音信号的能量开根号之后,将开根号后的能量乘以该语音信号的谱熵,得到该语音信号的谱熵能量根。

具体地,处理器61根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根,可以包括:

在将该语音信号的谱熵开根号之后,将开根号后的谱熵乘以该语音信号的能量,得到该语音信号的谱熵能量根。

具体地,处理器61根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根,可以包括:

在将该语音信号的谱熵开根号,以及将该语音信号的谱熵开根号之后,将开根号后的能量乘以开根号后的谱熵,得到该语音信号的谱熵能量根。

具体地,处理器61计算一帧语音信号的能量以及谱熵之后,该将该语音信号的能量开根号,或者将该语音信号的谱熵开根号之前,还可以执行:

计算该多帧语音信号中的前n帧的谱熵能量根均值he(0);其中

该h(l)为第l帧语音信号的谱熵,该e(l)为第l帧语音信号的谱熵的短时能量;

该第一预设阈值包括αhe(0),该α的取值范围包括[1,2]。

具体地,处理器61根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根,可以包括:

通过公式来计算第k帧语音信号的谱熵能量根he(k);该该k大于该n。

具体地,处理器61计算该语音信号的谱熵能量根之后,判断出该语音信号为语音帧之前,还可以执行:

在判断出连续的p帧语音信号的谱熵能量根小于第一预设阈值的情况下,将该谱熵能量根均值he(0)以及该h(0)乘以预设系数β,该预设系数β大于0小于1。

具体地,处理器61计算语音信号中的前n帧的谱熵能量根均值he(0)之后,还可以执行:

计算语音信号中的前n帧的方差;若该方差大于第二预设阈值的情况下,则重新执行该计算语音信号中的前n帧的谱熵能量根均值he(0)的步骤。

具体地,处理器61在该语音信号的谱熵能量根不小于第一预设阈值的情况下,判断出该语音信号为语音帧之后,还可以执行:

在判断出连续的m帧语音信号为语音帧的情况下,确定语音开始;该m帧语音信号中的第一帧语音信号为第一帧语音帧。

具体地,处理器61在该语音信号的谱熵能量根小于第一预设阈值的情况下,判断出该语音信号为非语音帧之后,还可以执行:

在判断出连续的r帧语音信号为非语音帧的情况下,确定语音结束。

具体地,处理器61在该语音信号的谱熵能量根小于第一预设阈值的情况下,判断出该语音信号为非语音帧之后,还可以执行:

在判断出连续的r帧语音信号中不存在相邻的两帧为语音帧的情况下,确定语音结束。

具体地,处理器61计算一帧语音信号的能量以及谱熵之后,还可以执行:

当该语音信号的能量大于第三预设阈值的情况下,丢弃该语音信号;或者;

当该语音信号的能量小于第四预设阈值的情况下,丢弃该语音信号。

在另一个实施例方式中,本发明提供的语音活性检测设备还可以如图7所示的结构,语音活性检测设备70可以为智能终端(如智能手机、平板等),语音活性检测设备70可包括:基带芯片70、存储器75(一个或多个计算机可读存储介质)、通信模块76、外围系统77。这些部件可在一个或多个通信总线74上通信。

外围系统77主要用于实现语音活性检测设备70和用户/外部环境之间的交互功能,主要包括语音活性检测设备70的输入输出装置。具体实现中,外围系统77可包括:触摸屏控制器、摄像头控制器、音频控制器以及传感器管理模块。其中,各个控制器可与各自对应的外围设备(如触摸显示屏78、摄像头79、音频电路710以及传感器711)耦合。需要说明的,外围系统77还可以包括其他i/o外设。

基带芯片70可集成包括:一个或多个处理器71、时钟模块222以及电源管理模块73。集成于基带芯片70中的时钟模块72主要用于为处理器71产生数据传输和时序控制所需要的时钟。集成于基带芯片70中的电源管理模块73主要用于为处理器71、射频模块76以及外围系统提供稳定的、高精确度的电压。

射频模块76用于接收和发送射频信号,包括用户身份识别卡(subscriberidentificationmodule,sim)卡761和无线保真(wirelessfidelity,wi-fi)762,主要集成了终端7的接收器和发射器。射频模块76通过射频信号与通信网络和其他通信设备通信。具体实现中,射频模块76可包括但不限于:天线系统、射频(radiofrequency,rf)收发器、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、编译码器(codec)芯片、sim卡和存储介质等。在一些实施例中,可在单独的芯片上实现射频模块76。

存储器75与处理器71耦合,用于存储各种软件程序和/或多组指令。具体实现中,存储器75可包括高速随机存取的存储器,并且也可包括非易失性存储器,例如一个或多个磁盘存储设备、闪存设备或其他非易失性固态存储设备。存储器75可以存储操作系统。存储器75还可以存储网络通信程序,该网络通信程序可用于与一个或多个附加设备,一个或多个终端设备,一个或多个网络设备进行通信。存储器75还可以存储用户接口程序,该用户接口程序可以通过图形化的操作界面将应用程序的内容形象逼真的显示出来,并通过菜单、对话框以及按键等输入控件接收用户对应用程序的控制操作。

存储器75还可以存储一个或多个应用程序。如图7所示,这些应用程序可包括:语音活性检测程序,图像管理应用程序(例如相册),地图类应用程序(例如谷歌地图),浏览器(例如safaritm,googlechrometm)等等。

本发明中,处理器71可用于读取和执行计算机可读指令。具体的,处理器71可用于调用存储于存储器75中的程序,例如本申请提供的语音活性检测程序,并执行该程序包含的指令,包括以下步骤:

通过射频模块76或者外围设备(如传感器等)接收语音数据;该语音数据包括多帧语音信号;

计算一帧语音信号的能量以及谱熵;

将该语音信号的能量开根号,或者将该语音信号的谱熵开根号;并根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根;

在该语音信号的谱熵能量根小于第一预设阈值的情况下,判断出该语音信号为非语音帧;或者在该语音信号的谱熵能量根不小于第一预设阈值的情况下,判断出该语音信号为语音帧。

具体地,处理器71根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根,可以包括:

在将该语音信号的能量开根号之后,将开根号后的能量乘以该语音信号的谱熵,得到该语音信号的谱熵能量根。

具体地,处理器71根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根,可以包括:

在将该语音信号的谱熵开根号之后,将开根号后的谱熵乘以该语音信号的能量,得到该语音信号的谱熵能量根。

具体地,处理器71根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根,可以包括:

在将该语音信号的谱熵开根号,以及将该语音信号的谱熵开根号之后,将开根号后的能量乘以开根号后的谱熵,得到该语音信号的谱熵能量根。

具体地,处理器71计算一帧语音信号的能量以及谱熵之后,该将该语音信号的能量开根号,或者将该语音信号的谱熵开根号之前,还可以执行:

计算该多帧语音信号中的前n帧的谱熵能量根均值he(0);其中

该h(l)为第l帧语音信号的谱熵,该e(l)为第l帧语音信号的谱熵的短时能量;

该第一预设阈值包括αhe(0),该α的取值范围包括[1,2]。

具体地,处理器71根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根,可以包括:

通过公式来计算第k帧语音信号的谱熵能量根he(k);该该k大于该n。

具体地,处理器71计算该语音信号的谱熵能量根之后,判断出该语音信号为语音帧之前,还可以执行:

在判断出连续的p帧语音信号的谱熵能量根小于第一预设阈值的情况下,将该谱熵能量根均值he(0)以及该h(0)乘以预设系数β,该预设系数β大于0小于1。

具体地,处理器71计算语音信号中的前n帧的谱熵能量根均值he(0)之后,还可以执行:

计算语音信号中的前n帧的方差;若该方差大于第二预设阈值的情况下,则重新执行该计算语音信号中的前n帧的谱熵能量根均值he(0)的步骤。

具体地,处理器71在该语音信号的谱熵能量根不小于第一预设阈值的情况下,判断出该语音信号为语音帧之后,还可以执行:

在判断出连续的m帧语音信号为语音帧的情况下,确定语音开始;该m帧语音信号中的第一帧语音信号为第一帧语音帧。

具体地,处理器71在该语音信号的谱熵能量根小于第一预设阈值的情况下,判断出该语音信号为非语音帧之后,还可以执行:

在判断出连续的r帧语音信号为非语音帧的情况下,确定语音结束。

具体地,处理器71在该语音信号的谱熵能量根小于第一预设阈值的情况下,判断出该语音信号为非语音帧之后,还可以执行:

在判断出连续的r帧语音信号中不存在相邻的两帧为语音帧的情况下,确定语音结束。

具体地,处理器71计算一帧语音信号的能量以及谱熵之后,还可以执行:

当该语音信号的能量大于第三预设阈值的情况下,丢弃该语音信号;或者;

当该语音信号的能量小于第四预设阈值的情况下,丢弃该语音信号。

需要说明的是,本发明实施例中的语音活性检测设备40或语音活性检测设备70为上述图2至图3实施例中的语音活性检测设备,具体可对应参考上述各方法实施例中图2至图3实施例的具体实现方式,这里不再赘述。上述语音活性检测设备40或语音活性检测设备70的结构仅为本发明实施例提供的一个例子,并且,语音活性检测设备40或语音活性检测设备70可具有比示出的部件更多或更少的部件,可以组合两个或更多个部件,或者可具有部件的不同配置实现。

实施本发明实施例,在接收语音数据,计算一帧语音信号的能量以及谱熵后,将该语音信号的能量开根号,或者将该语音信号的谱熵开根号;并根据开根号后的能量或者开根号后的谱熵,计算该语音信号的谱熵能量根,然后根据该谱熵能量根来判断该语音信号是否为语音帧。由于该谱熵能量根可以将时域和频域的特性结合得更加紧密,解决了现有技术中基于短时能量和谱熵的方案阀值设置受录音环境影响大,并且单一的特征很容易受噪音的影响而导致端点检测准确率很低的问题,也解决了基于谱熵能量积的方案时域和频域的特征结合不紧密,不能有效的反应语音帧的特性,造成不能准确检测语音段的技术问题,大大提高了语音检测的准确性。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,该的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1