邵 晨,劉誠杰,鄧 琛
(上海工程技術大學 電子電氣工程學院,上海201620)
隨著社會的發展,無論在企業還是民宅中,人們對門禁系統的使用越來越廣泛。然而傳統門禁無法滿足各種使用場合的復雜性和智能性,于是綜合應用語音識別、指紋識別、虹膜識別、紅外感應等最新生物識別技術的門禁系統廣泛吸引了人們的注意,并將逐步成為門禁系統發展的主流與趨勢[1]。
本文提出了基于高性價比的凌陽SPCE061A單片機,以16位的μ′nSP為主控芯片,通過添加部分外圍元件,即可搭建一個經濟的、功能相對完善的智能實時語音門禁系統。該系統具有成本低、功耗低等優點,是一種安全有效、有市場價值的門禁系統解決方案。
語音識別技術就是對不同說話人的不同說話內容進行準確的識別,其本質是屬于模式識別的范疇。系統原理框圖如圖1所示。從圖中可以看出,識別結果的正確與否與模式匹配息息相關。計算機首先從特定人處取得語音信號并訓練制作成語音的特征模型庫。當系統需要進行語音識別時,對新輸入的語音信號進行分析,抽取其語音特征參數。通過與語音系統中所儲存的特征模型進行對比,在一些特定的搜索和匹配策略下尋找最優的匹配模板。通過查表系統就能給出語音識別的結果。其主要步驟分為:預處理、特征參數提取、語音的訓練與識別。

圖1 語音識別系統原理框圖
在進行語音的預處理以及特征參數的提取之后,就要運用某種識別方法辨識出測試的說話人,說話人識別算法部分是整個說話人識別處理流程中最核心的一環,直接決定著系統的識別性能[2]。主要任務是將預處理后的所有需要辨識的語音信號進行特征參數的提取,經過訓練形成參考模板庫,然后將某個特定的需要識別的說話人的語音以同樣的方法得到其測試模板,最后用此模板與庫中的模板進行模式匹配,以達到識別的目的。常用的識別算法有矢量量化 VQ(Vector Quantization)、動態時間規整法 DTW(Dynamic Time Warping)、隱馬可夫模型 HMM(Hidden Markov Model)和人工神經網絡ANN(Artificial Neural Networks)等[3]。
圖2為系統總體的硬件設計框圖,系統主控制模塊以凌陽SPCE061A單片機為核心部件,麥克風輸入模塊采集語音聲波信號轉換為模擬電壓信號,采樣調理電路對電信號進行濾波,去除噪聲干擾。通過單片機自帶的AD采集模塊實現對說話人識別確認的功能。輸出部分采用兩路輸出的形式。一路輸出為揚聲器模塊,可以語音播報識別的結果信息;另一路輸出為電子門鎖驅動模塊,驅動門鎖的開合。

圖2 硬件結構框圖
凌陽SPCE061A單片機內部含有語音識別相關的函數,通過代碼的編寫,能夠完成語音錄制、語音采集、語音播放以及語音識別等任務。本系統在使用時可無需任何按鍵,在任意時刻錄入口令,口令不匹配時,揚聲器返回報錯信息;口令匹配時,揚聲器返回正確信息,門鎖開啟。
常見的語音識別算法有 HMM、VQ、DTW等[4]。由于本項目只針對短時語音(語音長度1.3 s),經過比對分析,決定采用動態規整(Dynamic Time Wrapping)算法[5]進行語音模板的匹配,這是因為DTW算法簡單、計算量小,特別適用于特定人孤立詞的短時語音識別。
DTW是將時間規整和距離測度計算結合起來的一種非線性規整技術[6]:

其中,D為處于最優時間規整情況下兩矢量的距離;d[T(i),R(i)]是第 i幀測試矢量 T(i)和第 j幀模板矢量R(j)之間的距離測試。
由于傳統固定端點的DTW算法對語音起始點和終止點的判斷會存在較大的誤差,所以需要對原算法作適當的優化來解決這個問題。模板語音的所有幀和待識別語音的所有幀之間的相互距離構成一個m×n的距離矩陣,記為 Dm×n,而另有一個矩陣存放每一個階段最優化的結果,記為 Gm×n。 改進后的 DTW 算法以 g(m×n)為兩發音的總距離。放寬了端點對其限制后,算法選用d(1,i)和d(i,1)(1≤i≤w)中的最小值作為起點。在 d(m,i)、d(i,1)(n-w≤i≤n)和 g(j,n)(m-w≤j≤m)之間選一個最小值作為總距離,實現了起始點和終止點的變化。從而減小說話人不同時期發音長短、語速變化對識別精度帶來的影響[7]。
本系統軟件的開發使用了凌陽公司的μ′nSP IDE集成開發平臺,這個高效的開發環境支持匯編與C語言的混合編寫,還支持編譯、鏈接等功能,集成了調試和實時分析等實用功能,為開發提供了便利。
語音識別門禁系統的軟件總體流程如圖3所示。本程序分為3個模塊,分別為中斷模塊、訓練模塊和識別模塊。

圖3 語音識別門禁系統流程圖
首先獲取語音信息,經過模數轉換、預加重、自動增益等處理后根據中斷類別進入訓練或者識別模塊。訓練模塊將經過處理的語音信號通過特征提取,存入語音特征模型庫。而識別模塊通過改進識別算法將輸入語音信號的特征與訓練后語音特征模型庫進行對比分析。
本文實現的基于SPCE061A的實時語音識別門禁系統具有識別特定人條件下短時語音的功能。樣機經過測試,對特定人進行語音采樣和辨識訓練后,對100次語音輸入訪問測試,正確通過為93次,識別率達到93%;樣本有效但拒絕訪問請求7次,拒識率為7%,達到了預期的設計要求。
[1]黎育紅.基于語音識別技術的門禁系統的研究[J].電子技術應用,2006,32(12):88-91.
[2]趙力.語音信號處理[M].北京:機械工業出版社,2005.
[3]胡文靜.基于SPCE061A語音識別門禁系統實現的研究[J].計算技術與自動化,2011,30(2):111-114.
[4]宋大杰.基于DTW的說話人識別及其在DSP上的實現[D].江西:東華理工大學,2012.
[5]蔣曄.基于短語音和信道變化的說話人識別研究[D].江蘇:南京理工大學,2013.
[6]白瑜.語音信號特征參數的提取[J].科技傳播,2011,12(24):228-229.
[7]姚燁豪.基于語音識別和RFID技術的智能門禁系統研究[J].科技信息,2012(2):31-32.