本发明涉及语音信号处理技术,尤其是利用阵列信号消噪技术,具体是一种双麦克风语音增强的方法。
背景技术:
语音增强的主要目的是从含噪语音中抑制噪声信号,得到纯净语音,以提高语音质量和清晰度,语音增强被广泛应用于语音通信、自动语音识别、手机和助听器等领域。语音增强可分为单通道语音增强和多通道语音增强,业已证明:单通道语音增强不可避免会对语音信号造成损伤,而多通道语音增强因其具有比单通道更多路的信号可以利用,其增强效果通常优于单路的增强效果。
多通道语音增强通常以麦克风阵列的形式出现,麦克风阵列由于其空间孔径较大,严重影响其在许多场合的应用,而由两个麦克风组成的双麦克风可视为最简单的麦克风阵列,其应用场合更为广泛,尤其是由两个相距很近的麦克风所组成的微型双麦克风,可以很容易地被嵌入耳机、电话、手机及助听器等设备之中。
技术实现要素:
本发明的目的是针对现有技术的不足而提供一种双麦克风语音增强的方法。
这种方法能够抑制方向噪声、改善语音的质量、鲁棒性强,且易于实现。
实现本发明目的的技术方案是:
一种双麦克风语音增强的方法,包括如下步骤:
1)采用双麦克风来接收两通道含噪语音信号,语音源位于两麦克风连线上且在其中一个麦克风m1一端,噪声源位于两个麦克风的连线上且在另一个麦克风m2的一端,采样频率fs、声速c,则两麦克风的距离d公式(1)所示:
第i个采样时刻由m1得到的语音信号为s(i),由m2得到的噪声信号为n(i),m1和m2得到的带噪语音信号为x1(i)和x2(i),如公式(2)、公式(3)所示:
x1(i)=s(i) βn(i-1)(2),
x2(i)=n(i) βs(i-1)(3),
其中β为0<β<1表示声音由m1到m2传播d距离时的信号幅度衰减因子,
首先对两通道含噪语音信号进行差分运算即采用固定差分波束形成抑制方向噪声,并获得后续处理所需要的差分信号ys(i)和差分噪声yn(i),具体为:将两路麦克风信号做差分运算,得到差分信号ys(i)如公式(4)所示:
差分噪声yn(i)如公式(5)所示:
由公式(4)得到:对m1和m2的带噪语音进行差分运算之后,噪声信号n(i)被减除了,而语音信号s(i)被保留了下来,语音信号发生了畸变,需通过后续的处理进行恢复,实际应用中,噪声可能并非位于两麦克风连线上且在m2一端,采用固定差分波束形成是增强期望方向的语音,同时抑制非期望方向的噪声信号,固定差分波束形成不能完全减除噪声,其残留噪声情况可根据固定差分波束形成的波束图而确定,噪声在360°范围内不同角度时,噪声方向越靠近180°,噪声衰减越大,在180°方向上形成零点;噪声方向越靠近声源方向(0°)时,噪声的衰减就越小,由于实际环境中语音与噪声在传播过程中通常会有直射、反射、散射的影响,差分运算并不能完全减除噪声,需要进一步对残留噪声进行消除;
2)对步骤1)得到的差分信号ys(i)和差分噪声yn(i)的语音畸变不进行恢复运算即对差分信号ys(i)和差分噪声yn(i)采用基于语音活动检测vad(voiceactivitydetector,简称vad)的改进自适应噪声抵消anc(adaptivenoisecancellation,简称anc)算法,消除差分信号ys(i)中的残余噪声,改进anc算法中的自适应处理器选用最小均方lms(leastmeansquare,简称lms),anc算法中的主输入为差分信号ys(i)、参考输入为差分噪声yn(i),如公式(6)、公式(7)、公式(8)、公式(9)、公式(10)所示:
y(i)=wt(i)·yn(i)(6),
w(i)=[w0(i),w1(i),w2(i),...,wn(i)]t(8),
e(i)=ys(i)-y(i)(9),
w(i 1)=w(i) μe(i)yn(i)(10),
其中,y(i)为自适应滤波器的输出信号、yn(i)为差分噪声信号yn(i)在不同时刻取值组成的向量、e(i)为误差信号,由差分信号和滤波器的输出信号求差产生用于形成自适应算法所需的目标信号,以确定滤波器系数的自动更新,n为自适应fir滤波器的阶数、w(i)为自适应滤波器的系数向量,通过调整自适应滤波器的系数w(i)来使误差信号e(i)的均方期望值最小、μ代表自适应滤波器系数的更新步长,它影响噪声抵消的收敛速率、稳定性及降噪效果,对差分噪声进行自适应滤波,可获得差分信号中噪声的近似估计,然后用差分信号减去该近似估计,以产生有用的语音信号的估计,先对步骤1中获取的差分信号和差分噪声进一步作噪声抵消处理,其中的vad通过ys(i)进行有声/无声时间段的检测,并将检测结果用于控制自适应滤波器系数的更新与否;
3)由于anc的参考输入中很难保障仅为纯粹的噪声信号,当中难免混有部分语音,从而难免造成噪声抵消的同时,会对语音造成部分抵消,为了减小自适应噪声抵消对有用语音信号的影响,采用改进的anc语音增强:anc的自适应滤波器系数仅在无语音的时间段进行自适应更新,而在有语音的时间段则保持自适应滤波器系数不变,即基于vad的anc算法为采用时域有限冲击响应滤波恢复算法fir(finiteimpulseresponse,简称fir)对步骤1)得到的差分信号ys(i)和差分噪声yn(i)的语音畸变进行恢复运算:
由公式(4)得到:差分运算输出的信号ys(i)并非语音信号s(i),而是s(i)的畸变信号s(i)-β2s(i-2),对公式(4)作z变换可得:
ys(z)=(1-β2z-2)s(z)(11),
由公式(11)得到公式(12):
公式(12)由z域转化到时域、l=30时,有:
取
则
其中,h为恢复滤波器的系数,l为恢复滤波器的阶数,由于自适应噪声抵消anc可对差分信号ys(i)中的残留噪声进行抑制,即公式(9)中的e(i)具有比ys(i)更高的信噪比,因此恢复滤波针对e(i)进行,即:
其中,
显然,以上通过公式(17)进行语音信号恢复,仅需进行l阶的有限冲击响应(fir)滤波即可,通常取l=30,因此运算量比频域恢复方法更少,更加易于实时实现,这种恢复算法所引起的输出信号的延迟时间仅为l个采样点,因此相比频域恢复方法所引起的延迟时间为一帧(通常为256个采样点)而言,其延迟时间也减少了许多,这个方法获得比现有技术中的频域恢复算法具有更小的运算量和更小的时延。本技术方案可用于数字助听器、人工耳蜗、录音笔、手机、语音识别等领域。
这种方法能够抑制方向噪声、改善语音的质量、鲁棒性强,且易于实现。
附图说明
图1为实施例方法原理示意框图;
图2为实施例中双麦克风采集信号示意图;
图3为实施例中固定差分波束形成的波束图;
图4为实施例中改进的自适应噪声抵消方法示意框图。
具体实施方式
下面结合附图和实施例对本发明的内容作进一步的阐述,但不是对本发明的限定:
实施例:
参照图1,一种双麦克风语音增强的方法,包括如下步骤:
1)采用双麦克风来接收两通道含噪语音信号,如图2所示,语音源位于两麦克风连线上且在其中一个麦克风m1一端,噪声源位于两个麦克风的连线上且在另一个麦克风m2的一端,本例中采样频率fs取16khz,声速c取340m/s,则两麦克风的距离d如公式(1)所示,为2.125cm,
第i个采样时刻由m1得到的语音信号为s(i),由m2得到的噪声信号为n(i),m1和m2得到的带噪语音信号为x1(i)和x2(i),如公式(2)、公式(3)所示:
x1(i)=s(i) βn(i-1)(2),
x2(i)=n(i) βs(i-1)(3),
其中β为0<β<1表示声音由m1到m2传播d距离时的信号幅度衰减因子,首先对两通道含噪语音信号进行差分运算即采用固定差分波束形成抑制方向噪声,并获得后续处理所需要的差分信号ys(i)和差分噪声yn(i),具体为:将两路麦克风信号做差分运算,得到差分信号ys(i)如公式(4)所示:
差分噪声yn(i)如公式(5)所示:
由公式(4)得到:对m1和m2的带噪语音进行差分运算之后,噪声信号n(i)被减除了,而语音信号s(i)被保留了下来,语音信号发生了畸变,需通过后续的处理进行恢复,实际应用中,噪声可能并非位于两麦克风连线上且在m2一端,采用固定差分波束形成是增强期望方向的语音,同时抑制非期望方向的噪声信号,固定差分波束形成不能完全减除噪声,其残留噪声情况可根据固定差分波束形成的波束图而确定,如图3所示,噪声在360°范围内不同角度时,残留噪声的增益方向越靠近180°,噪声衰减越大,在180°方向上形成零点;噪声方向越靠近声源方向(0°)时,噪声的衰减就越小,由于实际环境中语音与噪声在传播过程中通常会有直射、反射、散射的影响,差分运算并不能完全减除噪声,需要进一步对残留噪声进行消除;
2)对步骤1)得到的差分信号ys(i)和差分噪声yn(i)的语音畸变不进行恢复运算即对差分信号ys(i)和差分噪声yn(i)采用基于语音活动检测vad的改进自适应噪声抵消anc算法,消除差分信号ys(i)中的残余噪声,改进anc算法中的自适应处理器选用最小均方lms,anc算法中的主输入为差分信号ys(i)、参考输入为差分噪声yn(i),如公式(6)、公式(7)、公式(8)、公式(9)、公式(10)所示:
y(i)=wt(i)·yn(i)(6),
w(i)=[w0(i),w1(i),w2(i),...,wn(i)]t(8),
e(i)=ys(i)-y(i)(9),
w(i 1)=w(i) μe(i)yn(i)(10),
其中,y(i)为自适应滤波器的输出信号、yn(i)为差分噪声信号yn(i)在不同时刻取值组成的向量、e(i)为误差信号,由差分信号和滤波器的输出信号求差产生用于形成自适应算法所需的目标信号,以确定滤波器系数的自动更新,n为自适应fir滤波器的阶数、w(i)为自适应滤波器的系数向量,通过调整自适应滤波器的系数w(i)来使误差信号e(i)的均方期望值最小、μ代表自适应滤波器系数的更新步长,它影响噪声抵消的收敛速率、稳定性及降噪效果,对差分噪声进行自适应滤波,可获得差分信号中噪声的近似估计,然后用差分信号减去该近似估计,以产生有用的语音信号的估计,先对步骤1中获取的差分信号和差分噪声进一步作噪声抵消处理,其中的vad通过ys(i)进行有声/无声时间段的检测,并将检测结果用于控制自适应滤波器系数的更新与否;
3)由于anc的参考输入中很难保障仅为纯粹的噪声信号,当中难免混有部分语音,从而难免造成噪声抵消的同时,会对语音造成部分抵消,为了减小自适应噪声抵消对有用语音信号的影响,采用改进的anc语音增强方法:anc的自适应滤波器系数仅在无语音的时间段进行自适应更新,而在有语音的时间段则保持自适应滤波器系数不变,即如图4所示,基于vad的anc算法为采用时域有限冲击响应滤波恢复算法fir对步骤1)得到的差分信号ys(i)和差分噪声yn(i)的语音畸变进行恢复运算:
由公式(4)得到:差分运算输出的信号ys(i)并非语音信号s(i),而是s(i)的畸变信号s(i)-β2s(i-2),对公式(4)作z变换可得:
ys(z)=(1-β2z-2)s(z)(11),
由公式(11)得到公式(12):
公式(12)由z域转化到时域、l=30时,有:
取
则
其中,h为恢复滤波器的系数,l为恢复滤波器的阶数,l=30,由于自适应噪声抵消anc可对差分信号ys(i)中的残留噪声进行抑制,即公式(9)中的e(i)具有比ys(i)更高的信噪比,因此恢复滤波针对e(i)进行,即:
其中,
显然,以上通过公式(17)进行语音信号恢复,仅需进行l阶的有限冲击响应(fir)滤波即可,通常取l=30,因此运算量比频域恢复方法更少,更加易于实时实现,这种恢复算法所引起的输出信号的延迟时间仅为l个采样点,因此相比频域恢复方法所引起的延迟时间为一帧(通常为256个采样点)而言,其延迟时间也减少了许多,本例方法获得比现有技术中的频域恢复算法具有更小的运算量和更小的时延。
本文用于企业家、创业者技术爱好者查询,结果仅供参考。