您好,欢迎访问

商机详情 -

天津语音交互声学回声AEC算法

来源: 发布时间:2022年08月18日

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

     对于耳机来讲,主要是声学回声,表现为收发环路的隔离度不好。天津语音交互声学回声AEC算法

天津语音交互声学回声AEC算法,声学回声

    我们还希望它在一个短时的观测时间窗的尺度里面也是比较好的,即局部比较好,所以在数学期望内部,我们又对误差进行了短时积分。这个优化准则跟传统的线性自适应滤波器是有本质区别的,因为传统的线性自适应滤波器基于小均方误差准则,它只是在统计意义上比较好,没有局部比较好约束。首先来求解这里的Wl,就是线性滤波器。主要求解方法是,假设Wn就是非线性滤波器是比较好解,把这个比较好解代入到前面的优化方程里,就会得到上面简化之后的优化目标函数。在这个地方,我们又做了一些先验假设,假设非线性的滤波器的一阶统计量和二阶统计量都等于0,我们就可以把上面的优化问题进一步简化,就得到我们非常熟悉的方程,就是Wiener-Hopf方程。这个结果告诉我们,线性滤波器的比较好解跟传统的自适应滤波器的比较好解是一致的,都是Wiener-Hopf方程的理论比较好解。所以我们就可以采用一些现有的比较成熟的算法,比如NLMS算法、RLS算法,对它进行迭代求解。这就是Wl的设计。接下来再看看Wn的设计。Wn的设计跟Wl的设计是类似的,也是需要将优化之后的线性滤波器,代入到开始的优化问题里,可以把前面的优化问题简化成下面的方程。接下来进行一系列的变量替换之后。

    天津语音交互声学回声AEC算法声学回声,表现为收发环路的隔离度不好,其根本原因就是耳机在装配时麦克风与喇叭的密封隔离没做好。

天津语音交互声学回声AEC算法,声学回声

    需要注意的是,如果index在滤波器阶数两端疯狂试探,只能说明当前给到线性部分的远近端延时较小或过大,此时滤波器效果是不稳定的,需要借助固定延时调整或大延时调整使index处于一个比较理想的位置。线性部分算法是可以看作是一个固定步长的NLMS算法,具体细节大家可以结合源码走读,本节重点讲解线型滤波在整个框架中的作用。从个人理解来看,线性部分的目的就是很大程度的消除线性回声,为远近端帧判别的时候,很大程度地保证了信号之间的相干值(0~1之间,值越大相干性越大)的可靠性。我们记消除线性回声之后的信号为估计的回声信号e(n),e(n)=s(n)+y''(n)+v(n),其中y''(n)为非线性回声信号,记y'(n)为线性回声,y(n)=y'(n)+y''(n)。相干性的计算(Matlab代码),两个实验(1)计算近端信号d(n)与远端参考信号x(n)的相关性cohdx,理论上远端回声信号的相干性应该更接近0(为了方便后续对比,WebRTC做了反向处理:1-cohdx),如图5(a),行为计算近端信号d(n),第二行为远端参考信号x(n),第三行为二者相干性曲线:1-cohdx,会发现回声部分相干值有明显起伏,比较大值有,近端部分整体接近,但是有持续波动,如果想通过一条固定的门限去区分远近端帧,会存在不同程度的误判。

    

    首先这里的A和D比较好判断,他们都属于线性时不变系统。比较难判断的是C,因为在一些比较复杂的场景下,声学回声往往会经过多个不同路径的多次反射之后到达接收端,同时会带有很强的混响,甚至在更极端情况下,喇叭与麦克风之间还会产生相对位移变化,导致回声路径也会随时间快速变化。这么多因素叠加在一起,往往会导致回声消除算法的性能急剧退化,甚至完全失效。有同学可能会问,难道这么复杂的情况,不是非线性的吗?我认为C应该是一个线性时变的声学系统,因为我们区分线性跟非线性的主要依据是叠加原理,前面提到的这些复杂场景,它们依然是满足叠加原理的,所以C是线性系统。这里还要再补充一点,细心的朋友会发现B里面有一个功率放大器,同时在C里面也有一个功率放大器,为什么经B的功率放大器放大之后,可能带来非线性失真,而C的功率放大器不会产生非线性失真呢?二者的主要区别在于B放大之后输出是一个大信号,用来驱动喇叭。而C放大之后输出依然是小信号,通常不会产生非线性的失真。2.非线性声学回声产生的原因.非线性声学回声产生的原因,我一共列了两条原因。原因之一,声学器件的小型化与廉价化,这里所指的声学器件就是前面B里面提到的功率放大器和喇叭。

     AEC声学回声,电话的扬声器的声音。

