语音降噪方法、装置、设备及介质

文档序号:1339712 发布日期:2020-07-17 浏览:4次 >En<

阅读说明:本技术 语音降噪方法、装置、设备及介质 (Voice noise reduction method, device, equipment and medium ) 是由 丁大为 王哲 嵇望 于 2020-06-10 设计创作,主要内容包括:本发明公开了一种语音降噪方法,涉及机器学习领域,用于解决现有语音降噪计算量大、资源占用多的问题,该方法包括以下步骤:获取语音数据;对所述语音数据进行预处理,并提取预处理后的所述语音数据的多维特征;将所述多维特征输入预设语音降噪模型,得到频带增益系数;将所述语音数据分为若干频带,根据所述频带增益系数过滤所述频带中的噪音数据;将过滤后的所述语音数据恢复成语音数据流,输出所述语音数据流。本发明还公开了一种语音降噪装置、电子设备和计算机存储介质。本发明通过计算频带增益系数,进而实现语音降噪。(The invention discloses a voice noise reduction method, which relates to the field of machine learning and is used for solving the problems of large calculation amount and large resource occupation of the existing voice noise reduction, and the method comprises the following steps: acquiring voice data; preprocessing the voice data and extracting multidimensional characteristics of the preprocessed voice data; inputting the multidimensional characteristics into a preset voice noise reduction model to obtain a frequency band gain coefficient; dividing the voice data into a plurality of frequency bands, and filtering noise data in the frequency bands according to the frequency band gain coefficient; and restoring the filtered voice data into a voice data stream, and outputting the voice data stream. The invention also discloses a voice noise reduction device, electronic equipment and a computer storage medium. The invention further realizes voice noise reduction by calculating the frequency band gain coefficient.)

语音降噪方法、装置、设备及介质

技术领域

本发明涉及机器学习技术领域,尤其涉及一种语音降噪方法、装置、设备及介质。

背景技术

噪声抑制从上世纪70年代开始就已经成为了高关注度的话题。传统噪声抑制算法都需要噪声频谱估计器,噪声频谱估计器本身由语音活动检测器(VAD)或类似的算法驱动,噪声频谱估计器的每个组件都需要准确的估计器,对精度要求高,需要大量的人工调参工作,效率低,只要有一个参数不够精确,就容易影响降噪效果。

现有技术开始通过深度学习技术进行噪声抑制,普遍做法是在工程问题中引入深层神经网络,这样的方法称为端到端——神经元接受并传递信息,使得误差最小化;端对端方法已被应用于语音识别和语音合成等工程问题,并且效果显著。但是,深度学习的模型需要占用大量资源,造成资源的浪费。例如,噪声抑制的一些方法使用具有数千个神经元和数千万个权重的层来执行噪声抑制,导致模型运行网络所需的计算成本巨大,模型本身的规模也难以控制,并且需要存储数千行代码以及几十兆字节的神经元权重;通过这些方法进行语音降噪时,对系统的要求高,计算量大。

发明内容

为了克服现有技术的不足,本发明的目的之一在于提供一种语音降噪方法,其通过提取语音数据的多维特征并输入语音降噪模型,进而得到频带增益系数,并根据频带增益系数对语音数据进行分频带降噪。

本发明的目的之一采用以下技术方案实现:

一种语音降噪方法,包括以下步骤:

获取语音数据;

对所述语音数据进行预处理,提取预处理后的所述语音数据的多维特征;

将所述多维特征输入预设语音降噪模型,得到频带增益系数及语音活动检测参数;

当所述语音活动检测参数为1时,将所述语音数据分为若干频带,根据所述频带增益系数过滤所述频带中的噪音数据;

当所述语音活动检测参数为0时,将所述频带增益系数设为0,并过滤所述频带中的噪音数据;

将过滤后的所述语音数据恢复成语音数据流,输出所述语音数据流。

进一步地,获取语音数据,包括以下步骤:

每隔10ms采集一帧所述语音数据,采样率为48kHz。

进一步地,所述预处理包括:对所述语音数据进行FFT变换。

进一步地,将所述语音数据分为若干频带,根据所述频带增益系数过滤所述频带中的噪音数据,包括以下步骤:

通过梳状滤波器过滤所述语音数据,并根据所述预设语音降噪模型中的频带数量,将过滤后的所述语音数据分为若干频带;

根据所述频带增益系数对每个频带的语音数据进行滤波,过滤噪音数据。

进一步地,提取预处理后的所述语音数据的多维特征,包括以下步骤:

将每一帧所述语音数据的频谱划分为22个不等分频带,并对每个所述频带的能量进行dct变换,得到22个巴克频率倒谱系数,作为第一特征;

提取所述第一特征中的前6维特征,计算一阶和二阶导数,得到12维特征,作为第二特征;

提取所述频带的前6个频带,进行基因周期dct变换,得到六维特征及1个基因周期系数,作为第三特征;

提取所述频带的前8个频带,计算所述前八个频带的差异值之和,得到1个稳定性系数,作为第四特征;

计算每一帧所述语音数据的帧能量、过零率、延迟一个位置处标准化自相关系数、12阶线性预测的第一个系数及12阶线性预测误差,作为第五特征;

所述多维特征包括所述第一特征、所述第二特征、所述第三特征、所述第四特征及所述第五特征。

进一步地,所述预设语音降噪模型的训练过程包括以下步骤:

获取预先构建的循环神经网络,所述循环神经网络包括3个全连接层和3个GRU网络;

获取训练数据,所述训练数据包括纯净语音数据及噪声数据;

对所述训练数据进行分帧处理,并提取每一帧训练数据的多维特征;

初始化所述循环神经网络的网络参数,将所述每一帧训练数据的多维特征输入所述循环神经网络进行模型训练,并根据损失函数进行模型优化,得到所述预设语音降噪模型。

进一步地,将所述多维特征输入预设语音降噪模型,得到频带增益系数,所述频带增益系数的计算公式为: ,其中gb为所述频带增益系数,为纯净语音的能量,为含有噪声的能量;

所述损失函数计算公式为:,其中为将增益的估计值,γ为感知参数,为频带增益系 数感知值, 为增益估计值的感知值。

本发明的目的之二在于提供一种语音降噪装置,其通过提取语音数据的多维特征并输入语音降噪模型,进而得到频带增益系数,并根据频带增益系数对语音数据进行分频带降噪。

本发明的目的之二采用以下技术方案实现:

一种语音降噪装置,其包括:

获取模块,用于获取语音数据;

过滤模块,用于对所述语音数据进行预处理,提取预处理后的所述语音数据的多维特征;将所述多维特征输入预设语音降噪模型,得到频带增益系数及语音活动检测参数;当所述语音活动检测参数为1时,将所述语音数据分为若干频带,根据所述频带增益系数过滤所述频带中的噪音数据;当所述语音活动检测参数为0时,将所述频带增益系数设为0,并过滤所述频带中的噪音数据;

输出模块,用于将过滤后的所述语音数据恢复成语音数据流,输出所述语音数据流。

本发明的目的之三在于提供执行发明目的之一的电子设备,其包括处理器、存储介质以及计算机程序,所述计算机程序存储于存储介质中,所述计算机程序被处理器执行时实现上述的语音降噪方法。

本发明的目的之四在于提供存储发明目的之一的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的语音降噪方法。

相比现有技术,本发明的有益效果在于:

本发明通过频带增益系数进行语音降噪,只需对语音数据进行频带划分,并对频带进行噪音过滤就可以实现语音降噪,并且只对检测到语音信号的语音数据进行滤波降噪,减少了无语音信号时的计算量,大大降低了语音降噪时的计算复杂度,降噪效率高,可以实现实时降噪,且无需占用大量资源。

附图说明

图1是实施例一的语音降噪方法的流程图;

图2是实施例一的多维特征提取方法的流程图;

图3是实施例二的模型训练方法的流程图;

图4是实施例三的语音降噪装置的结构框图;

图5是实施例四的电子设备的结构框图。

具体实施方式

以下将结合附图,对本发明进行更为详细的描述,需要说明的是,以下参照附图对本发明进行的描述仅是示意性的,而非限制性的。各个不同实施例之间可以进行相互组合,以构成未在以下描述中示出的其他实施例。

