基于DSP的語(yǔ)音識(shí)別計(jì)算器設(shè)計(jì)
TLV320AIC23是Tl公司的一款低成本、低功耗的音頻編解碼器(CODEC),在本系統(tǒng)中負(fù)責(zé)采集語(yǔ)音信號(hào)。它與本系統(tǒng)相關(guān)的性能參數(shù)有:支持8~96 kHz可調(diào)采樣率;可調(diào)1~5dB的完整緩存放大系統(tǒng)等。圖4是TLV320AIC23的電路圖。本文引用地址:http://www.ex-cimer.com/article/166656.htm
AM29LV800B存儲(chǔ)器又稱(chēng)閃存(Flash),它具有在線(xiàn)電擦寫(xiě)、低功耗、大容量等特點(diǎn),其存儲(chǔ)容量為8Mbit。上電后,DSP從外部Flash加載并執(zhí)行程序代碼,使系統(tǒng)能夠脫機(jī)運(yùn)行。在本系統(tǒng)中,它主要用來(lái)存儲(chǔ)程序代碼、語(yǔ)音模型、以及壓縮后的語(yǔ)音數(shù)據(jù)。
HY57V641620同步動(dòng)態(tài)存儲(chǔ)器(SDRAM),容量為4 M×16 bit。作為RAM的擴(kuò)展,它大大增強(qiáng)了DSP的存儲(chǔ)與運(yùn)算能力。在系統(tǒng)初始化的時(shí)候,用來(lái)裝載放在Flash中的聲學(xué)模型。這樣在語(yǔ)音識(shí)別的過(guò)程中可以通過(guò)片外的SDRAM來(lái)訪(fǎng)問(wèn)聲學(xué)模型,比直接訪(fǎng)問(wèn)Flash來(lái)獲取聲學(xué)模型數(shù)據(jù)要快。LCD顯示器用來(lái)實(shí)時(shí)顯示經(jīng)過(guò)語(yǔ)音識(shí)別后的數(shù)字、運(yùn)算符號(hào),并在得到需要顯示最終結(jié)果的提示后顯示答案。
2 系統(tǒng)軟件設(shè)計(jì)
2.1 系統(tǒng)軟件流程
圖5為系統(tǒng)的軟件流程。整個(gè)系統(tǒng)開(kāi)始運(yùn)行后,初始化DSP及TLV320AIC23,以使各個(gè)寄存器的初值符合要求。在系統(tǒng)通過(guò)TLV320AIC23采集語(yǔ)音信號(hào)后,首先要進(jìn)行預(yù)濾波和預(yù)加重;接著將語(yǔ)音信號(hào)進(jìn)行分幀;然后計(jì)算每幀信號(hào)的短時(shí)能量與短時(shí)平均過(guò)零率,為接下來(lái)的門(mén)限判決提供依據(jù);利用門(mén)限判決進(jìn)行端點(diǎn)檢測(cè)后,提取每幀的Mel倒譜參數(shù)(MFCC),作為該幀信號(hào)的特征值;最后,用處理后的語(yǔ)音信號(hào)的特征值與模板進(jìn)行匹配,這一部分是系統(tǒng)的重點(diǎn)。以相似度最大的模板鎖對(duì)應(yīng)的語(yǔ)音信號(hào)為識(shí)別結(jié)果。根據(jù)識(shí)別的結(jié)果在顯示器上顯示數(shù)字和運(yùn)算符號(hào),由運(yùn)算規(guī)則得出結(jié)果并顯示。
2.2 前處理
前處理是對(duì)語(yǔ)音信號(hào)采樣、A/D轉(zhuǎn)換、預(yù)濾波和預(yù)加重、分幀等。以8 kHz和16位的采樣頻率采集的語(yǔ)音模擬信號(hào)。本系統(tǒng)使用帶通濾波器來(lái)濾波,上截頻率為3.4 kHz。下截頻率為60 Hz。由于語(yǔ)音信號(hào)具有極強(qiáng)的相關(guān)性,因此,分幀時(shí)要考慮幀重復(fù)的問(wèn)題。本文將語(yǔ)音信號(hào)以256個(gè)采樣點(diǎn)為一幀,兩頓之間的重復(fù)點(diǎn)數(shù)為80,通過(guò)一個(gè)一階的濾波器H(z)=1-a/z對(duì)采集的信號(hào)進(jìn)行處理。
端點(diǎn)檢測(cè)就是從說(shuō)話(huà)人的語(yǔ)音命令中,檢測(cè)出孤立詞的語(yǔ)音開(kāi)始和結(jié)束的始點(diǎn)。端點(diǎn)檢測(cè)是語(yǔ)音識(shí)別過(guò)程的一個(gè)重要環(huán)節(jié),只有將孤立詞從說(shuō)話(huà)人的背景噪聲中分割出來(lái),才能夠進(jìn)一步進(jìn)行語(yǔ)音識(shí)別工作。本文采用短時(shí)能量和過(guò)零率檢測(cè)端點(diǎn)。語(yǔ)音信號(hào)的短時(shí)能量分析給出了反應(yīng)其幅度變化的一個(gè)合適描述方法。
短時(shí)過(guò)零率,即指每幀內(nèi)信號(hào)通過(guò)零值的次數(shù),能夠在一定程度上反映信號(hào)的頻譜特性。一幀語(yǔ)音信號(hào)內(nèi)短時(shí)平均過(guò)零率定義為:
用短時(shí)能量參數(shù)檢測(cè)結(jié)束點(diǎn),信號(hào){x(n)}的短時(shí)能量定義為:
式中,{x(n)}為輸入信號(hào)序列。
在正式端點(diǎn)檢測(cè)開(kāi)始后,短時(shí)能量與短時(shí)過(guò)零率作為門(mén)限來(lái)判決說(shuō)話(huà)人命令字的開(kāi)始與結(jié)束;連續(xù)5幀語(yǔ)音信號(hào)超過(guò)門(mén)限值視為說(shuō)話(huà)人命令字的開(kāi)始,連續(xù)8幀語(yǔ)音信號(hào)低于門(mén)限值視為說(shuō)話(huà)人命令字的結(jié)束。
2.3 特征值提取
提取每幀的Mel倒譜參數(shù)(MFCC)為該幀信號(hào)的特征值。由倒譜特征是用于說(shuō)話(huà)人個(gè)性特征和說(shuō)話(huà)人識(shí)別的最有效的特征之一,它是基于人耳模型而提出的。其提取過(guò)程如下:
1)原始語(yǔ)音信號(hào)S(n)經(jīng)過(guò)預(yù)加重、加窗等處理,得到每個(gè)語(yǔ)音幀的時(shí)域信號(hào)x(n)。然后經(jīng)過(guò)離散傅里葉變換(DFT)后得到離散頻譜X(k)。
式中,N表示傅里葉變換的點(diǎn)數(shù)。
評(píng)論