王佳佳, 周克良
(江西理工大學(xué) a. 能源與機(jī)械工程學(xué)院, b. 電氣工程及其自動(dòng)化學(xué)院, 江西 贛州 341000)
由于硬件自身的特點(diǎn),醫(yī)學(xué)設(shè)備雖然可以檢測到人體的心音信號,但是對于噪聲卻不能進(jìn)行自我的判斷與消除,而這些問題就需要智能算法進(jìn)行彌補(bǔ).
智能算法可以針對病人的心音信號和外界噪聲的特性,進(jìn)行自我分析與判斷,最后進(jìn)行降噪.本文所研究的對象是二尖瓣心音信號,針對病人的二尖瓣心音信號來判斷病人的病情.
據(jù)分析,二尖瓣心音信號的噪聲主要來自于周圍環(huán)境中的噪聲、工頻噪聲(50 Hz)、病人與周圍物體的摩擦、儀器本身含有的噪聲(35 Hz)等.這些噪聲會(huì)吞沒二尖瓣心音信號的有用信息,進(jìn)而影響醫(yī)學(xué)專家的判斷.目前對于二尖瓣心音信號的降噪問題,國內(nèi)外學(xué)者已通過采用小波分析、奇異值分解、混沌時(shí)間序列、自適應(yīng)算法等進(jìn)行了研究[1-2],且已取得一定成效,但同時(shí)存在處理高頻信號有失真、算法收斂性和實(shí)驗(yàn)精度不高等不足[3-4].
維納濾波(wiener filtering)是一種基于最小均方誤差準(zhǔn)則對平穩(wěn)過程的最優(yōu)估計(jì)器[1],該算法作為一種濾除噪聲或干擾以提取有用信息的濾波器,在降噪方面具有十分重要的應(yīng)用價(jià)值.但同時(shí)它采用FFT變換進(jìn)行時(shí)域分析,這對于處理非平穩(wěn)類型的信號存在分辨率較低等缺陷.鑒于此,本文在維納濾波算法的基礎(chǔ)上,提出一種優(yōu)化的維納濾波算法對二尖瓣心音信號進(jìn)行降噪,以減少二尖瓣心音信號中的殘留問題,同時(shí)提高心音信號的分辨率.
EMD算法的原理是對采集的心音信號首先進(jìn)行EMD分解,得到有限個(gè)模態(tài)IMF分量[2-3],由于心音信號主要集中在低頻部分,因此舍去前三階的模態(tài)IMF分量,可減去一部分二尖瓣心音信號中夾雜的高頻率的外界噪聲,保留EMD分解中的低頻率IMF分量[5-8].
首先,定義采集的二尖瓣心音信號
y(t)=x(t)+d(t).
(1)
式中:x(t)表示純二尖瓣心音信號;d(t)為心音中所夾雜的外界噪聲信號;y(t)為實(shí)際的二尖瓣心音信號.對二尖瓣心音信號進(jìn)行離散S變換得
(2)
本文所有的高斯窗函數(shù)為
定義域半徑為
Rd=min[5α/f,L].
窗長為[-Rd,Rd],記k=[Rd/T].進(jìn)而可得高斯窗函數(shù)為
(3)
式中δ的值會(huì)直接影響到窗函數(shù)的形狀,進(jìn)而可調(diào)節(jié)S變換的分辨率.對于式(3)中δ的值取1/|f|.則S變換公式為
(4)
可導(dǎo)出維納濾波算法中的數(shù)字濾波器[9-11]H(k):
(5)
其中,Pxy是x(t)與y(t)的互功率譜密度,Py是y(t)的功率譜密度.進(jìn)一步可導(dǎo)出維納濾波的輸出
(6)
(7)
式中,Y(f)為y(t)的Fourier變換.
1) 對實(shí)際的二尖瓣心音信號進(jìn)行EMD分解,可得到有限個(gè)IMF分量,本文將舍去前三階的IMF分量(心音信號主要集中于低頻信號中,前三階IMF分量基本上都是高頻信號),并進(jìn)行重構(gòu)二尖瓣心音信號.
2) 重構(gòu)二尖瓣心音信號進(jìn)行窗函數(shù)分幀,確定它的信號長度L,時(shí)間間隔T,和采樣點(diǎn)數(shù)N=L/T.
3) 對窗函數(shù)的參數(shù)δ進(jìn)行設(shè)置(δ是與頻域無關(guān)的參數(shù),在整個(gè)運(yùn)算中只會(huì)取一個(gè)值.否則,可根據(jù)當(dāng)前的頻率進(jìn)行調(diào)整),對于給定的頻率f,0≤f≤1/2T,以及頻率的采樣間隔f、采樣點(diǎn)數(shù)NF有HT(nT)=h(nT)exp(-i2πfnT).
4) 對于二尖瓣心音信號的頻率按照采樣點(diǎn)進(jìn)行有序循環(huán),計(jì)算出各個(gè)頻率點(diǎn)處的S變換.
① 記fi=if.計(jì)算離散頻率為f時(shí),信號y(t)的調(diào)諧信號HT(nT)及窗函數(shù)w(mT,fi);
② 根據(jù)公式
計(jì)算出頻率fi所對應(yīng)的S變換譜線;
③ 增加i,返回3),直到i>NF,便可得到信號在所有頻率點(diǎn)處的S變換譜線.
5) 求出所有的S變換譜線之后,調(diào)用VAD函數(shù)求出噪聲幀和心音幀,對于噪聲幀,計(jì)算出噪聲平均幅值譜,即λd.
6) 求出后驗(yàn)信噪比γi(k)和先驗(yàn)信噪比ξi(k),并求出維納濾波器的傳遞函數(shù)Hi(k).
正常心音信號降噪之后的結(jié)果如圖1、圖2所示.
圖1 含噪心音信號的幅頻譜Fig.1 Spectrogram of a noisyheart sound signal
圖2 降噪之后的正常心音信號的幅頻譜Fig.2 Spectrogram of normal heart sound signal after noise reduction
由圖1、圖2分析對比可得,心音信號的頻率主要集中于低頻信號中,優(yōu)化的維納濾波算法有效的降低了正常心音信號中的噪聲,進(jìn)而提高了信噪比.
本文從某醫(yī)院采集的心音數(shù)據(jù)包括:二尖瓣狹窄(心房心顫)、二尖瓣狹窄(嚴(yán)重)、二尖瓣狹窄(心動(dòng)過速),這3種心音信號采樣的頻率為4 000 Hz,量化精度為16 bit.
將優(yōu)化的維納濾波算法用于采集的心音信號,可有圖3~圖5結(jié)果.
圖3 純二尖瓣狹窄(心房心顫)幅頻譜Fig.3 Spectrogram of pure mitralstenosis (atrial fibrillation)
圖4 含噪二尖瓣狹窄(心房心顫)心音幅頻譜Fig.4 Heart sound amplitude spectrogram of noisy mitralstenosis (atrial fibrillation)
圖5 降噪之后的二尖瓣狹窄(心房心顫)幅頻譜Fig.5 Spectrogram of mitral valvestenosis (atrial fibrillation) after noise reduction
在此,本文也對所提出的算法進(jìn)行了對比,在同等條件下,分別使用LMS算法、維納濾波算法以及EMD和改進(jìn)的維納濾波算法對心音信號進(jìn)行處理,并將他們的信噪比(SNR)作為評判值.表1是它們的對比數(shù)據(jù).
表1 3種算法降噪之后的信噪比Table 1 Signal-to-noise ratios after noise reduction by the three algorithms
從表1可直觀的看出,優(yōu)化的維納濾波算法與LMS算法、傳統(tǒng)的維納濾波算法相比較,其信噪比明顯提升,降噪效果明顯.
對于降噪之后的數(shù)據(jù),通過MFCC算法,提取出正常心音與降噪之后的二尖瓣狹窄(心房心顫)信號的特征值,并將其輸入SVM中進(jìn)行分類,分類結(jié)果如圖6、圖7所示.
結(jié)合圖6、圖7和表2可得,降噪之后的二尖瓣狹窄(心房心顫)信號可以更好地被分類.對于降噪二尖瓣狹窄(心房心顫)信號在SVM分類中其均方誤差比含噪二尖瓣狹窄(心房心顫)信號低0.030 75,平方相關(guān)系數(shù)高0.038 51.可得出結(jié)論,此算法可適用于解決醫(yī)學(xué)上心音信號的降噪問題.
圖6 含噪二尖瓣狹窄(心房心顫)心音與正常心音的分類結(jié)果Fig.6 Classification of noisy mitralstenosis (atrial fibrillation) heart sounds and normal heart sounds
圖7 降噪后二尖瓣狹窄(心房心顫)心音與正常心音的分類結(jié)果Fig.7 Classification of mitralstenosis (atrial fibrillation) heart sounds and normal heart sounds after noise reduction
表2 心音分類結(jié)果相關(guān)量Table 2 Heart sound classification correlation coefficient
本文在傳統(tǒng)的維納濾波算法上進(jìn)行了優(yōu)化,提出了優(yōu)化的維納濾波算法.此算法首先將實(shí)際的二尖瓣心音信號進(jìn)行了降噪,減少了噪聲的能量,再通過離散S變換的維納濾波算法降低噪聲中的虛假頻率,減少噪聲信號的殘留,增強(qiáng)了二尖瓣心音信號的降噪效果,此方法可有利于二尖瓣心音信號的分類,對于解決醫(yī)學(xué)上的心音降噪問題也將會(huì)有一定的用途.