- 相關(guān)推薦
語(yǔ)音識(shí)別在家電遙控器中的應(yīng)用
摘要:介紹一種適合家電遙控器應(yīng)用的語(yǔ)音識(shí)別算法,該算法使用雙模塊和兩級(jí)端點(diǎn)檢測(cè)方法,能有效地提高識(shí)別和穩(wěn)健性;介紹利用該技術(shù)實(shí)現(xiàn)的一種新型學(xué)習(xí)型遙控器,展現(xiàn)了語(yǔ)音識(shí)別技術(shù)在家電領(lǐng)域的廣闊前景。關(guān)鍵詞:語(yǔ)音識(shí)別DTWFEDFRED學(xué)習(xí)型遙控器
家用電器發(fā)展的一個(gè)重要方面是讓用戶界面更加人性化,更加方便自然,做到老年人和殘疾人可以無(wú)障礙地使用。利用語(yǔ)音識(shí)別技術(shù)實(shí)現(xiàn)語(yǔ)音控制是提高家電產(chǎn)品用戶界面質(zhì)量的一條重要途徑。本文以語(yǔ)音控制遙控器為例,說(shuō)明語(yǔ)音識(shí)別技術(shù)如何應(yīng)用在家電器領(lǐng)域。
適合家用電器應(yīng)用的語(yǔ)音識(shí)別嵌入式系統(tǒng)結(jié)構(gòu)如圖1所示,它由四個(gè)部分組成。第一部分為模/數(shù)轉(zhuǎn)換部分,其輸入端接收輸入的語(yǔ)音信號(hào),并將其轉(zhuǎn)化成數(shù)字芯片可處理的數(shù)字采集信號(hào);在輸出端將解碼后的語(yǔ)音數(shù)字信號(hào)轉(zhuǎn)換為音頻模擬信號(hào),通過(guò)揚(yáng)聲器放聲。第二部分為語(yǔ)音識(shí)別部分,它的作用是對(duì)輸入的數(shù)字語(yǔ)音詞條信號(hào)進(jìn)行分析,識(shí)別出詞條信號(hào)所代表的命令,一般由DSP完成。第三部分語(yǔ)音提示和語(yǔ)音回放部分,它一般也是在DSP中完成的,其核心是對(duì)語(yǔ)音信號(hào)進(jìn)行數(shù)字壓縮編碼和解碼,目的是提示用戶操作并對(duì)識(shí)別語(yǔ)音的響應(yīng),完成人機(jī)的語(yǔ)音交互。第四部分是系統(tǒng)控制部分,它將語(yǔ)音識(shí)別結(jié)果轉(zhuǎn)換成相應(yīng)的控制信號(hào),并將其輸出轉(zhuǎn)換成物理層操作,完成具體功能。語(yǔ)音識(shí)別與系統(tǒng)控制的有機(jī)結(jié)合是完成聲控交互的關(guān)鍵,下面將對(duì)語(yǔ)音識(shí)別算法及遙控系統(tǒng)控制部分作詳細(xì)的討論。
1語(yǔ)音識(shí)別算法
目前,常以單片機(jī)(MCU)或DSP作炎硬件平臺(tái)的實(shí)現(xiàn)消費(fèi)類電子產(chǎn)品中的語(yǔ)音識(shí)別。這類語(yǔ)音識(shí)別主要為孤立詞識(shí)別,它有兩種實(shí)現(xiàn)方案:一種是基于隱含馬爾科夫統(tǒng)計(jì)模型(HMM)框架的非特定人識(shí)別;另一種是基于動(dòng)態(tài)規(guī)劃(DP)原理的特定人識(shí)別。它們?cè)趹?yīng)用上各有優(yōu)缺點(diǎn)。HMM非特定人員的優(yōu)點(diǎn)是用戶無(wú)需經(jīng)過(guò)訓(xùn)練,可以直接使用;并且具良好的穩(wěn)定性(即對(duì)使用者而言,語(yǔ)音識(shí)別性能不會(huì)隨著時(shí)間的延長(zhǎng)而降低)。但非特定人語(yǔ)音識(shí)別也有其很難克服的缺陷。首先,使用該方法需要預(yù)先采集大量的語(yǔ)料庫(kù),以便訓(xùn)練出相應(yīng)的識(shí)別模型,這就大大提高了應(yīng)用此技術(shù)的前期成本;其次,非特定人語(yǔ)音識(shí)別很難解決漢語(yǔ)中不同方言的問(wèn)題,限制了它的使用區(qū)域;另外還有一個(gè)因素也應(yīng)予以考慮,家電中用于控制的具體命令詞語(yǔ)最好不要完全固定,應(yīng)當(dāng)根據(jù)的用戶的習(xí)慣而改變,這一點(diǎn)在非特定人識(shí)別中幾乎不可能實(shí)現(xiàn)。因此大多數(shù)家電遙控器不適合采用此方案。DP特定人識(shí)別的優(yōu)點(diǎn)是方法簡(jiǎn)單,對(duì)硬件資源要求較低;此外,這一方法中的訓(xùn)練過(guò)程也很簡(jiǎn)單,不需預(yù)先采集過(guò)多的樣本,不僅降低了前期成本,而且可以根據(jù)用戶習(xí)慣,由用戶任意定義控制項(xiàng)目的具體命令語(yǔ)句,因而適合大多數(shù)家電遙控器的應(yīng)用。DP特定識(shí)別的嚴(yán)重缺點(diǎn)是它的穩(wěn)健性不理想,對(duì)有些人的語(yǔ)音識(shí)別率高,有的人識(shí)別率卻不高;剛訓(xùn)練完時(shí)識(shí)別率較高,但隨著時(shí)間的推遲而識(shí)別率降低。些缺點(diǎn)往往給用戶帶來(lái)不便。為克服這些缺陷,對(duì)傳統(tǒng)方法作為改進(jìn),使識(shí)別性能和穩(wěn)健性都有顯著的提高,取得令人滿意的結(jié)果。
1.1端點(diǎn)檢測(cè)方法
影響孤立詞識(shí)別性能的一個(gè)重要因素是端點(diǎn)檢測(cè)準(zhǔn)確性[4]。在10個(gè)英語(yǔ)數(shù)字的識(shí)別測(cè)試中,60毫秒的端點(diǎn)誤差就使識(shí)別率下降3%。對(duì)于面向消費(fèi)類應(yīng)用的語(yǔ)音識(shí)別芯片系統(tǒng),各種干擾因素更加復(fù)雜,使精確檢測(cè)端點(diǎn)問(wèn)題更加困難。為此,提出了稱為FRED(Frame-basedReadl_timeEndpointDetection)算法[3]的兩級(jí)端點(diǎn)檢測(cè)方案,提高端點(diǎn)檢測(cè)的精度。第一級(jí)對(duì)輸入語(yǔ)音信號(hào),根據(jù)其能量和過(guò)零率的變化,進(jìn)行一次簡(jiǎn)單的實(shí)時(shí)端點(diǎn)檢測(cè),以便去掉靜音得到輸入語(yǔ)音的時(shí)域范圍,并且在此基礎(chǔ)上進(jìn)行頻譜特征提取工作。第二級(jí)根據(jù)輸入語(yǔ)音頻譜的FFT分析結(jié)果,分別計(jì)算出高頻、中頻和低頻段的能量分布特性,用來(lái)判別輕輔音、濁輔音和元音;在確定了元音、濁音段后,再向前后兩端擴(kuò)展搜索包含語(yǔ)音端點(diǎn)的幀。FRED端點(diǎn)檢測(cè)算法根據(jù)語(yǔ)音的本質(zhì)特征進(jìn)行端點(diǎn)檢測(cè),可以更好地適應(yīng)環(huán)境的干擾和變化,提高端點(diǎn)檢測(cè)的精度。
在特定人識(shí)別中,比較了常用的FED(FastEndpointDetection)[5]和FRED兩種端點(diǎn)檢測(cè)算法的性能。兩種算法測(cè)試使用相同的數(shù)據(jù)庫(kù),包括7個(gè)人的錄音,每個(gè)人說(shuō)100個(gè)人名,每個(gè)人名讀3遍。測(cè)試中的DP模板訓(xùn)練和識(shí)別算法為傳統(tǒng)的固定端點(diǎn)動(dòng)態(tài)時(shí)間伸縮(DTW)模板匹配算法[4]。兩種端點(diǎn)檢測(cè)算法的識(shí)別率測(cè)試結(jié)果列在表1中。
表1比較FED和FRED端點(diǎn)檢測(cè)算法對(duì)DTW模板匹配識(shí)別率的影響
端點(diǎn)檢測(cè)算法第1人第2人第3人第4人第5人第6人第7人平均FED92.5%87%92.6%95.6%96.2%96.8%100%94.4%FRED94.3%89.9%93.2%99.4%99.4%98.8%100%96.4%
測(cè)試結(jié)果說(shuō)明:使用FRED端點(diǎn)檢測(cè)算法,所有說(shuō)話人的識(shí)別率都有了不同程度的提高。因此,本系統(tǒng)采用這種兩級(jí)端點(diǎn)檢測(cè)方案。
1.2模擬匹配算法
DTW是典型的DP特定人算法,為了克服自然語(yǔ)速的差異,用動(dòng)態(tài)時(shí)間規(guī)整方法將模板特征序列和語(yǔ)音特征序列進(jìn)行匹配,比較兩者之間的失真,得出識(shí)別判決的依據(jù)。
假設(shè)存儲(chǔ)的一個(gè)詞條模板包括M幀倒譜特征R={r(m);m=1,2,∧,M};識(shí)別特征序列包括N幀倒譜特征T={t(n);n=1,2,∧,N}。在r(i)和t(i)之間定義幀局部失真D(i,j),D(i,j)=|r(i)-t(i)|2,通過(guò)動(dòng)態(tài)規(guī)劃過(guò)程,在搜索路徑中找到累積失真最小的路徑,即最優(yōu)的匹配結(jié)果。采用對(duì)稱形式DTW:
其中S(i,j)是累積失真,D(i,j)是局部失真。
當(dāng)動(dòng)態(tài)規(guī)劃過(guò)程計(jì)算到固定結(jié)點(diǎn)(N,M)時(shí),可以計(jì)算出該模板動(dòng)態(tài)匹配的歸一化距離,識(shí)別結(jié)果即該歸一化距離最小的模板詞條:x=argmin{S(N,Mx)}。
為了提高DTW識(shí)別算法的識(shí)別性能和模板的穩(wěn)健性,提出了雙模板策略,即x=argmin{S(N,M2x)}。第一次輸入的訓(xùn)練詞條存儲(chǔ)為第一個(gè)模板,第二次輸入的相同訓(xùn)練詞條存儲(chǔ)為第二個(gè)模板,希望每個(gè)詞條通過(guò)兩個(gè)較穩(wěn)健的模板來(lái)保持較高的識(shí)別性能。與上面測(cè)試相同,也利用7個(gè)人說(shuō)的100個(gè)人名,每個(gè)人名含3遍的數(shù)據(jù)庫(kù),比較DTW單模板和雙模板的性能差別,結(jié)果更在表2中。
表2DTW不同模板數(shù)的識(shí)別率比較
DTW第1人第2人第3人第4人第5人第6人第7人平均單模板94.3%89.9%93.2%99.4%99.4%98.8%100%96.4%雙模板99.4%96.6%98.5%100%100%98.8%100%99.0%
測(cè)試結(jié)果說(shuō)明:通過(guò)存儲(chǔ)兩個(gè)模板,相當(dāng)大地提高了DTW識(shí)別的性能,其穩(wěn)健性也有很大的提高。因此,對(duì)特定人識(shí)別系統(tǒng),采用DTW雙模板是簡(jiǎn)單有效的策略。
綜上所述,該嵌入式語(yǔ)音識(shí)別芯片系統(tǒng)采用了改進(jìn)端點(diǎn)檢測(cè)性能的FRED算法,12階Mel頻標(biāo)倒譜參數(shù)(MFCC)作為特征參數(shù),使用雙模板訓(xùn)練識(shí)別策略。通過(guò)一系列測(cè)試,證明該系統(tǒng)對(duì)特定人的識(shí)別達(dá)到了很好的識(shí)別性能,完全可以滿足家用電器中聲控應(yīng)用的要求。
2語(yǔ)音控制遙控器設(shè)計(jì)
目前家用遙控器主要為按鍵式,并有兩種類型:一種是固定碼型,每個(gè)鍵對(duì)應(yīng)一種或幾種碼型,都是生產(chǎn)廠家預(yù)先設(shè)定好的,用戶不能更改;另一種是學(xué)習(xí)型,具有自我學(xué)習(xí)遙控碼的功能,可由用戶定義遙控器的每個(gè)鍵對(duì)應(yīng)的碼型,它能夠?qū)⒍喾N遙控器集于一身,用一個(gè)遙控器就可控制多個(gè)家電,又可以作為原配遙控器的備份。由于現(xiàn)代家電功能不斷增加,上述兩種遙控器都有按鍵過(guò)多,用戶不易記住每個(gè)鍵的含義等問(wèn)題。將語(yǔ)音識(shí)別技術(shù)應(yīng)用于學(xué)習(xí)型遙控器,利用語(yǔ)音命令代替按者對(duì)命令的記憶和使用,同時(shí)省去了大量按鍵,縮小了遙控器的體積。
語(yǔ)音控制遙控器的硬件框圖如圖2所示,它由兩個(gè)獨(dú)立的模塊組成:語(yǔ)音信號(hào)處理模塊和系統(tǒng)控制模塊。
語(yǔ)音信號(hào)算是模塊由DSP、快閃存儲(chǔ)器(FLASH)、編解碼器(CODEC)組成。其中DSP是整個(gè)語(yǔ)音識(shí)別模塊的核心,負(fù)責(zé)語(yǔ)音識(shí)別、語(yǔ)音編解碼,以及FLASH的讀寫(xiě)控制。DSP的優(yōu)點(diǎn)是運(yùn)算速度快、內(nèi)存空間大、數(shù)據(jù)交換速度快,可用來(lái)實(shí)現(xiàn)復(fù)雜的算法,提高識(shí)別率,減小反應(yīng)延時(shí),得到較高的識(shí)別性能。DSP芯片選用AnalogDevices公司的AD2186L,它具有如下特點(diǎn):①運(yùn)算速度達(dá)40MIPS,且均為高效的單調(diào)周期指令;②提供了40K字節(jié)的片內(nèi)RAM,其中8K字(16Bit/字)為數(shù)據(jù)RAM,8K字(24Bit/字)為程序RAM,最大可達(dá)4兆字節(jié)的存儲(chǔ)區(qū),用于存儲(chǔ)數(shù)據(jù)或程序;③3.3V工作電壓,具有多種省電模式。AD2186L既能完成與語(yǔ)音信號(hào)算是相關(guān)的算法,又適合使用電池作能源的遙控器。FLASH和CODEC也都選用3.3V工作電壓的芯片。FLASH為美國(guó)ATMEL公司的AT29LV040A(4MBit),它作為系統(tǒng)的存儲(chǔ)器,主要用于存放以下內(nèi)容:提示語(yǔ)音合成所需的參數(shù),特定人訓(xùn)練后的碼本數(shù)據(jù),DSP系統(tǒng)的應(yīng)用程序和學(xué)習(xí)和遙控碼數(shù)據(jù)。CODEC選用美國(guó)TI公司的TLV320AC37,用來(lái)進(jìn)行A/D、D/A變換、編碼和解碼。
系統(tǒng)控制模塊由單片機(jī)、紅外接收發(fā)送器、電源管理電路組成。單片機(jī)負(fù)責(zé)整個(gè)遙控器的系統(tǒng)控制。單片機(jī)作為主控芯片,進(jìn)行鍵盤(pán)掃描,根據(jù)用戶通過(guò)鍵盤(pán)輸入的指令,分別完成學(xué)習(xí)遙控碼;控制DSP進(jìn)行語(yǔ)音訓(xùn)練、回放、識(shí)別;將識(shí)別結(jié)果轉(zhuǎn)換成相應(yīng)的遙控碼,通過(guò)紅外發(fā)光管發(fā)射出去。單片機(jī)與DSP之間通過(guò)標(biāo)準(zhǔn)的RS232串行協(xié)議通訊。
系統(tǒng)的控制軟件流程圖如圖3所示。在使用前,按“學(xué)習(xí)鍵”進(jìn)入學(xué)習(xí)狀態(tài),用戶先對(duì)學(xué)習(xí)型遙控器訓(xùn)練語(yǔ)音命令,并使其學(xué)習(xí)與各語(yǔ)音命令相對(duì)應(yīng)的原理控碼型。使用時(shí)按“識(shí)別鍵”,進(jìn)入語(yǔ)音識(shí)別狀態(tài),等待語(yǔ)音處理模塊返回結(jié)果,若返回正確的識(shí)別結(jié)果,則把相應(yīng)的遙控碼發(fā)射出去。例如,原電視遙控器數(shù)字鍵“1”對(duì)應(yīng)中央1臺(tái),用戶的訓(xùn)練命令為“中央1臺(tái)”,學(xué)習(xí)了原遙控器的數(shù)字鍵“1”的遙控碼,并使其與訓(xùn)練命令“中央1臺(tái)”對(duì)應(yīng)起來(lái)。于是使用時(shí)只需對(duì)著學(xué)習(xí)型遙控器的麥克風(fēng)說(shuō)出“中央1臺(tái)”,電視就會(huì)切換到中央1臺(tái)。這樣用戶不需要記住每個(gè)電視臺(tái)與臺(tái)號(hào)的對(duì)應(yīng)關(guān)系,相對(duì)于枯燥的頻道數(shù)字,用戶自定義的命令更容易記住。
若連續(xù)的30秒無(wú)正確的命令則遙控器進(jìn)入休眠狀態(tài),單片機(jī)控制電源管理電路切換DSP和FLASH電源,單片機(jī)本身也進(jìn)入休眠狀態(tài),直至用戶按鍵,喚醒單片機(jī),再由單片機(jī)控制恢復(fù)DSP和FLASH供電,重新開(kāi)始工作。這是因?yàn)檎麄(gè)系統(tǒng)中,DSP的功耗最大,長(zhǎng)時(shí)間不用時(shí),關(guān)閉語(yǔ)音信號(hào)處理模塊,可以顯著地降低整個(gè)系統(tǒng)的功耗。
從實(shí)驗(yàn)室走向市場(chǎng)的過(guò)程中,可靠性與成本是遇到的最大挑戰(zhàn)。采用雙模板的DTW和兩組端點(diǎn)檢測(cè)FRED算法,可在系統(tǒng)資源和反應(yīng)延時(shí)增加極小的情況下,有效地提高識(shí)別率和穩(wěn)健性。該項(xiàng)技術(shù)成功地運(yùn)用在學(xué)習(xí)型遙控器上,展現(xiàn)了語(yǔ)音識(shí)別技術(shù)在家電領(lǐng)域的廣闊前景。
【語(yǔ)音識(shí)別在家電遙控器中的應(yīng)用】相關(guān)文章:
SPCE061A在語(yǔ)音遙控器中的應(yīng)用08-06
基于HMM的語(yǔ)音識(shí)別技術(shù)在嵌入式系統(tǒng)中的應(yīng)用08-06
AMBE-1000在語(yǔ)音壓縮中的應(yīng)用08-06
ISD4004語(yǔ)音芯片在語(yǔ)音報(bào)站器中的應(yīng)用08-06
語(yǔ)音處理芯片AC48105在低速語(yǔ)音編碼設(shè)備中的應(yīng)用08-06
字符結(jié)構(gòu)知識(shí)在車牌識(shí)別中的應(yīng)用08-06
藍(lán)牙芯片ROK 101 007在語(yǔ)音系統(tǒng)中的應(yīng)用08-06