語音識別操縱小車設(shè)計本科畢業(yè)設(shè)計_第1頁
語音識別操縱小車設(shè)計本科畢業(yè)設(shè)計_第2頁
語音識別操縱小車設(shè)計本科畢業(yè)設(shè)計_第3頁
語音識別操縱小車設(shè)計本科畢業(yè)設(shè)計_第4頁
語音識別操縱小車設(shè)計本科畢業(yè)設(shè)計_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、基于語音識別的智能小車摘要隨著運算機技術(shù)、模式識別和信號處置技術(shù)及聲學(xué)技術(shù)等的進展,使得能知足各類需要的語音識別系統(tǒng)的實現(xiàn)成為可能。近二三十年來,語音識別在運算機、信息處置、通信與電子系統(tǒng)、自動操縱等領(lǐng)域中有著愈來愈普遍的應(yīng)用。本設(shè)計是語音識別在操縱領(lǐng)域的一個專門好實現(xiàn),它將本來需要手工操作的工作用語音來方便地完成。語音識別按說話人的發(fā)言方式可分為孤立詞GsolatedWord)識別、連接詞(ConnectedWord)識別和持續(xù)語音(ContinuousSpeech)識別。從識別對象的類型來看,語音識別能夠分為特定人(SpeakerDependent)語音識別和非特定人(SpeakerInd

2、ependent)語音識別。本設(shè)計采納的識別類型是特定人孤立詞語音識別。本系統(tǒng)分上位機和下位機兩大方面。上位機利用PC上MATLAB壯大的數(shù)學(xué)計算能力,進行語音輸入、端點監(jiān)測、特點參數(shù)提取、匹配、串口操縱等工作,依照識別到的不同語音通過PC串口向下位機發(fā)送不同的指令。下位機是單片機操縱的一個小車,單片機收到上位機傳來的指令后,依照不同的指令操縱小車完成不同的動作。該設(shè)計對語音識別的現(xiàn)有算法進行了驗證和實現(xiàn),并對端點檢測和匹配算法進行了些許改良。本設(shè)計達到了預(yù)期目標(biāo),實現(xiàn)了所期望的功能成效。關(guān)鍵詞:MATLAB,語音識別,端點檢測,LPC,單片機,電機操縱SMARTCARGASEDSPEECHR

3、ECOGNITIONABSTRACTWiththedevelopmentofcomputertechnology,patternrecognition,signalprocessingtechnologyandacoustictechnologyetc,thespeechrecognitionsystemthatcanmeetthevariousneedsofpeopleismorepossibletopastthreedecades,thevoicerecognitioninthefieldofcomputer,informationprocessing,communicationsande

4、lectronicsystems,automaticcontrolhasincreasinglywiderangeofapplications.Speechrecognitionbythespeaker5sspeechcanbedividedintoisolatedword(IsolatedWord)identification,conjunctions(ConnectedWord)andcontinuousspeechrecognition(ContinuousSpeech)identification.Identifyingthetypeofobjectfromthepointofview

5、,thevoicerecognitioncanbedividedintoaspecificperson(SpeakerDependent)speechrecognitionandnon-specific(SpeakerIndependent)speechrecognition.Thisdesignusestheidentificationtypeisaspecificpersonisolatedwordspeechrecognition.Thisdesignisofagoodimplementationofspeechrecognitioninthecontrolfield,itdoesthe

6、workthatwouldotherwiserequiremanualoperationbythevoiceofpeoplesystemincludestwomajoraspects:thehostsystemandtheslavesystem.ThehostsystemusetheMATLABonthecomputerwhichhaspowerfulmathematicalcomputingabilitytodotheworkofvoiceinput,endpointmonitoring,featureextraction,matching,identificationandserialco

7、ntrol,thenitsenddifferentcommandsthroughthePCserialporttoslavesystemaccordingdifferentrecognisedvoice.Theslavesystemisacarcontrolledbyasingle-chipcontrolsthecardodifferentactionsaccordingdifferentinstructionsreceived.ThedesignischeckingandrealizationoftheexistingspeechrecognitionalgorithmandItheendp

8、ointdetectionandmatchingalgorithmswereslightdesignachievedtheexpectedgoalsandachievedthedesiredfunctionaleffect.KEYWORDS:MATLAB,SpeechRecognition,ExtremePointsTest,LPC,ChipMicrocomputer,MotorDrive前言1第1章系統(tǒng)整體設(shè)計方案介紹3第2章上位機設(shè)計4§語音識別簡介4§語音識別進展4§語音識別的分類4§聲音錄入5§聲音的預(yù)處置6§欲加重處置6&#

9、167;分幀處置6§端點檢測6§過零率6§音量7§過零率和音量積譜8§用過零率和音量積譜來檢測端點9§特點參數(shù)提取10§特點參數(shù)概述10§用MATLAB實現(xiàn)LPC系數(shù)的計算14§語音識別中的模式匹配14§DTW算法原理14§程序?qū)崿F(xiàn)16§MATLAB上的GUI設(shè)計18第3章下位機設(shè)計20§小車整體設(shè)計20§小車整體框圖20§小車結(jié)構(gòu)設(shè)計20§小車硬件設(shè)計20§單片機電路設(shè)計20§驅(qū)動電路設(shè)計23§穩(wěn)壓電路設(shè)

