《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于神經(jīng)網(wǎng)絡(luò)的四元球面陣空間聲源定向系統(tǒng)
基于神經(jīng)網(wǎng)絡(luò)的四元球面陣空間聲源定向系統(tǒng)
電子技術(shù)應(yīng)用2012年第2期
邢鈺姣1,2, 孫 昊1,2, 楊 鵬1,2, 祖麗楠1,2
1. 河北工業(yè)大學(xué) 控制科學(xué)與工程學(xué)院,天津300130; 2. 河北省控制工程技術(shù)研究中心,,天津300130
摘要: 針對(duì)移動(dòng)機(jī)器人的目標(biāo)聲源定向問(wèn)題,,應(yīng)用四元球面麥克風(fēng)陣列建立了一套空間聲源定向系統(tǒng)。為了解決通過(guò)陣列的時(shí)延值預(yù)測(cè)出目標(biāo)聲源方向的問(wèn)題,,提出了神經(jīng)網(wǎng)絡(luò)算法,,并設(shè)計(jì)了雙隱層BP神經(jīng)網(wǎng)絡(luò)。通過(guò)Matlab仿真驗(yàn)證了該網(wǎng)絡(luò)可以實(shí)現(xiàn)近場(chǎng)和遠(yuǎn)場(chǎng)的聲源定向,并在機(jī)器人本體上進(jìn)行了實(shí)驗(yàn)測(cè)試,,證明了該系統(tǒng)的實(shí)用性,。
中圖分類號(hào): TP912.3
文章標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2012)02-0124-03
Four elements spherical microphone array sound source orientation system based on neural network
Xing Yujiao1,2,Sun Hao1,2, Yang Peng1,2, Zu Li′nan1,2
1. School of Control Science and Engineering, Hebei University of Technology, Tianjin 300130, China; 2. Hebei Research Center of Control Engineering, Tianjin 300130,China
Abstract: For the mobile robot sound source orientation, this paper uses four elements spherical microphone array to establish a spatial sound source target orientation system. In order to predict the direction of sound source target by the time delay of microphone array, the neural network algorithm is proposed in this paper. Designing a BP neural network which has two hidden layer and simulating it by Matlab toolbox. The experimental results show that the network can orient the sound source target in close field or in far field, then text it on the robot, the more show that the network is practical.
Key words : sound source orientation; mobile robot; microphone array; BP neural network

      近年來(lái),機(jī)器人聽(tīng)覺(jué)系統(tǒng)開(kāi)發(fā)已經(jīng)成為機(jī)器人研究領(lǐng)域的重要課題,。由于聲波的波長(zhǎng)較大,,具有較強(qiáng)的衍射能力,可以繞過(guò)障礙物傳播,,并且能與視覺(jué)傳感器配合,,從而可用于實(shí)現(xiàn)移動(dòng)機(jī)器人的全方位導(dǎo)航。聽(tīng)覺(jué)系統(tǒng)的開(kāi)發(fā)本質(zhì)上就是聲源定位系統(tǒng)的研究,,采用麥克風(fēng)陣列進(jìn)行聲源定位是信號(hào)處理領(lǐng)域的一個(gè)研究熱點(diǎn),。一組麥克風(fēng)按照一定的幾何結(jié)構(gòu)擺放組成麥克風(fēng)陣列[1],拾取來(lái)自各個(gè)方向的聲音信號(hào),,并進(jìn)行空時(shí)處理,,從而精確定位目標(biāo)聲源。

  在工程應(yīng)用中,,根據(jù)麥克風(fēng)陣列模型和聲音球面?zhèn)鞑ツP蜆?gòu)建的聲源定位系統(tǒng)是一組復(fù)雜的非線性方程,,難以用數(shù)值計(jì)算方法準(zhǔn)確建模。在這種情況下,,可以應(yīng)用神經(jīng)網(wǎng)絡(luò)表達(dá)這種非線性系統(tǒng),。神經(jīng)網(wǎng)絡(luò)可以按照指定的精度逼近各種復(fù)雜的非線性系統(tǒng),解決非線性系統(tǒng)的建模問(wèn)題,,并對(duì)信息采用分布式存儲(chǔ)的處理方式,,具有高運(yùn)算效率和很強(qiáng)的容錯(cuò)性、魯棒性[2-3],。
  本文研究了可應(yīng)用移動(dòng)機(jī)器人上的聲源定向系統(tǒng),,介紹了其硬件構(gòu)成,采用BP神經(jīng)網(wǎng)絡(luò)對(duì)定向系統(tǒng)進(jìn)行研究,,并通過(guò)Matlab仿真證明了在四元麥克風(fēng)陣列模型下實(shí)現(xiàn)遠(yuǎn)場(chǎng)和近場(chǎng)的目標(biāo)聲源定向,。
