您好,欢迎访问

商机详情 -

福建电视声学回声抑制算法

来源: 发布时间:2022年04月28日

    首先是优化准则。NLMS算法是基于小均方误差准则,而双耦合算法是基于小平均短时累计误差准则,所以他们的优化准则是不一样的。第二个就是理论的比较好解,NLMS算法具有Wiener-Hopf方程解,而双耦合算法的线性滤波器也具有Wiener-Hopf方程解,非线性滤波器具有小二乘解。第三个维度就是运算量,NLMS运算量是O(M),M是滤波器的阶数,而双耦合算法运算量后面会多一个O(N2),因为他有两个滤波器,N是非线性滤波器的阶数,这里的平方是因为小二乘需要对矩阵进行求逆运算,所以它的运算量比线性的NLMS运算量要大很多。第三个就是控制机制,NLMS算法只有一个滤波器,它的控制主要是通过调整步长来实现的,控制起来要相对简单。而双耦合算法需要对两套滤波器进行耦合控制,控制的复杂度要高很多。实验结果分析,这里我主要是分了两个实验场景比较双耦合算法和NLMS算法的性能,个是单讲测试场景,第二个就是双讲测试场景。首先看一下单讲测试场景,个示例是针对强非线性失真的情况,左边分别原信号的语谱,NLMS算法进行回声消除之后的语谱、双耦合算法的语谱。颜色越深,能量越大。右边这个的是回声抑制比,值越大越好,红色的曲线是双耦合算法的回声抑制比。

    非线性的声学回声消除问题。福建电视声学回声抑制算法

    反映到听感上就是回声(远端判断成近端)或丢字(近端判断为远端)。(2)计算近端信号d(n)与估计的回声信号e(n)的相干性,如图5(b),第二行为估计的回声信号e(n),第三行为二者相干性cohde,很明显近端的部分几乎全部逼近,WebRTC用比较严格的门限(>=)即可将区分绝大部分近端帧,且误判的概率比较小,WebRTC工程师设置如此严格的门限想必是宁可一部分双讲效果,也不愿意接受回声残留。从图5可以体会到,线性滤波之后可以进一步凸显远端参考信号x(n)与估计的回声信号e(n)的差异,从而提高远近端帧状态的判决的可靠性。存在的问题与改进理想情况下,远端信号从扬声器播放出来没有非线性失真,那么e(n)=s(n)+v(n),但实际情况下e(n)与d(n)很像,只是远端区域有一些幅度上的变化,说明WebRTCAEC线性部分在这个case中表现不佳,如图6(a)从频谱看低频段明显削弱,但中高频部分几乎没变。而利用变步长的双滤波器结构的结果会非常明显,如图6(b)所示无论是时域波形和频谱与近端信号x(n)都有很大差异,目前aec3和speex中都采用这种结构,可见WebRTCAEC中线性部分还有很大的优化空间。如何衡量改进的线性部分效果?这里我们对比了现有的固定步长的NLMS和变步长的NLMS。近端信号d。

    福建电视声学回声抑制算法非线性声学回声消除技术在整个声学回声消除领域是一个相对比较冷的研究方向。

    以此来应对市面上绝大多数的移动设备。另外,线性滤波器虽然不具备调整延时的能力,但可以通过估计的index衡量当前信号的延时状态,范围为[0,kNormalNumPartitions],如果index处于作用域两端,说明真实延时过小或过大,会影响线性回声估计的效果,严重的会带来回声,此时需要结合固定延时与大延时检测来修正。非线性滤波非线性部分一共做了两件事,就是想尽千方百计干掉远端信号。(1)根据线性部分提供的估计的回声信号,计算信号间的相干性,判别远近端帧状态。(2)调整抑制系数,计算非线性滤波参数。非线性滤波抑制系数为hNl,大致表征着估计的回声信号e(n)中,期望的近端成分与残留的非线性回声信号y''(n)在不同频带上的能量比,hNl是与相干值是一致的,范围是[0,],通过图5(b)可以看出需要消除的远端部分幅度值也普遍在,如果直接使用hNl滤波会导致大量的回声残留。因此WebRTC工程师对hNl做了如下尺度变换,over_drive与nlp_mode相关,不同的抑制激进程度,drive_curve是一条单调递增的凸曲线,范围[]。由于中高频的尾音在听感上比较明显,所以他们设计了这样的抑制曲线来抑制高频尾音。我们记尺度变换的α=over_drive_scaling*drive_curve。

    

    一是恼人的异常音往往是比较轻微的,由于人工听音存在主观辨识性的问题,对于这类轻微的异常音疏于判断,但是终端客户可能不接受;二是在于产线测试环境嘈杂,普通的测试设备易受干扰,人耳对低阶次谐波的失真不敏感,所以在低阶的谐波失真导致的异音可能无法听出,但仪器有可能测出,从而导致误测,生产效率降低。要想准确检测出异常音,高性能的硬件采集和的软件算法缺一不可。指南测控的标准声学测试系统,通过规范的配备自研的高精度的测试传感器、高隔离度的环境环境、高灵敏度的GT-BT216C音频分析仪,辅以良好的减振结构设计,基于异常音包含大量的高次谐波失真成分这一基本原理,结合大量的生产测试经验和实验研究,形成了优于普通Rub&Buzz的独特的多达4种异常音检测指标,来检测异常音。下图TWS耳机中的右耳在播放低频成分较为明显的音乐或者声源时,人耳可以听出略微的异音感;左耳表现正常。通过指南测控的标准声学测试系统实际测试的结果,右耳喇叭播放时有略微异音,左耳喇叭听感正常。左右耳TWS组队声学测试,可以在喇叭播放特性的喇叭异常音测试步骤中看到,有异音的右耳的低频分量强度会变高,通过在指南GirantAudistic声学测试软件上测试异(常)音。

     在构建滤波器模型的过程中结合了非线性声学回声的一些特性。

    如果设置nlp_mode=kAecNlpAggressive,α大约会在30左右。如果当前帧为近端帧(即echo_state=false),假设第k个频带hNl(k)=,hNl(k)=hNl(k)^α=,即使滤波后的损失听感上几乎无感知。如图8(a),hNl经过α调制之后,幅值依然很接近。如果当前帧为远端帧(即echo_state=true),假设第k个频带hNl(k)=,hNl(k)=hNl(k)^α=,滤波后远端能量小到基本听不到了。如图8(b),hNl经过α调制之后,基本接近0。经过如上对比,为了保证经过调制之后近端期望信号失真小,远端回声可以被抑制到不可听,WebRTCAEC才在远近端帧状态判断的的模块中设置了如此严格的门限。另外,调整系数α过于严格的情况下会带来双讲的抑制,如图9第1行,近端说话人声音明显丢失,通过调整α后得以恢复,如第2行所示。因此如果在WebRTCAEC现有策略上优化α估计,可以缓解双讲抑制严重的问题。延时调整策略回声消除的效果与远近端数据延时强相关,调整不当会带来算法不可用的风险。在远近端数据进入线性部分之前,一定要保证延时在设计的滤波器阶数范围内,不然延时过大超出了线性滤波器估计的范围或调整过当导致远近端非因果都会造成无法收敛的回声。先科普两个问题:。1)为什么会存在延时?首先近端信号d。

   右边的非线性声学回声场景。福建电视声学回声抑制算法

回到前面的这个声学回声路径图。福建电视声学回声抑制算法

    再次回授、无限循环而产生反馈现象,而系统在均衡声场后,该现象其实是可以得到明显改观的。但话筒的拾音灵敏度是不是可以无限大呢?不是,在足够电平条件下,它始终会因拾取到具有相干性频率相位关系的输入信号而建立起回授。该图片源于网络上述啸叫现象并不是本文重点,但它为我们讨论接下来的话题提供了一个前提,那就是(同一个声场环境中)话筒和音箱无论怎么摆都无法做到完全的隔离,更别说空间声场条件有限的小中型会议室了。在一套有扩声、有拾音的远程会议系统中,为了防止信号回授,我们通常会有意识地将远端输入信号不再路由给远端输出。然而无法抗拒的是,本地话筒因拾取到远端传送至本地扩声的信号,仍可将声音重新传送至远端。这也是一种回授,明显的远程回授现象可使得系统发生自激震荡。该图片经我司设计员制作后作者再编辑通过一个简易的远程音频传输示意图,能帮助我们更容易地理解声音信号是怎样的流向。也能够更清楚地看到这里面可能存在的回授现象。部分工程师在调试远程会议系统时也许遇到过啸叫,那可不一定是本地系统没调好所造成的,你会发现,关掉终端一切非常正常。为什么绝大多数的远程系统没有啸叫呢?这还得感谢您还不算非常质量的网络。

    福建电视声学回声抑制算法