聲音是怎么被定位的?
——以鳴笛抓拍為例
當(dāng)我們閉上眼睛,仍然能夠判斷出聲音是從哪個(gè)方向來(lái)的。當(dāng)然了,前提是兩只耳朵都是健康的。如果完全捂住一只耳朵,那么就無(wú)法判斷聲音的具體方位了。這究竟是怎么回事兒呢?
由于兩只耳朵存在一定的距離,聲源傳播到兩耳的聲音存在頻率、強(qiáng)度和時(shí)間上的差異。我們就可以利用這些微小的差異進(jìn)行聲源來(lái)向定位?,F(xiàn)有科學(xué)研究表明,哺乳動(dòng)物更多的是通過(guò)感知聲音達(dá)到的雙耳的時(shí)間差進(jìn)行定位。貓可以判斷聲源位置的最小角度為5°,人在相同情境下的判斷精度大約可以達(dá)到3°。
顯然,如果只有一只耳朵工作,肯定是無(wú)法判斷聲音來(lái)自何方了。
1.仿生學(xué)、雙耳定位和麥克風(fēng)陣列
仿生學(xué)大家一定不會(huì)陌生,它是一門(mén)既古老又年輕的學(xué)科,我們很多應(yīng)用的科技都是從自然界學(xué)到了作用原理或者得到了啟發(fā)后設(shè)計(jì)發(fā)明出來(lái)的。大家耳熟能詳?shù)氖鞘茗B(niǎo)兒飛翔的啟發(fā)發(fā)明了飛機(jī)、根據(jù)蝙蝠的夜間飛行發(fā)明了雷達(dá)、根據(jù)螢火蟲(chóng)發(fā)明了冷光……,諸如此類(lèi),不一而足。
類(lèi)似的,在雙耳定位的啟發(fā)下,我們?cè)O(shè)計(jì)了麥克風(fēng)陣列。利用麥克風(fēng)來(lái)模擬人的耳朵,理論上說(shuō),構(gòu)造包括兩個(gè)以上麥克風(fēng)的陣列,就可以實(shí)現(xiàn)聲音的定位了。但是,人的定位機(jī)理更為復(fù)雜,可能利用兩個(gè)麥克風(fēng)還不夠,那就增加麥克風(fēng)的數(shù)量,總能可以達(dá)到滿意的定位精度。
麥克風(fēng)陣列是指由兩個(gè)或多個(gè)麥克風(fēng)按照一定的幾何結(jié)構(gòu)排列而成的陣列。按照拓?fù)浣Y(jié)構(gòu)不同,麥克風(fēng)陣列可以分為均勻線性陣列、非均勻線性陣列、非線性陣列、環(huán)形陣列、平面陣列、立體陣列等。
【陣列類(lèi)型】
線性陣列可以定位一個(gè)角度,即只能定位方位角,無(wú)法定位仰角。平面陣列可以定位方位角和仰角,實(shí)用性更強(qiáng),但也意味著更復(fù)雜的計(jì)算,無(wú)法進(jìn)行定距。立體陣列既可以定向也可以定距。
圓形坐標(biāo)定向示例(θ1---俯仰角,φ1---方位角)
目前線性陣列和平面陣列是較為常見(jiàn)的兩類(lèi)陣列。線性陣列常見(jiàn)于會(huì)議拾音、教室吊麥等;平面陣列在智能音箱、聲學(xué)照相機(jī)等設(shè)備中更為常見(jiàn)。立體陣列見(jiàn)于反狙擊手系統(tǒng)。
桌面線性麥克風(fēng)陣列
鳴笛抓拍用麥克風(fēng)陣列(平面陣列)
反狙擊手系統(tǒng)
2.基于麥克風(fēng)陣列的聲學(xué)定位
2.1 聲學(xué)定位基本原理
所謂聲源定位,就是利用一組按照一定幾何位置擺放的麥克風(fēng)定出聲源的空間位置。對(duì)于空間中位于不同位置的兩個(gè)麥克風(fēng)而言,聲源只要不位于它們之間的中線上,那么它們和聲源之間的距離就存在差異,如下圖所示??梢钥闯?,聲源與兩個(gè)麥克風(fēng)之間存在距離差△L=Cτ,因此,聲波到達(dá)兩個(gè)麥克風(fēng)的信號(hào)在時(shí)間上存在時(shí)延τ=△L/C。理想情況下,麥克風(fēng)i和j接收的信號(hào)滿足關(guān)系Si=Sj(t-τ)。
基于麥克風(fēng)陣列的聲源定位技術(shù)基本上可以分為4類(lèi):基于最大輸出功率的可控波束形成技術(shù);高分辨率譜估計(jì)技術(shù);基于聲壓幅度比的定位技術(shù)以及基于聲音到達(dá)時(shí)間差(Time Delay of Arrival, TDOA)的定位技術(shù)。
(1) 波束形成技術(shù)(Beamforming)
該技術(shù)也稱為波束成型,這是一種直接定位方法,基本思想是對(duì)麥克風(fēng)所接收到的聲音信號(hào)加權(quán)求和來(lái)形成波束,通過(guò)調(diào)整權(quán)值使麥克風(fēng)陣列的輸出功率最大,波束輸出功率的點(diǎn)就是聲源的位置。傳統(tǒng)的波束形成器的權(quán)值取決于各陣元上信號(hào)的相位延遲,而相位又和時(shí)延以及聲音的到達(dá)時(shí)間差有關(guān),故又稱為時(shí)延求和波束形成器。
假設(shè)麥克風(fēng)的數(shù)量為M,第i個(gè)麥克風(fēng)接收到的信號(hào)為,對(duì)進(jìn)行時(shí)延對(duì)齊后,累加可得
上式中,指的是當(dāng)陣列指向搜索點(diǎn)時(shí)的可控時(shí)延,與麥克風(fēng)的數(shù)量、陣列孔徑、聲源的入射角以及采樣頻率成正比,與聲音的傳播速度成反比。累加輸出的功率,即波束的功率為
是的頻域表示。聲源的位置可按照下式計(jì)算:
通過(guò)控制陣列方向來(lái)引導(dǎo)波束,使波束輸出功率的點(diǎn)就是聲源的位置。
(2) 高分辨率譜估計(jì)技術(shù)
高分辨率譜估計(jì)技術(shù)是利用接收信號(hào)相關(guān)矩陣的空間譜,求解麥克風(fēng)之間的相關(guān)矩陣來(lái)確定方向角,進(jìn)而確定聲源的位置。這種定位技術(shù)主要包括自相關(guān)AR模型法、最小方差(MV)譜估計(jì)法和特征值分解算法(如MUSIC算法等)。
高分辨率譜估計(jì)技術(shù)適合于處理多個(gè)聲源的情形,但它們都是通過(guò)獲取麥克風(fēng)陣列的信號(hào)來(lái)計(jì)算空間譜的相關(guān)矩陣。此時(shí),如果所需的矩陣未知,則須通過(guò)已得到的數(shù)據(jù)進(jìn)行估計(jì),這要求空間中的聲源或噪聲須平穩(wěn)時(shí)不變,這在實(shí)際中很難實(shí)現(xiàn);此外,該方法的計(jì)算量大,在聲源定位系統(tǒng)中的應(yīng)用不多見(jiàn)。
(3) 基于聲壓幅度比的定位方法
該方法利用不同麥克風(fēng)接收的來(lái)自于同一個(gè)聲源的聲音信號(hào)在強(qiáng)度上的差異來(lái)實(shí)現(xiàn)聲源定位。根據(jù)由聲壓在麥克風(fēng)處產(chǎn)生的電壓輸出與對(duì)應(yīng)聲源到麥克風(fēng)的距離兩者之間存在的關(guān)系導(dǎo)出一個(gè)用于聲源定位的約束條件。由這個(gè)約束條件可確定三維空間中的一個(gè)球面。每個(gè)麥克風(fēng)可以導(dǎo)出這樣一個(gè)約束條件,利用這些約束條件可確定出聲源的位置。它們既可以是單獨(dú)使用,也可以和由基于時(shí)間差的方法導(dǎo)出的約束條件一起使用。
(4) 基于聲音到達(dá)時(shí)間差的聲源定位技術(shù)
基于聲音到達(dá)時(shí)間差(TDOA)估計(jì)的定位方法精度相對(duì)較高,計(jì)算量小,適合于實(shí)時(shí)實(shí)現(xiàn)。基于TDOA的定位方法是一種兩步方法。第一步,開(kāi)展TDOA估計(jì),獲得麥克風(fēng)陣列中相對(duì)陣元之間的TDOA。估計(jì)TDOA的方法有很多,大致可以分為互相關(guān)方法、廣義互相關(guān)方法、自適應(yīng)濾波器法、互功率譜相位法和高階統(tǒng)計(jì)量法等。第二步,利用估計(jì)得到的相對(duì)陣元之間的時(shí)間差,結(jié)合已知的麥克風(fēng)陣列的空間幾何關(guān)系確定聲源的位置。這種方法實(shí)時(shí)性較好,但存在誤差傳遞放大、無(wú)法進(jìn)行多聲源定位等問(wèn)題。
2.2 定位用麥克風(fēng)陣列的性能指標(biāo)
麥克風(fēng)陣列的性能指標(biāo)包括主瓣寬度(波束寬度)、旁瓣增益、陣列增益等。從定位的角度出發(fā),陣列增益是無(wú)關(guān)的性能指標(biāo),需要考慮主瓣寬度和旁瓣增益這兩個(gè)指標(biāo)。
波束圖示例
上面給出了一個(gè)波束圖示例,這是一個(gè)由12個(gè)麥克風(fēng)組成的均勻線性陣列,陣列間距d=8cm,聲源入射角度為陣列側(cè)邊正前方(即90°的位置),聲源頻率f=2000Hz。上圖共包括11個(gè)波束,具有大幅度的波束稱為主瓣(聲源所在方向),其他都是旁瓣。主瓣寬度定義為主瓣兩邊的兩個(gè)第一過(guò)零點(diǎn)之間的范圍,上圖的主瓣寬度大約是20°。旁瓣增益指的是旁瓣高度,上圖的旁瓣增益大約是-12dB。
旁瓣增益越低,對(duì)于目標(biāo)方向以外的干擾噪聲的抑制能力就越強(qiáng),可以更好的降低目標(biāo)檢測(cè)的虛警概率,對(duì)于鳴笛抓拍而言,就是不會(huì)出現(xiàn)“虛像”。比如,視野范圍之外有車(chē)輛鳴笛,它所產(chǎn)生的“虛像”可能恰好位于視野范圍之內(nèi),這樣就容易造成“假定位”,無(wú)法區(qū)別視野范圍內(nèi)外的鳴笛車(chē)輛。主瓣寬度越小,目標(biāo)方向的分辨能力越強(qiáng),陣列的指向性越好。對(duì)應(yīng)于鳴笛抓拍,就意味著光斑越準(zhǔn)確,不會(huì)出現(xiàn)一個(gè)光斑覆蓋多臺(tái)車(chē)輛的情況。
通常情況下,在麥克風(fēng)數(shù)量相同的情況下,麥克風(fēng)分布形式越規(guī)則,主瓣寬度和旁瓣增益會(huì)越大。下面給出了兩個(gè)麥克風(fēng)陣列構(gòu)型,都由32個(gè)麥克風(fēng)構(gòu)成,從對(duì)應(yīng)波束圖中可以明顯看到這一規(guī)律。因此,在設(shè)計(jì)麥克風(fēng)陣列時(shí),應(yīng)該盡可能地設(shè)計(jì)優(yōu)化構(gòu)型,而不是選擇均勻的規(guī)則構(gòu)型。
規(guī)則型陣列及其波束圖
非規(guī)則型陣列及其波束圖
3.應(yīng)用案例:鳴笛抓拍系統(tǒng)
基于麥克風(fēng)陣列的聲音定位技術(shù)已經(jīng)在工程領(lǐng)域中得到了廣泛應(yīng)用,典型包括異常聲響定位的聲學(xué)照相機(jī)、飛機(jī)飛躍噪聲分析使用的大型地面陣列、戰(zhàn)場(chǎng)中的狙擊手定位系統(tǒng)等。
目前,得到廣泛應(yīng)用的聲學(xué)定位技術(shù)莫過(guò)于交通領(lǐng)域中的鳴笛抓拍系統(tǒng)了,實(shí)際上這也是聲學(xué)照相機(jī)的一個(gè)具體應(yīng)用??v觀市場(chǎng)上已有的鳴笛抓拍系統(tǒng),基本都是由一個(gè)平面麥克風(fēng)陣列、一個(gè)電警(卡口)相機(jī)和主機(jī)組成,麥克風(fēng)陣列用于鳴笛聲音定位、相機(jī)用于識(shí)別鳴笛車(chē)輛車(chē)牌并抓拍圖片生成證據(jù)。
世邦鳴笛抓拍系統(tǒng)
系統(tǒng)的整個(gè)抓拍流程如下圖所示。在前端,系統(tǒng)捕獲到機(jī)動(dòng)車(chē)?guó)Q笛聲音,啟動(dòng)定位分析軟件進(jìn)行定位,如果定位結(jié)果位于抓拍視野范圍內(nèi),則啟動(dòng)高清相機(jī)進(jìn)行抓拍;根據(jù)定位坐標(biāo),進(jìn)行相關(guān)車(chē)輛的車(chē)牌識(shí)別,如果能夠識(shí)別出符合要求的車(chē)牌,則將車(chē)牌推送到LED屏顯示,同時(shí)生成完整證據(jù)鏈,包括車(chē)牌圖片及識(shí)別結(jié)果、車(chē)輛特寫(xiě)、車(chē)輛全景、鳴笛云圖、鳴笛聲紋圖和鳴笛過(guò)程的音視頻(疊加云圖),并將其推送到后臺(tái)。
鳴笛抓拍工作流程
系統(tǒng)計(jì)算監(jiān)測(cè)路面有效探測(cè)區(qū)域的聲音大小分布,用顏色表示聲音相對(duì)大小生成聲音分布圖,聲音分布與高清圖片疊加形成聲音云圖,對(duì)鳴笛聲連續(xù)采集分析,持續(xù)生成聲音云圖,聲音云圖疊加到視頻上連續(xù)播放生成“聲音視頻”;同時(shí),自動(dòng)生成4張圖片(違法時(shí)刻車(chē)輛全景圖、全景云圖、車(chē)輛特寫(xiě)圖和車(chē)牌特寫(xiě)與鳴笛頻譜圖)和音視頻證據(jù),其證據(jù)支持添加水印信息、防偽信息。證據(jù)信息如下圖所示。
鳴笛抓拍記錄證據(jù)
鳴笛抓拍FAQs:
Q1:前后車(chē)緊鄰,后車(chē)車(chē)牌被遮擋,后車(chē)?guó)Q笛,是否會(huì)誤抓前車(chē)?
A1:不會(huì)。首先在算法上進(jìn)行處理,如果兩車(chē)距離特別近,后車(chē)?guó)Q笛聲音會(huì)被前車(chē)遮擋,到達(dá)聲吶陣列已經(jīng)不是直達(dá)波,可以在定位算法上排除這種定位結(jié)果,不予定位抓拍;其次,通過(guò)對(duì)抓拍圖像的結(jié)構(gòu)化處理,設(shè)計(jì)合適的定位光斑與車(chē)輛方框的“容納”算法,可準(zhǔn)確判斷鳴笛光斑所在車(chē)輛位置。
Q2:機(jī)動(dòng)車(chē)緊鄰一側(cè)有電動(dòng)車(chē)/摩托車(chē)?guó)Q笛,是否會(huì)誤拍機(jī)動(dòng)車(chē)?
A2:不會(huì)。對(duì)抓拍圖像進(jìn)行結(jié)構(gòu)化處理,可以準(zhǔn)確區(qū)分出電動(dòng)車(chē)/摩托車(chē)、機(jī)動(dòng)車(chē)、自行車(chē)等,根據(jù)定位光斑的位置,可以準(zhǔn)確判斷出鳴笛來(lái)自于電動(dòng)車(chē)/摩托車(chē)。
Q3:多車(chē)同時(shí)鳴笛,如何處理?
A3:如果多臺(tái)車(chē)在同一時(shí)刻按下喇叭,又在同一時(shí)刻松開(kāi)喇叭,那么這段時(shí)間只會(huì)定位一臺(tái)鳴笛車(chē)輛;如果兩臺(tái)車(chē)的按喇叭時(shí)刻前后相差數(shù)十毫秒以上,系統(tǒng)可以定位到兩臺(tái)車(chē)輛。
Q4:車(chē)輛鳴笛后快速駛離,能否快速反應(yīng)準(zhǔn)確抓拍?
A4:能。世邦鳴笛抓拍系統(tǒng)創(chuàng)新采用了“預(yù)抓拍”技術(shù),預(yù)留一個(gè)數(shù)秒左右的抓拍圖片緩沖區(qū),當(dāng)鳴笛發(fā)聲并定位之后,會(huì)綜合考慮聲音傳播時(shí)間、定位所需的笛聲時(shí)長(zhǎng),從緩沖區(qū)中提取出接近鳴笛時(shí)刻的圖片作為證據(jù)圖片,能夠準(zhǔn)確定位鳴笛車(chē)輛。實(shí)驗(yàn)表明,時(shí)間誤差在±20ms的范圍,以60km/h的市區(qū)時(shí)速計(jì)算,折算距離誤差為±30cm,不會(huì)對(duì)定位車(chē)輛結(jié)果產(chǎn)生影響。