10、計24§小車軟件設(shè)計24§主程序流程圖24§部份主程序25§底層驅(qū)動程序27結(jié)論29參考文獻30致謝31附錄32,11X-刖5隨著運算機技術(shù)、模式識別和信號處置技術(shù)及聲學(xué)技術(shù)等的進展,使得能知足各類需要的語音識別系統(tǒng)的實現(xiàn)成為可能。近二三十年來,語音識別在運算機、信息處置、通信與電子系統(tǒng)、自動操縱等領(lǐng)域中有著愈來愈普遍的應(yīng)用。語音命令操縱可普遍用于家電語音遙控、玩具、智能儀器及移動等便攜設(shè)備中。利用語音作為人機交互的途徑關(guān)于利用者來講是最自然的一種方式,同時設(shè)備的小型化也要求省略鍵盤以節(jié)省體積。現(xiàn)今,語音識別產(chǎn)品在人機交互應(yīng)用中已經(jīng)占到愈來愈大的比例。語

11、音識別按說話人的發(fā)言方式可分為孤立詞(IsolatedWord)識別、連接詞(ConnectedWord)識別和持續(xù)語音(ContinuousSpeech)識別。孤立詞識別是指說話人每次只說一個詞或短語,每一個詞或短語在辭匯表中都算作一個詞條,一樣用在語音撥號系統(tǒng)中。連接詞語音識別支持一個小的語法網(wǎng)絡(luò),其內(nèi)部形成一個狀態(tài)機,能夠?qū)崿F(xiàn)語音查詢、航空定票等系統(tǒng)。持續(xù)語音識別是指對說話人以日常自然的方式發(fā)音,通常特指用于語音錄入的聽寫機。從識別對象的類型來看,語音識別能夠分為特定人(SpeakerDependent)語音識別和非特定人(SpeakerIndependent)語音識別。特定人是指只針對

12、一個用戶的語音識別,非特定人那么可用于不同的用戶。事實上,非特定人語音識別的初始識別率往往都比較低,一樣都要求用戶花必然的時刻對系統(tǒng)進行訓(xùn)練,將系統(tǒng)的參數(shù)進行必然的自適應(yīng)調(diào)整,才能使識別率達到中意的程度。本設(shè)計采納的識別類型是特定人孤立詞語音識別。本設(shè)計是語音識別在操縱領(lǐng)域的一個專門好實現(xiàn),它將本來需要手工操作的工作用語音來方便地完成。本系統(tǒng)分上位機和下位機兩大方面。上位機利用PC上MATLAB壯大的數(shù)學(xué)計算能力,進行語音輸入、端點監(jiān)測、特點參數(shù)提取、匹配、串口操縱等工作,依照識別到的不同語音通過PC串口向下位機發(fā)送不同的指令。下位機是單片機操縱的一個小車,單片機收到上位機傳來的指令后,很據(jù)不

13、同的指令操縱小車完成不同的動作。該設(shè)計對語音識別的現(xiàn)有算法進行了驗證和實現(xiàn),并對端點檢測和匹配算法進行了些許改良。為了更方便的進行上位機的操作,本設(shè)計用MATLAB的GUI設(shè)計了一個圖形界面。上面設(shè)置了串口選擇框、錄音開始按鈕、語音識別結(jié)果框等。下位機采納STC2C5A60S2單片機作為操縱中心,采納L298專用驅(qū)動芯片搭建雙橋,進行點擊的正反轉(zhuǎn)調(diào)速等操縱。本設(shè)計達到了預(yù)期目標(biāo),實現(xiàn)了所期望的功能成效。第1章系統(tǒng)整體設(shè)計方案介紹本系統(tǒng)分上位機和下位機兩大方面。上位機利用PC上MATLAB壯大的數(shù)學(xué)計算能力,進行語音的輸入、端點監(jiān)測、特點參數(shù)提取、匹配、識別、用口操縱等工作,依照識別到的不同語音

14、通過PC串口向下位機發(fā)送不同的指令。下位機是單片機操縱的一個小車,單片機收到上位機傳來的指令后,很據(jù)不同的指令操縱小車完成不同的動作。PC機和小車之間通過串口無線傳輸模塊進行數(shù)據(jù)傳輸。整體框圖如圖1-1所示:圖1-1系統(tǒng)整體框圖第2章上位機設(shè)計上位負(fù)責(zé)語音的識別,并依照識別到的不同結(jié)果向下位機(小車)發(fā)送不同的指令。上位機的設(shè)計基于MATLAB平臺,利用MATLAB壯大的數(shù)學(xué)計算能力,進行語音的輸入、預(yù)處置、端點監(jiān)測、特點參數(shù)提取、匹配、識別、串口操縱等工作。§2.1 語音識別簡介§2.1.1 語音識別進展隨著時期的進展,人們愈來愈注重生活的品質(zhì)。便利時尚成為今世人們的追求

