基于麥克風(fēng)陣列聲源定位系統(tǒng)的FPGA實現(xiàn)
摘要:論述了基于麥克風(fēng)陣列的聲源定位技術(shù)的基本原理,給出了利用FPGA實現(xiàn)系統(tǒng)各模塊的設(shè)計方法。重點介紹了其原理和模塊的電路實現(xiàn),給出的基于FPGA設(shè)計實驗結(jié)果表明,系統(tǒng)最大限度發(fā)揮了FPGA的優(yōu)勢、簡化了系統(tǒng)設(shè)計、縮短了設(shè)計周期、符合設(shè)計要求。
關(guān)鍵詞:聲源定位;時延估計;FFT;CORDIC
聲源定位,即確定一個或多個聲源在空間中的位置,是一個有廣泛應(yīng)用背景的研究課題?;?a class="contentlabel" href="http://butianyuan.cn/news/listbylabel/label/麥克風(fēng)陣列">麥克風(fēng)陣列的聲源定位技術(shù)在視頻會議、聲音檢測及語音增強等領(lǐng)域有重要的應(yīng)用價值。
聲源定位算法目前主要有3類:第一類算法是基于波束形成的方法。這種算法能夠用于多個聲源的定位,但是它存在著需要聲源和背景噪聲先驗知識以及對初始值比較敏感等缺點;第二類算法是基于高分辨率譜估計的方法。這種算法理論上能夠?qū)β曉捶较蜻M行有效估計,但是計算量較大,且不適于處理人聲等寬帶信號;第三類算法是基于到達時間差的方法。由于這種方法原理簡單,計算量較小,且易于實現(xiàn),在聲源定位系統(tǒng)中得到了廣泛應(yīng)用。根據(jù)以上介紹,本文決定選擇第三類即基于到達時間差的定位方法。
基于到達時間差聲源定位算法包括2個步驟:
1)先進行時延估計,從中獲得傳聲器陣列中相應(yīng)陣元對之間的聲音到達時延。常用的方法有最小均方自適應(yīng)濾波法、互功率譜相位法和廣義互相關(guān)函數(shù)法。
2)利用時延估計進行方位估計,主要方法有角度距離定位法、球形插值法、線性插值法和目標(biāo)函數(shù)空間搜索定位法。與其他幾種方法相比,基于廣義互相關(guān)函數(shù)的方法計算量小、計算效率高。優(yōu)點明顯,故時延估計采用此方法。方位估計則采用精度適中、易于實現(xiàn)的角度距離定位法。
FPGA具有高速處理能力,而且開發(fā)靈活,易于在線系統(tǒng)升級,能較大縮短系統(tǒng)的開發(fā)周期。為此,采用Ahera公司的FPGA處理器件實現(xiàn)本系統(tǒng)。
1 系統(tǒng)的基本原理及流程圖
算法的結(jié)構(gòu)流程如圖1所示,首先由麥克1和2獲得說話人的語音信號,再經(jīng)過A/D采樣和低通濾波器,最后得到待處理輸入語音信號,可以分別記為x1(n)和x2(n)。
對求傅里葉反變換,即可以得到麥克1和2間的廣義互相關(guān)函數(shù)為
其峰值就是麥克1和2之間的時延。得到多對麥克間的時延后,由角度距離定位法,就可得到聲源位置。
評論