文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.190864
中文引用格式: 余秋婷,熊俊俏. 基于六元空間陣列的聲源定位系統(tǒng)實現(xiàn)[J].電子技術(shù)應(yīng)用,2020,46(2):58-61.
英文引用格式: Yu Qiuting,Xiong Junqiao. Realization of sound source locating system based on six-dimensional space array[J]. Application of Electronic Technique,2020,46(2):58-61.
0 引言
聽覺是人感知外界環(huán)境,并與外界環(huán)境進行交互的重要方式,根據(jù)不同物體發(fā)出的聲音,人們可以判斷出聲源的方位。而在某些特定場合,就需要機器來準確定位出聲源的位置[1]。因此,基于麥克風(fēng)陣列的聲源定位技術(shù)得到了廣泛的關(guān)注和快速的發(fā)展,對其開展研究具有很強的實踐價值[2]。
目前,常用的基于麥克風(fēng)陣列的聲源定位方法有3種:基于最大輸出功率的可控波束形成定位方法[3]、基于高分辨率譜估計技術(shù)的定位方法[4]和基于時延估計的定位方法[5]。其中,基于時延估計的定位方法由于運算量小、實時性好、易于實現(xiàn)等優(yōu)點而成為最普遍的使用方法[6]。其方法首先估計了聲源到達各個麥克風(fēng)的時延,再根據(jù)幾何關(guān)系得到聲源的位置。文獻[7]提出了一種改進時延估計的聲源定位方法。該方法首先設(shè)計了四元十字型麥克風(fēng)陣列,然后在廣義互相關(guān)的基礎(chǔ)上引入二次相關(guān)算法來削弱環(huán)境噪聲產(chǎn)生的干擾,同時采用自適應(yīng)濾波算法來提高環(huán)境混響的時延精度,從而獲得更準確的聲源位置。但缺少界面的直觀顯示。文獻[8]首先提出了GCC-IMLPT算法,并通過仿真驗證了該算法的性能,且選取了計算量小、實時性較好的球形插值法來得到聲源位置,然后研究了麥克風(fēng)拓撲結(jié)構(gòu),確定麥克風(fēng)陣列的大小,最后在實際環(huán)境中測試了系統(tǒng)的性能,但由于系統(tǒng)是在計算機上實現(xiàn)的,不方便攜帶。當前,優(yōu)化算法提高定位精度,實現(xiàn)界面的直觀顯示,以及方便攜帶成為考慮的熱點問題。
本文提出一種基于麥克風(fēng)陣列的聲源定位系統(tǒng)。采用改進的廣義互相關(guān)算法獲取時延,進而得到聲程差,并根據(jù)幾何關(guān)系確定聲源在空間中的位置,最后在嵌入式平臺上進行實驗。實驗結(jié)果證明,該方法能較準確地得到聲源位置。
1 聲源定位系統(tǒng)原理
1.1 聲源定位原理
由于同一個聲源傳播到位置不同的各個麥克風(fēng)時會產(chǎn)生時間差,這個時間差稱為時延。時延與聲速相乘即可得到聲程差。由雙曲線的性質(zhì)可知,雙曲線上任意一點到兩個焦點的距離之差的絕對值為雙曲線的實軸長。因此,聲源在以任意兩個麥克風(fēng)為焦點,聲程差為實軸長的多條雙曲線的焦點上[9]。聲源定位原理圖如圖1所示,S為聲源。
1.2 改進的廣義互相關(guān)算法
廣義互相關(guān)算法是目前最常用的一種時延估計方法。廣義互相關(guān)算法是通過將兩路聲音信號從時域變化為頻域,并求得兩信號之間的互功率譜,再進行加權(quán),這樣可以降低噪聲和反射帶來的誤差,然后經(jīng)過反傅里葉變換,將頻域轉(zhuǎn)換回時域得到互相關(guān)函數(shù)并計算峰值,峰值所對應(yīng)的位置即時延[10]。廣義互相關(guān)時延估計基本原理和流程圖如圖2所示。
由于聲源不斷產(chǎn)生聲音信號,麥克風(fēng)接收到聲源傳來的聲音信號。假設(shè)麥克風(fēng)1、2接收到聲音信號的理想模型為:
在理想情況下或在弱噪聲和弱混響的環(huán)境下互功率譜可近似表示為:
互功率譜加權(quán)函數(shù)(PHAT)通過對信號互功率譜歸一化,去除信號的幅度信息,只保留了信號的相位特性,對噪聲和混響有一定的抑制作用[11]。
2 空間定位方法
目前有2種方法估計聲源位置:通過搜索的方式和通過幾何的方式。由于本文采用的是三維陣列,故采用幾何的方法估計聲源位置。
本文采用球形插值法對聲源位置進行估計。球型插值法根據(jù)多個麥克風(fēng)相對參考麥克風(fēng)的時延和各個麥克風(fēng)的矢量位置得到一個誤差方程組,并求其最小二乘解[12]。
如圖3所示,聲源的坐標點用s(x,y,z)表示,麥克風(fēng)m0放在原點處作為參考點,mi表示其他麥克風(fēng)的坐標位置,i∈[1,5],各麥克風(fēng)與參考麥克風(fēng)之間的聲程差用di表示。
聲源s應(yīng)該滿足矢量方程:
3 實驗結(jié)果與分析
3.1 實驗設(shè)備
本文系統(tǒng)在硬件上主要包括三維陣列、麥克風(fēng)模塊、數(shù)據(jù)采集卡以及計算機。三維陣列模型如圖4所示,相鄰兩麥克風(fēng)之間的距離為50 cm,麥克風(fēng)采用MAX9812麥克風(fēng)模塊,為全向性麥克風(fēng),20 dB固定增益放大。選用 USB DAQ多功能數(shù)據(jù)采集卡采集聲音數(shù)據(jù),采集卡的輸入端通過6根數(shù)據(jù)線與麥克風(fēng)陣列相連,輸出端通過USB連接計算機,USB DAQ采集卡具有8路差分16位高速同步模擬信號采集,8 個AD620高精度差分放大器,16路數(shù)字信號單向輸入,16路數(shù)字信號單向輸出。單通道的采樣頻率最大可達200 kHz。本實驗只使用了其中6路通道。
3.2 實驗分析
通過具體實驗對麥克風(fēng)陣列以及算法進行驗證。本實驗環(huán)境內(nèi)存在一定的噪聲,噪聲主要來源于室內(nèi)照明設(shè)備、電腦風(fēng)扇以及空調(diào),聲源為手機播放的一段音樂。數(shù)據(jù)采集卡的采樣頻率設(shè)置為200 kHz,采樣位數(shù)為16位,采樣點數(shù)設(shè)為1×105個。
測試時,對每個位置都進行6次實驗,求取的實驗結(jié)果為6次實驗的平均值。實驗結(jié)果如表1所示。
由表1的定位結(jié)果來看,該系統(tǒng)實現(xiàn)了聲源定位的基本功能,角度的誤差在±5°以內(nèi),能夠較準確地找到聲源所在的方位,距離誤差不超過±15 cm,在所接受的范圍內(nèi)。
4 結(jié)論
本文設(shè)計實現(xiàn)了基于麥克風(fēng)陣列的聲源定位系統(tǒng),該系統(tǒng)采用6個麥克風(fēng)組成的三維陣列,并根據(jù)改進的廣義互相關(guān)算法獲取時延,再根據(jù)球形插值法確定聲源在空間中的位置。
從實驗結(jié)果與分析可以看出,該算法得到的聲源位置較準確。而且本系統(tǒng)能將聲源的位置信息顯示在界面上,具有更加直觀的效果。不足的是,系統(tǒng)不夠便攜且只能定位單聲源,后續(xù)需要進一步研究將算法移植到便攜式開發(fā)板上以及多聲源定位算法。
參考文獻
[1] 韓文革,蘇淑靖,薛彥杰.基于麥克風(fēng)陣列的聲源被動定位系統(tǒng)設(shè)計[J].電子技術(shù)應(yīng)用,2017,43(12):61-64.
[2] 姜志鵬,唐加能,梁瑞宇.實時聲源定位算法研究與實現(xiàn)[J].電子器件,2015,38(6):1406-1411.
[3] 葛李賀.基于波束形成算法的聲源定位研究及DSP實現(xiàn)[D].南京:南京信息工程大學(xué),2015.
[4] 劉賓.基于聲源定位的靶標測量技術(shù)研究[D].西安:西安電子科技大學(xué),2017.
[5] 劉璐.基于麥克風(fēng)陣列的機器人聲源定位系統(tǒng)研究[D].長春:長春工業(yè)大學(xué),2018.
[6] 伏智超.基于Cortex-A8嵌入式系統(tǒng)的聲源定位技術(shù)研究與實現(xiàn)[D].南京:東南大學(xué),2015.
[7] 程方曉,劉璐,姚清華,等.基于改進時延估計的聲源定位算法[J].吉林大學(xué)學(xué)報(理學(xué)版),2018,56(3):681-687.
[8] 劉云飛.基于麥克風(fēng)陣列的聲源定位方法的研究[D].杭州:杭州電子科技大學(xué),2018.
[9] 陳國良,徐揚,黃曉琴.基于正四棱錐結(jié)構(gòu)的機器人聲源定位系統(tǒng)研究[J].計算機應(yīng)用研究,2018,36(4):1088-1092.
[10] 郭俊成.基于傳聲器陣列的聲源定位技術(shù)研究[D].南京:南京航空航天大學(xué),2007.
[11] 喬健,王建明.抑制風(fēng)噪聲的頻點離散值加權(quán)GCC-PHAT時延估計算法[J].電子技術(shù)應(yīng)用,2018,44(3):72-76,80.
[12] 張明瀚.基于時延估計的聲源定位系統(tǒng)研究[D].重慶:重慶大學(xué),2009.
作者信息:
余秋婷,熊俊俏
(武漢工程大學(xué) 電氣信息學(xué)院,湖北 武漢430205)