□楊 勇,郭興明
(1.重慶市公安局渝中分局,重慶 400010;2.重慶大學(xué) 生物工程學(xué)院,重慶 400030)
隨著社會的發(fā)展,安全問題日趨重要,用人類生物特征并結(jié)合計(jì)算機(jī)技術(shù)進(jìn)行安全驗(yàn)證的生物特征識別技術(shù)已成為當(dāng)今的熱門課題。生物特征識別技術(shù)是根據(jù)每個人獨(dú)有的可以采樣和測量的生物學(xué)特征和行為學(xué)特征進(jìn)行身份識別的技術(shù)。由于生物特征不像各種證件類持有物那樣容易竊取,也不像密碼、口令那么容易遺忘或破解,所以在身份識別上體現(xiàn)了獨(dú)特的優(yōu)勢,近年來在國際上被廣泛研究。[1]作為人體特征之一的心音信號,反應(yīng)人體的許多生理特征,也可以作為一種生物特征達(dá)到身份識別的目的。[2]
心音特征識別認(rèn)證過程中最主要的兩部分內(nèi)容是特征提取和模式匹配。[3]特征提取,就是從心音信號中提取到惟一表現(xiàn)受試者身份的有效且穩(wěn)定可靠的特征;模式匹配就是對訓(xùn)練和鑒別時的特征模式做相似性匹配。由Davies和Mermelstein提出的Mel倒譜系數(shù)(MFCC)已經(jīng)被證明為在語音相關(guān)的識別任務(wù)中應(yīng)用最成功的特征描述之一,可以作為心音特征識別認(rèn)證的重要特征參數(shù)。
實(shí)驗(yàn)中對含噪心音信號的預(yù)處理部分包括:濾波、預(yù)加重、分幀和加窗。[4]
1.濾波
心音信號是由心肌收縮和舒張,以及心臟瓣膜、室壁和大血管在血流沖擊下形成的振動經(jīng)胸腔傳導(dǎo)至體表,用聽診器等設(shè)備采集到的聲音。因此,心音信號中的噪聲主要來自環(huán)境噪聲、工頻噪聲、儀器本身的聲音等。提取心音信號特征參數(shù)前首先要對心音信號進(jìn)行去噪處理。[5]
2.預(yù)加重
在實(shí)際信號分析中常采用預(yù)加重技術(shù),即在對信號取樣之后,插入一個一階的高通濾波器,以濾除低頻干擾,突出更為有用的高頻部分的頻譜。本實(shí)驗(yàn)使心音信號通過系統(tǒng)函數(shù)為H(z)=1-az-1的數(shù)字濾波器,a為預(yù)加重因子,取0.975。
3.分幀和加窗
心音信號是一種短時非平穩(wěn)信號,要對其進(jìn)行短時分析,需要對信號進(jìn)行分幀,然后再用一個有限長度的窗序列W截取一段信號來分析。頻域分析時常采用的是哈明窗,在分幀和加窗的基礎(chǔ)上即可對心音信號進(jìn)行特征提取等處理。
Mel頻率倒譜系數(shù)(Mel-Frequency Cepstrum Coefficients,MFCC)是廣泛應(yīng)用于語音相關(guān)識別的特征參數(shù)。MFCC和線性頻率的轉(zhuǎn)換關(guān)系如下:
MFCC參數(shù)是按幀計(jì)算的,其提取過程如圖1 所示。
圖1 MFCC的提取過程
Mel濾波的作用是利用三角形濾波器組對語音信號的幅度平方譜進(jìn)行平滑;對數(shù)操作(log)的作用有兩點(diǎn):其一是壓縮心音頻譜的動態(tài)范圍,其二是將頻域中的乘性成分變成對數(shù)譜域中的加性成分,以便濾除乘性噪聲;離散余弦變換(DCT)主要用來對不同頻段的頻譜成分進(jìn)行解相關(guān)處理,使得各向量之間相互獨(dú)立[3]P28-30。
其中Mel頻率濾波器組為在語音的頻譜范圍內(nèi)設(shè)置的若干個帶通濾波器Hm(k),0≤m<M,M為濾波器的個數(shù),取為24。每個濾波器具有三角形濾波特性,其中心頻率為f(m),當(dāng)m值小時相鄰f(m)之間的間隔也小,隨著m的增加相鄰f(m)的間隔逐漸變大。每個帶通濾波器的傳遞函數(shù)為:
高斯混合模型(Gaussian Mixture Model,簡稱GMM)是單一高斯概率密度函數(shù)的延伸,[6]它的優(yōu)點(diǎn)是可以平滑地逼近任意形狀的概率密度函數(shù),并且是易于處理的參考模型,相當(dāng)穩(wěn)定。該算法復(fù)雜度較低,實(shí)時性好。
GMM參數(shù)的訓(xùn)練一般采用最大似然(ML:Maximum Likelihood)估計(jì)的方法。設(shè)某受試者心音信號的訓(xùn)練特征矢量序列為X={xt,t=1,2,…,T},它對于模型λ的似然度可表示為:
訓(xùn)練的目的就是找到一組參數(shù)λ,使P(X|λ)最大,即:
P(X|λ)是參數(shù)λ的非線性函數(shù),直接求其最大值是不可能的。這種最大參數(shù)估計(jì)可利用EM算法通過迭代計(jì)算得到。[7]
每個識別對象用一個GMM模型來代表,分別為 λ1,λ2,…,λS。在對其進(jìn)行身份辨認(rèn)時,目的就是對一個觀測序列X,找到使之有最大后驗(yàn)概率的模型所對應(yīng)的受試者 λS[7]P259-261,即:
假定Pr(λk)=1/S,即每個受試者出現(xiàn)為等概率,且因P(X)對每個受試者是相同的,上式可以簡化為:
如果使用對數(shù)得分,且按式(1)假定,受試者辨認(rèn)的任務(wù)就是計(jì)算
用GMM模型對心音特征參數(shù)進(jìn)行訓(xùn)練時,必須選擇合適的模型階數(shù)。GMM的階數(shù)越高,GMM模型的聲學(xué)分辨率越高,能模擬的分布也就越復(fù)雜,魯棒性越好。但階數(shù)太高,無論從GMM參數(shù)估計(jì)的處理速度上,還是從說話人模型的存儲容量上,都是不易接受的。同時,在等量的訓(xùn)練數(shù)據(jù)下,GMM模型的階數(shù)越高,用于估計(jì)GMM中的每一個高斯分布的訓(xùn)練樣本數(shù)就越少,GMM參數(shù)估計(jì)的精度也就越低。[8]因此,需要選擇能保證系統(tǒng)性能的最優(yōu)的GMM階數(shù)。
本文采用的心音識別模型為高斯混合模型(GMM),試驗(yàn)中訓(xùn)練和識別的心音信號是由JXH-5型數(shù)字心音傳感器采集得到的。采樣頻率為11025Hz,量化精度為8bit,共選取了50個人的心音信號作為識別對象。實(shí)驗(yàn)中記錄每個人靜息狀態(tài)下40s的心音信號,其中前20s用于訓(xùn)練,后20s用于識別。該實(shí)驗(yàn)的原理,如圖2所示。
實(shí)驗(yàn)環(huán)境為美國Mathworks公司開發(fā)的新一代科學(xué)計(jì)算軟件MATLAB7.0。輸入的心音信號首先使用端點(diǎn)檢測,檢測到S1,S2的位置,如圖3所示。然后用預(yù)加重濾波器H(z)=1-0.975z-1進(jìn)行預(yù)加重,如圖4所示。實(shí)驗(yàn)表明,預(yù)加重可以有效地提高系統(tǒng)的性能。
圖2 心音識別認(rèn)證系統(tǒng)流程圖
圖3 心音信號的端點(diǎn)檢測結(jié)果
本實(shí)驗(yàn)采用的是雙門限端點(diǎn)檢測算法,在開始端點(diǎn)檢測前,先要分別為短時能量和過零率確定兩個門限。如果信號的能量或過零率超過了低門限,就開始標(biāo)記起始點(diǎn),進(jìn)入過渡段。在過渡段中,由于心音信號的參數(shù)數(shù)值比較小,不能確定是否進(jìn)入了有用信號段,只要兩個參數(shù)的數(shù)值都回落到低門限以下,就將當(dāng)前狀態(tài)恢復(fù)到靜音狀態(tài),而如果在過渡段中兩個參數(shù)中的任一個超過了高門限,就可以確信進(jìn)入了有用信號段。
從圖4可以看出,信號經(jīng)過預(yù)處理后,原始信號的低頻干擾得到了抑制,而更為有用的高頻部分的頻譜得到了提升。
實(shí)驗(yàn)中采用哈明窗函數(shù)對心音信號進(jìn)行分幀,取幀長20ms,幀移為10ms(即每相鄰兩幀之間有半幀是重疊的,以保證幀與幀之間的平滑過渡,保持其連續(xù)性)。計(jì)算中利用了MATLAB中哈明窗函數(shù)(hamming),采用MATLAB的語音分析工具箱VoiceBox,可以很容易地對心音信號進(jìn)行分幀處理,其分幀函數(shù)調(diào)用為:f=enframe(x,256,128)。
圖4 濾波后和預(yù)加重后的信號比較
本實(shí)驗(yàn)選取了MFCC參數(shù)的前面16個系數(shù)(C0~C15)如圖5所示,圖中x軸表示心音信號分幀的幀數(shù),y軸表示倒譜系數(shù)的維數(shù),z軸表示對應(yīng)的倒譜值。提取得到的MFCC作為GMM模型訓(xùn)練的輸入特征矢量。
圖5 MFCC參數(shù)
前文提到,GMM模型的階數(shù)是影響系統(tǒng)性能的一個重要指標(biāo),階數(shù)過小,量化誤差太大,高斯混合模型不能很好地表示整個向量空間;而階數(shù)過大,訓(xùn)練和測試的計(jì)算量都會非常的大,而且對性能沒有顯著提高。[9]圖6為不同 GMM階數(shù)下系統(tǒng)的識別率。
圖6 不同GMM階數(shù)下的識別率
由圖6可以看出,64階GMM可以達(dá)到和32階GMM一樣的識別率,但是計(jì)算時間卻增加了很多,因此并不是盲目地加大GMM階數(shù)就能提高系統(tǒng)性能的。在綜合考慮系統(tǒng)總體性能的基礎(chǔ)上,將GMM的階數(shù)選為32階。
本文運(yùn)用MATLAB實(shí)現(xiàn)了基于心音信號的身份識別認(rèn)證,并進(jìn)行了相關(guān)測試。實(shí)驗(yàn)中,共采集了50個人的心音信號,對該算法進(jìn)行測試,經(jīng)過反復(fù)實(shí)驗(yàn),認(rèn)為該算法具有良好的抗噪性能,并取得了滿意的識別率。但是系統(tǒng)中采用的樣本數(shù)量較少,樣本訓(xùn)練時間較短,這對系統(tǒng)提高識別率有一定的遏制作用,有待于在以后的工作中解決這個問題。
[1]A,K.Jain,A,Ross,S.Prabhakar,An introduction to biometric recognition,IEEE Trans.Circuits Syst.Video Technol,2004(1):4 -20.
[2]Koksoon Phua,Jianfeng Chen,Tran Huy Dat,et.a(chǎn)l.Heart sound as a biometric.Pattern Recognition,2007:1 -14.
[3]王華朋,楊洪臣.聲紋識別特征MFCC的提取方法研究[J].中國人民公安大學(xué)學(xué)報(bào)(自然科學(xué)版),2008(1):28 -30.
[4]吳華玉,曾毓敏,李 平.一種具有魯棒特性的Mel頻率倒譜系數(shù)[J].金陵科技學(xué)院學(xué)報(bào),2008(2):26-29.
[5]郭興明,吳玉春,肖守中.自適應(yīng)提升小波變換在心音信號預(yù)處理中的應(yīng)用[J].儀器儀表學(xué)報(bào),2009(4):802-806.
[6]Rong Zheng,Shuwu Zhang,Bo Xu.Text- independent speaker identification using GMM-UBM and frame level likelihood normalization[J].Chinese Spoken Language Processing,2004 International Symposium on,2004,12:289 -292.
[7]易克初,田 斌,付 強(qiáng).語音信號處理[M].北京:國防工業(yè)出版社,2000:259-261.
[8]辛全超,吳 萍.基于GMM的說話人識別研究與實(shí)踐[J].計(jì)算機(jī)與數(shù)字工程,2009(6):11-15.
[9]胡益平.基于GMM的說話人識別技術(shù)研究與實(shí)現(xiàn)[D].廈門:廈門大學(xué),2007.