15、目標(biāo)。隨著運算機技術(shù)、模式識別和信號處置技術(shù)及聲學(xué)技術(shù)等的進展,使得能知足各類需要的語音識別系統(tǒng)的實現(xiàn)成為可能。近二三十年來,語音識別在運算機、信息處置、通信與電子系統(tǒng)、自動操縱等領(lǐng)域中有著愈來愈普遍的應(yīng)用。語音命令操縱可普遍用于家電語音遙控、玩具、智能儀器及移動等便攜設(shè)備中。利用語音作為人機交互的途徑關(guān)于利用者來講是最自然的一種方式,同時設(shè)備的小型化也要求省略鍵盤以節(jié)省體積?,F(xiàn)今,語音識別產(chǎn)品在人機交互應(yīng)用中已經(jīng)占到愈來愈大的比例。§2.1.2 語音識別的分類語音識別按說話人的發(fā)言方式可分為孤立詞(IsolatedWord)識別、連接詞(ConnectedWord)識別和持續(xù)語音(

16、ContinuousSpeech)識別。孤立詞識別是指說話人每次只說一個詞或短語,每一個詞或短語在辭匯表中都算作一個詞條,一樣用在語音撥號系統(tǒng)中。連接詞語音識別支持一個小的語法網(wǎng)絡(luò),其內(nèi)部形成一個狀態(tài)機,能夠?qū)崿F(xiàn)簡單的家用電器的操縱,而復(fù)雜的連接詞語音識別系統(tǒng)能夠用于語音查詢、航空定票等系統(tǒng)。持續(xù)語音識別是指對說話人以日常自然的方式發(fā)音,通常特指用于語音錄入的聽寫機。顯然,持續(xù)非特定人語音識別的難度要大得多,因為不僅有說話人口音的問題,還有協(xié)同發(fā)音、斷字?jǐn)嗑洹⑺阉鞯葐栴},除考慮語音的聲學(xué)模型外還要涉及到語言模型,如構(gòu)詞法、文法等。從識別對象的類型來看,語音識別能夠分為特定人(SpeakerDe

17、pendent)語音識別和非特定人(SpeakerIndependent)語音識別。特定人是指只針對一個用戶的語音識別,非特定人那么可用于不同的用戶。事實上,非特定人語音識別的初始識別率往往都比較低,一樣都要求用戶花必然的時刻對系統(tǒng)進行訓(xùn)練,將系統(tǒng)的參數(shù)進行必然的自適應(yīng)調(diào)整,才能使識別率達到中意的程度。非特定人大詞表持續(xù)語音識別是近幾年研究的重點,也是研究的難點。目前的持續(xù)語音識別大多是基于HMM(隱馬爾可夫模型)框架,并將聲學(xué)、語言學(xué)的知識統(tǒng)一引入來改善那個框架,其硬件平臺一般是功能壯大的工作站或PC機。§2.2 聲音錄入本設(shè)計利用PC上的話筒口進行聲音錄入。通過MATLAB的wa

18、vrecord函數(shù)進行聲音錄入。wavrecord是MATLAB的專有聲音錄入函數(shù),他有一下三種挪用方式:(1)y=wavrecord(n,Fs)(2) y=wavrecord(n,Fs,ch)(3)y=wavrecord(n,Fs,'dtype')其中n代表聲音錄入的總采樣數(shù)。Fs代表聲音的采樣率。ch代表聲音錄入采納的通道數(shù),當(dāng)ch為1時為單聲道,當(dāng)ch為2時為立體聲Jdtype'代表采樣數(shù)據(jù)的存儲類型,MATLAB提供四種存儲類型如下:(I)double*(defaultvalue),16bits/sample(3) 'single',16bits

19、/sample(3)'inti6',16bits/sample(4) 'uint8',8bits/sample本設(shè)計單次采樣總數(shù)為50000點,采樣率為22000HZ。即:y=wavrecord(50000,22000);§2.3 聲音的預(yù)處置§2.3.1 欲加重處置預(yù)加重的目的在于濾除低頻干擾,尤其是50Hz或60Hz的工頻干擾,將關(guān)于語音識別更為有效的高頻部份的頻譜進一步提升。在計算短時能量之前應(yīng)用該濾波器,還能夠起到排除直流漂移、抑制隨機噪聲和提升清音部份能量的成效。§2.3.2 分幀處置在計算各個系數(shù)之前要先將語音信號作分幀

20、處置。語音信號是瞬時轉(zhuǎn)變的,但在1020nls內(nèi)是相對穩(wěn)固的.我設(shè)定的采樣頻率為11025因此咱們對預(yù)處置后的語音信號SI(n)以1024點為一幀進行處置,幀移為512個采樣點。§2.4 端點檢測所謂端點檢測,確實是在實時輸入的聲音信號中,區(qū)分背景噪聲和環(huán)境噪聲,準(zhǔn)確地判定作聲音信號的開始點和終止點。在語音識別系統(tǒng)中,正確、有效地進行端點檢測不僅能夠減少”算量和縮短處置時刻,而且能排除無聲段的噪聲干擾、提高語音識別的正確率。研究說明,即便是在安靜的環(huán)境下,語音識別系統(tǒng)一半以上的錯誤可能要緊來基于MTLAB編寫的語音端點檢測程序。除此之外,在語音合成、編碼等系統(tǒng)中,高效的端點檢測也直接

21、阻礙乃至決定著系統(tǒng)的要緊性能。因此,端點檢測的效率、質(zhì)量在語音處置系統(tǒng)中顯得相當(dāng)重要。§2.4.1 過零率過零率(ZeroCrossingRate)是在每一個音框中,消息通過零點的次數(shù)。一樣而言,噪聲的過零率大于氣音的過零率,而氣音的過零率乂大于有聲音的過零率。一半情形下,噪聲的波形和聲音波形相較幅度超級小,為了排除噪聲對過零率產(chǎn)生的阻礙,我將聲音的原始譜向上平移,使得噪聲的過零點阻礙大大減小。如下,圖2-1展現(xiàn)了沒有平移前的過零譜圖,圖2-2展現(xiàn)了平移后的過零譜圖。能夠看出,平移后,話音能夠很容易從噪音中區(qū)分開來。圖27平移前的過零諳圖2-2平移后的過零語§2.4.2 音

