【正文】
甩掉鍵盤,通過語音命令進行操作。語音識別是一門交叉學科,近二十年來,語音識別技術取得顯著進步,開始從實驗室走向市場。語音的壓縮和恢復是語音信號處理的關鍵技術。語音識別的技術原理是找出特征參數(shù)。進行語音信號分析時,最先接觸到的,也是最直觀的是它的時域波形。另外,語音信號的頻譜具有非常明顯的聲學特性,利用頻域分析獲得的語音特征具有實際的物理意義。使讀者對相關技術的基本理論,方法和基本應用有一個系統(tǒng)的了解。從識別系統(tǒng)的詞匯量大小考慮:也可以將識別系統(tǒng)分為3類:(1)小詞匯量語音識別系統(tǒng):通常包括幾十個詞的語音識別系統(tǒng)。目前是中等詞匯量的識別系統(tǒng)到將來可能就是小詞匯量的語音識別系統(tǒng)。通常認為常用語言中有有限個不同的語音基元,而且可以通過其語音信號的頻域或時域特性來區(qū)分。模板匹配的方法:模板匹配的方法發(fā)展比較成熟,目前已達到了實用階段。所謂端點檢測就是在語音信號中的各種段落(如音素、音節(jié)、詞素)的始點和終點的位置,從語音信號中排除無聲段。算法的思想就是把未知量均勻的升長或縮短,直到與參考模式的長度一致。HMM是對語音信號的時間序列結構建立統(tǒng)計模型,將之看作一個數(shù)學上的雙重隨機過程:一個是用具有有限狀態(tài)數(shù)的Markov鏈來模擬語音信號統(tǒng)計特性變化的隱含的隨機過程,另一個是與Markov鏈的每一個狀態(tài)相關聯(lián)的觀測序列的隨機過程。矢量量化(VQ)矢量量化(VectorQuantization)是一種重要的信號壓縮方法。矢量量化器的設計就是從大量信號樣本中訓練出好的碼書,從實際效果出發(fā)尋找到好的失真測度定義公式,設計出最佳的矢量量化系統(tǒng),用最少的搜索和計算失真的運算量,實現(xiàn)最大可能的平均信噪比[9]。神經網(wǎng)絡的方法:利用人工神經網(wǎng)絡的方法是80年代末期提出的一種新的語音識別方法。一個完整的基于統(tǒng)計的語音識別系統(tǒng)可大致分為三部分:(1)語音信號預處理與特征提?。?2)聲學模型與模式匹配;(3)語言模型與語言處理。音節(jié)單元多見于漢語語音識別,主要因為漢語是單音節(jié)結構的語言,而英語是多音節(jié),并且漢語雖然有大約1300個音節(jié),但若不考慮聲調,約有408個無調音節(jié),數(shù)量相對較少。實際應用中常把聲母依后續(xù)韻母的不同而構成細化聲母,這樣雖然增加了模型數(shù)目,但提高了易混淆音節(jié)的區(qū)分能力。在實際應用中,語音信號的壓縮率介于10100之間。但線性預測模型是純數(shù)學模型,沒有考慮人類聽覺系統(tǒng)對語音的處理特點。也有研究者嘗試把小波分析技術應用于特征提取,但目前性能難以與上述技術相比,有待進一步研究。聲學模型的目的是提供一種有效的方法計算語音的特征矢量序列和每個發(fā)音模板之間的距離。以漢語為例:漢語按音素的發(fā)音特征分類分為輔音、單元音、復元音、復鼻尾音四種,按音節(jié)結構分類為聲母和韻母。漢語的一個音節(jié)就是漢語一個字的音,即音節(jié)字。目前常用的聲學模型基元為聲韻母、音節(jié)或詞,根據(jù)實現(xiàn)目的不同來選取不同的基元。語言模型對中、大詞匯量的語音識別系統(tǒng)特別重要。語法結構可以限定不同詞之間的相互連接關系,減少了識別系統(tǒng)的搜索空間,這有利于提高系統(tǒng)的識別。對信號進行分析得出它的倒譜參數(shù)的過程稱為同態(tài)處理。為了區(qū)別于用一般方法所求得的頻譜(spectrum),將spectrum這一詞前半部(spec)字母順序顛倒即成cepstrum,根據(jù)詞形定名為倒譜。我們稱其中的時域序列為信號序列的“復倒頻譜”,簡稱“復倒譜”,也叫對數(shù)復倒譜。值得注意的是,倒譜不能通過逆特征系統(tǒng)還原成自身,因為在計算中相位信息丟失了。這種頻率彎曲可以更好的表示聲音,例如音頻壓縮 [13] 。對不同的頻率,在相應的臨界帶寬內的信號會引起基礎膜上不同位置的振動。對頻率軸的不均勻劃分是MFCC特征的特點。 Mel頻率倒譜系數(shù)提取過程人的聽覺系統(tǒng)是一個特殊的非線性系統(tǒng),它響應不同頻率信號的靈敏度是不同的,基本上是一個對數(shù)的關系。DFT/FFT預加重、分幀、加窗Mel頻率濾波器組F(m) *s(n) *Log對數(shù)能量DCT求倒譜x(n) *X(k) *c(n) * MFCC參數(shù)提取基本流程 MFCC算法流程設某語音信號為x(n) ,則算法處理流程為1)預加重,其中k為預加重系數(shù),;2)加窗(hamming窗),幀長為N;3)DFT變換;4)設計一個具有 M個帶通濾波器的濾波器組,采用三角濾波器,中心頻率從0~F/2之間按Mel頻率分布;5)計算每個濾波器組輸出的對數(shù)能量;6)求得 MFCC特征參數(shù)。其分幀函數(shù)調用為:f=enframe(X,hamming(256),128)。由圖可知,信號幅值在15處上下波動,與此同時,隨著采樣點的增多,信號幅值的上下波動減小,可以預測,在無窮遠處,信號幅值將在15處固定不變。由于MFCC參數(shù)是對人耳聽覺特征的描述,因此,可以認為,不同聲紋的MFCC參數(shù)距離,能夠代表人耳對兩個語音聽覺上的差異,可以為聲紋的識別提供可靠的依據(jù)。為了能夠提取出這些參數(shù),就要借助一些工具,本節(jié)通過MATLAB完成倒譜在語音處理的各方面應用。由于語音信號可以視為聲門激勵信號和聲道響應信號的卷積結果。由于對其進行如下處理: (46) (47) (48)(4)特征系統(tǒng)D*[]和逆特征系統(tǒng)D*1[]的區(qū)別。基音周期具有時變性和準周期性,它的大小與個人聲帶的長短、厚薄、韌性和發(fā)音習慣有關,還與發(fā)音者的性別、年齡、發(fā)音時的力度及情感有關,是語音信號處理中的重要參數(shù)之一,它描述了語音激勵源的一個重要特征。2 基音的周期基音是指發(fā)濁音時聲帶振動所引起的周期性,而基音周期是指聲帶振動頻率的倒數(shù)。 3 基音檢測的難點自進行語音信號分析研究以來,基音檢測一直是一個重點研究的課題,很多方法已被提出,然而這些方法都有它們的局限性。2)要從語音信號中去除聲道的影響,直接取出僅與聲帶振動有關的聲源信息并非易事。另外,濁音信號可能包含有三四十次諧波分量,而基波分量往往不是最強的分量。借此,可從倒譜波形中估計出基音周期。如果倒譜的峰值超出了預先規(guī)定的門限,則輸入語音段定為濁音,而峰的位置就是基音周期的良好估計。共振峰信息包括在語音頻譜包絡中。倒譜分析技術可以較好地分離出語音信號頻譜包絡結構。與基音檢測類似,共振峰估計也是表面上看起來很容易,而實際上又受很多問題困擾。甚至在采用線性預測方法時,也并非沒有虛假峰值。這時會產生共振峰合并現(xiàn)象,而探討一種理想的能對共振峰合并進行識別的共振峰提取算法存在很多實際困難。即使采用線性預測進行頻譜包絡估計也會出現(xiàn)這個問題。對倒譜進行低時窗選,通過語音倒譜分析系統(tǒng)的最后一級,進行DFT后的輸出即為平滑后的對數(shù)模函數(shù),這個平滑的對數(shù)譜顯示了特定輸入語音段的諧振結構,即譜的峰值基本上對應于共振峰頻率,對平滑過的對數(shù)譜中的峰值進行定位,即可估計共振峰。包括波形自相關法,平均振幅差分函數(shù)法(AMDF),簡化逆濾波法(SIFT)等。在發(fā)濁音時,聲門激勵是以基音周期為周期的沖激序列: (51)式中,M是正整數(shù);r是正整數(shù),且0≤r≤M。() 由rceps函數(shù)得到的倒譜圖圖()為運用rceps函數(shù)繪制的倒譜圖。fprintf(39。同時其幅度隨著k值的增大而衰減,衰減速度比原序列要快。雖然線性預測法也有一定的缺點,例如其頻率靈敏度與人耳不相匹配,但對于許多應用來說,它仍然是一種行之有效的方法。 倒譜法的原理選擇最普遍的極零模式來描述聲道相應x(n),其z變換的形式為: (55)經過傅立葉變換,取對數(shù)和逆傅立葉變換后可以得到其復倒譜: (56) 對于倒譜可以只考慮它的幅度特性,可以看出,它是一個衰減序列,且衰減的速度比1/|n|快。由h(n)經DFT得到的H(K)就是聲道的離散譜曲線,由于它去除了激勵引起的諧波動,因此能更精確地得到共振峰參數(shù)。第6章 結論與展望 主要工作總結本文主要介紹了倒譜以及常用的語音特性參數(shù)MFCC,基音頻率和共振峰的相關知識和原理,并設計了基于倒譜的算法,在MATLAB中編程實現(xiàn)了以上參數(shù)的提取。倒譜法根據(jù)對數(shù)功率譜的逆傅立葉變換,能夠分離頻譜包絡和細微結構,很精確地得到基音頻率和共振峰信息,但它的運算量比較大。 后續(xù)工作及展望語音處理是一個系統(tǒng)而復雜的工程。本文中所用到的語料是在一些網(wǎng)絡上搜集的單詞發(fā)音及作者自己錄制的單詞發(fā)音,由于實驗設備的限制,錄制的發(fā)音存在發(fā)音不準,噪聲過大等缺點,使得參數(shù)的提取過程中經常出現(xiàn)問題。參考文獻[1]胡航,語音信號處理[M].哈爾濱:哈爾濱工業(yè)大學出版社,2000[2]陳永彬,語音信號處理[M].上海:上海交通大學出版社,1991[3]王曉亞,倒譜在語音的基音和共振峰提取中的應用[J].無線電工程2004(341)[4]楊行峻,[M].北京:電子工業(yè)出版社 ,1995[5]張雪英,數(shù)字語音處理及MATLAB仿真[M].北京:[6]趙力,語音信號處理[M].北京:[7]易克初,田斌,付強語音信號處理[M].北京:[8]占君,張倩,滿謙MATLAB函數(shù)查詢手冊[M].北京:[9]趙毅,尹雪飛,陳克安一種新的基于倒譜的共振峰頻率檢測算法[J]應用聲學第29卷第6期2010年11月[10]張琨,高思超,畢靖MATLAB 2010從入門到精通[M].北京:[11]高西全 ,丁玉美語音信號處理(第三版)[M].西安:[12] RabinerL ,JuangB H. Fundamental of Speech York:Prentice Hall ,1993[13] Furui Independent Isolated Word Recognition Using Dynamic Feature of Speech Spectrum. IEEE Trans on Acoustics,Speech,Signal Processing,1986,34 (1):52~59[14] Methods of Pitch ,1968。39。)。 dctcoef(k,:)=cos((2*n+1)*k*pi/(2*24))。xx=filter([1 ],1,xx)。 .* hamming(256)。 c2 = c1.*w39。enddtm = dtm / 3。plot(1:length(ccc_1),ccc_1)。axis([1 length(ccc_1) min(ccc_1) max(ccc_1)])。ylabel(39。MFCC特征參數(shù)39。xlabel(39。幅值差39。)。 without even the implied warranty of% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the% GNU General Public License for more details.%% You can obtain a copy of the GNU General Public License from% ftp://% Free Software Foundation, Inc.,675 Mass Ave, Cambridge, MA 02139, USA.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%nx=length(x(:))。endif (nargin 3) inc = len。inds = (1:len)。end function [x,mn,mx]=mel(p,n,fs,fl,fh,w)%MELBANKM determine matrix for a melspaced filterbank [X,MN,MX]=(P,N,FS,FL,FH,W)%% Inputs: p number of filters in filterbank% n length of fft% fs sample rate in Hz% fl low end of the lowest filter as a fraction of fs (default = 0)% fh high end of highest filter as a fraction of fs (default = )% w any sensible bination of the following:% 39。 hanning shaped filters in mel domain% 39。 highest and lowest filters taper down to zero (default)% 39。 or 39。% x=melbankm(p,n,fs)。% z=log(x*abs(f(1:n2)).^2)。)%% Copyright (C) Mike Brookes 1997% Version: $Id: ,v 2005/02/21 15:22:13 dmb Exp $%% VOICEBOX is a MATLAB toolbox for speech processing.% Home page: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% This program is free soft