硕士论文 基于麦克风阵列的多声源测向方法研究
权函数?(f)?1
Gx1x2(f)Gx2x2(f)那么它的广义互相关函数表达式为:
??Ry1y2(?)?????1j2?f??Gx1x2(f)edf????12ej2?f?df (3.18)
??Gx1x2(f)Gx2x2(f)其中的相干系数:
??12??(f)Gx1x2Gx1x1(f)Gx2x2(f)
当Gx1x1(f)?Gx2x2(f) 时,可以发现此时的SCOT加权法和Roth加权法是一样的,我们可以将SCOT加权函数看成是对Roth加权函数的改进,因为它还考虑到了两个通道各自的影响,但同样它也会带来峰扩展的现象。 (4)Eckart 加权法 权函数?(f)?Gs1s1(f)Gw1w1(f)Gw2w2(f)
那么它的广义互相关函数表达式为:
?R(E)y1y2(?)?????(f)G(f)Gx1x2s1s1Gw1w1(f)Gw2w2(f)??ej2?f?df (3.19)
当两路噪声相互独立时,Gw1w1(f)?Gw2w2(f)?Gww(f),并且信噪比为
SNR(f)?Gss(f)Gww(f),那么:
Gy1y2(f)?SNR2(f)Gx1x2(f)Gss(f) (3.20)
显然的,Eckart加权法其实质是对相关函数的信噪比进行加权,所以在小信噪比的情况下它是一种最优估计器。此外,该方法需要具备信号和噪声谱的先验信息,但由于麦克风接收到的是信号与噪声的叠加,无法单独提取信号和噪声,所以这对实际的应用来说有一定的难度。 (5)最大似然加权(ML) 权函数?(f)?
?12(f)22Gx1x2(f)[1??12(f)]
其中的?12(f)表示相干系数。 其互相关函数为:
15
3 双阵元麦克风阵列时延估计方法 硕士论文
?(M)(?)?Ry1y2?信噪比定义为:
????j2?f?edf (3.21) 2Gx1x2(f)[1??12(f)]?(f)?(f)2Gx1x2122?12(f) SNR?21??12(f)可见,最大似然加权函数本质上也属于信噪比加权。该处理器在信噪比小的情况下按照信噪比平方加权,在信噪比较大的情况下按照信噪比加权。
上述的几类广义互相关法都是以相关技术为基础,对接收信号进行加权预处理,根据各自加权形式和准则的不同,分别形成了上述的几种五种广义互相关时延估计方法。广义互相关法的假设前提是无混响且无相关噪声,因此这类方法只能用于单声源、无相关噪声的场合而不适用于多声源定测向和具有方向性干扰的情况。此外,广义互相关法的加权函数需要信号和噪声的先验知识,而在实际应用中只能在有限的观察时间内进行计算得到估计值。尽管此方法存在一定的误差,但是由于它运算量小、易于实现等特点,还是被广泛地应用到在一些对精度要求不高的实时系统中。 3.2.2 最小均方(LMS)自适应滤波
鉴于广义互相关时延估计法的一些局限性,其一是抗干扰能力较差,其二是完全依赖信号和噪声的先验知识,其三该法只适用于时延值为常数的情况,当声源位置发生变动从而引起时变的时延参数时,广义互相关法就无法处理了。为此引入最小均方自适应滤波法,它可以在迭代过程中通过不断调整自身的参数来跟踪动态或时变的输入参数,因此它几乎不需要先验知识。
LMS自适应滤波法的主要思想是:将两个麦克风采集到的两路声音信号分别当作输入信号和目标信号,在一路信号中加入延时然后不断调整自适应滤波器的系数,即该路信号的时延值使它不断逼近另一路信号,使两路信号间的均方误差最小,相关性达到最大,此时对应的时延值也就是两路信号之间的时延[29-30]。LMS自适应滤波法的原理示意图如下所示:
图3.4 最小均方自适应滤波示意图
16
硕士论文 基于麦克风阵列的多声源测向方法研究
由上图可以得到如下两个表达式:
?(n)?x1(n??)?y(n) (3.22)
y(n)?m??p?hpm(n)x2(n?m) (3.23)
该系统首先通过比较两路信号的大小,将得到的差值?(n)经过自适应算法的处理反馈到自适应滤波器,调整y(n)的时延大小使得在接下来的过程中两路信号间的均方误差不断减小。在下一个时刻,系统会继续比较两路信号大小然后将得到的新差值再反馈给自适应滤波器,不断地重复这样的过程,两路信号间的均方误差将会慢慢达到最小值,这就是我们所说的最小均方自适应滤波法。上式中的hm(n)是自适应滤波器的系数,当h(n)?Rx1x2(n)Rx2x2(n)时,两路信号的均方误差达到最小值,这时再通过检测自适应滤波器系数的峰值,就可以得到所需的两路信号间的时延值。
通过上述分析可以知道,LMS自适应滤波法原理简单,收敛性好,精度有所提高。但同时该方法也存在一些不足之处。首先由于自适应滤波器系数调整是一个学习的过程,所以它的计算量远大于广义互相关法。其次,该方法需要足够长的滤波器长度,长度越长精度越高,因此将会导致系统处理速度过慢。然后,虽然该方法不需要信号和噪声的先验知识,但是它却更依赖输入信号的统计特性,信号分布白化程度越高,则系统性能就越好。
3.2.3 互功率谱相位法
通过对上述两种方法的分析可以得知,算法的精度和运算量之间总是存在着矛盾,精度高的算法运算量大,运算量小的精度却不理想。本小节介绍的互功率谱相位法可以解决这一矛盾。
假设两麦克风接收到的两路信号分别为:
x1(n)??1s(n??1)?n1(n) (3.24)
x2(n)??2s(n??2)?n2(n) (3.25)
将两路信号做傅里叶变换可以得到:
X1(w)??1S(w)e?jw?1?N1(w) (3.26) X2(w)??2S(w)e?jw?2?N2(w) (3.27)
由于信号与噪声之间互不相干,两路噪声之间也互不相干,因此两路信号之间的互功率谱G12(w)可以表示成:
*G12(w)?X1(w)X2(w)??1?2Gsse?jw(?2??1) (3.28)
对加权后的互功率谱做傅里叶反变换,即可得到广义互相关函数:
R12(?)??a(w)G12(w)ejw?dw (3.29)
??? 17
3 双阵元麦克风阵列时延估计方法 硕士论文
式中的a(w)是加权函数。将其归一化为a(w)?1G12(w),则有:
R12(?)?????ejw?dw??1?2?(??(?2??1)) (3.30)
通过与广义互相关法的比较可以发现,互功率谱法的广义互相关函数中只有信号的相位信息而去除了幅度信息,相当于对信号做了一个白化滤波,这样对噪声起到了很好的抑制作用。
上面介绍的三种时延估计法都是基于相关函数实现的,LMS自适应滤波法其实也算是通过迭代实现的广义互相关,互功率谱法实际上是广义互相关法的一类加权,用于消除幅值的影响,三种方法的本质其实是一样的,在应用中可以根据实际需求选择合适的方法。
3.3 基于声源信号时频正交特性的时延估计方法(DUET)
通过前几章节对传统时延估计算法的介绍可以了解到在单一声源的情况下,我们可以通过求解麦克风阵元信号之间相关函数最大峰值的偏移时间来估计两路信号间时延值。然而语音信号是非白的,传统的互相关法及其变形都因为时延旁瓣过高而无法对多声源进行测向。因此,目前出现的一类基于时频稀疏特性的算法因其实现简单、可对多个声源进行测向而备受关注,其中的退化分离估计技术(DUET)应用最为广泛。
DUET技术最早主要被应用在盲源分离领域中[31]。在该领域的研究中,经常假设源信号是相互独立、正交和非稳定的,这种独立、正交、非稳定特性也正符合语音信号的特点。在盲源分离的研究中,很多方法对于瞬间分离是适用的,但是对于存在传播延时的情况就失效了,此外,当源信号的个数大于麦克风个数时尤其具有挑战性,我们把这种情况叫做退化。在退化的情况下进行盲源信号分离是有难度的,这是因为此时的混合矩阵是不可逆的,因此用通过估计混合矩阵来分离的传统方法是不可行的
[32-33]
。Van Hulle 提出的DUET算法利用对幅度衰减参数和时延估计参数的聚类的方
法可以仅利用两个麦克风就能分离较多数量的声源信号。该算法的主要思想即认为在一个给定的时刻只有一个声源信号存在,只要源信号的时频图没有太多的交叠,仅用两个同质麦克风就可以分离任意多个声源信号,这一点对于语音信号来说是非常适用的。DUET分离退化混频信号的过程主要是通过分离混合信号的时频图来实现的。即利用语音信号的时频稀疏特,DUET假设这些源信号在时频图上他们是相互分离的,换句话说,在时频图上的某个时刻,对混频信号平均能量有大贡献的时频点很有可能是仅仅受控于一个源信号 [34-35]。
3.3.1 语音信号的加窗分帧处理
由于语音信号只在一小段时间内是平稳的,所以我们需要对语音信号进行分段后
18