一种麦克风阵列语音增强方法及实现装置

文档序号:1757175 发布日期:2019-11-29 浏览:16次 >En<

阅读说明:本技术 一种麦克风阵列语音增强方法及实现装置 (A kind of microphone array voice enhancement method and realization device ) 是由 张军 梁晟 宁更新 冯义志 余华 季飞 于 2019-07-25 设计创作,主要内容包括:本发明公开了一种麦克风阵列语音增强方法及实现装置,通过支路三来抑制说话人和干扰源方向的信号,得到空间非相干噪声频谱矢量;使用深度神经网络来完成从带噪语音和噪声到干净语音的映射,可以有效地利用语音信号的非线性特性和时间相关性,使估计结果更精确和接近人类听觉特性;该深度神经网络采用带噪语音和噪声作为输入,与传统仅采用带噪语音作为输入的深度神经网络语音增强技术相比具有更好的增强效果。本发明将基于麦克风阵列和深度神经网络的语音增强技术相结合,性能优于传统的麦克风阵列语音增强方法和单麦克风深度神经网络语音增强方法;可以广泛用于视频会议、车载通信、会场、多媒体教室等各种具有嘈杂背景的语音通信应用中。(The invention discloses a kind of microphone array voice enhancement method and realization devices, inhibit the signal of speaker and interference source direction by branch three, obtain space noncoherent noise spectral vector;Nonlinear characteristic and temporal correlation that voice signal can be effectively utilized from noisy speech and noise to the mapping of clean speech are completed using deep neural network, keep estimated result more accurate and close to human auditory system;The deep neural network, as input, has better reinforcing effect using noisy speech and noise compared with tradition is only with noisy speech deep neural network speech enhancement technique as input.The present invention combines the speech enhancement technique based on microphone array and deep neural network, and performance is better than traditional microphone array voice enhancement method and single microphone deep neural network sound enhancement method;It can be widely applied in the various voice communications applications with noisy background such as video conference, vehicle-carrying communication, meeting-place, multi-media classroom.)

一种麦克风阵列语音增强方法及实现装置

技术领域

本发明涉及语音信号处理技术领域,具体涉及一种基于深度神经网络(DNN)的麦克风阵列语音增强方法及实现装置。

背景技术

在现实生活中,人们传递语音信息的过程常常不可避免会受到外界噪声的干扰,这些干扰会令语音质量下降,影响语音通信和识别的效果。语音增强是一种从受噪声干扰的语音中提取有用的语音信号、抑制和降低噪声的技术,即从含噪语音中提取尽可能纯净的原始语音,在语音通信、语音识别等方面有着广泛的用途。

根据所使用麦克风的数目,现有的语音增强算法可以分为两类,一类是基于单麦克风的语音增强算法,例如谱减法、维纳滤波法、MMSE、卡尔曼滤波等。这类语音增强算法使用单个麦克风来接收声音信号,体积小,结构简单,但降噪能力有限,大多只能处理平稳噪声,对于非平稳噪声效果语音增强的效果并不理想。另一类是基于麦克风阵列的语音增强,即在声音采集系统中使用多个麦克风来接收来自于不同空间方向的声音,通过空域滤波来放大说话人方向的信号,抑制其他方向的噪声和干扰,与传统的方法相比具有更高的信号增益和更强的干扰抑制能力,可以解决多种声学估计问题,如声源定位、去混响、语音增强、盲源分离等,缺点是体积大,算法复杂度较高。现有的麦克风阵列语音增强技术可以大致分为固定波束形成法、自适应波束形成法和后置自适应滤波法三类,其中自适应波束形成是在某种最优准则下通过自适应算法来调节和优化阵列权重,对环境的变化具有较好的适应能力,因此在实际中应用得最为广泛。

广义旁瓣抵消器(GSC)是实现自适应波束的一种常用结构,主要由两条支路构成:支路一采用固定波束形成器增强接收方向的信号,支路二首先采用阻塞矩阵阻止接收方向的信号通过,然后采用自适应滤波器对阻塞矩阵的输出进行滤波,以估计出支路一输出中残留的噪声,并通过相减抵消。GSC可以将受限的线性约束最小方差(LCMV)最优化问题转化为非约束最优化问题,因此具有很高的计算效率,实现起来比其他自适应波束形成算法更简单。但传统的GSC还存在着一些不足,例如:对空间非相干噪声抑制能力不强,没有利用语音信号的先验知识并针对语音信号的特点进行优化等。

