自适应回声消除器设计

李文峰, 王晓辉, 孙小业

(西安科技大学 通信与信息工程学院, 陕西 西安 710054)

摘要:针对救援通信系统语音通话过程中回声干扰问题,基于采用归一化最小均方误差算法的自适应滤波器和语音检测模块,设计了一种自适应回声消除器,介绍了该自适应回声消除器的工作原理和设计方案。测试结果表明,该自适应回声消除器收敛速度快,可在1 s内收敛到-30 dB以下,基本消除音频信号回声。

关键词:救援通信; 语音通信; 回声消除; 自适应滤波器; 归一化最小均方误差算法

Abstract:In view of problem of echo interference in voice communication of rescue communication system, a self-adaptive echo canceller was designed based on self-adaptive filter using normalized least mean square and voice detection module. Working principle and design scheme of the self-adaptive echo canceller were introduced. The test results show that the self-adaptive echo canceller has rapid convergence speed, which can converge to below -30 dB within 1 s, and basically eliminate audio signal echo.

Keywords:rescue communication; voice communication; echo cancellation; self-adaptive filter; normalized least mean square

0引言

中国煤矿井下作业远离地面,地形复杂,环境恶劣,人员、设备分散,矿山安全事故与自然灾害发生频繁。当发生灾难后,在抢险救援现场和指挥中心之间建立稳定的救援通信系统必不可少[1]。语音通信是救援通信系统基本功能之一。井下救护人员可通过语音通话及时上报灾害现场和救援情况,同时井下救护人员之间还可语音通话,彼此配合完成救援任务。井上指挥中心可通过语音通话直接下达救援指示,协调各项工作[2]。由于井下空间狭窄等因素,扬声器里传来的语音极易经过巷道壁的反射再次进入麦克风传给说话者,形成回声干扰[3-4],降低了通话质量,影响救援人员与指挥中心之间的正常沟通。鉴此,本文设计了一种自适应回声消除器,为解决井下应急救援中语音通话时回声干扰问题提供应用方案。

1自适应回声消除器设计

自适应回声消除器主要由语音检测模块和自适应滤波器模块组成,如图1所示。语音检测模块控制自适应回声消除器的工作模式,自适应滤波器模块用于产生真实回声的估计信号,通过调整滤波器阶数及权系数,自动跟踪回声信号变化,实现回声抑制[5-6]

图1 自适应回声消除器工作原理
Fig.1 Working principle of self-adaptive echo canceller

远端(扬声器端)输入信号x(n)经外界环境干扰形成回声信号r(n),原始语音信号s(n)和回声信号r(n)叠加形成近端(麦克风端)输入信号:

d(n)=s(n)+r(n)

(1)

自适应滤波器根据远端(扬声器端)输入信号x(n)经过回声路径的特性产生一个回声估计信号y(n),近端(麦克风端)输入信号d(n)减去自适应滤波器输出的回声估计信号y(n)得到误差信号:

e(n)=d(n)-y(n)

(2)

由式(1)、式(2)得

e(n)-s(n)=r(n)-y(n)

(3)

要使误差信号e(n)无限接近原始语音信号s(n),就要让回声估计信号y(n)尽可能接近回声信号r(n),从而实现回声消除。

1.1 语音检测模块

自适应回声消除器通过语音检测模块检测当前语音环境,根据远端通话、双端通话、近端通话和静音4种语音模式,分别选择对应的自适应回声消除、冻结、旁路和静默4种工作模式。

(1) 远端通话检测。计算远端信号的短时能量Efar和近端信号的短时能量Enear之间的比值,如果比值大于某一阈值(阈值一般通过实验或测试经验来确定),则判断为远端通话语音模式,自适应回声消除器进入自适应回声消除工作模式,即更新滤波器权系数、开启滤波功能。

(2) 双端通话检测。由于近端原始语音信号s(n)和远端输入信号x(n)是相关的,通过计算二者之间的互相关量来判断是否为双端通话语音模式。如果语音环境为双端通话语音模式,自适应回声消除器进入冻结工作模式,即停止更新滤波器权系数、开启滤波功能。

(3) 近端通话检测。计算近端信号的短时能量Enear、远端信号的短时能量Efar,设置合适的阈值α,如果Enear>αEfar,则判断为近端通话语音模式,自适应回声消除器进入旁路工作模式,即停止更新滤波器权系数、关闭滤波功能。

