当前位置:文档之家› 解密消回音算法

解密消回音算法

解密回声消除算法
一、前言
前段时间声讯电子推出一款回声消除模块,号称适用于大部分视讯通讯产品,其宣传的
强大的功能令不少行内从业者津津乐道,甚至有工程师得出这样的结论,该款回音消除模块
算法强大到令人发指!那么他有哪些先进的算法呢,消回音能力真的有其宣传的那么牛吗?
接下来我们来探究一下当前比较流行的回音消除基本算法。
要了解回声消除技术的来龙去脉,不得不提及作为现代通讯技术的理论基础——数字信
号处理理论。首先,数字信号处理理论里面有一门重要的分支,叫做自适应信号处理。而在
经典的教材里面,回声消除问题从来都是作为一个经典的自适应信号处理案例来讨论的。既
然回声消除在教科书上都作为一种经典的具体的应用,也就是说在理论角度是没有什么神秘
和新鲜的,那么回声消除的难度在哪里?为什么提供回声消除技术(不管是芯片还是算法)
的公司都是来自国外?回声消除技术的神秘性在哪里?

二、回声消除原理
从通讯回音产生的原因看,可以分为声学回音(AcousticEcho简称AE)和线路回
音(LineEcho简称LE),相应的回声消除技术就叫声学回声消除(AcousticEcho
Cancellation,AEC)和线路回声消除(LineEchoCancellation,LEC)。声学回音是由
于在免提或者会议应用中,扬声器的声音多次反馈到麦克风引起的(比较好理解);线路回
音是由于物理电子线路的二四线匹配耦合引起的(比较难理解)。
上面的概念说得比较笼统,相信大多数人都很迷糊,也不直观。据工程师介绍:在
通信术语里,通常指在终端设备(例如电话机)中,发端信号经处理后,其中一部分
回馈到自身接收电话的那部分信号。在电话机中,原始话音通过送话器把声音信号转
化为电信号,经通信线路一路传送到对方,一路回传到本方受话器,使讲话人能听到
自己的声音,这就是侧音。
侧音产生的原因有:
1、电话机内部电路,阻抗均匀性差,或级间阻抗匹配不良。
2、通信网络,阻抗匹配不良。

“回音”是通讯产品及配件在实际使用的过程中,时常遇到的问题。客观地说,无论模拟式
通讯、还是数字式通讯,在使用过程中,都一定存在回音的现象。因此,回音消除器产品的
设计,就成为了通讯业至今不息的论题。回音的产生,最早是人们在一个空旷的峡谷中喊
话,会多次听到自己的声音,这种现象是“声学回音”,指声源产生后,声波在某个物体的表
面得到发射,形成“二次声源”,如果声波得到多次的反射,就会形成在峡谷中喊话的效果了。
中国北京天坛回音壁就是人为地采用了这种回音原理,建造出的历史景点。在电话出现后,
人们又发现,在通话过程中,会在一定的短暂延时之后,听到自己说的话。这种回音现象,
我们称之为“网络回音”,特别是采用两线式的电话系统,在两条铜线上要承载双向的语音信
号,在电波延时后,就会出现“二次信号”了

在设计一款“回音消除”产品、或者模块化电路的时候,设计人员首先要了解“回音”产
生的机理,而后从实际的条件入手,选择适合的产品方案。以下所讨论的,仅限于视频会议
行业常规的使用条件下的产品设计。

回音的产生主要有两种原因:

1.由于空间声学反射产生的声学回音(见下图):

