李 鑫,熊 鵬,張 兵,劉秀玲,杜海曼
(河北大學(xué) 電子信息工程學(xué)院 河北省數(shù)字醫(yī)療工程重點(diǎn)實(shí)驗(yàn)室,河北 保定 071002)
心電信號采集于生物表面,幅值微弱且易受周圍復(fù)雜噪聲的干擾從而丟失有用信息,心電信號所含噪聲也會(huì)影響心血管疾病的診斷。如何在去除ECG噪聲的同時(shí)仍保留ECG的大部分有用信息成為國內(nèi)外學(xué)者的研究重點(diǎn)[1]。傳統(tǒng)的心電信號降噪算法有經(jīng)驗(yàn)?zāi)B(tài)法(empirical decomposition,EMD)[2,3]、小波變換[4-6]、S變換[7]、盲源分離法(blind source separation,BSS)[8,9]等。采用經(jīng)驗(yàn)?zāi)B(tài)法對ECG進(jìn)行去噪處理會(huì)誤去除與噪聲頻譜有重疊的微弱P波和T波[1];小波變換進(jìn)行ECG降噪受限于閾值的設(shè)定,閾值需經(jīng)多次實(shí)驗(yàn)確定,以致于大大降低了心電信號去噪的實(shí)時(shí)性;盲源分離法雖能夠分離噪聲和心電信號,但卻對心電信號的細(xì)微變化十分敏感;S變換采用設(shè)定需要頻率的方法除去心電信號中的噪聲分量,但該方法復(fù)雜性高難以保留心電信號的邊緣特性;劉明等[10]將指導(dǎo)濾波(guided filter,GF)應(yīng)用到ECG降噪上,但是無法很好地去除變異性心拍中所含噪聲。深度學(xué)習(xí)算法在讀取ECG深層特征的同時(shí)保留了較為完備的信號信息。張杰爍等[11]等采用遞歸最小二乘法訓(xùn)練回聲狀態(tài)網(wǎng)絡(luò)(echo state network,ESN)的參數(shù)進(jìn)行心電信號的去噪,保留了心電信號的低頻信息,但對于肌電干擾的去除效果不理想。熊鵬等[12]采用降噪自動(dòng)編碼器(denoising auto-encode,DAE)實(shí)現(xiàn)心電信號的去噪,但網(wǎng)絡(luò)訓(xùn)練的過程依賴于干凈心電信號的獲取。因此本文提出一種基于無損約束降噪自動(dòng)編碼器(lossless-constraint denoising based auto-encoder,LDAE)的降噪算法,算法中兩個(gè)無損約束項(xiàng)的存在在保證噪聲去除的同時(shí)還保留信號的大量有用信息。
本文利用無損約束降噪自動(dòng)編碼器構(gòu)建深度神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)含噪心電信號的降噪,主要通過對設(shè)置合適的網(wǎng)絡(luò)結(jié)構(gòu)以及利用訓(xùn)練集數(shù)據(jù)進(jìn)行網(wǎng)絡(luò)參數(shù)的訓(xùn)練。保存好訓(xùn)練網(wǎng)絡(luò),將測試集數(shù)據(jù)輸入即得到去噪后的心電信號。圖1為基于無損約束自動(dòng)降噪編碼器的降噪模型。
圖1 基于無損約束自動(dòng)降噪編碼器的降噪模型
無損約束降噪自動(dòng)編碼器是在降噪自動(dòng)編碼器的原始基礎(chǔ)上進(jìn)行改進(jìn)。降噪自動(dòng)編碼器的傳統(tǒng)算法中有一項(xiàng)輸入為原始干凈的心電信號,但實(shí)際中采集到的ECG總含有噪聲,致使無法獲取絕對干凈的ECG。在這種情況下,若選擇降噪自動(dòng)編碼器來重建數(shù)據(jù),那么它將不可避免地將信號所含噪聲作為特征來學(xué)習(xí)[13]。無損約束降噪自動(dòng)編碼器中的約束項(xiàng)能夠很好地解決這一問題。圖2為無損約束降噪自動(dòng)編碼器的結(jié)構(gòu)。
圖2 無損約束降噪自動(dòng)編碼器結(jié)構(gòu)
(1)
由于在誤差函數(shù)的構(gòu)建中引入了去噪后的干凈信號Xc,整個(gè)網(wǎng)絡(luò)需要優(yōu)化的參數(shù)由W和b變?yōu)閃,b和Xc。
(1)初始化Xc賦值為Xn,此時(shí)LDAE為DAE;然后對W和b初始化,采用梯度下降算法優(yōu)化參數(shù)W和參數(shù)b,兩個(gè)參數(shù)迭代表達(dá)式如式(2)和式(3)所示
W(t+1)=W(t)+ΔW(t)
(2)
b(t+1)=b(t)+Δb(t)
(3)
(2)將優(yōu)化完成的W和b視為常量,再對Xc進(jìn)行優(yōu)化,得到LLDAE的表達(dá)式如式(4)所示
(4)
(3)對Xc求偏導(dǎo)來最小化重構(gòu)誤差函數(shù)LLDAE,即LLDAE在Xc的偏導(dǎo)數(shù)為0,如式(5)所示
(5)
式(5)經(jīng)過簡化后得到Xc的表達(dá)式如式(6)所示
(6)
(4)將Xc當(dāng)作常量,對參數(shù)W和b進(jìn)行優(yōu)化計(jì)算。
(5)更新Xc,并用梯度下降算法對W和b進(jìn)行優(yōu)化,反復(fù)采用此方法直到LLDAE收斂或者達(dá)到最大迭代次數(shù)。
本文數(shù)據(jù)均選自MIT-BIH心律失常數(shù)據(jù)庫,該數(shù)據(jù)庫包含48個(gè)長度為30 min的心電信號記錄。實(shí)驗(yàn)中噪聲數(shù)據(jù)來自MIT-BIH中的噪聲壓力數(shù)據(jù)庫。且為驗(yàn)證降噪效果,將基線漂移、電極干擾和肌電干擾3類噪聲按一定的信噪比疊加到心電信號中[13]。
本文選擇信噪比(signal-to-noise ratio,SNR)和均方根誤差(root mean square error,RMSE)來評價(jià)降噪算法的性能[1]。若Xn表示輸入的心電信號,Xc為經(jīng)過去噪后的ECG,則信噪比定義式如式(7)所示
(7)
SNR代表的是干凈心電信號與噪聲間的比值,單位為分貝(dB),是評估信號質(zhì)量的一項(xiàng)常用指標(biāo),其數(shù)值越高意味著對于信號噪聲濾除的效果越好。另一項(xiàng)指標(biāo)為均方根誤差,其定義式如式(8)所示
(8)
RMSE表征這去噪后信號和原始真實(shí)信號的差值,均方根誤差越低說明對于信號的濾波性能越好。
選擇合適長度的心電數(shù)據(jù)作為網(wǎng)絡(luò)輸入,例如對于采樣點(diǎn)Si來講,網(wǎng)絡(luò)輸入樣本的大小為采樣點(diǎn)的鄰域v={S|Si-δ
圖3為去除213號數(shù)據(jù)5 dB肌電干擾的結(jié)果。圖3(a)為 213號心電信號數(shù)據(jù),圖3(b)為加入5 dB肌電干擾后的213號心電數(shù)據(jù),原始信號的P波和T波的形態(tài)被淹沒。圖3(c)中實(shí)線為原始干凈心電信號,虛線為降噪算法得到的去噪后數(shù)據(jù)。由去噪結(jié)果可知,去噪后的信號與213號干凈心電信號形態(tài)很好地?cái)M合。
圖3 去除肌電干擾結(jié)果
圖4 去除基線漂移結(jié)果
圖4為去除122號數(shù)據(jù)5 dB基線漂移的結(jié)果。圖4(a) 為122號心電信號數(shù)據(jù),圖4(b)為加入5 dB基線漂移后的122號心電數(shù)據(jù),信號的整體走勢已經(jīng)發(fā)生改變。圖4(c)中實(shí)線為原始干凈心電信號,虛線為降噪算法得到的去噪后數(shù)據(jù)。由去噪結(jié)果可知,去噪后的信號可與122號干凈心電信號形態(tài)很好地?cái)M合。
圖5為去除223號數(shù)據(jù)5 dB電極干擾的結(jié)果。圖5(a) 為223號心電信號數(shù)據(jù),圖5(b)為加入5 dB電極干擾后的223號心電數(shù)據(jù),電極干擾在改變信號的整體形態(tài)的同時(shí)還出現(xiàn)類似ECG中微弱的P波和T波的波形。圖5(c)中實(shí)線為原始干凈心電信號,虛線為降噪算法得到的去噪后數(shù)據(jù)。由降噪結(jié)果可知,得到的去噪信號與223號干凈心電信號形態(tài)基本一致。
圖5 去除電極干擾結(jié)果
通過本文構(gòu)建的降噪網(wǎng)絡(luò)分別對加入5 dB的3種噪聲進(jìn)行濾除,3種噪聲的加入使得心電信號原始形態(tài)出現(xiàn)不同情況的變化,從降噪算法的結(jié)果可以看出本文方法能夠在濾除掉噪聲的同時(shí)最大程度地保留了信號的原本形態(tài)特征,即信號的有用信息。
為了與其它的去噪算法進(jìn)行對比,將本文算法與文獻(xiàn)[14]中的自適應(yīng)小波(WT-Adaptive),ESN,GF以及DAE進(jìn)行實(shí)驗(yàn)結(jié)果的比對。與文獻(xiàn)[15]采用改進(jìn)集合經(jīng)驗(yàn)?zāi)B(tài)分解(ensemble empirical decomposition,EEMD)濾除基線漂移以及文獻(xiàn)[7]采用S變換濾除肌電干擾進(jìn)行實(shí)驗(yàn)結(jié)果的比較。
表1為5種降噪算法對于1.25 dB和5 dB肌電干擾的濾除結(jié)果,圖6為本文所提的降噪算法濾除1.25 dB肌電干擾的SNR柱狀圖和RMSE折線圖。通過圖形實(shí)驗(yàn)結(jié)果的對比可看出本文算法在濾除1.25 dB的肌電干擾所得的信噪比明顯高于其余4種降噪算法,且RMSE均低于自適應(yīng)小波,ESN,GF和DAE,其中對于疊加1.25 dB的肌電干擾后濾除得到的信噪比和均方根誤差達(dá)到為27.91 dB和0.02。
表2為4種降噪算法對于1.25 dB和5 dB基線漂移的濾除結(jié)果,圖7為本文所提的降噪算法濾除1.25 dB基線漂移的信噪比柱狀圖和均方根誤差折線圖。對比其它3種降噪算法,本文算法對105號數(shù)據(jù)基線漂移的濾除效果不如自適應(yīng)小波變換,是網(wǎng)絡(luò)訓(xùn)練過程中輸入樣本數(shù)據(jù)的截取所造成的?;€漂移對于心電信號的影響明顯表現(xiàn)在長數(shù)據(jù)中,截取信號樣本后會(huì)損失基線漂移的相關(guān)信息,使得網(wǎng)絡(luò)不能很好地學(xué)習(xí)到其特征,導(dǎo)致了降噪效果的降低。
表1 濾除肌電干擾結(jié)果
圖6 濾除1.25 dB肌電干擾實(shí)驗(yàn)結(jié)果
表2 濾除基線漂移結(jié)果
圖7 濾除1.25 dB基線漂移實(shí)驗(yàn)結(jié)果
表3為5種降噪算法對于1.25 dB和5 dB電極干擾的濾除結(jié)果。相對應(yīng)的圖8為本文所提的降噪算法濾除 1.25 dB 電極干擾的信噪比柱狀圖和均方根誤差折線圖。相比于其它4種降噪算法,本文降噪算法濾除1.25 dB電極干擾所得的信噪比和均方根誤差具有明顯優(yōu)勢。在對于105號數(shù)據(jù)的電極干擾濾除中,本文算法所得信噪比和均方根誤差能夠達(dá)到26.87 dB和0.023。
表4為改進(jìn)EEMD算法和本文算法對于103號,219號,223號3個(gè)數(shù)據(jù)進(jìn)行基線漂移得到的SNR和RMSE。其中改進(jìn)EEMD算法對于3組數(shù)據(jù)疊加的基線漂移均在 2 dB 以上。而對比的本文算法疊加到3組數(shù)據(jù)上的基線漂移為1.25 dB實(shí)驗(yàn)結(jié)果。通過實(shí)驗(yàn)結(jié)果的比較,可以看出雖然LDAE算法中加入的基線漂移更強(qiáng),但去噪結(jié)果卻明顯高于改進(jìn)EEMD算法對于基線漂移的濾除效果。由此更加驗(yàn)證了本文算法的優(yōu)越性。
表5為S變換與LDAE對于103后,213號,230號數(shù)據(jù)進(jìn)行5 dB肌電干擾濾除的信噪比。通過結(jié)果可知,對于疊加同等強(qiáng)度的肌電干擾,LDAE所得信噪比明顯優(yōu)于S變換所得信噪比。其中本文算法對于疊加5 dB肌電干擾后的230號數(shù)據(jù)濾除所得信噪比達(dá)到25.92,遠(yuǎn)遠(yuǎn)高于S變換降噪后所得信噪比。
從表1~表5的噪聲濾除結(jié)果可知,本文所提出的基于無損約束降噪自動(dòng)編碼器降噪算法能夠有效地去除肌電干擾,基線漂移和電極干擾3種常見噪聲。本文算法通過提取心電信號的深層特征,學(xué)習(xí)到信號微弱的P波、T波等波形特征從而保留心電信號大部分有用信息和去除信號中所含噪聲。由于網(wǎng)絡(luò)訓(xùn)練過程樣本數(shù)據(jù)截取的問題以及噪聲本身的特點(diǎn),算法對于3種噪聲中的肌電干擾和電極干擾濾除效果要優(yōu)于對基線漂移的濾除。由實(shí)驗(yàn)結(jié)果分析可知,本文算法相比于其它降噪算法得到的信噪比更高,均方根誤差更低,能夠達(dá)到更好的去噪效果。
表3 濾除電極干擾結(jié)果
圖8 濾除1.25 dB電極干擾實(shí)驗(yàn)結(jié)果
表4 改進(jìn)EEMD與LDAE濾除基線漂移結(jié)果
表5 S變換與LDAE對濾除5 dB肌電干擾結(jié)果
針對實(shí)際應(yīng)用中心電信號波形微弱易被淹沒及完全干凈的心電信號難以獲得的特點(diǎn),本文提出了一種基于無損降噪自動(dòng)編碼器的降噪算法,利用LDAE構(gòu)建心電信號的深層去噪網(wǎng)絡(luò),通過提取到ECG的深層特征,在濾除ECG中所含噪聲的同時(shí)還保留了大部分的有用信息。實(shí)驗(yàn)結(jié)果表明,本文所提心電信號降噪算法相比于已有的降噪算法在濾除3種常見的肌電干擾基線漂移以及電極干擾3種常見噪聲所得的SNR有明顯提高并且RMSE有明顯降低,達(dá)到了很好的去噪效果。