【摘要】針對現有簡單語音識別系統的識別率較低、識別速度較慢的問題,在對語音識別原理研究的基礎上,對DTW語音識別算法進行了改進,使得簡單語音識別系統能夠準確、快速的進行識別。
【關鍵詞】語音識別信號處理DTW
一、引言
根據語音識別系統所使用的環境和平臺不同,語音識別技術朝著兩個方向發展:一個方向是大詞匯量的連續語音識別,該方向所處理的語音較為復雜;另一個方向就是向著中小詞匯量的孤立詞匯語音識別,該方向所處理的語音相對較為簡單,應用范圍也有一定的限制,如玩具、語音導航等。雖然簡單語音識別系統對于能識別的詞匯量沒有太高的要求,但是目前的一些簡單語音識別系統的識別速度慢、識別率較低,導致用戶體驗較差。
二、語音識別系統原理
語音識別在本質上屬于模式識別的范疇,其系統結構與模式識別具有相似之處:根據相關的識別算法對語音信號進行特征參數的提取,然后先進行學習后再對語音信號進行識別。在學習階段,通過給出的訓練數據建立起參考模板庫;在識別階段,將待識別語音信號的特征參數與參考模板庫中的參數進行對比,得到與待識別語音信號最接近的模板,輸出該模板作為語音識別的結果。
三、簡單語音識別系統的改進與實現
DTW在簡單語音識別中已經可以達到較高的識別率,因此本文選擇DTW作為語音識別的模式匹配算法,并對端點檢測進行一定的改進來實現語音識別系統的設計。
3.1端點檢測的改進
在進行端點檢測前,為短時平均能量和短時過零率設定兩個門限值。在靜音段,當短時平均能量或短時過零率大于低門限值,則開始準備標記語音起點,由此進入過渡段。但是在過渡段中并不能確定是否真正進入語音段,當短時平均能量和短時過零率都小于低門限值時認為是噪音,并不記錄語音起點,恢復為靜音段;當短時平均能量或短時過零率大于高門限值,則認為是真正的語音片段,將狀態進入語音段。進入語音段后還要記錄語音段持續時間,若該段時間較短則認為是噪聲,繼續檢測后面的語音,如果滿足一定的時間長度則標記語音起點并將其記錄為一段語音。
3.2DTW的改進
DTW的核心思想是進行動態規劃,從而解決了語音識別中的發音長度不一致的匹配問題。在進行DTW時,通過動態匹配找到一個最佳路徑,把語音信號的特征參數通過這條最佳路徑映射到參考模板庫中,這條最佳路徑要求語音信號和參考模板之間的累積距離最小。
經典的DTW算法規定待識別語音信號和模板中信號的首尾必須完全一致,但是端點檢測確定的首尾與實際存在一定的誤差,造成識別率有所下降。為此,可以對DTW的端點的限制適當放寬。即允許起點在(0,0)、(0,m)或者(n,0)上,終點在(N,M)、(N,J)或者(I,M)上。端點要求放寬后對端點檢測精度的要求就降低了,提高了識別的速度和精度。
雖然語音的速度不同,但是語序是確定不變的,因此路徑中每一點的斜率必然大于0。而為了防止過度搜素浪費資源,可以對搜索路徑的斜率加以限制,由于語音信號的擴壓是有限的,因此可以舍去那些向X軸或者Y軸過度傾斜的路徑。具體做法是:將搜索路徑中每個點的最大斜率設為2,最小斜率設為0.5,這樣就可以大大降低搜索范圍,減少了計算量,提高了識別速度。
另外,還可以在進行相似度匹配時設定一個合理的閾值,如果計算出的某一部分的相似度與該閾值相差太遠,則立即認為待識別語音與當前模板不匹配,轉而進入與下一個模板的相似度計算,這樣就可以減少大量的計算量,從而提高簡單語音識別的速度。
3.3實驗及數據
在實驗室較安靜的環境下對男女聲識別進行了測試。發音內容為0~9的數字,采樣率為24KHz,幀長20ms,幀移10ms,識別正確率達到了95%以上,原DTW算法的孤立字識別時間是6~7s,而采用本文改進算法的識別時間減少到2~5s。因此,本文方法可以實現快速準確的簡單語音識別。
四、結束語
采用本文方法可以有效提高端點檢測的精度、語音識別的正確率和識別速度,該方法完全滿足簡單語音識別系統的應用。
參考文獻
[1]張振鋒.基于小詞匯量孤立詞語音識別系統的研究與設計[D].長安大學,2007.
[2]劉建輝,盧珞先,黃濤.一種小詞匯量快速語音識別系統的實現[J].武漢理工大學學報,2006(28).
[3]龔偉.小詞匯量孤立詞語音識別系統的DSP實現[J].低壓電器,2009(20).