图中的男子说话,语音信号(speech1)传到女士所在的房间,由于空间的反射,形成
回音speech1(Echo)重新从麦克风输入,同时叠加了女士的语音信号(speech2)。此时男
子将会听到女士的声音叠加了自己的声音,影响了正常的通话质量。此时在女士所在房间应
用回音抵消模块,可以抵消掉男子的回音,让男子只听到女士的声音。
2.由于2-4线转换引入的线路回音(见下图):
在ADSLModem和交换机上都存在2-4线转换的电路,由于电路存在不匹配的问题,会
有一部分的信号被反馈回来,形成了回音。如果在交换机侧不加回音抵消功能,打电话的人
就会自己听到自己的声音。
不管产生的原因如何,对语音通讯终端或者语音中继交换机需要做的事情都一样:在发
送时,把不需要的回音从语音流中间去掉。
试想一下,对一个至少混合了两个声音的语音流,要把它们分开,然后去掉其中一个,
难度何其之大。就像一瓶蓝墨水和一瓶红墨水倒在一起,然后需要把红墨水提取出来,这恐
怕不可能了。所以回声消除被认为是神秘和难以理解的技术也就不奇怪了。诚然,如果仅仅
单独拿来一段混合了回音的语音信号,要去掉回音也是不可能的(就算是最先进的盲信号分
离技术也做不到)。但是,实际上,除了这个混合信号,我们是可以得到产生回音的原始信
号的,虽然不同于回音信号。
我们看下面的AEC声学回声消除框图(本图片转载)。
FigureAcousticEchoCancellationinavoicecommunicationterminal
其中,我们可以得到两个信号:一个是蓝色和红色混合的信号1,也就是实际需要发送
的speech和实际不需要的echo混合而成的语音流;另一个就是虚线的信号2,也就是原
始的引起回音的语音。那大家会说,哦,原来回声消除这么简单,直接从混合信号1里面
把把这个虚线的2减掉不就行了?请注意,拿到的这个虚线信号2和回音echo是有差异
的,直接相减会使语音面目全非。我们把混合信号1叫做近端信号ne,虚线信号2叫做远
端参考信号fe,如果没有fe这个信号,回声消除就是不可能完成的任务,就像“巧妇难为
无米之炊”。
虽然参考信号fe和echo不完全一样,存在差异,但是二者是高度相关的,这也是echo
称之为回音的原因。至少,回音的语义和参考信号是一样的,也还听得懂,但是如果你说一
句,马上又听到自己的话回来一句,那是比较难受的。既然fe和echo高度相关,echo又
是fe引起的,我们可以把echo表示为fe的数学函数:echo=F(fe)。函数F被称之为
回音路径。在声学回声消除里面,函数F表示声音在墙壁,天花板等表面多次反射的物理
过程;在线路回声消除里面,函数F表示电子线路的二四线匹配耦合过程。很显然,我们
下面要做的工作就是求解函数F。得到函数F就可以从fe计算得到echo,然后从混合信号
1里面减掉echo就实现了回声消除。

尽管回声消除是非常复杂的技术,但我们可以简单的描述这种处理方法(如下图):
1、房间A的音频会议系统接收到房间B中的声音
2、声音被采样,这一采样被称为回声消除参考
3、随后声音被送到房间A的音箱和声学回声消除器中
4、房间B的声音和房间A的声音一起被房间A的话筒拾取
5、声音被送到声学回声消除器中,与原始的采样进行比较,移除房间B的声音
三、总结
我们都了解,声波作为一种传导波,包括两个参数,一个是波的相位、一个是波的幅
度。在波的逻辑关系中,反相、等量的信号,逻辑和的结果为零。

回音消除的基本原理就是:用一个人为干预的信号波,去消除通讯过程中产生的回音
信号,同时保留其它正常的语音信号,以达到通讯的正常使用。
目前各品牌回音消除器产品的方案,基本都是在会场声源的输出端,同步获取一个音频
信号,对此信号做一定延时的位移+反相,同时根据使用条件的不同,将该信号的幅度放
大到“二次声源”平均的幅度值范围。处理后的信号与会场声源(话筒)输入端的信号进行逻
辑加的处理,从而抵消回音信号。会场其它的语音信号,因为没有抵消信号,所以正常输入
系统。

目前基于DSP的回声消除算法已经比较成熟,市场上也有一批专门的算法/芯片公司的
能够对外提供已经优化好的基于DSP的软件回声消除模块:如俄罗斯SpriritDSP、美国
AdaptiveDigital、和GAOResearch、英国CSR等等,而在大陆比较著名且较多人使用的美

国Fortemedia、Acoustic等可以提供专用的回声消除DSP芯片。

从上面的厂家来看,几乎清一色的外国品牌,也难怪国内出一款模块就令不少人看到希
望。也期待国内的芯片厂商能够继续努力,争取早日打断欧美日的垄断市场,做出一款真正
让我们国人省心省事的产品。

相关主题