22、量能量或音量代表聲音的大小,可由聲消息號的震幅來類比,乂稱為能量(Energy)或強度(Intensity)等。話音的能量遠(yuǎn)比噪聲的能量要大,故可用能量來區(qū)分是靜音仍是由話音。那個地址將每幀的幅度絕對值之和作為每一幀的總能量大小。音量譜如圖2-3所示:聲音波形音量譜圖2-3音量譜§243過零率和音量積譜通常利用短時能量來檢測濁音,用過零率來檢測清音,二者配合實現(xiàn)靠得住的端點檢測。端點檢測算法經(jīng)常使用的是由語音能量和過零率組合的有雙門限法,和短時能量和過零率的乘積組成的能頻值法。圖2-4展現(xiàn)了過零譜、音量譜和過零率和能量成績組成的譜線。聲音波形9G.LLL.111n加Ml幗ki.U9r

23、rrrrrd00.511.522.533.5,4x1050過零譜LL/inrrrrru00.511.522.533.54x10音量譜lUUULLl廠-III500/一ncc/rrx-Ir_u00.511.522.533.54x10xIO4過零音量積譜AqLLIII2/_ArrirrU00.511.522.533.54x10圖2-4過零音量積諾§2.4.4 用過零率和音量積譜來檢測端點端點檢測算法經(jīng)常使用的是由語音能量和過零率組合的有雙門限法,和短時能量和過零率的乘積組成的能頻值法。那個地址采納的是第二種方式,通過能量和過零率的乘積組成的能頻值來判定語音的端點。那個地址我對端點進行了兩

24、級判定。第一依照過零率和音量積設(shè)定一個較高的門限TH,假設(shè)譜大于TH,那么可確信2個端點A、B,并能夠為這2個端點之間是語音信號,如此相當(dāng)于完成初判。再依照背景噪聲的過零率和音量積設(shè)定一個比TH稍低的門限TL,若是信號的能量大于TL,那么所對應(yīng)的端點C、D之間仍是語音信號,至此完成了第二級判定。判定結(jié)果如圖2-5所示:4x10圖2-5端點檢測出的語音波形§2.5 特點參數(shù)提取§2.5.1 特點參數(shù)概述關(guān)于特點參數(shù),有多種參數(shù)可供選取。常見的有三種:(1)線形預(yù)測系數(shù)特點矢量(LPC)(2) LPC倒譜特點矢量(LPCC)(3) Mel倒譜系數(shù)(MFCC)1.線性預(yù)測系數(shù)(L

25、PC)那個地址我采納最簡單的一種線形預(yù)測系數(shù)特點矢量(LPC)。線性預(yù)測(LinearPrediction)分析是最有效的語音分析技術(shù)之一,在語音編碼、語音合成、語音識別和說話人識別等語音信號處置領(lǐng)域中取得了普遍的應(yīng)用。大體思想是:一個語音信號的抽樣值能夠用過去的假設(shè)干個抽樣值的線性組合來逼近。語音信號是一種典型的時變信號,但是若是把觀看時刻縮短到十毫秒至幾十毫秒,那么能夠取得一系列近似穩(wěn)固的信號。人的發(fā)音器官能夠用假設(shè)干段前后連接的聲管進行模擬,這確實是所謂的聲管模型。由于發(fā)音器官不可能毫無規(guī)律地快速轉(zhuǎn)變,因此語音信號是準(zhǔn)穩(wěn)固的(quasisteady)。全極點線性預(yù)測模型(LPC)能夠?qū)β?/p>

26、管模型進行專門好的描述,那個地址信號的鼓勵源是由肺部氣流的沖擊引發(fā)的,聲帶能夠有周期振動也能夠不振動,別離對應(yīng)濁音(Vowel)和清音(Consonant),而每段聲管那么對應(yīng)一個LPC模型的極點。一樣情形下,極點的個數(shù)在1216之間,就能夠夠足夠清楚地描述語音信號的特點了。LPC是語音分析的重要手腕,它能專門好地進行譜估量,即可作為語音特點的參數(shù)。因此僅用12個LPC系數(shù)就能夠?qū)iT好地表示復(fù)雜語音信號的特點,這就大大降低了信號的冗余度并有效地減少了計算量和存儲量,使之成為語音識別和語音緊縮的基礎(chǔ)。)&=1,2,。上式表示P個方程組成的方程組,未知數(shù)為P個。求解該方程組,就能夠夠取得系

27、統(tǒng)的線性預(yù)測系數(shù)。由基于自相關(guān)的遞推求解公式求解,也確實是所謂的Durbin算法得:£二=凡(0)凡-£,嚴(yán)見(一)k=ir(r-1)心a-1'=kII勺=4廣仁3/),與0E-2)紇"D公式中,上標(biāo)表示第'次迭代,每次迭代只計算和更新小外直到'=時,終止迭代。在MATLAB中利用Ipc函數(shù)計算LPC系數(shù),其語法為:a=Ipc(x,n);那個地址X為一幀語音信號,n為計算LPC參數(shù)的階數(shù)。通常X為240點或256點的數(shù)據(jù),n取1012,對語音識別來講就已經(jīng)足夠。2 .線性預(yù)測倒譜系數(shù)(LPCC)在語音識別系統(tǒng)中,很少直接利用LPC系數(shù),而是

