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