为了解决上述问题,中国发明专利201711201341.5提供了一种基于统计模型的麦克风阵列语音增强方法,该方法利用干净语音模型和从GSC支路二输出中估计的噪声模型构造最佳语音滤波器来对GSC支路一的输出信号进行增强,能有效提高增强系统对非相干噪声的抑制能力,并能利用语音信号的先验知识来使输出语音更符合人类的听觉特性。但该方法还存在着以下缺点:(1)该方法使用自适应滤波器输出信号能量和自适应滤波器M-1路输入信号能量之和的比例来调整非相干噪声的更新速率,在相干噪声和非相干噪声同时存在时难以准确估计和跟踪非相干噪声,因而影响了噪声抑制的效果;(2)该方法使用线性滤波器来对固定波束形成部分的输出进行增强,在消除噪声的同时会带来语音信号的失真,使增强效果受到较大的限制;(3)在语音增强处理过程中,前后语音帧的处理相互独立,无法利用语音信号在时间上的相关性。

发明内容

本发明的目的是为了解决现有技术中的上述缺陷,提供一种基于深度神经网络的麦克风阵列语音增强方法及实现装置,该方法与现有技术不同之处在于:(1)在传统GSC的基础上增加支路三用于估计非相干噪声,能更准确地估计出支路一输出中残留的噪声;(2)用带噪语音和噪声作为输入、干净语音作为输出训练深度神经网络,并利用该深度神经网络对支路一的输出进行增强,能更好地利用语音信号的非线性特性和时间相关性,将支路一的输出更准确地映射为干净语音。本发明可以广泛用于视频会议、车载通信、会场、多媒体教室等各种具有嘈杂背景的语音通信应用中。

本发明的第一个目的可以通过采取如下技术方案达到:

一种基于深度神经网络的麦克风阵列语音增强方法,采用以下步骤对输入的语音信号进行增强:

S1、使用干净语音库和噪声库训练用于将带噪语音和噪声映射为干净语音的深度神经网络。

S2、使用麦克风阵列估计说话人的来波方向、干扰源的数目和干扰源的来波方向。

S3、将麦克风阵列接收的信号分为三条支路,支路一采用固定波束形成器对说话人方向的信号进行增强,得到支路一输出的语音频谱S(f)(ω,t),其中t为帧序号。支路二采用阻塞矩阵B1抑制说话人方向的信号,并将阻塞矩阵的输出通过自适应滤波器,得到支路二输出的噪声分量频谱支路三采用阻塞矩阵B2抑制说话人和所有干扰源方向的信号,得到支路三输出的空间非相干噪声的频谱矢量

S4、使用估计S(f)(ω,t)中包含的噪声频谱

S5、将S(f)(ω,t)和输入步骤S1中训练好的深度神经网络,得到增强后的语音。

进一步地,上述步骤S1中,深度神经网络的训练采用以下步骤:

步骤S1.1、将干净语音库的语音与噪声库的噪声相叠加得到带噪语音,将带噪语音的短时频谱和相应的噪声的短时频谱作为输入,相应的干净语音的短时频谱作为目标输出,得到训练数据集。

步骤S1.2、设置深度神经网络的结构参数,并采用以下代价函数:

其中X(ω,t)表示第t帧干净语音的短时频谱,表示由第t帧带噪语音短时频谱S(f)(ω,t)和噪声短时频谱构成的输入样本,f(Y(ω,t))表示神经网络的输出,T为训练用的语音帧数。

步骤S1.3、训练深度神经网络,使得代价函数Φ的变化小于预设值。

上述步骤S3和步骤S4中,首先将输入的信号分解为K个子带,每个子带的信号通过三条支路进行处理后,再合成全带的S(f)(ω,t)和

上述步骤S3中,对于第i个子带,支路一的权值矩阵wq,i采用以下方法计算:

其中C1i=d(ωi0)为约束矩阵,M为麦克风阵列的阵元数,ωi为第i个子带的中心频率,θ0为说话人的来波方向,τ0,m,0≤m≤M-1,为说话人声音到达第m个阵元与到达第0个阵元的时延差,f为响应矢量。

