使得第二滤波器模块308可 用第一滤波器模块304的系数来更新其系数。
[0060] 如果在步骤S414处确定第一滤波器模块304并不比第二滤波器模块308更准确, 则在步骤S418处,比较模块312并不基于第一滤波器模块304输出任何信号来更新第二滤 波器模块308的系数。
[0061] 返回参考步骤5410,在第二估计^(^:}已被供应给回波抑制模块314之后,过程前 进至步骤S412。在步骤S412中,回波抑制模块314使用估计^ (0来对接收音频信号y(t) 应用回波抑制,从而抑制接收音频信号中的回波。
[0062]回波抑制器314的目的是将例如在VoIP客户端中存在于扩音器信号中的卿趴回 波抑制到足够低的水平W便在存在被扩音器212炼拾的近端声音(非回波声音)的情况下所 述卿趴回波不值得注意/构成干扰。为了能够选择适当量的回波抑制,需要回波或回波功 率的准确估计,并且如上所述,运是通过当第一滤波器膜304被认为比第二滤波器模块308 更准确时基于第一滤波器模块304来更新第二滤波器模块308并仅使用从第二滤波器模块 308输出的回波或回波功率的准确估计来应用回波抑制而提供的。回波抑制模块314被设 计成对接收音频信号y(t)应用随时间和频率两者而改变的信号相关抑制。回波抑制方法 在本领域中是已知的。此外,可WW不同的方式实现由回波抑制模块314应用的回波抑制 方法。同样地,因此在本文中并未详细地址描述回波抑制方法的精确细节。
[006引回波抑制模块314输出接收信号徊波已被抑制似便在用户设备104中被进一步 处理。例如,从回波抑制模块314输出的信号可W被客户端206处理(例如编码并分组化) 且然后在用户102和108之间的呼叫中被通过网络106发射到用户设备110。另外或可替 换地,从回波抑制模块314输出的信号可被用户设备104用于其它目的,例如,该信号可被 存储在存储器214中或者被用作到在用户设备104处执行的应用的输入。
[0064] 本文所述的方法固有地对于双方会话而言是稳健的。本文所述的方法并不取决于 用于估计何时更新第二模型的任何双方会话检测功能,并且第二模型的更新并不取决于要 求知道模型准确度的任何步长算法。然而,可将上述实施例连同此类功能一起使用。
[0065] 此外,本发明对通常对于回波消除器而言可能有问题的缓冲问题非常不敏感。在 回波抑制器中,通常,针对每个频带和每个帖产生回波的功率的估计。第一滤波器模块304 可利用诸如FIR滤波器之类的线性模型。当FIR滤波器被连续地修改时,修改过程要求卿趴 信号x(t)和扩音器信号y(t)的样本是同步的,即没有缓冲问题且没有时钟漂移。当它们 并不同步时,第一滤波器模块304将偏离(diverge)并给出非常不准确的回波预测。然而, 在上述实施例中,如果第一滤波器模块304有时偏离则是可接受的,因为由第一滤波器模 块304产生的任何偏离估计将不会被用来预测回波功率(第二滤波器模块308被用于此)。 然而,失配的卿趴信号x(t)和扩音器信号y(t)将引起由第二滤波器模块308产生的预测 回波中的误差。然而,该误差将比在第二滤波器模块308已偏离的情况下小得多,并且由于 通常针对各帖计算回波功率,所W当失配设及单个样本时,将不会有问题。
[0066] 第一滤波器模块304和第二滤波器模块308可利用任何线性滤波器(例如有限脉 冲响应(FIR)滤波器或无限脉冲响应(IIR)滤波器)来对接收音频信号中的回波的回波路径 进行建模。如本领域的技术人员已知的,可按滤波器类型和滤波器阶数来定义滤波器。优 选地,第一滤波器模块304和第二滤波器模块308将是相同滤波器类型的,然而,不排除第 一滤波器模块304和第二滤波器模块308是不同滤波器类型的可能性。当第一滤波器模块 304和第二滤波器模块308是相同滤波器类型时,它们也可W是相同阶数或者可替换地是 不同阶数的,例如第二滤波器模块308可具有比第一滤波器模块304低的阶数。
[0067] 如上所述,第一滤波器模块304被连续地更新,无论手边的信号条件如何。在上述 实施例中,可相对于第一滤波器模块304可选地使用步长调整方案。
[0068] 如上所述,可通过执行随机梯度算法来获得用于第一滤波器模块304的滤波系 数。特别地,第一滤波器模块304执行随机梯度算法W识别使误差信号e(t)最小化的滤波 器模块304的系数。
[0069] 响应于误差信号e(t)、输入信号X(t)和先前滤波系数而生成用于滤波器模块304 的已更新滤波系数。
[0070] 随机梯度算法W时间递归方式操作。运意味着其并非即时地适应于系统中的变 化,而是该算法在有限时间间隔内迭代地收敛到系统的近似值。
[0071] 第一滤波器模块304的滤波系数对远端信号X(t)进行滤波W生成近端信号y(t) 中的回波分量的估计。误差信号e(t)通过减法器(在图3中未示出)获得,该减法器从近端 信号y(t)减去近端信号y(t)中的回波分量的第一滤波器模块估计,并将误差信号e(t)供 应给第一滤波器模块304。将认识到的是期望误差信号e(t)是小的。例如,当在扩音器信 号中不存在近端信号v(t)时,理想地误差信号等于零。
[0072] 随机梯度算法具有用于模型参数更新的步长形式的收敛参数。运在某些应用中可 W被选择为固定的,但是在许多情况下,如果其是W信号相关方式选择的,则实现更好的性 能。该步长控制更新对扩音器信号y(t)中的噪声的敏感度。如果其被选择成是小的,则更 新速度缓慢,但是对噪声不那么敏感,但是如果其被选择成是大的,则更新速度替代地是快 速的,但是对噪声更加敏感。在本文中对"更新速度"或"适应速度"的提及被用来指代模 型能够有多快速地适应于系统中的手边的信号条件。也就是说,使用较小的步长将导致较 小的最终误差信号e(t),然而,到系统的近似值的收敛将由于所需的较大数目的迭代步骤 数目而较慢(较慢的收敛速率),并且使用较大步长将导致较大的最终误差信号e(t),然而, 到系统的近似值的收敛将由于所需的较小数目的迭代步骤而较快(较快的收敛速率)。
[0073] 为了实现准确度非常高的估计,步长需要是小的,W便避免由于过高的步长而超 出真实的估计。
[0074]在步长调整方案中,根据回波往返损耗增强测量结果来确定估计的准确度。 此回波往返损耗增强测量结果可W是由比较模块312在步骤S414中实现的相同准确度测 量结果。可替换地,当在步骤S414中使用除ERLE之外的度量时,此回波往返损耗增强测量 结果可W是与由比较模块312实现的准确度测量结果分开的测量结果。
[00巧]收敛参数选择模块(在图3中未示出)基于估计妾巧的准确度来确定在滤波器模 块304中执行的算法中所使用的收敛参数(步长)的值。特别地,收敛参数选择模块作为回 波往返损耗增强测量结果的非递增函数来选择收敛参数W便控制滤波器模块304的适应 速度。
[0076] 可将回拨往返损耗增强测量结果与阔值值相比较,并且收敛参数选择模炔基于此 比较来调整收敛参数。
[0077] 由于回波往返损耗增强度量具有运样的性质,即当回波往返损耗增强测量结果是 高的时,模型准确度始终是高的,所W其可被用来在回波往返损耗增强测量结果是高的时 (即高于预定阔值值)使适应速度减慢,W便实现愈加准确的估计,并且在回波往返损耗增 强测量结果是低的时(即小于预定阔值值)增加适应速度,W便快速地跟踪模型参数的变 化。
[0078] 该步长调整方案确保当模型的准确度是未知的时实现快速适应(经由在回波往返 损耗增强测量结果是低的时的高更新速度),并且当已知模型是准确的时实现愈加准确的 估计(经由在回波往返损耗增强测量结果是高的时减小更新速度)。
[0079] 在上述实施例中,在VoIP系统中实现回波去除(例如,接收音频信号可包括用户 102的语音W便在用户102和108之间的呼叫期间通过通信系统100发射到用户设备110)。 然而,本文所述的回波去除方法可W在其中将应用回波去除的任何适当系统中应用。
[0080] 在上文所述和图中所示的实施例中,回波去除模块314实现回波抑制。
[0081] 在上文所述和图中所述的实施例中,未对接收音频信号y(t)应用回波消除(或 "回波消减")。也就是说,在用户设备104中不存在回波消除模块,并且在没有对接收音频