你的位置:首頁 > 測試測量 > 正文

專家親授:基于DSP原理的漢子語音識別系統的實現

發(fā)布時間:2014-11-04 責任編輯:echolady

【導讀】語音識別是機器通過識別理解之后將語音信號轉化成文本文件的高科技。這一領域現如今已成為研究的焦點,并且在某些領域已取得了突破成就。本文由專家從原理入手,深入解析語音識別系統的實現過程。

作為專門的研究領域,語音識別又是一門交叉學科,它與聲學、語音學、語言學、數字信號處理理論、信息論、計算機科學等眾多學科緊密相連。本漢語語音識別系統是一個非特定人的、孤立音語音識別系統。其中孤立音至少包括漢語的400多個調音節(jié)(不考慮聲調)以及一些常用的詞組。識別系統主要用于手持設備,如手機、掌上電腦。這些設備的CPU一般是DSP,硬件資源十分有限,而且大多不支持浮點運算。那么,對系統各個部分的設計首要考慮的是系統對硬件資源的開銷必須盡量的小,不能超過這些設備的限制。硬件資源的開銷包括存儲模型參數的開銷,以及識別過程中對內存、DSP的運行時間的開銷。

語音識別系統的實現流程

專家親授:基于DSP原理的漢子語音識別系統的實現
圖1:語音識別系統處理框圖

在語音識別系統中,模擬的語音信號在完成A/D轉換后成為數字信號,但時域上的語音信號很難直接用于識別,因此需要從語音信號中提取語音的特征,一方面可以獲得語音的本質特征,另一方面也起到數據壓縮的作用。輸入的模擬語音信號首先要進行預處理,包括預濾波、采樣和量化、加窗、端點檢測、預加重等。語音識別系統的模型通常由聲學模型和語言模型兩部分組成,分別對應于語音到半音節(jié)概率的計算和半音節(jié)到字概率的計算。

語音識別系統的特征提取

目前通用的特征提取方法是基于語音幀的,即將語音信號分為有重疊的若干幀,對每一幀提取語音特征。由于本技術方案采用的語音庫采樣率為8 kHz,因此采用幀長為256個采樣點(即32 ms),幀步長或幀移(即每一幀語音與上一幀語音不重疊的長度)為80個采樣點(即10 ms)。

現有語音識別系統采用的最主要的兩種語音特征包括:

線性預測倒譜參數(Linear Prediction Cepstrum Coefficient,LPCC),該特征是基于語音信號為自回歸信號的假設,利用線性預測分析獲得倒譜參數。LPCC參數的優(yōu)點是計算量小,對元音有較好的描述能力,其缺點在于對輔音的描述能力較差,抗噪聲性能較差。

Mel 頻標倒譜參數(Mel Frequency Cepstrum Coefficient,MFCC),該特征考慮了人耳的聽覺特性,將頻譜轉化為基于Mel頻標的非線性頻譜,然后轉換到倒譜域上。由于充分模擬了人的聽覺特性,而且沒有任何前提假設,MFCC參數具有識別性能和抗噪能力,實驗證明在漢語數碼語音識別中MFCC 參數的性能明顯優(yōu)于LPCC參數,因此本技術方案采用MFCC參數為語音特征參數。

求MFCC參數的大致過程為:

對輸入語音幀加Hamming窗后做快速傅里葉變換(Fast Fourier Transformation,FFT),將時域信號轉化為頻域信號。

將線性頻標轉化為Mel頻標。轉化方法是將頻域信號通過24個三角濾波器,其中中心頻率在1 000 Hz以上和以下的各12個。濾波器的中心頻率間隔特點是在1000Hz以下為線性分布,1 000 Hz以上為等比數列分布。三角濾波器的輸出為:
專家親授:基于DSP原理的漢子語音識別系統的實現
式中:Xk為頻譜上第k個頻譜點的能量;Yi為第i個濾波器的輸出;Fi為第i個濾波器的中心頻率。
用離散余弦變換(Discrete Cosine Transformation,DCT)將濾波器輸出變換到倒譜域:
專家親授:基于DSP原理的漢子語音識別系統的實現
式中:p為MFCC參數的階數,這里取p = 12。{Ck}k = 1,2,…,12即為所求的MFCC參數。
為體現語音的動態(tài)特性,在語音特征中加入了一階差分倒譜,其計算方法如下式所示:
專家親授:基于DSP原理的漢子語音識別系統的實現
式中下標l與l - k表示第l與l - k幀;m表示第m維。
[page]
MFCC參數計算的要點是將線性功率譜S(n)轉換成為Mel頻率下的功率譜,這需要在計算之前先在語音的頻譜范圍內設置若干個帶通濾波器Hm(n),m= 0,1,2,…,M - 1,n = 0,1,2,…,N/2 - 1。M為濾波器個數,N為一幀語音信號的點數。每個濾波器具有三角形特性,其中心頻率為fm,它們在Mel頻率軸上是均勻分布的。在線性頻率上,當m 較小時相鄰的fm間隔很小,隨著m的增加相鄰的fm間隔逐漸拉開。Mel頻率和線性頻率的轉換關系如下:
專家親授:基于DSP原理的漢子語音識別系統的實現
這些帶通濾波器的參數是事先計算好的。圖2給出了濾波器組的分布圖,其中M 選擇為26,FFT點數N為256,語音信號的采樣頻率為8000 Hz。

