2.2 語音識(shí)別系統(tǒng)在DSP上的實(shí)現(xiàn)
2.2.1 實(shí)驗(yàn)數(shù)據(jù)的建立
所有語音信號(hào)在安靜的實(shí)驗(yàn)室環(huán)境下獲得?;贒SP 平臺(tái)的實(shí)時(shí)識(shí)別實(shí)驗(yàn)系統(tǒng),語音信號(hào)通過麥克風(fēng)輸入,使用TLV320AIC23對(duì)模擬語音信號(hào)進(jìn)行采樣。語音采樣頻率為8kHz,采樣量化精度為 16bit,雙聲道??紤]到Flash存儲(chǔ)空間有限,本文選用自建語音庫中900個(gè)樣本中的40個(gè)樣本作為訓(xùn)練樣本建立模型參數(shù)。
2.2.2 語音識(shí)別系統(tǒng)的硬件結(jié)構(gòu)
由于語音識(shí)別系統(tǒng)算法復(fù)雜度較高,同時(shí)考慮到實(shí)時(shí)性,本文選擇TI公司的TMS320C6713DSK 作為硬件開發(fā)平臺(tái)。
TMS320C6713DSK是一款低成本獨(dú)立開發(fā)應(yīng)用板,其最高工作時(shí)鐘頻率可以達(dá)到225MHz,且是高性能的浮點(diǎn)數(shù)字信號(hào)處理器。且?guī)в蠺LV320AIC23 立體編解碼器,8M 字節(jié)32bit的SDRAM,512k字節(jié),8bit的非易失性Flash存儲(chǔ)器。
本系統(tǒng)針對(duì)的是非特定人小詞匯量連續(xù)語音的識(shí)別,硬件結(jié)構(gòu)如圖4所示,主要包括語音數(shù)據(jù)采集模塊、數(shù)據(jù)傳輸模塊、數(shù)據(jù)處理模塊、程序數(shù)據(jù)存儲(chǔ)及Flash引導(dǎo)裝載模塊、數(shù)據(jù)存儲(chǔ)器RAM 模塊及其他相關(guān)模塊。
圖4 系統(tǒng)硬件結(jié)構(gòu)圖
數(shù)據(jù)采集模塊主要采用TLV320AIC23編解碼器來實(shí)現(xiàn)對(duì)語音數(shù)據(jù)的采集。由AIC23采集的數(shù)字信號(hào)數(shù)據(jù)通過McBSP1存入SDRAM 中,數(shù)據(jù)傳輸方式為EDMA方式下的McBSP數(shù)據(jù)傳輸。數(shù)據(jù)處理模塊是系統(tǒng)的核心模塊,用TMS320C6713DSP芯片來完成語音識(shí)別算法的實(shí)現(xiàn)。訓(xùn)練時(shí),DSP完成語音信號(hào)MFCC特征參數(shù)的提取、SVM 建模并存入Flash中;識(shí)別時(shí),DSP讀取待識(shí)別語音信號(hào)數(shù)據(jù)并將獲得的模型參數(shù)與訓(xùn)練模型參數(shù)進(jìn)行比較,進(jìn)而得到識(shí)別結(jié)果。
2.2.2 基于DSP的語音識(shí)別系統(tǒng)的實(shí)現(xiàn)及分析
本系統(tǒng)設(shè)計(jì)主要涉及到語音數(shù)據(jù)段、執(zhí)行代碼段、載入Flash的程序段和模型參數(shù)段等。在編程中主要以C語言編程為主,配合使用匯編語言,使程序運(yùn)行效率更高。
實(shí)驗(yàn)結(jié)果及其性能分析:
訓(xùn)練時(shí),系統(tǒng)上電,加入工程項(xiàng)目。圖5所示為讀取“12345”的語音時(shí)部分主程序、對(duì)音節(jié)切分后數(shù)字“1”提取的語音及其第10幀的MFCC參數(shù)、mfcc子程序等。
圖5 MFCC參數(shù)
識(shí)別過程中,將存入Flash中的訓(xùn)練模型參數(shù)依次讀出,與待識(shí)別語音信號(hào)的MFCC參數(shù)比較,最后得到識(shí)別結(jié)果。
實(shí)驗(yàn)中讀取20句話,每句話含有6個(gè)不同漢語數(shù)字的連續(xù)語音,通過對(duì)其進(jìn)行測試,得到識(shí)別率為76.7%.圖6是對(duì)音節(jié)切分后的數(shù)字“2”的識(shí)別情況,在STD欄輸出了最后識(shí)別結(jié)果即數(shù)字“2”。
3 結(jié)論
本文通過在Matlab平臺(tái)上進(jìn)行仿真實(shí)驗(yàn)選取合適的參數(shù)及模型,并將其移植到 TMS320C6713DSK上實(shí)現(xiàn)了非特定人小詞匯量連續(xù)語音識(shí)別系統(tǒng)。其中基于TLV320AIC23完成了對(duì)語音數(shù)據(jù)的采集,借助SDRAM 和Flash進(jìn)行數(shù)據(jù)存儲(chǔ),并采用短時(shí)能量和短時(shí)過零率進(jìn)行語音信號(hào)的初步判定,結(jié)合起來進(jìn)行測試,在Windows7操作系統(tǒng)中使用DirectX SDK 9.0b進(jìn)行視頻顯示,QR解碼程序?yàn)樽孕芯幹?,并與TPS自動(dòng)測試臺(tái)集成。連續(xù)地采集視頻,在計(jì)算機(jī)顯示屏上實(shí)時(shí)顯示影像圖的同時(shí)進(jìn)行條碼解碼定位,結(jié)果顯示單幀圖像的平均解碼時(shí)間為630ms,使用幀相關(guān)算法后,平均解碼時(shí)間為124ms.
圖6為在單碼定位時(shí)預(yù)估未定位條碼的結(jié)果,q1為已定位碼,q2,q3,q4為未定位碼,由q1預(yù)估q2,q3,q4的結(jié)果為圖中的加亮框表示,對(duì)框區(qū)域外擴(kuò)使其包含完整條碼,然后把擴(kuò)域后的子區(qū)域獨(dú)立出來,作為下一幀條碼解碼的有效區(qū)域以提高圖像處理速度。
圖5 視頻輔助探針定位
圖6 單碼定位的預(yù)估結(jié)果
本方法在采用幀相關(guān)及位置相關(guān)算法后,在普通PC上實(shí)現(xiàn)實(shí)時(shí)視頻,并具有如下特點(diǎn):
a)無需夾具,允許遮擋,允許測試板和探頭位置變化;探針和目標(biāo)點(diǎn)標(biāo)記同時(shí)出現(xiàn)影像圖上,直接引導(dǎo),無需在影像和實(shí)板上對(duì)照查找,提高探測效率,減小出錯(cuò)機(jī)會(huì)。
b)QR碼定位符含測試板信息,可以在PCB板制作過程中通過絲印到PCB板上,也可以在后期紙制粘貼到PCB板上(但要精確地保證每塊板上的QR碼位置相同),允許同一板面任意多定位碼,以區(qū)分不同PCB板及不同板面,用作PCB加電前預(yù)檢測,可保證加電安全。
評(píng)論