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