《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 業(yè)界動態(tài) > 嵌入式實時英語語音識別系統(tǒng)的設(shè)計和實現(xiàn)

嵌入式實時英語語音識別系統(tǒng)的設(shè)計和實現(xiàn)

《電子技術(shù)應(yīng)用》
2008-03-31
作者:胡珊珊,劉 加,王國梁

  摘 要: 采用兩級識別網(wǎng)絡(luò),以連續(xù)隱含馬爾可夫模型為基本識別框架,基于一個100MIPS的16位定點DSP語音芯片平臺,實現(xiàn)了嵌入式非特定人、中等詞匯量英語" title="英語">英語孤立詞實時識別系統(tǒng)。
  關(guān)鍵詞: 語音識別 嵌入式系統(tǒng)" title="嵌入式系統(tǒng)">嵌入式系統(tǒng) 端點檢測" title="端點檢測">端點檢測 束搜索


  隨著移動設(shè)備的快速發(fā)展,迫切需要一種更友好、更便捷的用戶操作系統(tǒng)。自動語音識別系統(tǒng)" title="語音識別系統(tǒng)">語音識別系統(tǒng)能夠提供便利的人機交互,將成為一種主要方法。目前,實驗室環(huán)境中自動語音識別系統(tǒng)已經(jīng)取得了很好的效果,但需要很大的存儲空間和運算資源。當自動語音識別應(yīng)用于移動設(shè)備時,必須對模型和識別策略進行相應(yīng)改進,才能滿足其對運算速度、內(nèi)存資源和功耗的要求。為了解決這個問題,本文將結(jié)合英語語音的特點,設(shè)計并實現(xiàn)嵌入式英語語音識別系統(tǒng),完成中等詞匯量的孤立詞實時識別任務(wù)。
1 硬件平臺
  嵌入式系統(tǒng)的軟硬件高度結(jié)合,針對系統(tǒng)的特定任務(wù),要量體裁衣、去除冗余,使得系統(tǒng)能夠在高性能、高效率、高穩(wěn)定性的同時,保證低成本和低功耗。因此,系統(tǒng)硬件平臺的選用是影響系統(tǒng)整體性能的關(guān)鍵因素。系統(tǒng)采用Infineon公司Unispeech 80D51語音處理專用芯片作為核心的硬件平臺,該芯片集成了一個16位定點DSP核(OAK)、一個8位MCU核(M8051 E-Warp)、兩路ADC、兩路DAC、104KB的SRAM以及高靈活性的MMU等器件。其中DSP最高工作頻率可達100MHz,MCU最高工作頻率為50MHz。
  由于系統(tǒng)的語音處理專用芯片UniSpeech集成了大部分的功能單元,片外所需元件很少,因此系統(tǒng)硬件平臺的板級結(jié)構(gòu)非常簡單。圖1為硬件平臺的板級結(jié)構(gòu)圖。


  專用芯片只需外接:
  (1)EPROM:存放系統(tǒng)程序;
  (2)Flash Memory:存放語音識別系統(tǒng)需要的聲學模型參數(shù)和系統(tǒng)中的語音提示、語音回放數(shù)據(jù);
  (3)語音輸入器件:可直接外接麥克風,接收語音信號;
  (4)語音輸出器件:可直接外接揚聲器或耳機,輸出系統(tǒng)的提示音;
  (5)電源:通過電壓變換芯片,為電路板上各芯片提供需要的電壓;
  (6)USB接口:該板級語音識別模塊提供了USB接口,以提高該嵌入式系統(tǒng)和通用計算機系統(tǒng)之間數(shù)據(jù)交換的速度;
  (7)鍵盤:提供外接鍵盤接口,方便系統(tǒng)控制;
  (8)液晶:可外接一塊液晶顯示屏,以輸出識別結(jié)果;
  (9)其他設(shè)備接口:為了增強該語音信號處理模塊的功能擴展性,UniSpeech提供了豐富的I/O資源,共有100條通用I/O,系統(tǒng)也預留了這些I/O接口,以方便與其他設(shè)備連接。
2 算法研究
2.1 兩階段識別算法

  在英語語音識別系統(tǒng)中,常用的聲學模型基本單元是單詞(Word)、上下文無關(guān)音素(Monophone)[1]、上下文相關(guān)音素(Triphone,Biphone)和音節(jié)(Syllable)[2]。單詞模型由于其靈活性太差及計算時間和占用內(nèi)存隨待識別單詞數(shù)的增加而線性增長,所以在嵌入式語音識別系統(tǒng)中很少應(yīng)用。Monophone模型具有模型簡單、狀態(tài)數(shù)較少、識別速度快、內(nèi)存占用少且與識別詞匯量無關(guān)等優(yōu)點,但其對發(fā)音的相關(guān)性描述不夠精確,一選識別率不高。Triphone和Syllable模型對發(fā)音相關(guān)性能準確建模,但模型數(shù)量巨大、狀態(tài)數(shù)較多、識別速度慢、內(nèi)存占用多。為了解決內(nèi)存占用量與識別速度之間的矛盾,本文采用了兩階段搜索算法,其基本流程如圖2所示。


  在第一階段識別中,采用monophone模型和靜態(tài)識別網(wǎng)絡(luò),得到多候選詞條;在第二階段識別中,根據(jù)第一階段輸出的多候選詞條,構(gòu)建新的識別網(wǎng)絡(luò),采用triphone模型,進行精確識別,得到最終的識別結(jié)果。由于第二階段識別的詞條數(shù)較少,與只采用triphone模型的一階段識別相比,識別速度大大提高;同時,第二階段識別可重用第一階段的內(nèi)存資源,也減少了識別系統(tǒng)的內(nèi)存占用量。
