語音門禁系統(tǒng)設(shè)計_第1頁
語音門禁系統(tǒng)設(shè)計_第2頁
語音門禁系統(tǒng)設(shè)計_第3頁
語音門禁系統(tǒng)設(shè)計_第4頁
語音門禁系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 嵌入式智能語音門禁系統(tǒng)的設(shè)計與實現(xiàn)摘要: 為實現(xiàn)對樓宇單元門的語音控制, 以語音識別原理為基礎(chǔ),通過對語音識別原理的系統(tǒng)分析, 結(jié)合特定人語音識別的具體情況, 研究了基于線性預(yù)測編碼( LPC) 的遞推來推求倒譜編碼( CC) 基于濾波理論的基音周期確定算法, 并將其結(jié)合起來, 應(yīng)用高性能數(shù)字信號處理器作為核心,設(shè)計了一個基于ARM9 微控制器的智能語音識別門禁系統(tǒng)。系統(tǒng)采用了S3C2440 微處理器,結(jié)合UDA1341專用音頻語音錄放芯片和觸摸屏等進行控制和接口設(shè)計硬件設(shè)計,并基于Linux 操作系統(tǒng)和QT/Embedded 圖形用戶界面(GUI)編程,實現(xiàn)對特定說話人的語音識別。詳細介紹

2、了語音門禁系統(tǒng)的硬件組成 和工作原理, 實現(xiàn) 音頻信號的采集、讀取及控制的并行性,提高了電路的可靠性,從硬件、軟件、算法優(yōu)化等方面實現(xiàn)了基于語音識別門禁系統(tǒng)的總體設(shè)計, 從應(yīng)用的角度闡明了本系統(tǒng)理論上的合理性。 結(jié)果表明,該門禁系統(tǒng)界面友好,操作簡單,且具有良好的識別效果,本系統(tǒng)能夠成功實現(xiàn)聲音的準確采集及對電磁鎖的語音控制??蛇M行產(chǎn)品推廣。 關(guān)鍵詞:嵌入式;語音識別特征提取模式匹配LPC DTW;門禁系統(tǒng);特定說話人;信號采集;語音錄放。0 緒論綜合集成計算機、通訊、自動識別、機械工程和安全管理系統(tǒng)等相關(guān)技術(shù)的門禁系統(tǒng)有效地解決了重要部門和場所的安全訪問控制問題, 已得到廣泛的應(yīng)用, 成為日

3、常工作和生活中的電子門衛(wèi)。目前, 門禁系統(tǒng)采用較多的是非接觸式RF 卡、生物識別技術(shù)、IC 卡、密碼輸入等方式。然而隨著科學(xué)技術(shù)的發(fā)展, 綜合應(yīng)用語音識別、指紋識別、虹膜識別、紅外( 熱) 感應(yīng)等最新生物識別技術(shù), 結(jié)合電磁鎖等技術(shù)的門禁系統(tǒng)已廣泛吸引了人們的注意, 并將逐步成為門禁系統(tǒng)發(fā)展的主流與最終目標之一。利用語音識別技術(shù)來實現(xiàn)門禁系統(tǒng)不用像其他方式一樣需要觸摸, 具有方便、安全、準確、信息完整、獨立性強、反應(yīng)速度快等優(yōu)點。因此, 基于語音識別技術(shù)的門禁系統(tǒng)有著非常獨特的優(yōu)勢和發(fā)展前景。1 語音識別技術(shù)及其原理 語音識別技術(shù)的關(guān)鍵在于準確地分辨出不同人的語音特征及其信息內(nèi)容, 并以此控制

4、其他設(shè)備來滿足人們的各種需要。 語音識別根據(jù)應(yīng)用場合、使用對象、語音詞匯量、算法模型等不同的分類依據(jù), 可分為不同的類型, 如表11所示,針對辦公室、家庭等私人小型場所,門禁系統(tǒng)涉及到的主要是特定人語音識別的特殊要求。 本文擬采用對用戶的依賴性分類的形式, 將相關(guān)語音識別分為兩類: 對用戶聲音特征的辨識和對用戶發(fā)出的命令的確認?;趯β曇籼卣鞅孀R的特定人語音識別在對安全要求很高的部門門禁系統(tǒng)中得到了較為廣泛的應(yīng)用。其基本原理: 當(dāng)系統(tǒng)接收到外界語音信息后, 從事先訓(xùn)練好的語音庫中找出惟一匹配的聲音特征模型進行辨識,如果匹配成功則執(zhí)行下一步操作; 反之, 如果無法匹配,將會拒絕執(zhí)行任何操作。特定

