于春和,苏 龙
(沈阳航空航天大学 电子信息工程学院,沈阳 110136)
基于GSC与谱减法的麦克风阵列语音增强方法
于春和,苏 龙
(沈阳航空航天大学 电子信息工程学院,沈阳 110136)
广义旁瓣抵消器(GSC)算法是目前广泛使用的一种麦克风阵列语音增强方法,但在自适应抵消模块中不可避免地存在语音抵消,且对非相干噪声的消噪能力很弱。针对GSC消噪能力弱,存在残留背景噪声的问题,提出了一种基于改进GSC与谱减法的麦克风语音增强方法。该方法改进了广义旁瓣抵消器结构中的自适应算法,将固定步长值变为可调步长值,避免了固定步长选择过大或过小带来的语音抵消或语音消噪不足的问题。后续与谱减法相结合,去除残留噪声获得更加纯净的语音。实验仿真表明,该方法可有效抑制残留背景噪声的影响,提高语音的性噪比及可懂度。
麦克风阵列;广义旁瓣抵消器;谱减法;语音增强
在复杂的声学环境中,各种各样的干扰噪声会严重影响期望语音信号的获取,致使获得的语音信号不再是纯净的语音信号。而如果干扰噪声太大,通过麦克风采集的信号往往模糊不清,影响了语音的可懂度。采用单麦克风的语音增强系统也难以获得令人满意的增强效果,因此二十世纪八十年代麦克风阵列语音增强技术应运而生。和单孤立麦克风增强方法相比,麦克风阵列利用了目标信号,噪声和干扰的空间信息,增强了期望方向的信号,抑制了其他方向的信号,所以能提供更好的增强效果[1]。
目前麦克风阵列语音增强方法大体上可以分为三类:固定波束形成算法、自适应波束形成算法和带后置滤波器的固定波束形成算法,当今主流还是以广义旁瓣抵消器的自适应波束形成算法为基础。但是它存在着语音抵消与对非相干噪声抑制能力弱的问题[2-3],为此,许多学者提出了改进算法。文献[4]提出了一种鲁棒自适应约束波束形成方法,来尽量减弱GSC自适应波束形成中的语音抵消。文献[5]提出采样广义奇异值分解,来减弱因多径效应而引起的语音泄露。文献[6]提出一种基于维纳滤波的多通道后置滤波器,来消除非相干噪声和弱相干噪声。文献[7]提出了一种基于子带GSC的语音增强算法,该方法应用了DFT调制子带滤波器组将语音信号分解到子带进行自适应滤波,从而获得更好的语音增强效果。文献[8]提出了相干滤波与GSC相结合的小阵列语音增强算法,通过改进的最小搜索算法估计出GSC处理后残留噪声的功率谱密度,然后利用相干滤波进行再次增强。文献[9]提出一种在GSC中引入可调波束形成器估计声源方位以抑制背景噪声的影响。
本文提出基于改进的GSC与谱减法相结合的麦克风阵列语音增强方法。其基本思想是先对采集的麦克风阵列语音信号进行GSC处理,以消除相干噪声对语音信号的影响,然后再把改进的GSC输出端的信号作为谱减法的输入,进一步消除残留的背景噪声,提高语音的质量。文中对GSC和谱减法的原理和结构进行了详细的阐述,并指出它们存在的不足,提出了相应的改进措施。
广义旁瓣抵消器是一种经典的自适应波束形成算法,也是目前广泛使用的一种阵列语音增强方法。由Criffths和Jim在1982年提出[10],其主要由固定波束形成器、阻塞矩阵和自适应噪声抵消器三部分构成。固定波束形成器一般由延迟求和波束形成器实现,主要目的是增强主瓣方向目标信号,而抑制其他方向的噪声信号;阻塞矩阵的目的是产生不含目标语音的信号,为在自适应干扰抵消器中抑制固定波束形成器中的噪声提供参考信号;自适应干扰抵消器一般使用归一化最小均方实现,用以实现利用参考噪声信号估计出固定波束输出信号中的噪声信号,然后从固定波束形成输出信号中减去该估计信号,以实现目标信号的增强[11]。GSC的结构框图如图1所示。
图1 GSC的结构框图
上图中,各麦克风接收信号经过时延估计和时延τi补偿后,使各通道输出信号xi(n)在目标方向上的语音信号是完全同相的。采用系数固定的固定波束形成器对输入信号xi(n)进行滤波,然后将滤波后的各通道信号相加求和,初步实现目标语音的增强。
yc(n)=ATX
(1)
式中A=[a1,a2,…,am]T,X=[x1(n),x2(n),…,xm(n)]T。其中A为固定波束形成器的加权系数,X为各麦克风接收到的到信号经过时延补偿τi后,得到的在目标方向上完全同相的信号。信号通过阻塞矩阵后,目标信号被去除,输出信号只包含干扰和噪声。要实现阻塞矩阵的输出信号中只含有干扰和噪声,要使阻塞矩阵中每一行上的元素之和为0,就可以保证输出中不含目标方向的语音信号。经过阻塞矩阵处理后的信号如式(2)所示:
U=BX
(2)
(3)
由于bj彼此是线性独立的,所以U最多有m-1个线性独立组成元素,也就是说,阻塞矩阵B的行数一定是m-1或更少[12]。一个经常使用的符合式(3)条件的阻塞矩阵如式(4)所示。
(4)
设自适应FIR滤波器的系数为wk(n),k=1,2,…,m-1,则:
(5)
式中W=(w1(n),w2(n),…,wm-1(n))T,系统的最后输出如式(6)所示
y(n)=yc(n)-ys(n)
(6)
由于目标语音信号及干扰噪声都包含在yc(n)中,ys(n)只包含估计出的干扰噪声,这样两者相减就可以得到增强的语音信号。同时,还需要寻找滤波系数向量W,使系统的噪声输出功率最小。按照LMS自适应滤波算法,其滤波系数向量W可用下列递归公式来计算,如式(7)所示
W(n+1)=W(n)-u▽(n)
(7)
式中u是一个控制算法收敛速度和稳定性的正实数,称之为自适应收敛系数或步长,▽(n)为算法的梯度矢量。而▽(n)又可以如式(8)所示:
(8)
式中E[y(n)2]表示取y(n)2的数学期望。要想精确计算出梯度▽(n)是非常难的一件事,一种粗略但是十分有效的计算▽(n)的方法是直接用y2(n)作为E[y2(n)]的估计值,即y2(n)≈E[y2(n)],则
▽(n)=▽E[y(n)2]≈▽[y(n)2]=2y(n)▽[y(n)]
(9)
其中▽[y(n)]=▽[yc(n)-WT(n)U(n)]=-U(n)
(10)
则式(10)代入式(9)中,得:
▽(n)=-2y(n)U(n)
(11)
将式(11)代入式(7)中,得:
W(n+1)=W(n)+2uy(n)U(n)
(12)
式(12)就是GSC中滤波系数的自适应调整公式。式(12)中步长因子u的大小将影响整个GSC对噪声的滤除能力。传统的GSC算法步长参数u是固定的,u越大,噪声滤除的越多,但是相应的语音泄露也越严重,滤波后的信噪比会减少,u越小,会导致残留噪声较多,所以实际中一般会选一个折中的u值。
式(9)表明,LMS算法实际上在每次迭代中,使用了粗糙的梯度估计值▽[y(n)2]来代替▽(n),从而导致滤波系数向量W的调整路径是不可能精确地沿着理想的最速下降路径,因而滤波系数向量W调整过程是有噪声的。但是,随着时间的推移,滤波系数向量W不断地调整,估计值也在不断地改善,最终达到收敛值,收敛条件如式(13)所示。
(13)
式中λmax是E[U(n)UT(n)]的最大特征值。实际上滤波系数向量W不会收敛到理论上的最佳值,而是在最佳值的上下振荡。LMS算法对u的要求不是特别高,也就是说,只要u选择合理,算法一般都能收敛。这说明LMS算法具有很强的实用性,是一种相对简单、性能优越的自适应算法。
(14)
(15)
比较归一化LMS算法的调整公式与标准LMS算法的调整公式,可以发现,标准LMS算法中的步长参数u是固定的,而在式(15)中步长参数是可调的,再加上归一化LMS算法的收敛条件与输入信号的特征值无关,使得归一化LMS算法具有更快的收敛速度,计算量也与标准LMS算法相当,因此,归一化的LMS算法在实际中得到了广泛的应用。
基于GSC算法的经典自适应波束形成器,对相干噪声虽具有较强的抑制能力,但是对非相干噪声抑制能力还不如固定波束形成算法。要解决这个问题,可以对GSC模块输出的信号进行再次滤波,以消除残留的非相干噪声。其整体流程框图如图2所示。
图2 整体流程框图
基本谱减法的主要思想是从带噪语音的频谱估值中减去噪声频谱估值,从而得到纯净语音的频谱估值[13]。这种方法没有使用参考噪声源,但它的前提是噪声信号和语音信号是互不相关的以及背景噪声相对语音信号来说是近似稳态的。利用人的听觉特性对语音信号谱的幅度敏感,而对语音信号谱的相位不敏感,直接把噪声幅度谱从带噪语音幅度谱中减去,得到增强语音幅度谱,并将带噪语音的相位近似作为增强语音的相位,从而实现语音增强。
设语音信号的时间序列可以表示为x(n),通过加窗和分帧处理后,可得到第i帧语音信号xi(m),每一帧语音信号的帧长为N。对任何一帧语音信号xi(m)做DFT变换后,可以表示为:
(16)
然后对Xi(k)的每个分量求相应的幅值和相位,幅值用|Xi(k)|表示,相位可以表示为:
(17)
在谱减法中要把这两组数保存下来。
已知前导无话段(噪声段)时长为IS,对应的帧数为NIS,则可以求出噪声段的平均能量值为:
(18)
(19)
式中a、b的和是常数,a称为过减因子,b称为增益补偿因子。
(20)
噪声段的平均谱值为:
(21)
这种改进方式相比前面的谱减法,差别是引入λ这个参数。若λ=1则是幅度谱减法,若λ=2则是功率谱减法。这种谱减法较为灵活,它有三个调节系数a、b和λ。通过这三个系数,可以在噪声抑制,残留噪声衰减和语音失真之间达到最好的折中。
(1)过减因子a(a>1)。在进行谱减法操作时,a控制减去的噪声谱量。a越大,则可以使残留噪声的衰减越大,但是同时也会造成语音失真较大;a越小,则噪声衰减的程度也小,但是语音失真较少。
(2)增益补偿因子b(0
(3)指数参数λ。通过调节λ可以获得各种谱相减形式。
谱减参数a,b和λ的选择是谱减法的核心问题[15]。实际上,在低信噪比条件下减小语音失真和降低剩余噪声不可兼得,只能在两者之间达到最好的折中,提高可懂度。谱减法的原理框图如图3所示。
图3 谱减法原理框图
为了验证本文提出方法的语音增强性能和效
果,利用了MATLAB对上述方法进行了仿真实验。在仿真实验中,麦克风阵列由4个麦克风组成的间距d=0.5的均匀线性阵,目标声源位于第一号阵元的正前方,距离第一号阵元的距离为2.5 m,噪声源位于第四号阵元的正前方,距离第四号阵元的距离为2.5 m,噪声来自于noisex-92数据库。
实验中语音信号和噪声信号均按照8 kHz,16 bit量化。实验算法中的阐述,相关参数设置如下:GSC中自适应滤波器的阶数为32,正的实数标度因子φ取1,β取40;在谱减法中,加Hamming窗,窗长为200,窗重叠为60%,帧长取窗函数长,过减因子a取4,增益补偿因子b取0.001,指数参数λ取2。
第一个实验是从语音的时域和频域角度来验证算法的消噪能力。图4在背景噪声为白噪声,信噪比(SNR)为0 dB环境下,算法处理前后的时域图和时频图。从图中可以看出,经本文算法处理后的残余噪声有所减弱,语音信号波形更接近纯净语音信号波形,同时处理后的时频图更接近纯净语音信号的时频图。通过主观听辨测试也可以证明本文算法是有效的,不仅提高了人耳的舒适度,也增加了语音的可懂度。
图4 背景噪声为白噪声、SNR=0 dB环境下处理前后时频图
第二个实验验证在不同信噪比环境下,算法的消噪能力,这里选用的背景噪声为白噪声。处理结果如图5所示。从图中可以看出,带噪语音信噪比越低,本文算法处理后的效果越好,随着带噪语音信噪比的不断提高,传统GSC算法处理后的效果越来越接近本文算法,但是本文算法始终优于传统的GSC算法。
图5 背景噪声为白噪声、SNR=0 dB环境下处理前后时频图
第三个实验中,分别在f16(F16座舱噪声)、babble(餐厅内嘈杂噪声)、factory(工厂车间噪声)、volvo(车内噪声)、pink(粉红噪声)以及m109(坦克内部噪声)5种噪声环境下,初始信噪比为0dB,分别使用GSC和本文算法进行消噪。其结果如表1所示。从表1可以看出,在带噪语音信噪比为0 dB时,无论在什么噪声场情况下,本文提出的算法的消噪能力均优于传统的GSC算法。其中本文算法对volvo的消噪能力更为明显,比GSC算法提高信噪比约8.5 dB,其次是pink噪声,比GSC算法提高信噪比约5.3 dB,对babble的消噪能力较弱,比GSC算法提高信噪比约0.9 dB。
表1 不同类型背景噪声环境下语音增强结果比较
本文以麦克风阵列为例,提出一种基于改进的广义旁瓣抵消器和谱减法的麦克风阵列语音增强方法。通过广义旁瓣抵消器对目标语音进行初步增强,滤除相干噪声和部分弱相干及背景噪声,然后通过谱减法滤波,滤除残留的噪声,提高语音的信噪比及可懂度。本文在不同信噪比、不同的噪声环境下,都进行了仿真实验,都能获得比较满意的增强效果,说明了该方法的可行性。
[1]栗晓丽,傅丰林.基于子带TF-GSC麦克风阵列语音增强[J].电子科技,2008,21(2):33-36.
[2]Joerg Bitzery,Klaus Uwe Simmerz,Karl Dirk Kammeyery.Theoretical noise reduction limits of the generalized sidelobe canceller(GSC)for speech enhancement[C].IEEE International Conference on Acoustics,Speech and Signal Processing,Phoenix,AZ,USA,March,1999:2965-2968.
[3]Huang Y,Chen J,and Benesty J.Immersive audio schemes[J].IEEE Signal Processing Magazine,2011,28(1):20-32.
[4]Hoshuyamao,Sugiyama A,Hirano A.A robust adaptive beamformer for microphone arrays with a blocking matrix using constrained adaptive filters[C].IEEE International Conference on Acoustics,Speech and Signal Processing,Atlanta,USA,1996:925-928.
[5]宋辉,刘加.基于广义奇异值分解的通用旁瓣消除算法[J].数据采集与处理,2011,26(3):241-246.
[6]Zelinski R.A microphone array with adaptive post-filtering for noise reduction in reverberant rooms[J].Proc of ICASSP88,1988(5):2578-2581.
[7]邓俊杰,孙超.一种基于子带GSC的语音增强算法[J].电子设计工程,2013,21(5):173-179.
[8]张正文,汤敏慎,尹波.相干滤波与广义旁瓣相消器结合的小阵列语音增强算法[J].河南科技大学学报(自然科学版),2015,36(3):38-42.
[9]李跃兰,周跃海,童峰,等.采样可调波束形成器的GSC麦克风阵列语音增强方法[J].厦门大学学报(自然科学版),2013,52(2):186-189.
[10]Griffiths L,Jim C W.An alternative approach to linearly constrained adaptive beamforming[J].IEEE Transactions on Antennas and Propagation,1982,30(1):27-34.
[11]杨立春,钱沄涛.基于相干性滤波器的广义旁瓣抵消器麦克风小阵列语音增强方法[J].电子与信息学报,2012,34(12):3027-3033.
[12]胡曙辉.麦克风阵列语音增强算法研究[D].西安:西安电子科技大学,2009:18-20.
[13]徐岩,王春丽.语音增强技术及其应用[M].北京:科学出版社,2014:59-66.
[14]宋知用.MATLAB在语音信号分析与合成中的应用[M].北京:北京航空航天大学出版社,2013:184-195.
[15]沈圆圆,顾济华,陶智,等.基于人类听觉系统的多频带语音增强[J].计算机工程与应用,2011,47(21):145-148.
(责任编辑:刘划 英文审校:林嘉)
Speech enhancement method based on the GSC and spectral subtraction for microphone array
YU Chun-he,SU Long
(College of Electronic Information Engineering,Shenyang Aerospace University,Shenyang 110136,China)
Generalized Sidelobe Canceller(GSC)algorithm is a widely used microphone array speech enhancement method,but there is inevitably speech offset in adaptive noise cancellation module,and GSC′s noise cancellation capability againstnon-coherent noise is weak.With particular reference to the weakness and the presence of residual background noise,this paper proposed a combination of GSC and spectral subtraction speech enhancement method.In this method,the adaptive algorithm in the structure of the generalized sidelobe cancellation was improved,and the fixed step size was changed into a variable step sizeto avoidtoo large or too smallfixed step size,which brings problems of speech offset or inadequate speech noise cancellation.Combined with spectral subtraction,the method removes the residual noise to obtain a purer voice.The simulation results show that this method can effectively suppress the influence of the residual background noise and improve speech-noise ratio and intelligibility of speech.
microphone array;GSC;spectral subtraction;speech enhancement
2015-07-08
于春和(1976-),男,辽宁沈阳人,副教授,主要研究方向:信号获取与处理,E-mail:2643909528@qq.com。
2095-1248(2015)05-0080-06
TP912.3
A
10.3969/j.issn.2095-1248.2015.05.012