顧秀秀,朱明亮,王 璐,史洪瑋
(宿遷學院信息工程學院,江蘇宿遷 223800)
據世界衛生組織統計,心腦血管疾病已經成為威脅人類健康的頭號殺手,我國目前約有2.9 億心血管病患者[1]。心電圖(Dlectrocardiogram,ECG)是通過固定在體表某些位置的測量電極得到的心臟電信號變化曲線,具有簡單、可靠、低成本且非侵入性的特點,可用來協助醫生對患者的心臟健康狀況進行有效評估[2]。一個完整周期的心電信號如圖1 所示,包括P 波、QRS 波群、T 波、U 波、PR 段、ST 段、PR 間期、ST 間期。

Fig.1 A standard ECG waveform圖1 標準心電波形
由于心電信號較微弱,其幅值一般在1~10mV 之間,在進行體表的心電波形采集時,極易受到各種噪聲干擾,常見噪聲包括工頻干擾、基線漂移及運動噪聲。其中,工頻干擾主要來自于心電圖機等醫療設備的信號傳輸線,我國交流電頻率為50Hz,因此在去噪時主要考慮如何去除50Hz工頻干擾。基線漂移和運動噪聲都產生于心電信號采集過程中,由被采集者的呼吸或者電極片運動等原因造成。常用去噪方法有經典的濾波器法、數學形態學法、小波變換法等[3]。濾波器法主要利用高通濾波器、低通濾波器、滑動窗等方法對噪聲進行去除,方法簡單、實時性較強,但經過處理后容易造成T 波幅值上升,類似R 波,引起誤判[4-5];數學形態學法雖然能保持心電信號的完整性,但對于低頻段噪聲去除效果不佳[6-8];小波變換具有優良的時頻局部化特點,可以通過伸縮平移等數學運算對信號進行逐步化多尺度細分,再對變換尺度上的小波變換結果作下一步處理[9-10]。文獻[11]通過提升小波算法降低算法復雜度,提高了算法實時性;文獻[12]將經驗模式分解技術加入到小波變換中,為后續QRS 波的識別奠定了良好基礎;文獻[13]采用Sym5 小波函數和軟閾值法進行降噪,降低了心電信號中的噪聲。上述小波變換方法雖然在一定程度上降低了心電信號中的噪聲,但對于運動干擾等噪聲的去除效果還有待提升。因此,本文采用Coiflet4 小波基對心電信號進行8 層分解,用軟閾值法去除心電信號中的噪聲,能夠顯著提升算法的抗干擾能力。
心電信號特征提取主要是提取心電信號中的P 波、QRS 波群以及T 波的位置,從而進一步得到QRS 波群寬度、RR 間隔、T 波間隔等信息。常用的特征提取方法包括差分閾值法[14-15]、模板匹配法[16-18]、神經網絡法[19-21]等。其中,模板匹配法[16-18]基于先驗知識,需要進行大量概率分布計算,計算量大、容易受到外部噪聲的干擾從而導致誤判;神經網絡法[19-21]準確度高,但需要大量模板進行訓練,算法復雜度高、資源占用率高;差分閾值法[14-15]算法簡單、資源占用率低,識別效果也較為理想。因此,本文在利用小波變換去噪的基礎上,采用改進的自適應差分閾值法對心電信號中的Q 波、R 波、S 波及T 波位置進行檢測,特征點定位閾值在檢測過程中自動更新,檢測準確率高、抗干擾能力強。
小波變換是從20 世紀80 年代起逐漸發展成熟的一項數學應用技術,具有對時間—頻率的雙重分析和多分辨率分析能力,目前已經廣泛應用于圖像處理、模式識別等多個領域。小波變換的窗口大小固定但形狀可改變,因此能夠滿足時域—頻域局部化分析要求[22]。離散小波變換比連續小波變換的去噪效果更好,更適用于實際應用。
小波變換首先通過分解信號,使信號的能量集中在一些大的小波系數中,而噪聲的能量分布于整個小波域內;然后通過閾值降噪,選擇合適的閾值將有用信號的系數保留,將噪聲信號的系數置零,從而去除噪聲;最后再對經過閾值降噪后的系數進行重構,得到去除噪聲后的信號。
常用的小波基函數有Meyer 小波、Coiflet(coifN)小波、Daubechies(dbN)小波等[9]。為得到較好的去噪效果,所選取的小波基函數在對心電信號進行分解時,應盡量保留心電信號中的有用分量,同時使噪聲分解對應的小波系數差異盡可能大。Coiflet4 小波基與心電信號的波形最為相似,同時與輸出信號具有良好的相關性,重構后的信號信噪比大、均方誤差小,因此本文選用Coiflet4 小波基進行小波分解。
人體的心電信號頻率主要分布在0.01~100Hz 范圍內,且大部分能量集中分布在0.1~35Hz 之間。其中,QRS 波群頻率較高,為3~40Hz,P、T 波頻率較低,為0.7~10Hz。常見噪聲中,我國的工頻干擾頻率為50 Hz,部分國家的工頻干擾為60Hz,基線漂移和運動干擾的頻率小于7Hz,肌電干擾的頻率分布在30~300Hz 之間[3]。本文選用的數據庫來自MIT-BIH 的心律失常數據庫,采樣頻率為360Hz。根據奈奎斯特采樣定理,心電信號的頻率范圍為0~180Hz,對頻率進行8 尺度分解后,各頻帶范圍及對應的信號類型如表1所示。