5、人語音識別應(yīng)用較簡單, 不需要預(yù)先采集過多的樣本, 對硬件資源要求也較低, 因此降低了系統(tǒng)運行中的前期成本; 此外, 其訓(xùn)練過程可以根據(jù)用戶習(xí)慣, 由用戶任意定義控制項目的具體命令語句, 因而適合大多數(shù)中小型以下企業(yè)或部門的各類應(yīng)用。然而, 特定人語音識別存在穩(wěn)健性不理想, 對有些人的語音識別率高,有些人的識別率卻不高; 系統(tǒng)剛訓(xùn)練完時識別率較高,但隨著時間的延長會導(dǎo)致識別率慢慢降低等缺點。為克服這些缺陷, 本系統(tǒng)結(jié)合門禁系統(tǒng)語音識別的實際情況,通過從改進語音特征提取算法和模式匹配算法兩方面對傳統(tǒng)方法作了相應(yīng)的改進, 以提高門禁系統(tǒng)的語音識別性能和穩(wěn)健性。 特定人語音識別分為語音訓(xùn)練和語音識別

6、兩個階段。在訓(xùn)練階段, 通過MIC 輸入語音命令, 然后對模擬語音信號進行預(yù)處理, 對處理后得到的數(shù)字語音信號進行語音特征提取, 為不同用戶的不同語音特征參數(shù)建立一個相應(yīng)的語音特征模型庫。訓(xùn)練完成后, 進入語音識別階段, 對MIC 輸入事先訓(xùn)練好的語音命令, 然后對模擬語音信號進行預(yù)處理, 對處理后得到的數(shù)字語音信號提取語音特征參數(shù), 緊接著調(diào)出語音特征模型庫進行匹配檢測。如果在模型庫中找到先前已經(jīng)訓(xùn)練好的與之匹配的語音特征模型, 就會產(chǎn)生識別結(jié)果;反之, 則無法識別。特定人語音識別原理框圖如圖1 所示。1 .1 預(yù)處理 預(yù)處理包括噪音去除以及端點檢測。1 .1 .1 噪音去除 將通過麥克風(fēng)輸

7、入的一段模擬語音信號進行量化和采樣, 轉(zhuǎn)換成數(shù)字語音信號; 將這段含噪的數(shù)字語音信號去噪, 得到干凈的數(shù)字語音信號, 再通過預(yù)加重技術(shù)濾除低頻干擾( 尤其是50Hz 或60Hz 的工頻干擾) 提升語音信號的高頻部分, 這樣可以起到提升清音部分能量、抑制隨機噪聲和消除直流漂移的作用。1 .1 .2 端點檢測 端點檢測也即是從一段語音信號中確定出語音的起點及結(jié)束點的過程。有效的端點檢測不僅減少了系統(tǒng)的處理時間(幀數(shù)最少), 而且能排除無聲段的噪聲干擾, 從而使處理質(zhì)量得到保證。端點檢測的困難在于無聲段或者發(fā)音前后人為呼吸等產(chǎn)生的雜音, 使得語音的端點比較模糊。 目前對端點檢測采用較多的方法是單純用

8、過零率和能量值來檢測, 但是由于這種方法沒有考慮到背景噪聲, 因此存在不可避免的缺點。這里, 采用當(dāng)前幀與前一幀的過零率和能量值的差作為檢驗端點的標準就能很好地解決背景噪聲的問題。 在語音識別中,特別是孤立詞、小詞匯量識別系統(tǒng)中,準確檢測出每個詞或句子的起點和終點,不僅可以濾除冗余數(shù)據(jù)、降噪以及降低存儲容量,而且可以大大提高識別算法速度和識別率。因此,本系統(tǒng)采用了短時平均能量、短時平均過門限率(過零率)以及Mel 低頻能量檢測等方法對語音數(shù)據(jù)進行端點檢測。1 .2 語音特征的提取 一般而言, 都是通過對語音信號的分析處理, 去除無關(guān)的冗余信息, 獲得影響語音識別的重要信息, 來達到提取語音信號

