LD3320嵌入式語(yǔ)音識別系統應用
1 概述
本文引用地址:http://dyxdggzs.com/article/201609/303656.htm語(yǔ)音交互系統是比較人性化的人機操作界面,它需要語(yǔ)音識別系統的支持。LD3320就是這樣一款語(yǔ)音識別芯片。介紹了該芯片的工作原理及應用,給出了LD3320與微處理器的硬件接口電路及軟件程序。隨著(zhù)高檔MCU的不斷出現,以MCU為核心的嵌入式語(yǔ)音交互系統會(huì )有非常好的應用前景。
2 特定人語(yǔ)音識別技術(shù)及原理
特定人語(yǔ)音識別(ASR,Auto Speech RecognitiON)技術(shù)是基于關(guān)鍵詞語(yǔ)列表的識別技術(shù),它是對大量的語(yǔ)音數據(相當于對數千人采集的數萬(wàn)小時(shí)的有效聲音數據)經(jīng)語(yǔ)言學(xué)家語(yǔ)音模型分析,建立數學(xué)模型,并經(jīng)過(guò)反復訓練提取基元語(yǔ)音的細節特征,以及提取各基元間的特征差異,得到在統計概率最優(yōu)化意義上的各個(gè)基元語(yǔ)音特征,最后才由資深工程師將算法以及語(yǔ)音模型轉換成硬件芯片并應用在嵌入式系統中。
ASR技術(shù)每次識別的過(guò)程就是把用戶(hù)說(shuō)出的語(yǔ)音內容,通過(guò)頻譜轉換為語(yǔ)音特征,再將這個(gè)轉換后的語(yǔ)音特征和關(guān)鍵詞語(yǔ)列表中的條目一一進(jìn)行匹配,最優(yōu)匹配的一條即作為識別結果。比如ASR技術(shù)在語(yǔ)音控制的手機應用中,這個(gè)關(guān)鍵詞語(yǔ)列表的內容就是電話(huà)本中的人名、手機的菜單命令或手機存儲卡中的歌曲名字。不論這個(gè)列表的條目?jì)热菔鞘裁?,只需要用?hù)設置相關(guān)的寄存器,就可以把相應的待識別條目?jì)热菀宰址问絺鬟f給識別引擎。
由此可見(jiàn),語(yǔ)音識別芯片完成的工作就是:把MIC(麥克風(fēng))輸入的聲音進(jìn)行頻譜分析后提取語(yǔ)音特征,再和關(guān)鍵詞語(yǔ)列表中的關(guān)鍵詞語(yǔ)進(jìn)行對比匹配,最后找出得分最高的關(guān)鍵詞語(yǔ)作為識別結果輸出。
通?;贏(yíng)SR技術(shù)的語(yǔ)音識別芯片能在兩種情況下給出識別結果:
①外部送入預定時(shí)間的語(yǔ)音數據(比如5 s的語(yǔ)音數據),芯片對這些語(yǔ)音數據運算分析后,給出識別結果。
②外部送入語(yǔ)音數據流,語(yǔ)音識別芯片通過(guò)端點(diǎn)檢測(VAD,Voice Activity Detection)技術(shù)檢測出用戶(hù)停止說(shuō)話(huà),把用戶(hù)開(kāi)始說(shuō)話(huà)到停止說(shuō)話(huà)之間的語(yǔ)音數據進(jìn)行運算分析后,給出識別結果。
對于第一種情況,可以理解為設定了一個(gè)定時(shí)錄音(如5 s的語(yǔ)音數據),芯片在5 s后會(huì )停止把聲音送入識別引擎,并且根據已送入引擎的語(yǔ)音數據計算出識別結果。
對于第二種情況,需要了解VAD的工作原理:VAD技術(shù)是在一段語(yǔ)音數據流中,判斷出哪個(gè)時(shí)間點(diǎn)是人聲音的開(kāi)始,哪個(gè)時(shí)間點(diǎn)是人聲音的結束。判斷的依據是,在背景聲音的基礎上有了語(yǔ)音發(fā)音,則視為聲音的開(kāi)始。而后,檢測到一段持續時(shí)間的背景音(比如600 ms),則視為人聲說(shuō)話(huà)結束。通過(guò)VAD判斷出人聲說(shuō)話(huà)的區域后,語(yǔ)音識別芯片會(huì )把這期間的聲音數據進(jìn)行識別處理,計算出識別結果。
除了以上兩種情況外,語(yǔ)音識別算法無(wú)法主動(dòng)地判斷出是否識別出了一個(gè)結果。這是因為,在計算過(guò)程中的任何時(shí)刻,語(yǔ)音識別器都會(huì )對已送人識別芯片的聲音數據進(jìn)行分析,并根據匹配程度為識別列表中的關(guān)鍵詞語(yǔ)進(jìn)行打分,最匹配的打分最高。但是,由于識別算法不知道用戶(hù)后面是否還繼續說(shuō)話(huà),所以無(wú)法主動(dòng)地判斷已經(jīng)識別出的結果。
3 語(yǔ)音識別芯片LD3320的工作原理
3.1 語(yǔ)音識別系統原理結構
LD3320語(yǔ)音識別芯片采用的就是ASR技術(shù),圖1就是由LD3320和單片機(或嵌入式系統)組成的語(yǔ)音識別系統原理框圖。圖中給出了LD3320的內部原理結構,本文中選用的MCU是STC10L08XE單片機。

