一种用于回音消除的步长参数调整方法及设备的制作方法

文档序号:7648822阅读:186来源:国知局
专利名称:一种用于回音消除的步长参数调整方法及设备的制作方法
技术领域
本发明涉及回音消除器,更具体地i兌,涉及一种用于回音消除的步长参数 调整方法及设备。
背景技术
回音一般包括两类 一类是阿络回音,该回音是在公共交换电话网中由于 近端的2-4线转换单元的阻抗不匹配而导致的反射信号;另一类是声学回音,该 回音是由于周围环境物体表面的声学反射导致的信号,例如声音从近端免提设 备的扬声器直接或经过周風物体表面反射,被麦克风采样。网络回音的回音路 径相对稳定,回音路径长度不超过32ms;声学回音的回音路径容易发生改变, 回音路径长度可达几百ms,且回音路径是非线性的。而在实际通话过程中,超 过20ms的回音会严重影响通话质量。对于远程通信系统,僻如长途电话,对网 络回音的消除是必需的;而对于基于分组交换阿络的IP电话和数字视频会议系 统,由网络抖动、音频编解石马和音频前后处理等原因导致的实际延时远大于 20ms,声学回音的消除是必需的。通常可采用一个回音消除系统来消除回音,典型的,如图l所示的回音消除 器IOO。该回音消除器100内部包括自适应滤波单元101、步长参数调整单元102, 其中(1) 自适应滤波单元101典型的可为一个自适应滤波器,其可采用LMS (Least Mean Square, 最小均方)、NLMS (Normalized Least-Mean-Square, 归一化的最小均方)和RLS (Recursive Least-Squares,递推最小二乘)等进4亍滤波, 其可以在时间域或频率域上实现。而在实际应用中,为了降低运算复杂度和提 高收敛速度,实际使用的回音消除器(尤其是声学回音消除器)大多数以频率 域(包括子带分析-综合)方式实现,附图2就是在一个示例场景中该声学回音消 除器进行回音消除的示意图。(2) 步长参数调整单元102用于在双向通话(指远端和近端同时讲话)过 程中对滤波器的步长参数进行调整,从而避免滤波器严重发散导致的信号失真。
该步长参数调整单元102运用步长参数调整方法,该方法大多建立在输出信号e(n) 和/或远端信号x(n)的信号强度或相关性的基础上,并且算法自身有一个或多个 很难设置的参数。在一个典型示例中,步长参数调整单元102是一个双向通话检 测器(double talk detector, DTD),其所采用的步长参数调整方法则是双向通 话检测方法,其一旦检测到近端语音信号,立即停止滤波器系数适应或减小滤 波器适应的步长参数以降低适应速率。目前,步长参数调整方法(包括双向通话4企测方法)所采用的算法主要有 两种, 一种是基于远端信号x(n)和麦克风信号d(n)之间的信号强度,另一种是基 于这两个信号之间的相关性。具体的方法流程是在步骤S301中,在双向通话 过程中检测到近端语音信号后,则获取信号强度或信号相关性的阈值;在步骤 S302中,基于信号强度或信号相关性的阈值调整步长参数,避免滤波器发散。 但是,由于实际的语音信号的特点是非静态的,并且是高度自相关的(即语音 信号的相关矩阵的条件数较大),语音信号强度的变化范闺大并且变化速度快, 因此很难选择合适的信号强度判定阈值;由于实际的回音路径不可避免的非线 性,以及环境噪音、电路噪音和量化噪音对信号之间相关性有明显的影响,同 样很难选择合适的信号相关性判定阈值,因此这两种方法都不可靠。双向通话检测方法可视为更为普遍的可变步长参数方法的一种特殊情况。 可变步长参数方法,是通过某种策略,连续调整步长参数,通常不包含明确的 双向通话检测器。目前的可变步长参数方法,大多数建立在输出信号和/或远端 信号的信号强度或相关性的基础上,其具体内容可参考H.-C. Shin, A.H. Sayed, W.-J. Song, "Variable St印-Size NLMS and Affine Projection Algorithms," IEEE Signal Processing Letters, vol. 11 , no.2, pp.132-135, Feb 2004。并且算法自身有一 个或多个很难设置的参数,如上述,直接基于信号强度或相关性的可变步长参 数的算法是不可靠的。而如果该方法利用了输出信号而没有采取谨慎的措施, 则更不可靠,这是西为输出信号等于麦克风信号减去估计的回音信号,而对估 计的回音信号的微小扰动,将通过输出信号影响步长参数,而步长参数的错误 变化又会加大对估计的回音信号的扰动,这将构成正反馈,从而破坏滤波器的 稳定性。因此需要一种新的步长参数调整方法,能够在回音消除器利用其自适应滤 波器进行回音消除的同时,通过该步长参数调整方法保证自适应滤波器的稳定 性
发明内容
本发明的目的在于提供一种回音消除设备,旨在解决现有技术在进行回音 消除的过程中无法保证滤波器稳定性的问题。本发明的目的还在于提供一种用于回音消除的步长参数调整方法,以更好 地解决现有技术中存在的上述问题。为了实现发明目的,所述设备,即回音消除器,包括用于进行回音消除的 自适应滤波单元,及与其相连的步长参数调整单元,所述步长参数调整单元包括能量分布判定模块、发散值判定模块和步长控制模块;所述能量分布判定模块与发散值判定模块相连,用于获取滤波器系数,计 算滤波器系数能量的概率分布,并将计算结果送M散值判定模块;所述发散值判定模块与能量分布判定模块及步长控制模块分別相连,用于 计算与所述滤波器系数能量岭概率分布相关的JS发散值2、,并将所述JS发散值 Z、送入步长控制模块;所述步长控射模块通过一个以所述JS发散值2^为自变量的步长参数函数 对步长参数进行调整。优选地,所述发散值判定模块用于计算滤波器系数能量的离散概率分布和 均匀概率分布之间的JS发散值"w,计算公式是U=i 乂 w ;其中,pW是滤波器系数能量的离散概率分布,i ("是滤波器系数能量的均匀的概率分布,H::V"二1, 0S; 卩)S1, h0,l,…,A1 — 1,且)=1,2, ;r("是 概率分布一)的权重,满足2^=1^7') = 1和0^;^)^1; /f(; )是概率分布/ 的熵。优选地,所述步长控制模块所采用的步长参数函数是 其中,Z)^是滤波器系数能量的概率分布相关的JS发散值,且0SZ)^S1;^max、 A,分别是预设的最大步长参数及最小步长参数,0《<//max S 1 ; /(i^,)是以Z^为自变量的步长控制因子。优选地,所述步长控制因子/(I^)是一个以Z、为自变量的单调递增函数,
其函凄t表达式为/(A) = ^l + tanh(a(Z^-/ ))];其中,0SZ)JS《1, a、 ">0是可灵活设定的算法参数。 为了更好地实现发明目的,所述步长参数调整方法基于前述的回音消除器, 所述方法包括以下步^^:A. 获取滤波器系数,并计算滤波器系数能量的概率分布;B. 计算与所述滤波器系数能量的概率分布相关的JS发散值;C. 利用以所述JS发散值"^为自变量的步长参数函数对步长参数进行调整。 优选地,在所述步骤A之前还包括预设步长参数的端值,即最大步长参数M^及最小步长参数Ai,其中优选地,所述步骤B通过滤波器系数能量的概率分布计算JS发散值"^的公 式是其中,y"是滤波器系数能量的离散概率分布,/ (2)是滤波器系数能量的均匀的概率分布,1^7aW二1, 0S/7,("S1, / = 0,1,...,^-1,且乂 = 1,2,是概率分布的熵,定义为〃00=log2 a 。优选地,所述步骤C所采用的步长参数函数是 A("^) = A扁+/(A/5)'Umax —//min);其中,Z、是滤波器系数能量的概率分布相关的JS发散值,且0Si^Sl; Amax、 M^分别是预设的最大步长参数及最小步长参数,0 S/imin <//max《1; /(Z^)是以Z)JS为自变量的步长控制因子。优选地,所述步长控制因子/cc^)是一个以^^为自变量的单调递增函数, 其函数表达式为/(D^):会[l + tanh("(Z^-仰];其中,0Si)Js^l, a、 ->0是可灵活:没定的算法参数。
本发明通过在回音消除器的步长参数调整单元中增加能量分布判定模块和 发散值判定模块,而在步长控制模块中通过一个以"^为自变量的步长控制因子 /(DJ对步长参数进行准确可靠的调整,保证了滤波器的稳定性。