9、中表征不同人的不同聲紋特征的目的,與非特定人語音識別不同, 對特定人語音識別來講, 特征參數(shù)的選取更注重于說話人的個人信息與特征的獲取, 而對語義信息獲取的要求較低。 對端點檢測后的語音數(shù)據(jù),采用Mel 倒譜參數(shù)進行參數(shù)提取。Mel 頻率倒譜系數(shù)(MFCC)是語音信號的頻域參數(shù),它是一種基于人耳對語音頻率的非線形感知特征的描述;在說話人識別中,有較好的識別性能和抗噪能力,其性能優(yōu)于LPC、LPCC 等參數(shù)。計算MFCC 的過程為:首先用傅里葉變換將時域信號轉(zhuǎn)變成頻域信號,然后根據(jù)臨界頻率和帶寬選取數(shù)字濾波器(三角形),并在頻域內(nèi)進行計算處理,最后通過反傅里葉變換得到Mel 頻率倒譜系數(shù)1。最后

10、的變換式可簡化為公式(1)。,n=1,2,L (1)式中,MFCC 系數(shù)的個數(shù)L 通常取最低12-16,本文取12。1 .3 模型訓(xùn)練和模式匹配 模型訓(xùn)練是指按照一定的數(shù)據(jù)挖掘或知識發(fā)現(xiàn)規(guī)則, 從大量訓(xùn)練樣本中提取表征該樣本類本質(zhì)特征參數(shù)的過程。模式匹配則是根據(jù)一定準則, 使待識別樣本與通過提取出來的訓(xùn)練樣本的本質(zhì)特征而建立的模型進行對比分析, 以期獲得最佳匹配。語音識別所應(yīng)用的模式匹配和模型訓(xùn)練技術(shù)主要有動態(tài)時間歸整技術(shù)(DTW)、隱馬爾可夫模型(HMM)和人工神經(jīng)元網(wǎng)絡(luò)(ANN)。DTW 是較早的一種模式匹配和模型訓(xùn)練技術(shù), 它應(yīng)用動態(tài)規(guī)劃方法成功解決了語音信號特征參數(shù)序列比較時時長不等的

11、難題, 在簡短詞語音識別中獲得了良好性能, 但它不適合連續(xù)語音大詞匯量語音識別系統(tǒng)。相反, 其對短時小詞匯量的語音( 有效語音長度小于3 秒) 的識別卻既簡單又有效, 且識別率非常高。因此, 本系統(tǒng)選取了DTW算法, 并在具體實踐中加以了改進。DTW 算法不適合連續(xù)大詞匯量的語音識別系統(tǒng), 但對短時的小詞匯量語音( 有效語音長度低于3 秒) 的識別既簡單又有效, 且識別率很高。DTW 算法采用動態(tài)規(guī)劃最優(yōu)化來找到一條從起點(n0,m0)到終點(nN,mM)的最佳搜尋路徑。同時為了避免n 軸的過分傾斜, 對通過路徑中各點的平均斜率加以限制, 通常最大斜率定為2, 最小斜率定為1/2。常規(guī)DTW

12、算法要求從(1,1)出發(fā)到(N,M)結(jié)束, 這兩點稱為固定的起點和終點, 常規(guī)算法的缺陷是對端點的選取存在敏感依賴性。這里利用松弛的DTW 算法, 可以使語音識別系統(tǒng)的識別性能得到改善, 且匹配效果較之常規(guī)方法更好, 即從起始點(1,1)、(1,2)、(2,1)、(1,3)、(3,1) 以及終止點(N,M)、(N- 1,M)、(N,M- 1)、(N- 2,M)、N,M- 2)中各選擇出一個最小值, 兩語音樣本之間的相互距離在相應(yīng)的點放松后選擇一個最小距離。一般情況下, 采取正確的端點檢測之后, 起點和終點在縱軸和橫軸方向各放松二幀, 即在兩方向各放松60ms 左右就足夠了。松弛起點、終點的優(yōu)點

13、是可以克服由于端點檢測不精確引起的誤差。 系統(tǒng)的組成及工作原理語音門禁系統(tǒng)是一種僅依靠說話人的語音來控制門鎖開啟的系統(tǒng)。其工作原理是: 紅外探測電路探測到有人到來, 啟動整個控制系統(tǒng)進入工作狀態(tài), 將待識人說的語音經(jīng)特征提取后與系統(tǒng)訓(xùn)練時產(chǎn)生的模型參數(shù)進行比較, 當(dāng)系統(tǒng)識別當(dāng)前用戶為合法用戶時, 再采用DSP 處理器芯片產(chǎn)生一個開鎖信號開啟電磁鎖。語音門禁系統(tǒng)的原理結(jié)構(gòu)框圖如圖1 所示。根據(jù)實現(xiàn)功能劃分為: 樓宇單元門語音鎖用戶界面單元、樓宇單元門語音鎖控制器單元、樓宇單元門語音鎖管理器單元、普通電磁鎖單元。語音識別系統(tǒng)本質(zhì)上是一種多維模式識別系統(tǒng),其主要包括端點檢測、特征提取、語音建模、模式

