基于三元麦克风阵列的自适应语音降噪方法与流程

    技术2025-02-05  58


    本发明涉及音频信号处理,具体是一种基于三元麦克风阵列的自适应语音降噪方法。


    背景技术:

    1、为了减少噪声对于语音的干扰,语音增强是必要的。基于麦克风阵列的多通道语音增强可以采集来自不同方向的语音信息,通过信号处理算法从多个信号中提取出目标信号,并削弱来自其他方向的干扰信号,从而提高受损语音的质量和可懂度。所以,相较于单通道语音增强,基于麦克风阵列的多通道语音增强方法通常效果更好。

    2、最小方差无畸变响应波束形成器(minimum variance distortionlessresponse,mvdr)旨在最小化方差,使得在所选择的方向上信号增强,而在其他方向上抑制干扰和噪声。这种方法使得在目标方向上得到最小失真和最大信噪比。通过调整权重,能够在不损失信号质量的情况下抑制来自其他方向的干扰。这使得在复杂的声学环境中,如多人交流或杂音较多的环境中,仍然能够提取目标语音信号。并且,还可以利用阵列的空间信息,能够更好地处理多通道信号,提高信号处理的效果。


    技术实现思路

    1、本发明的目的是针对现有技术的不足,而提供一种基于三元麦克风阵列的自适应语音降噪方法。这种方法能够抑制不同类型的方向性噪声的影响,提高语音的可懂度,具有一定的鲁棒性。

    2、实现本发明目的的技术方案是:

    3、一种基于三元麦克风阵列的自适应语音降噪方法,包括如下步骤:

    4、1)采用3个麦克风组成的均匀线性阵列采集带噪语音信号:假设在无混响条件下,以第一个麦克风做为参考麦克风,n=0,1,2,...为采样点序列号,第m个麦克风接收到的信号可以写成:

    5、y'm(n)=s'm(n)+w'm(n)=am[s(n-τm)+w(n)] (1),

    6、其中,m=1,2,3,y'm(n),s'm(n),w'm(n)分别是第m个麦克风采集到的带噪语音、目标语音和噪声,s(n)是目标语音,w(n)是噪声,am是幅值系数,τm是第m个麦克风接收到的语音信号相对于参考麦克风接收到的语音信号的延迟采样点数,w'm(n)和s'm(n)不相关,在实际运用中,由于麦克风一致性无法达到理想状态和放大电路的影响,导致了麦克风之间的幅值会有误差,为了减小这个误差,在预处理中用一个幅值校准因子gm去对信号做幅值校准,计算方式如下:

    7、

    8、am=median(ym(1),ym(2),…,ym(l))  (3),

    9、

    10、式中:取前l个采样点计算am,median(x)表示取中位数,g表示所有传感器信号幅值的平均幅值,经幅值校准因子调整后的信号可表示为:

    11、ym(n)=gmy'm(n) (5),

    12、麦克风阵列接收到的带噪语音信号经幅值校准,再进行分帧加窗后,对其进行傅里叶变换,从而得到频域上的矢量形式为:

    13、

    14、y(l,k)=[y1(l,k) y2(l,k) y3(l,k)]                    (7),

    15、w(l,k)=[w1(l,k) w2(l,k) w3(l,k)]                   (8),

    16、

    17、式中:k=1,2,…为帧索引号,l代表第l个频率点,l=0,1,…,n-1,n为帧长,y(l,k),s(l,k),w(l,k)分别是麦克风阵列接收到的语音信号经幅值校准后的带噪语音、目标语音和噪声,表示导向矢量,τ0为相邻麦克风接收到的语音信号之间的延迟采样点数;

    18、2)最小方差无畸变响应波束形成器mvdr(minimum variance distortionlessresponse,简称mvdr):通过h(l,k)对y(l,k)进行线性滤波,提取所需的语音信号,如式(10)所示:

    19、z(l,k)=hh(l,k)y(l,k)                            (10),

    20、其中,h代表共轭转置,h(l,k)的求解公式为:

    21、

    22、式中:rw(l,k)为噪声伪谱相干矩阵,为了跟踪环境噪声的变化,rw(l,k)的更新计算方法如下:

    23、使用基于能量和过零率的声音活动检测vad(voice activity detection,简称vad)方法判断当前帧是否为噪声帧,当检测到当前帧不是噪声帧时,当前帧的噪声伪谱相干矩阵rw(l,k)保持与前一帧的相同,即rw(l,k)=rw(l,k-1);当检测到当前帧为噪声帧而且噪声帧数j不超过设定的值n0时,rw(l,k)采用如下式(12)进行更新:

    24、

    25、式中d(l,k)为当前帧在频点l的协方差频谱矩阵;当检测到当前帧为噪声帧而且噪声帧j超过设定的值n0时,rw(l,k)采用如下式(13)进行更新:

    26、rw(l,k)=(1-α)rw(l,k-1)+αd(l,k)      (13),

    27、其中α为设定的学习率,而且0<α<1,由式(10)得到广义旁瓣相消gsc(generalizedsidelobe canceller,简称gsc)结构上支路的期望语音信号z(l,k)后,再对其进行逆傅里叶变换得到z(n),将其作为改进的自适应噪声消除模块的主输入进行自适应滤波处理;

    28、3)改进的自适应噪声消除:经过阻塞矩阵后的信号yb(n),采用归一化最小均方nlms(normalized least mean square,简称nlms)与vad算法相结合的改进自适应滤波算法进行噪声权重向量的迭代更新,利用vad算法检测噪声帧,仅在噪声帧时更新自适应滤波器的权重系数,其算法流程为:

    29、y(n)=[y1(n)y2(n)y3(n)]  (14),

    30、

    31、u(n+1)=u(n)+μyanc(n)yb(n) (18),

    32、

    33、式中:为阻塞矩阵,符号代表自适应滤波器的输出信号,yanc(n)表示mvdr输出z(n)与自适应滤波器输出之间的差值,权重向量u(n)用以更新自适应滤波器,其更新公式由式(18)描述,用于在语音不存在的情况下进行滤波器权重系数的迭代更新,参数μ表示计算权重向量更新的步长,该参数对算法的收敛速度和稳定性产生直接影响,而β(0<β<1)则代表归一化步长,符号ε表示一个远小于1的正常数,其存在是为了防止步长μ取值过大,从而降低算法的稳定性;

    34、4)后置滤波算法:输出语音信号经过改进的anc算法处理后的yanc(n)通过短时傅里叶变换转到频域上,再通过最优修正对数谱幅度omlsa(optimal modified log-spectral amplitude,简称omlsa)估计器进行后置滤波以进一步消除残留噪声,干净语音每个频点的幅度谱估计值由yanc(l,k)通过一个谱增益滤波器得到:

    35、

    36、谱增益计算函数公式为

    37、

    38、式中:x(l,k)为先验信噪比,γ(l,k)为后验信噪比,p(l,k)是语音存在概率,q(l,k)是语音不存在概率,β是控制降噪和语音失真之间平衡的权重因子,gh1为语音存在时的条件增益,gmin为语音不存在时滤波器的增益下限,λd(l,k)为噪声功率估计值,是时变平滑参数,最后,对经过谱增益滤波器后的干净语音频谱估计值进行短时傅里叶逆变换得到系统输出的时域信号out(n)。

    39、本技术方案以三元麦克风阵列采集语音信号,以最小方差无畸变响应波束形成器的输出作为广义旁瓣抵消算法上支路的期望信号。下支路利用阻塞矩阵提取参考噪声信号输入改进的自适应噪声相消模块进行自适应滤波处理,最后使用最优修正对数谱幅度算法进一步的消除残留噪声。本技术方案可以用于手机、助听器、针对性的降噪耳机等领域。

    40、这种方法能够抑制不同类型的方向性噪声的影响,提高语音的可懂度,具有一定的鲁棒性。


    技术特征:

    1.一种基于三元麦克风阵列的自适应语音降噪方法,其特征在于,包括如下步骤:


    技术总结
    本发明公开了一种基于三元麦克风阵列的自适应语音降噪方法。该方法以三元线性麦克风阵列采集语音信号,并对语音信号进行幅值校准,然后,以最小方差无畸变响应波束形成器的输出作为广义旁瓣抵消算法上支路的期望信号;下支路利用阻塞矩阵提取参考噪声信号输入改进的自适应噪声相消模块进行自适应滤波处理,最后使用最优修正对数谱幅度算法进一步消除残留噪声。该方法能有效抑制不同类型的方向性噪声,并具有一定的鲁棒性。

    技术研发人员:曾仕霖,方韶劻,林凤梅,曾庆宁
    受保护的技术使用者:昂思科技(定南)有限公司
    技术研发日:
    技术公布日:2024/10/24
    转载请注明原文地址:https://symbian.8miu.com/read-25997.html

    最新回复(0)