馬玉林, 田香玉, 曲金玉
(1.福田雷沃國際重工股份有限公司 諸誠車輛廠, 山東 濰坊 262233;2.山東理工大學(xué) 交通與車輛工程學(xué)院, 山東 淄博 255049)
汽車電動(dòng)門窗的嵌入式語音控制系統(tǒng)設(shè)計(jì)
馬玉林1, 田香玉2, 曲金玉2
(1.福田雷沃國際重工股份有限公司 諸誠車輛廠, 山東 濰坊 262233;2.山東理工大學(xué) 交通與車輛工程學(xué)院, 山東 淄博 255049)
在介紹汽車電動(dòng)門窗語音控制系統(tǒng)結(jié)構(gòu)和原理的基礎(chǔ)上,重點(diǎn)分析了基于隱馬爾可夫模型(HMM)的模板訓(xùn)練和語音識(shí)別算法.選用凌陽SPCE061A的16位單片機(jī)進(jìn)行了嵌入式系統(tǒng)的硬件和軟件設(shè)計(jì),并制定了本語音控制系統(tǒng)的實(shí)驗(yàn)方案.實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)能夠滿足車窗語音控制的要求.
語音控制;SPCE061A;隱馬爾可夫模型;嵌入式
隨著計(jì)算機(jī)技術(shù)的發(fā)展,各種汽車功能設(shè)備日益增多,駕駛員需要在駕駛的同時(shí)操作這些功能,而傳統(tǒng)的鍵盤輸入方式已經(jīng)不能滿足駕駛員隨時(shí)方便地進(jìn)行操作的需求,因此需要一種新的人機(jī)通信方式來代替鍵盤輸入方式,語音控制技術(shù)與現(xiàn)代汽車的結(jié)合就滿足了人們的這一需求[1].
目前常用的語音識(shí)別芯片有:數(shù)字信號(hào)處理器DSP、由單片機(jī)(MCU)組成的語音識(shí)別專用IC、語音識(shí)別系統(tǒng)級(jí)芯片SOC[2].SPCE061A單片機(jī)的數(shù)字信號(hào)處理能力與DSP相當(dāng),但其價(jià)格優(yōu)勢(shì)卻是其余兩種芯片所不及的.因此本文的車窗語音控制系統(tǒng)選擇SPCE061A單片來作為核心部件.
1.1 語音控制系統(tǒng)基本結(jié)構(gòu)
語音控制系統(tǒng)本質(zhì)上是一種多維模式識(shí)別系統(tǒng),與一般的模式識(shí)別系統(tǒng)類似,包括特征提取、模板庫、模式匹配3個(gè)基本要素[3],其基本結(jié)構(gòu)如圖1所示.
圖1 語音控制系統(tǒng)基本結(jié)構(gòu)
1.2 語音控制的基本原理
通過預(yù)處理和特征參數(shù)提取,將語音信號(hào)數(shù)字化,濾除各種干擾成分,從語音波形中提取出能夠反應(yīng)語音內(nèi)容的特征矢量序列;再利用語音識(shí)別算法將輸入的語音特征與模型庫中已訓(xùn)練完成的各語音模板進(jìn)行匹配比較,得到最佳的識(shí)別結(jié)果;然后單片機(jī)對(duì)識(shí)別結(jié)果進(jìn)行語義分析,轉(zhuǎn)化為對(duì)應(yīng)的動(dòng)作指令;最后,單片機(jī)將指令信號(hào)通過車內(nèi)CAN總線操控對(duì)應(yīng)的電器設(shè)備完成動(dòng)作.
2.1 基于HMM的模板訓(xùn)練過程
模板訓(xùn)練就是通過設(shè)定模型參數(shù),使得觀察序列與狀態(tài)序列有效快速的匹配成功,即找出最好的、最實(shí)用于當(dāng)前情況的隱馬爾可夫模型(HMM)[4].本系統(tǒng)選用 Baum-Welch 算法解決 HMM 的參數(shù)重估計(jì)問題.Baum-Welch 算法利用了遞歸的思想,取得P(O|λ)局部極大值,最后得到最為適用的模板λ.這里用到了Baum-Welch中著名的重估公式
αt(i)βt(i)/P(O/λ)
(1)
式中:εt(i)表示t時(shí)刻HMM鏈處于狀態(tài)i的概率,εt(i,j)表示在觀察序列為O、HMM模型為λ時(shí),t時(shí)刻HMM鏈處于狀態(tài)i而t+1時(shí)刻處于j狀態(tài)的概率.由式(1)可得到HMM模型的遞推計(jì)算公式
(2)
使用重估公式設(shè)計(jì)的語音識(shí)別訓(xùn)練過程的算法流程如圖2所示.
圖2 語音信號(hào)訓(xùn)練流程圖
2.2 基于HMM的語音識(shí)別過程
基于隱馬爾可夫模型的語音識(shí)別過程可以描述為:首先對(duì)待識(shí)別語音進(jìn)行預(yù)處理和特征提取,得到該條語音的特征參數(shù)序列,然后根據(jù)得出的語音模板庫中的所有語音模型,利用Viterbi算法計(jì)算這些語音模型生成該特征序列的概率[5],概率最大者即為最終識(shí)別結(jié)果.該算法可描述為:給定一個(gè)觀察值序列O和一個(gè)模型λ,確定一個(gè)最佳狀態(tài)序列Q*=q1*, q2*,…, qT*[6].其具體計(jì)算過程為:
定義δt(i)為時(shí)刻t經(jīng)過狀態(tài)序列S1,S2,…,St,輸出觀察符序列O1,O2,…,Ot的最大概率密度.
求取最佳狀態(tài)序列Q的過程為:
①初始化
δt(i)=πibi(O1),1≤i≤N
(3)
φ1(i)=0, 1≤i≤N
(4)
②遞推
2≤t≤T,1≤i≤N
(5)
φt(j)=arg max [δt-1(j)aij],
2≤t≤T,1≤i≤N
(6)
③終止
P*=max [δT(i)],1≤i≤N
(7)
(8)
④路徑回溯,確定最佳狀態(tài)序列
St=φt+1(St+1),t=T-1,T-2,…,1
(9)
本文設(shè)計(jì)的電動(dòng)車窗語音控制硬件系統(tǒng)分為以下模塊:電源模塊、音頻輸入模塊、音頻輸出模塊、鍵盤輸入模塊、微控制器、電機(jī)驅(qū)動(dòng)及執(zhí)行模塊.其中,音頻輸入模塊電路圖如圖3所示,音頻輸出模塊電路圖如圖4所示,電機(jī)驅(qū)動(dòng)及指令執(zhí)行模塊電路圖如圖5所示.
圖3 音頻輸入模塊電路圖
圖4 音頻輸出模塊電路圖
圖5 電機(jī)驅(qū)動(dòng)及指令執(zhí)行模塊電路圖
利用SPCE061A提供的IDE2.6.2D軟件開發(fā)環(huán)境進(jìn)行該語音識(shí)別系統(tǒng)的程序編制.本系統(tǒng)的語音識(shí)別主程序可分為三大部分:系統(tǒng)初始化部分、模板訓(xùn)練部分、語音識(shí)別部分.語音識(shí)別系統(tǒng)軟件部分流程如圖6所示.
圖6 車載燈光語音識(shí)別系統(tǒng)總流程圖
系統(tǒng)初始化包括I/O端口初始化、RAM和Flash初始化,該程序的接口地址都是依據(jù)SPCE061A的片內(nèi)存儲(chǔ)器地址來設(shè)定的.模板訓(xùn)練程序包括預(yù)加重子程序、端點(diǎn)檢測(cè)子程序、模板訓(xùn)練子程序,模板訓(xùn)練子程序的流程圖如圖7所示.語音識(shí)別程序包括語音識(shí)別子程序和中斷服務(wù)子程序,語音識(shí)別子程序使用基于HMM的Viterbi算法,其流程圖如圖8所示.
圖7 模板訓(xùn)練子程序流程圖
圖8 語音識(shí)別子程序流程圖
本文設(shè)計(jì)的電動(dòng)門窗語音控制系統(tǒng)是針對(duì)非特定人、小詞匯量、孤立詞的嵌入式語音控制系統(tǒng).基于本系統(tǒng)的特點(diǎn)和語音控制系統(tǒng)的實(shí)現(xiàn)流程,將實(shí)驗(yàn)分為兩部分:語音模板訓(xùn)練實(shí)驗(yàn)和指令識(shí)別準(zhǔn)確率實(shí)驗(yàn).
語音模板訓(xùn)練選擇相對(duì)安靜的實(shí)驗(yàn)室環(huán)境,由80人(男66,女14)每人每個(gè)指令執(zhí)行訓(xùn)練各2次,記錄各個(gè)訓(xùn)練次數(shù)和成功次數(shù).指令識(shí)別準(zhǔn)確率實(shí)驗(yàn)分別在實(shí)驗(yàn)室和同時(shí)播放背景噪聲的模擬車內(nèi)環(huán)境下完成,由男女各10人做語音指令的識(shí)別測(cè)試.實(shí)驗(yàn)結(jié)果見表1和表2.
表1 語音模板訓(xùn)練實(shí)驗(yàn)結(jié)果
語音指令訓(xùn)練次數(shù)成功次數(shù)訓(xùn)練成功率/%升左前窗16015496.25降左前窗16015395.63升右前窗16015697.50降右前窗16015596.88升左后窗16015596.88降左后窗16015697.50升右后窗16015898.75降右后窗16015496.25
表2 指令識(shí)別準(zhǔn)確率實(shí)驗(yàn)結(jié)果
語音指令識(shí)別率/%平均識(shí)別率/%實(shí)驗(yàn)室內(nèi)模擬車內(nèi)實(shí)驗(yàn)室內(nèi)模擬車內(nèi)升左前窗9087降左前窗9189升右前窗8986降右前窗9290升左后窗9088降左后窗9491升右后窗8786降右后窗918990.5088.25
表1的統(tǒng)計(jì)結(jié)果顯示語音模板訓(xùn)練的成功率在95%以上;表2的統(tǒng)計(jì)結(jié)果顯示系統(tǒng)的識(shí)別率在安靜環(huán)境下可達(dá)90%以上,在模擬車內(nèi)環(huán)境下相對(duì)較低,可達(dá)88.25%,經(jīng)計(jì)算得出系統(tǒng)在這兩種情況下的平均識(shí)別準(zhǔn)確率可達(dá)89.38%,識(shí)別效果較好.因此,本系統(tǒng)的語音控制功能基本可以滿足汽車電動(dòng)門窗語音控制系統(tǒng)的功能需求.
本文采用SPCE061A單片機(jī)為核心處理器,應(yīng)用基于隱馬爾可夫模型的語音識(shí)別方法,進(jìn)行了汽車電動(dòng)門窗語音控制系統(tǒng)的軟硬件設(shè)計(jì)開發(fā),實(shí)驗(yàn)證明本系統(tǒng)能夠?qū)崿F(xiàn)語音識(shí)別和控制功能.本研究對(duì)今后車載語音控制技術(shù)在嵌入式平臺(tái)上的開發(fā)具有重要意義.
[1] 趙力. 語音信號(hào)處理[M]. 北京:機(jī)械工業(yè)出版社, 2009.
[2] 李晶皎. 嵌入式語音技術(shù)及凌陽16位單片機(jī)應(yīng)用[M]. 北京:北京航空航天大學(xué)出版社,2003.
[3] 吳黎明, 王桂棠, 吳正光. 語音信號(hào)及單片機(jī)處理[M]. 北京: 科學(xué)出版社,2007.
[4] 高維深. 基于HMM/ANN混合模型的非特定人語音識(shí)別研究[D]. 成都:電子科技大學(xué), 2013. 24-29.
[5] Chien J,Liao C. Maximum confidence hidden Markov modeling for face recognition[J]. Pattern Analysis and Machine Intelligence, 2008, 30(4): 606-616.
[6] 葉飛,王翼飛. 基于動(dòng)態(tài)規(guī)劃的高階隱馬氏模型推廣的Viterbi算法[J]. 運(yùn)籌學(xué)學(xué)報(bào), 2013, 17(4): 48-51.
(編輯:郝秀清)
Design of embedded automotive electric window speech control system
MA Yu-lin1, TIAN Xiang-yu2, QU Jin-yu2
(1.Zhucheng Vehicle Factory, FotonLovel International Heavy Industry Limited, Weifang 262233, China;2.School of Transportation and Vehicle Engineering, Shangdong University of Technology, Zibo 255049, China)
On the basis of the introduction of the structure and principle of automotive lighting independent speech control system, the template training and speech recognition algorithm based on the Hidden Markov Model (HMM) were emphatically analyzed. The hardware and software of the embedded system were designed on the 16 bit Sunplus SPCE061A single-chip.The experimental project of the speech control system was proposed and the results met the automotive windowspeech control requirements.
speech control; SPCE061A; the hidden Markov model; embedded system
2014-10-21
馬玉林,男,mayulin_ft@163.com; 通信作者: 曲金玉,男,qujinyu@sina.com
1672-6197(2015)06-0075-04
U463.65
A