14、匹配四個基本單元1。其識別過程如圖1 所示。1.3 基于DTW 的模式匹配算法動態(tài)時間歸整(DTW) 算法是把時間歸整和間距測量計算結(jié)合起來的一種非線性歸整技術(shù),它有效地解決了小詞匯量識別中說話速度不均勻的問題2 ,該算法原理是尋找一條通過各個交叉點的從起始點到終止點的幀失真度總和為最小的最佳路徑。當(dāng)詞匯量較少時,用DTW 算法對特定人的語音識別可以獲得很好的效果。設(shè)測試語音參數(shù)共有N 幀,參考模板共有M 幀矢量,且NM,則動態(tài)時間規(guī)整就是尋找一個時間規(guī)整函數(shù)j=(i),它將測試矢量的時間軸i 非線性地映射到模板的時間軸j 上2,并使函數(shù) 滿足公式。圖1 語音識別過程(2)式中,dA(i),B

15、(i) 是第i 幀測試矢量A(i)和第j 幀模板矢量B(j)之間的距離測度;D 則是處于最優(yōu)時間規(guī)整情況下兩矢量之間的匹配路徑。21 21 1 說話人語音信號采集電路由于系統(tǒng)要求采集70H z 3kH z 的語音信號。因此根據(jù)采樣定理, 系統(tǒng)的采樣率至少應(yīng)達到10kH z 左右??紤]到接口方便及性能、價格等因素, 語音信號采集電路選用了TLC2272 集成運放和語音信號編碼解碼芯片TLC320AD50C。21 21 11 1 語音采集前端電路 圖2 為語音電子門鎖系統(tǒng)中由T LC2272 構(gòu)成的語音信號前端模擬電路。語音信號前端模擬電路的第一級運放將由麥克風(fēng)輸入的語音信號進行濾波, 并放大10

16、 倍, 第二級將信號由單端輸入信號變?yōu)椴顒与p端信號送往TLC320AD50C 進行數(shù)字化, 這樣可以抵消模擬信號在傳輸過程中受到電路板上其它電路造成的干擾。21 21 2 音頻模擬芯片與DSP 的接口TLC320AD50C 與TMS320VC5402 的接口電路可參見參考文獻 3 。21 21 3 系統(tǒng)數(shù)據(jù)存儲單元設(shè)計 將系統(tǒng)正常工作時的語音特征庫存于SRAM 中, 將樓內(nèi)用戶第一次訓(xùn)練時產(chǎn)生的語音特征存于FLASH 中, 這樣平時系統(tǒng)正常工作時可以方便快捷地更新用戶信息, 當(dāng)系統(tǒng)出現(xiàn)UPS 電源意外斷電時, 系統(tǒng)在下一次上電時會將存于FLASH中的程序和語音特征庫載入DSP 和SRAM 中,

17、 恢復(fù)系統(tǒng)正常運行。同時, 為了滿足語音特征庫和程序大小對存儲器的要求, 系統(tǒng)選用SST39VF400A 和I S61LV12816。 系統(tǒng)數(shù)據(jù)存儲單元的硬件設(shè)計可參見參考文獻 4 。21 3 樓宇單元門語音鎖管理器單元語音鎖管理器單元完成系統(tǒng)的初始化訓(xùn)練和系統(tǒng)用戶數(shù)據(jù)的更新, 同時提供操作的語音提示。樓宇單元門語音鎖管理器電路設(shè)計如圖3 所示。21 31 1 系統(tǒng)用戶鍵盤控制模塊電路 用戶通過3 種方式介入系統(tǒng): 訓(xùn)練階段、識別階段、用戶信息更新階段。 用戶操作過程:訓(xùn)練過程: 按訓(xùn)練鍵v / 系統(tǒng)準備好, 請輸入您的房屋編號0 v 按房屋編碼鍵v / 系統(tǒng)準備好錄入用戶信息, 請對著MIC