实施例一

实施例一提供了一种语音降噪方法,旨在通过频带增益系数实现语音降噪。

请参照图1所示,一种语音降噪方法,包括以下步骤:

S110、获取语音数据;

为了实现实时语音降噪,本实施例中每隔10ms采集一帧语音数据,采样率为48kHz。

当然,在非实时语音降噪的情况下,只需对语音数据进行分帧,并逐帧对语音数据进行降噪处理。

语音数据的来源例如机器人麦克风获得的嘈杂环境的语音数据流,本实施例不对具体来源作限定。

S120、对所述语音数据进行预处理,提取预处理后的所述语音数据的多维特征;

上述的预处理包括:对所述语音数据进行FFT变换。

FFT变换(快速傅里叶变换)是离散傅立叶变换的快速算法,通过FFT变换就可以将语音数据转换为频域,以便于快速得到语音数据的特征。

请参照图2所示,多维特征的提取包括以下步骤:

S1201、将每一帧所述语音数据的频谱划分为22个不等分频带,并对每个所述频带的能量进行dct变换,得到22个巴克频率倒谱系数,作为第一特征;

上述dct变换的作用是为了对频带特征进行去相关。上述的巴克频率倒谱系数是一种基于人耳听觉的特征参数。

S1202、提取所述第一特征中的前6维特征,计算一阶和二阶导数,得到12维特征,作为第二特征;

因为常见的语音都在低频区域,因此1202步骤中,只选择前6维的低频特征。

S1203、提取所述频带的前6个频带,进行基因周期dct变换,得到六维特征及1个基因周期系数,作为第三特征;

S1203中提取前6个频带进行特征计算的原因与S2202中相同,都是为了获取常见的低频频带特征。

S1204、提取所述频带的前8个频带,计算所述前八个频带的差异值之和,得到1个稳定性系数,作为第四特征;相比于S1203中取前6个频带,S1204取前8个频带计算特征,可以便于计算差异值,上述的稳定系数可以有助于语音检测的频谱非平稳性度量。

S1205、计算每一帧所述语音数据的帧能量、过零率、延迟一个位置处标准化自相关系数、12阶线性预测的第一个系数及12阶线性预测误差,作为第五特征;

上述,帧能量的计算公式为:;

过零率指的是统计每帧数据穿过零点的次数;

延迟一个位置处标准化自相关系数指的是计算两个序列的相关系数,其中一个是x(n),另一个是把x(n)延迟1,即x(n-1),其计算公式为:;

12阶线性指的是用线性系统模拟x(n),12阶线性预测的第一个系数a1公式为:;12阶线性预测误差的公式为:。

上述公式中,为音频数据的一帧数据;为每一帧数据的长度,本实施例中为480;为对数帧能量;为在延迟一个位置处标准化自相关系数;为线性预测器的阶数,这里为12;为对进行12阶线性预测的估计值;为预测误差。

上述的第五特征是用于语音活动检测参数(VAD)的判断,通过上述的五个特征可以精确地识别出语音数据中的语音信号。

所述多维特征包括所述第一特征、所述第二特征、所述第三特征、所述第四特征及所述第五特征,一共47维特征。

S130、将所述多维特征输入预设语音降噪模型,得到频带增益系数及语音活动检测参数;

上述的频带增益系数即语音降噪模型中输出的各个频带增益系数,通过该增益系数就可以实现对不同频带的噪音过滤。

频带增益系数指的是每个频带中可用于信号的一个增益,例如对于一个有22频带的均衡器,通过改变每个频带的电平增益以达到降低噪声保留信号的功能。

S140、当所述语音活动检测参数为1时,将所述语音数据分为若干频带,根据所述频带增益系数过滤所述频带中的噪音数据;

当所述语音活动检测参数为0时,将所述频带增益系数设为0,并过滤所述频带中的噪音数据;

语音活动检测参数为0时,则表示未检测到语音信号,为了提高运行效率,减少无语音信号时的计算量,将频带增益系数设为0,即不对无语音信号的数据进行降噪。

具体地,当所述语音活动检测参数为1时,S140包括以下步骤:

通过梳状滤波器过滤所述语音数据,并根据所述预设语音降噪模型中的频带数量,将过滤后的所述语音数据分为若干频带;

根据所述频带增益系数对每个频带的语音数据进行滤波,过滤噪音数据。

通过引入梳状滤波器,使基频谐波(例如语音)通过,同时衰减它们之间的频率部分(即噪声部分),并且可以得到语音降噪模型所需声音频率(0-20000赫兹)的语音数据,以便于将语音数据按照预设语音模型中的频带分割方法进行分割。

通过梳状滤波器过滤掉谐波间噪声,并根据频带增益系数就可以过滤掉各个频带的噪音数据,梳状滤波器结合频带增益系数可以使得噪音过滤效果更好。

S150、将过滤后的所述语音数据恢复成语音数据流,输出所述语音数据流。

因为S120中对语音数据进行FFT变换,因此S150中通过IFFT变换(快速傅里叶逆变换)将降噪后的数据恢复成语音数据流,语音数据流可以便于后续进行语音的传输,当然,也可以是同时若干帧降噪后的数据恢复成语音数据流,相比于每一帧都进行语音数据流的恢复,效率更高。

实施例二

实施例二主要对预设语音降噪模型的构建过程进行了解释和说明,旨在通过结合传统信号处理方法和循环神经网络的深度学习方法,保持所有必要的未经过神经网络仿真的基本信号处理,并通过神经网络学习所有需要反复调参的工作,以实现语音降噪模型的构建。

循环神经网络(RNN)相比于其他深度学习神经网络,其增加了时间序列,可以更好地应用于语音处理技术领域;因此本实施例选择循环神经网络作为预设语音降噪模型。

请参照图3所示,所述预设语音降噪模型的训练过程包括以下步骤:

S210、获取预先构建的循环神经网络,所述循环神经网络包括3个全连接层和3个GRU网络;

S220、获取训练数据,所述训练数据包括纯净语音数据及噪声数据;

上述训练数据中纯净语音数据和噪声数据的比例本实施例不作具体限定,通常纯净语音数据量要大于噪声数据量,例如包含6小时纯净语音数据和4小时噪声数据的训练数据,其中,噪声数据的种类越全面,则训练结果越准确。

训练数据的来源本实施例不作具体限定,例如McGill TSP语音数据库、NTT语音数据库等都可作为S220中训练数据的获取源。

S230、对所述训练数据进行分帧处理,并提取每一帧训练数据的多维特征;

为了实现实时通信时的语音降噪,语音帧的处理过程通常不超过10ms,因此在本实施例中按一帧长度为10ms对S210中得到的训练数据进行分帧。

本实施例中通过将训练数据的频谱随机划分为22个频带以提取每一个频带的多维特征,相比于传统的480个频谱值,划分为22个频带计算量更小,计算效率更高,避免了模型训练时因大量的神经元产生大量的输出。具体地,对0-20000赫兹范围内的的训练数据进行频谱频带划分,即,只对人类可感知到的声音频率范围内的训练数据进行划分,其中,对于最常见的0-2000赫兹划分为10个频带,2000-4000赫兹及4000至6000赫兹各划分为4个频带,8000-12000及12000-20000赫兹各划分为2个频带。

特征提取的具体过程请参照实施例一中S1201-S1204步骤。

由于音频的动态范围较大,因此计算42维特征再输入循环神经网络模型,会使模型的训练效果更好。

此外,为了语音活动检测参数的计算,还会计算再对训练数据五维的特征,该五维特征的具体解释和提取过程请参照实施例一中的S1205步骤。

S240、初始化所述循环神经网络的网络参数,将所述每一帧训练数据的多维特征输入所述循环神经网络进行模型训练,并根据损失函数进行模型优化,得到所述预设语音降噪模型。

本实施中,参数的具体值设置为:输入语音增益随机0.01-10,输入噪声增益随机0.1-10,损失函数权重0.5,对主权重矩阵进行约束0.499,对偏置向量进行约束0.499,施加在权重上的正则项0.000001,施加在偏置向量上的正则项0.000001。当然,在实际训练时,参数值可以根据实际情况进行更改,并不限于上述的参数具体值。