28、由LPC系數(shù)推導(dǎo)出另一種參數(shù):線性預(yù)測倒譜系數(shù)(LPCC)。倒譜事實上是一種同態(tài)信號處置方式,標(biāo)準(zhǔn)的倒譜系數(shù)計算流程需要進行FFT變換,對數(shù)操作和相位校正等步驟,運算比較復(fù)雜。在實際運作中大多數(shù)語音識別系統(tǒng)都會采納倒譜參數(shù)來作為有關(guān)距離的氣宇。LPC倒譜系數(shù)是描述說話人聲道特性的,普遍應(yīng)用于聲紋識別。在實際計算中,當(dāng)序列x(n)為最小相位的情形下,能夠利用序列x(n)及其倒譜系數(shù)c(n)的遞推關(guān)系來簡化計算。序列x(n)及其復(fù)倒譜系數(shù)c(n)的遞推公式如下:0,v0以)=,僅一幻H。)(。)77 >0LPCC參數(shù)是一種超級重要的參數(shù),它不是由原始信號x(n)取得,而是由LPC系數(shù)冊取得的

29、。由式可得LPC到LPCC的直接遞推關(guān)系。c0=logG21 < m < pk3 .Mel尺度倒譜系數(shù)(MFCC)LPC模型是基于發(fā)音模型成立的,LPCC系數(shù)也是一種基于合成的參數(shù)。這種參數(shù)沒有充分利用人耳的聽覺特性。事實上,人的聽覺系統(tǒng)是一個特殊的非線性系統(tǒng),它響應(yīng)不同頻率信號的靈敏度是不同的,大體上是一個對數(shù)的關(guān)系。最近幾年來,一種能夠比較充分利用人耳這種特殊的感知特性的參數(shù)取得了普遍的應(yīng)用,這確實是Mel尺度倒譜參數(shù)(Mel-scaledCepstrumCoefficient),或稱Mel頻率倒譜系數(shù),簡稱為MFCC。大量的研究說明,MFCC參數(shù)能夠比LPCC參數(shù)更好地提高系

30、統(tǒng)的識別性能。從目前利用的情形來看,在大辭匯量語音識別應(yīng)用中已慢慢取代本來經(jīng)常使用的線性預(yù)測編碼導(dǎo)出的倒頻譜參數(shù),緣故是它考慮了人類發(fā)聲與接收聲音的特性,具有更好的魯棒性。由于語音信號在時域上的轉(zhuǎn)變快速而不穩(wěn)固,因此通常都將它轉(zhuǎn)換到頻域上來觀看,現(xiàn)在它的頻譜會隨著時刻作緩慢的轉(zhuǎn)變。因此通常將加窗后的幀通過快速傅立葉變換(FFT),求出每幀的頻譜參數(shù)。再將每幀的頻譜參數(shù)通過一組N個(N一樣為2030個)三角形帶通濾波器所組成的Mel頻率濾波器,將每一個頻帶的輸出取對數(shù),求出每一個輸出的對數(shù)能量(logenergy)Ek,k=1,2,.N。再將此N個參數(shù)進行余弦變換(cosinetransform

31、)求出L階的Mel-scalecepstrum參數(shù)。MFCC參數(shù)的計算是以“bark”為其頻率基準(zhǔn)的,它和線性頻率的轉(zhuǎn)換關(guān)系是:舞產(chǎn)25951嗚。(1+1)/MFCC參數(shù)也是按幀計算的。第一要通過FFT取得該幀信號的功率譜S(),轉(zhuǎn)換為Mel頻率下的功率譜。這需要在計算之前先在語音的頻譜范圍內(nèi)設(shè)置假設(shè)干個帶通濾波器:MFCC參數(shù)的計算通常采納如下的流程:(1)第一確信每一幀語音采樣序列的點數(shù)。對每幀序列5()進行預(yù)加重處置后再通過離散FFT變換,取模的平方取得離散功率譜S()。(2)計算S()通過M個",式)后所得的功率值,即計算S5)和“,”()在各離散頻率點上乘積之和,得到M個參

32、數(shù)=,”一1。(3)計算2的自然對數(shù),取得與,=,”一1。(4)對44,42計算其離散余弦變換,取得外,加=0,也-1。(5)舍去代表直流成份的°。,取口,3,,5作為MFCC參數(shù)。§2.5.2用MATLAB實現(xiàn)LPC系數(shù)的計算本系統(tǒng)利用的特點參數(shù)是線性預(yù)測系數(shù)(LPC)。在MATLAB中利用Ipc函數(shù)計算LPC系數(shù),其語法為:a=Ipc(x,n);那個地址X為一幀語音信號,n為計算LPC參數(shù)的階數(shù)。通常X為240點或256點的數(shù)據(jù),n取1012,對語音識別來講就已經(jīng)足夠。§2.6語音識別中的模式匹配§2.6.1DTW算法原理目前,語音識別的匹配要緊應(yīng)用

