樊明輝 汪敏 陳良基 王量弘 黃寶震 王新康
心電圖檢測是一種簡單有效且低成本的檢測技術,可用于識別心臟活動引起的電信號變化,在臨床中已得到廣泛應用[1-4]。其中,QRS波群檢測是心電信號檢測中最重要的一步[5-6]。常規心電圖由一系列波和波段構成,在每次心臟搏動中出現。心電信號被認為是一個準周期信號,一個周期內的心電圖由P波、QRS波群、T波、U波,以及PR間期、QT間期等組成[7-10]。不同波段代表著相應的心電活動。P波由心房的去極化產生,波形較小;QRS波群代表心室除極;T波代表心室復極化;PR間期代表竇房結到心室的傳導時間;QT間期代表心室除極到完全復極的時間,但通常用RR間期代表一次心搏所經歷的時間;ST段代表心室除極完成;心率可通過計算單位時間內R波的個數得出[11-15]。目前,針對心電信號的QRS波群檢測算法日新月異,但由于受各種噪聲的影響,現有算法檢測準確率不高,仍有較大改進空間。本文設計了一種基于自適應閾值法的QRS波群檢測算法,其準確率較高,并為心電信號波群檢測算法的研究提供了新思路。
本研究設計QRS波群檢測算法的思路如下:首先,判斷心電圖中R波是否倒置,再定位R波;其次,設計Q波和S波的定位方法;然后,在Q波定位基礎上,對P波進行定位;最后,完成T波的定位,定位前應先選取S波到P波之間的片段,以判斷T波是否倒置。
選擇MIT-BIH心律失常數據庫,用來驗證心電信號的QRS波群檢測方法。該數據庫包含48條持續時間均為30 min的Ⅱ導聯和V1導聯心電記錄。每一條心電記錄都由頭文件(.hea)、注釋文件(.ari)和數據文件(.dat)三個部分組成。頭文件以ASCII格式存儲,其包含的內容較多,包括采集數據的通道數、采樣頻率、總采集數、記錄數據文件的存儲格式、增益、偏移、模擬數字轉換器的分辨率以及患者指南所提到的個人附加信息。
心電信號是一種微弱的生理電信號,在采集過程中各種噪聲容易混雜其中,使心電信號的應用價值降低。因此,在分析心電信號之前,有必要對其進行以下處理:
1.2.1 減少工頻干擾 工頻干擾是高頻噪聲,其頻率一般為50~60 Hz,通常由心電圖機、電極等電氣設備的使用所引起[16]。工頻干擾對心電信號的影響很大,會使系統的信噪比下降,甚至覆蓋微弱卻有用的心電信號。為了將它有效濾除,本研究采用Savitzky-Golay(S-G)濾波器在不改變信號趨勢的情況下消除噪聲干擾、提高數據精度。S-G濾波器是根據特定條件而設計的標準數字濾波器,t時刻濾波后的結果yt可按下式計算:

其中,ai是多項式系數;np定義了平滑數據點的數量;xt是t時刻的點;h是多項式系數ai的總和。S-G濾波器的濾波可通過卷積實現,其中系數ai對結果yt來說是常數,可以根據np的數量提前設定。圖1A是包含50 Hz工頻干擾的心電信號,圖1B是心電信號經過S-G濾波器濾波后得到的結果。由圖1可以看出,大部分工頻干擾已被濾除,同時部分振幅也被削弱,而基線漂移依舊存在。

圖1 帶工頻干擾的心電信號和濾波后的心電信號
1.2.2 基線漂移的校正 基線漂移是一種低頻的心電偽跡,頻率在0.5 Hz以內,通常由呼吸、受檢者或帶電電極的運動所引起[13-14],嚴重影響原始心電信號振幅的測量值。為此,本研究采用移動窗口平均法校正基線漂移。移動窗口平均法的原理是利用整個窗口的均值來替代單個窗口。該方法的用途取決于窗口大小:當窗口取值較小時,就相當于對信號的平滑;當窗口取值選擇較大時,就相當于獲取整個信號的波動形態。圖2A是濾波后的心電信號,圖2B是基線漂移校正后的心電信號。

圖2 濾波后的心電信號和基線漂移校正后的心電信號
本研究采用基于窗口最值法的自適應閾值方法進行QRS波群檢測,首先進行R波檢測。本研究提出的R波檢測方法是先去除基線,再使除R波外其他波形的振幅減小,判斷R波是直立還是倒置,在一個窗口中基于最值法得到R波振幅值,通過單個R波的振幅值進行閾值設定,進而從長程心電數據中定位R波。
R波倒置的判斷流程如圖3所示。首先,進行去除基線、平滑曲線等預處理操作;然后,尋找區間段中的最大值和最小值,并確定二者的位置,通過這兩點與左右側的兩點計算出斜率,再根據R波的特征判斷R波是否倒置。左右側的兩點與最值之間的間隔從正常QRS時限與采樣頻率相乘所得到的區間段中選取。正常成年人心電圖中的QRS波持續時間一般為0.06~0.10 s,對應的采樣點區間段為2.19~36.00,因此本研究取大致中間值,即20.00。固定值是根據R波兩側的斜率得來的,可略微小于其斜率值。需要注意的是,過小的固定值會導致判斷錯誤,過大的固定值則會導致無法判斷出R波倒置,本實驗中R波的斜率判斷暫定以數值10為基準。在R波倒置的情況下,Q波和S波的定位可以通過對斜率的限制來確定。