圖1 語(yǔ)音識別系統原理框圖
語(yǔ)音識別芯片LD3320是ICRoute公司的產(chǎn)品,它采用ASR技術(shù),提供了一種脫離按鍵、鍵盤(pán)、鼠標、觸摸屏等GUI操作方式且基于語(yǔ)音的用戶(hù)界面VUI(Voice User Interface),使得用戶(hù)對該系統的操作更簡(jiǎn)單、快速和自然。
用戶(hù)只需要把識別的關(guān)鍵詞語(yǔ)以字符串的形式傳送進(jìn)芯片,即可以在下次識別中立即生效。比如,用戶(hù)在51等主控MCU的編程中,簡(jiǎn)單地通過(guò)設置芯片的寄存器,把諸如你好這樣的識別關(guān)鍵詞語(yǔ)的內容動(dòng)態(tài)地傳入芯片中,芯片就可以識別所設定的關(guān)鍵詞語(yǔ)了。每個(gè)關(guān)鍵詞語(yǔ)可以是單字、詞組、短句或者任何的中文發(fā)音的組合?;贚D3320的語(yǔ)音識別系統可以隨著(zhù)使用流程,在運行時(shí)動(dòng)態(tài)地更改關(guān)鍵詞語(yǔ)列表的內容,這樣可以用一個(gè)系統支持多種不同的場(chǎng)景,同時(shí)也不需要用戶(hù)作任何的錄音訓練。
3.2 LD3320的用戶(hù)使用模式
LD3320有兩種用戶(hù)使用模式,即觸發(fā)識別模式和循環(huán)識別模式.用戶(hù)可以通過(guò)編程,設置兩種不同的用戶(hù)使用模式。
觸發(fā)識別模式:系統的主控MCU在接收到外界一個(gè)觸發(fā)后(比如用戶(hù)按動(dòng)某個(gè)按鍵),啟動(dòng)LD3320芯片的一個(gè)定時(shí)識別過(guò)程(比如5 s),要求用戶(hù)在這個(gè)定時(shí)過(guò)程中說(shuō)出要識別的語(yǔ)音關(guān)鍵詞語(yǔ)。這個(gè)過(guò)程結束后,需要用戶(hù)再次觸發(fā)才能再次啟動(dòng)一個(gè)識別過(guò)程。
循環(huán)識別模式:系統的主控MCU反復啟動(dòng)識別過(guò)程。如果沒(méi)有人說(shuō)話(huà)就沒(méi)有識別結果,則每次識別過(guò)程的定時(shí)到時(shí)后再啟動(dòng)一個(gè)識別過(guò)程;如果有識別結果,則根據識別作相應處理后(比如播放某個(gè)聲音作為回答)再啟動(dòng)一個(gè)識別過(guò)程。
4 語(yǔ)音識別系統軟硬件設計
4.1 硬件系統設計
由圖l可知,由LD3320組成的語(yǔ)音識別系統硬件有單片機(或嵌入式系統)及LD33202.圖2和圖3分別是由單片機STC10L08XE構成的主控芯片和由LD3320A構成的語(yǔ)音識別主系統。

圖2 STC10L08XE構成的主控芯片

圖3 LD3320A構成的語(yǔ)音識別主系統
4.2 軟件系統設計
語(yǔ)音識別的操作順序是:先進(jìn)行語(yǔ)音識別的初始化,然后寫(xiě)入識別列表,系統即開(kāi)始進(jìn)行語(yǔ)音識別,并準備好中斷響應函數,打開(kāi)中斷允許位。這里如果不用中斷方式,也可以通過(guò)查詢(xún)方式工作。在開(kāi)始識別后,讀取寄存器B2H的值,如果為21H就表示有識別結果產(chǎn)生。
評論