中心議題:
- 語音控制器硬件設計
- 語音控制系統(tǒng)軟件設計
- 實驗結果及結論分析
解決方案:
- 采用Infineon公司的SDA80D51芯片
- 非特定人語音識別模塊和邏輯控制模塊設計方案
隨著現(xiàn)代電子技術在汽車系統(tǒng)中的不斷應用,越來越多的車載電器加入到車身電子行列中,使得汽車的各種性能都得到了極大的改善,但汽車駕駛室的開關也越來越多, 這就為駕駛員行車中對車載電器的操作提出了更高的要求,同時也給行車過程帶來了不安全的隱患。隨著語音識別算法的改進和新一代Soc專用語音處理芯片的問世,使用語音命令控制汽車電器的操作能夠部分用口代替手的功能,從而減輕駕駛員操作負擔,提高行車安全系數(shù)?!?br />
目前我國的車身電子語音控制主要集中在汽車導航系統(tǒng)的應用上,沒有充分發(fā)揮語音識別技術在車身電子中的應用價值。本文提出了一種的以專用語音處理芯片UniSpeech-SDA80D51為核心控制車載音響操作的設計方案,并在SL1102C1型車載音響上實現(xiàn)了對非特定人的語音識別與控制?! ?br />
語音控制器硬件
車載語音控制器系統(tǒng)由定向拾音器、語音識別模塊、控制模塊和音響模塊組成。系統(tǒng)的功能是:由拾音器采集駕駛員發(fā)出的語音命令,利用語音識別模塊將拾音器輸出的語音物理聲音信號轉變成語音數(shù)字信號,并識別出語音命令對應的漢字或詞語,之后由控制模塊產(chǎn)生與之對應的詞條編碼指令,通過系統(tǒng)I/O口線將控制命令傳達給音響,車載音響接收到控制指令產(chǎn)生動作,響應駕駛員的語音命令,比如快進、快退或音量調(diào)節(jié)等。系統(tǒng)結構及原理框圖如圖1 所示:
語音識別模塊主要由UniSpeech-SDA80D51芯片及外圍電路組成。本模塊主要實現(xiàn)對輸入的非特定人語音信號的識別和處理功能,輸出與語音命令對應的詞條編碼。
SDA80D51是Infineon公司專為語音識別和語音處理應用領域新推出的專用芯片,采用高集成度的Soc系統(tǒng)結構以0.18μm半導體工藝制造,擁有8位高速增強型M8051核心(25MIPS)和16位定點DSP核心OAK(100MIPS)的雙核架構,片內(nèi)集成了直接雙訪問快速SRAM、2路ADC和2路DAC(有效精度為12Bit)、多種通信接口和通用GPIO等設備,外部只需擴展Flash存儲器等少量外圍電路即可構成完整應用系統(tǒng)?! ?br />
控制模塊由MCU和模擬開關電路構成,本模塊主要完成對語音識別模塊輸出的識別結果--詞條編碼信號進行邏輯分析和處理,通過模擬開關電路產(chǎn)生對應功能的控制信號輸出到音響,控制音響的操作。其中MCU選用美國ATMEL公司產(chǎn)品AT89S51,由于車載音響SL1102C1上的按鍵控制面板為電阻式分流鍵盤電路,采用電壓采樣識別模式,對不同鍵值進行識別,綜合SDA80D51芯片輸出的I/O電壓特性,確定使用繼電器模擬SL1102C1控制面板按鍵的閉合和斷開動作?! ?br />
本設計是基于安徽森力公司的SL1102C1汽車音響。SL1102C1是專門為中檔轎車設計的汽車音響,具有MP3播放、收音機和顯示時間等功能,目前大量使用在江淮同悅轎車上。SL1102C1前板共有15個按鍵和一個用來調(diào)節(jié)音量的編碼開關。分別為開關機/靜音、音效設置、6個臺位、播放/暫停、隨機播放、重復播放、瀏覽播放、選擇下曲(快進)、選擇上曲(快退)、向下搜臺/上一曲、向上鎖臺/下一曲、模式轉換、電臺瀏覽/自動存儲臺、波段切換、顯示時間/時間設置和復位等功能?! ?br />
音響前板上的按鍵為電壓采樣識別方式,按鍵包含短按(延時小于0.2s)和長按(延時大于1s)兩種動作,控制模塊MCU(AT89S51)的輸出電壓為TTL電平,直接采用MCU信號驅動音響按鍵動作容易引起誤識別,造成系統(tǒng)誤操作,因此本文采用模擬開關電路,很好地解決了上述問題。當AT89S51接收到語音模塊輸出的一個語音命令識別結果編碼信號后,立即進行邏輯分析并輸出對應的控制信號驅動相應繼電器吸合模擬按鍵動作,按鍵的短按和長按功能是通過軟件實現(xiàn)的?! ?br />
[page]
系統(tǒng)軟件設計
系統(tǒng)的軟件包括:非特定人語音識別模塊和邏輯控制模塊?! ?br />
非特定人語音識別模塊基于HMM 模型算法。該算法通過對大量語音數(shù)據(jù)進行數(shù)據(jù)統(tǒng)計,建立識別詞條的統(tǒng)計模型語音庫,然后從待識別語音中提取特征,與模型庫進行匹配,由比較匹配分數(shù)得到識別結果,并通過SDA80D51的GPIO口輸出識別結果對應的詞條編碼信號。語音識別模塊主要由信號預處理、特征參數(shù)提取、模型匹配和Viterbi算法部分組成?! ?br />
信號預處理部分主要完成輸入語音信號的采樣、 模/數(shù)轉換功能。A/D變換由SDA80D51內(nèi)嵌12位A/D變換器實現(xiàn),采樣頻率固定為8 kHz.
特征參數(shù)提取基于語音幀,采用分幀提取特片。先對語音信號進行重疊分幀,前一幀和后一幀重疊一半(幀信號重疊是體現(xiàn)相鄰兩幀數(shù)據(jù)之間的相關性),幀長為25ms,對每幀提取一次語音特片?! ?br />
MFCC參數(shù)屬于感知頻域倒譜參數(shù),反映了語音信號短時幅度譜的特征。p維MFCC參數(shù)的提取過程如圖1所示?! ?br />
其中:m是幀號,N是單位幀內(nèi)的采樣點數(shù)?! ?br />
HMM是描述語音信號的一種概率統(tǒng)計模型,使用 MarKov鏈來模擬語音信號統(tǒng)計特性的變化,HMM模型是在Markov鏈的基礎上發(fā)展起來的。
Viterbi算法是一種幀同步動態(tài)規(guī)整算法,在給定觀察值序列和模型時,Viterbi算法給出了一個概率密度P(Q,O | λ)最大的狀態(tài)序列?! ?br />
控制模塊的主要功能是:在單片機查詢到語音模塊輸出的語音詞條信號后,查表獲得詞條編碼,根據(jù)編碼判斷對應按鍵是長按或短按,分別進入相應的子程序處理,長按子程序延時1s,短按子程序延時0.2s.在子程序中,輸出語音命令所對應的I/O控制信號驅動繼電器吸合模擬按鍵或編碼開關動作,并及時復位I/O口。為了避免語音控制和手動控制之間沖突,語音控制模塊可以完全兼容于手動控制,在語音控制操作時,同時可以進行手動控制?! ?br />
實驗結果及結論
本系統(tǒng)的樣機實驗主要是測試非特定人的語音識別率和模擬開關動作的準確率。由于汽車音響的語音詞條為2~4個字,語音識別率實驗內(nèi)容為車載音響常用2字詞條指令18條、3字詞條指令12條、4字詞條指令10條,實驗對象為6人4男、2女(普通話和方言),實驗環(huán)境為噪聲干擾環(huán)境和相對安靜環(huán)境,樣機測試結果如表1所示?! ?/p>
由表1可知,系統(tǒng)的識別率與語音指令詞條字數(shù)、麥克接收距離、說話人方言及環(huán)境有關。4字詞識別率高于2字詞,相對安靜環(huán)境下識別率可以達到90%以上,男聲和女聲的識別率接近。有噪聲干擾環(huán)境中識別率下降。為了提高系統(tǒng)的識別率,系統(tǒng)樣機采用奧林巴斯 ME52定向麥克(在表中沒有反映),提高了麥克接收范圍,使系統(tǒng)總體的識別率上升到95%.
在系統(tǒng)樣機控制電路實驗中,模擬開關動作達到了較高的準確率,測試結果為98%以上,只要控制程序運行正常,各路繼電器就能按照程序安排執(zhí)行閉合和斷開模擬手動開關操作?! ?br />
實現(xiàn)汽車電器的語音控制是未來車載電器的發(fā)展趨勢,越來越多的解決方案在不斷的被提出和驗證。本文提出的設計是在SL1102C1型車載音響上使用SDA80D51芯片,實現(xiàn)了車載音響非特定人的語音識別與控制。由于該芯片集成度高,需要外圍模塊少,設計的硬件電路簡單,便于調(diào)試檢測。該設計得到的樣機,有較高的識別率、工作穩(wěn)定、可擴展性強,達到預期的設計目標,整個設計方案和實現(xiàn)方法是可行的。由于語音識別率隨著環(huán)境,說話人不同而變化,雖然HMM在噪聲很少的環(huán)境下可以獲得很高的識別率,但當測試語音或者環(huán)境中含有不同程度的噪聲污染時,語音識別系統(tǒng)的性能會很快地下降。提高系統(tǒng)的抗噪性和魯棒性是語音識別系統(tǒng)走向實用化的關鍵之一。