1 声学回声消除技术的原理
1.1 声学回声产生原理
根据回声的产生原因,回声可以分为声学回声和电学回声两类。电学回声是由于电路阻抗不匹配造成的,通常影响比较小。随着消除回声技术的发展,当前回声消除研究的重点已由“电学回声”的消除转向了“声学回声”的消除。声学回声指设备的一部分声音信号回馈到同一设备的受话器,分为直接回声和间接回声。直接回声指扬声器的声音未经任何反射直接进入麦克风,这种回声延迟最短。间接回声是指扬声器播放的声音经不同的路径一次或多次反射后进入麦克风所产生的回声集合,其主要特点是回声路径冲激响应变化范围大,变化快,冲激响应持续时间长,一般在50~300 ms。这使得自适应建模滤波器的阶数很高,因而成为语音通信系统回声的主要难题。
1.2 声学回声消除的原理
自适应回声抵消的基本思想是估计回声路径的特征参数,产生一个模拟的回音路径,得出模拟回声信号,从接收信号中减去该信号,实现回声抵消。图1给出了单向传输的声学消回声器AEC的原理图。
图1中,y(n)代表来自远端的信号;r(n)是经过回声通道而产生的不期望的回声;x(n)是近端的语音信号;D口的近端信号叠加有不期望的回声。对消回声器来说,接收到的远端信号作为参考信号,消回声器根据由自适应滤波器产生回声估计值,将r1(n)从近端带有回声的语音信号减去,就得到近端传送出去的信号μ(n)=x(n)+r(n)-r1(n)。在理想情况下,经过消回声处理后,残留的回声误差e(n)=r(n)-r1(n)将为0,从而实现回音消除。
2 自适应回声消除算法理论
回声消除理论的难点是估计回声与近端输入信号之间的同步问题以及如何对双端讲话进行处理的问题,若这两个问题处理不好,就会造成滤波器的发散,不但不能消除回声,反而会引入更烦人的噪声。
2.1 双端话音处理与MDF算法结合
在NLMS算法中,假设输入近端背景噪声与远端信号均为白噪声,那么两信号间为时间无关的,因此可以求得最优步长因子:
式中:r(n)为残留回声的方差的估计值;e(n)为误差信号的方差的估计值。
但是用LMS/NLMS算法来进行语音信号的声学回声消除时,两信号时间无关的假设就不完全成立,因此只能借助于频域处理法。MDF算法相当于对每一个频率使用NLMS算法。为了解决双端讲话检测这个难题,文献[6]提出了一种与MDF相结合的不需要显式进行双端话音检测的方法,以下是推导。由于信号在频域的相关程度比在时域的相关程度小得多,而且步长因子μ也可以变换到频率域μ(k,l),即有公式:
式中:k为输入信号块索引号;l为信号频率。假定残留回声是泄漏因子η(l)与回声估计值的乘积,即:
又因为步长因子需要在双端讲话发生时迅速对其做出反应,故可以有等式: