HI,欢迎来到起点商标网!
24小时服务QQ:2880605093

语音信号的噪声抑制方法、装置、设备及存储介质与流程

2021-01-28 16:01:56|314|起点商标网
语音信号的噪声抑制方法、装置、设备及存储介质与流程

本申请实施例涉及音频处理技术领域,特别涉及一种语音信号的噪声抑制方法、装置、设备及存储介质。



背景技术:

啸叫是一种回授音,在声源与扩音设备之间因距离过近等问题导致能量发生自激的情况下,就会产生啸叫。

在相关技术中,提出了基于神经网络模型的啸叫抑制方法,但这种方法通常需要较为复杂的网络结构,从而导致计算复杂度较高。



技术实现要素:

本申请实施例提供了一种语音信号的噪声抑制方法、装置、设备及存储介质,能够简化用于噪声抑制的模型网络结构,降低计算复杂度。所述技术方案如下:

根据本申请实施例的一个方面,提供一种语音信号的噪声抑制方法,所述方法包括:

获取带噪语音信号的特征数据,所述特征数据包括用于反映所述带噪语音信号的频谱特征的参数;

对所述特征数据进行变换处理,得到变换后的特征数据;

对所述特征数据和所述变换后的特征数据进行两步递归处理,得到递归处理后数据;

根据所述递归处理后数据生成增益信息,所述增益信息包括应用于所述带噪语音信号的不同频带的增益值;

基于所述增益信息对所述带噪语音信号进行噪声抑制处理,得到降噪语音信号。

根据本申请实施例的一个方面,提供一种噪声抑制模型的训练方法,所述方法包括:

获取训练样本,所述训练样本的样本数据包括带噪语音信号,所述训练样本的标签数据包括所述带噪语音信号对应的真实增益信息,所述真实增益信息包括应用于所述带噪语音信号的不同频带的真实增益值;

获取所述带噪语音信号的特征数据,所述特征数据包括用于反映所述带噪语音信号的频谱特征的参数;

通过噪声抑制模型基于所述特征数据,生成预估增益信息;其中,所述预估增益信息包括应用于所述带噪语音信号的不同频带的预估增益值,所述噪声抑制模型用于对所述特征数据和变换后的特征数据进行两步递归处理后,根据递归处理后数据生成所述预估增益信息;

基于所述预估增益信息和所述真实增益信息,计算所述噪声抑制模型的损失函数值;

基于所述损失函数值调整所述噪声抑制模型的参数,对所述噪声抑制模型进行训练。

根据本申请实施例的一个方面,提供一种语音信号的噪声抑制装置,所述装置包括:

特征获取模块,用于获取带噪语音信号的特征数据,所述特征数据包括用于反映所述带噪语音信号的频谱特征的参数;

特征变换模块,用于对所述特征数据进行变换处理,得到变换后的特征数据;

递归处理模块,用于对所述特征数据和所述变换后的特征数据进行两步递归处理,得到递归处理后数据;

增益生成模块,用于根据所述递归处理后数据生成增益信息,所述增益信息包括应用于所述带噪语音信号的不同频带的增益值;

噪声抑制模块,用于基于所述增益信息对所述带噪语音信号进行噪声抑制处理,得到降噪语音信号。

根据本申请实施例的一个方面,提供一种噪声抑制模型的训练装置,所述装置包括:

样本获取模块,用于获取训练样本,所述训练样本的样本数据包括带噪语音信号,所述训练样本的标签数据包括所述带噪语音信号对应的真实增益信息,所述真实增益信息包括应用于所述带噪语音信号的不同频带的真实增益值;

特征获取模块,用于获取所述带噪语音信号的特征数据,所述特征数据包括用于反映所述带噪语音信号的频谱特征的参数;

模型处理模块,用于通过噪声抑制模型基于所述特征数据,生成预估增益信息;其中,所述预估增益信息包括应用于所述带噪语音信号的不同频带的预估增益值,所述噪声抑制模型用于对所述特征数据和变换后的特征数据进行两步递归处理后,根据递归处理后数据生成所述预估增益信息;

损失计算模块,用于基于所述预估增益信息和所述真实增益信息,计算所述噪声抑制模型的损失函数值;

参数调整模块,用于基于所述损失函数值调整所述噪声抑制模型的参数,对所述噪声抑制模型进行训练。

