新疆无限声学回声

时间:2021年12月20日 来源:

    至于双讲恢复能力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找到与之对齐远端信号帧,该帧数据会参与相干性计算等后续模块。

     实现对整个声学回声路径的变化进行有效跟进。新疆无限声学回声

    而正是这两级客观存在的物理声学现象,造就了我们所讨论的内容。在远程会议系统的终端(本地),为了实现多人互动、多人拾音等目的,系统声音免不了被放大还原,而在诸如此类的放大系统中,为本地音箱能够听到远端声音,并能把本地拾音信号传送到远端而互通。众所周知,话筒在拾取到放大后的音箱信号后,再次回授、无限循环而产生反馈现象,而系统在均衡声场后,该现象其实是可以得到明显改观的。但话筒的拾音灵敏度是不是可以无限大呢?不是,在足够电平条件下,它始终会因拾取到具有相干性频率相位关系的输入信号而建立起回授。上述啸叫现象并不是本文重点,但它为我们讨论接下来的话题提供了一个前提,那就是(同一个声场环境中)话筒和音箱无论怎么摆都无法做到完全的隔离,更别说空间声场条件有限的小中型会议室了。在一套有扩声、有拾音的远程会议系统中,为了防止信号回授,我们通常会有意识地将远端输入信号不再路由给远端输出。然而无法抗拒的是,本地话筒因拾取到远端传送至本地扩声的信号,仍可将声音重新传送至远端。这也是一种回授,明显的远程回授现象可使得系统发生自激震荡。通过一个简易的远程音频传输示意图。能帮助我们更容易地理解声音信号是怎样的流向。

     新疆无限声学回声我们把声学回声消除这个技术变成一张实体的插件(设备插卡)。

    他的是线性回声传递函数。基于这样的数学假设,我们收到的信号y就可以表示成发射的信号x分别跟这样两个传递函数进行卷积之后的结果。接下来我们对这个模型进行了适当的简化,简化主要是基于数学分解,我们假设非线性的传递函数,可以分解成线性跟非线性这样两个系统函数的组合形式,就会得到中间的方程。接下来对中间的方程进行变量替换,就得到这个表达式,这个表达式它的物理意义很清晰,我们从可以看到,整个回声路径是可以表示成线性回声路径跟非线性回声路径二者之和的形式,这是它的物理意义。2.双耦合自适应滤波器,基于这样一个数学模型,接下来我们就构建了一种新的滤波器结构,称之为双耦合自适应滤波器。这个滤波器跟传统线性的自适应滤波器相比,主要有两个方面的不同,个不同是传统的线性滤波器只有一个学习单元,而我们的这个滤波器有两个学习单元,分别是这里的线性回声路径滤波器,我们用Wl来表示。还有非线性的回声路径滤波器,我们用Wn来表示。第二个不同就是,我们在这两个滤波器之间还加入了一个耦合因子,这个耦合因子目的就是为了协同二者更好的工作,让二者能够发挥出比较大的效能,甚至能够起到1+1>2的效果。

 

    喇叭发声单元跟麦克接收单元之间,通常是需要做隔振处理的,如果没有隔振处理的话,那么在喇叭发声的过程中,他所产生的振动会通过物理方式传递到麦克接收端。对麦克接收到的声学信号进行调制,而这种振动本质上是一种随机的、非线性的振动,所以它必然会带来非线性失真。手机声学特性调研我们之前针对市面上主要的手机机型做过一次调研,主要调查声学特性。结果我们很惊讶地发现,市面上超过半数的手机机型,声学特性不够理想,对应这里面的“较差”和“极差”这两档。我们平时用手机开外音玩游戏,或者语音通话时,经常会出现漏回声问题和双讲剪切问题,就与手机声学特性不佳有直接联系。当然这组数据只是针对手机这种电子产品,市面上类似于手机这样的电子产品还有很多,它们应该也有类似的问题。这组数据告诉我们,非线性失真问题在我们生活中的电子产品里是一个普遍存在的问题,我相信对这个问题的研究将会是一个很有价值也很有意义的方向。 非线性声学回声消除方面的资料非常少。

    WebRtcAec_Process接口如上,参数reported_delay_ms为当前设备需要调整延时的目标值。如某Android设备固定延时为400ms左右,400ms已经超出滤波器覆盖的延时范围,至少需要调整300ms延时,才能满足回声消除没有回声的要求。固定延时调整在WebRTCAEC算法开始之初作用一次,为什么target_delay是这么计算?inttarget_delay=startup_size_ms*self->rate_factor*8;startup_size_ms其实就是设置下去的reported_delay_ms,这一步将计算时间毫秒转化为样本点数。16000hz采样中,10ms表示160个样本点,因此target_delay实际就是需要调整的目标样本点数(aecpc->rate_factor=aecpc->splitSampFreq/8000=2)。我们用330ms延时的数据测试:如果设置默认延时为240ms,overhead_elements次被调整了-60个block,负值表示向前查找,正好为60*4=240ms,之后线性滤波器固定index=24,表示24*4=96ms延时,二者之和约等于330ms。②大延时检测是基于远近端数据相似性在远端大缓存中查找相似的帧的过程,其算法原理有点类似音频指纹中特征匹配的思想。大延时调整的能力是对固定延时调整与线型滤波器能力的补充,使用它的时候需要比较慎重。需要控制调整的频率,以及控制造成非因果的风险。

     非线性声学回声消除技术研究现状。新疆无限声学回声

非线性声学回声产生的原因。新疆无限声学回声

    以此来应对市面上绝大多数的移动设备。另外,线性滤波器虽然不具备调整延时的能力,但可以通过估计的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。

     新疆无限声学回声

深圳鱼亮科技有限公司致力于通信产品,以科技创新实现***管理的追求。深圳鱼亮科技拥有一支经验丰富、技术创新的专业研发团队,以高度的专注和执着为客户提供智能家居,语音识别算法,机器人交互系统,降噪。深圳鱼亮科技不断开拓创新,追求出色,以技术为先导,以产品为平台,以应用为重点,以服务为保证,不断为客户创造更高价值,提供更优服务。深圳鱼亮科技创始人鱼海航,始终关注客户,创新科技,竭诚为客户提供良好的服务。

信息来源于互联网 本站不为信息真实性负责