萬新旺 吳鎮(zhèn)揚(yáng)
(東南大學(xué)信息科學(xué)與工程學(xué)院,南京 210096)
在機(jī)器人導(dǎo)航、助聽器、人機(jī)接口、語音增強(qiáng)和盲源分離等領(lǐng)域,聲源定位具有重要的作用.大部分定位算法采用麥克風(fēng)陣,為了處理多路麥克風(fēng)信號,該類算法需要較大的計(jì)算量.另一類是受生物啟發(fā)的定位算法,該類算法使用2個(gè)麥克風(fēng)模擬雙耳的定位功能,具有計(jì)算量小的優(yōu)點(diǎn).
受生物啟發(fā)的定位算法使用單耳譜線索和2種雙耳線索:耳間時(shí)間差(interaural time difference,ITD)和耳間電平差(interaural level difference,ILD).ITD可以從雙耳信號的互相關(guān)函數(shù)中提取,Calmes等[1]利用ITD信息來確定聲源的方位;Kneip等[2]提出了一種利用ITD線索和耳間軸運(yùn)動信息的定位算法;Raspaud等[3]利用 ITD和ILD定位;Li和Levinson[4]提出了一種基于 Bayes準(zhǔn)則的定位算法,該算法使用了ITD,ILD和單耳譜信息.近年來,MacDonald[5]提出了一種互通道(cross-channel)定位算法,該算法等價(jià)于同時(shí)利用雙耳線索以及單耳譜線索.互通道定位算法直接利用與頭相關(guān)脈沖響應(yīng)(head-related impulse response,HRIR)確定聲源的方位.
本文提出一種利用雙耳互相關(guān)函數(shù)(binaural cross-correlation functions,BCCF)的定位算法.通過將信號的BCCF與所有方位的雙耳HRIR的BCCF相比較來確定聲源的方位.實(shí)驗(yàn)結(jié)果表明,與互通道定位算法相比較,本文算法具有更好的定位性能.
在人工頭的左耳和右耳中各放置1個(gè)麥克風(fēng),左耳中麥克風(fēng)接收到的信號xl(n)與右耳中麥克風(fēng)接收到的信號xr(n)可表示為
式中,“* ”表示卷積;s(n)為聲源信號;θs和 φs分別為聲源的方位角和仰角;hl(θs,φs,n)和 hr(θs,φs,n)分別為左耳和右耳的HRIR,HRIR是在聲源信號已知的情況下通過測量得到的.
對式(1)作傅里葉變換,可得到頻域信號模型為
式中,Xl(ω),Xr(ω)和 S(ω)分別為 xl(n),xr(n)和 s(n)的傅里葉變換;Hl(θs,φs,ω)和 Hr(θs,φs,ω)為與頭相關(guān)傳遞函數(shù)(head-related transfer function,HRTF),分別是 hl(θs,φs,n)和 hr(θs,φs,n)的傅里葉變換.
首先計(jì)算雙耳信號xl(n)與xr(n)之間的廣義互相關(guān)函數(shù)(GCC)[6].由雙耳信號互功率譜的傅里葉反變換,可計(jì)算出GCC,即
式中,τ為時(shí)延;Ψl,r(ω)為頻域加權(quán)函數(shù).不同的權(quán)函數(shù)Ψl,r(ω)就有不同的GCC方法.當(dāng)權(quán)函數(shù)為
即用相位變換(phase transform,PHAT)加權(quán)時(shí),GCC方法稱作 GCC-PHAT方法.將 GCC-PHAT方法得到的廣義互相關(guān)函數(shù)作為雙耳互相關(guān)函數(shù),即把式(4)代入式(3),可得
利用頻域信號模型,把式(2)代入式(5)可得
式中,RHlHr(θs,φs,τ)為由左耳和右耳的 HRTF 得到的雙耳互相關(guān)函數(shù).
由式(6)可知,雙耳信號xl(n)與xr(n)之間的BCCF與聲源所在方位的雙耳HRIR的BCCF是相等的.由此,本文提出一種聲源定位方法,該方法包括2個(gè)階段:離線階段和在線階段.
1)離線階段
由測量得到的HRIR數(shù)據(jù)庫,計(jì)算所有方位的雙耳HRIR的BCCF,即
然后,存儲所有方位的雙耳HRIR的BCCF用于在線階段的聲源定位.
2)在線階段
①雙耳接收到信號后,由式(5)計(jì)算雙耳信號的BCCF;
②計(jì)算雙耳信號的BCCF與所有方位的雙耳HRIR的BCCF之間的Pearson相關(guān)系數(shù)r(θ,φ);
③ 將最大的Pearson相關(guān)系數(shù)r(θ,φ)對應(yīng)的方位作為估計(jì)的聲源方位(),即
為了驗(yàn)證算法的有效性,比較了基于雙耳互相關(guān)函數(shù)定位算法與互通道定位算法的定位性能.
MacDonald提出了互通道定位算法,該算法也包含離線階段和在線階段.
1)離線階段
測量得到HRIR數(shù)據(jù)庫,存儲所有方位的雙耳HRIR用于在線階段的聲源定位.
2)在線階段
① 雙耳接收到信號后,對于所有方位(θ,φ),將左耳信號xl(n)與右耳的HRIR進(jìn)行卷積,將右耳信號xl(n)與左耳的HRIR進(jìn)行卷積,即
②計(jì)算yl(n)與yr(n)的Pearson相關(guān)系數(shù)r′(θ,φ);
③ 將最大的 Pearson相關(guān)系數(shù) r′(θ,φ)對應(yīng)的方位作為估計(jì)的聲源方位(),即
雙耳信號由語音信號與雙耳HRIR卷積產(chǎn)生.HRIR用配置了大耳廓的人工頭錄取,采樣率為44.1 kHz,該HRIR數(shù)據(jù)取自CIPIC的HRIR數(shù)據(jù)庫[7].在以下的實(shí)驗(yàn)中,HRIR被降采樣為16 kHz.
將2個(gè)采樣率為16 kHz的語音信號作為聲源,如圖1所示,這2個(gè)聲源信號只有很少的靜音段.2個(gè)聲源同時(shí)位于人工頭的前半個(gè)水平面,人工頭中的麥克風(fēng)接收到的2個(gè)聲源信號的能量相等,若以一個(gè)聲源為信號,則另一個(gè)聲源為有方向性的噪聲,因而信號與有方向性噪聲之間的信噪比為0 dB;同時(shí)加上無方向性的白噪聲,使得信號與無方向性噪聲之間的信噪比為15 dB.逐幀處理雙耳接收到的信號,幀長為512個(gè)采樣點(diǎn)(32 ms),每幀加漢寧窗后用于估計(jì)BCCF,在以下的實(shí)驗(yàn)中,BCCF中的時(shí)延τ的取值范圍為-2.5 ms≤τ≤2.5 ms.
圖1 2個(gè)語音信號的波形圖
圖2給出了互通道與BCCF 2種算法的部分定位結(jié)果(2個(gè)聲源分別位于-30°和30°).人工頭的正前方對應(yīng)的方位角為0°,左耳對應(yīng)的方位角為-90°,右耳對應(yīng)的方位角為90°.2個(gè)聲源的方位角分別為-30°和30°,如圖中虛線所示.2種算法的絕大部分主峰都近似指示了聲源1或聲源2的方位.對于互通道算法,大部分次峰都偏離了2個(gè)聲源的方位;然而對于BCCF算法,大部分次峰仍然近似指示了聲源1或聲源2的方位.
為了評價(jià)算法的性能,采用了方位估計(jì)成功率和均方根誤差2種性能指標(biāo)[8].對于每幀信號,若主(次)峰對應(yīng)的方位角與聲源的方位角之差小于20°,則該幀的主(次)峰方位估計(jì)是成功的.成功的方位估計(jì)次數(shù)與總的方位估計(jì)次數(shù)之比就是方位估計(jì)成功率.由于2個(gè)聲源信號只有很少的靜音段,因而所有幀的方位估計(jì)結(jié)果都用于計(jì)算均方根誤差.
圖2 互通道算法與BCCF算法的30幀定位結(jié)果
2個(gè)聲源分別位于12種不同的方位,(θs1,θs2)∈ {( -20°,20°),( -25°,25°),( -30°,30°),( - 35°,35°),( - 40°,40°),( - 45°,45°),( -50°,50°),( - 55°,55°),( - 60°,60°),( -65°,65°),( - 70°,70°),( - 75°,75°)}.圖3給出了互通道算法與BCCF算法的主峰的成功率和均方根誤差,橫坐標(biāo)給出了聲源2的方位角,2種算法主峰的定位成功率都很高.圖4給出了互通道算法與BCCF算法的次峰的成功率和均方根誤差.可見在絕大部分方位,BCCF算法的次峰成功率比互通道算法高許多;BCCF算法的次峰均方根誤差比互通道算法低.
為了更直觀地評價(jià)互通道算法與BCCF算法的定位性能,將聲源位于12種不同方位情況下的定位結(jié)果進(jìn)行平均,定位結(jié)果的平均值如表1所示.可見,2種算法的主峰成功率都很高,BCCF算法的主峰成功率高出互通道算法約1.64%,BCCF算法的次峰成功率高出互通道算法約26.48%.
表1 主峰和次峰的成功率和均方根誤差的平均值
圖3 互通道算法與BCCF算法主峰的成功率和均方根誤差
圖4 互通道算法與BCCF算法次峰的成功率和均方根誤差
本文提出了一種利用雙耳互相關(guān)函數(shù)的定位算法.首先利用HRIR數(shù)據(jù)庫求出所有方位的BCCF,然后存儲所有方位的雙耳HRIR的BCCF用于在線階段的聲源定位.在定位階段,先求出信號的BCCF,然后將其與所有方位的雙耳HRIR的BCCF相比較來確定聲源的方位.實(shí)驗(yàn)結(jié)果表明,在有2個(gè)聲源同時(shí)存在的情況下,與互通道定位算法相比較,本文算法的主峰定位成功率提高了約1.64%,次峰定位成功率提高了約26.48%.
References)
[1]Calmes L,Lakemeyer G,Wagner H.Azimuthal sound localization using coincidence of timing across frequency on a robotic platform[J].Journal of the Acoustical Society of America,2007,121(4):2034-2048.
[2] Kneip L,Baumann C.Binaural model for artificial spatial sound localization based on interaural time delays and movements of the interaural axis[J].Journal of the Acoustical Society of America,2008,124(5):3108-3119.
[3] Raspaud M,Viste H,Evangelista G,et al.Binaural source localization by joint estimation of ILD and ITD[J].IEEE Transactions on Audio Speech and Language Processing,2010,18(1):68-77.
[4] Li D F,Levinson S E.A Bayes-rule based hierarchical system for binaural sound source localization[C]//IEEE International Conference on Acoustics,Speech,and Signal Processing.Hong Kong,China,2003:521-524.
[5] MacDonald J A.A localization algorithm based on head-related transfer functions[J].Journal of the Acoustical Society of America,2008,123(6):4290-4296.
[6]Knapp C,Carter G.The generalized correlation method for estimation of time delay[J].IEEE Transactions on Acoustics,Speech and Signal Processing,1976,24(4):320-327.
[7] Algazi V R,Duda R O,Thompson D M,et al.The CIPIC HRTF database[C]//IEEE Workshop on the Applications of Signal Processing to Audio and Acoustics.New York,2001:99-102.
[8]Brutti A,Omologo M,Svaizer P.Localization of multiple speakers based on a two step acoustic map analysis[C]//IEEE International Conference on Acoustics,Speech and Signal Processing.Las Vegas,NV,USA,2008:4349-4352.