王 玫, 孫昊彬, 羅麗燕, 宋浠瑜
(1.桂林電子科技大學 認知無線電與信息處理教育部重點實驗室,廣西 桂林 541004;2.桂林理工大學 信息科學與工程學院,廣西 桂林 541006)
聲源定位技術由于廣泛應用與智能交通、安防監(jiān)控、電話會議、人機交互、導航等各種應用而備受關注。常用的聲源定位技術可以分為3類:基于最大輸出功率的波束成形的方法、基于聲音到達時間的方法以及基于高分辨譜估計的方法。針對在復雜的室內環(huán)境中混響較高的情況,第一類方法與后2類方法相比,具有更好的魯棒性[1]。在第一類波束成形的方法中,廣泛使用的是基于可控響應功率-相位變換(SRP-PHAT)法。由于SRP-PHAT是一種基于聲源空間網格點搜索算法,在計算過程中往往會出現(xiàn)大量極值點,導致計算量增大。因此,Silverman等[1]在使用SRP-PHAT算法的同時采用隨機區(qū)域收縮(SRC)來降低計算量,Grondin等[2-3]提出了一種依賴于SRP-PHAT投影矩陣的奇異值分解的定位方法,張鐵成[4]將壓縮感知與SRP-PHAT-SRC方法結合,Grondin等[5]利用最大滑動窗口濾波與分層搜索的方法都降低了SRP-PHAT的計算時間。但這類方法以犧牲精度為代價,換取定位算法的實時性。因此,提出從信號接收端入手,提高接收信號的質量,從而提升定位精度的思路。
麥克風作為一種常用的拾音設備,按照特定的空間拓撲結構組合形成的麥克風陣列,與單一麥克風相比,不僅可以獲得聲音信號的時域信息,還可以獲得空域信息,通過充分利用空時信息提升定位效果。
根據陣列信號處理理論可知,麥克風陣列拓撲優(yōu)化對陣列處理系統(tǒng)性能具有重要影響[6-8]。麥克風陣列拓撲結構可分為3類:一維陣列(如嵌套線型陣列、等間距線型陣列等線陣),二維陣列(如圓型陣列、方型陣列等平面陣),三維陣列(如星型陣列、球型陣列等立體陣)。陣列拓撲結構不同會影響麥克風陣列定位算法的定位精度與運算速度。黃東霞等[6-7]研究了一維與二維陣列在時延性能和語音增強方面的差異,但未考慮聲源高度變化對定位精度的影響。劉賓[8]分析了平面陣與立體陣的定位效果,但其中的陣列都為大孔徑陣列,不符合室內定位要求。劉路路[9]使用三維七元陣列,利用融合預處理與GCC-qγβ的方法進行三維定位,但達不到室內定位的精度要求。因此,研究合理的三維陣列拓撲結構具有實際意義。
目前,基于麥克風陣列的室內移動聲源定位研究均在麥克風陣列接收信號頻率響應保持高度一致性的假設下進行,但由于制造公差、使用時長以及室內復雜環(huán)境等多種因素的影響,使麥克風陣列接收信號的頻率響應特性與理論值存在較大偏差,導致定位精度下降。因此,對麥克風陣列頻率響應的校準,對于室內移動聲源定位精度的進一步提升具有重要意義。
麥克風陣列校準的傳統(tǒng)方法是在特定環(huán)境(如消聲室)下通過逐一比較各麥克風與參考麥克風的頻率響應參數進行校準[10-11]。這種方法能夠以較低的計算量補償增益和相位誤差,但是這種方法使用的前提條件是要有一個理想化的參考麥克風,如果參考麥克風的參數不準確會導致其他麥克風無法精確校準。針對傳統(tǒng)方法的不足,文獻[12-13]提出一種改進的陣列校準方法,在已知陣列形狀和聲源方向的情況下,利用特征值分解計算增益和相位誤差,但該方法只適用于特殊環(huán)境(如消聲室),且需要花費大量的費用。此外,Madhu等[14]提出了一種通過頻域中的歸一化互相關函數獲得麥克風的權重,從而消除麥克風陣列的增益誤差并檢測麥克風的異常的方法。Hua等[15]提出了一種增益自校準方法,該方法基于在麥克風未失配的情況下,默認長時間內所有麥克風接收到的平均功率相同。但這些校準方法關注的是總增益,而不是單個麥克風的增益,且未考慮麥克風之間的相位誤差。Seltzer和Raj通過最小化語音識別誤差來校準麥克風陣列,這需要使用專用設備和測試聲音進行手動校準[16]。Hu等[17]提出了一種基于多通道維納濾波器(MCWF)的麥克風陣列頻率響應校準方法,用來減小由麥克風不同頻率響應引起的誤差,且無需特殊的實驗環(huán)境。因此,本研究采用基于多通道維納濾波器的麥克風陣列頻率響應校準方法并進行改進,能夠有效地提升定位效果。
以室內聲學高精度三維定位為應用研究對象,從麥克風拓撲結構分析與麥克風陣列校準兩方面,基于麥克風陣列信號處理的相關理論與方法,在室內復雜環(huán)境中快速準確地定位室內說話人的三維位置坐標。此外,針對在真實室內環(huán)境中,麥克風陣列與說話人(聲源)之間存在干擾的情況下,聲源定位能力不足的實際問題,提出了一種低通濾波與多通道自適應濾波融合的陣列校準方案,并在此校準基礎上,采用SRP-PHAT-SRC算法對聲源進行定位。場測實驗結果表明,麥克風拓撲結構分析為基于麥克風陣列的室內聲源定位提供了充分的理論依據與實際參考,所提出的濾波融合陣列校準方案能有效補償麥克風陣列各接收信號的頻率響應差異,使得基于SRP-PHAT-SRC的聲源定位算法在實際場景下遠場聲源定位精度提升48%。
(1)
設mi(t)為麥克風陣列中第i個麥克風接收到的信號,則在有限時間長度T內可控響應功率(SRP)可以定義為
(2)
(3)
(4)
Mk(ω)為第k個麥克風接收信號mk(t)的傅里葉變換;τ為時延差;*為函數的共軛。因為相位變換(PHAT)對在高混響環(huán)境中求GCC有很好的效果,其權重是頻率分量的倒數,
(5)
考慮到計算式(3)所涉及的對稱性,并去掉一些固定能量項,則Pn(x)隨x變化的部分為
(6)
因而,為了簡化計算,式(1)可替換為
(7)
SRC的基本思想是給定一個初始搜索區(qū)域,其中包含了全局最大值,同時也包含一些局部極大值。在迭代過程中逐漸縮小搜索區(qū)域,直到達到限定條件并停止,從而找出最大值。此方法能夠有效地減少定位所需時間,提高定位算法的實時性。但是SRP-PHAT-SRC定位方法只適用于大孔徑麥克風陣列的近場聲源定位,且未考慮陣列拓撲結構和陣列校準對定位性能的影響。針對該問題,提出了三維陣列拓撲基于兩階段麥克風自校準方法的聲源定位(SSL)系統(tǒng)。
本三維星型陣列拓撲的自校準麥克風陣列聲源定位系統(tǒng)分為2個子系統(tǒng):1)麥克風陣列拓撲分析系統(tǒng);2)基于多通道低通濾波與多通道自適應濾波融合的SRP-PHAT-SRC定位系統(tǒng)。
麥克風陣列拓撲分析系統(tǒng)如圖1所示。該系統(tǒng)共有2個模塊組成,分別為麥克風陣列拓撲結構設置模塊與說話人定位算法模塊。
圖1 麥克風陣列拓撲分析系統(tǒng)
麥克風陣列拓撲結構設置模塊。為了探究不同陣列拓撲結構對定位結果的影響,本實驗對麥克風陣列中3個參數采用控制變量法,分別通過改變陣列維度、陣元間距及陣元個數構成不同結構的麥克風陣列。
說話人定位算法模塊。該模塊采用相位變換加權,計算接收信號的可控響應功率。在預先設定的聲源空間內,搜索使可控響應功率達到最大的坐標,即得到真實聲源的位置估計。語音信號由麥克風陣列直接獲得,再進行分離可以得到多路單一麥克風語音信號。由于搜索功率最大值的過程計算量太大,本系統(tǒng)使用隨機區(qū)域收縮優(yōu)化算法找尋峰值。將定位坐標與真實坐標進行對比,通過這些誤差的對比,分析不同麥克風陣列的性能。
圖2為基于多通道低通濾波與多通道自適應濾波融合的SRP-PHAT定位系統(tǒng)。當說話人的語音經過室內環(huán)境所產生的聲學信道傳播,通過麥克風陣列的前置放大器進行接收,將接收到的各個麥克風信號進行基于多通道低通濾波與多通道自適應濾波的融合濾波后進行定位。
圖2 基于多通道低通濾波與多通道自適應濾波融合的SRP-PHAT定位系統(tǒng)
在陣列信號處理的理論上,只需要3個傳感器就可根據聲源目標與坐標點之間的幾何關系確定聲音的位置。但在室內定位實測中,麥克風陣列的定位精度還受很多因素的影響,如房間結構與家具擺放、室內的混響系數等。因此,構建一個性能較好的麥克風陣列,需考慮種種因素,如陣元個數、陣元間距、陣列維度等[8,18]。
陣列所具有的方向向量能夠確定陣列所需要的模型,麥克風陣列的幾何結構與方向向量有著十分緊密的關系。一般陣列的幾何結構不同,方向向量就會不同。最早期的天線陣列中,陣列一般采取一維均勻直線陣、均勻的圓陣等一維陣列。在實際的測量系統(tǒng)中,為了聲源定位的精度,往往采用二維或者三維陣列,這樣可以降低聲源在空間中的位置誤差。
自適應濾波器可以使估計的隨機過程與所需的隨機過程之間的均方誤差(MSE)最小化,因此,使用自適應濾波器來校準由麥克風和前置放大器不同靈敏度引起的頻率響應誤差(幅度頻率響應和相位頻率響應)是一種可行的方法。
(8)
(9)
hi=[hi(0)hi(1) …h(huán)i(M-1)]T,
(10)
圖3 最小均方差自適應濾波流程
其中M為濾波器的階數。因為要計算J的最小值,所以,設式(8)中d(n)的值等于0,可得
(11)
設
e′(n)=d(n)-mi(n)=d(n)-
第i個麥克風所在位置的最小均方差為
(12)
式中,E[·]為數學期望。為了找到εi(n),設hi為0,可得
(13)
當滿足均方差誤差最小時,所對應的權矢量hi為最佳權矢量,并且與FIR維納濾波器的最佳解是一致的。因此,所對應的維納霍夫等式為
Rxixihi=Rxid。
(14)
(15)
其中,u1是長度為M的單位向量,di(n)為除去當前第i個麥克風外其他接收信號之和的平均,
u1=[1 0 0 … 0]T,
(16)
(17)
根據式(17)可得到每個麥克風的最佳權矢量,便可以構造頻率響應校準系統(tǒng)。
通過數值模擬仿真與真實環(huán)境場測實驗來驗證三維星型陣列拓撲的自校準麥克風陣列聲源定位系統(tǒng)的可靠性(定位精度)與實用性(算法計算量)。
圖4為一個10 m×8 m×4 m的仿真房間,房間混響時間RT60為0.25 s,即高度混響環(huán)境。設真實聲源的位置坐標(x,y,z)為(1,2,3),麥克風陣列以坐標點(2,2,2)為中心,每個軸上放置不同數量的麥克風,以組合成不同陣型、不同陣元數量、不同陣元間距的麥克風陣列,從而對不同維度、不同孔徑與數量的麥克風陣列拓撲結構進行分析。實驗所使用的聲源信號是一段在消聲室中錄制的3 s女性語音,采樣頻率為44 100 Hz。
圖4 房間構造、聲源位置以及麥克風陣列位置說明
根據麥克風陣列拓撲分析系統(tǒng)的流程,通過對比不同麥克風陣列拓撲結構的定位效果與實際位置的誤差,分析不同麥克風陣列拓撲的優(yōu)劣。對陣列維度、陣元個數和陣元間距3方面進行了仿真實驗,效果如圖5、6、7、8所示。
圖5 麥克風陣列不同維度對定位誤差的影響
圖6 不同陣元個數對麥克風陣列定位精度的影響
圖7 不同陣元個數對麥克風陣列定位時計算量的影響
圖8 不同麥克風間距對麥克風陣列定位精度的影響
從圖5可看出,在相同的環(huán)境與相同的定位算法下三維星型陣列的定位精度明顯優(yōu)于其他2種陣列。因此后續(xù)實驗都基于三維星型陣列。
結合圖6與圖7可看出,在使用三維星型陣列定位時,在每個軸上麥克風數量達到5個時定位算法開始收斂,誤差減小并且計算量降低,當每軸上麥克風數量到達10個時,定位精度與計算量達到最優(yōu)。
由圖8可知,當每軸麥克風個數為5個及以上時,定位算法開始收斂,并且定位精度隨著麥克風間距的增大而上升。在每軸8個麥克風時,位置誤差趨向于平穩(wěn),12個時達到最優(yōu)。
綜合上述3個實驗的定位精度與實際情況,使用每軸上8個麥克風,每個麥克風間距為10 cm的三維星型陣列做實際測試??紤]到實際測試中,由于麥克風的制造公差、使用年限、室內空間混疊與聲源遠離麥克風陣列產生的信號衰減而產生的麥克風信號頻響不一致,導致定位性能下降的問題,提出基于多通道低通濾波與多通道自適應濾波融合的方法,對麥克風所采集的信號進行濾波,再進行定位。
場測實驗在桂林電子科技大學金雞校區(qū)第七教學樓315室實施,該房間的尺寸為7.3 m×7.4 m×3.3 m,實驗使用每軸8個麥克風,麥克風間距為10 cm的三維星型陣列采集聲音,麥克風型號為PCBModel:130F22,聲卡為NI公司PXIe-4497采集卡,工作站為NI公司PXIe-8840控制器,數據采集軟件為其高公司SignalPad測控軟件V2.0。實驗場景如圖9所示,同一個說話人分別在距離麥克風陣列1、2、3、4、5、6 m處進行實驗,使用麥克風陣列采集信號,分析其濾波前后的頻響參數與定位結果。
圖9 實驗場景
由于麥克風數量較多,在做頻率響應參數對比時,選取了3個麥克風的頻率響應參數,濾波前后的參數如圖10、11所示。從圖10可看出,濾波前麥克風所接收的信號頻率響應參數變化趨勢基本一致,只在一些點上有較大的浮動,這些頻率響應的不一致會導致定位性能的下降。然而在圖11中,經過基于多通道低通濾波器與多通道自適應濾波器的融合濾波后,各個麥克風的頻率響應參數不僅在趨勢上一致,而且參數的跳變很小,各個麥克風的頻率響應參數基本保持一致。
圖10 濾波前接收端麥克風的頻率響應參數
圖11 經過濾波后接收端麥克風的頻率響應參數
通過對比本方法、傳統(tǒng)SRP-PHAT-SRC方法與GCC-qγβ方法的位置誤差,證明了SSL系統(tǒng)的先進性。
由圖12可知,當聲源與陣列距離較近時,本方法的定位效果明顯好于GCC-qγβ方法與傳統(tǒng)SRP-PHAT-SRC方法。隨著陣列與聲源位置的增加,定位誤差與GCC-qγβ方法接近,且明顯優(yōu)于傳統(tǒng)的SRP-PHAT-SRC方法。
圖12 不同的聲源與麥克風陣列間距定位效果對比
針對室內復雜環(huán)境下遠場移動聲源定位能力的不足,提出三維星型陣列拓撲的自校準麥克風陣列聲源定位系統(tǒng),仿真與實驗結果驗證了所提系統(tǒng)基于多通道的語音獲取方式和感知聲源信號時空信息,有利于從陣列拓撲與陣列校準兩方面改進SRP-PHAT-SRC聲源定位算法的遠場聲源定位性能。實驗結果同時證明所提系統(tǒng)具有一定的理論基礎與實用價值。但是在三維定位中,針對聲源高度的定位結果并不準確,因此在針對聲源高度的定位精度優(yōu)化上值得進一步研究,從而提高整體定位精度。