一種低成本低功耗的聲源定向方法
【技術領域】
[0001] 本發明屬于聲學信號處理領域,尤其是設及一種低成本低功耗的聲源定向方法, 該方法利用低成本硬件平臺實現較高精度和可靠性的聲源定向算法。
【背景技術】
[0002] 所謂聲源定向是指通過多個麥克風組成一個陣列,采集聲音信號,利用信號處理 技術對其數據進行分析與處理,最終得到聲源相對陣列參考方向的夾角。
[0003]麥克風陣列定向技術得到廣泛的應用。例如,視頻會議系統、公共場所異常聲源定 位、機器人定位、銀行安全監控、基于聲音的跟蹤攝像系統、助聽器聲源定位、機械故障檢 巧。、噪聲源定位等等。
[0004]隨著微處理技術的不斷進步,嵌入式忍片越來越趨向于多樣化和微型化。然而,由 于定向算法的復雜性,目前聲源定向的硬件實現大部分都基于高性能的DSP忍片,成本較 高、功耗較高,使得聲源定向系統的成本與目前日益廉價的視頻監控系統難W匹配使用。例 如,一臺普通的攝像頭僅需數百元,而一套4通道的麥克風陣列定向系統則動輒數千元,甚 至上萬元。因此,通過對復雜的陣列信號處理方法進行適應性改造和工程化,研究其在低端 單片機上的實現方法途徑,W期達到較高精度的聲源定向效果,具有重要的實際意義。
【發明內容】
[0005]為解決現有存在的技術問題,本發明的目的是提供一種低成本低功耗的聲源定向 方法,解決傳統聲源定向方法硬件成本高、功耗大、測量精度不高的技術問題。
[0006]為達到上述目的,本發明的技術方案是: 一種低成本低功耗的聲源定向方法,所述聲源定向方法的硬件系統包括一個單片機、 多個麥克風、多個運算放大器和一個通信接口忍片;各個麥克風分別通過運算放大器與單 片機的AD接口連接,單片機通過通信接口忍片與計算機連接; 所述聲源定位方法的具體步驟如下: 步驟一:對多個麥克風進行一致性篩選; 步驟二:選取四個經過步驟一篩選的麥克風,布置形成十字陣列,將十字陣列對角線上 的麥克風兩兩配對,采用到達時間差的聲源定向方法對聲源進行定向; 步驟Ξ:將計算結果輸出至通信端口。
[0007]所述步驟一中對多個麥克風進行一致性篩選,其具體方法如下:將一個揚聲器、一 個功率放大器、一個數據采集卡、一個麥克風放大濾波器依次連接,放置于密閉隔音環境 中;將多個待篩選的麥克風逐個設置在麥克風固定柱上并與麥克風放大濾波器連接測試, 待篩選麥克風與揚聲器正對設置;數據采集卡外接計算機; 揚聲器發出固定的寬帶聲音信號,Μ個待篩選麥克風在同一個條件下分別錄制Μ次,待 篩選麥克風將接收到的聲信號轉化為電信號,經放大濾波器后計為Xl(t)、X2(t)、……、XM (t),電信號由數據采集卡通過計算機采集;各待測麥克風經信號采集后,Μ路信號每2路進 行配對互相關系數計算,當某兩個待篩選麥克風信號的互相關系數大于設定口限時,運兩 個待篩選麥克風的一致性滿足篩選要求。
[0008]所述步驟二中采用到達時間差的聲源定向方法對聲源進行定向,其具體步驟如 下: 步驟1)、確定檢測口限,采用恒虛警的檢測方法設定檢測口限,當信號強度超過檢測口 限時,則判定有目標信號存在,開始進行信號采集與數據處理,否則繼續采集與判斷; 上述確定檢測口限的方法如下: 將AD轉化的數據從0到最大值AD_Max分為N個等分,稱為N個段;準備一個數組E,長度為N;運個數組依次存放數據采集中落入各段的數據的個數;其中數組下標0對應的是最小的 段,N對應最大的段; 對每一路麥克風信號,進行如下運算:每采集到一個數據,便判斷該數值處于哪個段, 然后令該段對應的數組中的元素加1;依此類推,直至用于計算檢測口限的數據個數L采集 完成; 從數組的最大端E(N)開始累加,SE=E(N)+E(N-1)+……+E化),每加一次,就與LXP的 值相比較,P為虛警概率,直至累加和SE大于LXP;此時,記錄數值的下標k;kXAD_MAX/N就 是計算出的檢測口限值; 步驟2)、時延估計,利用廣義互相關時延估計算法對對角線上相互垂直的兩對麥克風 對的輸出進行時延估計: 設聲速C,采樣頻率為fS,麥克風間距d,帖長為K; 計算最大時延點數nmax=壯/c,需要將時延點數-nmax到+nmax之間的結果保存,為此設置 一個長度為2nmax+l的數組A,用于存放下面的計算結果; 將陣元1數組中的數據Xi(i)不變,右移陣元3數組X3(i)中的數據右移0格、1格、……、nmax格,依此運用單片機自有的專用硬件乘法器對錯位后的兩個數組對應的數據進行相乘 并求和,存于數組A(nmax+1)~A(化max+1)中,再將陣元3數組中的數據左移1格、2格,……,+1 格,再進行相乘求和存放于數組A(nmax)~A( 1 )中; 在數組A中找出最大值對應的下標,所對應的下標值就是估計的時延點數η; 步驟3)、獲得定向結果,待測聲源的定向利用時延估計的結果,基于已知的采樣頻率和 陣元間距,運用幾何方法求出聲源的方向,然后,再把兩對麥克風各自所得結果進行融合, 形成最終定向結果: 若求得時延點數為η,則聲源方向角為目=acos(nc/(fd))。
[0009]所述步驟2),兩對麥克風的輸出信號出現飽和失真時,在進行廣義互相關時延估 計算法前進行如下步驟的數據處理: 步驟①、在AD采集過程中,實時判斷各路數據的大小,如有任何一路數據大于檢測口 限,則立刻將目前狀態標記為已經檢測到目標信號的狀態;接著,立刻開始緩存數組,直至 一帖數據存滿為止; 步驟②、在存儲數據的過程中,將每個采集到的數據與AD轉換最大值作比較;若出現任 意一路數據與單片機AD轉換最大值相同,或此現象在指定時間內出現若干次時,則停止后 續AD采集,不足一帖的部分補零。
[0010] 本發明的有益效果是: 本發明提出的聲源定向計算方法簡單、高效,運算能力和對處理器資源的要求極低,可W滿足低成本實現聲源定向的要求。
【附圖說明】
[0011] 圖1是本發明的麥克風篩選設備示意圖; 圖2是本發明的聲源定向設備示意圖; 圖3是本發明的麥克風十字陣列示意圖; 圖4是本發明聲源定向方法適用于單片機的定向算法流程圖。
【具體實施方式】
[0012] 下面結合實施例對本發明進行進一步的說明。
[0013] (1)聲源定向裝置的硬件組成 在一個實施例中,其聲源定向裝置的組成如圖2所示,包括一個單片機、多個麥克風、多 個運算放大器和一個通信接口忍片;各個麥克風分別通過運算放大器與單片機的AD連接, 單片機通過通信接口忍片與計算機連接,計算機也可W是其它數據接收設備。
[0014] 單片機采用TI公司低成本、低功耗的MSP430F1611單片機,麥克風采用化nasonic 公司的WM系列駐極體麥克風、放大濾波采用低成本的運算放大器MC33204忍片,通信接口忍 片選用MAX3232忍片。
[0015] (2)麥克風篩選裝置及篩選過程 在本發明的一個實施例中,麥克風篩選裝置的布置方式如圖1所示:將一個品質良好的 揚聲器、一個音頻功率放大器、一個高速數據采集卡、一個麥克風放大濾波器和一個待篩選 麥克風依次連接,放置于密閉隔音環境中;待篩選麥克風設置在麥克風固定柱上,待篩選麥 克風與揚聲器正對放置;數據采集卡外接計算機;上述的數據采集卡使用NI公司的PCI-6110數據采集卡。
[0016] 計算機產生特定的音頻信號通過PCI-6110數據采集卡的DA產生模擬信號,經功率 放大器放大后由揚聲器發出聲音;同時,待篩選麥克風將接收到的聲信號轉化為電信號,經 前置麥克風放大器濾波器放大,由PCI-6110數據采集卡采集后送至計算機存儲,采樣率為 16KHz〇
[0017]當有Μ個麥克風時,則在同一個條件下分別錄制Μ次,采集到信號xi(t)、X2 (t)、……、XM(t);M路信號每2路進行配對,計算互相關系數;互相關系數大于指定口限的兩 路信號,表明其對應的麥克風增益和相位一致性很好,運樣篩選出的一批麥克風,能很好的 滿足實際應用的要求。運個口限可W設為0.7左右,就可W獲得較好的篩選結果。
[001引(3)聲源定向方法 本發明所提出的聲源定向的具體步驟如下: 第一步,使用麥克風篩選裝置對多個麥克風進行一致性篩選; 第二步,選取四個經過步驟一篩選的麥克風,布置形成十字陣列,如圖3所示,將十字陣 列對角線上的麥克風兩兩配對,采用到達時間差的聲源定向方法對聲源進行定向; 結合附圖4,上述第二步具體細分為如下步驟: 1)確定檢測口限 為了盡可能地減少對單片機資源的依賴,本發明采用恒虛警的檢測方法設定檢測口 限,當信號強度超過檢測口限時,則判定有目標信號存在,開始進行數據處理;否則繼續采 集與判斷。
[0019]對于單片機忍片,將AD轉化的數據從0到最大值AD_Max分為N個等分,稱為N個段。 準備一個數組E,長度為N。運個數組依次存放數據采集中落入各段的數據的個數。其中數組 下標0對應的是最小的段,N對應最大的段。
[0020] 對每一路麥克風信號,進行如下運算:每采集到一個數據,便判斷該數值處于哪個 段,然后令該段對應的數組中的元素加1。依此類推,直至用于計算檢測口限的數據個數L采 集完成。
[0021] 從數組的最大端E(N)開始累加,SE