一種機器人定位聲源的方法與流程
2023-04-29 23:50:46 1

本發明涉及機器人聽覺技術領域,具體是一種機器人定位聲源的方法。
背景技術:
高方向性的單麥克風通常只能拾取一路信號,而麥克風陣列系統可以採集多路信號。雖然麥克風陣列是對單個目標的數據採集,但由於各麥克風位置的不同,它採集的數據在時域和頻域上必然存在某些差異。採用多個麥克風構成一個麥克風陣列,然後進行數位訊號處理,通過多路信號的數據融合技術,就可以提取出所需要的信息,估算出聲源的位置。目前常用的聲源定位方法是時延估計:首先傳感器接收信號,經過計算機數位化;然後利用數學方法對這些數據進行處理,也就是估計出信號到達各個傳感器的相對時延;最後利用這個時延估計值,通過數學計算確定出聲源的位置。時延估計的算法有很多,在實際中用的較為廣泛且相對簡單的一種算法是廣義互相關函數法。廣義互相關函數的基本原理是:求得兩組信號間的互功率譜,然後在頻域內給予不同的加權運算,最後再反變換到時域,得到兩組信號之間的互相關函數,互相關函數的極值所對應的時間就是兩組信號間的時延。一般只需要兩個獨立的時延估計值,三維的情況需要三個獨立的時延估計值。每個時延估計值對應一個二次、三次方程,求解這些方程組就可以就出聲源的坐標,但這個坐標實際上也是估計值,存在一定的誤差,許多的仿真研究也證明,該算法適合於單個聲源的定位,在複雜的噪聲環境裡,需要結合其他聲源定位方法,綜合判斷,才能具備一定的準確性。
基於傳聲器陣列的聲源定位技術得到廣泛的應用,隨著機器人技術的發展,人們希望智能化機器人可以服務於人們的日常生活。之前人們對智慧機器人技術的發展主要集中在移動系統和視覺系統上,缺少人機之間的交流和溝通,因此在人類與機器人之間建立一個有效的溝通方式是非常必要的。如機器人的聽覺注意機制可以對外界的聲音首先發起響應,進而引導機器人對聲音目標進行觀察。聽覺系統還可以引起機器人的其他感官的注意,這種多信息融合技術已經成為一個重要的研究方向。用於人機互動的機器人聽覺系統的核心構成之一便是聲源定位技術。當一個機器人的使用者和智慧機器人進行語言的交流時,機器人能很快發現這個使用者或是找到這個聲源的位置。除此之外,它還能在黑暗的環境中通過聲音信號尋找聲源,或是在複雜的環境中尋找危險的聲源。在人機互動設備中,聽覺系統水平的高低已經成為智能化水平的重要標誌之一。對聲源定位的準確程度是影響聽覺系統水平的重要因素。
技術實現要素:
本發明要解決的問題是提供一種機器人定位聲源的方法,該方法能夠實現機器人對聲源較為準確的定位。
本發明的機器人定位聲源的方法,包括以下步驟:
1)在機器人上設置若干面向不同方位的聲源採集裝置,設定聲強閾值;
2)聲強達到設定的聲強閾值,聲源採集裝置輸出若干路模擬信號,並將所述模擬信號轉換為待處理數位訊號;
3)對待處理數位訊號進行傅立葉變換;
4)計算待處理數位訊號的平均功率譜強度;
5)對各路聲源信號功率譜強度平均值進行排序;
6)根據各路信號功率譜強弱順序估算出聲源位置。
為了更加準確計算生源位置,所述步驟3)之後的步驟可替換為如下過程:
41)對快速傅立葉變換後的聲源信號進行互功率譜計算;
51)對各路聲源信號互功率譜進行頻域加權運算;對加權運算後的信號進行反快速傅立葉變換,獲得本幀互相關函數;
61)峰值檢測,獲得聲源信號延遲;
71)根據聲源信號的時延,和常溫下聲音在空氣中的傳播速度,計算出聲源到兩個聲源採集裝置之間的距離差;各聲源採集裝置空間坐標已知為(Xi,Yi,Zi),其中(i=1,2,···N),N為總的陣元個數,聲源的空間坐標為(X,Y,Z),由空間解析幾何可列出以下方程組:
其中C為聲速,ti為聲波到達各聲源採集裝置的時間,通過時延估計計算可以確定:
求解以上方程組,得出聲源的空間坐標(X,Y,Z),即求出了聲源的空間位置。
進一步的,對四路數位訊號分別進行快速傅立葉變換(FFT)的過程為:數據加窗得到有限長序列xN(n)直接求傅立葉變換,得頻譜XN(eiω):
取頻譜幅度的平方,並除以N,以此作為對x(n)真實功率譜Sx(eiω)的估計:
進一步的,上述技術方案中,所述對快速傅立葉變換後的信號進行互功率譜計算的過程為:
假設Xi(n)和Xj(n)為2個傳聲器接收的信號,對信號Xi(n)和Xj(n)進行前置濾波並求傅立葉變換,得到它們之間的互功率譜Gij(ω):
進一步的,所述步驟51)的過程為:
式中φ(ω)為加權函數,Gij(ω)為兩個信號的互功率譜,ejωτ為復指數,dω為頻域的
微分,為了使互相關函數有尖銳的峰值,需對輸入信號進行歸一化,選擇加權函數
φ(w)=1/|Gij(w)|
故在理想模型下互相關函數可以表示為:
取得峰值的時刻τ=τj-τi,即為兩信號的時延;聲源與兩傳感器之間存在距離差ΔL=C*τ,因此聲源發出的聲波到達兩傳感器的信號在時間上存在τ=ΔL/C;信號Si相對於Sj落後時間τ,即在忽略噪聲的理想情況下i,j傳感器所接收的信號滿足Si=Sj(t-τ),也就是信號之間存在時間延遲。
所述聲源採集裝置數量為4個,也可以選擇8個等等。
以上技術方案可以看出,結合聲源信號的空間方位和聲源信號的平均功率譜強度估算出聲源的大致方位。因麥克風陣列時一般位於機器人的頭部的,因此聲源定位的運算結果會通過串口發送給機器人的頭部表情控制板,表情控制板再將聲源定位的結果發送給機器人機互動裝置,比如PAD板,以供機器人決策並做出相應的動作。
本發明的機器人定位聲源的方法,利用時延估計和功率譜強度比較相結合的方法,通過各個聲源採集裝置接收到聲音的功率譜強度和各個聲源採集裝置的空間方位估算出聲源的大致方位,基本可以準確額估算聲源的大致方位。功率譜強度比較是指計算出各個聲源採集裝置在特定頻率區間平均功率譜強度,而平均功率譜強度與聲源到各個聲源採集裝置距離成一定反比關係,即平均功率譜強度大的點離聲源採集裝置距離較近,平均功率譜強度小的點離聲源採集裝置距離較遠。
本發明的機器人定位聲源的方法能夠較為準確的對機器人周圍的聲源進行定位,為機器人的進一步行動提供方位依據,提高了機器人人機互動的智能性。
附圖說明
圖1是本發明廣義時延估計算法流程圖;
圖2是時延信號產生的原理圖;
圖3是由時延信號確定空間方位的原理圖;
圖4是互功率譜信號波形圖;
圖5是聲源採集裝置採樣電路原理圖;
圖6是聲源定位運算單元電路原理圖;
圖7是機器人聲源定位系統模塊圖;
圖8是本發明機器人定位聲源的方法流程圖;
圖9是本發明實施例中四個麥克風方位示意圖;
圖10是本發明實施例中聲源定位板在機器人上的位置示意圖;
圖11是本發明實施例中聲源定位模塊在機器人頭蓋骨內的位置示意圖;
圖12是本發明實施例中聲源定位模塊在機器人上的位置示意圖。
具體實施方式
下面結合附圖,對本發明提出的一種機器人定位聲源的方法進行詳細說明。如圖7、10、11和12所示,本發明的定位聲源的方法,一般可用於具有聲源定位模塊的機器人,也可用於其它機器人。聲源定位模塊可為於機器人的頭部,也可以位於其他部位,特別是對於非類人機器人。聲源定位模塊內有聲源定位控制板,可以控制聲源採集裝置,聲源採集裝置一般採用麥克風。聲源定位控制板與表情控制系統板和人機互動系統板連接。聲源採集裝置採樣電路原理如圖5所示,聲源定位運算單元電路原理如圖6所示。
如圖1、2、3、8和9所示,本發明的機器人定位聲源的方法,包括以下步驟:
1)在機器人上設置若干面向不同方位的聲源採集裝置,設定聲強閾值;聲源採集裝置數量不限制,本實施例中選擇4個麥克風為例,4個麥克風與聲源距離各不相同;
2)聲強達到設定的聲強閾值,聲源採集裝置輸出若干路模擬信號,並將所述模擬信號轉換為待處理數位訊號;
3)對待處理數位訊號進行傅立葉變換:
數據加窗得到有限長序列xN(n)直接求傅立葉變換,得頻譜XN(eiω):
取頻譜幅度的平方,並除以N,以此作為對x(n)真實功率譜Sx(eiω)的估計:
4)計算待處理數位訊號的平均功率譜強度;
5)對各路聲源信號功率譜強度平均值進行排序;
6)根據各路信號功率譜強弱順序估算出聲源位置。
因麥克風陣列時位於機器人的頭部的,因此聲源定位的運算結果會通過串口發送給機器人的頭部表情控制板,表情控制板再將聲源定位的結果發送給機器人機互動PAD板,以供機器人決策並作出相應的動作,其信號流如圖7示意,聲源定位系統軟體運算流程如圖8示意;如圖10,11,12所示聲,源定位模塊位於機器人的頭部,四個麥克風成矩形四角緊貼於頭蓋骨下。
為了更加準確計算生源位置,所述步驟3)之後的步驟可替換為如下過程:
41)對快速傅立葉變換後的聲源信號進行互功率譜計算,假設Xi(n)和Xj(n)為2個傳聲器接收的信號,對信號Xi(n)和Xj(n)進行前置濾波並求傅立葉變換,得到它們之間的互功率譜Gij(ω):
計算結果如圖4所示。
如圖4所示,51)對各路聲源信號互功率譜進行頻域加權運算;對加權運算後的信號進行反快速傅立葉變換,獲得本幀互相關函數:
式中φ(ω)為加權函數,為了使互相關函數有尖銳的峰值,需對輸入信號進行歸一化,選擇加權函數
φ(w)=1/|Gij(w)|
故在理想模型下互相關函數可以表示為:
取得峰值的時刻τ=τj-τi,即為兩信號的時延;聲源與兩傳感器之間存在距離差ΔL=C*τ,因此聲源發出的聲波到達兩傳感器的信號在時間上存在τ=ΔL/C;信號Si相對於Sj落後時間τ,即在忽略噪聲的理想情況下i,j傳感器所接收的信號滿足Si=Sj(t-τ),也就是信號之間存在時間延遲。
61)峰值檢測,獲得聲源信號延遲;
71)根據聲源信號的時延,和常溫下聲音在空氣中的傳播速度,計算出聲源到兩個聲源採集裝置之間的距離差;各聲源採集裝置空間坐標已知為(Xi,Yi,Zi),其中(i=1,2,···N),N為總的陣元個數,聲源的空間坐標為(X,Y,Z),由空間解析幾何可列出以下方程組:
其中C為聲速,ti為聲波到達各聲源採集裝置的時間,通過時延估計計算可以確定:
求解以上方程組,得出聲源的空間坐標(X,Y,Z),即求出了聲源的空間位置。
以上實施例僅用以說明本發明的技術方案,並非用於限定本發明的保護範圍。凡在本發明的精神和原則之內,所做的任何修改、等同替換、改進等,其均應涵蓋在本發明的權利要求範圍當中。