智能機器人語音識別技術
摘要:給出了一種由說話者說出控制命令,機器人進行識別理解,并執行相應動作的實現技術。在此,提出了一種高準確率端點檢測算法、高精度定點DSP動態指數定標算法,以解決定點DSP實現連續隱馬爾科夫模型CHMM識別算法時所涉及的大量浮點小數運算問題,提高了定點DSP實現的實時性、精度,及其識別率。
關鍵詞:智能機器人;語音識別;隱馬爾可夫模型;DSP
0 引言
語音控制的基礎就是語音識別技術,可以是特定人或者非特定人的。非特定人的應用更為廣泛,對于用戶而言不用訓練,因此也更加方便。語音識別可以分為孤立詞識別,連接詞識別,以及大詞匯量的連續詞識別。對于智能機器人這類嵌入式應用而言,語音可以提供直接可靠的交互方式,語音識別技術的應用價值也就不言而喻。
1 語音識別概述
語音識別技術最早可以追溯到20世紀50年代,是試圖使機器能“聽懂”人類語音的技術。按照目前主流的研究方法,連續語音識別和孤立詞語音識別采用的聲學模型一般不同。孤立詞語音識別一般采用DTW動態時間規整算法。連續語音識別一般采用HMM模型或者HMM與人工神經網絡ANN相結合。
語音的能量來源于正常呼氣時肺部呼出的穩定氣流,喉部的聲帶既是閥門,又是振動部件。語音信號可以看作是一個時間序列,可以由隱馬爾可夫模型(HMM)進行表征。語音信號經過數字化及濾噪處理之后,進行端點檢測得到語音段。對語音段數據進行特征提取,語音信號就被轉換成為了一個向量序列,作為觀察值。在訓練過程中,觀察值用于估計HMM的參數。這些參數包括觀察值的概率密度函數,及其對應的狀態,狀態轉移概率等。當參數估計完成后,估計出的參數即用于識別。此時經過特征提取后的觀察值作為測試數據進行識別,由此進行識別準確率的結果統計。訓練及識別的結構框圖如圖1所示。
1. 1 端點檢測
找到語音信號的起止點,從而減小語音信號處理過程中的計算量,是語音識別過程中一個基本而且重要的問題。端點作為語音分割的重要特征,其準確性在很大程度上影響系統識別的性能。
能零積定義:一幀時間范圍內的信號能量與該段時間內信號過零率的乘積。
能零積門限檢測算法可以在不丟失語音信息的情況下,對語音進行準確的端點檢測,經過450個孤立詞(數字“0~9”)測試準確率為98%以上,經該方法進行語音分割后的語音,在進入識別模塊時識別正確率達95%。
當話者帶有呼吸噪聲,或周圍環境出現持續時間較短能量較高的噪聲,或者持續時間長而能量較弱的噪聲時,能零積門限檢測算法就不能對這些噪聲進行濾除,進而被判作語音進入識別模塊,導致誤識。圖2(a)所示為室內環境,正常情況下采集到的帶有呼氣噪聲的數字“0~9”的語音信號,利用能零積門限檢測算法得到的效果示意圖。最前面一段信號為呼氣噪聲,之后為數字“0~9”的語音。
從圖2(a)直觀的顯示出能零積算法在對付能量較弱,但持續時間長的噪音無能為力。由此引出了雙門限能零積檢測算法。
所謂的雙門限能零積算法指的是進行兩次門限判斷。第一門限采用能零積,第二門限為單詞能零積平均值。也即在前面介紹的能零積檢測算法的基礎上再進行一次能零積平均值的判決。其中,第二門限的設定依據取決于所有實驗樣本中呼氣噪聲的平均能零積及最小的語音單詞能零積之間的一個常數。如圖2(b)所示,即為圖2(a)中所示的語音文件經過雙門限能零積檢測算法得到的檢測結果。可以明顯看到,最前一段信號,即呼氣噪聲已經被視為噪音濾除。
評論