2.2 特征提取與選擇
  在連續(xù)語音識別系統(tǒng)中,通常采用39維的MFCC(Mel Frequency Cepstral Coefficient)特征,甚至再加入一些特征。但是,考慮到嵌入式系統(tǒng)有限的硬件資源,在不降低識別率的基礎(chǔ)上,應(yīng)盡量減少特征的維數(shù)。本文采用最小互信息改變準則MMIC(Minimum Mutual Information Change)進行特征選擇。一階段采用22維MFCC特征(9 MFCC,6 ΔMFCC,4 Δ2MFCC,E,ΔE,Δ2E),二階段采用26維MFCC特征(10 MFCC,7 ΔMFCC,6 Δ2MFCC,E,ΔE,Δ2E)。
2.3 數(shù)據(jù)的輸入輸出
  對于硬件系統(tǒng),如果數(shù)據(jù)的讀入速度較慢,則對運算速度影響就很大。在保證系統(tǒng)高識別率的前提下,系統(tǒng)的內(nèi)存消耗量和識別時間常常是一對矛盾體,很難保證兩者同時達到理想狀態(tài)。如果僅僅考慮節(jié)省內(nèi)存,將每個詞條識別網(wǎng)絡(luò)和相應(yīng)的狀態(tài)逐個讀入,計算匹配分數(shù),這樣雖然可以最大限度地節(jié)省內(nèi)存的使用量,但是數(shù)據(jù)的多次讀入占用了大量時間,并且反復計算同一個轉(zhuǎn)移概率,也對識別時間影響很大。另一方面,如果僅僅考慮運算速度,一次性將所有詞條的識別網(wǎng)絡(luò)和所有狀態(tài)模型讀入內(nèi)存,雖然僅需一次數(shù)據(jù)讀入,運算速度大大提高,但卻對內(nèi)存提出了更高要求。為了更好地利用系統(tǒng)的硬件資源,本系統(tǒng)首先逐個讀入狀態(tài)模型,計算所有觀察矢量在各狀態(tài)模型下的輸出概率,存放在內(nèi)存中;然后逐條讀入識別網(wǎng)絡(luò),選取路徑似然度最高的詞條作為最終的識別結(jié)果。這樣綜合了前面兩種方案的優(yōu)點,適應(yīng)了硬件系統(tǒng)的要求。
2.4 兩階段端點檢測
  端點檢測是嵌入式語音識別中最基本的模塊。端點檢測是否準確直接影響系統(tǒng)的運算復雜度和系統(tǒng)的識別性能。因此在不增加復雜運算量的前提下,希望端點檢測能盡量準確,而且能適應(yīng)嵌入式系統(tǒng)多變的應(yīng)用環(huán)境。本文使用了一種有效的兩階段端點檢測方法" title="檢測方法">檢測方法。在第一階段使用圖像分割中經(jīng)常使用的邊緣檢測濾波器方法,得到一個能包含語音段同時又比較寬松的端點結(jié)果;在第二階段,對第一階段的結(jié)果進行再判決,使用直方圖統(tǒng)計方法得到靜音段的能量聚類中心,并用這個中心能量值對整句能量序列進行中心削波,對削波后的能量序列進行最終判決。通常最終的結(jié)果會在第二階段端點檢測的基礎(chǔ)上作適當?shù)姆潘?,前后放?~5幀(大約64~80ms),這些放松在求取特征的差分分量時是很有必要的。
在實驗室環(huán)境下(信噪比大于25dB),以8kHz采樣頻率錄制了20人(其中男、女各10人)的語音數(shù)據(jù)。對于12 000句原始錄制語音或帶噪語音,對傳統(tǒng)的固定能量閾值方法和兩階段檢測方法進行了比較測試。測試的性能如表1所示。


  傳統(tǒng)的固定閾值方法就是針對環(huán)境噪聲設(shè)定一個固定的能量閾值進行端點檢測。實驗表明,兩階段檢測方法無論在安靜環(huán)境中還是在包含一定噪聲的環(huán)境中,都比固定能量閾值的端點檢測方法有更好的性能。此方法能夠進一步改善嵌入式語音識別系統(tǒng)的識別性能。