根据本申请实施例的一个方面,提供一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述语音信号的噪声抑制方法。

根据本申请实施例的一个方面,提供一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述噪声抑制模型的训练方法。

根据本申请实施例的一个方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述语音信号的噪声抑制方法。

根据本申请实施例的一个方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述噪声抑制模型的训练方法。

根据本申请实施例的一个方面,提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述语音信号的噪声抑制方法。

根据本申请实施例的一个方面,提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述噪声抑制模型的训练方法。

本申请实施例提供的技术方案可以包括如下有益效果:

本申请实施例提供的技术方案,提供了一种低复杂度的噪声抑制方案,通过简化模型结构,将模型用于对输入的特征数据进行递归计算的循环神经网络单元的数量从3个减少为2个,这样仅需执行2步递归计算即可,不需要执行3步递归计算,且不再计算vad(voiceactivitydetection,语音活动检测)结果,从而简化模型网络结构,降低计算复杂度。

附图说明

图1是相关技术提供的经典rnnoise算法的原理框图;

图2是本申请技术方案涉及的一种可能的应用场景的示意图;

图3是本申请一个实施例提供的语音信号的噪声抑制方法的流程图;

图4是本申请另一个实施例提供的语音信号的噪声抑制方法的流程图;

图5是本申请一个实施例提供的方案实施示意图;

图6是本申请一个实施例提供的噪声抑制模型的示意图;

图7是本申请一个实施例提供的噪声抑制模型的训练方法的流程图;

图8是本申请一个实施例提供的语音信号的噪声抑制装置的框图;

图9是本申请一个实施例提供的噪声抑制模型的训练装置的框图;

图10是本申请一个实施例提供的计算机设备的结构框图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

本申请实施例提供的方案涉及人工智能的机器学习等技术。