Table 1 8-scale decomposition of ECG signal in frequency domain表1 心電信號頻率8 尺度分解
對小波信號進行8 尺度分解,如圖2 所示。由表1 及圖2 可知,第1 層系數和第8 層系數主要為噪聲,可將系數直接置零,去除肌電噪聲及基線漂移。第2-5 層系數波形與心電信號波形較為相似,6-7 層包含了P 波、T 波能量,采用軟閾值函數進行降噪處理。
心電信號特征提取主要包括對心電信號中的Q 波、R波、S 波及T 波位置進行檢測,其中R 波位置是最容易定位的,也是正確識別其他波形的基礎。因此,首先采用自適應差分閾值法檢測出R 波位置,再進一步檢測Q 波、S 波及T 波位置。
差分閾值法簡單高效,是檢測R 波的常用方法。本文在傳統差分閾值法的基礎上,增加了R 波位置校正機制,并且閾值在檢測過程中不斷自適應更新,能夠更準確地判定R 波位置。R 波識別主要分為以下幾個步驟:

Fig.2 Wavelet decomposition of 1-8 layer detail coefficient waveform圖2 小波分解1-8 層細節系數波形
(1)由式(1)對ECG 信號x(n)做差分,得到ECG 信號的斜率S(n):

(2)由式(2)得到幅度差值fm:

(3)按照式(3)實時更新maxi:

其中,maxi的初始值為前360 個點中的斜率最大值,在檢測過程中,maxi不斷更新。
(4)由式(4)得到斜率閾值St:

St在R 波檢測過程中不斷更新。
(5)當有連續兩個ECG 采樣點的斜率符合式(5)時:

將該處判定為QRS 波群的起點,該處的幅度值記為QRS 波群起點幅值。向后尋找幅值最大的點,該處的位置記為疑似R 波位置。
(6)由式(6)計算得到RR 間隔Ir:

其中,Rpt(Rn)表示序號為Rn的R 波位置。
(7)由式(7)計算得到平均RR 間隔Ira。