(4) 静音检测。根据信息熵公式,当检测到原始语音信号的熵为零时,则判断为静音语音模式,此时存在各种背景噪声,自适应回声消除器进入静默工作模式,即利用自适应滤波器来模拟背景噪声,然后从误差信号中减去该背景噪声的估计信号来抑制背景噪声[7]

1.2 自适应滤波器模块

自适应滤波器模块包括滤波器单元和自适应算法单元。滤波器单元根据远端输入信号x(n)产生一个回声估计信号y(n);自适应算法单元根据误差信号e(n)来调整滤波器权系数,使回声估计信号y(n)逐步逼近回声信号r(n)。

(1) 滤波器单元。滤波器采用有限长单位冲激响应(Finite Impulse Response,FIR)滤波器,其输入和输出关系表达式为

(4)

式中:N为有限信号序列长度;h(k)为回声路径的单位脉冲响应。

式(4)的时域表达式为

y(n)=wT(n)x(n)

(5)

式中w(n)为滤波器权系数。

(2) 自适应算法单元。通过自适应算法计算滤波器权系数w(n),使wT(n)x(n)尽可能接近r(n)。均方误差为

E[e2(n)]=E[d2(n)-2d(n)wT(n)x(n)+wT(n)x(n)xT(n)w(n)]

(6)

式(6)是关于滤波器权系数的二次抛物面函数,调节滤波器权系数使均方误差最小,相当于函数沿抛物面下降寻找最小值。

利用梯度信息寻找最小值是一种常用的方法,最小均方误差(Least Mean Square,LMS)算法[8]利用瞬时误差信号的平方值来估计均方误差函数的梯度,权系数更新式为

w(n+1)=w(n)+μe(n)x(n)

(7)

式中μ为步长参量。

μ较小时,失调小,但收敛速度慢;当μ较大时,收敛速度快,但失调大。为解决这一矛盾,采用归一化最小均方误差(Normalized Least Mean Square,NLMS)算法[9],即用可变步长参量代替固定步长参量,权系数更新式为

w(n+1)=w(n)+e(n)x(n)

(8)

式中:μN为常数,用来平衡收敛速度和稳态失调;δ为较小的常数,用来避免步长参量过大。

迭代开始时步长参量比较大,具有较快的收敛速度。随着迭代的进行,步长参量逐渐减小,到达稳态时,具有较小的失调。

1.3 软件流程

自适应回声消除器主要通过软件实现,流程如图2所示。操作系统采用Linux系统[10],编程采用Microsoft Visual C++6.0。初始化后首先进行语音模式检测,自适应回声消除器根据不同语音模式选择不同工作模式,各个不同工作模式对应滤波器权系数的更新与否及滤波器滤波功能的开启与关闭。

图2 自适应回声消除器软件流程
Fig.2 Software process of self-adaptive echo canceller

2测试验证

自适应回声消除器在多媒体救援通信系统[11-12]硬件平台上进行了应用测试。用户通过硬件设备接收远端传送来的语音信号,再经过自适应回声消除器对采集的音频信号进行处理。从收敛速度和回声消除效果[13]2个方面来测试自适应回声消除器性能。

(1) 收敛速度。在静音语音模式下,随机提取一段背景噪声,FIR滤波器的阶数分别设置为64和256。经自适应回声消除器处理后,背景噪声误差、均方误差曲线分别如图3、图4所示。可看出滤波器阶数较大时,收敛速度较慢,但波动较小,稳态失调小,自适应回声消除器在纯回声情况下,在1 s内即可收敛到-30 dB以下。

(2) 回声消除效果。在双端通话语音模式下,分别从远端输入信号和近端输入信号中随机提取一段通话语音,FIR滤波器的阶数设置为256,自适应回声消除器处理前后波形对比如图5所示。可看出经自适应回声消除器处理后的音频信号中基本消除了回声。

图3 背景噪声误差曲线
Fig.3 Error curve of background noise

图4 背景噪声均方误差曲线
Fig.4 Mean square error curve of background noise

(a) 归一化原始语音信号

(b) 归一化回声信号

(c) 归一化近端输入信号

(d) 归一化回声消除后信号

图5 自适应回声消除器处理前后波形对比
Fig.5 Waveforms before and after processing of self-adaptive echo canceller

3结语

介绍了自适应回声消除器工作原理及设计方案。测试结果表明,该自适应回声消除器收敛速度快,可在1 s内收敛到-30 dB以下,基本消除了音频信号回声。目前,自适应回声消除器已成功应用于多媒体救援通信系统中,下一步将研究复杂度更低的自适应滤波算法。

参考文献(References):

[1] 于雷,陈佳林.基于无线移动通讯的矿山应急通信与监测系统研究[J].中国安全生产科学技术,2014,10(增刊1):300-303.

