<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 嵌入式實(shí)時(shí)英語(yǔ)語(yǔ)音識(shí)別系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)

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

          ——
          作者:胡姍姍,劉加,王國(guó)梁 時(shí)間:2007-01-18 來(lái)源:電子技術(shù)應(yīng)用 收藏
          隨著移動(dòng)設(shè)備的快速發(fā)展,迫切需要一種更友好、更敏捷的用戶操作系統(tǒng)。自動(dòng)系統(tǒng)能夠提供便利的人機(jī)交互,將成為一種主要方法,目前,實(shí)驗(yàn)室環(huán)境中的自動(dòng)系統(tǒng)已經(jīng)取得了很好的效果,但需要很大的存儲(chǔ)空間和運(yùn)算資源。當(dāng)自動(dòng)應(yīng)用于移動(dòng)設(shè)備時(shí),必須對(duì)模型和識(shí)別策略進(jìn)行相應(yīng)改進(jìn),才能滿足其對(duì)運(yùn)算速度、內(nèi)存資源和功耗的要求,為了解決這個(gè)問(wèn)題,本文將結(jié)合英語(yǔ)語(yǔ)音的特點(diǎn),設(shè)計(jì)并實(shí)現(xiàn)嵌入式英語(yǔ)語(yǔ)音識(shí)別系統(tǒng),完成中等詞匯量的孤立詞實(shí)時(shí)識(shí)別任務(wù)。

          1 硬件平臺(tái)

          的軟硬件高度結(jié)合,針對(duì)系統(tǒng)的特定任務(wù),要量體裁衣、去除冗余、使得系統(tǒng)能夠在高性能、高效率、高穩(wěn)定性的同時(shí),保證低車成本和低功耗,因此,系統(tǒng)硬件平臺(tái)的選用是因?yàn)橄到y(tǒng)整體性能的關(guān)鍵因素,系統(tǒng)采用公司 語(yǔ)音處理專用芯片作為芯片的硬件平臺(tái),該芯片集成了一個(gè)16位定點(diǎn)DSP核(OAK)、一個(gè)8位MCU核(M8051 E-Warp)、兩路ADC、兩路DAC、104KB的SRAM以及高靈活性的MMU等器件,其中DSP最高工作頻率可達(dá)100MHz,MCU最高工作頻率為50MHz。

          由于系統(tǒng)的語(yǔ)音處理專用芯片UniSpeech集成了大部分的功能單元,片外所需元件很少,因此系統(tǒng)硬件平臺(tái)的板級(jí)結(jié)構(gòu)非常簡(jiǎn)單,圖1為硬件平臺(tái)的板級(jí)結(jié)構(gòu)圖。

          專用芯片只需外接:

          (1)EPROM:存放系統(tǒng)程序;

          (2)Flash Memory:存放語(yǔ)音識(shí)別系統(tǒng)需要的聲學(xué)模型參數(shù)和系統(tǒng)中的語(yǔ)音提示、語(yǔ)音回放數(shù)據(jù);

          (3)語(yǔ)音輸入器件:可直接外接麥克風(fēng),接收語(yǔ)音信號(hào);

          (4)語(yǔ)音輸出器件:可直接外接揚(yáng)聲器或耳機(jī),輸出系統(tǒng)的提示音;

          (5)電源:通過(guò)電壓變換芯片,為電路板上各芯片提供需要的電壓;

          (6)USB接口:接板級(jí)語(yǔ)音識(shí)別模塊提供了USB接口,以提高該和通用計(jì)算機(jī)系統(tǒng)之間數(shù)據(jù)交換的速度;

          (7)鍵盤:提供外接鍵盤接口,方便系統(tǒng)控制;

          (8)液晶:可外接一塊液晶顯示屏,以輸出識(shí)別結(jié)果;

          (9)其他設(shè)備接口:為了增強(qiáng)該語(yǔ)音信號(hào)處理模塊的功能擴(kuò)展性,UniSpeech提供了豐富的I/O資源,共有100條通用I/O,系統(tǒng)也預(yù)留了這些I/O接口,以方便與其他設(shè)備連接。

          2 算法研究

          2.1 兩階段識(shí)別算法


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

          在第一階段識(shí)別中,采用monophone模型和靜態(tài)識(shí)別網(wǎng)絡(luò),得到多侯選詞條;在第二階段識(shí)別中,根據(jù)第一階段輸出的多侯選詞條,構(gòu)建新的識(shí)別網(wǎng)絡(luò),采用triphone模型,進(jìn)行精確識(shí)別,得到最終的識(shí)別結(jié)果。由于第二階段識(shí)別的詞條數(shù)較少,與只采用triphone模型的一階段識(shí)別相比,識(shí)別速度大大提高,同時(shí),第二階段識(shí)別可重用第一階段的內(nèi)存資源,也減少了級(jí)別系統(tǒng)的內(nèi)存占用量。

          2.2 特征提取與選擇

          在連續(xù)語(yǔ)音識(shí)別系統(tǒng)中,通常采用39維的MFCC(Mel Frequency Cepstral Coefficient)特征,甚至再加入一些特征。但是,考慮到有限的硬件資源,在不降低識(shí)別率的基礎(chǔ)上,應(yīng)盡量減少特征的維數(shù),本文采用最小互信息改變準(zhǔn)則MMIC(Minimum Mutual Information Change)進(jìn)行特征選擇,一階段采用22維MFCC特征(9 MFCC,6ΔMFCC,4Δ2MFCC,E,ΔE,Δ2E),二階段采用26維MFCC特征(10MFCC,7ΔMFCC,6Δ2MFCC,E,ΔE,Δ2E)。

          2.3 數(shù)據(jù)的輸入輸出

          對(duì)于硬件系統(tǒng),如果數(shù)據(jù)的讀入速度較慢,則對(duì)運(yùn)算速度影響就很大,在保證系統(tǒng)高識(shí)別率的前提下,系統(tǒng)的內(nèi)存消耗量和識(shí)別時(shí)間常常是一對(duì)矛盾體,很難保證兩者同時(shí)達(dá)到理想狀態(tài),如果僅僅考慮節(jié)省內(nèi)存、將每個(gè)詞條識(shí)別網(wǎng)絡(luò)和相應(yīng)的狀態(tài)逐個(gè)讀入,計(jì)算匹配分?jǐn)?shù),這樣雖然可以最大限度地節(jié)省內(nèi)存的使用,但是數(shù)據(jù)的多次讀入占用了大量時(shí)間,并且反復(fù)計(jì)算同一個(gè)轉(zhuǎn)移概率,也對(duì)識(shí)別時(shí)間影響很大,另一方面,如果僅僅考慮運(yùn)算速度,一次性將所有詞條的識(shí)別網(wǎng)絡(luò)和所有狀態(tài)模型讀入內(nèi)存,雖然僅需一次性數(shù)據(jù)讀入,運(yùn)算速度大大提高,但卻對(duì)內(nèi)存提出了更高要求,為了更好地利用系統(tǒng)的硬件資源,本系統(tǒng)首先逐個(gè)讀入模型,計(jì)算所有觀察矢量在各狀態(tài)模型的輸出概率,存放在內(nèi)存中,然后逐條讀入識(shí)別網(wǎng)絡(luò),選取路徑似然度最高的詞條作為最終的識(shí)別結(jié)果,這樣綜合了前面兩種方案的優(yōu)點(diǎn),適應(yīng)了硬件系統(tǒng)的要求。

          2.4 兩階段端點(diǎn)檢測(cè)

          端點(diǎn)檢測(cè)是嵌入式語(yǔ)音識(shí)別中最基本的模塊,端點(diǎn)檢測(cè)是否準(zhǔn)確直接影響系統(tǒng)的運(yùn)算復(fù)雜度和系統(tǒng)的識(shí)別性能,因此在不增加復(fù)雜運(yùn)算量的前提下,希望端點(diǎn)檢測(cè)能盡量準(zhǔn)確,而且能適應(yīng)嵌入式系統(tǒng)多變的應(yīng)用環(huán)境,本文使用了一種有效的兩階段端點(diǎn)檢測(cè)方法,在第一階段使用圖像分割中經(jīng)常使用的邊緣檢測(cè)濾波器方法,得到一個(gè)能包含語(yǔ)音段同時(shí)又比較寬松的端點(diǎn)結(jié)果,在第二階段,對(duì)第一階段的結(jié)果進(jìn)行再判決,使用直方圖統(tǒng)計(jì)方法得到靜音段的能量聚類中心,并用這個(gè)中心能量值對(duì)整句能量序列進(jìn)行中心削波,對(duì)削波后的能量序列進(jìn)行最終判決,通常最終的結(jié)果會(huì)在第二階段端點(diǎn)檢測(cè)的基礎(chǔ)上作適當(dāng)?shù)姆潘?,前后放?-5幀(大約64-80ms),這些放松在求取特征的差分分量時(shí)是很有必要的。

          在實(shí)驗(yàn)室環(huán)境下(信噪比大于25dB),以8KHz采樣頻率錄制了20人(其中男、女各10人)的語(yǔ)音數(shù)據(jù),對(duì)于1200句原始錄制語(yǔ)音或帶噪語(yǔ)音,對(duì)傳統(tǒng)的固定能量閾值方法和兩階段檢測(cè)方法進(jìn)行了比較測(cè)試,測(cè)試的性能如表1所示。

          傳統(tǒng)的固定閾值方法就是針對(duì)環(huán)境噪聲設(shè)定一個(gè)固定的能量閾值進(jìn)行端點(diǎn)檢測(cè),實(shí)踐證明,兩階段檢測(cè)方法無(wú)論在安靜環(huán)境中還是在包含一定噪聲的環(huán)境中,都比固定能量閾值的端點(diǎn)檢測(cè)方法有更好的性能,此方法能夠進(jìn)一步改善嵌入式語(yǔ)音識(shí)別系統(tǒng)的識(shí)別性能。

          2.5 束搜索

          英語(yǔ)語(yǔ)音發(fā)音快、單詞長(zhǎng)、狀態(tài)數(shù)多,因而搜索時(shí)間長(zhǎng),要實(shí)現(xiàn)實(shí)時(shí)識(shí)別、就不能在所有的語(yǔ)音數(shù)據(jù)都得到后再進(jìn)行解碼識(shí)別,在兩級(jí)識(shí)別網(wǎng)絡(luò)中,第一階段要在大量的詞條中搜索,而第二階段只在N_BEST詞條中搜索,相對(duì)時(shí)間占用量很少,為了滿足實(shí)時(shí)要求,本系統(tǒng)在獲取語(yǔ)音信號(hào)的同時(shí)進(jìn)行提取特征和第一階段識(shí)別[6],根據(jù)硬件的內(nèi)存容量,考慮到匹配分?jǐn)?shù)所占用的內(nèi)存,選取每20幀(320ms)的語(yǔ)音完成一次搜索。由于所搜索的詞條并沒(méi)有結(jié)束,不能求出最終對(duì)應(yīng)于詞條得分?jǐn)?shù),因此,必須保留每次搜索中每個(gè)詞條的每個(gè)節(jié)點(diǎn)的匹配分?jǐn)?shù),這帶來(lái)了新的內(nèi)存開銷。

          解決方法是在第一階段識(shí)別網(wǎng)絡(luò)中加入束搜索(Beam Search)快速算法。該算法假設(shè):Viterbi解碼過(guò)程中的最終路徑在任何時(shí)刻都能保證較高的似然度,在搜索過(guò)程中對(duì)網(wǎng)絡(luò)進(jìn)行剪枝,只保留匹配分?jǐn)?shù)最大的有限個(gè)路徑,以減少運(yùn)算量和內(nèi)存消耗。但是,要獲得匹配得分?jǐn)?shù)最大的幾個(gè)狀態(tài),在每次搜索過(guò)程中都要對(duì)匹配分?jǐn)?shù)進(jìn)行排序,這使運(yùn)算負(fù)擔(dān)加重,在實(shí)際中不可取,為了解決這一問(wèn)題,結(jié)合本系統(tǒng)識(shí)別網(wǎng)絡(luò)的特點(diǎn),采用了一種滑動(dòng)窗束搜索算法。對(duì)于每一個(gè)詞條網(wǎng)絡(luò),Viterbi解碼過(guò)程中,近似地認(rèn)為真實(shí)路徑總是當(dāng)前匹配分?jǐn)?shù)最優(yōu)的路徑和近鄰路徑,因此,設(shè)置了一個(gè)固定寬度的窗,在所有時(shí)刻,窗中的路徑總包含了該時(shí)刻似然度最高的路徑及其相鄰路徑,而那些落在窗外的路徑則將被剪枝,由于模型狀態(tài)不可跨越,因此,下一個(gè)活躍路徑的位置,只可能是上一個(gè)活躍路徑的原有位置或者滑動(dòng)一格,由于中間的匹配分?jǐn)?shù)相同,比較滑動(dòng)窗兩端的匹配分?jǐn)?shù)即可決定下一個(gè)滑動(dòng)窗的位置,這樣可大大減少比較的運(yùn)算量,提高運(yùn)算速度。

          由于語(yǔ)音信號(hào)隨機(jī)性較強(qiáng),束搜索的這種假設(shè)并不符合真實(shí)情況,因此,過(guò)窄的束寬很容易導(dǎo)致最后識(shí)別結(jié)果的錯(cuò)誤,以三對(duì)角高斯模型為例,語(yǔ)音庫(kù)為10個(gè)男生的命令詞,窗寬與識(shí)別率的關(guān)系如表2所示。

          可以看出,當(dāng)窗寬為15時(shí),識(shí)別率基本沒(méi)有下降,這個(gè)結(jié)果與侯選詞條的長(zhǎng)度有關(guān),詞條的狀態(tài)越多,最優(yōu)結(jié)果在搜索過(guò)程中“露出”窗外的可能性也就越大,綜合束搜索對(duì)系統(tǒng)率和識(shí)別時(shí)間兩方面的影響,選定了束寬為10的滑動(dòng)窗算法為系統(tǒng)的束搜索算法。

          3 實(shí)驗(yàn)結(jié)果

          實(shí)驗(yàn)訓(xùn)練集采用LDC WSJ1訓(xùn)練庫(kù)(SI_TR_S)包括200人的連續(xù)語(yǔ)音,共61個(gè)小時(shí),降采樣為8KHz,16位量化,測(cè)試集為由WSJ1測(cè)試集(CDTest和HSDTest)得到的525個(gè)短句(每句包含2個(gè)單詞),侯選詞條為535個(gè),包括637個(gè)不同的單詞發(fā)音,同樣降采樣為8KHz,16位量化。

          表3為一階段識(shí)別和兩階段識(shí)別的識(shí)別率,識(shí)別時(shí)間和內(nèi)存占用量比較,從表3中可以看出,與直接進(jìn)行的一階段識(shí)別相比,兩階段識(shí)別通過(guò)采用兩階段斷電檢測(cè)方法、MMIC特征選擇算法、特征提取和解碼同步的束搜索算法,極大的提高了識(shí)別率,減少了內(nèi)存占用量和識(shí)別時(shí)間。

          本文提出了一種基于定點(diǎn)DSP的嵌入式英語(yǔ)孤立詞識(shí)別系統(tǒng),兩階段識(shí)別的連續(xù)HMM模型,其中第一階段為實(shí)時(shí)識(shí)別,第二階段為非實(shí)時(shí)識(shí)別,通過(guò)采用新穎的兩階段端點(diǎn)測(cè)試方法、最后互信息改變準(zhǔn)則特征選擇算法、特征提取和解碼同步的束搜索算法,進(jìn)一步提高了識(shí)別性能、減少了內(nèi)存占用量和計(jì)算復(fù)雜度。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();