当然,RNN模型还会输出声音活动检测参数,即通过与第五特征对应的五维特征训练得到的声音活动检测参数;通过声音活动检测参数就可以实现对语音信号的判别,通过每个频带的增益系数就可以过滤掉不同频带的噪音。

训练的循环次数、训练数据的拆分等可以根据需求进行设定,例如设定训练数据循环次数120,数据分成32份。训练完成后,保存模型参数就可以得到预设语音降噪模型。

通过每一个频带b在频率k下对应于的信号x可以计算该频带b的能量E,因此,模型训练时及语音降噪时的增益系数计算公式定义为:,其中gb为所述频带增益系数,为纯净语音的能量,为含有噪声的能量,增益系数的值在[0,1]之间。

在训练过程中,往往难以精确地确定正确增益系数,因此通过引入损失函数,以用于判断衰减过多或过少。

上述损失函数的计算公式为:,其中为将增益的估计值,γ为感知参数, 称为频 带增益系数感知值, 称为增益估计值的感知值。指数是一个感知参数,用于控制抑制噪 声的积极程度。此外,由于,此时计算就变成了在对数域上最小化均方误差,这会导致在没 有设置下限的时候估计出来的,对于噪声的抑制过于激进,使得估计出来的最佳增益非常 接近于0。

换言之:趋近于1时,收敛慢,并且对噪声特别不敏感,近乎于不抑制;趋近于0的话,收敛过快,很快就接近下限了,这里我们没有设置下限,因此很快就会趋近于0,就是对语音信号完全抑制。因此,本实施例中设定感知参数。

实施例三

实施例三公开了一种对应上述实施例的语音降噪方法对应的装置,为上述实施例的虚拟装置结构,请参照图4所示,包括:

获取模块310,用于获取语音数据;

过滤模块320,用于对所述语音数据进行预处理,提取预处理后的所述语音数据的多维特征及语音活动检测参数;当所述语音活动检测参数为1时,将所述语音数据分为若干频带,根据所述频带增益系数过滤所述频带中的噪音数据;当所述语音活动检测参数为0时,将所述频带增益系数设为0,并过滤所述频带中的噪音数据;

输出模块330,用于将过滤后的所述语音数据恢复成语音数据流,输出所述语音数据流。

优选地,所述预设语音降噪模型为循环神经网络

实施例四

图5为本发明实施例四提供的一种电子设备的结构示意图,如图5所示,该电子设备包括处理器410、存储器420、输入装置430和输出装置440;计算机设备中处理器410的数量可以是一个或多个,图5中以一个处理器410为例;电子设备中的处理器410、存储器420、输入装置430和输出装置440可以通过总线或其他方式连接,图5中以通过总线连接为例。

存储器420作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的语音降噪方法对应的程序指令/模块(例如,语音降噪方法装置中的获取模块310、过滤模块320和输出模块330)。处理器410通过运行存储在存储器420中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述实施例一和实施例二的语音降噪方法。

存储器420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器420可进一步包括相对于处理器510远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置430可用于接收输入的用户身份信息、语音数据、预设语音降噪模型等。输出装置440可包括显示屏等显示设备。

实施例五

本发明实施例五还提供一种包含计算机可执行指令的存储介质,该存储介质可用于计算机执行语音降噪方法,该方法包括:

获取语音数据;

对所述语音数据进行预处理,并提取预处理后的所述语音数据的多维特征;

将所述多维特征输入预设语音降噪模型,得到频带增益系数;

根据所述频带增益系数过滤所述语音数据中的噪音数据;

将过滤后的所述语音数据恢复成语音数据流,输出所述语音数据流。

当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的基于语音降噪方法中的相关操作。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory, ROM)、随机存取存储器(RandomAccess Memory, RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台电子设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

值得注意的是,上述基于语音降噪方法装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

对本领域的技术人员来说,可根据以上描述的技术方案以及构思,做出其它各种相应的改变以及形变,而所有的这些改变以及形变都应该属于本发明权利要求的保护范围之内。

15页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:音频信号的处理方法及装置、存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!