語(yǔ)音識(shí)別技術(shù)原理及實(shí)用系統(tǒng)設(shè)計(jì)匯總
語(yǔ)音識(shí)別是以語(yǔ)音為研究對(duì)象,通過(guò)語(yǔ)音信號(hào)處理和模式識(shí)別讓機(jī)器自動(dòng)識(shí)別和理解人類(lèi)口述的語(yǔ)言。語(yǔ)音識(shí)別技術(shù)就是讓機(jī)器通過(guò)識(shí)別和理解過(guò)程把語(yǔ) 音信號(hào)轉(zhuǎn)變?yōu)橄鄳?yīng)的文本或命令的高技術(shù)。語(yǔ)音識(shí)別是一門(mén)涉及面很廣的交叉學(xué)科,它與聲學(xué)、語(yǔ)音學(xué)、語(yǔ)言學(xué)、信息理論、模式識(shí)別理論以及神經(jīng)生物學(xué)等學(xué)科都 有非常密切的關(guān)系。語(yǔ)音識(shí)別技術(shù)正逐步成為計(jì)算機(jī)信息處理技術(shù)中的關(guān)鍵技術(shù),語(yǔ)音技術(shù)的應(yīng)用已經(jīng)成為一個(gè)具有競(jìng)爭(zhēng)性的新興高技術(shù)產(chǎn)業(yè)。
本文引用地址:http://butianyuan.cn/article/201710/368483.htm1、語(yǔ)音識(shí)別的基本原理
語(yǔ)音識(shí)別系統(tǒng)本質(zhì)上是一種模式識(shí)別系統(tǒng),包括特征提取、模式匹配、參考模式庫(kù)等三個(gè)基本單元,它的基本結(jié)構(gòu)如下圖所示:
未知語(yǔ)音經(jīng)過(guò)話筒變換成電信號(hào)后加在識(shí)別系統(tǒng)的輸入端,首先經(jīng)過(guò)預(yù)處理,再根據(jù)人的語(yǔ)音特點(diǎn)建立語(yǔ)音模型,對(duì)輸入的語(yǔ)音信號(hào)進(jìn)行分析,并抽取所需的特 征,在此基礎(chǔ)上建立語(yǔ)音識(shí)別所需的模板。而計(jì)算機(jī)在識(shí)別過(guò)程中要根據(jù)語(yǔ)音識(shí)別的模型,將計(jì)算機(jī)中存放的語(yǔ)音模板與輸入的語(yǔ)音信號(hào)的特征進(jìn)行比較,根據(jù)一定 的搜索和匹配策略,找出一系列最優(yōu)的與輸入語(yǔ)音匹配的模板。然后根據(jù)此模板的定義,通過(guò)查表就可以給出計(jì)算機(jī)的識(shí)別結(jié)果。顯然,這種最優(yōu)的結(jié)果與特征的選 擇、語(yǔ)音模型的好壞、模板是否準(zhǔn)確都有直接的關(guān)系。
2、語(yǔ)音識(shí)別技術(shù)的發(fā)展歷史及現(xiàn)狀
1952年,ATTBell實(shí)驗(yàn)室的Davis等人研制了第一個(gè)可十個(gè)英文數(shù)字的特定人語(yǔ)音增強(qiáng)系統(tǒng)一Audry系統(tǒng)1956年,美國(guó)普林斯 頓大學(xué)RCA實(shí)驗(yàn)室的Olson和Belar等人研制出能10個(gè)單音節(jié)詞的系統(tǒng),該系統(tǒng)采用帶通濾波器組獲得的頻譜參數(shù)作為語(yǔ)音增強(qiáng)特征。1959 年,F(xiàn)ry和Denes等人嘗試構(gòu)建音素器來(lái)4個(gè)元音和9個(gè)輔音,并采用頻譜分析和模式匹配進(jìn)行決策。這就大大提高了語(yǔ)音識(shí)別的效率和準(zhǔn)確度。從此計(jì)算機(jī) 語(yǔ)音識(shí)別的受到了各國(guó)科研人員的重視并開(kāi)始進(jìn)入語(yǔ)音識(shí)別的研究。60年代,蘇聯(lián)的Matin等提出了語(yǔ)音結(jié)束點(diǎn)的端點(diǎn)檢測(cè),使語(yǔ)音識(shí)別水平明顯上 升;Vintsyuk提出了動(dòng)態(tài)編程,這一提法在以后的識(shí)別中不可或缺。60年代末、70年代初的重要成果是提出了信號(hào)線性預(yù)測(cè)編碼(LPC)技術(shù)和動(dòng)態(tài) 時(shí)間規(guī)整(DTW)技術(shù),有效地解決了語(yǔ)音信號(hào)的特征提取和不等長(zhǎng)語(yǔ)音匹配問(wèn)題;同時(shí)提出了矢量量化(VQ)和隱馬爾可夫模型(HMM)理論。語(yǔ)音識(shí)別技 術(shù)與語(yǔ)音合成技術(shù)結(jié)合使人們能夠擺脫鍵盤(pán)的束縛,取而代之的是以語(yǔ)音輸入這樣便于使用的、自然的、人性化的輸入方式,它正逐步成為信息技術(shù)中人機(jī)接口的關(guān) 鍵技術(shù)。
3、語(yǔ)音識(shí)別的方法
目前具有代表性的語(yǔ)音識(shí)別方法主要有動(dòng)態(tài)時(shí)間規(guī)整技術(shù)(DTW)、隱馬爾可夫模型(HMM)、矢量量化(VQ)、人工神經(jīng)網(wǎng)絡(luò)(ANN)、支持向量機(jī)(SVM)等方法。
動(dòng)態(tài)時(shí)間規(guī)整算法(Dynamic Time Warping,DTW)是在非特定人語(yǔ)音識(shí)別中一種簡(jiǎn)單有效的方法,該算法基于動(dòng)態(tài)規(guī)劃的思想,解決了發(fā)音長(zhǎng)短不一的模板匹配問(wèn)題,是語(yǔ)音識(shí)別技術(shù)中出 現(xiàn)較早、較常用的一種算法。在應(yīng)用DTW算法進(jìn)行語(yǔ)音識(shí)別時(shí),就是將已經(jīng)預(yù)處理和分幀過(guò)的語(yǔ)音測(cè)試信號(hào)和參考語(yǔ)音模板進(jìn)行比較以獲取他們之間的相似度,按 照某種距離測(cè)度得出兩模板間的相似程度并選擇最佳路徑。
隱馬爾可夫模型(HMM)是語(yǔ)音信號(hào)處理中的一種統(tǒng)計(jì)模型,是由Markov鏈 演變來(lái)的,所以它是基于參數(shù)模型的統(tǒng)計(jì)識(shí)別方法。由于其模式庫(kù)是通過(guò)反復(fù)訓(xùn)練形成的與訓(xùn)練輸出信號(hào)吻合概率最大的最佳模型參數(shù)而不是預(yù)先儲(chǔ)存好的模式樣 本,且其識(shí)別過(guò)程中運(yùn)用待識(shí)別語(yǔ)音序列與HMM參數(shù)之間的似然概率達(dá)到最大值所對(duì)應(yīng)的最佳狀態(tài)序列作為識(shí)別輸出,因此是較理想的語(yǔ)音識(shí)別模型。
矢量量化(Vector Quantization)是一種重要的信號(hào)壓縮方法。與HMM相比,矢量量化主要適用于小詞匯量、孤立詞的語(yǔ)音識(shí)別中。其過(guò)程是將若干個(gè)語(yǔ)音信號(hào)波形或 特征參數(shù)的標(biāo)量數(shù)據(jù)組成一個(gè)矢量在多維空間進(jìn)行整體量化。把矢量空間分成若干個(gè)小區(qū)域,每個(gè)小區(qū)域?qū)ふ乙粋€(gè)代表矢量,量化時(shí)落入小區(qū)域的矢量就用這個(gè)代表 矢量代替。矢量量化器的設(shè)計(jì)就是從大量信號(hào)樣本中訓(xùn)練出好的碼書(shū),從實(shí)際效果出發(fā)尋找到好的失真測(cè)度定義公式,設(shè)計(jì)出最佳的矢量量化系統(tǒng),用最少的搜索和 計(jì)算失真的運(yùn)算量實(shí)現(xiàn)最大可能的平均信噪比。
在實(shí)際的應(yīng)用過(guò)程中,人們還研究了多種降低復(fù)雜度的方法,包括無(wú)記憶的矢量量化、有記憶的矢量量化和模糊矢量量化方法。
人工神經(jīng)網(wǎng)絡(luò)(ANN)是20世紀(jì)80年代末期提出的一種新的語(yǔ)音識(shí)別方法。其本質(zhì)上是一個(gè)自適應(yīng)非線性動(dòng)力學(xué)系統(tǒng),模擬了人類(lèi)神經(jīng)活動(dòng)的原理,具有自 適應(yīng)性、并行性、魯棒性、容錯(cuò)性和學(xué)習(xí)特性,其強(qiáng)大的分類(lèi)能力和輸入—輸出映射能力在語(yǔ)音識(shí)別中都很有吸引力。其方法是模擬人腦思維機(jī)制的工程模型,它與 HMM正好相反,其分類(lèi)決策能力和對(duì)不確定信息的描述能力得到舉世公認(rèn),但它對(duì)動(dòng)態(tài)時(shí)間信號(hào)的描述能力尚不盡如人意,通常MLP分類(lèi)器只能解決靜態(tài)模式分 類(lèi)問(wèn)題,并不涉及時(shí)間序列的處理。盡管學(xué)者們提出了許多含反饋的結(jié)構(gòu),但它們?nèi)圆蛔阋钥坍?huà)諸如語(yǔ)音信號(hào)這種時(shí)間序列的動(dòng)態(tài)特性。由于ANN不能很好地描述 語(yǔ)音信號(hào)的時(shí)間動(dòng)態(tài)特性,所以常把ANN與傳統(tǒng)識(shí)別方法結(jié)合,分別利用各自?xún)?yōu)點(diǎn)來(lái)進(jìn)行語(yǔ)音識(shí)別而克服HMM和ANN各自的缺點(diǎn)。近年來(lái)結(jié)合神經(jīng)網(wǎng)絡(luò)和隱含 馬爾可夫模型的識(shí)別算法研究取得了顯著進(jìn)展,其識(shí)別率已經(jīng)接近隱含馬爾可夫模型的識(shí)別系統(tǒng),進(jìn)一步提高了語(yǔ)音識(shí)別的魯棒性和準(zhǔn)確率。
支 持向量機(jī)(Support vector machine)是應(yīng)用統(tǒng)計(jì)學(xué)理論的一種新的學(xué)習(xí)機(jī)模型,采用結(jié)構(gòu)風(fēng)險(xiǎn)最小化原理(Structural Risk Minimization,SRM),有效克服了傳統(tǒng)經(jīng)驗(yàn)風(fēng)險(xiǎn)最小化方法的缺點(diǎn)。兼顧訓(xùn)練誤差和泛化能力,在解決小樣本、非線性及高維模式識(shí)別方面有許多 優(yōu)越的性能,已經(jīng)被廣泛地應(yīng)用到模式識(shí)別領(lǐng)域。
4、語(yǔ)音識(shí)別系統(tǒng)的分類(lèi)
語(yǔ)音識(shí)別 系統(tǒng)可以根據(jù)對(duì)輸入語(yǔ)音的限制加以分類(lèi)。如果從說(shuō)話者與識(shí)別系統(tǒng)的相關(guān)性考慮,可以將識(shí)別系統(tǒng)分為三類(lèi):(1)特定人語(yǔ)音識(shí)別系統(tǒng)。僅考慮對(duì)于專(zhuān)人的話音 進(jìn)行識(shí)別。(2)非特定人語(yǔ)音系統(tǒng)。識(shí)別的語(yǔ)音與人無(wú)關(guān),通常要用大量不同人的語(yǔ)音數(shù)據(jù)庫(kù)對(duì)識(shí)別系統(tǒng)進(jìn)行學(xué)習(xí)。(3)多人的識(shí)別系統(tǒng)。通常能識(shí)別一組人的 語(yǔ)音,或者成為特定組語(yǔ)音識(shí)別系統(tǒng),該系統(tǒng)僅要求對(duì)要識(shí)別的那組人的語(yǔ)音進(jìn)行訓(xùn)練。
如果從說(shuō)話的方式考慮,也可以將識(shí)別系統(tǒng)分為三類(lèi): (1)孤立詞語(yǔ)音識(shí)別系統(tǒng)。孤立詞識(shí)別系統(tǒng)要求輸入每個(gè)詞后要停頓。(2)連接詞語(yǔ)音識(shí)別系統(tǒng)。連接詞輸入系統(tǒng)要求對(duì)每個(gè)詞都清楚發(fā)音,一些連音現(xiàn)象開(kāi)始 出現(xiàn)。(3)連續(xù)語(yǔ)音識(shí)別系統(tǒng)。連續(xù)語(yǔ)音輸入是自然流利的連續(xù)語(yǔ)音輸入,大量連音和變音會(huì)出現(xiàn)。
如果從識(shí)別系統(tǒng)的詞匯量大小考慮,也可 以將識(shí)別系統(tǒng)分為三類(lèi):(1)小詞匯量語(yǔ)音識(shí)別系統(tǒng)。通常包括幾十個(gè)詞的語(yǔ)音識(shí)別系統(tǒng)。(2)中等詞匯量的語(yǔ)音識(shí)別系統(tǒng)。通常包括幾百個(gè)詞到上千個(gè)詞的識(shí) 別系統(tǒng)。(3)大詞匯量語(yǔ)音識(shí)別系統(tǒng)。通常包括幾千到幾萬(wàn)個(gè)詞的語(yǔ)音識(shí)別系統(tǒng)。隨著計(jì)算機(jī)與數(shù)字信號(hào)處理器運(yùn)算能力以及識(shí)別系統(tǒng)精度的提高,識(shí)別系統(tǒng)根據(jù) 詞匯量大小進(jìn)行分類(lèi)也不斷進(jìn)行變化。目前是中等詞匯量的識(shí)別系統(tǒng),將來(lái)可能就是小詞匯量的語(yǔ)音識(shí)別系統(tǒng)。這些不同的限制也確定了語(yǔ)音識(shí)別系統(tǒng)的困難度。
5、語(yǔ)音識(shí)別的應(yīng)用
語(yǔ)音識(shí)別可以應(yīng)用的領(lǐng)域大致分為大五類(lèi):
辦公室或商務(wù)系統(tǒng)。典型的應(yīng)用包括:填寫(xiě)數(shù)據(jù)表格、數(shù)據(jù)庫(kù)管理和控制、鍵盤(pán)功能增強(qiáng)等等。
制造業(yè):在質(zhì)量控制中,語(yǔ)音識(shí)別系統(tǒng)可以為制造過(guò)程提供一種“不用手”、“不用眼”的檢控(部件檢查)。
電信:相當(dāng)廣泛的一類(lèi)應(yīng)用在撥號(hào)電話系統(tǒng)上都是可行的,包括話務(wù)員協(xié)助服務(wù)的自動(dòng)化、國(guó)際國(guó)內(nèi)遠(yuǎn)程電子商務(wù)、語(yǔ)音呼叫分配、語(yǔ)音撥號(hào)、分類(lèi)訂貨。
醫(yī)療:這方面的主要應(yīng)用是由聲音來(lái)生成和編輯專(zhuān)業(yè)的醫(yī)療報(bào)告。
其他:包括由語(yǔ)音控制和操作的游戲和玩具、幫助殘疾人的語(yǔ)音識(shí)別系統(tǒng)、車(chē)輛行駛中一些非關(guān)鍵功能的語(yǔ)音控制,如車(chē)載交通路況控制系統(tǒng)、音響系統(tǒng)。
未來(lái)隨著手持設(shè)備的小型化,甚至穿戴化,各種智能眼鏡,手表等層出不窮,當(dāng)然找準(zhǔn)市場(chǎng)突破口很重要,好的解決方案和系統(tǒng)設(shè)計(jì)參考也是必不可少的。
Nuance語(yǔ)音識(shí)別技術(shù)及解決方案
1.語(yǔ)音識(shí)別概述
語(yǔ)音識(shí)別技術(shù),Automatic Speech Recognition,簡(jiǎn)稱(chēng)ASR,是一種讓機(jī)器聽(tīng)懂人類(lèi)語(yǔ)言的技術(shù)。語(yǔ)言是人類(lèi)進(jìn)行信息交流的最主要、最長(zhǎng)用、最直接的方式。語(yǔ)音識(shí)別技術(shù)是實(shí)現(xiàn)人機(jī) 對(duì)話的一項(xiàng)重大突破,在國(guó)外近年來(lái)發(fā)展十分迅速,其應(yīng)用也逐步得到推廣。近幾年逐漸普及的IVR(自動(dòng)電話應(yīng)答)處理了不少簡(jiǎn)單而又重復(fù)的咨詢(xún)工作,節(jié)省 了不少人力,但這種按鍵式的語(yǔ)音自動(dòng)應(yīng)答卻讓客戶(hù)花費(fèi)很多時(shí)間按指引來(lái)完成簡(jiǎn)單的查詢(xún),令用戶(hù)倍感不便。
語(yǔ)音識(shí)別無(wú)疑可以解決該方面的問(wèn)題。語(yǔ)音識(shí)別系統(tǒng)的開(kāi)發(fā)成功,充分發(fā)揮了計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)的優(yōu)勢(shì),采用先進(jìn)的人機(jī)對(duì)話方式,擺脫電話按鍵的束縛,人們只要象平常一樣對(duì)著電話簡(jiǎn)單的說(shuō)出所需服務(wù)項(xiàng)目,即可輕松獲取自動(dòng)系統(tǒng)提供的所需信息。
語(yǔ)音識(shí)別系統(tǒng)結(jié)構(gòu)
2.語(yǔ)音識(shí)別應(yīng)用
Nuance公司是自然語(yǔ)音接口軟件的佼佼者。使用自然語(yǔ)音接口軟件,人們可以通過(guò)電話方便安全地獲取信息、服務(wù)并進(jìn)行交易。每天,千千萬(wàn)萬(wàn)的人通過(guò)撥 打運(yùn)行Nuance公司語(yǔ)音識(shí)別、語(yǔ)言理解和聲紋鑒別軟件的電話,進(jìn)行出游預(yù)訂、股票交易、與其它通訊媒體、企業(yè)和互聯(lián)網(wǎng)系統(tǒng)進(jìn)行交往等活動(dòng)。 NUANCE的應(yīng)用:美國(guó)航空、Bell Atlantic、Charles Schwab、家庭購(gòu)物網(wǎng)絡(luò)、Lloyds TSB、Sears、UPS 。
3.NUANCE語(yǔ)音識(shí)別特點(diǎn)
(1)海量詞匯、獨(dú)立于講話者的健壯識(shí)別功能
Nuance系統(tǒng)能可靠地對(duì)多種語(yǔ)言進(jìn)行大詞匯量的識(shí)別,并可提供識(shí)別結(jié)果的置信度。該系統(tǒng)對(duì)商業(yè)上使用的大量詞匯提供最準(zhǔn)確的語(yǔ)音識(shí)別技術(shù)。利用Nuance系統(tǒng)開(kāi)發(fā)的應(yīng)用程序,在市場(chǎng)上具有最高的準(zhǔn)確率。生產(chǎn)中的應(yīng)用程序經(jīng)測(cè)試,準(zhǔn)確性超過(guò)96%。
?。?)基于主機(jī)的客戶(hù)/服務(wù)機(jī)結(jié)構(gòu)
Nuance系統(tǒng)基于開(kāi)放式客戶(hù)/服務(wù)機(jī)結(jié)構(gòu),特別為大型應(yīng)用程序所需的健壯性和可伸縮性而設(shè)計(jì)。呼叫者的講話由客戶(hù)端收集,而識(shí)別和鑒別處理的負(fù)載被平均分配到網(wǎng)絡(luò)上的多個(gè)分開(kāi)的服務(wù)器上。
?。?)N-Best處理
對(duì)于有些應(yīng)用程序,可能需要識(shí)別引擎產(chǎn)生可能的識(shí)別結(jié)果集,而不是一個(gè)最好的結(jié)果。Nuance系統(tǒng)的N-best識(shí)別處理方法便有這個(gè)功能,它提供了可能的識(shí)別結(jié)果列表,并按可能性從高到低排列。
?。?)語(yǔ)法概率
Nuance系統(tǒng)允許對(duì)呼叫者所講的特定詞語(yǔ)或短語(yǔ)的在語(yǔ)法中的概率進(jìn)行指定。當(dāng)被講的詞語(yǔ)或短語(yǔ)的概率可根據(jù)實(shí)際使用進(jìn)行估計(jì)時(shí),非常有用。對(duì)語(yǔ)法增加概率可提高識(shí)別的準(zhǔn)確率和速度。
(5)降低噪音
當(dāng)進(jìn)來(lái)的呼叫包含穩(wěn)定的背景噪音時(shí),Nuance系統(tǒng)通過(guò)一種機(jī)制,使識(shí)別服務(wù)器更準(zhǔn)確地進(jìn)行識(shí)別。識(shí)別服務(wù)器將進(jìn)來(lái)的話語(yǔ)進(jìn)行增強(qiáng),以有效地將語(yǔ)氣、 嗡嗡聲、哼叫聲、噓噓聲等噪聲過(guò)濾。如果相當(dāng)數(shù)量的電話均含有穩(wěn)定的背景噪聲,比如在汽車(chē)上免提打電話時(shí),這個(gè)機(jī)制效果較理想。
4.基于識(shí)別的應(yīng)用
語(yǔ)音短信本身業(yè)務(wù)、公司電話簿、個(gè)人電話簿、智能點(diǎn)歌、股票查詢(xún)和交易、智能信息點(diǎn)播、列車(chē)時(shí)刻查詢(xún)
?。?)基于語(yǔ)音識(shí)別的公司電話簿
公司電話薄應(yīng)用描述
系統(tǒng)能支持多個(gè)接入號(hào)碼,虛擬多個(gè)公司的總機(jī)。并依靠語(yǔ)音識(shí)別技術(shù),智能轉(zhuǎn)接到相應(yīng)的用戶(hù)。
流程
用戶(hù)撥打接入碼,系統(tǒng)根據(jù)接入碼找到相應(yīng)的公司數(shù)據(jù)庫(kù),同時(shí)提醒用戶(hù)說(shuō)出相應(yīng)的用戶(hù),系統(tǒng)依據(jù)相應(yīng)的用戶(hù)查詢(xún)數(shù)據(jù)庫(kù),并得到該用戶(hù)的號(hào)碼,并通知交換機(jī)將該號(hào)碼接通。
公司電話簿特點(diǎn)
•系統(tǒng)支持電話接入方式
用戶(hù)可通過(guò)電話修改個(gè)人密碼,個(gè)人上班電話和非上班電話
•系統(tǒng)支持WEB接入方式
• 系統(tǒng)管理員可修改所有信息
• 各公司管理員可增加,刪除,修改本公司的電話信息
?。?)基于語(yǔ)音識(shí)別的點(diǎn)歌功能
功能描述
用戶(hù)接入系統(tǒng),提示用戶(hù)說(shuō)出歌名,并依靠語(yǔ)音識(shí)別技術(shù),查找到該歌名,并播放給用戶(hù)。
應(yīng)用流程
用戶(hù)撥打接入碼,提示用戶(hù)說(shuō)出歌名或歌手名,并依靠語(yǔ)音識(shí)別技術(shù),查找到該歌名或歌手名,若為歌名查詢(xún)數(shù)據(jù)庫(kù),得到該歌存儲(chǔ)的路徑,并播放給用戶(hù),若為 歌手名,則讀出該歌手的專(zhuān)輯,并提醒用戶(hù)選擇,用戶(hù)選擇后,讀出該專(zhuān)輯的歌名,并提醒用戶(hù)選擇,用戶(hù)選擇后,給用戶(hù)播放該歌曲。
基于ZigBee節(jié)點(diǎn)的智能家居系統(tǒng)語(yǔ)音控制設(shè)計(jì)
1 系統(tǒng)總體設(shè)計(jì)
系統(tǒng)總體結(jié)構(gòu)如圖1所示,主要包括基于Samsung的S3C6410平臺(tái)的網(wǎng)關(guān)、基于SPCE061A的語(yǔ)音ZigBee子節(jié)點(diǎn)、電器繼電器控制ZigBee子節(jié)點(diǎn)、電器紅外控制ZigBee子節(jié)點(diǎn)等。其中各子節(jié)點(diǎn)與網(wǎng)關(guān)之間通過(guò)星型拓?fù)浣Y(jié)構(gòu)進(jìn)行連接。
在對(duì)語(yǔ)音子節(jié)點(diǎn)進(jìn)行訓(xùn)練之后,當(dāng)語(yǔ)音節(jié)點(diǎn)采集接收到語(yǔ)音控制命令時(shí),執(zhí)行語(yǔ)音識(shí)別指令,通過(guò)CC2530收發(fā)模塊發(fā)送相應(yīng)的控制指令到網(wǎng)關(guān)的主節(jié)點(diǎn)上。 主節(jié)點(diǎn)將接收到控制指令通過(guò)串口上傳到網(wǎng)關(guān)主機(jī),主機(jī)在處理信息之后,再通過(guò)主節(jié)點(diǎn)發(fā)送相應(yīng)的控制指令到控制子節(jié)點(diǎn)上,控制子節(jié)點(diǎn)在接收到相應(yīng)的命令之后 就會(huì)執(zhí)行相應(yīng)的動(dòng)作,對(duì)被控對(duì)象進(jìn)行控制。
2 系統(tǒng)硬件設(shè)計(jì)
?。?)網(wǎng)關(guān)。采用基于ARM11架構(gòu)的三星S3C6410處理器,與ZigBee主節(jié)點(diǎn)之間通過(guò)串口方式進(jìn)行通信。S3C6410是基于ARM1176JZF-S的16/
?。?)語(yǔ)音子節(jié)點(diǎn)。由凌陽(yáng)科技的SPCE061A單片機(jī)與ZigBec收發(fā)節(jié)點(diǎn)模塊組成。SPCE061A是凌 陽(yáng)科技推出的以μ’nSPTM為核心的16位結(jié)構(gòu)的微控制器。具有8通道10位A/D轉(zhuǎn)換輸入功能,內(nèi)置自動(dòng)增益控制功能的麥克風(fēng)輸入方式以及雙通道10 位DAC方式的音頻輸出功能。在使用SAC M_S240凌陽(yáng)音頻編碼方式時(shí),可以容納長(zhǎng)達(dá)210 s的語(yǔ)音數(shù)據(jù)。因此被廣泛應(yīng)用于數(shù)字語(yǔ)音識(shí)別領(lǐng)域中。
(3)電器控制繼電器子節(jié)點(diǎn)。由繼電器模塊與ZigBee收發(fā)節(jié)點(diǎn)組成。由于我國(guó)市電電壓在220 V左右,為了實(shí)現(xiàn)對(duì)部分家電開(kāi)關(guān)的控制,采用繼電器模塊,并通過(guò)ZigBee通信模塊的CC2530芯片的I/O引腳及其外圍驅(qū)動(dòng)電路,實(shí)現(xiàn)對(duì)繼電器模塊 的吸合與釋放控制??梢钥刂拼昂?、燈光等開(kāi)關(guān)型電器。
(4)紅外控制子節(jié)點(diǎn)。由學(xué)習(xí)型紅外控制模塊與ZigBee收發(fā)子節(jié)點(diǎn)組成。目 前,紅外遙控類(lèi)型的家用電器的比例正逐步攀升。因此本文在設(shè)計(jì)研究中采用了學(xué)習(xí)型的紅外控制模塊,它與ZigBee收發(fā)子節(jié)點(diǎn)之間通過(guò)串口進(jìn)行通信。首先 使用一個(gè)或多個(gè)紅外模塊對(duì)現(xiàn)有的家電(如電視機(jī)、DVD、空調(diào)、投影儀等)紅外遙控器的信號(hào)進(jìn)行學(xué)習(xí),把相應(yīng)的編碼存放到紅外模塊的存儲(chǔ)器E2PROM 中,每條代碼對(duì)應(yīng)一個(gè)地址。當(dāng)該
?。?)基于CC2530的ZigBee無(wú)線收發(fā)模塊。CC2530是TI公司推出的基于IEEE 802.15.4協(xié)議的片上系統(tǒng)。內(nèi)嵌增強(qiáng)型單周期的8051CPU,具有8 KB的SRAM、2個(gè)支持多種串行通信協(xié)議的USART、21個(gè)通用的I/O引腳、寬電壓范圍(2~3.6 V)、低功耗(主動(dòng)模式RX:24 mA;主動(dòng)模式TX在1 dBm:29 mA)以及電源電量可監(jiān)控等特點(diǎn)。在ZigBee協(xié)議棧中UART具有中斷、DMA兩種模式,本文設(shè)計(jì)中均采用了UART的中斷模式。
3 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件設(shè)計(jì)主要包括下位機(jī)軟件與上位機(jī)軟件設(shè)計(jì)。在下位機(jī)程序設(shè)計(jì)過(guò)程中有2個(gè)關(guān)鍵點(diǎn):對(duì)數(shù)字語(yǔ)音信號(hào)的采集、處理與識(shí)別;ZigBee收發(fā)模塊對(duì)控制信號(hào)的接收、發(fā)送與執(zhí)行。而在上位機(jī)軟件設(shè)計(jì)中,主要是基于Visual C++的串口通信的編程。
上位機(jī)主程序流程圖如圖2所示。
S3C6410開(kāi)發(fā)平臺(tái)具有4個(gè)UART接口,在研究設(shè)計(jì)中,采用了芯片MAX 3232來(lái)解決ZigBee通信模塊的CC2530芯片與該開(kāi)發(fā)平臺(tái)之間的串口通信電平轉(zhuǎn)換。上位機(jī)通過(guò)串口接收語(yǔ)音子節(jié)點(diǎn)的控制指令數(shù)據(jù),將數(shù)據(jù)處理后 用文字顯示控制命令,并通過(guò)與ZigBee主節(jié)點(diǎn)之間的串口通信,向子節(jié)點(diǎn)發(fā)送控制指令數(shù)據(jù)。
4 實(shí)驗(yàn)及結(jié)果
4.1 實(shí)際應(yīng)用舉例
在對(duì)電動(dòng)窗簾進(jìn)行開(kāi)關(guān)控制時(shí),首先將本系統(tǒng)的電器控制繼電器子節(jié)點(diǎn)與電動(dòng)窗簾的開(kāi)關(guān)量電機(jī)控制器相連接,準(zhǔn)備好硬件電路。然后,通過(guò)串口編程使上位機(jī)的 ZigBee主節(jié)點(diǎn)在接收到語(yǔ)音子節(jié)點(diǎn)的窗簾開(kāi)關(guān)命令時(shí),向ZigBee子節(jié)點(diǎn)發(fā)射窗簾控制信號(hào),從而當(dāng)控制窗簾的繼電器子節(jié)點(diǎn)接收到控制指令時(shí),能夠控 制窗簾執(zhí)行相應(yīng)的開(kāi)關(guān)動(dòng)作。通過(guò)如依次說(shuō)出“控制器”、“打開(kāi)”、“窗簾”的命令時(shí),語(yǔ)音子節(jié)點(diǎn)語(yǔ)音提示設(shè)備打開(kāi),主機(jī)界面顯示設(shè)備所處控制的狀態(tài),同時(shí) 窗簾打開(kāi)。
該語(yǔ)音控制智能家居系統(tǒng)能夠?qū)崿F(xiàn)家用電器的聯(lián)動(dòng)。例如,可以通過(guò)依次說(shuō)出“控制器”、“家庭影院”的語(yǔ)音命令。這時(shí)上位機(jī)能夠按照程序設(shè)定逐步延時(shí):打開(kāi)紅外遙控投影儀,紅外遙控幕簾,關(guān)閉窗簾,關(guān)閉部分燈光等來(lái)開(kāi)啟家庭影院模式。讓人們體驗(yàn)真正的家居智能化。
4.2 ZigBee控制節(jié)點(diǎn)通信距離測(cè)試結(jié)果
?。?)空曠場(chǎng)合測(cè)試。測(cè)試條件:CC2530模塊采用PCB天線,發(fā)射功率在1 mW,發(fā)射頻率在2.4 GHz。測(cè)試結(jié)果:通信距離最遠(yuǎn)可達(dá)120 m。
?。?)居家場(chǎng)合測(cè)試測(cè)試條件:同上。測(cè)試結(jié)果:由于墻體阻礙,通信距離約在20 m。
4.3 語(yǔ)音控制紅外型電視開(kāi)關(guān)測(cè)試
在語(yǔ)音識(shí)別程序設(shè)計(jì)中,為了增加語(yǔ)音節(jié)點(diǎn)所能識(shí)別命令的條數(shù)而采用了分組法。利用紅外遙控子節(jié)點(diǎn)對(duì)電視遙控器的開(kāi)/關(guān)信號(hào)進(jìn)行學(xué)習(xí),對(duì)語(yǔ)音子節(jié)點(diǎn)進(jìn)行訓(xùn) 練結(jié)束后,啟動(dòng)系統(tǒng)。依次說(shuō)出“控制器”、“打開(kāi)”、“電視”連續(xù)三條命令,再說(shuō)出“控制器”、“關(guān)閉” “電視”連續(xù)三條命令。測(cè)試結(jié)果如表1所示。
5 結(jié)語(yǔ)
將具有數(shù)字語(yǔ)音識(shí)別功能的SPCE061A單片機(jī)與低功耗、低成本的ZigBee技術(shù)相結(jié)合,開(kāi)發(fā)了基于單芯片CC2530的ZigBee語(yǔ)音節(jié)點(diǎn),并 利用ARM11架構(gòu)的開(kāi)發(fā)平臺(tái)S3C6410作為網(wǎng)關(guān),WinCE 6.0的操作系統(tǒng),有著良好的人機(jī)交互界面,來(lái)共同應(yīng)用于智能家居系統(tǒng)的語(yǔ)音控制中,實(shí)現(xiàn)了對(duì)開(kāi)關(guān)型及紅外型家電設(shè)備的語(yǔ)音控制和家居智能化,實(shí)現(xiàn)人與家 電之間的對(duì)話,方便了人們的生活,具有廣闊的應(yīng)用前景。
設(shè)計(jì)詳情:基于ZigBee節(jié)點(diǎn)的智能家居系統(tǒng)語(yǔ)音控制設(shè)計(jì)
實(shí)時(shí)語(yǔ)音識(shí)別系統(tǒng)在家庭監(jiān)護(hù)機(jī)器人的實(shí)現(xiàn)
文中闡述的是家庭監(jiān)護(hù)機(jī)器人項(xiàng)目中語(yǔ)音識(shí)別系統(tǒng)設(shè)計(jì)的部分,通過(guò)DSP、 DMA和ARM Cortex-A8的并行處理,利用雙緩沖的方法,在嵌入式Linux上實(shí)現(xiàn)了基于ATK的實(shí)時(shí)語(yǔ)音識(shí)別系統(tǒng)。文中對(duì)該系統(tǒng)的軟硬件進(jìn)行了設(shè)計(jì)。在硬件方 面,給出語(yǔ)音識(shí)別系統(tǒng)的硬件組成原理,并提供了關(guān)鍵部分原理圖;在軟件方面,提出實(shí)時(shí)語(yǔ)音識(shí)別的方法,給出應(yīng)用程序?qū)崿F(xiàn)流程。最后通過(guò)真人說(shuō)話來(lái)進(jìn)行語(yǔ)音 識(shí)別實(shí)驗(yàn),實(shí)時(shí)語(yǔ)音識(shí)別率達(dá)到了94.67%以上,實(shí)驗(yàn)驗(yàn)證了系統(tǒng)的軟件硬件設(shè)計(jì)的正確性。
1 系統(tǒng)設(shè)計(jì)
文中是家庭監(jiān)護(hù)機(jī)器人項(xiàng)目中的語(yǔ)音識(shí)別系統(tǒng)設(shè)計(jì)部分,設(shè)計(jì)目的是設(shè)計(jì)出一種可以識(shí)別語(yǔ)音的、協(xié)助監(jiān)護(hù)家庭行動(dòng)不方便人員的機(jī)器人。為實(shí)現(xiàn)該語(yǔ)音識(shí)別系統(tǒng),設(shè)計(jì)了語(yǔ)音識(shí)別系統(tǒng)總體結(jié)構(gòu)框圖,如圖1所示。
圖1 系統(tǒng)總體結(jié)構(gòu)框圖
1.1 硬件設(shè)計(jì)
文中所研究和設(shè)計(jì)的功能,都是應(yīng)用在移動(dòng)機(jī)器人上的。因而系統(tǒng)的研究設(shè)計(jì)需要考慮到體積小、省電、便于移動(dòng)的特性,并需具有便于家庭用戶(hù)操作的友好顯示 界面。對(duì)于語(yǔ)音識(shí)別部分,需要用到用于語(yǔ)音識(shí)別算法處理的處理器、語(yǔ)音采集電路和語(yǔ)音輸出電路,如圖 2所示。其中語(yǔ)音識(shí)別算法運(yùn)算的處理器主要負(fù)責(zé)算法的運(yùn)算處理,相當(dāng)于機(jī)器人的大腦;語(yǔ)音采集電路負(fù)責(zé)采集外部的聲音信號(hào),相當(dāng)于機(jī)器人的耳朵;語(yǔ)音輸出 電路負(fù)責(zé)輸出話語(yǔ)聲音,相當(dāng)于機(jī)器人的嘴巴。
圖2 系統(tǒng)硬件結(jié)構(gòu)圖
1.2 軟件設(shè)計(jì)
HTK(Hidden Markov Model Toolkit)是一套專(zhuān)門(mén)的建立和處理隱馬可夫模型(HMMs)的實(shí)驗(yàn)工具包,由英國(guó)劍橋大學(xué)工程系(Cambridge University Engineering Department,CUED)開(kāi)發(fā)的,主要應(yīng)用于語(yǔ)音識(shí)別領(lǐng)域,也可以應(yīng)用于語(yǔ)音合成、字符識(shí)別和DNA排序等研究領(lǐng)域。HTK經(jīng)過(guò)劍橋大學(xué)、 Entropic公司及Microsoft公司的不斷增強(qiáng)和改進(jìn),使其在語(yǔ)音識(shí)別領(lǐng)域處于世界領(lǐng)先水平。
基于HTK的語(yǔ)言識(shí)別時(shí),識(shí)別 結(jié)果適用只能顯示在DOS或終端上,而且不利于將結(jié)果保存、移植或者二次開(kāi)發(fā)利用。在本語(yǔ)音識(shí)別系統(tǒng)中使用了HTK接口工具 ATK(AnApplication Toolkit for HTK)。ATK是由英國(guó)劍橋大學(xué)開(kāi)發(fā)的開(kāi)源語(yǔ)音識(shí)別工具,是對(duì)HTK的C++多線程封裝,跟HTK一樣,它支持Linux和Windows,它包括 HTK(HTKLib)、AHTK、AGram、ANGram、ADict、AHMMs、AResource、ARMan、ARec、ACode、 ASour ce、ATee、AComponent、ABuffer、APacket、Asyn、FLite(SYNLib)、ALog模塊部件。
基于ATK的語(yǔ)音識(shí)別軟件應(yīng)用系統(tǒng)的由語(yǔ)音信號(hào)采集模塊、基于DMA的雙向高速RAM存取模塊、ATK語(yǔ)音識(shí)別模塊、系統(tǒng)管理模塊、語(yǔ)音輸出模塊等模塊組成,如圖4所示。
圖4 系統(tǒng)軟件設(shè)計(jì)結(jié)構(gòu)圖
在軟件設(shè)計(jì)中,系統(tǒng)管理模塊主要負(fù)責(zé)系統(tǒng)的總體管理調(diào)度,是應(yīng)用系統(tǒng)的調(diào)度中心;語(yǔ)音信號(hào)采集模塊主要負(fù)責(zé)控制數(shù)據(jù)采集芯片TPS 65930;基于DMA的雙向RAM存取模塊主要負(fù)責(zé)實(shí)現(xiàn)DMA驅(qū)動(dòng)及雙向RAM的讀寫(xiě)存取,使用了通道1來(lái)實(shí)現(xiàn)高速地把語(yǔ)音信號(hào)采集到的數(shù)據(jù)存儲(chǔ)到 RAM上,并使用通道2實(shí)現(xiàn)高速地把RAM的數(shù)據(jù)取出來(lái),用于語(yǔ)音的識(shí)別;語(yǔ)音輸出模塊主要負(fù)責(zé)把相應(yīng)的音頻數(shù)據(jù)送到TPS65930,并控制TPS6 5930對(duì)接收到的音頻解碼輸出到功放電路,實(shí)現(xiàn)語(yǔ)音輸出的功能。軟件的設(shè)計(jì)流程圖如圖5所示。
圖5 軟件設(shè)計(jì)流程
2 語(yǔ)音識(shí)別系統(tǒng)實(shí)驗(yàn)及結(jié)果
文中設(shè)計(jì)的語(yǔ)音識(shí)別系統(tǒng)如圖6所示。在實(shí)驗(yàn)中總共進(jìn)行了3輪話語(yǔ)測(cè)試,每輪300句話語(yǔ)測(cè)試,其中 150句為家庭監(jiān)護(hù)機(jī)器人需要識(shí)別的話語(yǔ),150句話語(yǔ)為機(jī)器人不予置理的無(wú)關(guān)話語(yǔ)。從實(shí)驗(yàn)測(cè)試結(jié)果可看出,對(duì)于識(shí)別10個(gè)需要識(shí)別的話語(yǔ)的識(shí)別率高達(dá)94.67%以上,具有較高的識(shí)別率,因而該語(yǔ)音識(shí)別系統(tǒng)較好達(dá)到了家庭監(jiān)護(hù)機(jī)器人使用的要求。
3 結(jié)論
文中通過(guò)DSP、DMA和ARM Cortex-A8的并行處理,利用雙緩沖的方法,在嵌入式Linux上實(shí)現(xiàn)了基于ATK的實(shí)時(shí)語(yǔ)音識(shí)別系統(tǒng)。該系統(tǒng)可以實(shí)時(shí)地實(shí)現(xiàn)語(yǔ)音識(shí)別,具有較高識(shí)別率,較快的響應(yīng)速度??梢詰?yīng)用在家庭監(jiān)護(hù)機(jī)器人及其相關(guān)領(lǐng)域中。
設(shè)計(jì)詳情:實(shí)時(shí)語(yǔ)音識(shí)別系統(tǒng)在家庭監(jiān)護(hù)機(jī)器人的實(shí)現(xiàn)
基于語(yǔ)音識(shí)別的汽車(chē)空調(diào)控制系統(tǒng)設(shè)計(jì)
現(xiàn)在汽車(chē)上使用的電器越來(lái)越多,駕駛員需要手動(dòng)操作的電器開(kāi)關(guān)也越來(lái)越多, 不但增加了駕駛員的負(fù)擔(dān),還影響了行車(chē)安全。本文以 STM32F103VET6(以下簡(jiǎn)稱(chēng)STM32)芯片為控制核心,采用高性能LD3320語(yǔ)音識(shí)別芯片,設(shè)計(jì)基于語(yǔ)音識(shí)別的汽車(chē)空調(diào)控制系統(tǒng)。該系統(tǒng)可 以用語(yǔ)音有效控制汽車(chē)空調(diào),減輕了駕駛員的操作負(fù)擔(dān),保證行車(chē)過(guò)程中的安全。
1 系統(tǒng)硬件設(shè)計(jì)
運(yùn)用語(yǔ)音識(shí)別技術(shù),結(jié)合各種傳感器對(duì)車(chē)身內(nèi)外的環(huán)境(如氣溫、陽(yáng)光強(qiáng)度等)以及制冷壓縮機(jī)的狀態(tài)等多種參數(shù)進(jìn)行實(shí)時(shí)檢測(cè),與設(shè)定參數(shù)相比較,微控制器經(jīng) 過(guò)運(yùn)算處理做出判斷,輸出相應(yīng)的調(diào)節(jié)和控制信號(hào)。執(zhí)行機(jī)構(gòu)經(jīng)過(guò)實(shí)時(shí)調(diào)整和修正,實(shí)現(xiàn)對(duì)車(chē)廂內(nèi)空氣環(huán)境全方位、多功能的調(diào)節(jié)和控制。系統(tǒng)的執(zhí)行機(jī)構(gòu)主要包括 溫度風(fēng)門(mén)電機(jī)、模式風(fēng)門(mén)電機(jī)、循環(huán)風(fēng)門(mén)電機(jī)、鼓風(fēng)機(jī)、壓縮機(jī)、除霜控制繼電器等。圖1為系統(tǒng)結(jié)構(gòu)框圖。
1.1 主控制器
主控制器為基于ARM Cortex—M3內(nèi)核的32位微控制器STM32F103VET6,內(nèi)置64 KB RAM、512 KBFlash,以及豐富的增強(qiáng)I/O端口和聯(lián)接到兩條APB總線的外設(shè),主要控制傳感器模擬信號(hào)的采集、語(yǔ)音信號(hào)的收發(fā)和汽車(chē)空調(diào)控制信號(hào)的輸出。
1.2 語(yǔ)音識(shí)別模塊
語(yǔ)音識(shí)別芯片選用的是ICRoute公司的LD3320芯片。該芯片集成了語(yǔ)音識(shí)別處理器和一些外部電路,包括A/D轉(zhuǎn)化器、D/A轉(zhuǎn)換器、麥克風(fēng)接 口、聲音輸出接口等。本芯片在設(shè)計(jì)上注重節(jié)能與高效,不需要外接任何的輔助芯片(如Flash、RAM等),直接集成在現(xiàn)有的產(chǎn)品中即可以實(shí)現(xiàn)語(yǔ)音識(shí)別功 能。識(shí)別的關(guān)鍵詞語(yǔ)列表是可以任意動(dòng)態(tài)編輯的。
2 系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)軟件設(shè)計(jì)采用C語(yǔ)言開(kāi)發(fā),用Keil uVision4軟件進(jìn)行編譯。開(kāi)發(fā)過(guò)程按照模塊化分塊進(jìn)行,系統(tǒng)的主要模塊包括語(yǔ)音識(shí)別模塊、語(yǔ)音播放模塊、SD卡模塊以及空調(diào)控制模塊。
2.1 語(yǔ)音識(shí)別模塊
語(yǔ)音識(shí)別模塊采用中斷的方式進(jìn)行工作,其工作流程大致為芯片初始化、寫(xiě)入識(shí)別列表、開(kāi)始識(shí)別、中斷響應(yīng)并獲取識(shí)別結(jié)果。語(yǔ)音識(shí)別流程如圖8所示。在初始 化程序里,主要完成軟復(fù)位、模式設(shè)定、時(shí)鐘頻率設(shè)定和FIFO設(shè)定。在寫(xiě)入識(shí)別列表之前,首先要讀取寄存器B2的值,檢查LD3320是否處于空閑狀態(tài); 然后,把識(shí)別語(yǔ)音列表信息寫(xiě)入LD3320的05和B9寄存器中,每個(gè)識(shí)別條目是標(biāo)準(zhǔn)普通話的漢語(yǔ)拼音(小寫(xiě)),每?jī)蓚€(gè)漢語(yǔ)拼音之間用一個(gè)空格間隔。在完 成添加語(yǔ)音識(shí)別列表后,設(shè)定寄存器35的值為45H。此處設(shè)定的值越大,代表麥克的音量越大,識(shí)別距離也越遠(yuǎn),但是可能產(chǎn)生較多的誤識(shí)別;值越小代表麥克 的音量越小,需要近距離說(shuō)話才能啟動(dòng)語(yǔ)音識(shí)別功能,識(shí)別率也高。設(shè)定寄存器37值為06H,啟動(dòng)語(yǔ)音識(shí)別,即可開(kāi)始語(yǔ)音識(shí)別。如果麥克風(fēng)采集到聲音,不管 是否識(shí)別出正常結(jié)果,都會(huì)產(chǎn)生一個(gè)中斷信號(hào)。進(jìn)入中斷函數(shù)后,首先清零寄存器29和寄存器02;然后,檢查B2寄存器是否為0x21。若值為0x21,表 示閑,可以檢測(cè)2B的值;若為1,表示語(yǔ)音識(shí)別有結(jié)果產(chǎn)生。寄存器BF讀到數(shù)值為0x35,可以確定是一次語(yǔ)音識(shí)別流程正常結(jié)束。寄存器BA表示語(yǔ)音識(shí)別 有幾個(gè)識(shí)別候選結(jié)果。最后,可以讀取寄存器C5,獲取識(shí)別結(jié)果。
2.2 語(yǔ)音播放模塊
語(yǔ)音播放的軟件設(shè)計(jì)流程包括通用初始化、MP3播放初始化、播放音量調(diào)節(jié)、開(kāi)始播放聲音以及中斷響應(yīng)。通用初始化時(shí),首先連續(xù)讀取寄存器06,相當(dāng)于激 活了芯片;然后,按順序設(shè)置相關(guān)寄存器的值。MP3播放初始化時(shí),首先要設(shè)置寄存器BD的值為02H,啟動(dòng)MP3播放模塊;然后,向寄存器17寫(xiě)入 48H,激活DSP。語(yǔ)音播放模塊的音量分為16級(jí),用4位二進(jìn)制表示,這里需要設(shè)置寄存器8E的第2~5位的值來(lái)調(diào)節(jié)播放音量。當(dāng)播放語(yǔ)音時(shí),首先需要 清零,開(kāi)始播放位置。將寄存器1B的第3位設(shè)為1,然后執(zhí)行循環(huán)。當(dāng)播放條件為真時(shí),順序?qū)P3數(shù)據(jù)放入寄存器01(每次1個(gè)字節(jié)),播放位置值增加 1。當(dāng)寄存器 06的第3位等于0或者播放位置小于MP3文件的總長(zhǎng)度時(shí),就跳出循環(huán)。等到芯片播放該段后會(huì)發(fā)出中斷請(qǐng)求,而中斷函數(shù)會(huì)不斷接收數(shù)據(jù),直到FIFO- DA-TA裝滿(mǎn)或聲音數(shù)據(jù)結(jié)束。
結(jié)語(yǔ)
本文介紹了基于語(yǔ)音識(shí)別的汽車(chē)空調(diào)控制系統(tǒng),分別對(duì)硬件電路和軟件設(shè)計(jì)進(jìn)行了詳細(xì)的介紹。本系統(tǒng)開(kāi)發(fā)成本低、性能優(yōu)越,系統(tǒng)測(cè)試表明,本系統(tǒng)具有一定的應(yīng)用價(jià)值,可以用于中低檔汽車(chē)。
設(shè)計(jì)詳情:基于語(yǔ)音識(shí)別的汽車(chē)空調(diào)控制系統(tǒng)設(shè)計(jì)
基于非特定人語(yǔ)音識(shí)別芯片的技術(shù)方案
本文利用智能語(yǔ)音交互芯片設(shè)計(jì)了某模擬訓(xùn)練器的示教與回放系統(tǒng)。示教系統(tǒng)為操作人員生動(dòng)的演示標(biāo)準(zhǔn)操作流程及相應(yīng)的操作現(xiàn)象,極 大地縮短了對(duì)操作人員的培訓(xùn)時(shí)間,提高了培訓(xùn)效果?;胤畔到y(tǒng)通過(guò)記錄操作訓(xùn)練過(guò)程中各操作人員的口令、聲音強(qiáng)度、動(dòng)作、時(shí)間、操作現(xiàn)象等,待操作訓(xùn)練結(jié)束 后通過(guò)重演訓(xùn)練過(guò)程,以便操作者及時(shí)糾正自己的問(wèn)題。示教系統(tǒng)也可理解為對(duì)標(biāo)準(zhǔn)操作訓(xùn)練過(guò)程的回放。該系統(tǒng)不需要虛擬現(xiàn)實(shí)技術(shù)的支持,在小型的嵌入式系統(tǒng) 上就可以實(shí)現(xiàn)。
1 系統(tǒng)原理
該模擬訓(xùn)練器由一臺(tái)測(cè)控計(jì)算機(jī)和多臺(tái)從設(shè)備組成。如 圖1所示。在此僅對(duì)一臺(tái)從設(shè)備進(jìn)行介紹,其硬件系統(tǒng)主要由測(cè)控計(jì)算機(jī)、Arduino mega2560 控制器、語(yǔ)音識(shí)別單元、聲強(qiáng)檢測(cè)單元、語(yǔ)音合成單元、面板控制單元、儀器面板等組成。面板控制單元較為復(fù)雜,包含多種控制電路,在模擬訓(xùn)練中負(fù)責(zé)該從設(shè)備 在Arduinomega2560 控制器的控制下完成整個(gè)訓(xùn)練過(guò)程,在示教與回放系統(tǒng)中完成對(duì)剛才操作訓(xùn)練操作現(xiàn)象的重演,其具體電路設(shè)計(jì)在此不做介紹。
語(yǔ)音識(shí)別單元負(fù)責(zé)識(shí)別操作人員的操作口令;聲強(qiáng)檢測(cè)單元負(fù)責(zé)檢測(cè)聲強(qiáng)大小并以此作為判斷是哪臺(tái)從設(shè)備操作人員口令的依據(jù);Arduino mega2560控制器負(fù)責(zé)監(jiān)視儀器面板各元件的狀態(tài)來(lái)識(shí)別操作人員的動(dòng)作,從而完成對(duì)操作訓(xùn)練過(guò)程的記錄。各儀器的操作現(xiàn)象根據(jù)操作動(dòng)作事先編制無(wú)需記 錄。在操作回放過(guò)程中,測(cè)控計(jì)算機(jī)根據(jù)所記錄的數(shù)據(jù),通過(guò)控制相應(yīng)從設(shè)備的Arduino mega2560控制器重現(xiàn)所記錄的操作過(guò)程。
2 單元系統(tǒng)設(shè)計(jì)
2.1 語(yǔ)音識(shí)別單元設(shè)計(jì)
目前,語(yǔ)音識(shí)別技術(shù)的發(fā)展十分迅速,按照識(shí)別對(duì)象的類(lèi)型可以分為特定人和非特定人語(yǔ)音識(shí)別。特定人是指識(shí)別對(duì)象為專(zhuān)門(mén)的人,非特定人是指識(shí)別對(duì)象是針對(duì)大多數(shù)用戶(hù),一般需要采集多個(gè)人的語(yǔ)音進(jìn)行錄音和訓(xùn)練,經(jīng)過(guò)學(xué)習(xí),從而達(dá)到較高的識(shí)別率。
本文采用的LD3320語(yǔ)音識(shí)別芯片是一顆基于非特定人語(yǔ)音識(shí)別(Speaker?Independent Automatic SpeechRecognition,SI?ASR)技術(shù)的芯片。該芯片上集成了高精度的A/D 和D/A 接口,不再需要外接輔助的FLASH 和RAM,即可以實(shí)現(xiàn)語(yǔ)音識(shí)別、聲控、人機(jī)對(duì)話功能,提供了真正的單芯片語(yǔ)音識(shí)別解決方案。并且,識(shí)別的關(guān)鍵詞語(yǔ)列表是可以動(dòng)態(tài)編輯的。其語(yǔ)音識(shí)別過(guò)程如 圖2所示。
語(yǔ)音識(shí)別單元采用ATmega168 作為MCU,負(fù)責(zé)控制LD3320完成所有和語(yǔ)音識(shí)別相關(guān)的工作,并將識(shí)別結(jié)果通過(guò)串口上傳至Arduino mega2560 控制器。對(duì)LD3320芯片的各種操作,都必須通過(guò)寄存器的操作來(lái)完成,寄存器讀寫(xiě)操作有2種方式(標(biāo)準(zhǔn)并行方式和串行SPI方式)。在此采用并行方式, 將LD3320的數(shù)據(jù)端口與MCU的I/O口相連。其硬件連接圖如圖3所示。
語(yǔ)音識(shí)別流程采用中斷方式工作,其工作流程分為初始化、寫(xiě)入關(guān)鍵詞、開(kāi)始識(shí)別和響應(yīng)中斷等。MCU的程序采用ARDUINO IDE編寫(xiě)[5],調(diào)試完成后通過(guò)串口進(jìn)行燒錄,控制LD3320完成語(yǔ)音識(shí)別,并將識(shí)別結(jié)果上傳至Arduino mega2560控制器。其軟件流程如圖4所示。
3 系統(tǒng)軟件設(shè)計(jì)
示教與回放系統(tǒng)的軟件設(shè)計(jì)包括測(cè)控計(jì)算機(jī)的軟件設(shè)計(jì)和各從設(shè)備Arduino mega260控制器的軟件設(shè)計(jì)。
測(cè)控計(jì)算機(jī)是整個(gè)系統(tǒng)的控制核心,其軟件采用C#進(jìn)行編寫(xiě),在示教與回放系統(tǒng)中主要是對(duì)操作數(shù)據(jù)的記錄以便根據(jù)所記錄的數(shù)據(jù)對(duì)操作過(guò)程進(jìn)行精確回放,需 要記錄的數(shù)據(jù)包括:各從設(shè)備操作人員的操作口令,操作動(dòng)作,口令及動(dòng)作時(shí)間,各操作對(duì)應(yīng)的操作現(xiàn)象。為簡(jiǎn)化記錄數(shù)據(jù),事先編制好各事件代碼,記錄過(guò)程只記 錄代碼,大大提高程序效率。建立結(jié)構(gòu)體如下:
在操作訓(xùn)練過(guò)程中測(cè)控計(jì)算機(jī)每隔50 ms 對(duì)下位機(jī)進(jìn)行控制及輪詢(xún),并記錄反饋數(shù)據(jù),在數(shù)據(jù)記錄時(shí)以50 ms 為一個(gè)單位。采用定時(shí)器對(duì)時(shí)間進(jìn)行控制。在回放過(guò)程中首先比對(duì)當(dāng)前時(shí)間和所記錄的時(shí)間,當(dāng)所記錄的時(shí)間與當(dāng)前時(shí)間吻合時(shí)測(cè)控計(jì)算機(jī)控制下位機(jī)執(zhí)行該事件, 完成事件回放。
Arduino mega2560控制器負(fù)責(zé)接收測(cè)控計(jì)算機(jī)的控制指令并執(zhí)行指令,讀取語(yǔ)音識(shí)別結(jié)果,對(duì)聲強(qiáng)數(shù)據(jù)采集和處理,控制語(yǔ)音合成單元進(jìn)行語(yǔ)音合成等。Arduinomega2560 控制器采用串口中斷的方式進(jìn)行命令接收。
只有正確接收到命令才會(huì)執(zhí)行并回傳結(jié)果,若測(cè)控計(jì)算機(jī)在限定時(shí)間內(nèi)未收到回傳結(jié)果則表明發(fā)生錯(cuò)誤,測(cè)控計(jì)算機(jī)需重新發(fā)送。數(shù)據(jù)接收流程圖如圖8所示。
4 總結(jié)
本文利用智能語(yǔ)音芯片設(shè)計(jì)了某模擬訓(xùn)練器的示教與回放系統(tǒng),該系統(tǒng)不需要現(xiàn)在流行的虛擬現(xiàn)實(shí)技術(shù)的支持,僅在MCU 的控制下就可以運(yùn)行。該系統(tǒng)也可以在小型的便攜式設(shè)備上實(shí)現(xiàn),具有良好的應(yīng)用前景。
設(shè)計(jì)詳情:基于非特定人語(yǔ)音識(shí)別芯片的技術(shù)方案
相關(guān)文章:
基于LD3320的嵌入式語(yǔ)音識(shí)別系統(tǒng)設(shè)計(jì)
基于DSP的語(yǔ)音識(shí)別系統(tǒng)的實(shí)現(xiàn)及分析
基于TMS320VC5507的語(yǔ)音識(shí)別系統(tǒng)實(shí)現(xiàn)
基于語(yǔ)音識(shí)別技術(shù)的聲控鼠標(biāo)光標(biāo)程序設(shè)計(jì)
基于DSP的漢字語(yǔ)音識(shí)別系統(tǒng)設(shè)計(jì)
評(píng)論