33、HMM和DTW兩種算法。DTW算法由于沒有一個有效地用統(tǒng)計方式進行訓(xùn)練的框架,也不容易將低層和頂層的各類知識用到語音識別算法中,因此在解決大辭匯量、持續(xù)語音、非特定人語音識別問題時較之HMM算法相形見細(xì)。HMM是一種用參數(shù)表示的,用于描述隨機進程統(tǒng)計特性的概率模型。而關(guān)于孤立詞識別,HMM算法和DTW算法在相同條件下,識別成效相差不大,乂由于DTW算法本身既簡單乂有效,但HMM算法要復(fù)雜得多。它需要在訓(xùn)練時期提供大量的語音數(shù)據(jù),通過反復(fù)計算才能取得參數(shù)模型,而DTW算法的訓(xùn)練中幾乎不需要額外的計算。鑒于此,DTW更適合本系統(tǒng)的要求。在孤立詞語音識別中,最為簡單有效的方式是采納DTW(Dynam

34、icTimeWarping,動態(tài)時刻歸整)算法,該算法基于動態(tài)計劃(DP)的思想,解決了發(fā)音犬牙交錯的模板匹配問題,是語音識別中顯現(xiàn)較早、較為經(jīng)典的一種算法。用于孤立詞識別,DTW算法與HMM算法在訓(xùn)練時期需要提供大量的語音數(shù)據(jù),通過反復(fù)計算才能取得模型參數(shù),而DTW算法的訓(xùn)練中幾乎不需要額外的計算。因此在孤立詞語音識別中,DTW算法仍然取得普遍的應(yīng)用。不管在訓(xùn)練和成立模板時期仍是在識別時期,都先采納端點算法確信語音的起點和終點。已存入模板庫的各個詞條稱為參考模板,一個參考模板可表示為R=R(1),R(2),R(m),R(M),m為訓(xùn)練語音幀的時序標(biāo)號,m=1為起點語音幀,m二M為終點語音幀,

35、因此M為該模板所包括的語音幀總數(shù),R(m)為第m幀的語音特點矢量。所要識別的一個輸入詞條語音稱為測試模板,可表示為T=T(1),T(2),T(n),T(N),n為測試語音幀的時序標(biāo)號,n=1為起點語音幀,n二N為終點語音幀,因此N為該模板所包括的語音幀總數(shù),T(n)為第n幀的語音特點矢量。參考模板與測試模板一樣采納相同類型的特點矢量(如MFCC,LPC系數(shù))、相同的幀長、相同的窗函數(shù)和相同的幀移。假設(shè)測試和參考模板別離用T和R表示,為了比較它們之間的相似度,能夠計算它們之間的距離DT,R,距離越小那么相似度越高。為了計算這一失真距離,應(yīng)從T和R中各個對應(yīng)幀之間的距離算起。設(shè)n和m別離是T和R中

36、任意選擇的幀號,dT(n),R(m)表示這兩幀特點矢量之間的距離。距離函數(shù)取決于實際采納的距離氣宇,在DTW算法中通常采納歐氏距離。假設(shè)N=M那么能夠直接計算,不然要考慮將T(n)和R(m)對齊。對齊能夠采納線性擴張的方式,若是N<M能夠?qū)線性映射為一個M幀的序列,再計算它與R(1),R(2),,R(M)之間的距離??墒侨绱说挠嬎銢]有考慮到語音中各個段在不同情形下的持續(xù)時刻會產(chǎn)生或長或短的轉(zhuǎn)變,因此識別成效不可能最正確。因此更多的是采納動態(tài)計劃(DP)的方式。若是把測試模板的各個幀號在一個二維直角坐標(biāo)系中的橫軸上標(biāo)出,把參考模板的各幀號m二:TM在縱軸上標(biāo)出,通過這些表示幀號的整數(shù)坐標(biāo)

37、畫出一些縱橫線即可形成一個網(wǎng)絡(luò),網(wǎng)絡(luò)中的每一個交叉點(n,m)表示測試模式中某一幀的交匯點。DP算法能夠歸結(jié)為尋覓一條通過此網(wǎng)絡(luò)中假設(shè)干格點的途徑,途徑通過的格點即為測試和參考模板中進行計算的幀號。途徑不是隨意選擇的,第一任何一種語音的發(fā)音快慢都有可能轉(zhuǎn)變,可是其各部份的前后順序不可能改變,因此所選的途徑必然是從左下角動身,在右上角終止。為了描述這條途徑,假設(shè)途徑通過的所有格點依次為(n,m),,(n,m),(n,m),其中(n,m)=(1,1),(n,m)=(N,M)o途徑能夠用函數(shù)(n)描述,其中n二i,i=1,2,N,0(1)=1,0(N)=Mo為了使途徑不至于過傾斜,能夠約束斜率在2的

38、范圍內(nèi),若是途徑已經(jīng)通過了格點(n,m),那么下一個通過的格點(n,m)只可能是以下三種情形之一:(n,m)=(n+1,m+2)(n,m)=(n+1,m+1)(n,m)=(n+1,m)用r表示上述三個約束條件。求最正確途徑的問題能夠歸結(jié)為知足約束條件r時,求最正確途徑函數(shù)m=0(n),使得沿途徑的積存距離達到最小值,即:搜索該途徑的方式如下:搜索從(n,m)點動身,能夠展開假設(shè)干條知足D的途徑,假設(shè)可計算每條途徑達到(n,m)點時的總的積存距離,具有最小積存距離者即為最正確途徑。易于證明,限定范圍的任一格點(n,m)只可能有一條搜索途徑通過。關(guān)于(ni,mi),其可達到該格點的前一個格點只可能

