一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种语音的话音与非话音的综合判决方法与流程

2022-03-26 10:20:01 来源:中国专利 TAG:


1.本发明涉及语音处理技术领域,尤其涉及一种语音的话音与非话音的综合判决方法。


背景技术:

2.对于语音的话音与非话音的判决,现有的技术方法大致可分为三种:基于阈值的判决方法、作为分类器的判决方法与基于模型的判决方法。其中,基于阈值的判决方法,也就是语音的端点检测方法,是通过提取语音的时域与频域特征,如短时能量、短时过零率、倒谱系数等,设置合理的门限,达到对话音与非话音的判决;分类器的判决方法,是将语音判决作为话音与非话音的分类问题,利用神经网络与机器学习的方法训练分类器,达到判决的目的;基于模型的方法,是利用一个完整的声学模型,在解码的基础上,通过全局信息进行判决。
3.但是现有的话音与非话音的判决方法,其判决的条件都是基于在需要判决的语音段上,话音含有的是同种类型、信噪比不变的噪声。并且为达到良好的降噪效果,在进行去噪处理时,都假设语音段的初始若干帧的语音为非话音帧,即噪声帧。以上述的初始的若干非话音帧作为本段语音的背景噪声进行降噪与话音的判决。
4.而现有的基于分类器与模型的判决方法,需要对每帧信号都进行话音与非话音的判决,后续还需采取其它方法消除判决所带来的偏差,且为达到对话音信号的准确判决,需要大量不同的训练数据对网络或者模型进行训练与构建,前期所需工作较复杂。
5.因此,现有技术的所需判决的语音的条件比较理想,无法对初始段为话音的语音或者背景噪声复杂、多种信噪比并存的条件下自适应确定噪声帧以及需要语音数据训练网络与构建模型来进行语音的判决。


技术实现要素:

6.本发明的目的在于克服现有技术的缺点,提供了一种语音的话音与非话音的综合判决方法,解决了现有技术中存在的问题。
7.本发明的目的通过以下技术方案来实现:一种语音的话音与非话音的综合判决方法,所述综合判决方法包括:
8.对输入的语音数据进行分帧处理得到第一分帧语音数据和第二分帧语音数据;
9.所述第一分帧语音数据的处理方法包括:
10.对第一分帧语音数据进行预处理,获取每帧语音数据进行时频转换与倒谱系数,并将经过预处理后的数据输入语音识别网络判断语音的话音段占整个语音段的比例;
11.当话音信号占比大于预设值时,通过结合短时自相关法与谱减法的方法进行语音降噪处理;
12.结合短时相关法与能熵比的方法对语音端点进行检测,并将检测后的语音数据中话音语段标记为话音,其余语段标记为非话音,最后输出语音数据;
13.所述第二分帧语音数据的处理方法包括:
14.通过结合短时自相关法与谱减法的方法对第二分帧语音数据进行语音降噪处理;
15.结合短时相关法与能熵比的方法对语音端点进行检测,并将检测后的语音数据中话音语段标记为话音,其余语段标记为非话音,最后输出语音数据。
16.所述对第一分帧语音数据进行预处理,获取每帧语音数据进行时频转换与倒谱系数包括:
17.将第一分帧语音数据通过短时傅里叶变换获取的语音数据的时频参数f(f,t),表示语音信号在时刻为t,频率为f时的信号的相对能量值;
18.对每帧语音数据进行mfcc特征提取,获取其mfcc值、一阶mfcc差分和二阶mfcc差分;
19.对语音信号进行预加重处理,并对预加重后的信号进行加窗处理和对加窗后的信号进行频域转换,获得语音信号在频域上的表示;
20.计算每帧谱线能量通过梅尔滤波器组后的能量谱,并将通过梅尔滤波器组后的能量谱进行取对数处理;
21.将通过梅尔滤波器组后的能量取对数,再进行离散余弦变换得到mfcc特征,对mfcc特征进行一阶差分处理,获取一阶mfcc特征;
22.对一阶mfcc特征做差分运算,得到二阶mfcc特征。
23.所述语音降噪处理包括:
24.对每帧语音数据xn进行短时自相关处理,获得当前帧的自相关值rn;
25.对获得的每帧自相关值作为新的自相关序列采用设定窗长和窗移的平均值滤波方法进行平滑滤波,得到滤波后的自相关值序列r
′n;
26.将自相关值序列的平均值作为阈值η,当自相关值小于或等于阈值η的帧段作为非话音段,大于阈值η的帧段作为话音段;
27.将确定的非话音段与话音段作为输入,采用谱减法对原始的语音数据xn进行去噪处理,获取降噪后的语音数据x
′n。
28.所述将确定的非话音段与话音段作为输入,采用谱减法对原始的语音数据xn进行去噪处理,获取降噪后的语音数据x
′n包括:
29.对原始的每一帧语音信号xn做快速傅里叶变换,得到变换后的语音信号xn(k);
30.根据xn(k)的幅值|xn(k)|,相位角度非话音段的帧数nis,计算得到非话音段的平均功率谱值d(k);
31.计算经过快速傅里叶变换后的语音信号xn(k)的平均值yn(k),并通过谱减公式得到谱减后的幅值
32.根据谱减后的幅值和相位角利用快速傅里叶逆变换得到降噪后的语音数据x
′n。
33.所述结合短时相关法与能熵比的方法对语音端点进行检测包括:
34.计算短时能量获得每帧信号xn的能量en,并对降噪后的每帧语音信号x
′n计算其快速傅里叶变换后的值x
′n;
35.计算降噪后的每帧语音信号在频域的短时能量e
′n和第k条谱线的能量谱sn(k);
36.计算每帧每个频率分量的归一化谱概率密度函数pn(k)、每帧的谱熵值hn和每帧信号的能熵比efn;
37.计算非话音段信号的能熵比ef
′n,将降噪后的每帧语音信号x
′n替换为降噪后的非话音帧,得到降噪后的非话音帧的能熵比值ef
′n;
38.设置判决门限阈值t1与t2,并计算语音信号的能熵比efn与门限阈值t2的交点n2,n3,话音段的起止点位于n2,n3的时间间隔外;
39.从起点n2向左、终点n3向右搜索,分别找到语音信号的能熵比efn与门限阈值t1的交点n1,n4,n1为语音段的起点,n4为语音段的终点。
40.所述语音识别网络包括三层卷积层、三层池化层和三层全连接层;第一层卷积层:卷积核大小为3
×
3,共有32个卷积核,卷积核的移动步长为1,在卷积过程中,对边界不足的部分采用0值进行填充;第一层池化层:采用大小为2
×
2的最大池化,对边界不足的部分采用0值进行填充;第二层卷积层:卷积核大小为3
×
3,共有64个卷积核,其余设置与第一层卷积层相同;第二层池化层的设置与第一层池化层设置相同;第三层卷积层:卷积核大小为3
×
3,共有1024个卷积核,其余设置与第一层卷积层相同;第三层池化层的设置与第一层池化层设置相同;第一层全连接层与第二层全连接层的输出都为1024,第三层全连接层的输出为2,代表所需分类的个数;每一次卷积后,采用relu激活函数对卷积后的值进行激活操作;网络在训练过程中,采用adam随机梯度下降法对网络的参数进行更新。
41.所述第一分帧语音数据包括对语音数据按照每帧时间为1s,每帧之间重叠的时间为0.7s进行处理后的语音数据;所述第二分帧语音数据包括对语音数据按照每帧时间为0.025s,每帧之间重叠的时间为0.01s进行处理后的语音数据。
42.本发明具有以下优点:一种语音的话音与非话音的综合判决方法,通过神经网络识别出包含话音段的语音,再结合自相关性的谱减方法,找出非话的语音段并进行降噪,最后利用降噪后的语音,利用能熵比的方法对话音段进行更加准确的判决,提高了语音判决的适用性,使得在复杂情况下的话音与非话音的判决的适用范围增大,进一步提高方法在语音判决的适用性。
附图说明
43.图1为本发明方法的简要流程示意图;
44.图2为本发明方法的详细流程示意图;
45.图3为mfcc特征提取流程示意图;
46.图4为识别网络数据预处理示意图;
47.图5为卷积神经识别网络结构示意图;
48.图6为识别网络的训练和使用流程示意图;
49.图7为语音降噪流程示意图;
50.图8为端点检测流程示意图;
51.图9为识别网络在测试集上的识别结果示意图;
52.图10为基于短时自相关性与谱减结合的语音去噪方法效果示意图;
53.图11为基于短时自相关性与能熵比结合的端点检测的示意图。
具体实施方式
54.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下结合附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的保护范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。下面结合附图对本发明做进一步的描述。
55.如图1和图2所示,本发明在现有技术的基础上,对现有技术无法判决语音初始段为语音以及背景噪声复杂、多种信噪比并存,以及神经网络与模型需要大量的数据进行网络训练与模型构建的情况,提出一种语音的话音与非话音的综合判决方法,具体包括以下内容。
56.步骤1:将经过ad转换(模拟信号-数字信号转换)的语音信号数据(采样率为fs hz)作为输入的语音数据,对输入的语音数据进行分帧处理,共有两种分帧方式。第一种分帧方式为对语音数据按照每帧时间为1s(长度为fs),每帧之间重叠的时间为0.7s(长度为0.7
×
fs)进行处理。第二种分帧方式为对语音数据按照每帧时间为0.025s(长度为0.025
×
fs),每帧之间重叠的时间为0.01s(长度为0.01
×
fs)进行处理。
57.步骤2:对已进行分帧处理为帧长为fs,帧重叠长度为0.7
×
fs的语音数据进行预处理,对每帧语音数据进行时频转换与mfcc的获取。
58.进一步地,如图3所示,具体包括:
59.步骤2.1将语音数据通过stft获取数据的时频参数f(f,t),代表语音在t时刻,频率为f时的相对能量大小,xn为语音信号,ω(n)为汉明窗函数。式(2-2)中,n代表汉明窗的第n点值的大小,n代表窗长度,选取长度为n=256。
60.f(f,t)=stft(xn,ω(n))
ꢀꢀꢀ
(2-1)
[0061][0062]
步骤2.2对每帧语音数据进行mfcc特征的获取,主要获取其mfcc值、一阶mfcc差分与二阶mfcc差分。
[0063]
步骤2.2.1对语音信号进行预加重处理,xn(i)为第i个语音信号幅值。
[0064]
x
′n(i)=xn(i)-0.97
×
xn(i-1)
ꢀꢀꢀ
(2-3)
[0065]
步骤2.2.2对预加重后的信号进行加窗处理与对加窗后的信号进行频域转换,窗函数ω(l)选用汉明窗,长度为256,n为总帧长。获得语音信号在频域上的表示,xn(k)为语音信号在第k条谱线的幅度谱,pn(k)为语音信号在第k条谱线的功率谱。
[0066][0067][0068]
步骤2.2.3计算每帧谱线能量通过梅尔滤波器组后的能量谱,滤波器的个数为22个,梅尔滤波器公式如下,式(2-6)中,mi(k)代表第i个滤波器,k为输入滤波器的第k条谱线,f(i)为第i个滤波器的中心频率。式(2-7)中,f
l
为滤波器的最低频率,fh为滤波器最高频
率,fs为采样频率。
[0069][0070][0071][0072]
步骤2.2.4将通过梅尔滤波器组后的能量取对数,再进行离散余弦变换得到mfcc特征。
[0073]
步骤2.2.5对mfcc特征进行一阶差分处理,获取一阶mfcc特征,差分运算公式如下,其中,d(j)表示第j个一阶差分,c(j l)表示第j l个倒谱系数的阶数,z表示差分帧的区间。
[0074][0075]
步骤2.2.6对一阶mfcc特征做差分运算,运算步骤与公式(2-9)相同,得到二阶mfcc特征。
[0076]
经过预处理,获得的语音信号的时频参数大小为129
×
64,mfcc特征参数的大小为99
×
64,将两部分的参数进行矩阵的拼接,拼接方法如图4所示,最终获得预处理的输出数据的大小为228
×
64。
[0077]
步骤3:如图5和图6所示,将经过预处理的每帧语音数据作为cnn的输入,输入数据的标签为每帧语音数据为话音或者非话音。网络共采用了三层卷积层、三层池化层、三层全连接层。第一层卷积层:卷积核大小为3
×
3,共有32个卷积核,卷积核的移动步长为1,在卷积过程中,对边界不足的部分采用0值进行填充。第一层池化层:采用大小为2
×
2的最大池化,对边界不足的部分采用0值进行填充。第二层卷积层:卷积核大小为3
×
3,共有64个卷积核,其余设置与第一层卷积层相同。第二层池化层的设置与第一层池化层设置相同。第三层卷积层:卷积核大小为3
×
3,共有1024个卷积核,其余设置与第一层卷积层相同。第三层池化层的设置与第一层池化层设置相同。第一层全连接层与第二层全连接层的输出都为1024,第三层全连接层的输出为2,代表所需分类的个数。每一次卷积后,采用relu激活函数对卷积后的值进行激活操作。网络在训练过程中,采用adam随机梯度下降法对网络的参数进行更新。
[0078]
步骤4:语音数据通过神经网络进行判决后,统计该段语音中,被神经网络识别为语音的话音段占整个语音段的比例。每次统计的整个语音段的长度为10s。
[0079]
步骤5:当该段语音中,话音信号占比小于5%时,判断该段语音为非话音段,对其标记为非话音。
[0080]
步骤6:语音降噪采用了短时自相关法与谱减法相结合的方法进行语音的降噪。
[0081]
如图7所示,进一步地,步骤6具体包括以下内容:
[0082]
步骤6.1对每帧语音数据xn进行短时自相关处理,获取当前帧的自相关值rn。
[0083]
[0084]
其中,k为第k帧的语音数据,n为该帧语音数据的采样个数。
[0085]
步骤6.2对获得的每帧自相关值作为新的自相关值序列rn,进行平滑滤波,采用窗长为10、窗移为1的平均值滤波方法,得到滤波后的自相关值序列r
′n。
[0086]r′n=mean(rn

r
n 9
),1≤n≤k-9
ꢀꢀꢀ
(6-2)
[0087]
其中,n为采样后的第n时的语音值,k为采样的总个数。
[0088]
步骤6.3将序列的平均值作为阈值η,当自相关值小于或等于阈值η的帧段作为非话音段,大于阈值η的帧段作为话音段。
[0089]
将自相关法确定的非话音段gn作为输入,采用谱减法对原始的语音数据xn进行去噪处理,获取降噪后的语音数据x
′n。
[0090]
步骤6.4对原始的每一帧语音信号xn做快速傅里叶变换(fft),n为总帧长,xn(k)为语音信号第n帧第k条谱线的谱值。对于xn(k)的幅值为|xn(k)|,角度为(k)|,角度为
[0091][0092]
步骤6.5非话音段的帧数为nis,将非话音段gn进行fft处理,得到dn(k),代表非话音信号第n帧第k条谱线的谱值。求出非话音段的平均功率谱值d(k)。
[0093][0094]
步骤6.6将经过fft变换后的xn计算其平均值yn(k)。
[0095][0096]
步骤6.7通过谱减公式,得到谱减后的幅值其中,a=4,为过减因子;b=0.001,为增益补偿因子。
[0097][0098]
步骤6.8得到谱减后的幅值以及原本的相位角利用快速傅里叶反变换(ifft),求出降噪后的语音x
′n。
[0099]
步骤7:语音端点检测采用了短时自相关法与能熵比的方法进行端点的检测。自相关阶段的处理与语音降噪阶段的处理方式相同,相应方法可见公式(6-1)和(6-2),通过自相关法获得降噪后的语音的话音段与非话音段。将降噪后的语音的话音段与非话音段作为输入,通过能熵比的方法,确定话音段与非话音段的起止位置。
[0100]
如图8所示,进一步地,步骤7具体包括以下内容:
[0101]
7.1能熵比为每帧信号的能量与谱熵的比值,通过计算短时能量获得每帧信号xn的能量en。n为每帧信号的采样点数。
[0102][0103]
语音信号的谱熵值的获得如下所示。
[0104]
步骤7.2对降噪后的每帧信号x
′n计算其fft变换后的值x
′n,k表示第k条谱线。
[0105][0106]
步骤7.3计算降噪后的每帧语音在频域的短时能量e
′n,n为fft的长度,只取正频
率的部分,为xn(k)的共轭。
[0107][0108]
步骤7.4计算第k条谱线的能量谱sn(k)。
[0109][0110]
步骤7.5计算每帧每个频率分量的归一化谱概率密度函数pn(k)。
[0111][0112]
步骤7.6计算每帧的谱熵值hn。
[0113][0114]
步骤7.7计算每帧信号的能熵比efn。
[0115][0116]
步骤7.8计算非话音段信号的能熵比ef
′n。计算过程与公式(7-2)和(7-7)相同,将降噪后的每帧信号x
′n替换为降噪后的非话音帧,得到降噪后的非话音帧的能熵比值ef
′n。
[0117]
步骤7.9设置判决阈值t1与t2,me为每帧信号的能熵比的最大值,δ为判决阈值的自适应参数。
[0118]
me=max(efn)
ꢀꢀꢀ
(7-8)
[0119]
δ=me-mean(ef
′n)
ꢀꢀꢀ
(7-9)
[0120]
t1=0.05
×
δ mean(ef
′n)
ꢀꢀꢀ
(7-10)
[0121]
t2=0.1
×
δ mean(ef
′n)
ꢀꢀꢀ
(7-11)
[0122]
步骤7.10门限的初次判断,计算语音信号的能熵比efn与门限t2的交点n2,n3,话音段的起止点位于n2,n3的时间间隔外。
[0123]
步骤7.11从初次判决起点n2向左、终点n3向右搜索,分别找到语音信号的能熵比efn与门限t1的交点n1,n4。n1为语音段的起点,n4为语音段的终点。
[0124]
步骤8:对经过话音端点检测后的语音数据进行标记,对话音段标记为话音,其余语段标记为非话音段。
[0125]
步骤9:语音数据的输出,标记为话音段的语音按照时间顺序拼接为一整段新的语音段,将该语音段以fs hz的采样率进行数据保存,保存格式为.wav文件。
[0126]
本发明针对在实际语音信号中,非话音信号占据绝大多数时间,且非话音信号的类型与能量复杂多变的情况,结合了语音信号的时频参数与倒谱特征参数,设计了语音信号识别的卷积神经网络。神经网络的输入为经过归一化的语音信号的时频参数与倒谱特征参数信息,通过三层卷积层、三层池化层与三层全连接层,对当前语音信号进行判决,能够大致快速判断当前语音段是否包含有话音信息,若包含话音信号,则进行后续的话音段点检测;若不含有话音信号,则不对该段语音信号进行后续处理,提高了语音判决的速度,减少了判决时间。
[0127]
网络的识别结果如图9所示,结合了语音信号的时频参数与倒谱特征参数的神经网络能够较为准确的识别出语音信号中的话音段与非话音段信号。
[0128]
本发明针对在实际情况中,需进行语音去噪的语音段的初始若干帧并不是非话音帧的情况,结合语音短时自相关性与谱减法的优点,设计了一种新的语音去噪方法。该方法
首先通过对每帧语音信号计算短时自相关性,结合阈值筛选出非话音的语段。再将筛选出的非话音段作为谱减法中的噪声段,对原始语音信号进行去噪的处理。该方法通过自适应确定语音的非话音段实现了对语音信号的去噪操作,解决现有方法需人工确定非话音段的弊端,提高了语音去噪的智能性与去噪效果。
[0129]
结果如图10所示,在语音的初始为话音段的情况下,本发明所提出的方法自适应地确定了语音信号的非话音段,能够对语音信号进行准确的降噪,且降噪效果较为优秀。
[0130]
本发明针对在实际情况中,需进行端点检测语音段的初始若干帧并不是非话音帧的情况,结合语音短时自相关性与能熵比方法的优点,设计了一种新的话音端点检测方法。该方法首先通过对每帧语音信号计算短时自相关性,结合阈值大致筛选出非话音的语段。再计算筛选出的非话音段的能量与谱熵的比值,确定后续话音检测的阈值。再对语音信号按帧计算其能熵比,结合确定的阈值进行话音的端点检测。该方法通过自适应确定语音的非话音段实现了对语音信号的话音端点检测,解决现有方法需人工确定非话音段的弊端,提高了话音端点检测的智能性与检测的准确性。
[0131]
结果如图11所示,在语音的初始为话音段的情况下,本发明所提出的端点检测方法能够自适应地确定了语音信号的非话音段,对语音信号进行判决与端点检测,且判决结果较为准确。
[0132]
以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献