(8)R 波位置校正:若Ir(n)<0.6Ira,則此疑似R 波認定為誤判;若RR 間隔Ir(n)>1.66Ira,則此疑似R 波與上一個R 波之間可能存在漏判,從上一個R 波位置處重新向后進行一次檢測。Ir(n)在[0.6Ira,1.66Ira]之間的疑似R 波判定為真正R 波。
檢測到R 波位置后,向前或者向后一段距離內尋找極值點即可定位到Q 波、S 波以及T 波位置。首先在R 波峰值的前50ms 范圍內對信號進行一階微分,得到極小值點即為Q 波位置。同理,在R 波峰值的后50ms 范圍內對信號進行一階微分,得到極小值點即為S 波位置。在檢測到S 波位置后,對S 波峰值的后60ms 范圍內對信號進行一階微分,得到極大值點即為T 波位置。
MIT-BIH 的心律失常數據庫(mitdb)提供了48 條心電信號數據,每條記錄時長為30min 左右,包含了正常竇性心律、室性期前收縮、房性期前收縮等常見心律失常信號,為保證實驗結果的有效性,本文隨機選取mitdb 中的30 組心電信號進行去噪和特征提取,并對結果進行分析。
MIT-BIH 噪聲壓力測試數據庫(nstdb)提供了在心電信號采集過程中常見的3 種噪聲數據,包括基線漂移(bw)、肌電干擾(ma)和電極運動干擾(em)。為驗證小波變換的去噪效果,將這3 種噪聲全部加入到mitdb 的100 號心電信號中,信噪比為8.7dB,加入噪聲前后的心電信號如圖3 所示(彩圖掃OSID 碼可見)。其中,藍色實線代表原始心電信號,紅色實線代表加入噪聲后的含噪心電信號,可以看出加入噪聲后的心電信號發生了明顯的基線漂移,并且含有肌電干擾和運動噪聲。

Fig.3 No.100 ECG signal before and after adding noise圖3 加入噪聲前后100 號心電信號
對含噪心電信號采用高通濾波器去除基線漂移,并采用Coiflet4 小波基進行小波分解、軟閾值降噪、重構,得到去噪后的信號如圖4 所示。可以看出,本文所采用的小波去噪方法對基線漂移、肌電干擾以及運動噪聲均有較好的去噪效果。

Fig.4 Denoising effect of wavelet transform圖4 小波變換去噪效果
以mitdb 中的100 號數據為例,采用本文所提出的方法對Q 波、R 波、S 波及T 波位置進行檢測,結果如圖5 所示(彩圖掃OSID 碼可見)。其中,橙色空心圓圈為Q 波位置,紅色實心圓點為R 波位置,綠色星號為S 波位置,黑色菱形為T波位置。可以看出,心電信號中的各類特征點位置都能夠被準確檢測出來,檢測準確性較高。

Fig.5 The effect of ECG signal feature detection圖5 心電信號特征檢測效果
mitdb 提供了R 波的參考位置,因此本文從中選取了30組心電信號進行R 波位置檢測。用TP、FN和FP分別代表真正R 波、假陰性結果和假陽性結果,用敏感度Se表征算法的抗漏檢能力,用陽性預測率P+表征算法的抗誤檢能力,二者計算公式如式(8)、式(9):

30 組心電信號檢測R 波的結果如表2 所示,可以看出,本文所提出算法的平均敏感度為99.57%,平均陽性預測正確率達99.74%,均高于文獻[3]的99.554%,具有較高應用價值。

Table 2 Result of R wave detection in ECG signal表2 心電信號R 波檢測結果
心電信號中各特征點的準確識別對于心臟病的預防和治療有著重要意義。本文采用Coiflet4 小波基對心電信號進行8 層分解,用軟閾值法去除心電信號中的噪聲。實驗結果表明,該方法能夠有效去除心電信號中的基線漂移、肌電干擾以及運動噪聲。在小波去噪的基礎上,采用改進的自適應差分閾值法對心電信號中的特征點進行檢測。對于mitdb 中的心電信號,能夠正確檢測出Q 波、R 波、S 波及T 波位置,其中對R 波進行檢測的平均敏感度為99.57%,平均陽性預測正確率為99.74%,算法簡單高效,為心電信號中的特征提取提供了一種新的檢測手段。
然而,本研究尚存在以下不足:①心電信號采集過程中存在的倒置R 波情況,識別準確率有待提升;②對于一些突出尖峰噪聲,容易引起誤判。后續研究將圍繞這些不足展開,為人體心臟健康智能監測提供更精準的參考。