專家親授:基于DSP原理的漢子語音識別系統的實現
圖2:利用人耳仿生學特性設計的Mel尺度濾波器組
 
系統測度估計

測度估計技術可以采用動態(tài)時間彎折DTW、隱馬爾可夫模型HMM或人工神經網ANN等算法,本項目采用國際上最先進的HMM,這樣能夠比較容易的實現非特定人,而且系統結構也比較靈活、一致。

根據描述的語音單位的大小,HMM可分為:基于整詞模型的HMM(Word based HMM)。其優(yōu)點為可以很好地描述詞內音素協同發(fā)音的特點,建模過程也較為簡單。因此很多小詞匯量語音識別系統均采用整詞模型HMM。但在大詞匯量語音識別中由于所需建立的模型太多而無法使用。

基于子詞模型的HMM(Sub Word based HMM)。該類HMM描述的語音單位比詞小,如英語語音識別中的基本音素,漢語語音識別中的半音節(jié)等。其優(yōu)點為模型總數少,所以在大詞匯量語音識別中得到了廣泛的應用。其缺點在于其描述詞內協同發(fā)音的能力劣于整詞模型,但由于子詞模型已經得到了非常充分的研究,所以近年來在很多小詞表應用識別系統中也用了子詞模型。本技術方案采用基于半音節(jié)(即聲、韻母)的語音建模方法,其識別模型拓撲結構如圖3 所示,其中靜音HMM采用1個狀態(tài),每一聲母模型采用2個狀態(tài),每一韻母模型采用4個狀態(tài)。

專家親授:基于DSP原理的漢子語音識別系統的實現
圖3:語音模型拓撲結構
 
根據輸出概率分布的不同,HMM(隱含馬爾科夫模型)可分為:

離散HMM(Discrete HMM,DHMM)。其輸出概率是基于一套碼本的離散概率分布,其優(yōu)點在于由于實現了存儲量和計算量都較小,所需的訓練語音也較少,但其矢量量化的過程會造成性能的損失。

連續(xù)HMM(Continuous Density HMM,CDHMM)。其輸出概率是連續(xù)概率密度函數(一般是高斯混合密度函數)。其所需的訓練語音較多,模型參數存儲量和計算量都較大,在訓練語音足夠時,其性能優(yōu)于DHMM。

半連續(xù)HMM(Semi Continuous HMM,SCHMM)。SCHMM是DHMM和CDHMM的折衷,與DHMM相似,其輸出為一套碼本,但每個碼字均為一個連續(xù)概率密度分布函數,這一點與CDHMM相近。其性能和所需的訓練語音等均介于DHMM和CDHMM之間。

考慮到漢語數碼語音所需的模型較少,很容易獲得足夠多的訓練語音,因此本技術方案采用了CDHMM為語音模型。
狀態(tài)輸出概率分布為混合高斯密度函數。其各分量計算如下:
專家親授:基于DSP原理的漢子語音識別系統的實現
總的概率輸出即為各分量的加權和:
專家親授:基于DSP原理的漢子語音識別系統的實現
式中:s表示當前狀態(tài);M為混合分量數;u,Σ ,c分別為各混合分量的均值矢量、協方差矩陣和混合分量系數。

該算法利用Viterbi譯碼的過程進行幀同步的搜索,易于實時實現,也容易納入語法信息??紤]到系統的實時實現性,本技術方案采用Viterbi譯碼作為系統的搜索算法。

系統試驗結果

在漢語全音節(jié)與詞組混合的語音識別任務中,得到的初步實驗結果為:PC微機浮點算法條件下正確覆蓋率不低于98%,定點算法的正確覆蓋率不低于97%。DSP嵌入系統定點條件下正確覆蓋率不低于96%。系統的響應時間滿足實時識別的要求。通過測試組嚴格的檢查及抽樣測試,證明上述結果真實可靠,該輸入法基本達到實用化要求。

總結

漢字語音識別是科技領域的重要課題,本文介紹的方案設計采用孤立語音的全音階和詞組的混合識別模式,使用連續(xù)概率分布非特定人的聲學模型,并輔以多候選的人機交互方式,漢子語音的輸入。相信未來在語音識別的方向上還會取得更大的突破。

相關閱讀:

技術達人:ARM的非特定人語音識別系統的設計
智能手機的超性能語音識別技術
技術分享:基于DSP和OZ890的電池管理系統電路設計

要采購濾波器么,點這里了解一下價格!
特別推薦
技術文章更多>>
技術白皮書下載更多>>
熱門搜索
?

關閉

?

關閉