【作 者】陳蘋,葉繼倫, ,張旭, ,陳剛
1 深圳大學(xué)醫(yī)學(xué)院生物醫(yī)學(xué)工程系,深圳市,518060 2 廣東省生物醫(yī)學(xué)信號檢測與超聲成像重點實驗室,深圳市,518060 3 深圳市生物醫(yī)學(xué)重點實驗室,深圳市,518060
心電信號是生物醫(yī)學(xué)信號中一種低幅低頻的微弱信號。基線漂移一般是由于人體呼吸、電極運動等引起,其一般小于1 Hz[1]。常用的去除方法有中值濾波法[2]、小波變換法[3]、形態(tài)學(xué)濾波法[4]等。本文簡單介紹了幾種常用方法并用Matlab實現(xiàn)。以下用于處理的原始心電信號是截取自MIT-BIH數(shù)據(jù)庫的序號為103和114兩種數(shù)據(jù)中的一段數(shù)據(jù),我們通過對比基線漂移嚴重和微弱兩種情況,比較各種方法的優(yōu)劣之處,其中103為較嚴重漂移的心電數(shù)據(jù),114為漂移較為微弱的心電數(shù)據(jù)。
中值濾波的定義[5]就是取信號中的某一點前的N(N為奇數(shù))個數(shù)據(jù),將這N個數(shù)據(jù)進行排序,取數(shù)據(jù)的中值,將數(shù)據(jù)的中值作為該點的數(shù)據(jù)。將整段信號都做以上處理,提取出漂移信號,將原始信號減去漂移信號,便得到濾波后的效果。測試效果如圖1、圖2所示。
圖1 中值濾波去除嚴重基線漂移Fig.1 Median filtering removes severe baseline drift
基線漂移的頻率成分較低,所以用高通的方法對基線漂移的去除也有一定的效果。IIR濾波器能用較低的階數(shù)獲得較高的頻率選擇性,但不具有線性相位[6]。由于心電信號的處理對線性相位的要求不是很高,所以可以選擇IIR濾波器。這里我們選用butterworth濾波器,截止頻率為1 Hz。測試效果如圖3、圖4所示。
圖2 中值濾波去除微弱基線漂移Fig.2 Median filtering removes weak baseline drift
圖3 高通濾波去除嚴重基線漂移Fig.3 High-pass filtering removes severe baseline drift
圖4 高通濾波去除微弱基線漂移Fig.4 High-pass filtering removes weak baseline drift
根據(jù)小波變換多分辨分析理論,對含噪信號進行多尺度小波分解后,可以利用信號和噪聲在頻譜和能量分布上的不同,直接將噪聲所對應(yīng)的小波分解尺度上的細節(jié)分量去除,然后利用小波逆變換進行信號重構(gòu),就可以有效去除信號中的噪聲成份。經(jīng)過試驗得到,采用小波函數(shù)db8對原始信號進行8個尺度的分解,第8層分解的信號頻率與基線漂移的頻率接近,因此將前7層信號重構(gòu),去除第8層信號,即可得到去除基線漂移的信號。測試效果如圖5、圖6所示。
圖5 小波變換去除嚴重基線漂移Fig.5 Wavelet transform to remove severe baseline drift
圖6 小波變換去除微弱基線漂移Fig.6 Wavelet transform to remove weak baseline drift
曲線擬合法去基線漂移是利用多項式擬合估計基線漂移,再從原始信號中減去此基線漂移。曲線擬合就是通過需要處理的數(shù)據(jù),利用數(shù)據(jù)來求取近似函數(shù)。曲線擬合并不要求函數(shù)的曲線通過所有離散點,只要求近似函數(shù)能夠反映這些離散點的一般趨勢,不出現(xiàn)局部波動。曲線擬合的常用方法一般是基于最小二乘法,在以下處理中,我們選用最小二乘法進行擬合。測試效果如圖7、圖8所示。
圖7 曲線擬合去除嚴重基線漂移Fig.7 Curve fitting removes severe baseline drift
圖8 曲線擬合去除微弱基線漂移Fig.8 Curve fitting removes weak baseline drift
此方法是找出波形上的所有的R波的峰值點,通過三次樣條插值擬合出基線,將原始信號減去基線就可去除基線漂移。尋找R波的算法是基于Pan&Tompkins算法,通過三次樣條插值擬合出這些點連成的基線,此方法去基線漂移后的效果如圖9、圖10所示。
數(shù)學(xué)形態(tài)學(xué)(Mathematical Morphology)的基礎(chǔ)是不同的集合運算,主要包括膨脹、腐蝕、開運算、閉運算等[4]。下面介紹形態(tài)學(xué)濾波的原理。
設(shè)信號序列為f(n)(n=0, 1,......N-1),結(jié)構(gòu)元序列為g(m)(m=0, 1,......M-1),其中N>M。
圖9 特征點濾波去除嚴重基線漂移Fig.9 Feature point removes severe baseline drift
圖10 特征點濾波去除微弱基線漂移Fig.10 Feature point removes weak baseline drift
1)膨脹運算:
其中n=M-1, M,... , N-1。
2)腐蝕運算:
其中n=0, 1,..., N-M。
3)開運算:
圖11是形態(tài)學(xué)濾波去除基線漂移的流程圖,圖12、圖13是信號經(jīng)過形態(tài)學(xué)濾波后對比圖。
本文選用兩種數(shù)據(jù)段,序號103中截取的數(shù)據(jù)段是漂移比較嚴重的情況,序號114中截取的數(shù)據(jù)段是漂移較為微弱的情況,我們通過以上方法對兩種情況進行數(shù)據(jù)分析和對比,進行總結(jié)。
圖11 形態(tài)學(xué)濾波去除基線漂移的流程圖Fig.11 Flow chart of morphological filter to remove the baseline drift
圖12 形態(tài)學(xué)濾波去除嚴重基線漂移Fig.12 Morphological filter remove severe baseline
圖13 形態(tài)學(xué)濾波去除微弱基線漂移Fig.13 Morphological filter remove weak baseline drift
中值濾波是一種非線性平滑技術(shù),在心電信號中對于嚴重和微弱的基線漂移抑制效果明顯,而且對ST段也有保護作用,但是對高斯噪聲影響很大的情況下,效果比較差。
高通濾波的方法雖然能對嚴重基線漂移有一定的效果,但是對ST段的影響較大,幅形失真較大。在基線漂移比較微弱的情況下,高通濾波能達到一定的去除效果。
小波變換抑制基線漂移,是根據(jù)頻域上的相似來達到抑制基線漂移的目的,選擇尺度合適的情況下,濾波的效果較好,但是運算量比較大,而且由于噪聲頻帶往往與有用信號的頻帶有部分重疊,部分有用信息可能會丟失。
曲線擬合法最主要的有兩點直線擬合,拋物線擬合及三次樣條函數(shù)擬合等。直線擬合適用于基線漂移不太嚴重的時候,其優(yōu)點是算法簡單,速度快,但當基線漂移嚴重的時候,誤差較大。用三次樣條函數(shù)估計基線,效果較好。但是此方法與處理信號的長度有關(guān),難以滿足實時性要求。
基于心電信號特征點的算法,應(yīng)用較好,我們需要在提取心電波形特征點如P起點和峰值點的基礎(chǔ)上達到抑制基線漂移的目的,但是使用時的算法復(fù)雜,且濾波后的波形在一定程度上產(chǎn)生了嚴重失真。
形態(tài)學(xué)濾波算法簡單,實時性好,抑制效果明顯,兩種情況下的抑制漂移效果都較為明顯。其中結(jié)構(gòu)元長度的選取是關(guān)鍵,選取不合適的情況下會導(dǎo)致波形損失。
因此,通過以上方法的算法比較,各種方法都有優(yōu)缺點,可通過實際情況和場合選擇適合的濾波方法對心電信號中的基線漂移進行去除。例如,在基線漂移不嚴重的情況下,我們可以選擇曲線擬合法和高通濾波法、小波變換等,在漂移嚴重的情況下,我們可選擇中值濾波和形態(tài)學(xué)濾波等方法,在漂移嚴重程度判別以及濾波方法及參數(shù)設(shè)置的智能選擇上需要進一步根據(jù)應(yīng)用要求進行匹配。