39、是(n,m)、(n,m-1)和(n,m-2),那么(n,m)必然選擇這3個距離之途徑延伸而通過(n,m),這時此途徑的積存距離為:Dl(n,m)=dT(n),R(m)+D(n,m)其中的n=n-1,m-1由下式?jīng)Q定:DL(n,m)=minD(n,m),D(n,m-1),D(n,m-2)如此能夠從(n,m)=(1,1)動身搜索(n,m),再搜索(n,m),對每一個(n,m)都存儲相應(yīng)的前一格點(n,m)及相應(yīng)的幀匹配距離dn,mo搜索到(n,m)時,只保留一條最正確途徑。若是有必要的話,通過逐點向前尋覓就能夠夠求得整條途徑。這套DP算法即是DTW算法。§262程序?qū)崿F(xiàn)DTW算法能夠直接

40、按上面的描述來實現(xiàn),即分派兩個NXM的矩陣,別離為積存距離矩陣D和幀匹配距離矩陣d,其中幀匹配距離矩陣d(i,j)的值為測試模板的第i幀與參考模板的第j幀間的距離。D(N,M)即為最正確匹配途徑所對應(yīng)的匹配距離。程序中,第一申請兩個nXm的距陣D和d,別離為積存距離和幀匹配距離。那個地址n和m為測試模板與參考模板的幀數(shù)。然后通過一個循環(huán)計算兩個模板的幀匹配距離距陣d。接下來進行動態(tài)計劃,為每一個格點(i,j)都計算其三個可能的前續(xù)格點的積存距離D、D2和D3。考慮到邊界問題,有些前續(xù)格點可能不存在,因此要加入一些判定條件。最后利用最小值函數(shù)min,找到三個前續(xù)格點的積存距離的最小值作為積存距離

41、,與當(dāng)前幀的匹配距離d(i,j)相加,作為當(dāng)前格點的積存距離。該計算進程一直達到格點(n,m),并將D(n,m)輸出,作為模板匹配的結(jié)果。程序如下:functiondist=fDTW(t,r)n=size(t,1);m=size(r,1);if(abs(n-m)<6)%幀匹配距離矩陣d=zeros(n,m);fori=1:nforj=1:md(i,j)=sum(t(i,:)-r(j,:).2);endend%積存距離矩陣D=ones(n,m)*realmax;D(l,1)=d(l,1);%動態(tài)計劃fori=2:nforj=1:mDl=D(i-1,j);ifj>lD2=D(i-1,j

42、-1);elseD2=realmax;endifj>2D3=D(i-1,j-2);elseD3=realmax;endD(i,j)=d(i,j)+min(Dl,D2,D3);endenddist=D(n,m);elsedist=realmax;End§2.7MATLAB上的GUI設(shè)計MATLA作為功能壯大的科學(xué)計算軟件,一樣也提供了圖形用戶界面設(shè)計的功能。在MATLAB中,大體的圖形用戶界面對象包括三類:用戶界面控件對象,下拉式菜單對象和快捷菜單對象。依照這些圖形對象,能夠設(shè)計出界面友好。操作方便的圖形用戶界面。本系統(tǒng)的整個上位機利用MATLAB做的,為了更方便的進行操作,我用

43、MATLAB的GUI設(shè)計了一個圖形界面。上面設(shè)置了串口選擇框、錄音開始按鈕、語音識別結(jié)果框等。實際界下面如圖2-6所示:圖2-6MATLAB-GUI界面第3章下位機設(shè)計§3.1 小車整體設(shè)計§3.1.1 小車整體框圖系統(tǒng)整體框圖如下所示。整個系統(tǒng)以單片機作為操縱中心,單片機前要同意上位機傳來的操縱指令,后要依照收到的指令操縱小車完成不同的功能。小車共有兩個電機,有L298組成的H橋來驅(qū)動。穩(wěn)壓電路采納線性穩(wěn)壓芯片7805來完成。系統(tǒng)框圖如圖所示:L298電機 驅(qū)動電路單片串口接收機控制核電機圖3-1系統(tǒng)整體框圖§3.1.2 小車結(jié)構(gòu)設(shè)計本小車底盤采納三輪結(jié)構(gòu),兩個

44、動力輪別離山兩個直流電機單獨驅(qū)動。第三個輪是轉(zhuǎn)向輪,能夠三百六十度轉(zhuǎn)向。核心板采納通用板搭建,采納專用芯片插槽,方便單片機的拆卸。驅(qū)動電路和穩(wěn)壓電路焊在同一通用板上,兩個板子用銅柱固定為上下兩層,節(jié)省空間。整個小車實物圖見附錄一。§3.2 小車硬件設(shè)計§3.2.1 單片機電路設(shè)計本系統(tǒng)單片機采納的是宏晶公司的STC12C5A60S2,它采納增強型8051內(nèi)核。指令代碼完全兼容傳統(tǒng)8051單片機,但速度比傳統(tǒng)8051單片機快8-12倍。單片機操縱電路要緊有復(fù)位電路、晶體振蕩電路兩部份。其整體電路圖如圖3-2所示:"HR122pFINI1P1.0VCCPI 1PO.Q