18、 說三遍-請開門. 0 v 用戶說三遍0 請開門0 v 系統(tǒng)初步錄入用戶信息, 同時提示/ 請您再說一遍- 請開門. 0 v 用戶一遍/ 請開門0 。若訓(xùn)練成功v / 系統(tǒng)確認用戶信息, 信息是否保留?0 v按確認鍵保留錄入的信息/ 按放棄鍵不保留此次信息v / 訓(xùn)練成功, 謝謝您的配合0 / / 對不起, 您這次訓(xùn)練無效, 請您靠近MIC, 再來一遍0。若訓(xùn)練失敗v / 對不起, 訓(xùn)練失敗, 請重新訓(xùn)練0。用戶信息更新: 按刪除鍵v / 系統(tǒng)進入刪除用戶模式, 請輸入待刪除用戶的房屋編號0 v 按編碼鍵v / 系統(tǒng)即將刪除該房屋用戶的信息, 確定刪除操作嗎? v 按確認鍵/ 按放棄鍵v/ 系

19、統(tǒng)已刪除該用戶信息0 / / 刪除操作取消0。2 語音門鎖控制系統(tǒng)的各個模塊的設(shè)計21 1 樓宇單元門語音鎖用戶界面單元設(shè)計語音鎖用戶界面單元主要完成門鎖系統(tǒng)激活, 同時提供用戶進入系統(tǒng)時的操作界面。21 11 1 系統(tǒng)紅外探測電路系統(tǒng)裝有紅外探測電路, 在用戶沒有到來時, 系統(tǒng)處于低功耗狀態(tài), 當(dāng)有用戶到來時, 紅外探測電路探測到用戶到來,啟動系統(tǒng)轉(zhuǎn)入正常工作。本系統(tǒng)選用TX05D 紅外線反射開關(guān), 全部電路焊裝在一只46 mm 32 mm 17 mm ( 不包括安裝支架) 的塑料盒內(nèi),盒的側(cè)面設(shè)有狀態(tài)指示燈和靈敏度調(diào)節(jié)孔, 一只紅色的發(fā)光管用來作為狀態(tài)指示, 沒有檢測到反射物體時熄滅, 輸

20、出線呈低電平, 有反射物時點亮發(fā)光, 輸出線呈高電平。 當(dāng)系統(tǒng)確定當(dāng)前用戶為合法用戶時, 通過揚聲器提示/ 歡迎到來0 , 若識別失敗, 則會提示/ 對不起, 您大聲一點, 再來一遍0 。 圖2 語音信號前端采集電路Design and Realization of Embedded Speech Access Control SystemLUO Yun-gui, ZHANG You-chun(1.Faculty of Mechanical & Electronic Information, China University of Geosciences, Wuhan 430074,

21、China)Abstract: Based on the Speech Recognition theories, an embedded access control system has been designed on ARM9 microprocessor.The system used the S3C2440 microprocessor, the UDA1341 audio codec and touch screen, and based on the Linux OS and QT/EmbeddedGraphical User Interface (GUI) programmi

22、ng to identify the speaker dependent. The result showed that the system was good at speechrecognition, simply to operate, and had friendly interface, which indicated it could be put into production.Key words: embedded; speech recognition; access contrul system; speaker dependent本文的研究目標是建立一個特定人、小詞匯量、

23、與文本有關(guān)的說話人識別門禁系統(tǒng)。該系統(tǒng)的設(shè)計分為兩部分:硬件設(shè)計部分,主要采用Samsung 公司ARM9 系列芯片、Philips 公司的立體聲音頻芯片和觸摸屏等,配合電源模塊實現(xiàn)整個硬件系統(tǒng);其原理是利用S3C2440 內(nèi)置的S 總線控制器實現(xiàn)與UDA1341 接口,完成音頻數(shù)據(jù)的錄入和處理。軟件設(shè)計部分,主要基于嵌入式Linux 操作平臺和QT/Embedded 圖形用戶界面,編寫音頻驅(qū)動程序、音頻采集程序、語音算法程序以及圖形界面程序,然后通過Linux 剪裁,QT/Embedded 移植,程序調(diào)試,最終建立人機交互的說話人識別門禁系統(tǒng)。21 2 樓宇單元門語音鎖控制器單元設(shè)計語音鎖控

24、制器單元完成語音信號的采集、算法軟件處理以及數(shù)據(jù)存儲轉(zhuǎn)換等功能。2 門禁系統(tǒng)的設(shè)計和實現(xiàn)2.1 總體設(shè)計本系統(tǒng)首先是用戶對LCD 觸摸屏上的圖形界面進行操作和控制, 進而通過QT/Embedded 圖形接口調(diào)用和執(zhí)行語音錄入和處理函數(shù),經(jīng)ARM9 處理器運算處理后,將識別結(jié)果返回LCD。其基本的結(jié)構(gòu)框圖如2 所示。2.2 硬件電路設(shè)計本系統(tǒng)硬件電路主要由S3C2440 處理芯片、UDA1341TS 音頻芯片和3.5 寸觸摸屏為核心,配合Flash 存儲芯片、SDRAM 內(nèi)存芯片、電源電路等共同實現(xiàn)系統(tǒng)的架構(gòu)。 S3C2440 是SAMSUNG 公司一款基于ARM920T 內(nèi)核的芯片, 其標準工

