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