李 娜 陈盛云 陆晓明
(昆明理工大学信息与自动化学院,昆明 650051)
在电话会议系统和免提电话系统这些应用中,人们期望有更好的声音质量和声音定位,因而这样的系统大多是喇叭——麦克风对构成的多声道系统.而在多声道系统中,由于两声道系统(立体声)对一般多声道情形而言,仅在复杂度方面不同,所以两声道回波消除(SAEC)是人们最感兴趣的研究问题.两声道AEC基本上不同于传统的单声道AEC.在综合分析了两路仿射投影(AP2)算法和两路归一化最小均方误差(NLMS2)算法后发现:NLMS2算法在遇到相关性很强的两路语音信号时,收敛速率很慢;AP2算法虽然收敛速度快,但计算复杂度明显高于NLMS2算法.针对两路回声消除,如何获得一种收敛快而计算量又较小的新算法呢?近年来小波变换已被引入自适应滤波器[1-2],小波变换先对自适应滤波器的输入进行正交变换,将输入信号向量正交分解到多尺度空间,利用小波的时频局部特性,可以减小了自适应滤波器输入向量自相关阵特征值的分散程度,大大增加了算法的收敛步长,提高收敛速度[3-4].基于上述思想,本文采用小波变换将输入的语音信号正交分解为6个不同频段的信号,针对不同频段综合利用AP2算法和NLMS2,由此得到一种新的算法——WL-APNLMS2.经计算机仿真结果表明,新算法可以有效地消除声学回声,收敛性优于NLMS2、AP2算法,计算复杂度较低,综合性能更优.
如图1所示,远端房间(左边)和近端房间(右边)中各有一对扬声器和麦克风,远端房间的声音由声源经传播路径G1、G2分别到达两个麦克风,形成两路输入信号x1(n)和x2(n),g1、g2分别表示传播路径G1、G2的单位脉冲响应向量.输入信号传送到近端房间,分别经扬声器与麦克风之间的回声路径H1、H2形成一路回声信号y(n).h1、h2示回声路径H1、H2的单位脉冲响应向量.
图1 两路回声消除器示意图
回波消除器包括了两个并行结构的自适应滤波器w1和w2.回波消除器以 x1(n)和x2(n)为输入信号,产生回波信号 y(n)的估计信号 y′(n),进而与之抵消 .设
为FIR自适应滤波器w1和w2在n时刻的估计值,长度为L.记
则有,
这样,n时刻的误差为
多路回波消除的目的就是要最小化e(n),使回波信号达到最大程度的抵消.
通常的两路仿射投影算法由两通道的LMS算法扩展而来[5],下面给出了通常的两路算法的计算过程:
输入向量 X1(n)、X2(n)和滤波器系数 H1(n)、H2(n)的长度为L,α1、α2是自适应步长,ρ(0 <ρ<1)示两路输入信号的相关性因子.
设n时刻的输入为
相应的自适应滤波器系数为
而n时刻前p个输入构成的矩阵为
并分别记d(n)和e(n)为n时刻及其前的p个期望输出和误差所构成的向量,即令:
式中,
更新公式即
两路回声消除要重点考虑两路径输入信号之间的相关性.NLMS2算法虽然复杂度最小且鲁棒性最好,但它的收敛速度对输入的自相关函数矩阵特征值的分布敏感,如果分布太散,即最大值与最小值差异太大,收敛速度则会变慢.为了改进该算法,一般是对输入的信号正交化处理.早期的正交化方法采用格型结构滤波器,Gram-Schmidt正交化和离散Fourier变换,针对两路语音信号,采用一种新的正交化处理方法——小波变换.小波变换是一种信号的时间-尺度分析方法,具有多分辨率分析的特点,在时域频域均具有表征信号局部特征的能力[6].利用小波的时频局部特性,可以减小了自适应滤波器输入向量自相关阵特征值的分散程度,大大增加了算法的收敛步长,提高收敛速度[4].
取两路信号x1(n)和x2(n),信号长度N=5000,输入信号的波形如图2所示.用小波变换的方法对自适应滤波器的输入进行正交变换,将输入信号分解为6组信号,如图 3所示.其中a5(n)、d5(n)、d4(n)频率较低,d3(n)、d2(n)、d1(n)频率较高.
图2 两路输入信号的波形
图3 小波变换将原信号分解为6组信号
如图4所示,原信号在不同频段能量分布有所不同,在低频段,语音信号幅度大,在高频段,语音信号幅度小.语音信号的能量主要集中在0~1 000 Hz,在1000~4000 Hz语音能量相对较少,在4000~6 000 Hz能量更少[7].
图4 原信号的功率谱
如图5所示,小波变换后语音信号的能量分布,从低到高依次为a5(n)、d5(n)、d4(n),d3(n)、d2(n)、d1(n).其中,a5(n)、d5(n)、d4(n)约占总能量的17%,d3(n)、d2(n)、d1(n)约占总能量的 83%.若对于不同的频段采用不同的自适应算法,则更能合理地分配有限的资源,进而达到节省资源、计算量及在一定程度上提高收敛速度的效果.因此文章提出的WL-APNLMS2算法,首先基于小波变换将输入信号向量正交分解到多尺度空间,再针对不同的频段适当选择不同的自适应算法,最后将处理后的不同频段的信号叠加即可得最终处理结果.
图5 小波变换后6组输入信号能量分布
如图3所示,将输入信号进行小波分解重构成低频a5(n)和高频d1(n)~d5(n)部分,针对较低频部分a5(n)、d5(n)、d4(n)应用AP2算法,针对较高频部分d3(n)、d2(n)、d1(n)应用 NLMS2 算法.最后将处理后的6段信号叠加.
图6 新算法(WL-APNLMS2)在回声消除中的总体设计
回声抵消效果一般采用回声返回衰减增益(ERLE)来评价[8],其定义如下:
ERLE值越大,则表明回声抵消效果越好,收敛快,一般要求ERLE>6dB.
(1)接收端房间回声路径用式子(28),(29)脉冲响应来模拟,其中L=512,r(n)为幅度在-0.5~0.5之间均匀分布的随机向量.
根据结构图 6,对a5(n)、d5(n)、d4(n)部分用AP2算法,对d3(n)、d2(n)、d1(n)部分用 NLMS2算法,其中抽样因子D=8.仿真结果如图7所示.
图7 WL-APNLMS2算法 ERLE性能
(2)把文章所提出的WL-APNLMS2算法与NLMS2算法和AP2算法相比较,仿真结果如图8所示.
图8 3种算法性能比较
由图8可得WL-APNLMS2、AP2、NLMS2算法的ERLE值,见表1.
表1 WL-APNLMS2、AP2、NLMS2 算法的 ERLE值
从表1可以看出,WL-APNLMS2>AP2>NLMS2,因为ERLE值越高,收敛越快,所以 WLAPNLMS2算法的收敛性明显优于AP2和NLMS2算法.
由式(15)、(16)、(25)、(26),可得 3种算法的计算复杂度,见表2.
表2 WL-APNLMS2、AP2、NLMS2算法的计算复杂度
表2的数据显示:O2(M)<O3(M)<O1(M),WL-APNLMS2算法的计算复杂度O3(M)明显低于AP2算法的计算复杂度O1(M).由此可见,提出的WL-APNLMS2算法是一种收敛速度快,计算复杂度较低的算法,它避免了NLMS算法遇到两路强相关信号时收敛慢以及AP2算法复杂的缺点.
基于小波变换和语音信号能量分布的特点,文章提出的新算法(WL-APNLMS2)解决了两声道回波消除问题,综合性能优于单独使用NLMS2、AP2算法.Matlab仿真结果表明:WL-APNLMS2克服了NLMS2遇到两路信号收敛速率慢的缺点,计算复杂度较低,具有一定的实用价值.
[1]Erdol N,Basbug F.Wavelet Transform Based Adaptive Filters:Analysis and New Results[J].IEEE Trans,Signal Processing,1996,44(6):1156-1167.
[2]Hosur S,Tewfik H.Wavelet Domain Adaptive FIR Filtering[J].IEEE T rans Signal Processing,1997,45(3):617-630.
[3]Beaufays F,Widrow B.Transform-domain Adaptive Filters:An Analytical Approach[J].IEEE T ransactions on Signal Processing,1995,43(2):422-431.
[4]李 娜,陈盛云.自适应算法与小波变换在回声消除中的应用[J].昆明理工大学学报:理工版,2009,34(8):90-94.
[5]Benesty J,Amand F,Gilloire A.Adaptive Filtering Algorithms for Stereophonic Acoustic Echo Cancellation[J].IEEE International Conferenceon Acoustics,Speech and Signal Processing-Proceedings,1995,71(4):3099-3102.
[6]梁冬冬,王修信,胡维平.医学图像小波变换系数的统计分析[J].广西师范大学学报:自然科学版,2004,22(1):23-26.
[7]向赛辉.电话会议系统中多路回声消除理论与应用研究[D].昆明:昆明理工大学,2008.
[8]Gansler T,Gays L,Sondhi M,et al.Doubletalk Robust Fast Converging Algorithms for Network Echo Cancellation[J].IEEE Trans.On Speech and Audio Processing,2000,8(6):656-663.