天津语音交互声学回声AEC算法,声学回声

    在这里我将整个回声路径分成了A、B、C、D四个部分。我们一起来看一下,ABCD里面哪一个环节有可能是非线性的?答案应该是B。也就是回声路径里面的功率放大器和喇叭,具体的原因稍后会做详细分析。接下来我想再解释一下为什么A、C、D它们不是非线性的。首先这里的A和D比较好判断,他们都属于线性时不变系统。比较难判断的是C,因为在一些比较复杂的场景下,声学回声往往会经过多个不同路径的多次反射之后到达接收端,同时会带有很强的混响,甚至在更极端情况下,喇叭与麦克风之间还会产生相对位移变化,导致回声路径也会随时间快速变化。这么多因素叠加在一起,往往会导致回声消除算法的性能急剧退化,甚至完全失效。有同学可能会问,难道这么复杂的情况,不是非线性的吗?我认为C应该是一个线性时变的声学系统,因为我们区分线性跟非线性的主要依据是叠加原理,前面提到的这些复杂场景,它们依然是满足叠加原理的,所以C是线性系统。这里还要再补充一点,细心的朋友会发现B里面有一个功率放大器,同时在C里面也有一个功率放大器,为什么经B的功率放大器放大之后,可能带来非线性失真,而C的功率放大器不会产生非线性失真呢?二者的主要区别在于B放大之后输出是一个大信号。

    AEC声学回声,电话的扬声器的声音(包括反射声),被麦克风拾取传送给远端,使远端说话人又听到自己的声音。天津语音交互声学回声AEC算法

声学回声消除应用技术。天津语音交互声学回声AEC算法

    男人说话的声频为~150Hz,女人说话声频为~230Hz,发动机声频为~250Hz,绝大部分机器的噪音也是以低频为主的中低频噪音),9.声音频率(声频)声波在单位时间内的振动次数称为频率(frequency),单位赫(Hz)。人耳能够听到的声音的整个范围是20~20000Hz,一般把声音频率分为低频(500Hz以下)、中频(500-1000Hz)和高频(1000Hz以上)三个频带。听觉好的成年人能听到的声音频率常在30~16000Hz之间,老年人则常在50~10000Hz之间。10.混响声源停止发音后,产生的声音延续现象。11.混响时间当声场达到稳定的状态后,突然关掉声源使其停止发声,声能逐渐减小到原来声能(稳定时具有的声能)的百万分之一所经历的时间,通常用声压级60dB所需要的时间,一般用T60表示(有时也用T),单位为秒(S);(简而言之:声能密度衰减60dB所需要的时间)。12.混响时间计算公式塞宾公式T60=αS。其中A为总吸声量,α为吸声系数,S为样件面积,V为混响室体积。13.比较好混响时间对大量音质效果评价认为较好的各种用途的厅堂实测的500HZ和1000HZ满场(指实际使用状态)的混响时间进行统计分析,从而得到的混响时间称为比较好混响时间。14.直达声与混响声声源发出的直接到达的声音是直达声。

     天津语音交互声学回声AEC算法

深圳鱼亮科技有限公司是一家有着雄厚实力背景、信誉可靠、励精图治、展望未来、有梦想有目标,有组织有体系的公司,坚持于带领员工在未来的道路上大放光明,携手共画蓝图,在广东省等地区的通信产品行业中积累了大批忠诚的客户粉丝源,也收获了良好的用户口碑,为公司的发展奠定的良好的行业基础,也希望未来公司能成为*****,努力为行业领域的发展奉献出自己的一份力量,我们相信精益求精的工作态度和不断的完善创新理念以及自强不息,斗志昂扬的的企业精神将**深圳鱼亮科技供应和您一起携手步入辉煌,共创佳绩,一直以来,公司贯彻执行科学管理、创新发展、诚实守信的方针,员工精诚努力,协同奋取,以品质、服务来赢得市场,我们一直在路上!