25、作頻率為400MHz,它不僅提供了4 通道的DMA 控制器和IIS 音頻接口,而且還提供LCD控制器了, 圖2 門禁系統(tǒng)的基本結(jié)構(gòu)框圖為液晶的開發(fā)提供了方便。UDA1341TS 是Philips 公司的一款經(jīng)濟型音頻CODEC,該CODEC 支持S 總線數(shù)據(jù)格式,非常方便與S3C2440 進行數(shù)據(jù)通信。存儲部分選用了64MB Nand Flash 用來燒寫Linux 系統(tǒng)和程序。本文主要就主要的音頻接口電路作如下分析。IIS 總線接口有3 種模式,本系統(tǒng)為了方便以后擴展,采用傳輸和接受模式。在該模式下,IIS 數(shù)據(jù)線通過雙通道DMA 可同時接受和發(fā)送音頻數(shù)據(jù),DMA 服務(wù)請求由FIFO 只讀寄

26、存器自動完成。S3C2440 的DMA 控制器沒有內(nèi)置的DMA 存儲區(qū)域,通常在驅(qū)動程序中須為其分配DMA 緩沖區(qū)大小,通過DMA 直接將需要錄音的數(shù)據(jù)放在內(nèi)存DMA 緩沖區(qū)中3。圖3 是S3C2440 與UDA1341TS的連接原理圖。電路連接時,S3C2440 的IIS 總線信號(包括時鐘和數(shù)據(jù)) 分別與UDA1341的IIS 信號相連,L3 接口的引腳L3MODE、L3CLOCK 和L3DATA分別與S3C2440 的3 個I/O 口GPB2,GPB3,GPB4 相連,VINL1/R1 為音頻信號左右聲道輸入接口。電路圖如圖4 所示。2 用戶鍵盤控制模塊電路設(shè)計說話人識別系統(tǒng)設(shè)計使用在樓

27、高不超過7 層的樓宇單元門系統(tǒng)中, 使用范圍最初以每個門洞不超過100 個人來設(shè)計。7 層樓共有14 家住戶, 例如門牌號分別為:101、102、201、202 等。根據(jù)實際需要, 系統(tǒng)對用戶進行如下編碼: 門牌號為單數(shù)的歸為A 單元, 門牌號為雙數(shù)的歸為B 單元, A 和B 單元由撥碼鍵盤( HD3) 控制;樓層1 7 分別由按鍵S1 S7 表示。其中, 每家的用戶都使用系統(tǒng)分配給自己家的編碼。系統(tǒng)中使用74H C148 編碼芯片來完成用戶樓層的編碼,通過H D0 HD3 來讀取用戶編碼, 例如, 201 的用戶編碼為0010, 502 的用戶編碼為1101 等。圖4 ISD4003 與DS

28、 P 硬件接口電路圖6 7805 電源電路此外, 系統(tǒng)還需要一個訓(xùn)練鍵、一個刪除鍵、一個確認操作鍵和一個放棄操作鍵。21 31 2 語音提示模塊電路 為了配合用戶在訓(xùn)練階段和用戶信息更新階段進行控制,系統(tǒng)設(shè)計了以I SD4003 為核心的語音提示模塊, 接口電路如圖4 所示。ISD4003 所遵守的SPI 協(xié)議是一個同步串行數(shù)據(jù)傳輸協(xié)議, 支持與T MS320VC5402 DSP 的M cBSP 直接進行通信。協(xié)議假定微控制器的SPI 移位寄存器在SCLK 的下降沿動作,因此對ISD4003 而言, 在時鐘上升沿鎖存MOSI 引腳的數(shù)據(jù),在下降沿將數(shù)據(jù)送至MISO 引腳5 。 由于只需要I S