1 定向系統(tǒng)硬件結(jié)構(gòu)
1.1 麥克風(fēng)陣列模型

     聲源定向系統(tǒng)的幾何結(jié)構(gòu)如圖1所示,由M1,、M2,、M3和M4 4個(gè)麥克風(fēng)組成一個(gè)四元球面陣列,對(duì)目標(biāo)聲源進(jìn)行定向,。其中P為聲源,,?琢、?茁分別為方位角和俯仰角,。系統(tǒng)麥克風(fēng)選用駐極體麥克風(fēng),,這種傳聲器具有體積小,、全向性、價(jià)格低,、靈敏度較高和頻率響應(yīng)范圍寬等優(yōu)點(diǎn),。該麥克風(fēng)能夠有效地收集聲音信息并檢測(cè)出聲音到達(dá)麥克風(fēng)的初始時(shí)刻,為后續(xù)的定位計(jì)算提供準(zhǔn)確的數(shù)據(jù),。整個(gè)系統(tǒng)以Activmedia的Pioneer3 AT機(jī)器人為安裝平臺(tái),,如圖2所示。該機(jī)器人配備有速度,、激光,、攝像頭等傳感器,采用4個(gè)車輪保持平衡,可以承受的載重超過(guò)35 Kg,,底部裝有2個(gè)直流電動(dòng)機(jī),,分別用來(lái)驅(qū)動(dòng)左輪和右輪,前后均裝配了防碰接觸開(kāi)關(guān),,能同時(shí)適用于戶外和戶內(nèi)的應(yīng)用需求。

麥克風(fēng)陣列結(jié)構(gòu)模型

圖1 麥克風(fēng)陣列結(jié)構(gòu)模型

機(jī)器人實(shí)驗(yàn)系統(tǒng)平臺(tái)

圖2 機(jī)器人實(shí)驗(yàn)系統(tǒng)平臺(tái)


1.2 聲達(dá)時(shí)間獲取
1.2.1 信號(hào)放大及噪聲的處理

     由于全向型麥克風(fēng)的輸出電壓大都在零到幾十毫伏之間,,如此微弱的電信號(hào)無(wú)法滿足后期信號(hào)處理工作的要求,。因此,僅靠電容式麥克風(fēng)的拾音能力是遠(yuǎn)遠(yuǎn)不夠的,,有必要對(duì)麥克風(fēng)采集到的信號(hào)進(jìn)行放大,。本文采用性能較穩(wěn)定的集成運(yùn)算放大器對(duì)采集信號(hào)進(jìn)行二級(jí)放大??紤]到電器元件的放大特性不是完全一致的,,因此加入了增益調(diào)整電位器,以便后期調(diào)試時(shí)減少由于硬件特性不同而產(chǎn)生的誤差,。除此之外,,為了在實(shí)驗(yàn)過(guò)程中實(shí)時(shí)觀測(cè)信號(hào)的采集情況,利用發(fā)光二極管制作輸出信號(hào)指示燈來(lái)指示信號(hào)的強(qiáng)弱變化,。同時(shí)考慮到聽(tīng)覺(jué)定位系統(tǒng)的魯棒性和實(shí)時(shí)性,,本文還利用集成運(yùn)算放大器制作電壓比較器,使聽(tīng)覺(jué)定位系統(tǒng)具有一定的抗噪能力,,通過(guò)調(diào)節(jié)參考電壓對(duì)背景噪聲進(jìn)行過(guò)濾,。