人工智能(artificialintelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

机器学习(machinelearning,ml)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。

在相关技术中,提出了基于神经网络模型的啸叫抑制方法,一种典型的方案是使用rnnoise算法进行啸叫抑制处理。rnnoise算法最初是用于语音增强的算法。如图1所示,rnnoise算法主要采用三层gru(gatedrecurrentunit,门控循环单元)网络结构,同时还计算一个vad结果。

如图1为经典rnnoise算法原理框图,其拥有42维输入特征,三个grurelu(rectifiedlinearunit,线性整流单元)网络单元,且各个grurelu层的神经元数量分别为24,48和96。另外,24节点的densetanh函数用于最初的特征变换,该网络输出为一个1维vad结果和一个22维的增益信息。

本申请实施例提供的技术方案,通过简化模型结构,从而提供了一种结构更为简单的噪声抑制模型。具体来讲,一方面通过去掉第一个grurelu层(也即用于计算vad结果的grurelu层),将模型从3层grurelu结构变为2层grurelu结构,使得模型不再计算vad结果,因为噪声抑制的真正有用信息是增益信息,vad结果并无大作用,因此可以忽略或者遗弃,从而有效降低计算复杂度;另一方面,通过对噪声抑制模型的各层节点数(或称为神经元数量)进行调整,在不损失模型性能的前提下,尽可能地减少各层节点数,从而进一步简化模型结构,降低计算复杂度。

本申请实施例提供的技术方案,适用于任何具有语音降噪需求的业务场景中,如语音会议、视频会议、语音录制、视频录制等业务场景。

请参考图2,其示出了本申请技术方案涉及的一种可能的应用场景的示意图,该应用场景可以实现成为云视频会议系统。该云视频会议系统是基于云技术的视频会议平台。

云技术(cloudtechnology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。

如图2所示,该云视频会议系统可以包括:终端10和服务器20。

终端10的数量可以是多个。终端10可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。

服务器20可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(contentdeliverynetwork,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。

终端10与服务器20之间可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。

在示例性实施例中,终端10中安装运行有目标应用程序的客户端,如该目标应用程序可以是提供视频会议功能的应用程序。服务器20可以是该目标应用程序的后台服务器,用于为该目标应用程序的客户端提供后台服务。

本申请实施例提供的语音信号的噪声抑制方法,各步骤的执行主体可以是终端10,如终端10中安装运行的目标应用程序的客户端,也可以是服务器20,或者由终端10和服务器20交互配合执行,即将方法的一部分步骤交由终端10执行而另一部分步骤则交由服务器20执行。

为了便于说明,在下文介绍的语音信号的噪声抑制方法的实施例中,仅以各步骤的执行主体为计算机设备进行介绍说明,所述计算机设备是指具备数据计算、处理和存储能力的电子设备,如终端10、服务器20等,本申请实施例对此不做限定。

请参考图3,其示出了本申请一个实施例提供的语音信号的噪声抑制方法的流程图。该方法可以包括如下几个步骤(301~305):

步骤301,获取带噪语音信号的特征数据,该特征数据包括用于反映带噪语音信号的频谱特征的参数。

带噪语音信号是指带有噪声的语音信号。该带噪语音信号可以是由音频采集设备(如麦克风)在真实环境中采集的语音信号。例如,在视频会议场景中,麦克风会采集参会者在发言时产生的语音信号,在这过程中,麦克风同时还会采集到噪声信号,该噪声信号可以是环境噪声、啸叫等噪声,本申请实施例对此不做限定。

频谱是频率谱密度的简称,是频率的分布曲线。复杂振荡分解为振幅不同和频率不同的谐振荡,这些谐振荡的幅值按频率排列的图形叫做频谱。频谱广泛应用于声学、光学和无线电技术等方面。

在示例性实施例中,对带噪语音信号进行分帧处理,得到n个音频帧,n为正整数;提取n个音频帧分别对应的特征数据;其中,音频帧对应的特征数据包括:音频帧在bark(巴克)频率尺度的k个频带上的频谱特征参数和能量参数,k为正整数。

为了避免使用大量的神经元,不直接使用带噪语音信号或其能量谱作为模型输入。作为替代,考虑一种符合人类听觉感知的频率尺度——bark频率尺度。bark频率尺度是以hz(赫兹)为单位,把频率映射到心理声学的24个临界频带上,第25个临界频带占据约:16k~20khz的频率,1个临界频带的宽度等于一个bark,简单的说,bark尺度是把物理频率转换到心理声学的频率。在本申请实施例中,对带噪语音信号进行分帧处理,逐帧计算相应的增益信息后进行噪声抑制处理,每个音频帧的特征数据包括该音频帧在bark频率尺度的多个频带(如24个频带)上的频谱特征参数和能量参数。对于上述多个频带的划分,高频部分的频带相对更宽,低频部分的频带相对更窄,因为人耳对于中低频声音的分辨率更高,通过对中低频部分进行更为细致的频带划分,有助于提升对人耳敏感部分的噪声抑制效果。

步骤302,对特征数据进行变换处理,得到变换后的特征数据。

此处的变换处理可以是线性变换处理或者非线性变换处理。

在一个示例中,对特征数据进行线性变换处理,得到变换后的特征数据。

示例性地,线性变换处理可以表示为f(x)=ax+b,其中,x表示原始的特征数据,f(x)表示变换后的特征数据,a、b为预设常数。

在另一个示例中,对特征数据进行非线性变换处理,得到变换后的特征数据。

示例性地,非线性变换处理可以表示为f(x)=(ax+b)2,其中,x表示原始的特征数据,f(x)表示变换后的特征数据,a、b为预设常数。示例性地,非线性变换处理还可以表示为f(x)=axn+b,其中,x表示原始的特征数据,f(x)表示变换后的特征数据,a、b、n为预设常数。

上述线性变换处理和非线性变换处理中涉及的参数,如a、b、n等参数,均可以根据实验或者经验进行设置和调整,通过选取合适的取值有助于提升最终的降噪效果。

在示例性实施例中,通过激活函数对特征数据进行变换处理,得到变换后的特征数据。激活函数(activationfunctions)对于人工神经网络模型去学习、理解非常复杂和非线性的函数来说具有十分重要的作用。引入激活函数是为了增加神经网络模型的非线性,使得神经网络可以任意逼近任何非线性函数,这样神经网络就可以应用到众多的非线性模型中。常用的激活函数包括sigmoid函数、tanh函数、relu函数等,本申请实施例对此不做限定。

步骤303,对特征数据和变换后的特征数据进行两步递归处理,得到递归处理后数据。

本申请实施例涉及的递归处理是指基于神经网络实现的递归处理,如基于rnn(recurrentneuralnetwork,循环神经网络)实现的递归处理。循环神经网络中可以包括多个循环单元,每个循环单元用于实现一步递归处理,上述两步递归处理可以是由2个循环单元来实现。

可选地,通过两层神经网络对特征数据和变换后的特征数据进行两步递归处理,得到递归处理后数据。这两层神经网络可以是循环神经网络中的2个循环单元。

在示例性实施例中,上述两层神经网络包括第一神经网络层和第二神经网络层,本步骤可以包括如下几个子步骤:

1、通过第一神经网络层对特征数据和变换后的特征数据的融合结果进行处理,得到第一神经网络层的输出数据;

2、通过第二神经网络层对特征数据和第一神经网络层的输出数据的融合结果进行处理,得到上述递归处理后数据。

特征数据和变换后的特征数据的融合结果是对上述两者进行融合处理后得到的。特征数据和第一神经网络层的输出数据的融合结果同样是对上述两者进行融合处理后得到的。融合处理是指对多种不同信息进行整合,得到的融合结果中能够体现各种组成信息的成分或影响。可选地,融合处理包括但不限于以下一种方法或多种方法的组合:拼接、通道级联(concatenate)、逐像素相加等。

在本申请实施例中,用于对带噪语音信号进行噪声抑制处理的噪声抑制模型有且仅有2个用于进行递归计算的神经网络层,即上述第一神经网络层和第二神经网络层。第一神经网络层和第二神经网络层均可以是循环单元,如普通的循环单元,或者lstm(longshort-termmemory,长短期记忆)单元、gru或者它们的一些变种。循环单元用于实现在序列的演讲方向上进行递归(recursion)计算,各个循环单元按链式连接。

步骤304,根据递归处理后数据生成增益信息,该增益信息包括应用于带噪语音信号的不同频带的增益值。

在得到递归处理后数据之后,可以对该递归处理后数据进行变换处理,生成增益信息。该增益信息包括应用于带噪语音信号的不同频带的增益值,如包括上述k个频带分别对应的增益值。通过计算每个频带对应的增益值,并把它应用到每个频带上,该过程可以认为是使用了一个k个频带的均衡器,每个均衡器快速改变其增益并让信号通过,让噪声受到抑制。

每个频带对应的增益值可以是一个取值在(0,1)这个区间范围内的值。因此,通过一个激活函数(如sigmoid函数)对第二神经网络层的输出数据进行处理,即可生成上述增益信息。

步骤305,基于增益信息对带噪语音信号进行噪声抑制处理,得到降噪语音信号。

在得到增益信息之后,将该增益信息与原始的带噪语音信号进行合成处理,即可得到相应的降噪语音信号。

综上所述,本申请实施例提供的技术方案,提供了一种低复杂度的噪声抑制方案,通过简化模型结构,将模型用于对输入的特征数据进行递归计算的循环神经网络单元的数量从3个减少为2个,这样仅需执行2步递归计算即可,不需要执行3步递归计算,且不再计算vad结果,从而简化模型网络结构,降低计算复杂度。

请参考图4,其示出了本申请一个实施例提供的语音信号的噪声抑制方法的流程图。该方法可以包括如下几个步骤(401~409):

步骤401,获取带噪语音信号的特征数据,该特征数据包括用于反映带噪语音信号的频谱特征的参数。

步骤402,对特征数据进行变换处理,得到变换后的特征数据。

步骤403,对特征数据和变换后的特征数据进行融合处理,得到第一融合结果。

步骤404,通过第一神经网络层对第一融合结果进行处理,得到第一神经网络层的输出数据。

步骤405,对特征数据和第一神经网络层的输出数据进行融合处理,得到第二融合结果。

步骤406,通过第二神经网络层对第二融合结果进行处理,得到递归处理后数据。

步骤407,根据递归处理后数据生成增益信息,该增益信息包括应用于带噪语音信号的不同频带的增益值。

步骤408,对于带噪语音信号在不同频带的频域信号,采用相应的增益值对频域信号进行处理,得到处理后频域信号。

可选地,对于上述k个频带中的第ki个频带的频域信号,将该第ki个频带对应的增益值与该频域信号的功率谱相乘,得到处理后频域信号。其中,ki是属于区间[1,k]的整数。

步骤409,将处理后频域信号进行频域到时域的转换,得到降噪语音信号。

例如,对处理后频域信号进行傅里叶反变换(如ifft(inversefastfouriertransform,逆快速傅里叶变换)),即可将信号从频域转换到时域,得到降噪语音信号。

在示例性实施例中,如图5所示,通过离线训练的噪声抑制模型,该训练好的噪声抑制模型在在线应用的过程中,通过对带噪语音信号的特征数据进行一系列处理,输出相应的增益信息,然后基于该增益信息对带噪语音信号进行噪声抑制处理,得到降噪语音信号。该降噪语音信号即可用于输出播放,从而提升用户的听觉感受。

在示例性实施例中,如图6所示,其示出了本申请一个实施例提供的噪声抑制模型的示意图,该噪声抑制模型包括:输入层61、第一激活函数层62、第一神经网络层63、第二神经网络层64、第二激活函数层65和输出层66。其中:

输入层61用于输入带噪语音信号的特征数据。可选地,该输入层61的神经元数量为44。

第一激活函数层62用于对特征数据进行变换处理,得到变换后的特征数据。可选地,该第一激活函数层62的神经元数量为20。可选地,该第一激活函数层62所采用的激活函数为tanh函数。

第一神经网络层63用于对特征数据和变换后的特征数据的融合结果进行处理。可选地,该第一神经网络层63的神经元数量为30。可选地,该第一神经网络层63为grurelu层。

第二神经网络层64用于对特征数据和第一神经网络层63的输出数据的融合结果进行处理。可选地,该第二神经网络层64的神经元数量为60。可选地,该第二神经网络层64为grurelu层。

第二激活函数层65用于根据第二神经网络层64的输出数据(也即上述经过两步递归处理后得到的递归处理后数据)生成增益信息。可选地,该第二激活函数层65的神经元数量为24。可选地,该第二激活函数层65所采用的激活函数为sigmoid函数。

输出层66用于输出增益信息。可选地,输出层66的神经元数量与第二激活函数层65相同,为24。

需要说明的是,图6所示的模型中各层的神经元数量仅是示例性的,在实际应用中可以结合实际情况进行灵活调整,如将第一激活函数层62的神经元数量设置为30,将第一神经网络层63或第二神经网络层64的神经元数量设置为50等,本申请实施例对此不做限定。

综上所述,本申请实施例提供的技术方案,通过简化模型结构,从而提供了一种结构更为简单的噪声抑制模型。具体来讲,一方面通过去掉第一个grurelu层(也即用于计算vad结果的grurelu层),将模型从3层grurelu结构变为2层grurelu结构,使得模型不再计算vad结果,因为噪声抑制的真正有用信息是增益信息,vad结果并无大作用,因此可以忽略或者遗弃,从而有效降低计算复杂度;另一方面,通过对噪声抑制模型的各层节点数(或称为神经元数量)进行调整,在不损失模型性能的前提下,尽可能地减少各层节点数,从而进一步简化模型结构,降低计算复杂度。

经过实验测算,经过本申请实施例简化后的噪声抑制模型大小为170kb,而经典rnnoise模型大小为410kb;另外,从计算复杂度角度,采用本申请实施例简化后的噪声抑制模型占用cpu(centralprocessingunit,中央处理器)率约为经典rnnoise模型的1/2到1/3之间。

请参考图7,其示出了本申请一个实施例提供的噪声抑制模型的训练方法的流程图。该方法各步骤的执行主体可以是计算机设备,如pc、服务器或者其它具备计算处理能力的电子设备。该方法可以包括如下几个步骤(701~705):

步骤701,获取训练样本,该训练样本的样本数据包括带噪语音信号,训练样本的标签数据包括带噪语音信号对应的真实增益信息,真实增益信息包括应用于带噪语音信号的不同频带的真实增益值。

训练样本的数量可以是多个。每个训练样本包括样本数据和标签数据。

另外,此处的真实增益信息是相对于下文的预估增益信息来讲的,在本实施例中,将模型输出的增益信息称为预估增益信息,将用于评估上述预估增益信息的准确性的增益信息称为真实增益信息。当预估增益信息与真实增益信息更为接近时,表示模型的性能表现更优。

在示例性实施例中,本步骤包括如下几个子步骤:

1、获取训练数据,该训练数据包括语音信号集和噪声信号集,语音信号集中包括至少一个语音信号,噪声信号集中包括至少一个噪声信号;

语音信号集中的语音信号可以认为是纯净的语音信号,即不含噪声的语音信号。噪声信号集中的噪声信号可以依据使用需求进行选择,如当模型用于啸叫抑制时,噪声信号集中的噪声信号可以是各种形式的啸叫噪声信号。

2、对语音信号和噪声信号进行混合生成带噪语音信号;

例如,从语音信号集中选择一个语音信号,从噪声信号集中选择一个噪声信号,将该选择的语音信号和噪声信号在功率谱上进行叠加,即可得到带噪语音信号。

3、以带噪语音信号为样本数据,带噪语音信号对应的真实增益信息为标签数据,生成训练样本。

基于训练数据生成训练样本,该训练样本的样本数据包括对语音信号和噪声信号进行混合生成的带噪语音信号,训练样本的标签数据包括带噪语音信号对应的真实增益信息,真实增益信息包括应用于带噪语音信号的不同频带的真实增益值。

可选地,该真实增益信息可以基于生成带噪语音信号的语音信号和噪声信号求解得到,如获取语音信号的能量值与噪声信号的能量值,将语音信号的能量值除以语音信号与噪声信号的能量值之和,得到真实增益信息。

步骤702,获取带噪语音信号的特征数据,该特征数据包括用于反映带噪语音信号的频谱特征的参数。

步骤703,通过噪声抑制模型基于特征数据,生成预估增益信息;其中,预估增益信息包括应用于带噪语音信号的不同频带的预估增益值,噪声抑制模型用于对特征数据和变换后的特征数据进行两步递归处理后,根据递归处理后数据生成预估增益信息。

在本实施例中,由噪声抑制模型输出的增益信息称为预估增益信息。上述有关噪声抑制模型的介绍说明可参见上文实施例,本实施例对此不再赘述。

步骤704,基于预估增益信息和真实增益信息,计算噪声抑制模型的损失函数值。

步骤705,基于损失函数值调整噪声抑制模型的参数,对噪声抑制模型进行训练。

在对噪声抑制模型进行训练的过程中,将训练样本的样本数据输入至噪声抑制模型,由该噪声抑制模型输出预估增益信息,然后基于该预估增益信息与训练样本的标签数据(也即真实增益信息)之间的差异,构建噪声抑制模型的损失函数,通过不断调整噪声抑制模型的参数,以最小化该损失函数的值,从而得到完成训练的噪声抑制模型。

另外,损失函数可以基于预估增益信息和真实增益信息之间的距离损失进行构建,该距离可以是欧式距离、余弦距离、mse(meansquarederror,均方误差)等,本申请实施例对此不作限定。

下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。

请参考图8,其示出了本申请一个实施例提供的语音信号的噪声抑制装置的框图。该装置具有实现上述语音信号的噪声抑制方法示例的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置可以是上文介绍的计算机设备,也可以设置在计算机设备上。该装置800可以包括:特征获取模块810、特征变换模块820、递归处理模块830、增益生成模块840和噪声抑制模块850。

特征获取模块810,用于获取带噪语音信号的特征数据,所述特征数据包括用于反映所述带噪语音信号的频谱特征的参数。

特征变换模块820,用于对所述特征数据进行变换处理,得到变换后的特征数据。

递归处理模块830,用于对所述特征数据和所述变换后的特征数据进行两步递归处理,得到递归处理后数据。

增益生成模块840,用于根据所述递归处理后数据生成增益信息,所述增益信息包括应用于所述带噪语音信号的不同频带的增益值。

噪声抑制模块850,用于基于所述增益信息对所述带噪语音信号进行噪声抑制处理,得到降噪语音信号。

在示例性实施例中,所述递归处理模块830,用于通过两层神经网络对所述特征数据和所述变换后的特征数据进行所述两步递归处理,得到所述递归处理后数据。

在示例性实施例中,所述两层神经网络包括第一神经网络层和第二神经网络层。所述递归处理模块830,用于:通过所述第一神经网络层对所述特征数据和所述变换后的特征数据的融合结果进行处理,得到所述第一神经网络层的输出数据;通过所述第二神经网络层对所述特征数据和所述第一神经网络层的输出数据的融合结果进行处理,得到所述递归处理后数据。

在示例性实施例中,所述递归处理模块830,用于对所述特征数据和所述变换后的特征数据进行融合处理,得到第一融合结果;通过所述第一神经网络层对所述第一融合结果进行处理,得到所述第一神经网络层的输出数据。

在示例性实施例中,所述递归处理模块830,用于对所述特征数据和所述第一神经网络层的输出数据进行融合处理,得到第二融合结果;通过所述第二神经网络层对所述第二融合结果进行处理,得到所述递归处理后数据。

在示例性实施例中,所述特征获取模块810,用于对所述带噪语音信号进行分帧处理,得到n个音频帧,所述n为正整数;提取所述n个音频帧分别对应的特征数据;其中,所述音频帧对应的特征数据包括:所述音频帧在巴克bark频率尺度的k个频带上的频谱特征参数和能量参数,所述k为正整数。

在示例性实施例中,所述特征变换模块820,用于对所述特征数据进行线性变换处理,得到所述变换后的特征数据;或者,对所述特征数据进行非线性变换处理,得到所述变换后的特征数据。

在示例性实施例中,所述噪声抑制模块850,用于对于所述带噪语音信号在不同频带的频域信号,采用相应的增益值对所述频域信号进行处理,得到处理后频域信号;将所述处理后频域信号进行频域到时域的转换,得到所述降噪语音信号。

在示例性实施例中,用于对所述带噪语音信号进行噪声抑制处理的噪声抑制模型包括:输入层、第一激活函数层、第一神经网络层、第二神经网络层、第二激活函数层和输出层;其中:

所述输入层用于输入所述带噪语音信号的特征数据,所述输入层的神经元数量为44;

所述第一激活函数层用于对所述特征数据进行变换处理,得到变换后的特征数据,所述第一激活函数层的神经元数量为20;

所述第一神经网络层用于对所述特征数据和所述变换后的特征数据的融合结果进行处理,所述第一神经网络层的神经元数量为30;

所述第二神经网络层用于对所述特征数据和所述第一神经网络层的输出数据的融合结果进行处理,所述第二神经网络层的神经元数量为60;

所述第二激活函数层用于根据所述第二神经网络层的输出数据生成所述增益信息,所述第二激活函数层的神经元数量为24;

所述输出层用于输出所述增益信息。

综上所述,本申请实施例提供的技术方案,提供了一种低复杂度的噪声抑制方案,通过简化模型结构,将模型用于对输入的特征数据进行递归计算的循环神经网络单元的数量从3个减少为2个,这样仅需执行2步递归计算即可,不需要执行3步递归计算,且不再计算vad结果,从而简化模型网络结构,降低计算复杂度。

请参考图9,其示出了本申请一个实施例提供的噪声抑制模型的训练装置的框图。该装置具有实现上述噪声抑制模型的训练方法示例的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置可以是上文介绍的计算机设备,也可以设置在计算机设备上。该装置900可以包括:样本获取模块910、特征获取模块920、模型处理模块930、损失计算模块940和参数调整模块950。

样本获取模块910,用于获取训练样本,所述训练样本的样本数据包括带噪语音信号,所述训练样本的标签数据包括所述带噪语音信号对应的真实增益信息,所述真实增益信息包括应用于所述带噪语音信号的不同频带的真实增益值。

特征获取模块920,用于获取所述带噪语音信号的特征数据,所述特征数据包括用于反映所述带噪语音信号的频谱特征的参数。

模型处理模块930,用于通过噪声抑制模型基于所述特征数据,生成预估增益信息;其中,所述预估增益信息包括应用于所述带噪语音信号的不同频带的预估增益值,所述噪声抑制模型用于对所述特征数据和变换后的特征数据进行两步递归处理后,根据递归处理后数据生成所述预估增益信息。

损失计算模块940,用于基于所述预估增益信息和所述真实增益信息,计算所述噪声抑制模型的损失函数值。

参数调整模块950,用于基于所述损失函数值调整所述噪声抑制模型的参数,对所述噪声抑制模型进行训练。

在示例性实施例中,所述样本获取模块910,用于:

获取训练数据,所述训练数据包括语音信号集和噪声信号集,所述语音信号集中包括至少一个语音信号,所述噪声信号集中包括至少一个噪声信号;

对所述语音信号和所述噪声信号进行混合生成所述带噪语音信号;

以所述带噪语音信号为样本数据,所述带噪语音信号对应的真实增益信息为标签数据,生成所述训练样本。

在示例性实施例中,所述样本获取模块910,还用于:

获取所述语音信号的能量值与所述噪声信号的能量值;

将所述语音信号的能量值除以所述语音信号与所述噪声信号的能量值之和,得到所述真实增益信息。

在示例性实施例中,所述噪声抑制模型包括:输入层、第一激活函数层、第一神经网络层、第二神经网络层、第二激活函数层和输出层;其中:

所述输入层用于输入所述带噪语音信号的特征数据,所述输入层的神经元数量为44;

所述第一激活函数层用于对所述特征数据进行变换处理,得到变换后的特征数据,所述第一激活函数层的神经元数量为20;

所述第一神经网络层用于对所述特征数据和所述变换后的特征数据的融合结果进行处理,所述第一神经网络层的神经元数量为30;

所述第二神经网络层用于对所述特征数据和所述第一神经网络层的输出数据的融合结果进行处理,所述第二神经网络层的神经元数量为60;

所述第二激活函数层用于根据所述第二神经网络层的输出数据生成所述预估增益信息,所述第二激活函数层的神经元数量为24;

所述输出层用于输出所述预估增益信息。

需要说明的是,上述实施例提供的装置,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

请参考图10,其示出了本申请一个实施例提供的计算机设备的结构框图。该计算机设备可以是终端或服务器。具体来讲:

计算机设备1000包括中央处理单元(centralprocessingunit,cpu)1001、包括随机存取存储器(randomaccessmemory,ram)1002和只读存储器(readonlymemory,rom)1003的系统存储器1004,以及连接系统存储器1004和中央处理单元1001的系统总线1005。计算机设备1000还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(i/o(input/output)系统)1006,和用于存储操作系统1013、应用程序1014和其他程序模块1015的大容量存储设备1007。

基本输入/输出系统1006包括有用于显示信息的显示器1008和用于用户输入信息的诸如鼠标、键盘之类的输入设备1009。其中显示器1008和输入设备1009都通过连接到系统总线1005的输入输出控制器1010连接到中央处理单元1001。基本输入/输出系统1006还可以包括输入输出控制器1010以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1010还提供输出到显示屏、打印机或其他类型的输出设备。

大容量存储设备1007通过连接到系统总线1005的大容量存储控制器(未示出)连接到中央处理单元1001。大容量存储设备1007及其相关联的计算机可读介质为计算机设备1000提供非易失性存储。也就是说,大容量存储设备1007可以包括诸如硬盘或者cd-rom(compactdiscread-onlymemory,只读光盘)驱动器之类的计算机可读介质(未示出)。

不失一般性,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括ram、rom、eprom(erasableprogrammablereadonlymemory,可擦除可编程只读存储器)、eeprom(electricallyerasableprogrammablereadonlymemory,电可擦可编程只读存储器)、闪存或其他固态存储其技术,cd-rom、dvd(digitalvideodisc,高密度数字视频光盘)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知计算机存储介质不局限于上述几种。上述的系统存储器1004和大容量存储设备1007可以统称为存储器。

根据本申请的各种实施例,计算机设备1000还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机设备1000可以通过连接在系统总线1005上的网络接口单元1011连接到网络1012,或者说,也可以使用网络接口单元1011来连接到其他类型的网络或远程计算机系统(未示出)。

所述存储器还包括计算机程序,该计算机程序存储于存储器中,且经配置以由一个或者一个以上处理器执行,以实现上述语音信号的噪声抑制方法,或者实现上述噪声抑制模型的训练方法。

在示例性实施例中,还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集在被处理器执行时以实现上述语音信号的噪声抑制方法。

在示例性实施例中,还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集在被处理器执行时以实现上述噪声抑制模型的训练方法。

可选地,该计算机可读存储介质可以包括:只读存储器(rom,readonlymemory)、随机存取记忆体(ram,randomaccessmemory)、固态硬盘(ssd,solidstatedrives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(reram,resistancerandomaccessmemory)和动态随机存取存储器(dram,dynamicrandomaccessmemory)。

在示例性实施例中,还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述语音信号的噪声抑制方法。

在示例性实施例中,还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述噪声抑制模型的训练方法。

应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。另外,本文中描述的步骤编号,仅示例性示出了步骤间的一种可能的执行先后顺序,在一些其它实施例中,上述步骤也可以不按照编号顺序来执行,如两个不同编号的步骤同时执行,或者两个不同编号的步骤按照与图示相反的顺序执行,本申请实施例对此不作限定。

以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。

此文章来源于网络,如有侵权,请联系删除

tips