29、D4003 芯片預(yù)先存儲好系統(tǒng)操作過程中的語音提示, 所以錄音系統(tǒng)的語音信號輸入端可以共用樓宇單元門,語音控制鎖控制器上語音信號采集單元的語音前端處理電路。 系統(tǒng)中, C5402 與ISD4003 通過McBSP0 連接,ISD4003 的/ INT 與C5402 的中斷引腳BIO 相接, ISD 在任何操作中檢測到EOM 或OVF 時, / INT 端變低并保持,中斷狀態(tài)在下一個SPI 周期開始時清除。因此本端接C5402 的BIO, C5402 收到中斷以后可以根據(jù)需要繼續(xù)對 ISD 發(fā)送命令播放或繼續(xù)錄音。21 4 普通電磁鎖單元 在門禁系統(tǒng)中, 電磁鎖是必須的配件, 它可以在接通12V

30、 或者24V 直流電源后, 使鎖舌縮進鎖體, 門被允許打開; 反之, 門被關(guān)上。門禁系統(tǒng)所用電鎖一般有三種類型: 電陰鎖、電磁鎖和電插鎖, 視門的具體情況選擇。 另外, 考慮到供電部分, 應(yīng)該在系統(tǒng)中加入直流升壓器給電磁鎖供電, 并且還可以添加一個可以充電的蓄電池, 以保證系統(tǒng)的持續(xù)供電。電磁門鎖開啟電路單元設(shè)計如圖5 所示。 系統(tǒng)識別說話人為系統(tǒng)合法用戶時, 設(shè)置DSP 的HD4引腳為低電平, 開啟電磁鎖圖4 ISD4003 與DS P 硬件接口電路 圖4 ISD4003 與DS P 硬件接口電路 圖6 7805 電源電路 圖7 PS767D318 電源電路2.3 軟件部分設(shè)計軟件設(shè)計部分分

31、為: Linux 音頻程序設(shè)計、語音識別算法程序設(shè)計、QT圖形界面設(shè)計和系統(tǒng)移植。2 .3 .1 提示語音的生成 錄好提示語音(.WAV 文件), 采用SACM_S480 編碼算法(音頻編碼算法), 將8K、16bit 的音頻文件壓縮為二進制文件, 存儲在程序存儲器中。當(dāng)應(yīng)用程序運行時, 再將壓縮后的提示語音解壓縮, 以8kHz 的頻率送D/A 還原出聲音, 并播放。2 .3 .2 語音訓(xùn)練 在調(diào)用語音訓(xùn)練程序之前, 首先確保識別器能正確的初始化。為了增強語音識別的可靠性, 避免識別的命令傾向于噪音的問題, 這里選擇了兩次語音訓(xùn)練取平均的方式。系統(tǒng)在發(fā)出開始訓(xùn)練的語音提示、延時2 秒后開始訓(xùn)練

32、, 每條命令固定1.3 秒的時長, 當(dāng)訓(xùn)練命令超出1.3 秒時, 只有前1.3 秒命令有效。如果訓(xùn)練成功, 則返回0; 未收到訓(xùn)練樣本語音返回1; 需更多的訓(xùn)練語音樣本數(shù)據(jù)時, 返回2; 當(dāng)訓(xùn)練樣本語音背景太吵時, 返回3; 由于單片機硬件限制, 當(dāng)語音特征模型庫滿時, 返回4; 當(dāng)兩次輸入訓(xùn)練樣本不同時, 返回5?!?訓(xùn)練”函數(shù)TrainWord( ):int TrainWord(int WordID, int SndID)int Result ;PlaySnd(SndID,3); /PlaySnd ( ) 為語音播放函數(shù)Result=BSR_Train(WordID,BSR_TRAIN_T

33、WICE);/ 訓(xùn)練兩次, 獲得訓(xùn)練結(jié)果switch(Result)case 0 :Break ; / 訓(xùn)練成功case 1 :Break; / 未收到訓(xùn)練樣本語音.default :break ;return result ;2 .3 .3 語音識別語音識別程序包括識別程序和中斷服務(wù)程序。識別程序選取詞庫、初始化A /D 和定時器TimerA, 進行識別運算及識別結(jié)果處理。中斷服務(wù)程序定時讀取A /D 轉(zhuǎn)換結(jié)果, 并存入緩沖區(qū)。語音識別和放音分時復(fù)用TimerA FIQ 中斷, 由標志位判斷是語音識別處理還是放音處理。語音識別流程圖如圖3 所示。FIQ_TimerA 中斷服務(wù)程序:L_FIQ

34、_TimerA:P_INT_Clear=R1 ;call _BSR_FIQ_ROUTINE; / 識別中斷服務(wù)call F_FIQ_Service_SACM_S480 ; / 播放中斷pop R1,R5 from sp;reti ;識別程序如下:BSR_DeleteSDGroup(0); / 初始化RAMBSR_InitRecognizer(BSR_MIC); / 初始化識別器while(1)Result = BSR_GetResult(); / 獲得識別結(jié)果Switch(Result) / 識別出的命令, 語音命令的順序號default :Break ; (識別結(jié)果處理程序)2 .3 關(guān)鍵技

