馬 銳,張自嘉,王遠大
(南京信息工程大學信息與控制學院,江蘇南京 210044)
機械產品在工作時會產生一定的噪聲,增加了自身的磨損,降低了使用壽命,同時也會對環(huán)境造成一定的噪聲污染,因此對噪聲進行準確定位,對機械產品的改進和故障檢測具有重要意義。基于麥克風陣列的聲源定位方法,按照原理可以分成三大類:基于最大輸出功率的可控波束形成技術;基于到達時間差(TDOA)技術;基于高分辨率譜估計的定位技術[1-3]?;诟叻直媛首V估計的定位技術,代表算法為MUSIC[4-5],是利用麥克風信號間的相關矩陣來確定方向角,從而進一步定位聲源位置,波束形成算法是對陣列接收到的語音信號進行濾波,加權求和,然后控制麥克風指向使波束有最大輸出功率的方向[6-7]。聲源定位在麥克分陣列形式上分為直線陣、十字陣、矩形陣、圓形陣等,均勻圓陣可以進行二維角度估計,相對于矩形陣減少了陣元個數,具有較高的實用意義[8]?;诼暭{的水下目標定位多采用直線陣列、雷達定位系統(tǒng)對高空目標進行定位且以主動搜索為主[9-10],不需要考慮上半空間和下半空間的問題,而基于麥克風陣列的近場聲源定位,聲源可能出現在陣列的任意方位,若聲源出現在陣列水平軸下方,采用原有的公式和陣列順序,根據波束形成算法得到的功率密度是雜亂的,無法直接給出目標的方向角,此時需要通過對陣列數據進行旋轉并二次計算才能得到方向角,但這明顯增加了計算時間。
針對這一問題,通過分析和實驗,對比了多種方法,提出了利用互相關測量方法[11]判斷聲源處于陣列水平線的上下方向,再運用波束形成算法給出二維角度估計,可以很好地解決這一問題,而且不會顯著增加計算時間。
圖1所示為圓陣的示意圖。
圖1 陣列結構示意圖
陣元分布在xoy平面內,圓的半徑為r,麥克風個數為M,第1和第5個麥克風位于x軸上,來波方向為ed,聲音傳播速度為c.
可以得到信號延遲時間為
(1)
各麥克風接收到的離散信號序列為
x(n)=A(θ,φ,f)s(n)+N(n)
(2)
式中:x(n)為麥克風陣列的輸出向量,x(n)=[x1(n),x2(n),…,xM(n)]T;N(n)為其中的噪聲向量,N(n)=[N1(n),N2(n),…,NM(n)]T;n為時間采樣序列;A(θ,φ,f)=[e-j2πfτ1,e-j2πfτ2,…,e-j2πfτm]T。
對目標方位的估計需要借助波束形成來實現,采集的聲音信號為寬帶信號,可以在時域實現,也可以在頻域實現,后者精度高,雖然計算量大,但目前的計算速度可以滿足一般的要求,因此通常在頻域進行[12]。波束形成器的輸出為
=WH(θ,φ,f)X(k,f)
(3)
式中:W(θ,φ,f)為波束形成器中的頻率為f的諧波分量的權向量,W(θ,φ,f)=[w1(θ,φ,f),w2(θ,φ,f),wm(θ,φ,f)]T;X(k,f)為第k個抽樣時間快拍且頻率為f的輸出向量,X(k,f)=[x1(k,f),x2(k,f),…,xM(k,f)]。
波束形成器的輸出功率為
P(θ,φ,f)=E(|y(k,θ,φ,f)|2)
=WH(θ,φ,f)E(X*(k,f)XH(k,f))W(θ,φ,f)
=WH(θ,φ,f)R(k,f)W(θ,φ,f)
(4)
式中:*為復共軛;E()為數學期望;對常規(guī)波束,W(θ,φ,f)和導向矢量A(θ,φ,f)相同;R(k,f)為輸出信號中,第k個快拍、頻率為f的窄帶信號的協(xié)方差矩陣。
(5)
利用式(4)可以計算出波束形成的輸出功率,改變θ和φ,找到功率的最大值就可以確定目標的方位。式(4)為常規(guī)波束形成器(CBF)的輸出功率。常規(guī)波束形成器具有穩(wěn)定、可靠和計算量較小等優(yōu)點,但分辨率較低、抗干擾能力差。最小方差無失真響應(MVDR)或最優(yōu)權波束形成器是一種自適應波束形成算法,有較強的抗干擾能力,可以對不同的環(huán)境做自適應處理。
MVDR波束形成的波束輸出功率為
(6)
通過式(1)中的三角函數的對稱性可知,φ的范圍是0~90°,θ的范圍是0~180°,決定了波束形成算法計算方位角時,只能給出半個空間0~180°內的目標方位角,通過仿真和實驗證明了存在該問題。
在Matlab中,8個麥克風按照式(1)的原理接受y=cos(2πft)的聲源信號,f為聲源的頻率,陣列半徑r=0.2 m,聲源距離陣列ra=5 m,聲源S的坐標為(rasinφcosθ,rasinφsinθ,racosφ),各麥克風的坐標為(rcosαm,rsinαm,0),聲源與第1個麥克風的距離為
(7)
聲源與第m個麥克風的距離為
(8)
根據波動方程,各麥克風接受到的信號為
ym=cos〔2πft-2πf·(rm+r1)/c〕
(9)
再給這8路聲音信號加上隨機噪聲產生仿真數據。分別設置方位角為120°和240°、俯仰角為60°的2個聲源,通過波束形成算法計算功率譜,如圖2、圖3所示。
圖2 θ=120°,φ=60°功率譜圖
圖3 θ=240°,φ=60°功率譜圖
比較圖2、圖3可以看出,當目標出現在180°~360°時,采用原有的公式和陣列順序,計算出的功率譜無明顯的指向。
圓陣由8個麥克風構成,分別經過前置放大后輸入8通道同步數據采集卡(HTPXI4484A),通過LabVIEW軟件控制數據的采集。該采集卡AD分辨率為16位,最高采樣率為2 MS/s,采集模式設定為連續(xù)采集,采樣率設定為25 kHz,8通道同步采樣,采樣點數分別設置為256、512、1 024。仿真中遇到的問題在實際試驗中同樣存在,分別采集聲源在x軸上方和下方方位角為90°、俯仰角為70°的2組聲音數據,通過波束形成算法得出功率譜圖,如圖4、圖5所示。
圖4 x軸上方θ=90°,φ=70°功率譜圖
在圖5中會存在一些雜亂的譜峰,是麥克風陣列接收到聲源傳播中遇到墻面反射的信號譜峰[13]。
圖5 一次計算x軸下方θ=90°,φ=70°功率譜圖
對于陣列信號判別目標上下界,主要依據聲源與各通道之間的距離,即各通道接受信號的時間差,主要方法有DFT頻譜分析法和數字相關法[14]。DFT頻譜分析法計算量小、分辨率高,其原理為對兩路信號進行傅里葉變換,得到離散頻譜的實部和虛部分別包含了余弦信息和正弦信息,DFT頻譜分析法正是利用這兩項信息分別求得兩路信號的相位值,再相減得到相位差,根據相位差的值判斷兩路信號到達時間,但只適合處理周期性信號,大量的實驗證明,對采集的聲音信號不能計算出準確的相位差。
數字相關法可以通過2個麥克風聲音信號互相關曲線的最高峰來估計時間延遲。由式(2)可得到2個麥克風接收到的信號為
xm(t)=Am(θ,φ,f)s(t)+Nm(t)
(10)
xn(t)=An(θ,φ,f)s(t-d)+Nn(t)
(11)
式中d為聲音信號達到2個麥克風的時間延遲。
假設聲源信號功率遠遠大于噪聲信號功率的情況下,2個麥克風接受信號的互相關函數可表示為
(12)
由式(12)可得到,當且僅當互相關函數取最大值時,對應的τ即為時間延遲d,即:
(13)
對于圓陣,若聲源出現在x軸上方,聲音達到第3個麥克風的時間小于達到第7個麥克風的時間,即d小于0,若在x軸下方,d大于0。
通過計算聲源在x軸下方,方位角θ=90°,俯仰角φ=70°的聲音信號,第3個麥克風和第7個麥克風兩信號的互相關曲線,如圖6所示。當采樣率為25 kHz,d=4.4000×10-4s,可知聲源出現在x軸下方。
(a)聲音信號
(b)第3路、第7路信號互相關曲線
判別聲源所處陣列的上下界,可改變陣列順序,再進行處理,即可得到準確的二位角度估計,相比進行二次計算,可較少1/3的運算量,提高系統(tǒng)定位的速度。圖7為圖5的數據改變陣列順序后計算出的準確功率譜圖。
圖7 x軸下方θ=90°、φ=70°功率譜圖
將采集到的數據在Matlab中計算,比較不同采樣點數據通過2種方法所用的計算時間,如表1所示,可以看出運用互相關測量法的MVDR算法可以節(jié)約1/3的時間。
表1 實驗結果
聲源定位中應用的基于高分辨率譜估計的定位技術,利用麥克風信號間的相關矩陣來算出方向角,從而進一步確定聲源位置,不存在目標上下界判定的問題[15-16]。波束形成算法是對陣列接收到的語音信號進行濾波,加權求和,然后控制麥克風指向使波束有最大輸出功率的方向,在圓陣和矩形陣中,麥克風指向的范圍是0~180°,給出360°角需要進行二次計算,通過互相關曲線最高峰來計算兩通道信號的時間延遲,初步判斷聲源所處陣列的位置,再運用波束形成算法計算聲源的功率譜,準確得到聲源的方位角,可以減少1/3的運算量。
參考文獻:
[1]POTAMITIS I,CHEN H M,TREMOULIS G.Tracking of Multiple Moving Speakers with Multiple Microphone Arrays.IEEE Trans.On Speech and Audio Processing,2004,12(5):520-529.
[2]楊東勇,顧東袁,傅曉婕.一種基于RSSI相似度的室內定位算法.傳感技術學報,2009,22(2):264-268.
[3]陳奎,徐釗.OFDM聯合時延和到達角度的定位算法.傳感技術學報,2009,22(7):988-992.
[4]MULLER M,ELLIS D P W,RICHARD G,et al.Signal Processing for MUSIC Analysis.IEEE Journal of Selected Topics in Signal Processing,2011,5(6):1088-1110.
[5]WANG T,YANG L S,YANG S Z,et al.A modified MUSIC to estimation DOA of the coherent narrowband sources based on UCA.International Conference on Communication Technology.Chongqing,IEEE,2006:1-4.
[6]曾浩,朱自華,李慧君,等.均勻圓陣下的寬帶信號DOA估計算法.電路與系統(tǒng)學報,2013,18(1):432-437.
[7]蔣毅,古天祥.基于有限域搜索的MUSIC法快速頻率估計.儀器儀表學報,2006,27(11):1526-1528.
[8]陳豐,潘翔.基于FFT的矩形陣波束形成算法.傳感技術學報,2006,19(6):2588-2590.
[9]洪振清,張劍云.基于波束域預處理的MIMO雷達MVDR波束形成算法.系統(tǒng)仿真學報,2013,25(4):722-727.
[10]楊麗,蔡志明.混響背景下單、雙基地聲納的探測范圍比較.系統(tǒng)仿真學報,2006,18(11):3263-3267.
[11]吳曉,靳世久,李一博,等.基于麥克風陣列聲音信號定位方法的研究.傳感技術學報,2010,23(5):682-686.
[12]張自嘉,王昌明,劉偉.基于虛擬儀器的水聲信號采集與處理.儀器儀表學報,2007,28(4):205-207.
[13]金乃高,殷福亮,陳喆.基于分層采樣粒子濾波的麥克風陣列說話人跟蹤方法.電子學報,2008,36(1):194-198.
[14]方漢方,黃勇,蔡藝劇,等.基于FFT超聲波傳輸時間測量的誤差分析.西華大學學報,2012,31(6):59-64.
[15]LIU Z H,HUANG Z T,ZHOU Y Y,Direction-of-Arrival Estimation of Wideband Signals via Covariance Matrix Sparse Representation.IEEE Transactions on Signal Processing,2011,59(9):4256-4270.
[16]ZEN W J,LI X L.High-Resolution Multipe Wpideband and Nonstationary Source localization With Unknown Number of Sources.IEEE Transactions on Signal Processing,2010,58(6):3125-3136.