联系人:徐经理
手机:13609715026(技术咨询)
电话:020-39985615
Email:184049149@qq.com
Q Q :2397159370
网址:www.gxdsp.com
地址: 广州市番禺区洛浦街沿沙路51号东乡联发工业区A3栋2层202广州亮鑫电子科技有限公司
回声消除是音频通话中最复杂的模块,在音频通话质量中起着至关重要的作用。长期以来,广州亮鑫一直致力于提供良好的回声消除性能,为用户提供优良的音频通话质量。在本文中,广州亮鑫音视频开发专家将与您一起分析回声消除的现状。
现状
理论上,基于自适应滤波器架构并不是回声消除的唯一选择,但由于技术限制和历史沿袭,当前的回声消除基本上是基于自适应滤波器架构。
从回声消除的工作原理来看,它是一种典型的系统辨识应用,识别回声路径,利用参考信号和回声路径的卷积产生回声估计,然后从混合输入中去除回声估计。使用自适应滤波器进行系统识别是一种自然的选择。
经过长时间的技术发展,研究人员在自适应滤波器的性能研究方面取得了巨大的成就,对回声消除常用的自适应算法的特性有了更深入的了解。
一些常用的自适应滤波器具有以下特点:
1.最小平方(LMSS、Least-mean-square)算法是随机梯度算法家族的一员。该算法在随机输入维纳滤波器的递推计算中使用确定性梯度。其基本原理是尽量减少误差信号的平方误差。其核心理念是用平方误差代替平方误差。LMS算法简单,操作量小,易于在通用数字信号处理器上实现。然而,LMS算法的收敛速度取决于输入信号矢量自相关平均值的特征值扩散度。当扩散度很大时,收敛速度会很慢。对于相关性强的语音信号,LMS算法的收敛速度将非常慢。
2.为了克服经典LMS算法收敛缓慢和对噪声敏感的缺点,人们将滤波器系数矢量与输入信号的功率进行集成,以获得最小的平均值(NLMS)算法。集成技术降低了收敛速度对输入信号功率的依赖性,其成本是计算量的增加。但当阶数增加时,增加的计算量相对较少。简而言之,在计算复杂性方面,NLMS算法的计算效率相当于LMS算法。同时,当输入信号为语音时,NLMS算法比LMS算法更快、更稳定。因此,NLMS算法比LMS算法更适合回声消除器。
3.PNLMS算法及其改进算法是对NLMS算法步长控制的修改。其收敛速度快,对稀疏回声路径有效。IPNLMS算法是对PNLMS算法的改进,对回声路径稀疏性要求不高。
4.AP算法可以看作是NLMS算法的扩展。由于使用了更多的输入向量,收敛速率比NLMS算法更快。AP算法的不平衡与输入矢量数(即AP算法的阶数)无关。随着阶数的增加,收敛速度加快,但收敛速度的增加幅度正在减小。增加阶数以增加算法的计算复杂性为代价。AP算法的计算复杂性远高于NLMS。AP算法的收敛速度和计算量介于NLMS算法和RLS算法之间。
5.与随机梯度算法不同,RLS算法属于最小二乘算法。RLS算法的收敛速度比LMS算法快-数量级。随着迭代次数的无限,RLS算法的额外平均误差收敛为零。然而,由于矩阵逆转计算,RLS算法的计算量很大,因此很难消除冲击响应超过100毫秒的回声信号。
目前,大多数回声消除模块都是基于上述算法或其变体。在更接近理想的情况下,现有的自适应滤波器算法可以得到更令人满意的回声消除效果。然而,这只是实际通话大部分时间的理想状态,实际通话情况要复杂得多。
本端噪声干扰、信号路径中的非线性变换、双方同时发言、非实时操作系统带来的数据延迟抖动等都是通用回声消除模块需要解决的问题。
例如,当有明显的近端声音时,基于现有各种自适应滤波器算法的回声消除器的性能会恶化,甚至无法保证自适应滤波器算法的收敛性。这是回声消除在实际应用中必须解决的关键问题,通常称为双端声音(double-talk)问题。目前,鉴于这种情况,最常用的方法是添加双端通话探测器(double talk detector,DTD)。当双方同时发言时,锁定或缓慢自适应滤波器,以防止自适应过程的发散。
如何在实时通话条件下对这些附加问题进行满意的逻辑和精细调整对产品化非常重要,这也是产品性能差异的主要原因。目前,大多数情况下,商用产品中的回声消除模块都能取得令人满意的效果。然而,在某些特殊情况下,处理不善。对更高通话质量的要求仍然是研究更好回声消除模块的动力。