基于ATK的實(shí)時(shí)語音識(shí)別系統(tǒng)在家庭監(jiān)護(hù)機(jī)器人中的應(yīng)用實(shí)現(xiàn)
1.2 軟件設(shè)計(jì)
HTK(Hidden Markov Model Toolkit)是一套專門的建立和處理隱馬可夫模型(HMMs)的實(shí)驗(yàn)工具包,由英國劍橋大學(xué)工程系(Cambridge University Engineering Department,CUED)開發(fā)的,主要應(yīng)用于語音識(shí)別領(lǐng)域,也可以應(yīng)用于語音合成、字符識(shí)別和DNA排序等研究領(lǐng)域。HTK經(jīng)過劍橋大學(xué)、Entropic公司及Microsoft公司的不斷增強(qiáng)和改進(jìn),使其在語音識(shí)別領(lǐng)域處于世界領(lǐng)先水平。
基于HTK的語言識(shí)別時(shí),識(shí)別結(jié)果適用只能顯示在DOS或終端上,而且不利于將結(jié)果保存、移植或者二次開發(fā)利用。在本語音識(shí)別系統(tǒng)中使用了HTK接口工具ATK(AnApplication Toolkit for HTK)。ATK是由英國劍橋大學(xué)開發(fā)的開源語音識(shí)別工具,是對(duì)HTK的C++多線程封裝,跟HTK一樣,它支持Linux和Windows,它包括HTK(HTKLib)、AHTK、AGram、ANGram、ADict、AHMMs、AResource、ARMan、ARec、ACode、ASour ce、ATee、AComponent、ABuffer、APacket、Asyn、FLite(SYNLib)、ALog模塊部件。
基于ATK的語音識(shí)別軟件應(yīng)用系統(tǒng)的由語音信號(hào)采集模塊、基于DMA的雙向高速RAM存取模塊、ATK語音識(shí)別模塊、系統(tǒng)管理模塊、語音輸出模塊等模塊組成,如圖4所示。
在軟件設(shè)計(jì)中,系統(tǒng)管理模塊主要負(fù)責(zé)系統(tǒng)的總體管理調(diào)度,是應(yīng)用系統(tǒng)的調(diào)度中心;語音信號(hào)采集模塊主要負(fù)責(zé)控制數(shù)據(jù)采集芯片TPS 65930;基于DMA的雙向RAM存取模塊主要負(fù)責(zé)實(shí)現(xiàn)DMA驅(qū)動(dòng)及雙向RAM的讀寫存取,使用了通道1來實(shí)現(xiàn)高速地把語音信號(hào)采集到的數(shù)據(jù)存儲(chǔ)到RAM上,并使用通道2實(shí)現(xiàn)高速地把RAM的數(shù)據(jù)取出來,用于語音的識(shí)別;語音輸出模塊主要負(fù)責(zé)把相應(yīng)的音頻數(shù)據(jù)送到TPS65930,并控制TPS6 5930對(duì)接收到的音頻解碼輸出到功放電路,實(shí)現(xiàn)語音輸出的功能。軟件的設(shè)計(jì)流程圖如圖5所示。
2 語音識(shí)別系統(tǒng)實(shí)驗(yàn)及結(jié)果
文中設(shè)計(jì)的語音識(shí)別系統(tǒng)如圖6所示。在實(shí)驗(yàn)中總共進(jìn)行了3輪話語測(cè)試,每輪300句話語測(cè)試,其中150句為家庭監(jiān)護(hù)機(jī)器人需要識(shí)別的話語,150句話語為機(jī)器人不予置理的無關(guān)話語。本系統(tǒng)只設(shè)置10個(gè)需要識(shí)別的話語,由15名學(xué)生分別讀音進(jìn)行測(cè)試。同時(shí)對(duì)無關(guān)話語也是由該15名學(xué)生,每人10句分別隨機(jī)讀音測(cè)試。從顯示結(jié)果可以看出,第1輪中,先測(cè)試的150句無關(guān)話語中,能正確識(shí)別出無關(guān)話語數(shù)為150句,識(shí)別出無關(guān)話語率為100%,但對(duì)需識(shí)別的話語中,正確識(shí)別出148句,2句識(shí)別出錯(cuò),識(shí)別率為98.67%;在第2輪中,同樣先測(cè)試的150句無關(guān)話語中,能正確識(shí)別出無關(guān)話語數(shù)為150句,識(shí)別出為無關(guān)話語率為100%,但對(duì)需識(shí)別的話語中,正確識(shí)別出142句,8句識(shí)別出錯(cuò),識(shí)別率為94.67%;在第3輪中,同樣先測(cè)試的150句無關(guān)話語中,能正確識(shí)別出無關(guān)話語數(shù)為150句,識(shí)別出無關(guān)話語率為100%,但對(duì)需識(shí)別的話語中,正確識(shí)別出146句,識(shí)別率為97.33%。在3輪測(cè)試中,系統(tǒng)都能實(shí)時(shí)響應(yīng)所有語句,未出現(xiàn)漏句現(xiàn)象。并且在實(shí)驗(yàn)測(cè)試的過程中,系統(tǒng)的響應(yīng)速度都非??欤杏^上沒有時(shí)間延遲,與真人交流速度相當(dāng)。
從實(shí)驗(yàn)測(cè)試結(jié)果可看出,對(duì)于識(shí)別10個(gè)需要識(shí)別的話語的識(shí)別率高達(dá)94.67%以上,具有較高的識(shí)別率,因而該語音識(shí)別系統(tǒng)較好達(dá)到了家庭監(jiān)護(hù)機(jī)器人使用的要求。
3 結(jié)論
文中通過DSP、DMA和ARM Cortex-A8的并行處理,利用雙緩沖的方法,在嵌入式Linux上實(shí)現(xiàn)了基于ATK的實(shí)時(shí)語音識(shí)別系統(tǒng)。該系統(tǒng)可以實(shí)時(shí)地實(shí)現(xiàn)語音識(shí)別,具有較高識(shí)別率,較快的響應(yīng)速度??梢詰?yīng)用在家庭監(jiān)護(hù)機(jī)器人及其相關(guān)領(lǐng)域中。
評(píng)論