论文部分内容阅读
实时语音通信所伴随的电子、声学回声现象极大地降低了通信质量。有效的解决方案是用线性滤波器以自适应算法辨识回声系统,滤波器输出作为回声信号的估计值,两者相减以抑制回声能量,提高通信质量。归一化最小均方(Normalized Least Mean Square, NLMS)算法以其低计算复杂度与强鲁棒性而普遍应用于回声消除(Echo Cancellation, EC)领域,其主要缺点是收敛速度慢。随着处理器运算能力提高,计算复杂度更高、收敛速度更快的仿射投影算法(Affine Projection Algorithm, APA)开始应用于EC系统。但语音信号的非平稳性、强相关性严重减慢各种自适应算法的收敛速度。为消除输入信号强相关性对APA的影响,提出解相关APA (Decorrelation APA, DAPA)算法。DAPA利用实线性空间求内积的方法对输入信号矩阵进行预处理,解除不同时刻输入矩阵的相关性。与APA相比,DAPA计算复杂度适中,收敛速度有较大提高。无参数变步长NLMS(Noparametric Variable Step Size NLMS, NPVSS-NLMS)算法可解决固定步长NLMS算法高收敛速度与低稳态失调的矛盾,其核心思想是从误差信号中恢复背景噪声,因此需要获得背景噪声功率(Background Noise Power, BNP)估计。为提高BNP估计的精度与可靠性,在分析BNP与失调噪声功率比后,提出一种在线的BNP估计改进算法,以提高BNP的估计精度、提高NPVSS-NLMS性能。为解决APA收敛速度与稳态失调的矛盾,通过强迫APA后验误差向量与背景噪声向量二次范数相等,推导得NPVSS-APA算法。分析APA算法失调比后,提出针对NPVSS-APA的改进BNP估计。因回声延时的不确定性,在回声消除应用中,为保证充分建模,滤波器必须包含至少上千个系数。过长的滤波器将导致算法收敛速度减慢,计算复杂度增加等缺点。同时因延时效应,回声系统的冲激响应序列呈现稀疏性,即:序列大部分系数为零值系数以模拟延时。产生回声能量的活跃系数在时域上聚集,数量仅占系数总量极少一部分。利用稀疏性提高自适应算法的工作效率成为EC系统实现的研究热点。本文通过两类算法,即Proportionate自适应算法(P算法)与延时检测-部分系数更新(Delay Estimate-Selective Partial Update, D-SPU)算法,对此进行讨论。一、P算法按系数幅值为滤波器的不同系数赋以各异的收敛步长(Proportionate步长,P步长)以加快大系数收敛,达到加快滤波器整体收敛速度的目的。P算法收敛速度提高以计算复杂度增加为代价,且其P步长计算方式与目标系统系数幅值有关,实际应用时只能以滤波器系数当前幅值代替,引入误差。本文利用独立性假设对P算法进行统计学建模,提出描述P算法滤波器各系数收敛曲线的理论公式,以该公式为基础,提出一种高效的P步长估计算法。新算法每隔若干步更新一次P步长,极大地降低算法计算复杂度。为APA算法滤波器各系数指定相应的P步长,提出PAPA(Proportionate APA)算法。讨论PAPA算法的收敛性,并推导保证PAPA算法收敛的步长取值范围。二、利用稀疏性最直接的方法是先用一延时检测滤波器估计延时(Delay Estimate),然后以滤波器峰值系数为中心,再用一个短的滤波器辨识活跃系数部分。因传统的延时检测算法需要用两个滤波器辨识目标系统,造成信息冗余。部分系数更新(Selective Partial Update, SPU)算法用全长滤波器辨识系统,但每次只更新滤波器的一段系数以减小算法计算复杂度。传统的SPU算法未能充分利用回声路径稀疏性,造成算法性能下降。提出D-SPU算法。D-SPU将SPU算法与回声路径稀疏性相结合,用移动窗积分扫描滤波器,以积分值最大区间为活跃系数位置。每次迭代均更新活跃系数,同时循环更新一段非活跃系数。更新活跃系数可精确辨识目标系统,更新一段非活跃系数可保证回声路径突变时算法的跟踪能力。D-SPU以一个滤波器同时完成延时检测与活跃系数辨识,避免传统延时检测算法的信息冗余。D-SPU计算复杂度低,收敛速度快,回声路径突变时跟踪能力强,有较高的实用价值。本文主要对应用于EC系统的自适应算法进行研究,以达到加快系统收敛速度,提高系统稳定性的目的。此外,研究成果亦可丰富自适应理论,促进自适应算法的发展,其中某些范例可为其它自适应算法应用提供借鉴。