在线性的回声场景里,双耦合的非线性滤波器是处于休眠的状态,所以它的值是趋于0的,这个时候起主导作用的是线性滤波器。接下来我们再看一下右边的非线性声学回声场景。我们假设非线性的失要出现在t1到t2这个时间段内,大家可以看到黄色线在这个时间里,出现了一次突变,对于NLMS算法,当出现非线性失真之后,它的线性滤波器会去逼近非线性失真。但是由于学习的速度跟不上滤波器变化的速度,所以它跟真实的值之间总是存在一个比较大的gap。同时当非线性失真消失之后,它还需要一段时间恢复到正常状态,因此在整个时间段里,都会出现回声泄露的问题。接下来我们再看双耦合算法,在非线性失真出现之后,线性滤波器会进入到一种相对休眠的状态,就是前面所提到的耦合机制,会降低它的更新速度,所以在整个非线性出现的这段时间里,他的值是缓慢变化的。进入非线性失真状态之后,非线性滤波器开始工作,它会快速非线性特性的变化,而当非线性失真消失之后,非线性滤波器又进入休眠状态。将这两个滤波器结合起来,就可以实现对整个声学回声路径的变化进行有效。这里只是给出了一个示例,实际情况往往要复杂很多。接下来我们对这2个滤波器做了特性比较,主要是从4个不同的维度。
双耦合声学回声消除算法的主要贡献体现在两个方面。广东交互声学回声产品介绍
可以准确快速的进行底噪测试。下图TWS耳机中的左耳,在喇叭播放空声源时,喇叭端有略微的电流声底噪,右耳无此不良现场,通过指南测控的标准声学测试系统进行左右耳TWS声学测试,可以在底噪测试步骤中检测到,有底噪异常的左耳的一些频段能量值偏高,无底噪问题的右耳的表现就“平顺”很多。再结合与更多正常品的对比和设定合理的limits,可以快速准确的检查出耳机在各种状态下的底噪不良。耳机回声回声来自于非预期的泄露,一般分为电学回声和声学回声。前者一般由于麦克风和扬声器线路布局不合理的电路耦合造成,后者则是由于麦克风和扬声器的声学泄露耦合而成。对于回声不良的耳机来说,在通话时,耳机喇叭播放的声音信号通过麦克风又传回电话另一头的手机,从而让讲话者听到自己的声音。对于耳机来讲,主要是声学回声,表现为收发环路的隔离度不好,其根本原因就是耳机在装配时麦克风与喇叭的密封隔离没做好,导致通话时回声出现的不良体验。图中的耳机,在通话时,人耳会略微的感受到回声,也就是佩戴人讲话的声音又传递到了耳机本身的喇叭后播放出来,也有会在通话对方的手机端出现回声现像影响双方的通话质量。指南测控的标准声学测试系统,根据回声传输路径。北京电脑声学回声AEC算法非线性声学回声消除方面的资料非常少。
我们还希望它在一个短时的观测时间窗的尺度里面也是比较好的,即局部比较好,所以在数学期望内部,我们又对误差进行了短时积分。这个优化准则跟传统的线性自适应滤波器是有本质区别的,因为传统的线性自适应滤波器基于小均方误差准则,它只是在统计意义上比较好,没有局部比较好约束。首先来求解这里的Wl,就是线性滤波器。主要求解方法是,假设Wn就是非线性滤波器是比较好解,把这个比较好解代入到前面的优化方程里,就会得到上面简化之后的优化目标函数。在这个地方,我们又做了一些先验假设,假设非线性的滤波器的一阶统计量和二阶统计量都等于0,我们就可以把上面的优化问题进一步简化,就得到我们非常熟悉的方程,就是Wiener-Hopf方程。这个结果告诉我们,线性滤波器的比较好解跟传统的自适应滤波器的比较好解是一致的,都是Wiener-Hopf方程的理论比较好解。所以我们就可以采用一些现有的比较成熟的算法,比如NLMS算法、RLS算法,对它进行迭代求解。这就是Wl的设计。接下来再看看Wn的设计。Wn的设计跟Wl的设计是类似的,也是需要将优化之后的线性滤波器,代入到开始的优化问题里,可以把前面的优化问题简化成下面的方程。接下来进行一系列的变量替换之后。
WebRTCAEC算法中开辟了可存储250个block大缓冲区,每个block的长度PART_LEN=64个样本点,能够保存的1s的数据,这也是理论上的大延时能够估计的范围,够用了。我们用610ms延时的数据测试(启用大延时调整需要设置delay_agnostic_enabled=1):我们还是设置默认延时为240ms,刚开始还是调整了-60个block,随后大延时调整接入之后有调整了-88个block,一共调整(60+88)*4=592ms,之后线性滤波器固定index=4,表示剩余延时剩余16ms,符合预期。③线性滤波器延时估计是固定延时调整和大延时调整之后,滤波器对当前远近端延时的直接反馈。前两者调整不当会造成延时过小甚至非因果,或延时过大超出滤波器覆盖能力,导致无法收敛的回声。因此前两者在调整的过程中需要结合滤波器的能力,确保剩余延时在滤波器能够覆盖的范围之内,即使延时小范围抖动,线性部分也能自适应调整。总结与优化方向WebRTCAEC存在的问题:(1)线性部分收敛时间较慢,固定步长的NLMS算法对线性部分回声的估计欠佳;(2)线性部分滤波器阶数默认为32阶,默认覆盖延时132ms,对移动端延时较大设备支持不是很好,大延时检测部分介入较慢。推出的双耦合的声学回声消除算法以及实验检验结果。
至于双讲恢复能力WebRTCAEC算法提供了{kAecNlpConservative,kAecNlpModerate,kAecNlpAggressive}3个模式,由低到高依次不同的抑制程度,远近端信号处理流程,NLMS自适应算法(上图中橙色部分)的运用旨在尽可能地消除信号d(n)中的线性部分回声,而残留的非线性回声信号会在非线性滤波(上图中紫色部分)部分中被消除,这两个模块是WebrtcAEC的模块。模块前后依赖,现实场景中远端信号x(n)由扬声器播放出来在被麦克风采集的过程中,同时包含了回声y(n)与近端信号x(n)的线性叠加和非线性叠加:需要消除线性回声的目的是为了增大近端信号X(ω)与滤波结果E(ω)之间的差异,计算相干性时差异就越大(近端信号接近1,而远端信号部分越接近0),更容易通过门限直接区分近端帧与远端帧。非线性滤波部分中只需要根据检测的帧类型,调节抑制系数,滤波消除回声即可。下面我们结合实例分析这套架构中的线性部分与非线性分。线性滤波线性回声y'(n)可以理解为是远端参考信号x(n)经过房间冲击响应之后的结果,线性滤波的本质也就是在估计一组滤波器使得y'(n)尽可能的等于x(n),通过统计滤波器组的比较大幅值位置index找到与之对齐远端信号帧,该帧数据会参与相干性计算等后续模块。
实现对整个声学回声路径的变化进行有效跟进。广东交互声学回声产品介绍
回声消除AEC(AcousticEchoCancellation)一般指的是声学回声消除,其主要用于抑制产品本身发出的声音。广东交互声学回声产品介绍
而在模拟音频大举转向数字音频、网络音频的,网络信号的延迟也为音频领域赋予了新的现象,尤其应用在远程会议这样的音频传输系统当中,它能将一次次回授剥离成一次次听似回声的现象,这就是网络音频回声。通常由A地发出的声源A在几乎不经过延迟处理的本地系统中,通过A地音箱扩声;而其经过网络终端编码送向远端时,除了考虑A地的上传时间X,还得考虑B地的下载时间Y。在这样一个架构在Internet网络传输环境中的声音,其到达B地扩声音箱出来的信号则是A+X+Y。经B地本地话筒拾取后的该信号,再由B地的上传网速(时间)Z、A地的下载时间W传送回A地扩声音箱,其表现出的信号则会出现一次A信号,及一次赋予了(X+Y+Z+W)时间的A信号。假设A地—B地传输时间总和为200ms,B地—A地传输时间总和为200ms,则信号的一去一回,体现在A扩声音箱中至少会存在A和A+400ms的信号,若反馈信号电平足够强,则再被话筒拾取,这将不止产生一次的回声,而是多次规律的回声现象。AEC即AcousticEchoCancellation(声音回声消除)技术简称。该技术的出现旨在消除这种因远程网络会议所带来的回授现象,以遏制次回声产生所需的必要条件来遏制多次回声的出现。
广东交互声学回声产品介绍
深圳鱼亮科技有限公司专注技术创新和产品研发,发展规模团队不断壮大。公司目前拥有专业的技术员工,为员工提供广阔的发展平台与成长空间,为客户提供高质的产品服务,深受员工与客户好评。深圳鱼亮科技有限公司主营业务涵盖智能家居,语音识别算法,机器人交互系统,降噪,坚持“质量保证、良好服务、顾客满意”的质量方针,赢得广大客户的支持和信赖。公司力求给客户提供全数良好服务,我们相信诚实正直、开拓进取地为公司发展做正确的事情,将为公司和个人带来共同的利益和进步。经过几年的发展,已成为智能家居,语音识别算法,机器人交互系统,降噪行业出名企业。