1.2.2 聲達(dá)時(shí)間點(diǎn)的捕捉
    通過(guò)上述過(guò)程,系統(tǒng)對(duì)聲電信號(hào)進(jìn)行了整形,,使得大于背景噪聲的信號(hào)以方波的形式輸出,,用于捕捉聲源信號(hào)到達(dá)時(shí)間點(diǎn)。為了使陣列中各個(gè)麥克風(fēng)均能精確地捕捉目標(biāo)聲音到達(dá)的時(shí)間點(diǎn),,采用微處理器配合RS觸發(fā)器進(jìn)行捕捉,,具體實(shí)現(xiàn)方法如圖3所示,。

圖3 捕捉聲達(dá)時(shí)間點(diǎn)硬件電路圖

 

 


    聲源信號(hào)經(jīng)過(guò)電壓比較器整形后,產(chǎn)生連續(xù)方波脈沖,。當(dāng)?shù)谝粋€(gè)脈沖到達(dá)觸發(fā)器時(shí),,觸發(fā)器鎖存并保持電平,輸出端發(fā)光二極管隨即發(fā)生變化,,指示聲源信號(hào)起始點(diǎn)已被鎖存,。由于已將微處理器中的可編程計(jì)數(shù)器調(diào)整為捕捉定時(shí)器工作模式,并設(shè)置CPU時(shí)鐘頻率,所以當(dāng)觸發(fā)器改變電平時(shí),,CPU記錄并存儲(chǔ)脈沖到來(lái)的時(shí)間,。等待4路麥克風(fēng)的聲源信號(hào)相繼到達(dá)后,再利用串口通信將4個(gè)存儲(chǔ)的時(shí)間點(diǎn)發(fā)送到上位機(jī),,與此同時(shí),,將鎖存器電平和微處理器復(fù)位,等待下一刻聲源信號(hào)的到達(dá),。這種利用硬件直接捕捉聲達(dá)的方法簡(jiǎn)單易行且精度較高,。
2 神經(jīng)網(wǎng)絡(luò)計(jì)算模型建立
2.1確定網(wǎng)絡(luò)結(jié)構(gòu)

     BP神經(jīng)網(wǎng)絡(luò)是一種多層前饋神經(jīng)網(wǎng)絡(luò),由輸入層,、隱含層和輸出層組成[4],。根據(jù)系統(tǒng)輸入輸出數(shù)據(jù)的特點(diǎn)來(lái)確定BP神經(jīng)網(wǎng)絡(luò)的輸入輸出,輸入數(shù)據(jù)為3個(gè)時(shí)延值,,即聲音信號(hào)到達(dá)陣列中不同位置的麥克風(fēng)的時(shí)間差,。把聲源到麥克風(fēng)M4的時(shí)間作為基準(zhǔn),到麥克風(fēng)M1,、M2,、M3的時(shí)間與基準(zhǔn)的差記作3個(gè)時(shí)延值,構(gòu)成一組3個(gè)參數(shù)的輸入數(shù)據(jù),。輸出數(shù)據(jù)為目標(biāo)聲源的位置,,本文的聲源定位目的是為了實(shí)現(xiàn)移動(dòng)機(jī)器人對(duì)目標(biāo)聲源的跟蹤,所以輸出數(shù)據(jù)采用球坐標(biāo)形式較為方便,。該網(wǎng)絡(luò)的輸出有方位角,、俯仰角和距離3個(gè)參數(shù)。
  隱含層層數(shù)的選擇要從網(wǎng)絡(luò)的精度和訓(xùn)練時(shí)間上綜合考慮[5],,在網(wǎng)絡(luò)精度達(dá)到要求的情況下,,可以選擇單隱層,以求加快訓(xùn)練速度,;而對(duì)于復(fù)雜的映射關(guān)系,,選擇多隱含層,可以提高網(wǎng)絡(luò)預(yù)測(cè)精度[6-7],。本文選用有2個(gè)隱含層的BP網(wǎng)絡(luò),,網(wǎng)絡(luò)結(jié)構(gòu)為3-25-25-3,,即輸入層和輸出層有3個(gè)節(jié)點(diǎn),2個(gè)隱含層分別有25個(gè)節(jié)點(diǎn),。