圖3 R波倒置的判斷流程
在判斷出R波是直立狀態后,可獲取該區間段的最大值,并將其定義為R波峰值。然后,判斷心電信號的點是否大于R波峰值的一半;如果是,則暫且將其定義為R波,再繼續判斷下一個點。
確定下一個R波之前應先判斷該R波的位置點與上一個R波位置的間隔;如果兩個R波的間隔很短,則用后者替代前者。完成直立R波檢測后,配合斜率限制,通過前向尋找最小值和后向尋找最大值,就可以確定Q波和S波的位置。
P波是心電周期中心電圖波形第一次短時間向上運動而形成的,表明心房正通過收縮將血液泵入心室,代表心房去極化。對心房活動(P波、心房撲動、房顫)的判定是診斷心律失常的關鍵,因此,在智能分類分析算法中P波的準確定位非常重要。本研究設計了一個在R波直立心電圖中進行P波定位的算法,其流程如圖4所示。在完成R波檢測和Q波定位后,從Q波往前尋找最值并判斷是否有符合P波特征的點;如有這樣的點,則將其作為P波。在此過程中需用到多點跳躍式檢測,以免因PR間期波動而導致其他波被誤檢成P波,同時也加快了檢測速度。此外,由于P波定位依據的是P波的形態學特征,因此能有效避免跳躍式檢測過程中錯過P波。

圖4 R波直立心電圖中的P波定位流程
T波通常為平穩向上的波形,反映心室的快速復極化。當人體健康狀況不佳時,在心電圖上可表現為T波電交替現象。在常規心電圖分析中,對許多重要指標,如QT間期和ST段相對位置的測量和判斷都是以T波位置特征為基礎的。在心電圖中,T波以多種形態存在:正常T波升支長而降支短,波峰圓鈍;異常T波典型表現為倒置、高聳、雙峰。在P波檢測完成后,提取S波到P波的心電圖片段,計算該段心電信號在時間窗內的最大值和最小值位置;根據這兩點與相鄰點的斜率,判斷T波是直立還是倒置(具體方法與判斷R波是否倒置類似)。
對于R波檢測的準確性,可利用MIT-BIH心律失常數據庫進行驗證,具體結果如表1所示。MIT-BIH心律失常數據庫提供的48條心電數據中共有110152個心搏。對本研究提出的R波檢測算法,采用MIT-BIH心律失常數據庫進行驗證,每筆誤差的絕對值之和為2610,總體準確率達97.63%。單筆誤差特別大的原因是該條記錄中存在室性早搏等心律失常,導致R波形態與竇性心律心電圖的R波差異較大,因此未能成功檢出R波或存在重復檢測的情況。對于竇性心律心電圖,該算法基本能準確定位R波;而對心律失?;蛐募」K酪鸬男螒B變化過大的R波,可能無法準確定位。

表1 MIT-BIH心律失常數據庫R波檢測結果 n
本研究基于自適應閾值法進行QRS波群檢測。由于數據庫中含有多個導聯的心電信號,而本研究僅涉及2個導聯,因此我們先利用Ⅱ導聯的心電數據測試算法,再將算法運用到Ⅰ導聯,結果發現其也能實現R波檢測。這是因為R波檢測過程中將其他波的振幅減小,所以造成Ⅰ導聯R波和正常Ⅱ導聯的心電波形較為相似。圖5為心電圖中R波直立、T波直立情況下所有特征點的檢測結果。

圖5 R波直立、T波直立心電圖上各波的檢測結果
在R波倒置心電圖中尋找T波、P波的方法與R波直立情況下類似,可使用最值法后向尋找最大值。在R波倒置的情況下,對心電圖上所有波的檢測結果如圖6所示。

圖6 R波倒置心電圖上各波的檢測結果
本研究提出了一種基于自適應閾值法的QRS波群檢測算法,通過最值法檢測出倒置的R波信號,并在檢測出R波位置的基礎上,對心電圖中的P波、Q波、S波、T波進行定位。在判斷R波是直立還是倒置時,可能選取的區間段都是噪聲,此時無法判斷R波倒置與否,甚至得不到R波峰值。為此,本研究提出可通過循環和隨機選取區間的方式判斷區間段是否為噪聲。在R波檢測中,還可能遇到選取的區間段中正好出現R波峰值的情況。為解決這一問題,本研究提出通過比較出現R波峰值位置與上一個R波位置的間隔來調整R波振幅,從而得到自適應閾值。經MIT-BIH數據庫驗證,根據本研究提出的算法,R波定位的準確率總體在97.63%;由于單筆誤差較大,整體準確率相對不高。單筆誤差較大的原因是該記錄中含有室性早搏等心律失常的心電信號,導致其心電圖的R波形態與竇性心律心電圖的R波差異較大,所以未能成功檢出R波或出現重復檢測;而對于竇性心律心電圖,基本上能準確定位R波。
本研究提出的心電信號QRS波群檢測算法仍有一些改進空間,缺陷主要在于其中的R波檢測算法雖然適用于大部分心電信號,但也有個別誤差較大。今后將針對單筆誤差較大的、含心律失常的心電信號進行深入研究,通過適當調整算法內部參數和添加判斷條件,使之更智能、特異性更高。