45、ADOPl 2PO.t/ADlPJ 3P0.2/AD2Pl 4P0.3/AD3Pl.5PD.4/AD4P1 dP0.5/AD5Pl.7PD.6/AD6RSTP0.7<AD7RXD/P3.0EATXD/P3.1 ALE/PROGINT0T3 2PSEK(NTJ/P3 3P2.7/A15TWP3 4P2.6/A14丁”P3.5P2.5/A13WR/P3 4P2.4/A12RD/P3.7P23AliXTAL2P22A10ZTALlP2.1ZA9VSSP2QA8401N2239ENA 338JN3 457IN4 536END 63573433RST 93210311130122913281427

46、152616251724182319222021U1STCJ2C5A60SZ圖3-2單片機電路圖I .復(fù)位電路復(fù)位電路是單片機操縱電路中很重要的電路之一。STC12C5A60S2單片機為高電平復(fù)位,及即要使得復(fù)位管腳RST維持一按時刻的高電平。其復(fù)位電路分兩種情形。當(dāng)單片機時鐘頻率小于12MHz時,采納第一種復(fù)位電路。將RST管腳接1K電阻R1到地,其電路如圖3-3所示。d|一I>-RSTII R1圖3-3第一復(fù)位電路當(dāng)單片機時鐘頻率大于12MHz時,采納第二復(fù)位電路,其電路如圖3-4所示。"l|1|RijsT=C3IOiiFvcc圖3-4第二復(fù)位電路本電路單片機時鐘采納的是1

47、2MHZ,故復(fù)位電路采納第二種。以上復(fù)位電路只能保證單片性能夠上電復(fù)位,為了更好的進行調(diào)試,本電路對上面的電路進行了更改,使得單片機電路能夠手動復(fù)位。改良后的復(fù)位電路如以下圖3-5所示。當(dāng)按鍵按下時,由于電阻R1的作用,RST管腳維持為高電平。單片機復(fù)位。VCC圖3-5改良后的實際復(fù)位電,路2.晶振電路STC12C5A60S2單片機內(nèi)部含有R/C時鐘振蕩電路,單片性能夠選擇利用內(nèi)部自有的R/C時鐘振蕩電路,也能夠利用外接的高精度晶體/時鐘。用戶在下載用戶程序時,可選擇是利用內(nèi)部R/C振蕩器仍是外部晶體時鐘。常溫下內(nèi)部時鐘頻率為5V單片機:11、17MHZ,單片機:內(nèi)12MHZ。單片機內(nèi)部時鐘電

48、路受溫漂等阻礙較大,當(dāng)對精度要求不高時能夠利用內(nèi)部時鐘。本電路需要串口數(shù)據(jù)收發(fā),操縱對時鐘要求較高,故采納的時鐘源是外接的高精度晶體/時鐘。其電路如圖3-6所示。C1HI22|»F,l|IK2MsTrHl122pF圖3-6晶體振蕩電路§322驅(qū)動電路設(shè)計驅(qū)動電路的選擇及穩(wěn)固性對小車性能來講是相當(dāng)重要的。那個地址我采納L298專用驅(qū)動芯片來驅(qū)動兩個直流電機。L298驅(qū)動芯片內(nèi)置兩個H橋電路,能夠兩個電機實現(xiàn)正轉(zhuǎn)和翻轉(zhuǎn)。最大輸出電流能夠達到兩安,這對小車上的直流電機足夠用。L298的外圍電路也是超級重要的,圖3-7為L298的外圍電路。途中8個單向?qū)ǘO管起著超級重要的作用,

49、它能夠避免電機磁場作用產(chǎn)生專門大的反向電壓時對L298內(nèi)部電路的破壞作用。圖3-7L298外圍電路§3.2.3穩(wěn)壓電路設(shè)計LM78O5小車的整個硬件電路共需要兩個電壓,電源電壓為8伏,直接供給直流電機。而單片機操縱電路需要五伏的電壓,故需要設(shè)計一個穩(wěn)壓電路來輸出穩(wěn)固的5伏電壓供給單片機操縱電路。本系統(tǒng)采納線性穩(wěn)壓芯片7805把8伏的電源電壓穩(wěn)成5伏輸出。其電路圖如圖3-8所示:Vout=5VVinpT圖3-85V穩(wěn)壓電路§3.3小車軟件設(shè)計§331主程序流程圖圖3-9主函數(shù)流程圖小車單片機采納STC12c5260s2,此單片機屬于8051內(nèi)核,采納KEIL開發(fā)環(huán)境

50、來編程。下位機程序要緊功能確實是時刻預(yù)備同意上位機傳來的串口數(shù)據(jù),然后,依照不同的數(shù)據(jù)操縱小車電機是小車完成不同的動作。主函數(shù)流程圖如圖3-9所示:§332部份主程序部份程序如下:#include<>#includeHM2郭天祥.51單片機C語言教程.北京:電子工業(yè)出版社,20203張毅剛,彭喜元等.新編MCS-5I單片機應(yīng)用設(shè)計,哈爾濱:哈爾濱工業(yè)大學(xué)出版社,20034劉瑞新.單片機原理及應(yīng)用教程.機械工業(yè)出版社,20035何立民.單片機應(yīng)用技術(shù)選編(1).北京航空航天大學(xué)出版社,19926胡漢才.單片機原理及系統(tǒng)設(shè)計.清華大學(xué)出版社,20027劉衛(wèi)國.MATLAB程序設(shè)計與應(yīng)用.北京:高等教育出版社,20018張震宇.基于MATLAB的語音端點檢測實驗研究.浙江科技學(xué)院學(xué),2007第19卷第3期9徐利軍.基于DTW的孤立詞語音識別研究.軟件導(dǎo)刊,2021第2期10張青松.語音識別技術(shù)的進展.科技信息,2020第27期11劉樹棠譯.信號與系統(tǒng).西安:西安交通大學(xué)出版社,199712管致中,夏恭恪,孟橋.信號與線性系統(tǒng).北京:高等教育出版社,200313程佩清.數(shù)字信號處置.北京:清華大學(xué)出版社,200014鄭國強,付江濤,彭勃,馬華

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論