1.一种变步长的回声消除方法,其步骤如下:A、远端信号采样
将当前时刻n和前L-1个时刻的远端采样信号x(n),x(n-1),…,x(n-L+1),组成当前时刻n的输入信号向量X(n),X(n)=[x(n),x(n-1),…,x(n-L+1)]T,上标T表示转置,L为自适应滤波器的抽头长度,其取值为16、32或128;
B、回声信号估计
将当前时刻n的输入信号向量X(n),通过自适应滤波器得到当前时刻n的回声信号的估计值 其中,W(n)=[w1(n),w2(n),…,wi(n),…wL(n)]T为当前时刻的自适应滤波器抽头权系数向量,其初始值为零,即W(0)=0,wi(n)为当前时刻的自适应滤波器的第i个抽头权系数,i=1,2,3,…,L;
C、回声信号消除
将当前时刻n的近端采样信号d(n),减去步骤B获得的当前时刻n的回声信号的估计值得到消除回声的当前时刻的误差信号e(n),D、误差信号阈值的确定
D1、残差信号平方时间窗向量的确定由当前时刻n的误差信号e(n),得到当前时刻n的误差信号平方e2(n),将当前时刻n和前
2 2 2
Nw-1个时刻的残差信号平方e (n),e (n-1),...,e (n-Nw+1),组成当前时刻n的残差信号平方时间窗向量E(n),E(n)=[e2(n),e2(n-1),...,e2(n-Nw+1)]其中,Nw是时间窗的长度,取值为9;
D2、M估计器的期望方差的确定
取当前时刻n的残差信号平方时间窗向量E(n)的中位数,得到当前时刻n的残差信号平方中位数 其中,med(·)表示取中位数运算;
进而计算出当前时刻n的M估计器的期望方差σ2(n),其中,C为计算纠正因子,C=1.483{1+5/(Nw-1)};ζ为延迟参数,其取值为0.9~0.99;M估计器的期望方差σ2(n)的初始值为0,即σ2(0)=0;
D3、M估计器阈值的确定
计算出当前时刻n的M估计器阈值ξ(n), k为M估计器的阈值系数,取值为2.576;
E、误差信号限定值的计算
根据当前时刻n的残差信号e(n)和当前时刻n的M估计器阈值ξ(n),得到当前时刻n的M估计器的误差信号限定值ψ(n):F、步长的更新
F1、步长更新调整向量的确定
根据步骤E的当前时刻n的误差信号限定值ψ(n)和当前时刻n的输入向量X(n),得到当前时刻n的步长更新调整向量T(n),T(n)=ψ(n)X(n);
F2、步长的更新
由下式得到当前时刻n的步长值μ(n),μ(n)=τμ(n-1)+ηTT(n)T(n-1)其中,τ为步长衰减系数,其取值为0.9~0.99;η为步长调整系数,其取值为0.05~0.1;
步长值μ(n)的初始值为0,即μ(0)=0;
G、滤波器抽头权系数更新
G1、权系数零吸引因子的确定
由下式得出当前时刻n的权系数零吸引因子R(n), 其中,sgn(·)表示取符号运算;γ表示零吸引缩小系数,其取值为0.001;β表示权系数零吸引调整参数,其取值为40~50;
G2、抽头权系数的更新
由下式得出,下一时刻n+1的自适应滤波器的抽头权系数向量W(n+1),W(n+1)=W(n)+μ(n)ψ(n)X(n)-R(n);
H、重复
令n=n+1,重复步骤A~G的操作,直至通话结束。