2.2 數(shù)據(jù)處理
       假設(shè)4個(gè)麥克風(fēng)之間的距離均為0.1 m,目標(biāo)聲源范圍為一個(gè)半徑0.1 m~5 m的球體內(nèi)的任意點(diǎn),。聲速為340 m/s,根據(jù)聲源定位模型的幾何關(guān)系隨機(jī)取數(shù)得到系統(tǒng)2 000組的輸入輸出數(shù)據(jù)。從中隨機(jī)選取1 900組數(shù)據(jù)作為網(wǎng)絡(luò)訓(xùn)練數(shù)據(jù),,其余100組數(shù)據(jù)作為網(wǎng)絡(luò)測(cè)試數(shù)據(jù),。
     數(shù)據(jù)歸一化方法是神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)前對(duì)數(shù)據(jù)常做的一種處理方法[8]。該方法主要有最大最小法,、平方數(shù)方差法[9]兩種,。本文采用第一種方法對(duì)輸入輸出數(shù)據(jù)進(jìn)行歸一化處理,并對(duì)網(wǎng)絡(luò)預(yù)測(cè)輸出進(jìn)行反歸一化,,通過(guò)Matlab的自帶函數(shù)mapminmax來(lái)實(shí)現(xiàn),。
3 Matlab仿真與結(jié)果分析
3.1 Matlab仿真

     Matlab軟件中包含Matlab神經(jīng)網(wǎng)絡(luò)工具箱,可以直接調(diào)用構(gòu)建各種類型的神經(jīng)網(wǎng)絡(luò),。本文的BP神經(jīng)網(wǎng)絡(luò)主要用newff,、train和sim 3個(gè)神經(jīng)網(wǎng)絡(luò)工具箱自帶函數(shù)來(lái)實(shí)現(xiàn)網(wǎng)絡(luò)的構(gòu)建、訓(xùn)練和仿真預(yù)測(cè),。
    本文的聲源定位系統(tǒng)以實(shí)現(xiàn)對(duì)目標(biāo)聲源的跟蹤為目的,,預(yù)測(cè)出方位角和俯仰角,確定目標(biāo)聲源的空間方向?qū)崿F(xiàn)跟蹤,。但由于BP神經(jīng)網(wǎng)絡(luò)的擬合能力有限,并不能對(duì)距離做出較為準(zhǔn)確的預(yù)測(cè),,故舍去了這組數(shù)據(jù),,主要分析方位角和俯仰角這2組輸出數(shù)據(jù)。圖4為100組預(yù)測(cè)數(shù)據(jù)的方位角預(yù)測(cè)誤差,,誤差范圍為±5°,。圖5為100組預(yù)測(cè)數(shù)據(jù)的俯仰角預(yù)測(cè)誤差,誤差范圍為±4°,。