上述步骤S3中,对于第i个子带,支路二的阻塞矩阵B1i采用以下方法计算:

将矩阵C1i=d(ωi0)进行奇异值分解

其中Σ1ir为r1×r1的对角矩阵,r1为C1i的秩。令其中U1ir为U1i的前r1行,为U1i的剩余行,则

上述步骤S3中,对于第i个子带,支路三的阻塞矩阵B2i采用以下方法计算:

将矩阵C2i=[d(ωi0),d(ωi1),…,d(ωiJ)]进行奇异值分解

其中M为麦克风阵列的阵元数,ωi为第i个子带的中心频率,θ0为说话人的来波方向,τ0,m,0≤m≤M-1,为说话人声音到达第m个阵元与到达第0个阵元的时延差, J为干扰源数目,θj为干扰源的来波方向,τj,m,0≤m≤M-1,为第j个干扰源声音到达第m个阵元与到达第0个阵元的时延差,Σ2ir为r2×r2的对角矩阵,r2为C2i的秩。令其中U2ir为U2i的前r2行,为U2i的剩余行,则

上述步骤S4中,对于第i个子带,采用下式计算支路一输出的语音频谱中包含的噪声频谱

其中wq,i和wa,i分别为支路一的固定波束形成器和支路二的自适应滤波器的权值向量,B1i为支路二的阻塞矩阵, 为第i个子带中支路三输出的空间非相干噪声的频谱矢量,为第i个子带中支路二输出的噪声分量频谱。

本发明的另一个目的可以通过采取如下技术方案达到:

一种基于深度神经网络的麦克风阵列语音增强方法的实现装置,所述的实现装置包括麦克风阵列接收模块、子带分解模块、子带合成模块、24个改进的子带GSC和深度神经网络,其中,所述的麦克风阵列接收模块、子带分解模块顺次连接,分别用于接收多路音频信号和划分子带;所述的子带合成模块和深度神经网络顺次连接,分别用于合成全带信号和训练用于滤波的神经网络;所述的24个改进的子带GSC模块分别与子带分解模块和子带合成模块连接,用于对信号的子带进行GSC滤波;

其中,所述的麦克风阵列接收模块采用线性阵列结构,包含8个均匀分布在直线上的麦克风,各阵元各向同性;所述的子带分解模块将各个麦克风阵元采集的音频信号分解为24个子带,分别送到相应的改进子带GSC进行处理;所述的子带合成模块将24个改进的子带GSC的输出合成全带信号,送至深度神经网络进行增强。

进一步地,第i,i=1,2,…,24个改进的子带GSC结构包含3条支路,支路一采用固定波束形成器wq,i对说话人方向的信号进行增强,支路二采用阻塞矩阵B1i抑制说话人方向的信号,并将阻塞矩阵的输出通过自适应滤波器wa,i,得到噪声分量频谱支路三采用阻塞矩阵B2i抑制说话人和所有干扰源方向的信号,得到空间非相干噪声的频谱矢量

本发明相对于现有技术具有如下的优点及效果:

1、本发明通过支路三来抑制说话人和干扰源方向的信号,得到空间非相干噪声频谱矢量,与中国发明专利201711201341.5相比能更准确地估计和跟踪空间非相干噪声。

2、本发明使用深度神经网络来完成从带噪语音和噪声到干净语音的映射,与传统GSC的直接相减或中国发明专利201711201341.5中使用GMM、HMM等统计模型构造的线性滤波器相比,可以有效地利用语音信号的非线性特性和时间相关性,使估计结果更精确和接近人类听觉特性。

3、本发明所使用的深度神经网络采用带噪语音和噪声作为输入,与传统仅采用带噪语音作为输入的深度神经网络语音增强技术相比具有更好的增强效果。

4、本发明将基于麦克风阵列和深度神经网络的语音增强技术相结合,性能优于传统的麦克风阵列语音增强方法和单麦克风深度神经网络语音增强方法。

附图说明

图1是本发明实施例中麦克风阵列语音增强方法实现系统的结构框图;

图2是本发明实施例中第i个改进的子带GSC结构框图;

图3是本发明实施例中麦克风阵列语音增强方法的流程图;

图4是本发明实施例中使用的深度神经网络结构框图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例一