35、術(shù)與算法的優(yōu)化 由于特征參數(shù)選取的好壞會直接影響到識別精度,而合適的模式匹配算法可以很好地提高識別率, 語音的特征提取以及模式匹配構(gòu)成了基于語音識別門禁系統(tǒng)設(shè)計的關(guān)鍵。 語音識別算法程序包括:端點檢測函數(shù)endpoint()、特征參數(shù)提取函數(shù)mfcc()、距離匹配運算函數(shù)dtw()、數(shù)據(jù)建模model()函數(shù)等。這里只給出部分DTW 算法程序。float dtw_main(char *ffile1,char *ffile2,float tt,char *outffile) /* 定義浮點型DTW 函數(shù),輸入為兩個MFCC 參數(shù)文件ffile1,ffile2,tt為門限,outffile 為生成

36、的模板文件*/ for(i=0;i<xsize;i+) /ffile1 幀數(shù)for(j=0;j<ysize;j+) /ffile2 幀數(shù)for (k=0;k<params;k+) / params 為Mel 維數(shù)=12total += (xik - yjk) * (xik - yjk);/模板幀和測試幀之間的距離測度Distij = total; 2.3.1 Linux 音頻程序設(shè)計Linux 音頻程序分為UDA1341 驅(qū)動程序和錄音程序。 驅(qū)動程序主要是DSP 設(shè)備驅(qū)動程序的設(shè)計,其主要包括:設(shè)備的初始化(完成對UDA1341 采樣頻率、L3 接口等初始化)、DMA 緩沖

37、區(qū)管理、設(shè)備的操作接口、中斷處理等。其中對設(shè)備的操作包括:打開open 函數(shù),關(guān)閉close 函數(shù),錄音read 函數(shù)等。并通過file_operations 結(jié)構(gòu)體提供外部文件接口函數(shù)調(diào)用。 圖4 S3C2440 與UDA1341TS 連錄音程序主要是通過調(diào)用驅(qū)動程序提供的接口函數(shù)read()實現(xiàn)錄音,并以文件形式存儲到Linux 文件系統(tǒng)中。2.3.3 QT 圖形界面設(shè)計圖形界面是本系統(tǒng)的主要操作界面,體現(xiàn)了與人與機器有好交互。首先呈現(xiàn)給用戶兩個功能選項“訓(xùn)練”與“識別”。如果是新用戶,需先選擇“訓(xùn)練”建立自己的語音模板,考慮到安全性的問題,在建模之前需要進行身份驗證,然后選擇身份(照片)

38、進行建模。如果已經(jīng)建立好模板,就可以通過主界面的“識別”按鈕進行身份識別,并將識別結(jié)果顯示出來。程序流程圖如圖5 所示。2.3.4 系統(tǒng)移植系統(tǒng)的移植包括Linux 內(nèi)核系統(tǒng)的裁剪,文件系統(tǒng)的建立,最后到鏡像文件的燒寫。圖2 門禁系統(tǒng)的基本結(jié)構(gòu)框圖圖3 S3C2440 與UDA1341TS 連接原理圖圖4 S3C2440 與UDA1341TS 連接電路圖本系統(tǒng)的內(nèi)核版本為Linux2.6.13,可以通過make menuconfig 命令進行簡單裁剪,最重要的是把UDA1341 驅(qū)動程序和LCD 觸摸屏驅(qū)動程序編譯進內(nèi)核。接下來是制作文件系統(tǒng),本系統(tǒng)采用yaffs2 文件系統(tǒng):先用到busybox 編譯出文件系統(tǒng)所需要的應(yīng)用程序,然后建立必要文件夾,更重要的是把QT/Embedded 需要的庫文件和二進制程序文件一起編譯進去,最后通過uboot 燒寫進ARM9 芯片并調(diào)試通過。3 實驗數(shù)據(jù)分析與結(jié)論在實驗室先對一名男生和一名女生進行語音訓(xùn)練建模,訓(xùn)練的樣本為每人2 組詞匯(“開門”和“芝麻開門”),每個詞匯錄音時間為3 秒,訓(xùn)練8 次。建立模板后,開始識別實驗。實驗一:該男生和女生分別進行喊話,每個人每組詞喊話20 次

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論