2.5 束搜索
  英語語音發(fā)音快、單詞長、狀態(tài)數(shù)多,因而搜索時間長。要實現(xiàn)實時識別,就不能在所有的語音數(shù)據(jù)都得到后再進行解碼識別。在兩級識別網(wǎng)絡(luò)中,第一階段要在大量的詞條中搜索,而第二階段只在N_BEST詞條中搜索,相對時間占用量很少。為了滿足實時要求,本系統(tǒng)在獲取語音信號的同時進行提取特征和第一階段識別[6]。根據(jù)硬件的內(nèi)存容量,考慮到匹配分數(shù)所占用的內(nèi)存,選取每20幀(320ms)的語音完成一次搜索。由于所搜索的詞條并沒有結(jié)束,不能求出最終對應(yīng)于詞條的分數(shù)。因此,必須保留每次搜索中每個詞條的每個節(jié)點的匹配分數(shù),這帶來了新的內(nèi)存開銷。
  解決方法是在第一階段識別網(wǎng)絡(luò)中加入束搜索(Beam Search)快速算法。該算法假設(shè):Viterbi解碼過程中的最佳路徑在任何時刻都能保證較高的似然度,在搜索過程中對網(wǎng)絡(luò)進行剪枝,只保留匹配分數(shù)最大的有限個路徑,以減少運算量和內(nèi)存消耗。但是,要獲得匹配分數(shù)最大的幾個狀態(tài),在每次搜索過程中都要對匹配分數(shù)進行排序,這使運算負擔加重,在實際中不可取。為了解決這一問題,結(jié)合本系統(tǒng)識別網(wǎng)絡(luò)的特點,采用了一種滑動窗束搜索算法。對于每一個詞條網(wǎng)絡(luò),在Viterbi解碼過程中,近似地認為真實路徑總是當前匹配分數(shù)最優(yōu)的路徑的近鄰路徑。因此,設(shè)置了一個固定寬度的窗,在所有時刻,窗中的路徑總包含了該時刻似然度最高的路徑及其相鄰路徑,而那些落在窗外的路徑則將被剪枝。由于模型狀態(tài)不可跨越,因此,下一個活躍路徑的位置,只可能是上一個活躍路徑的原有位置或者滑動一格。由于中間的匹配分數(shù)相同,比較滑動窗兩端的匹配分數(shù)即可決定下一個滑動窗的位置。這樣可大大減小比較的運算量,提高運算速度。
  由于語音信號隨機性較強,束搜索的這種假設(shè)并不總符合真實情況,因此,過窄的束寬很容易導致最后識別結(jié)果的錯誤。以三對角高斯模型為例,語音庫為10個男生的命令詞。窗寬與識別率的關(guān)系如表2所示。


  可以看出,當窗寬為15時,識別率基本沒有下降。這個結(jié)果與候選詞條的長度有關(guān),詞條的狀態(tài)數(shù)越多,最優(yōu)結(jié)果在搜索過程中“露出”窗外的可能性也就越大。綜合束搜索對系統(tǒng)率和識別時間兩方面的影響,選定了束寬為10的滑動窗算法作為系統(tǒng)的束搜索算法。
3 實驗結(jié)果
  實驗訓練集采用LDC WSJ1訓練庫(SI_TR_S),包括200人的連續(xù)語音,共61個小時,降采樣為8kHz,16位量化。測試集為由WSJ1測試集(CDTest和HSDTest)得到的525個短句(每句包含2個單詞),候選詞條為535個,包括637個不同的單詞發(fā)音,同樣降采樣為8kHz,16位量化。
  表3為一階段識別和兩階段識別的識別率、識別時間和內(nèi)存占用量比較。從表3可以看出,與直接進行的一階段識別相比,兩階段識別通過采用兩階段端點檢測方法、MMIC特征選擇算法、特征提取和解碼同步的束搜索算法,極大地提高了識別率,減少了內(nèi)存占用量和識別時間。


  本文提出了一種基于定點DSP的嵌入式英語孤立詞識別系統(tǒng),采用兩階段識別的連續(xù)HMM模型。其中第一階段為實時識別,第二階段為非實時識別。通過采用新穎的兩階段端點檢測方法、最小互信息改變準則特征選擇算法、特征提取和解碼同步的束搜索算法,進一步提高了識別性能、減少了內(nèi)存占用量和計算復雜度。
參考文獻
1 楊行峻,遲惠生.語音信號數(shù)字處理.北京:電子工業(yè)出版社,1995
2 Abhinav Sethy,Shrikanth Narayanan.Split-Lexicon Based Hierarchical Recognition of Speech Using Syllable And Word Level Acoustic Units.In:Proc,ICASSP′03,2003
3 Novak M,Hampl R,Krbec P et al.Two-Pass Search Strategy for Larce List Recog Nition on Embedded Speech Recognition Platforms[A].Proceedings of ICASSP[C].Hong Kong:IEEE Press,2003
4 Valtcho Valtchev.Discriminative Methods in HMM-based Speech Recognition[D].Cambridge University St.John′s College,1995
5 丁玉國.語音識別的置信度.清華大學碩士論文,2005
6 Andreas Hagen,Daniel A.Connors,Bryan L.Pellom.The Analysis and Design of Architecture Systems for Speech Recognition on Modern Handheld-Computing Devices.CODES/ISSS′03.Newpurt Beach,California USA,2003,10

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。