图1是现有技术中回音消除器的结构图;图2是现有技术中利用回音消除器进行回音消除的示意图;图3是现有技术在回音消除过程中进行步长参数调整的方法流程图;图4是本发明中回音消除器的结构困;困5是本发明的一个实施例中回音路径沖激响应的示意图;图6是本发明的一个实施例中滤波器系数能量的离散概率分布示意困;國7是本发明的一个实施例中步长参数函数所包含的步长控射因子的示意图;野8是本发明在回音消除过程中进行步长参数调整的方法流程图; 图9是本发明在回音消除过程中进行步长参数调整时的滤波器状态转换示 意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚听白,以下结合附图及实 施僻,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅 仅用以解释本发明,并不用于限定本发明。本发明的核心思想是如果滤波器稳定则增大步长,反之则减小步长。为 实现此目的,需要有能够直接定量地描叙滤波器稳定状态的参量,并利用它去 控制滤波器的步长参数。因此,在本发明中,回音消除器包括自适应滤波单元和步长参数调整单元, 该步长参数调整单元包括三个模块能量分布判定模块、发散值判定模块和步 长控制模块。能量分布判定模块获取滤波器系数,并计算其滤波器系数能量的 概率分布;发散值判定模块利用该滤波器系数能量的概率分布计算JS发散值 1&,并将计算结果送入步长控制模块;后者则通过一个以"^为自变量的参数 函数对步长参数进行调整。由于本发明是基于可明确量化的滤波器系数能量的 概率分布,而非无法准确限定的信号强度或信号相关性,因此本发明能够对步
长参数进行准确可靠的调整,从而保证滤波器的稳定性。图4是本发明中回音消除器100的结构图。该回音消除器100包括自适应滤波 单元101和步长参数调整单元102。应当说明的是,本发明所有图示中各设备之 间的连接关系是为了清楚阐释其信息交互及控制过程的需要,因此应当视为逻 辑上的连接关系,而不应仅限于物理连接。其中自适应滤波单元101用于进行回音消除,其可采取如前所述的LMS、 NLMS 和RLS等方法进行滤波,可在时间域或频率域上实现。步长参数调整单元102与自适应滤波单元101相连,用于实时4企测滤波器的 稳定性,并对步长参数进行调整。其包括能量分布判定模块1021、发散值判定 模块1022和步长控制模块1023,其中(1)能量分布判定模块1021与发^:值判定模块1022相连,其用于获取滤波 器系数,并计算滤波器系数能量的概率分布,包括离散概率分布及均匀概率分 布。在一个示例方案中,该回音消除器100利用有限冲激响应(Finite Impulse Response, FIR)滤波器来模拟回音路径,那么,在绝大多数情况下,FIR的沖 激响应(即滤波器系数)A = A,,)的总能量(定义为各个实系数的绝 对值或复系数的模的平方和)集中在小部分系数上,如图5所示。滤波器系数能量的离散概率分布可用以下公式表示IV2"(1) ■,a = i^i~~7,卜o,i,…,jv-i (i) 別2滤波器系数能量的均匀概率分布可用以下公式表示a") = |, / = 0,1,...,w —1 (2)满足通常的限制Z::1 p卩)=1和0《p卩)SI, i = 0,1,…,tv -1和= 1,2 。因此,/^G^,/^,…,^U可视为FIR滤波器系数能量的离散概率分布,y2、G^),a(2),…,/^!)是均匀概率分布,即如图6所示。(2)发散值判定模块1022分別与能量分布判定模块102]及步长控制模块 1023相连,其利用能量分布判定模块1021的计算结果,计算与所述滤波器系数 能量的概率分布相关的JS发散值i^ ,然后将所述JS发散值Z、送入所述步长控 制模块1023。在前述示例方案中,与滤波器系数能量的概率分布相关的JS发散值D^的计 算公式为、乂=1 乂 乂=1其中,y"是滤波器系数能量的离散概率分布,/ (2)是滤波器系数能量的均匀的概率分布,Zil^A0)-1' 0S; 卩)^1, i-0,l,…,7V-l,且乂 = 1,2, 一)是 概率分布p(力的权重,满足S二=1和0 ^ ;r("7) ^ 1; 是概率分布尸的熵,定义为^t/ )-一21::';^og2A 。此外,还可进一步计算滤波器系数能量的概率分布的峰值位置jw^^ ,公 式为Pos層=7T^Targmax(P'(" (4) /V — i i-o,i,…,w-i(3 )步长控制模块1023与发散值判定模块1022相连,用于通过一个以Z、为 自变量的步长参数函数对步长参数A("js)进行调整。在一个示例方案中,其利 用步长控制西子/(i^)来进行具体的调整,所采用的步长参数函数是) = Mrin + ) d - /"min ) ( 5 )其中,i^是滤波器系数能量的概率分布相关的JS发散值,且0SZ^S1;Amax、 /^n分别是预设的最大步长参数及最小步长参数,0 S/imn <//應《1 ; /0DJS)是以为自变量的步长控制因子。在一个示例方案中,步长控制因子/(Z^)是一个以Z&为自变量的单调递增函数,其函数表达式为肌)=会[l + tanh(,广離0SZ^1 (6) /(Z^)的示意图。图8示出了本发明在回音消除过程中进行步长参数调整的方法流程。在所有步骤之前,在回音消除器100的步长参数调整单元102中预设步长参 数A(D^)的端值,即最大步长参数Amax及最小步长参数M^ ,其中 0 ^ 〃mm < Amax ^ 1 。在步骤S801中,获取滤波器系数,并计算滤波器系数能量的概率分布。具 体地,回音消除器100利用其步长参数调整单元102中的能量分布判定模块1021 获取滤波器系数,并计算滤波器系数能量的离散概率分布和均匀概率分布。首先,利用FIR滤波器来模拟回音路径,所获取的滤波器系数,也即沖激响 应A-(/io,/^…,/2w一),其示意图如图5所示,其能量概率分布如對6所示。由(l) 式和(2 )式分对计算滤波器系数能量的离散概率分布和均匀概率分布,并由(4 )式计算峰值位置/W^ax 。在步骤S802中,由(3)式计算与滤波器系数能量的概率分布相关的JS发散 值7、,实时检测滤波器的稳定程度,该步骤的具体实现过程可参考前述降2中 的内容。在步骤S803中,由(5)式和(6)式,步长调整单元102通过一个以Z&为 自变量的步长参数函数对步长参数进行调整,该步长参数函数中包括一个步长 控制因子/(Z^)。图9是本发明在回音消除过程中进行步长参数调整时的滤波器状态转换示 意图。为方便描述,在本发明中,将显著的回音路径变化和近端语音信号^L为 作用于回音消除系统的外力,定义布尔变量bForce,当出现显著的回音if各径变化 或近端语音信号时,bForce为l,否则为O。并且定义两种可能的滤波器状态稳 定状态和非稳定状态。当滤波器处于稳定状态时,如果bForce-O,则滤波器保持在稳定状态,"m 较大,步长参数也较大,此时具有对回音路径变化的良好的跟踪能力。如果bForce^,滤波器将逐渐由稳定状态向非稳定状态过渡,此时起主导作 用的是外力,它导致"^减小,从而使滤波器步长减小,减緩适应速率,避免出 现大的发散。如果外力一直持续,滤波器将到达并停留在非稳定状态,此时,i^和步长
都很小,适应速率变得非常緩慢,可以避免严重发散。此时滤波器输出有一定 残留回音的信号。如果撤除外力,滤波器将由非稳定状态向稳定状态过渡,进 入加速的恢复过程A^增大,导致步长增大,滤波器收敛速率加快,又〗吏^/5 进一步增大,如此形成正反^t。在本发明的一个具体应用场景中,其步长参数调整过程详述如下 在进行步长参数调整之前,需进行如下的预设根据应用场景、计算资源等选择基本的用于回音消除的自适应滤波器算法, 例如,NLMS, PNLMS, APA, FAP, MDF, MDF-a等。为了降低运算复杂度 和提高收敛速度,尽量选择频率域(包括子带分析-综合)实现方式。根据选定的自适应滤波器算法,设置合适的步长参lt的下限/i^和上限^v,, 例如〃曲=0' //max=0.5。确定本发明的步长参数自适应调整算法的参数"和"。p决定了函数/(2^) 的对称点的水平位置,例如取"=0.325,是闭区间
的中心点;"决定了 函数/(Z^)的形状,取值范围在6-15之间,例如取"=12。确定模拟回音路径的量A^(/^A,…, -J,例如,FIR滤波器横向结构的 滤波器系数,或格型结构的滤波器反射系数,以用于计算滤波器系数能量的概 率分布P(1)。选择适当的滤波器阶数。如果是网络回音消除应用,回音路径长度可设为 32ms。如果是声学回音消除应用,可以使用下面的方法估计最佳的滤波器阶数。 预先Wi定曰音5各径长度为128或256 ms。如果滤波器保持在稳定状态(Z)^较大且波动幅度较小,/7as^7基本不变) 并维持大约10秒钟。最佳的滤波器阶数应该使D^的平均值在0.5-0.6之间;如果Z)^的平均值高于此范围,表明滤波器阶数被设置得过大,既浪费了计算资源(尤其是高采样率的情形)又降低了滤波器收敛速率;相反,如果Dm的 平均值低于此范围,表明滤波器阶数被设置得过小,将导致较大的残留回音并 影响本发明步长调整方法的效果。所以,除非计算资源限制,否则应该调整滤 波器阶数,使稳定状态时的"m的平均值在上述范围之内。 为了降低计算"^和步长参数的运算复杂度,可以1)如果滤波器实现为子带分析-综合方式,则选择不含DC频率的低频率子 带的滤波器系数或反射系数用于计算滤波器系数能量的概率分布。
2)当滤波器阶数较大时,可以将滤波器系数A^(A。,/^,…,/v-J划分为若干 个连续的长度相等的系数块,并以滤波器系数块的能量分布替代原来系数能量分布。设整数B表示每块的系数数目,整数《=数块的能量分布是5表示块数目,则滤波器系<formula>formula see original document page 13</formula>其中,规定当Z、W-l时/i, = 0。可以看出(1 )式是上式的特例(丑=1 )。并将(2-4)式中的系数数曰W替换为系数块数目《。例如,如果iV = 2048 ,可以 取5 = 16,夂=128;3) 周期性地计算i^s、 /^&M和步长,例如每问隔l-6 ms时l可进行一次计 算并保存结果,其余时刻则利用保存的计算结果;4) 用查表和线性内插来计算Shannon熵的子表达式xlog以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发 明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明 的4呆护范围之内。
权利要求
1、一种回音消除器,包括用于进行回音消除的自适应滤波单元,及与其相连的步长参数调整单元,其特征在于,所述步长参数调整单元包括能量分布判定模块、发散值判定模块和步长控制模块;所述能量分布判定模块与发散值判定模块相连,用于获取滤波器系数,计算滤波器系数能量的概率分布,并将计算结果送入发散值判定模块;所述发散值判定模块与能量分布判定模块及步长控制模块分别相连,用于计算与所述滤波器系数能量的概率分布相关的JS发散值DJS,并将所述JS发散值DJS送入步长控制模块;所述步长控制模块通过一个以所述JS发散值DJS为自变量的步长参数函数对步长参数进行调整。
2、 根据权利要求l所述的回音消除器,其特征在于,所述发散值判定模块 用于计算滤波器系数能量的离散概率分布和均匀概率分布之间的JS发散值"A , 计算公式是"'=1 ) _/=i其中,/ (1)是滤波器系数能量的离散概率分布,P("是滤波器系数能量的 均匀的概率分布,!1^、"二1, 0Sp卩)Sl, f = 0,l,...,W —1,且j.-l,2, ;r(》是概率分布/^)的权重,满足^^=1;^) = 1和0^;^)^1; //(p)是概率分布p的熵。
3、 根据权利要求2所述的回音游除器,其特征在于,所述步长控斜模块所 采用的步长参数函数是= /^n+/(D^)'(//max—A國);其中,"^是滤波器系数能量的概率分布相关的JS发散值,且0《i^《l;^max、 A^分別是预设的最大步长参数及最小步长参数,OS/imin<〃max《l;/(DJS)是以为自变量的步长控制因子。
4、 根据权利要求3所述的回音消除器,其特征在于,所述步长控制因子 /Cf^)是一个以Z、为自变量的单调递增函数,其函数表达式为<formula>formula see original document page 2</formula> 其中,0Si^《1, "、 ->0是可灵活设定的算法参数。
5、 一种基于权利要求l所述回音消除器的步长参数调整方法,其特征在于, 所述方法包括以下步骤A. 获取滤波器系数,并计算滤波器系数能量的概率分布;B. 计算与所述滤波器系数能量的概率分布相关的JS发散值"^;C. 利用以所述JS发散值为自变量的步长参数函数对步长参数进行调整。
6、 根据权利要求5所述的步长参数调整方法,其特征在于,在所述步骤A之 前还包括预设步长参数的端值,即最大步长参数//1皿及最小步长参数//幽,其中 <formula>formula see original document page 3</formula>,化
7、 根据权利要求6所述的步长参数调整方法,其特征在于,所述步骤B通过 滤波器系数能量的概率分布计算JS发散值Z、的公式是<formula>formula see original document page 3</formula>其中,y"是滤波器系数能量的离散概率分布,/ u是滤波器系数能量的 均匀的概率分布,<formula>formula see original document page 3</formula> 是概率分布p的熵,定义为<formula>formula see original document page 3</formula> 。
8、 根据权利要求7所述的步长参数调整方法,其特征在于,所述步骤C所采 用的步长参数函数是<formula>formula see original document page 3</formula>;其中,Z^是滤波器系数能量的概率分布相关的JS发散值,且0SZ^S1; A x 、 A,分別是预设的最大步长参数及最小步长参数,0S//min <//max幺l; /(Z)乃.)是以D/s为自变量的步长控制因子。
9、 根据权利要求8所述的步长参数调整方法,其特征在于,所述步长控制 因子/CC^)是一个以Z、为自变量的单调递增函数,其函数表达式为<formula>formula see original document page 3</formula>其中,0SZ^S1, "、 ">0是可灵活设定的算法参数。
全文摘要
本发明涉及回音消除器,提供了一种用于回音消除的步长参数调整方法及设备。所述方法包括以下步骤A.获取滤波器系数,并计算滤波器系数能量的概率分布;B.计算与所述滤波器系数能量的概率分布相关的JS发散值D<sub>JS</sub>;C.利用以所述JS发散值D<sub>JS</sub>为自变量的步长参数函数对步长参数进行调整。本发明通过在回音消除器的步长参数调整单元中增加能量分布判定模块和发散值判定模块,用滤波器系数能量的概率分布和均匀概率分布之间的JS发散值定量地描叙滤波器的稳定状态,并通过以JS发散值为自变量的步长控制因子对步长参数进行准确可靠的调整,保证了滤波器的稳定性。
文档编号H04B3/21GK101119135SQ20071007581
公开日2008年2月6日 申请日期2007年7月4日 优先权日2007年7月4日
发明者邓邹平 申请人:深圳市融合视讯科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1