基于SPCE061A的語(yǔ)音識(shí)別技術(shù)應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
SPCE061A是凌陽(yáng)公司設(shè)計(jì)的一種16位單片機(jī),該款單片機(jī)資源豐富,具有極高的性價(jià)比,該單片機(jī)內(nèi)置有2路DA轉(zhuǎn)換,8路AD轉(zhuǎn)換及在線仿真,并且有16×16位的乘法運(yùn)算和內(nèi)積運(yùn)算的DSP功能,這為它進(jìn)行復(fù)雜的語(yǔ)音數(shù)字信號(hào)的壓縮編碼與解碼提供了便利,還可以做數(shù)字濾波器。這些特點(diǎn)為我們進(jìn)行在語(yǔ)音處理尤其是語(yǔ)音識(shí)別領(lǐng)域的應(yīng)用提供了便利。
語(yǔ)音識(shí)別技術(shù)在各個(gè)層面均有廣泛的應(yīng)用前景。電腦軟件領(lǐng)域,例如:語(yǔ)音命令、語(yǔ)音輸入,對(duì)話系統(tǒng)、查詢系統(tǒng)、教學(xué)軟件、游戲軟件等;消費(fèi)性電子產(chǎn)品領(lǐng)域,例如:電子記事本、聲控玩具、語(yǔ)音拔號(hào)功能的手機(jī)等;工業(yè)產(chǎn)品領(lǐng)域,例如:車用移動(dòng)電話、車用導(dǎo)航系統(tǒng)等;電話系統(tǒng)領(lǐng)域,例如:語(yǔ)音識(shí)別總機(jī)服務(wù)、語(yǔ)音拔號(hào)、語(yǔ)音訂票訂位等。
1 語(yǔ)音識(shí)別基本原理
語(yǔ)音識(shí)別就是讓機(jī)器聽得懂人們所講的話,基本框架如圖1和圖2所示。圖1是語(yǔ)音訓(xùn)練模型的部分:將已知的語(yǔ)音信號(hào)經(jīng)由端點(diǎn)偵測(cè)(End Point Detection)及特征參數(shù)求取(Feature Extraction)而產(chǎn)生標(biāo)準(zhǔn)的語(yǔ)音參考樣本。
圖2是語(yǔ)音識(shí)別的部分。將待測(cè)的語(yǔ)音信號(hào),經(jīng)與圖1同樣的處理步驟求得特征參數(shù)后再與前述的標(biāo)準(zhǔn)語(yǔ)音參考樣本對(duì)比,找出最相似的參考樣本作為辨識(shí)的結(jié)果。
2 語(yǔ)音識(shí)別分類
若依使用者的限制而言可分為特定人語(yǔ)音與非特定人語(yǔ)音識(shí)別。
2.1 特定人語(yǔ)音識(shí)別
使用特定人語(yǔ)音識(shí)別系統(tǒng)前,須先把使用者的語(yǔ)音參考樣本存入當(dāng)成比對(duì)的資料庫(kù),即特定人語(yǔ)音識(shí)別系統(tǒng)在使用前就必須先進(jìn)行圖1的訓(xùn)練學(xué)習(xí)步驟。
2.2 非特定人語(yǔ)音識(shí)別
使用本系統(tǒng)前根本不需要先學(xué)習(xí),便能直接使用。一套最佳的語(yǔ)音識(shí)別系統(tǒng)是不須經(jīng)過(guò)學(xué)習(xí)便能進(jìn)行語(yǔ)音識(shí)別,但通常辯識(shí)率都比較低。
另外以說(shuō)話方式的連續(xù)是否又可分為非連續(xù)語(yǔ)音識(shí)別和連續(xù)語(yǔ)音識(shí)別。對(duì)于非連續(xù)語(yǔ)音來(lái)說(shuō),識(shí)別所說(shuō)的每一個(gè)字必須分開辨認(rèn);而連續(xù)語(yǔ)音識(shí)別可以一般自然流利的說(shuō)話方式來(lái)進(jìn)行人性化的語(yǔ)音識(shí)別,但由于關(guān)系到相連音的問(wèn)題,很難達(dá)到好的辨認(rèn)效果。
3 SPCE061A芯片特性簡(jiǎn)介
SPCE061A是一款基于μ′nSP內(nèi)核的16位單片機(jī),其芯片特性如下:(1)工作電壓:內(nèi)核工作電壓VDD為3.0~3.6V(CPU),I/O口工作電壓VDDH為2.4~5.5V(I/O);(2)CPU時(shí)鐘:0.32MHz~49.152MHz;(3)內(nèi)置2K字SRAM和32K閃存ROM;(4)系統(tǒng)處于備用狀態(tài)下(時(shí)鐘處于停止?fàn)顟B(tài)),耗電小于2μA@3.6V;(5)具備觸鍵喚醒的功能;(6)32位通用可編程輸入/輸出端口;(7)2個(gè)16位可編程定時(shí)器/計(jì)數(shù)器(可自動(dòng)預(yù)置初始計(jì)數(shù)值);(8)7通道10位電壓模-數(shù)轉(zhuǎn)換器(ADC)和單通道聲音模-數(shù)轉(zhuǎn)換器;(9)2個(gè)10位DAC(數(shù)-模轉(zhuǎn)換)輸出通道;(10)14個(gè)中斷源可來(lái)自定時(shí)器A/B,時(shí)基,2個(gè)外部時(shí)鐘源輸入,鍵喚醒;(11)具備串行設(shè)備接口;(12)低電壓復(fù)位(LVR)功能和低電壓監(jiān)測(cè)(LVD)功能;(13)內(nèi)置在線仿真(ICE,In-Circuit Emulator)接口。
SPCE061A的內(nèi)部結(jié)構(gòu)框圖如圖3所示。
4 SPCE061A的語(yǔ)音識(shí)別應(yīng)用
4.1 硬件電路簡(jiǎn)述
SPCE061A的D/A轉(zhuǎn)換通道的硬件實(shí)現(xiàn)大致有兩類,一類是直接采用數(shù)/模轉(zhuǎn)換器(DAC)方式,另一類是直接采用脈寬調(diào)制(PWM)驅(qū)動(dòng)方式,SPCE061A音頻輸出的結(jié)構(gòu)就是由兩個(gè)DAC通道或一個(gè)PWM驅(qū)動(dòng)通道構(gòu)成。兩類實(shí)現(xiàn)方式實(shí)質(zhì)都為數(shù)/模轉(zhuǎn)換,都是將數(shù)字信號(hào)轉(zhuǎn)換成電流模擬信號(hào)輸出。SPCE061A的音頻輸出采用雙通道數(shù)/模轉(zhuǎn)換DAC方式,即數(shù)字信號(hào)通過(guò)10位DAC轉(zhuǎn)換成3mA驅(qū)動(dòng)的電流模擬信號(hào)輸出。語(yǔ)音提示輸出直接采用DAC通道,經(jīng)信號(hào)放大后,由揚(yáng)聲器輸出。
語(yǔ)音識(shí)別電路比較簡(jiǎn)單,MIC選用駐極體話筒。駐極體話筒具有結(jié)構(gòu)簡(jiǎn)單、重量輕、體積小、無(wú)方向性、頻率響應(yīng)寬、保真度好等優(yōu)點(diǎn),它的偏壓由SPCE061A的VMIC管腳提供。
4.2 系統(tǒng)軟件
語(yǔ)音識(shí)別分為語(yǔ)音樣板訓(xùn)練和語(yǔ)音識(shí)別兩個(gè)過(guò)程。我們將標(biāo)準(zhǔn)模式的存儲(chǔ)空間稱之為“詞庫(kù)”,而把標(biāo)準(zhǔn)模式稱之為“樣板”。所謂語(yǔ)音樣板訓(xùn)練,即將待識(shí)別的命令進(jìn)行頻譜分析,提取特征參數(shù)作為識(shí)別的標(biāo)準(zhǔn)模式。語(yǔ)音識(shí)別的過(guò)程是提取語(yǔ)音命令的特征參數(shù),與詞庫(kù)中的樣板比較,取相似度最好的樣板命令序號(hào)作為識(shí)別結(jié)果。凌陽(yáng)科技公司提供語(yǔ)音樣板訓(xùn)練工具和語(yǔ)音識(shí)別庫(kù)函數(shù),每次可識(shí)別30條語(yǔ)音命令,命令較多可以分多組進(jìn)行,語(yǔ)音識(shí)別流程見圖4所示。
其中,BSR-GetResult函數(shù)為啟動(dòng)辯識(shí),當(dāng)無(wú)命令識(shí)別出來(lái)時(shí),返回0;識(shí)別器停止、未初始化或識(shí)別未激活返回-1;當(dāng)識(shí)別不合格時(shí)返回-2;當(dāng)識(shí)別出來(lái)時(shí)返回命令的序號(hào)。部分程序源代碼如下。
以上程序代碼是SPCE061A在一種基于特定人智能語(yǔ)音識(shí)別電動(dòng)小車上的應(yīng)用。經(jīng)大量實(shí)驗(yàn)測(cè)試表明,將SPCE061A應(yīng)用于語(yǔ)音識(shí)別領(lǐng)域,系統(tǒng)性能穩(wěn)定、聲音質(zhì)量和識(shí)別效果較好。但在環(huán)境噪聲或干擾信號(hào)高于語(yǔ)音信號(hào)時(shí),系統(tǒng)將無(wú)法進(jìn)行正確的語(yǔ)音識(shí)別,在背景噪聲處理及其工程實(shí)際上還要進(jìn)一步改進(jìn)。