一种分布式麦克风阵列中麦克风位置估计系统转让专利
申请号 : CN201310370093.2
文献号 : CN103439689B
文献日 : 2015-12-23
发明人 : 陈喆 , 殷福亮 , 王舒文
申请人 : 大连理工大学
摘要 :
权利要求 :
1.一种分布式麦克风阵列中麦克风位置估计系统,其特征在于:包括声源信号产生模块(1)、扬声器、参考麦克风(2)、多个待定位麦克风(4)以及多个麦克风位置估计模块(3);
所述的声源信号产生模块(1)输出端输出信号经扬声器转换为声音在分布式麦克风阵列的工作场地中播放;该声音被参考麦克风(2)和待定位麦克风(4)所接收;参考麦克风(2)和待定位麦克风(4)接收的信号同时传递至与待定位麦克风(4)对应的麦克风位置估计模块(3);所述的麦克风位置估计模块(3)的输出端输出待定位麦克风(4)的坐标;所述的待定位麦克风(4)与麦克风位置估计模块(3)一一对应;
所述的声源信号产生模块(1)的工作方法包括以下步骤:
所述的声源信号产生模块(1)包括白噪声发生器和带通滤波器,白噪声发生器产生白噪声信号,所述的白噪声信号通过三个通带不同的带通滤波器,产生三个不同频带的带通信号,作为三个声源的发声信号,分别输入置于分布式麦克风阵列工作场地中3个扬声器;
设三个带通滤波器的单位脉冲响应分别为hj(n),j=1、2、3,分别对白噪声发生器产生的白噪声信号x(n)进行滤波,得到三个不同频带的带通信号sj(n),j=1、2、3,sj(n)=x(n)*hj(n),j=1、2、3
其中,符号“*”表示数字信号处理领域中的卷积运算;n表示白噪声信号x、单位脉冲响应h1、h2、h3的各采样值的序号;
所述的麦克风位置估计模块(3)数量与待定位麦克风(4)的数量相同,每个麦克风位置估计模块(3)的工作方式方法完全相同;第i个麦克风位置估计模块(3)对应于第i个待定位麦克风(4),麦克风位置估计模块包括信号有效性检测子模块、参考麦克风(2)声源信号分离子模块、参考麦克风(2)子频带背景噪声估计子模块、待定位麦克风(4)声源信号分离子模块、待定位麦克风(4)子频带背景噪声估计子模块、距离粗估计子模块、距离精估计子模块和三角形质心计算子模块;
所述的信号有效性检测子模块检测输入信号是否有效,并计算参考麦克风(2)接收到的信号sr(n)每帧的短时能量Er其中,M表示帧长,start表示当前帧在原始接收信号序列sr(n)中的起始位置;比较Er与信号/噪声判定阈值Ethr,若Er
当判定当前帧为噪声帧时,估计背景噪声能量Emin,更新有效性判定阈值Ethr;该阈值更新方法为if Emin<Er
Emin=Er
Ethr=aEmin
end if
所述的参考麦克风(2)声源信号分离子模块利用与声源信号产生模块(1)中系数相同的三个带通滤波器将三个声源信号分离;这三个带通滤波器的单位脉冲响应也为hj(n),j=1、2、3,对参考麦克风(2)接收信号sr(n)分别进行滤波,得到三个不同频带的信号srj(n),j=1、2、3,即srj(n)=sr(n)*hj(n),j=1、2、3
当判定当前帧为噪声帧时,所述的参考麦克风(2)子频带背景噪声估计子模块分别估计三个子频带的能量Erj,j=1、2、3,将Erj,j=1、2、3,与前一次参考麦克风(2)子频带背景噪声能量估计结果εrj,old进行平滑,平滑结果作为当前的背景噪声能量估计值εrj,curr,εrj,curr=(1-b)·εrj,old+b·Erj,j=1、2、3其中,b为平滑因子,表示当前能量Erj,j=1、2、3,在平滑时所占比重,b的取值范围是
0
所述的待定位麦克风(4)声源信号分离子模块利用与声源信号产生模块(1)中系数相同的三个带通滤波器将三个声源信号分离;这三个带通滤波器的单位 脉冲响应也为hj(n),j=1、2、3,对待定位麦克风(4)接收信号si(n)分别进行滤波,得到三个不同频带的信号,即sij(n)=si(n)*hj(n),j=1、2、3
当判定当前帧为噪声帧时,所述的待定位麦克风(4)子频带背景噪声估计子模块分别估计三个子频带的能量Eij,j=1、2、3,再将Eij,j=1、2、3,与前一次待定位麦克风(4)子频带背景噪声能量估计结果εij,old进行平滑,平滑结果作为当前的背景噪声能量估计值εij,curr,εij,curr=(1-b)·εij,old+b·Eij,j=1、2、3其中,b为平滑因子,表示当前能量Eij,j=1、2、3,在平滑时所占比重,b的取值范围是
0
所述的距离粗估计子模块工作过程如下:
定义角标r表示参考麦克风(2),角标i表示第i个待定位麦克风(4),角标j表示第j个声源,即第j个扬声器,j=1、2、3,dij表示第j个声源与第i个待定位麦克风(4)之间的欧式距离,(xr,yr)和(xj,yj)分别表示参考麦克风(2)和第j个声源的坐标,drj表示第j个声源与参考麦克风(2)之间的欧式距离 εrj(t)为t时刻参考麦克风(2)处子频带背景噪声能量估计,εij(t)为t时刻第i个待定位麦克风(4)处的子频带背景噪声能量估计;在麦克风增益已校准,即相同声强下的麦克风输出信号能量相同的情况下,当判定当前帧为信号帧时,则第i个当前待定位麦克风(4)到第j个声源的距离粗估计 为为提高后续距离精估计的准确度,将当前距离粗估计结果 j=1、2、3,与前一次的平滑结果dij,old进行平滑,得到当前距离粗估计平滑结果dij,curr其中,β为平滑因子,表示当前距离粗估计结果 在平滑过程中所占比重,β的取值范围是0<β<1;
所述的距离精估计子模块工作过程如下:
定义αrj和αij分别为声音从第j个声源传播到参考麦克风(2)与第i个待定位麦克风(4)的衰减因子,τrj和τij分别为声音从声源j传播到参考麦克风(2)与第i个待定位麦克风(4)的延迟时间,vr(n)和vi(n)分别为参考麦克风(2)与第i个待定位麦克风(4)处的背景噪声,当判定当前帧为信号帧时,参考麦克风(2)与第i个待定位麦克风(4)接收到的来自于同一个声源sj的信号分别为srj(n)=αrjsj(n-τrj)+vr(n)
,j=1、2、3
sij(n)=αijsj(n-τij)+vi(n)
通常,背景噪声是均值为零的平稳噪声,与信号互不相关,不同麦克风处背景噪声也互不相关,则srj(n)和sij(n)的互相关函数Rrij(τ)表示为Rrij(τ)=E[srj(n)sij(n-τ)]=αrjαijE[srj(n-τrj)sij(n-τij-τ)],j=1、2、3其中,τ为表示延迟时间的变量,E[.]表示求期望的运算;
距离精估计采用基于时延的测距方法,用较简单的互相关法估计信号的延迟时间;对每一个可能的τ计算Rrij(τ),搜索到最大值位置,得到信号到达第i个待定位麦克风(4)相对于参考麦克风(2)的延迟时间τrij,即由于距离粗估计模块已经估计出待定位麦克风(4)到各个声源之间的粗略距离dij,curr,此时只需在粗距离附近一定范围内搜索麦克风的精细距离;定义声速为c,粗略距离dij,curr对应的粗时延为tj,curr=dij,curr/c,在dij,curr附近Δdij,curr范围内搜索精细距离,将距离信息转换为对应的时间信息Δtj,curr=Δdij,curr/c,则精细时延的搜索范围为[tj,curr-Δtj,curr,tj,curr+Δtj,curr];
将信号到达时间差乘以声速c,得到信号到达两个麦克风的距离差
drij=(τij-τrj)·c=-τrij·c,j=1、2、3
根据参考麦克风(2)到第j个声源的距离drj,以及第j个声源到参考麦克风(2)与第i个待定位麦克风(4)的距离差drij,获得待定位麦克风(4)到第j个声源的精细距离dijdij=drj+drij=drj-τrij·c所述的三角形质心计算子模块的工作过程如下:
定义(xs1,ys1)、(xs2,ys2)和(xs3,ys3)分别为三个声源坐标,di1、di2、di3分别为第i个待定位麦克风(4)到三个声源的精细距离;当判定当前帧为信号帧时,在得到上述第i个待定位麦克风(4)到第j个声源的精细距离dij之后,j=1、2、3,根据几何关系,通过求解以声源位置为圆心、距离为半径的三个圆的交点,来确定第i个待定位麦克风所在位置,即只有在理想情况下,三个圆才能相交于一点m,坐标为(xm,ym);而在一般情况下,由于计算误差的存在,此方程组无解,无解分为两种情况:第一种是三个圆不能交于一点,而是相交出一个区域;第二种是其中有至少两个圆没有交点;
对于第一种无解情况,选择相距最近的三个交点p1(xp1,yp1)、p2(xp2,yp2)和p3(xp3,yp3)组成三角形,求取该三角形质心m,坐标为(xm,ym),作为第i个待定位麦克风所在位置,即对于第二种无解情况,考虑到在估计麦克风位置时,各待定位麦克风(4)和校正声源位置均是固定的,则使用前一帧计算得的该两个圆交点来充当本帧交点。
2.根据权利要求1所述的一种分布式麦克风阵列中麦克风位置估计系统,其特征在于:所述的a的最佳值为4;b的最佳值为0.05;β的最佳值为0.05。