本实施例中公开的一种麦克风阵列语音增强方法的实现系统结构框图,如图1所示,由麦克风阵列接收模块、子带分解模块、子带合成模块、24个改进的子带GSC和深度神经网络共同构成,其中麦克风阵列接收模块、子带分解模块顺次连接,分别用于接收多路音频信号和划分子带;子带合成模块和深度神经网络顺次连接,分别用于合成全带信号和训练用于滤波的神经网络;24个改进的子带GSC模块分别与子带分解模块和子带合成模块连接,用于对信号的子带进行GSC滤波。上述实施例中,麦克风阵列接收模块采用线性阵列结构,包含8个均匀分布在直线上的麦克风,各阵元各向同性。子带分解模块将各个麦克风阵元采集的音频信号分解为24个子带,分别送到相应的改进子带GSC进行处理。子带合成模块将24个改进的子带GSC的输出合成全带信号,送至深度神经网络进行增强。

第i个改进的子带GSC结构如图2所示,包含3条支路。支路一采用固定波束形成器wq,i对说话人方向的信号进行增强,支路二采用阻塞矩阵B1i抑制说话人方向的信号,并将阻塞矩阵的输出通过自适应滤波器wa,i,得到噪声分量频谱支路三采用阻塞矩阵B2i抑制说话人和所有干扰源方向的信号,得到空间非相干噪声的频谱矢量

实施例二

本实施例中公开了一种基于深度神经网络(DNN)的麦克风阵列语音增强方法,采用实施例一中公开的麦克风阵列语音增强系统进行实施,对输入的语音进行增强的流程如图3所示:

步骤S1、使用干净语音库和噪声库训练用于将带噪语音和噪声映射为干净语音的深度神经网络;

上述步骤S1中,深度神经网络的训练采用以下步骤:

步骤S1.1、将干净语音库的语音与噪声库的噪声相叠加得到带噪语音,将带噪语音的短时频谱和相应的噪声的短时频谱作为输入,相应的干净语音的短时频谱作为目标输出,得到训练数据集。

本实施例中,噪声库的噪声包含不同种类和不同信噪比的噪声。

步骤S1.2、设置深度神经网络的结构参数,并采用以下代价函数:

其中X(ω,t)表示第t帧干净语音的短时频谱,表示由第t帧带噪语音短时频谱S(f)(ω,t)和噪声短时频谱构成的输入样本,f(Y(ω,t))表示神经网络的输出,T为训练用的语音帧数。

本实施例中,深度神经网络结构如图4所示,包含1个降维层、10个全连接层和3个Dropout层,输入矢量经过降维层降维后,通过由9个全连接层和3个Dropout层构成的深度神经网络隐藏层,每个全连接层节点数为2048,均使用Relu作为激活函数,每3个全连接层后连接一个Dropout层,3个Dropout层丢弃率分别为0.1、0.2、0.2。深度神经网络的输出层为使用Relu作为激活函数的全连接层,节点数与输入Y(ω,t)的维数相同。

步骤S1.3、用梯度下降法训练深度神经网络,使得代价函数Φ的变化小于预设值。

步骤S2、使用麦克风阵列估计说话人的来波方向、干扰源的数目和干扰源的来波方向。

本实施例中,说话人的来波方向和干扰源的数目及来波方向估计方法具体如下:

步骤S2.1、采用特征值分解法确定信源数目。当空间有J个相互独立的远场宽带信号分别以入射角θj,i=1~J,入射到含有M个阵元的均匀线性矩阵上,阵列接收信号为

X(t)=AS(t)+N(t)

其中X(t)为阵列接收信号矢量,S(t)为J个远场信号源矢量,A为阵列流形矩形,N(t)为加性背景噪声矢量。求阵列接收信号矢量的协方差

R=E[X(t)X(t)H]

E表示求期望。对协方差R进行特征值分解:

R=UΣUH

其中Σ为M维对角矩阵,其M个对角元素λn,n=1~M,为R的特征值,U为对应特征向量矩阵,M为阵元数目。将上述M个特征值按大小进行降序排列,即:

λ1≥λ2≥…λn≥λn+1…≥λM

本实施例中,信号源个数采用下式计算

其中

K为观察信号样本数。

在另一实施例中,信号源个数采用下式计算

其中

