實(shí)時(shí)語(yǔ)音識(shí)別系統(tǒng)在家庭監(jiān)護(hù)機(jī)器人的實(shí)現(xiàn)
1.2 軟件設(shè)計(jì)
HTK(Hidden Markov Model Toolkit)是一套專門的建立和處理隱馬可夫模型(HMMs)的實(shí)驗(yàn)工具包,由英國(guó)劍橋大學(xué)工程系(Cambridge University Engineering Department,CUED)開發(fā)的,主要應(yīng)用于語(yǔ)音識(shí)別領(lǐng)域,也可以應(yīng)用于語(yǔ)音合成、字符識(shí)別和DNA排序等研究領(lǐng)域。HTK經(jīng)過劍橋大學(xué)、Entropic公司及Microsoft公司的不斷增強(qiáng)和改進(jìn),使其在語(yǔ)音識(shí)別領(lǐng)域處于世界領(lǐng)先水平。
基于HTK的語(yǔ)言識(shí)別時(shí),識(shí)別結(jié)果適用只能顯示在DOS或終端上,而且不利于將結(jié)果保存、移植或者二次開發(fā)利用。在本語(yǔ)音識(shí)別系統(tǒng)中使用了HTK接口工具ATK(AnApplication Toolkit for HTK)。ATK是由英國(guó)劍橋大學(xué)開發(fā)的開源語(yǔ)音識(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的語(yǔ)音識(shí)別軟件應(yīng)用系統(tǒng)的由語(yǔ)音信號(hào)采集模塊、基于DMA的雙向高速RAM存取模塊、ATK語(yǔ)音識(shí)別模塊、系統(tǒng)管理模塊、語(yǔ)音輸出模塊等模塊組成,如圖4所示。
在軟件設(shè)計(jì)中,系統(tǒng)管理模塊主要負(fù)責(zé)系統(tǒng)的總體管理調(diào)度,是應(yīng)用系統(tǒng)的調(diào)度中心;語(yǔ)音信號(hào)采集模塊主要負(fù)責(zé)控制數(shù)據(jù)采集芯片TPS 65930;基于DMA的雙向RAM存取模塊主要負(fù)責(zé)實(shí)現(xiàn)DMA驅(qū)動(dòng)及雙向RAM的讀寫存取,使用了通道1來(lái)實(shí)現(xiàn)高速地把語(yǔ)音信號(hào)采集到的數(shù)據(jù)存儲(chǔ)到RAM上,并使用通道2實(shí)現(xiàn)高速地把RAM的數(shù)據(jù)取出來(lái),用于語(yǔ)音的識(shí)別;語(yǔ)音輸出模塊主要負(fù)責(zé)把相應(yīng)的音頻數(shù)據(jù)送到TPS65930,并控制TPS6 5930對(duì)接收到的音頻解碼輸出到功放電路,實(shí)現(xiàn)語(yǔ)音輸出的功能。軟件的設(shè)計(jì)流程圖如圖5所示。
評(píng)論