YU Lei,CHEN Jialin.Study on mine emergency communication and monitoring system based on wireless mobile[J].Journal of Safety Science and Technology,2014,10(S1):300-303.

[2] 李文峰,唐善成.矿山应急救援平台——互联网+应急救援[M].北京:清华大学出版社,2016.

[3] 台宏达.语音通信系统中的自适应回声消除技术[J].计算机仿真,2015,32(9):209-213.

TAI Hongda.Adaptive echo cancellation technique in speech system[J].Computer Simulation,2015,32(9):209-213.

[4] ASLAM M S.Comments on "design of fractional adaptive strategy for input nonlinear Box-Jenkins systems"[J].Signal Processing,2016,119:169-173.

[5] CHEN Yong,WANG Fang,WAN Jianwei,et al.MASS-RAB:robust adaptive beamforming for general-rank signal models via matched spatial spectrum processing[J].Applied Acoustics,2016,111:205-213.

[6] 林耀荣.自适应滤波理论及其在回波消除中的应用研究[D].广州:华南理工大学,1999.

[7] 梁鸿斌.手机VoIP残余回声抑制技术的研究[J].通信技术,2014,47(7):744-747.

LIANG Hongbin.Study on residual echo suppression technique of mobile phone VoIP[J].Communications Technology,2014,47(7):744-747.

[8] 曹亚丽.自适应滤波器中LMS算法的应用[J].仪器仪表学报,2005,26(8):452-454.

CAO Yali.The application of LMS algorithm in adaptive filter[J].Chinese Journal of Scientific Instrument,2005,26(8):452-454.

[9] 孙娟,王俊,刘斌.改进的NLMS算法及其在自适应预测中的应用[J].中国电子科学研究院学报,2007,2(5):507-512.

SUN Juan,WANG Jun,LIU Bin.Improved variable step size LMS algorithm and its application in adaptive prediction[J].Journal of China Academy of Electronics and Informaiton Technology,2007,2(5):507-512.

[10] 宋延昭.嵌入式操作系统介绍及选型原则[J].工业控制计算机,2005,18(7):41-42.

SONG Yanzhao.Introduction to embedded operating system and selection principle[J].Industrial Control Computer,2005,18(7):41-42.

[11] 李文峰,徐精彩,郑学召.一种矿山救援多媒体通信装置[J].煤矿安全,2005,36(6):23-24.

LI Wenfeng,XU Jingcai,ZHENG Xuezhao.A kind of multimedia communication devices for mine rescue[J].Safety in Coal Mines,2005,36(6):23-24.

[12] 李文峰,唐晓莉,徐克强,等.多媒体救援通信系统应用管理软件设计[J].工矿自动化,2012,38(2):9-12.

LI Wenfeng,TANG Xiaoli,XU Keqiang,et al.Design of application management software of multimedia rescue communication system[J].Industry and Mine Automation,2012,38(2):9-12.

[13] 陈国志,乐彦杰,张磊,等.用于回声消除系统的自适应延迟估计算法研究[J].科学技术与工程,2015,15(3):244-249.

CHEN Guozhi,LE Yanjie,ZHANG Lei,et al.Research on adaptive delay estimation algorithms used for echo cancellation system[J].Science Technology and Engineering,2015,15(3):244-249.

Design of self-adaptive echo canceller

LI Wenfeng, WANG Xiaohui, SUN Xiaoye

(College of Communication and Information Engineering, Xi'an University of Science and Technology, Xi'an 710054, China)

中图分类号:TD655

文献标志码:A 网络出版时间:2017-09-27 15:07

网络出版地址:http://kns.cnki.net/kcms/detail/32.1627.TP.20170927.1507.020.html

文章编号:1671-251X(2017)10-0097-04

DOI:10.13272/j.issn.1671-251x.2017.10.020

收稿日期:2017-06-02;

修回日期:2017-09-07;责任编辑盛男。

基金项目:陕西省科技统筹创新工程计划资助项目(2015KTCQ03-10)。

作者简介:李文峰(1969—),男,河南襄城人,教授,博士,主要研究方向为应急救援和矿山信息化技术,E-mail:liwenfeng@xust.edu.cn。

引用格式:李文峰,王晓辉,孙小业.自适应回声消除器设计[J].工矿自动化,2017,43(10):97-100. LI Wenfeng,WANG Xiaohui,SUN Xiaoye.Design of self-adaptive echo canceller[J].Industry and Mine Automation,2017,43(10):97-100.