許振威 姜望望 繆榮國
【摘要】由隱馬爾可夫模型的算法和理論對語音進行處理以提高系統的識別能力,具體設計系統的電源電路、復位電路、輸入系統、存儲系統等硬件模塊和軟件實現方法,經過測試能夠實現語音識別功能。
【關鍵詞】隱馬爾可夫;語音識別;單片機
在這個高科技的信息時代,計算機占著極為重要的地位,人機通信是人與機器之間進行信息通訊,使機器按照人的意愿工作,傳統的人機通信是通過鍵盤、按鈕以及顯示器等機器設備實現的,在許多場合都不是很方便,其最理想的通信方式就是通過語音進行識別。實現人與機器通過自然語音的方式進行信息通訊,不僅可以簡化日常工作,更可以提高工作效率,帶給人們極大的方便。而實現這個理想最關鍵的部分就是語音識別技術。
1語音識別概述
1.1語音信號的產生
物體的振動產生聲音,正在發聲的物體叫做聲源,聲音在介質中以聲波的形式傳播。語音是指人的發聲器官振動所發出的負載一定語言意義的聲音,發音器官主要有肺部、氣管、喉部、咽、鼻腔、口腔和上下唇,每個人的聲道各不相同,從而各自發出的聲音也不相同。
語音信號主要有模擬信號和數字信號兩種表現形式。模擬信號是人直接通過耳朵聽到的信號,是時間和幅值均連續的物理量,由于其數據量過大、有較多的隨機因素等原因不能直接被作為計算機的識別信號。數字信號是時間和數值均離散的二進制數字量化的模擬信號,是計算機語音識別技術的基礎。數字信號相比模擬信號有以下優點:可以實現很多復雜的信號處理工作;具有可靠性高、價格低廉、反應迅速等特點;有利于區分出干擾信號等。所以要想使計算機按照人類的自然語言要求工作,關鍵的就是將模擬信號轉換為數字信號。
1.2語音信號的處理
根據討論,若要對語音信號進行處理必須先對此信號進行預處理,即將模擬信號轉換為數字信號,再整理、分析、理解轉換后的數字信號,并過濾掉多余的信息。主要包括數字化、預加重和加窗分幀三部分。
數字化就是把語音模擬信號轉換為數字信號的采樣與量化過程,采樣是在相同間隔的時間內抽取信號而得到離散的序列,并將其轉換為數字。量化則是在有限的區域內分布采樣后的信號。預加重是通過一個高通濾波器使頻譜變得平坦,防止衰減作用,不受有限字長效應的影響。以“幀”為單位對語音信號進行截取,使信號有短時平穩的特征,加窗則可以讓截取的信號波形更加平滑。
1.3語音信號的模塊處理
在語音識別中,常使用的基本算法有:動態時間規整技術(DTW)、隱馬爾可夫模型(HMM)和人工神經元網絡(ANN)。
1)隱馬爾可夫模型
隱馬爾可夫模型(HMM)在當前語音識別系統中占據主流地位。它是一種隨機概率模型,其使用大大降低了模型的復雜度。早在20世紀六七十年代就開始研究的統計信號模型。HMM是在Markov鏈的基礎上發展起來的,但實際問題要更為復雜,所觀察到的事件與一組概率分布相關。它是一個雙重隨機過程,一個是Markov鏈,這是基本隨機過程,它描述狀態的轉移;一個是隨機過程描述狀態和觀測值之間的統計對應關系,觀察者不能直接看到狀態,而是由感覺感知到的,因此稱之為“隱”Markov模型,即HMM。
2)人工神經網絡法
ANN現在已經成為了另一個熱點,是非線性系統,具有DTW和HMM沒有的對比、概括、推理能力。
3)動態時間規整技術
DTW是模板訓練和模式匹配中出現最早的技術,使用動態規劃技術在孤立詞語音識別中具有良好的成果,但是其計算量較大,很難被使用到現實中的語音識別。目前已經被其他的算法所替代。
2語音識別系統設計思路
語音識別技術正在不斷的發展中,在硬件平臺上實現語音識別以取代繁瑣的工作成為其發展的必然趨勢。本文就是對基于單片機的語音識別系統的研究。由于單片機本身存在著處理速度慢、存儲能力不強大的缺陷,所以此次設計是基于孤立詞的語音識別系統。
語音識別系統的模型庫訓練工作原理是:特定人的語音信號進入系統,系統對進入的語音信號濾波,目的是為了消除需要的語音頻率之外的其他雜音,進而數模轉換,將輸入的語音模擬信號數字化,有利于計算機進行識別。數字化后的語音信號再通過預處理、加窗分幀。對于剩下的語音信號送入HMM模板與模板庫進行訓練和匹配,再將最佳的結果傳輸給用戶。
3系統模塊設計及系統測試
此次設計是基于單片機的語音識別系統研究,有以下幾點要求:該系統必須使完整的語音識別系統,有簡單的顯示功能,提高系統的識別性能,體積盡量減小。
工作原理首先采集語音信號,輸入完成后通過濾波采集需要的語音信號,再通過數模轉換器進入控制器,再與標準語音庫中的語音信號進行對比,找出最接近該段信號的語音,再將識別出的語音通過LCD顯示模塊顯示給用戶。
系統檢測首先確認是否有按鍵按下,當檢測到有按鍵按下時,表示系統開始運行,如果沒有按下,則表示系統處于非工作狀態,只有當有按鍵時,才可以工作。進而開始接收語音信號,首先對語音信號進行濾波消除雜音,然后通過數模轉換電路,將模擬信號轉換為數字信號,預處理、端點檢測后,與事先存儲好的信號進行比對,得到最后的識別結果,將識別出來的結果,送往LCD液晶顯示器上顯示出來,展現給用戶。
此次設計通過MATLAB軟件實現對語音信號的調試。在接收語音信號時,有可能產生外界的干擾噪聲,這就需要我們通過一系列復雜的公式計算,對該信號進行處理,進而在送由單片機進行下一步的工作。
4結束語
語音識別技術是實現人與計算機進行直接對話,讓計算機自動對人所說的話進行識別、理解并執行的技術手段。語音識別技術的應用已經成為一個被受關注的新型技術產業,它的實現能夠簡化人們在以往工作中的繁瑣,未來語音識別還要向低成本、高性能方向不斷發展。
【參考文獻】
[1]馬麗靜.基于單片機控制的語音識別系統的軟件開發[J].電腦開發與應用,2003(05):37-38.
[2]張雄偉,陳亮.現代語音處理技術及應用[M].機械工業出版社,2003,5:26-30.
[責任編輯:張濤]