3.2 仿真結(jié)果分析與實(shí)驗(yàn)驗(yàn)證
     傳統(tǒng)的聲源定位方法是利用幾何關(guān)系,,建立一組時(shí)延和聲源坐標(biāo)的方程組,通過(guò)解方程組得到時(shí)延和聲源坐標(biāo)的數(shù)值關(guān)系,。在解方程組的過(guò)程中,,大都假設(shè)聲源位于遠(yuǎn)場(chǎng)且聲音信號(hào)以平面波傳播,以此來(lái)約減得到近似結(jié)果,。但當(dāng)聲源位于近場(chǎng)時(shí),,即當(dāng)麥克風(fēng)之間的距離相對(duì)于聲源到麥克風(fēng)的距離較大時(shí),這種假設(shè)就不再成立了,。如果仍然用近似的結(jié)果進(jìn)行計(jì)算,,那么得到的數(shù)據(jù)與真實(shí)數(shù)據(jù)相比就不僅是誤差較大了,,而是錯(cuò)誤的。
  用于BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)的100組輸入輸出數(shù)據(jù)是在2 000組樣本數(shù)據(jù)中隨機(jī)選擇的,,遠(yuǎn)場(chǎng)和近場(chǎng)的聲源位置都有,。從Matlab仿真得到的圖形來(lái)看,誤差分布較均勻,,說(shuō)明并沒(méi)有因?yàn)槭墙鼒?chǎng)聲源神經(jīng)網(wǎng)絡(luò)就出現(xiàn)大的預(yù)測(cè)誤差,,表明該神經(jīng)網(wǎng)絡(luò)無(wú)論是近場(chǎng)還是遠(yuǎn)場(chǎng)都可以預(yù)測(cè)目標(biāo)聲源的方位角和俯仰角。為了進(jìn)一步驗(yàn)證網(wǎng)絡(luò)在近場(chǎng)對(duì)聲源的定向情況,,選取目標(biāo)聲源范圍為0.1 m~0.5 m的空心球體內(nèi)的點(diǎn),,用已訓(xùn)練好的BP網(wǎng)絡(luò)再次進(jìn)行預(yù)測(cè)。預(yù)測(cè)的方位角誤差和俯仰角誤差分別如圖6,、圖7所示,。近場(chǎng)方位角預(yù)測(cè)誤差大部分在±5°以內(nèi),有個(gè)別樣本點(diǎn)的誤差較大甚至預(yù)測(cè)錯(cuò)誤,,這是由于選取的樣本點(diǎn)離坐標(biāo)原點(diǎn)太近造成的,,不影響實(shí)際應(yīng)用。近場(chǎng)俯仰角預(yù)測(cè)誤差結(jié)果與圖4,、圖5的預(yù)測(cè)結(jié)果很相似,,誤差范圍仍然是±4°。


    在機(jī)器人實(shí)驗(yàn)平臺(tái)上驗(yàn)證該神經(jīng)網(wǎng)絡(luò)的性能時(shí),,以室內(nèi)拍手聲作為聲源,,大小約70 dB,背景噪聲約30 dB,。機(jī)器人能辨別出聲源的方向并向其靠近,,證明了該四元麥克風(fēng)陣列可以使移動(dòng)機(jī)器人實(shí)現(xiàn)較好的聲源定向和跟蹤。
    本論文應(yīng)用四元麥克風(fēng)陣列進(jìn)行移動(dòng)機(jī)器人的聲源定向研究,,設(shè)計(jì)了一個(gè)雙隱層的BP神經(jīng)網(wǎng)絡(luò),。經(jīng)Matlab仿真證明,輸入獲取的時(shí)延數(shù)據(jù),,可以實(shí)現(xiàn)近場(chǎng)和遠(yuǎn)場(chǎng)的目標(biāo)聲源定向,,并且在機(jī)器人本體上進(jìn)行了實(shí)驗(yàn)測(cè)試,進(jìn)一步驗(yàn)證了其實(shí)用性,。但是由于網(wǎng)絡(luò)擬合能力有限,,并不能很好地預(yù)測(cè)聲源的空間距離,因此,,如何實(shí)現(xiàn)對(duì)空間距離的準(zhǔn)確預(yù)測(cè)是下一步的重點(diǎn)研究任務(wù),。
參考文獻(xiàn)
[1] 傅薈璇,趙紅. Matlab神經(jīng)網(wǎng)絡(luò)應(yīng)用設(shè)計(jì)[M]. 北京:機(jī)械工業(yè)出版社,,2010.
[2]飛思科技產(chǎn)品研發(fā)中心. 神經(jīng)網(wǎng)絡(luò)與Matlab 7實(shí)現(xiàn)[M].北京:電子工業(yè)出版社,,2005.
[3] 周開(kāi)利,,康耀紅.神經(jīng)網(wǎng)絡(luò)模型及其Matlab仿真程序設(shè)計(jì)[M]. 北京:清華大學(xué)出版社,2005.
[4] 張良均,曹晶,,蔣世忠.神經(jīng)網(wǎng)絡(luò)使用教程[M].北京:機(jī)械工業(yè)出版社,,2008.
[5]吳仕勇. 基于數(shù)值計(jì)算方法的BP神經(jīng)網(wǎng)絡(luò)及遺傳算法的優(yōu)化研究[D].昆明:云南師范大學(xué),2006.
[6] HAGAN M T, DEMUTH H B, BEALE M H. Neural network design[M]. 北京:機(jī)械工業(yè)出版社,,2002.
[7] AARABI P, ZAKY S. Robust sound localization using multi-source audiovisual information fusion[J]. Information Fusion ,2001(2):209-223.
[8] LIN Z, XU B. Sound source localization based on microphone array[J].Electro-acoustic technology,2004(5):19-24.
[9] 余立雪.神經(jīng)網(wǎng)絡(luò)與實(shí)例學(xué)習(xí)[M].北京:中國(guó)鐵道出版社,,1996.
 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。