步骤S2.2、采用Music算法估计声源方位角,方法为:对R进行特征值分解,将最小的M-K个特征值对应的特征向量组成矩阵G,计算出MUSIC谱PMUSIC(θ),MUSIC谱极大值点即来波方向。MUSIC谱计算如下:

其中

步骤S3、将麦克风阵列接收的信号通过子带分解模块分解为24个子带,每个子带i的信号分为三条支路,支路一采用固定波束形成器对说话人方向的信号进行增强,得到支路一输出的语音频谱其中t为帧序号。支路二采用阻塞矩阵B1i抑制说话人方向的信号,并将阻塞矩阵的输出通过自适应滤波器,得到支路二输出的噪声分量频谱支路三采用阻塞矩阵B2i抑制说话人和所有干扰源方向的信号,得到支路三输出的空间非相干噪声的频谱矢量

本实施例中,子带信号的分解和合成采用余弦调制滤波组来实现,滤波器组的分析和合成滤波器为对带宽为低通滤波器进行调制得到,其中K=24为子带数目。用于子带分解的分析滤波器组系数计算方法为:以系数为h0(l)的低通滤波器为原型滤波器,则分析滤波器系数为

其中hk(l)为分析滤波器组中第k个滤波器的系数,L为原型滤波器的阶数,l=0~L-1,k=0~K-1,θk=(-1)kπ/4。

本实施例中,对于第i个子带,支路一的权值矩阵wq,i采用以下方法计算:

其中C1i=d(ωi0)为约束矩阵,M为麦克风阵列的阵元数,ωi为第i个子带的中心频率,θ0为说话人的来波方向,τ0,m,0≤m≤M-1,为说话人声音到达第m个阵元与到达第0个阵元的时延差,f为响应矢量。将麦克风阵列接收模块输出的第i个子带信号通过wq,i加权后,得到支路一输出的语音频谱

对于第i个子带,支路二的阻塞矩阵B1i采用以下方法计算:将矩阵C1i=d(ωi0)进行奇异值分解

其中Σ1ir为r1×r1的对角矩阵,r1为C1i的秩。令其中U1ir为U1i的前r1行,为U1i的剩余行,则将麦克风阵列接收模块输出的第i个子带信号通过阻塞矩阵B1i加权后,再通过自适应滤波器wa,i,得到支路二输出的噪声分量频谱

对于第i个子带,支路三的阻塞矩阵B2i采用以下方法计算:将矩阵C2i=[d(ωi0),d(ωi1),…,d(ωiJ)]进行奇异值分解

其中M为麦克风阵列的阵元数,ωi为第i个子带的中心频率,θ0为说话人的来波方向,τ0,m,0≤m≤M-1,为说话人声音到达第m个阵元与到达第0个阵元的时延差, J为干扰源数目,θj为干扰源的来波方向,τj,m,0≤m≤M-1,为第j个干扰源声音到达第m个阵元与到达第0个阵元的时延差,Σ2ir为r2×r2的对角矩阵,r2为C2i的秩。令其中U2ir为U2i的前r2行,为U2i的剩余行,则将麦克风阵列接收模块输出的第i个子带信号通过阻塞矩阵B2i加权后,得到支路三输出的噪声分量频谱

步骤S4、使用估计S(f)(ω,t)中包含的噪声频谱

本实施例中,对于第i个子带,采用下式计算支路一输出的语音频谱中包含的噪声频谱

其中wq,i和wa,i分别为支路一的固定波束形成器和支路二的自适应滤波器的权值向量,B1i为支路二的阻塞矩阵, 为第i个子带中支路三输出的空间非相干噪声的频谱矢量,为第i个子带中支路二输出的噪声分量频谱。

本实施例中,所有子带的Si (f)(ω)和采用余弦调制滤波组合成全带S(f)(ω)和用于子带合成的合成滤波器组系数计算方法为:采用与分析滤波器组相同的低通原型滤波器h0(l),合成滤波器系数为

其中gk(l)为合成滤波器组中第k个滤波器的系数,L为原型滤波器的阶数,l=0~L-1,k=0~K-1,θk=(-1)kπ/4。

步骤S5、将S(f)(ω)和输入步骤S1中训练的深度神经网络,得到增强后的语音。

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

14页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:信号生成的方法、基于人工智能的语音识别方法及装置

网友询问留言

已有0条留言

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

精彩留言,会给你点赞!