1.本发明涉及语音增强技术领域,特别涉及一种基于空间特征的语音增强方法、装置及电子设备。
背景技术:2.语音增强在语音信号处理领域中一直扮演着重要角色,传统的语音增强方法主要是先通过估计噪声的谱信息,再将噪声从原始语音谱中减去,但是,突变噪声和随机噪声会使谱信息的估计变得困难,同时传统方法还需要预先对信号做独立性假设和特征分布的高斯性假设,而这些假设相当于对语音增强做了边界限制,导致降噪效果有限。
3.基于此,基于深度学习的神经网络被广泛应用于语音增强领域,使得上述问题得到极大改善;但是,在传统的单麦克风采集的情况下,神经网络的输入特征只包括频谱特征,因此,这样的网络在面对和语音类似的噪声时,降噪效果极其有限。
技术实现要素:4.为了解决现有量化方法精度不足、量化效率较低的问题,本发明实施例提供了一种神经网络的量化方法、装置及电子设备。所述技术方案如下:第一方面,提供了一种基于空间特征的语音增强方法,该方法包括:对双通道带噪语音进行傅里叶变换得到所述双通道带噪语音在频域表示的双通道复数谱;基于波束形成得到所述双通道复数谱在目标语音角度方向的第一单通道复数谱以及所述双通道复数谱在与所述目标语音角度相差预定角度方向的第二单通道复数谱;计算所述第一单通道复数谱的对数功率谱;基于所述第一单通道复数谱的能量与所述第二单通道复数谱的能量计算方向能量比,并对计算得到的方向能量比取对数得到对数方向能量比;将所述对数功率谱和对数方向能量比作为特征输入预训练语音增强神经网络,得到掩蔽值;将所述掩蔽值增加到所述第一单通道复数谱上,并对掩蔽处理后的第一单通道复数谱进行傅里叶逆变换得到增强后的语音。
5.可选的,通过以下步骤得到所述预训练语音增强神经网络:获取训练样本,所述训练样本包括样本双通道带噪语音以及用于与噪声组合进而构成所述样本双通道带噪语音的干净语音;对所述样本双通道带噪语音进行傅里叶变换得到所述样本双通道带噪语音在频域表示的样本双通道复数谱;基于波束形成得到所述样本双通道复数谱在目标语音角度方向的第一样本单通道复数谱以及所述样本双通道复数谱在与所述目标语音角度相差预定角度方向的第二样本单通道复数谱;
计算所述第一样本单通道复数谱的样本对数功率谱;基于所述第一样本单通道复数谱的能量与所述第二样本单通道复数谱的能量计算样本方向能量比,并对计算得到的样本方向能量比取对数得到样本对数方向能量比;将所述样本对数功率谱和样本对数方向能量比作为特征输入初始语音增强神经网络,得到样本掩蔽值;将所述样本掩蔽值增加到所述第一样本单通道复数谱上,并对掩蔽处理后的第一样本单通道复数谱进行傅里叶逆变换得到增强后的样本语音;计算增强后的样本语音与所述干净语音的均方误差得到第一损失值,计算增强后的样本语音与所述干净语音之间的尺度不变失真比得到第二损失值,并利用所述第一损失值和第二损失值计算最终损失值;在所述最终损失值不收敛的情况下,基于所述最终损失值调整所述初始语音增强神经网络,并返回将所述样本对数功率谱和样本对数方向能量比输入初始语音增强神经网络,得到样本掩蔽值的步骤;在所述最终损失值收敛的情况下,将所述初始语音增强神经网络作为所述预训练语音增强神经网络。
6.可选的,计算所述第一单通道复数谱的对数功率谱的步骤,包括:通过以下表达式,计算所述第一单通道复数谱的对数功率谱:其中,表示滤波器,表示双通道带噪语音的频域表示;滤波器的求取表达式为:滤波器的求取表达式为:其中, 表示目标语音角度,与互为转置,为固定滤波器系数,与互为转置,表示目标语音角度方向同性噪声场的归一化相关矩阵,表示目标语音角度方向的导向矢量,表示散射噪声的增益控制系数。
7.可选的,基于所述第一单通道复数谱的能量与所述第二单通道复数谱的能量计算方向能量比的步骤,包括:通过以下表达式,基于所述第一单通道复数谱的能量与所述第二单通道复数谱的能量计算方向能量比: 其中,分母对应的滤波器的计算表达式为:其中,分母对应的滤波器的计算表达式为:
其中,分别取与目标语音角度相差90度和180度,表示方向角度方向的导向矢量,是cholesky分解,表示散射噪声的增益控制系数。
8.第二方面,提供了一种基于空间特征的语音增强装置,该装置包括:傅里叶变换模块,用于对双通道带噪语音进行傅里叶变换得到所述双通道带噪语音在频域表示的双通道复数谱;波束形成模块,用于基于波束形成得到所述双通道复数谱在目标语音角度方向的第一单通道复数谱以及所述双通道复数谱在与所述目标语音角度相差预定角度方向的第二单通道复数谱;特征提取模块,用于计算所述第一单通道复数谱的对数功率谱;基于所述第一单通道复数谱的能量与所述第二单通道复数谱的能量计算方向能量比,并对计算得到的方向能量比取对数得到对数方向能量比;掩蔽值预测模块,用于将所述对数功率谱和对数方向能量比作为特征输入预训练语音增强神经网络,得到掩蔽值;语音增强模块,用于将所述掩蔽值增加到所述第一单通道复数谱上,并对掩蔽处理后的第一单通道复数谱进行傅里叶逆变换得到增强后的语音。
9.可选的,还包括神经网络训练模块,用于获取训练样本,所述训练样本包括样本双通道带噪语音以及用于与噪声组合进而构成所述样本双通道带噪语音的干净语音;对所述样本双通道带噪语音进行傅里叶变换得到所述样本双通道带噪语音在频域表示的样本双通道复数谱;基于波束形成得到所述样本双通道复数谱在目标语音角度方向的第一样本单通道复数谱以及所述样本双通道复数谱在与所述目标语音角度相差预定角度方向的第二样本单通道复数谱;计算所述第一样本单通道复数谱的样本对数功率谱;基于所述第一样本单通道复数谱的能量与所述第二样本单通道复数谱的能量计算样本方向能量比,并对计算得到的样本方向能量比取对数得到样本对数方向能量比;将所述样本对数功率谱和样本对数方向能量比作为特征输入初始语音增强神经网络,得到样本掩蔽值;将所述样本掩蔽值增加到所述第一样本单通道复数谱上,并对掩蔽处理后的第一样本单通道复数谱进行傅里叶逆变换得到增强后的样本语音;计算增强后的样本语音与所述干净语音的均方误差得到第一损失值,计算增强后的样本语音与所述干净语音之间的尺度不变失真比得到第二损失值,并利用所述第一损失值和第二损失值计算最终损失值;在所述最终损失值不收敛的情况下,基于所述最终损失值调整所述初始语音增强神经网络,并返回将所述样本对数功率谱和样本对数方向能量比输入初始语音增强神经网络,得到样本掩蔽值的步骤;在所述最终损失值收敛的情况下,将所述初始语音增强神经网络作为所述预训练语音增强神经网络。
10.可选的,特征提取模块,具体用于通过以下表达式,计算所述第一单通道复数谱的对数功率谱:其中,表示滤波器,表示双通道带噪语音的频域表示;滤波器的求取表达式为:滤波器的求取表达式为:其中, 表示目标语音角度,与互为转置,为固定滤波器系数,与互为转置,表示目标语音角度方向同性噪声场的归一化相关矩阵,表示目标语音角度方向的导向矢量,表示散射噪声的增益控制系数。
11.可选的,特征提取模块,还用于通过以下表达式,基于所述第一单通道复数谱的能量与所述第二单通道复数谱的能量计算方向能量比: 其中,分母对应的滤波器的计算表达式为:其中,分母对应的滤波器的计算表达式为:其中,分别取与目标语音角度相差90度和180度,表示方向角度方向的导向矢量,是cholesky分解,表示散射噪声的增益控制系数。
12.第三方面,提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现上述第一方面所述的基于空间特征的语音增强方法。
13.本发明实施例针对双通道带噪语音利用波束形成技术得到语音的空间特征,将传统对数功率普与空间特征作为神经网络特征,通过深度学习以及掩蔽技术相结合完成语音增强,能够在有效降低噪声的同时较好的避免语音失真。
附图说明
14.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他
的附图。
15.图1是本发明实施例提供的一种基于空间特征的语音增强方法的流程示意图;图2是本发明实施例提供的一种基于空间特征的语音增强装置的结果示意图;图3是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
16.为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
17.参见图1,本发明实施例提供的一种基于空间特征的语音增强方法,该方法包括:s100,对双通道带噪语音进行傅里叶变换得到双通道带噪语音在频域表示的双通道复数谱。
18.s110,基于波束形成得到双通道复数谱在目标语音角度方向的第一单通道复数谱以及双通道复数谱在与目标语音角度相差预定角度方向的第二单通道复数谱。
19.在实施中,波束形成公式如下式(1)所示:(1) 其中,表示只经过波束形成增强的语音的频域表示即单通道复数谱,为固定滤波器系数,表示双通道带噪语音的频域表示即双通道复数谱,并且和均为复数即可通过实部real和虚部image表示,因此公式(1)可以表示分解为公式2和3: (2) (3) s120,计算第一单通道复数谱的对数功率谱。
20.在实施中,可以通过以下表达式(4),计算第一单通道复数谱的对数功率谱lps:(4) 其中,表示滤波器,表示双通道带噪语音的频域表示即双通道复数谱;滤波器的求取表达式为: (5) (6) 其中, 表示目标语音角度,与互为转置,为固定滤波器系数,与互为转置,表示目标语音角度方向同性噪声场的归一化相关矩阵,表示目标语音角度方向的导向矢量,表示散射噪声的增益控制系数。
21.s130,基于第一单通道复数谱的能量与第二单通道复数谱的能量计算方向能量比,并对计算得到的方向能量比取对数得到对数方向能量比。
22.在实施中,可以通过以下表达式(7),基于第一单通道复数谱的能量与第二单通道复数谱的能量计算方向能量比(dpr,directional power ratio):(7)其中,公式(7)中分母对应的滤波器的计算表达式为:(8) (9)其中,分别取与目标语音角度相差90度和180度,表示方向角度方向的导向矢量,是cholesky分解,表示散射噪声的增益控制系数。
23.为了便于对特征进行量化计算,对公式(7)取对数得到对数方向能量比ldpr作为空间特征:(10)s140,将对数功率谱和对数方向能量比作为特征输入预训练语音增强神经网络,得到掩蔽值。
24.在实施中,预训练语音增强神经网络可以基于gru网络设计,具体训练过程包括:获取训练样本,训练样本包括样本双通道带噪语音以及用于与噪声组合进而构成样本双通道带噪语音的干净语音;对样本双通道带噪语音进行傅里叶变换得到样本双通道带噪语音在频域表示的样本双通道复数谱;基于波束形成得到样本双通道复数谱在目标语音角度方向的第一样本单通道复数谱以及样本双通道复数谱在与目标语音角度相差预定角度方向的第二样本单通道复数谱;计算第一样本单通道复数谱的样本对数功率谱;基于第一样本单通道复数谱的能量与第二样本单通道复数谱的能量计算样本方向能量比,并对计算得到的样本方向能量比取对数得到样本对数方向能量比;将样本对数功率谱和样本对数方向能量比作为特征输入初始语音增强神经网络,得到样本掩蔽值;将样本掩蔽值增加到所述第一样本单通道复数谱上,并对掩蔽处理后的第一样本单通道复数谱进行傅里叶逆变换得到增强后的样本语音;计算增强后的样本语音与干净语音的均方误差得到第一损失值,计算增强后的样本语音与干净语音之间的尺度不变失真比得到第二损失值,并利用第一损失值和第二损失值计算最终损失值;在最终损失值不收敛的情况下,基于最终损失值调整所述初始语音增强神经网络,并返回将样本对数功率谱和样本对数方向能量比输入初始语音增强神经网络,得到样
本掩蔽值的步骤;在最终损失值收敛的情况下,将初始语音增强神经网络作为预训练语音增强神经网络。
25.在实施中,可以将第一损失值和第二损失值之和作为最终损失值,具体计算如下公式(11)、(12)和(13):(11)(12)(13)其中,为经过增强后的语音的频域表示,为干净语音的频域表示; 为干净语音的波形信号(即时域信号),为增强后的语音的时域信号,与互为转置。
[0026] s150,将掩蔽值增加到第一单通道复数谱上,并对掩蔽处理后的第一单通道复数谱进行傅里叶逆变换得到增强后的语音。
[0027]
在实施中,得到掩蔽值后如式(14)所示将掩蔽值增加到第一单通道复数谱:(14) 其中,表示掩蔽值,表示只经过波束形成增强的语音的频域表示即单通道复数谱。求得 后进行傅里叶逆变换即可得到增强后的语音。
[0028]
为了验证带噪语音的增强效果,构造了大量的仿真双通道带噪语音,进行神经网络的训练并测试上述方法的语音增强效果,其中,构造的仿真语音的麦克风间距为4cm,语音构造过程中使用aishell-2和采集的15万条语音作为干净语料,使用敲击声、电视噪声、音乐噪声以及audioset中的噪声作为指向性噪声,使用地铁、公交、风声等平稳噪声作为散射噪声。
[0029]
此外,在构造散射噪声的过程中,使用anf-generator将单通道噪声构造为双通道散射噪声,然后使用pyroomacoustics随机选取干净语音、散射噪声和指向性噪声,生成51万条带噪双通道语音,其中50万条用于网络训练,5000条用于训练验证和优化网络,5000条用于网络训练完成后的效果测试。其中,所有构造的音频采样率为16000hz。
[0030]
在最终的网络测试过程中,使用si-sdr,短时可懂度(stoi)和语音质量客观评价指标(pesq)作为最终的评价标准。
[0031]
加入ldpr和不加入ldpr的测试结果如表(1)所示:表(1)测试结果对比
参见图2,本发明实施例提供了一种基于空间特征的语音增强装置,该装置包括:傅里叶变换模块200,用于对双通道带噪语音进行傅里叶变换得到所述双通道带噪语音在频域表示的双通道复数谱;波束形成模块210,用于基于波束形成得到所述双通道复数谱在目标语音角度方向的第一单通道复数谱以及所述双通道复数谱在与所述目标语音角度相差预定角度方向的第二单通道复数谱;特征提取模块220,用于计算所述第一单通道复数谱的对数功率谱;基于所述第一单通道复数谱的能量与所述第二单通道复数谱的能量计算方向能量比,并对计算得到的方向能量比取对数得到对数方向能量比;掩蔽值预测模块230,用于将所述对数功率谱和对数方向能量比作为特征输入预训练语音增强神经网络,得到掩蔽值;语音增强模块240,用于将所述掩蔽值增加到所述第一单通道复数谱上,并对掩蔽处理后的第一单通道复数谱进行傅里叶逆变换得到增强后的语音。
[0032]
在实施中,还包括神经网络训练模块,用于获取训练样本,所述训练样本包括样本双通道带噪语音以及用于与噪声组合进而构成所述样本双通道带噪语音的干净语音;对所述样本双通道带噪语音进行傅里叶变换得到所述样本双通道带噪语音在频域表示的样本双通道复数谱;基于波束形成得到所述样本双通道复数谱在目标语音角度方向的第一样本单通道复数谱以及所述样本双通道复数谱在与所述目标语音角度相差预定角度方向的第二样本单通道复数谱;计算所述第一样本单通道复数谱的样本对数功率谱;基于所述第一样本单通道复数谱的能量与所述第二样本单通道复数谱的能量计算样本方向能量比,并对计算得到的样本方向能量比取对数得到样本对数方向能量比;将所述样本对数功率谱和样本对数方向能量比作为特征输入初始语音增强神经网络,得到样本掩蔽值;将所述样本掩蔽值增加到所述第一样本单通道复数谱上,并对掩蔽处理后的第一样本单通道复数谱进行傅里叶逆变换得到增强后的样本语音;计算增强后的样本语音与所述干净语音的均方误差得到第一损失值,计算增强后的样本语音与所述干净语音之间的尺度不变失真比得到第二损失值,并利用所述第一损失值和第二损失值计算最终损失值;在所述最终损失值不收敛的情况下,基于所述最终损失值调整所述初始语音增强神经网络,并返回将所述样本对数功率谱和样本对数方向能量比输入初始语音增强神经网络,得到样本掩蔽值的步骤;在所述最终损失值收敛的情况下,将所述初始语音增强神经网络作为所述预训练语音增强神经网络。
[0033]
在实施中,特征提取模块220,具体用于通过以下表达式,计算所述第一单通道复数谱的对数功率谱:
其中,表示滤波器,表示双通道带噪语音的频域表示;滤波器的求取表达式为:滤波器的求取表达式为:其中, 表示目标语音角度,与互为转置,为固定滤波器系数,与互为转置,表示目标语音角度方向同性噪声场的归一化相关矩阵,表示目标语音角度方向的导向矢量,表示散射噪声的增益控制系数。
[0034]
在实施中,特征提取模块220,还用于通过以下表达式,基于所述第一单通道复数谱的能量与所述第二单通道复数谱的能量计算方向能量比: 其中,分母对应的滤波器的计算表达式为:其中,分母对应的滤波器的计算表达式为:其中,分别取与目标语音角度相差90度和180度,表示方向角度方向的导向矢量,是cholesky分解,表示散射噪声的增益控制系数。
[0035]
本发明实施例还提供了一种电子设备,如图3所示,包括处理器001、通信接口002、存储器003和通信总线004,其中,处理器001,通信接口002,存储器003通过通信总线004完成相互间的通信,存储器003,用于存放计算机程序;处理器001,用于执行存储器003上所存放的程序时,实现上述 方法,该方法包括:对双通道带噪语音进行傅里叶变换得到所述双通道带噪语音在频域表示的双通道复数谱;基于波束形成得到所述双通道复数谱在目标语音角度方向的第一单通道复数谱以及所述双通道复数谱在与所述目标语音角度相差预定角度方向的第二单通道复数谱;计算所述第一单通道复数谱的对数功率谱;基于所述第一单通道复数谱的能量与所述第二单通道复数谱的能量计算方向能量比,并对计算得到的方向能量比取对数得到对数方向能量比;将所述对数功率谱和对数方向能量比作为特征输入预训练语音增强神经网络,得到掩蔽值;将所述掩蔽值增加到所述第一单通道复数谱上,并对掩蔽处理后的第一单通道复
数谱进行傅里叶逆变换得到增强后的语音。
[0036]
本发明实施例针对双通道带噪语音利用波束形成技术得到语音的空间特征,将传统对数功率普与空间特征作为神经网络特征,通过深度学习以及掩蔽技术相结合从而完成语音增强,能够在有效降低噪声的同时较好的避免语音失真。
[0037]
上述电子设备提到的通信总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0038]
通信接口用于上述电子设备与其他设备之间的通信。
[0039]
存储器可以包括随机存取存储器(random access memory,ram),也可以包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0040]
上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processing,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0041]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk (ssd))等。
[0042]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0043]
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见
方法实施例的部分说明即可。
[0044]
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。