利用MEMS麥克風(fēng)陣列定位并識別音頻或語音信源的技
1.前言
本文引用地址:http://www.ex-cimer.com/article/201609/303815.htm自動語音識別、語音模式識別和說話人識別及確認(rèn)等應(yīng)用對噪聲十分敏感,信源定位識別是音頻和語音信號捕捉處理應(yīng)用的一個關(guān)鍵的預(yù)處理功能。特別是基于微機(jī)電系統(tǒng)(MEMS) 的麥克風(fēng)陣列出現(xiàn)后,麥克風(fēng)陣列音頻定位方案引起科研企業(yè)和開發(fā)人員的廣泛關(guān)注。
目前業(yè)界正在使用MEMS麥克風(fēng)陣列子系統(tǒng)開發(fā)嵌入式音頻定位、自動語音識別和自動說話人識別解決方案,聲音識別定位是我們識別確認(rèn)他人身份的基本功能,當(dāng)我們聽到有人講話時,會將頭轉(zhuǎn)向說話人,查看說話人。
音源定位是自動語音識別和自動說話人識別系統(tǒng)的一個重要環(huán)節(jié),對于提高語音識別系統(tǒng)的性能至關(guān)重要。麥克風(fēng)陣列可捕捉從不同方向傳來的聲音,通過算法運(yùn)算使麥克風(fēng)指向某一個特定方向,放大從該方向捕捉到的音頻信號,同時衰減從其它方向捕捉的音頻信號,整個動作就像一個智能麥克風(fēng)。
圖 1.綜合利用麥克風(fēng)音源互相關(guān)性(CC)、相變(PHAT)和最大相似性處理(ML)技術(shù)的音源定位
2.系統(tǒng)框架
整個系統(tǒng)由以下幾個子系統(tǒng)組成:音源方向測定、數(shù)據(jù)融合、自動語音識別和自動說話人確認(rèn)。其中,音頻方向測定子系統(tǒng)基于麥克風(fēng)陣列,運(yùn)行三個不同的音頻方向估算算法;數(shù)據(jù)融合子系統(tǒng)負(fù)責(zé)推斷方向,自動語音識別子系統(tǒng)利用傳入的音頻信號增強(qiáng)主音源信號強(qiáng)度,衰減主音源周圍的其它音頻信號。最后,自動說話人確認(rèn)子系統(tǒng)識別某些關(guān)鍵詞匯,再利用相關(guān)特征與說話人匹配。
圖 2. 系統(tǒng)框架
如果語音識別任務(wù)沒有成功,則反饋給數(shù)據(jù)融合系統(tǒng),估算新方向傳入的語音,然后驅(qū)動麥克風(fēng)陣列指向該方向。
2.1 語音識別和說話人識別
語音特征提取(27 LPC-倒普系數(shù))需要確定語音的端點,將語音分成數(shù)個短禎(每禎20 ms),通過一個DTW模式對準(zhǔn)算法與一組參考語音(模板)匹配。然后,應(yīng)用歐氏距離測量法進(jìn)行相似性評估。
圖 3. 特征提取、模式匹配和評分是說話人語音識別確認(rèn)任務(wù)的主要環(huán)節(jié)
說話人身份評分采用的是動態(tài)時間規(guī)整近鄰(DTW-KNN)算法的距離測量方法,即動態(tài)時間規(guī)整測量算法與近鄰決策算法的合并算法。這個算法需要使用均方根、過零率、自動相關(guān)和倒普線性預(yù)測系數(shù)。使用歐氏距離算法計算成本函數(shù),使用KNN 算法計算最小距離匹配度 k。
3.MEMS麥克風(fēng)陣列
我們采用STM32F4微控制器和MEMS麥克風(fēng)開發(fā)一個硬件音頻信號同步采集處理子系統(tǒng),其信號捕捉能力相當(dāng)于8個采樣率高達(dá)48 KHz的麥克風(fēng) 。
圖 4. 采用STM32F4微控制器和MEMS麥克風(fēng)的硬件音頻信號同步采集處理子系統(tǒng)
3.1 MEMS技術(shù)
MEMS技術(shù)的主要特性是在能夠同一芯片表面集成微電子和微機(jī)械單元,在同一封裝內(nèi)整合不同的功能。這樣,過去分別由傳感器、執(zhí)行器(例如,射流管理或機(jī)械交互)和邏輯、控制單元完成的不同功能,今天可以整合在同一個封裝內(nèi)。從生化分析,到慣性系統(tǒng),從機(jī)械傳感器,到音頻和聲波傳感器, MEMS產(chǎn)品覆蓋很多應(yīng)用領(lǐng)域。
3.2 MEMS麥克風(fēng)和音頻編碼
MEMS麥克風(fēng)尺寸雖然比其它技術(shù)麥克風(fēng)小,但是,從物理和機(jī)械角度看,卻具備標(biāo)準(zhǔn)駐極體麥克風(fēng)的全部功能,其核心部件是一個振膜,振膜和固定框架共同組成一個可變電容器。當(dāng)聲波引起振膜變形時,電容會發(fā)生變化,從而導(dǎo)致電壓變化。
被捕捉到的信號的后期處理,即功率放大和模數(shù)轉(zhuǎn)換過程,都是在同一芯片上完成,因此,麥克風(fēng)輸出是高頻PDM信號。在脈沖密度調(diào)制過程,邏輯1對應(yīng)一個正 (+A) 脈沖,而邏輯0對應(yīng)一個負(fù)(-A)脈沖。因此,假設(shè)輸入一個周期的正弦音頻,當(dāng)輸入電壓在最大正振幅時,輸出為一個由“1”組成的脈沖序列;當(dāng)輸入電壓在最大負(fù)振幅時,輸出則是一個由“0”組成的序列。當(dāng)穿過0振幅時,聲波在1和0序列之間快速變化。如果方法正確,PDM可通過數(shù)字方法給高品質(zhì)音頻編碼,而且實現(xiàn)方法簡易,成本低廉。因此,PDM比特流是MEMS麥克風(fēng)常用的數(shù)據(jù)輸出格式。
另一方面,PCM是一個非常著名的音頻編碼標(biāo)準(zhǔn),以相同的間隔對信號振幅定期采樣,在數(shù)字步進(jìn)范圍內(nèi),每個采樣被量化至最接近值。決定比特流是否忠實原模擬信號的是PCM比特流的兩個基本屬性:采樣率,即每秒采樣次數(shù);位寬,即每個采樣包含的二進(jìn)制數(shù)個數(shù);通過降低采樣率(降低十分之一)和提高字長,可以將PDM編碼信號轉(zhuǎn)成PCM信號,PDM數(shù)據(jù)速率與降低十分之一的PCM采樣率的比值被稱為降采樣率。因此,對于N:1降采樣率,只要每N個間隔采樣一次 (不考慮剩余的N-1),即可完成降低十分之一的采樣過程。
3.3 麥克風(fēng)陣列
從硬件角度看,這款產(chǎn)品基于STM32F407VGT6高性能微控制器,能夠通過8個MEMS麥克風(fēng)采集信號。STM32F4微控制器基于工作頻率最高 168 MHz的高性能ARM® Cortex-M4 32 RISC處理器內(nèi)核,集成高速嵌入式存儲器(閃存容量最高1 MB, SRAM容量最高192KB)以及標(biāo)準(zhǔn)和先進(jìn)的通信接口,例如,I2S全雙工接口、SPI、 USB FS/HS和以太網(wǎng)。
STM32 F4系列是意法半導(dǎo)體首批基于支持FPv4-SP 浮點擴(kuò)展運(yùn)算的ARM Cortex-M4F內(nèi)核的STM32微控制器,這使得該器件適用于重負(fù)荷算法,浮點單元完全支持單精度加法、減法、乘法、除法和累加以及均方根運(yùn)算,還提供定點和浮點數(shù)據(jù)格式轉(zhuǎn)換和浮點常數(shù)指令,完全兼容ANSI/IEEE Std 754-1985二進(jìn)制浮點算術(shù)標(biāo)準(zhǔn)。為提高ARM架構(gòu)的數(shù)字信號處理和多媒體應(yīng)用性能,指令集還增加了DSP指令集。新指令是數(shù)字信號處理架構(gòu)常用指令,包括帶符號乘加變化(variations on signed multiply–accumulate)、飽和加減和前導(dǎo)零計數(shù)。
評論