顧羽飛 孫凱斌 唐家磊 杜宇人
(揚州大學信息工程學院,江蘇 揚州 225127)
目前,我國心血管疾病患病率和死亡率處于上升階段[1],而定期對心臟進行檢測與診斷能有效幫助病患了解病情、提早接受醫學治療。24小時心電圖檢測是診斷心血管疾病的常用手段,由于一些心血管疾病的短暫性和陣發性,心電圖儀必須長時間記錄患者的心電數據以供診斷,因而其采集數據量十分龐大,難以通過肉眼診斷與分析。醫學上將心電圖的分為P波、PR間期、QRS波、ST段及T波,其中QRS波代表心室除極時的情況,通過對QRS波的檢測可以檢測室性早搏、房顫、房撲、冠心病等疾病,因此對于QRS波的自動化檢測具有一定的意義[2]。
目前,針對QRS波形檢測有小波變換、神經網絡、模板匹配、Teager能量算子等方法[3],小波變換雖然具有誤檢率較小的優勢,但其由于龐大的計算量難以在性能較弱的便攜心電監護儀中做到實時檢測;神經網絡的方法由于訓練周期長、難以判別與訓練集相差較大的心電波形而難以廣泛應用[4];模板匹配較易實現,但也存在難以判別與模板相關性較小的波形的問題;Teager能量算子通過跟蹤信號的瞬間能量變化進行判別,其可以有效檢測R峰,但對于Q點和S點的判別略顯掙扎[5]。本文提出了一種實時心電圖QRS波檢測的方法,能夠實時檢測心電圖儀采集的數據并進行QRS波的檢測和波長的測量,可以大大縮短醫師在大量心電波形中找到異常波形的時間,提高其工作效率。此外,由于該方法運算量小,實時性高,且對主控芯片的算力要求極低,因此可以廣泛應用于價格較低的家用便攜式心電監護儀和遠程醫療[6]。
本文提出的基于差分過零檢測的QRS波檢測方法如圖1所示,首先將原始心電信號通過自適應基線漂移濾波器,去除信號的直流偏置,得到在0值附近上下波動的心電信號。其次將信號通過11Hz巴特沃斯低通濾波器,濾除工頻干擾、抑制肌電干擾對信號的影響。然后對信號進行一階和二階差分,分析一階差分后數值的概率分布確定用于檢測R峰的閾值,再通過二階差分依次找到S谷和Q谷,最后依據采樣頻率算出心率和Q、R、S波的波長,提取波形特征,送入后續的疾病檢測方法。

圖1 基于差分過零檢測的QRS波檢測方法流程圖
2.1.1 自適應基線漂移濾波器
由高精度模擬前端芯片直接采集得到的心電信號十分微弱,幅值通常在0.1mV至3mV之間,且伴隨著基線漂移、工頻干擾和肌電干擾三類噪聲[7],必須經過預處理才能進行QRS波的檢測。其中,工頻干擾屬于低頻干擾,在測量過程中,模擬前端電路、測量電極以及體表組成了一個分壓網絡,四肢動作、呼吸節奏、體表的汗液等都可能影響體表與電極間接觸電阻阻值發生改變,進而造成基線漂移。此類噪聲會致使心電波形變得扭曲,嚴重影響了QRS波群的檢測,因此濾除基線漂移是十分必要的預處理環節。
自適應基線漂移濾波器的本質是一個數字低通濾波器,其需要設定合適濾波器的窗口寬度。若窗口寬度過窄,則難以濾除變化緩慢的基線漂移;若窗口寬度過寬,則難以濾除突變的基線漂移。實驗中發現,窗口寬度設置為采樣頻率數值的十分之一左右效果較好。此外,考慮到輸出的穩定性,該濾波器在輸出之前需預采樣一個窗口寬度的數據,若采樣頻率為500Hz,則窗口寬度可以設置為50,其預采樣時間為0.1s。若設窗口寬度為"W",則濾波器時域輸出方程為:

式中:x[]n為濾波器輸入值,y[]n為濾波器輸出值,B[n]為修補的基線漂移量,其數學表達式為:

2.1.2 IIRButterworth數字低通濾波器
高精度模擬前端芯片采集到的信號頻譜主要集中在0Hz~60Hz之間,而自適應基線漂移濾波器僅僅濾除了原始信號的基線,此時信號仍受工頻干擾和肌電干擾影響,其中工頻干擾是在采集階段造成的,國內一般是指50Hz的電源線干擾和各次諧波干擾,幅值大約在0 mV~0.4mV,根據不同的情況,一般相當于R波幅值的5%~40%,這是一種一般采樣到的信號都會碰到的較為常見的干擾,使得ECG信號的SNR下降,甚至淹沒原始信號[8]。而肌電干擾頻譜范圍較廣泛,約集中在1 Hz~1000Hz,因而信號從時域上看并不平滑,而夾雜著尖峰與毛刺。為了抑制這兩類噪聲,本文采用IIR Butterworth數字低通濾波器,濾除15Hz以上的頻率成分,其輸出信號中工頻干擾被完全濾除,僅剩肌電干擾的低頻成分,對于QRS波群的檢測影響較小。IIRButterworth數字低通濾波器的參數如表1所示。

表1 IIRButterworth數字低通濾波器的參數
2.2.1 一階差分
在心電信號中,QRS波群斜率的模值大于其他波群,因此信號的一階差分能將有效分割QRS波群和其他波群,其差分方程為:

2.2.2 非線性映射
對濾波后信號進行一階差分之后,QRS波間期對應的差分波形呈現一個正波峰與一個負波谷,且峰谷模值大于其他波群,但模值差別仍較小,對R峰的檢測有一定影響,因此使用冪函數作為映射函數,對差分值進行放大,從而將QRS波群與其他波群進行有效區分。Willis J.Jiapu Tompkins曾提出Pan-Tompkins方法,其通過平方函數,對差分后的輸出進行放大,再分段積分進行檢測,能粗略地檢測出QRS波群是否存在,但是無法做到對QRS點的精確定位,其主要原因是平方函數將所有負值映射為正值,從波形上看將原有的一個正波峰和一個負波谷映射為兩個正波峰,損失了原有波形中包含的信息,因此本方法中使用三次方函數進行非線性映射,保留差分波形的正負性,便于后期的處理和檢測。
其映射函數為:

經此步驟后,QRS波群對應的波峰波谷能被明顯放大。
2.2.3 過零檢測QRS點
在非線性映射后的差分波形中,可以明顯地觀察到,在一個心跳周期內,存在一個波峰與一個波谷,波峰與波谷的時間間隔之間差分值過零處即為心電信號中R峰出現的時刻,而差分值下一個過零處即為心電信號中S谷出現的時刻。由于在非線性映射后的差分波形具有明顯的特征,可通過設置閾值的方法檢測到R峰、S谷出現的時刻,而R峰時刻之前最近的過零處即為Q點,其流程如圖所示。在一次QRS識別中,R、S點先后被識別到,最后確定Q的位置,因此本方法能在一個QRS波群的S點時刻確定此波群的特征和信息,后期可根據QRS波群的特征(如QRS三點之間的時間間隔)進行輔助診斷。

圖2 檢測流程圖
這次實驗分為靜態測試與動態測試兩部分,靜態測試中,被測試者處于站立靜止狀態;動態測試中,被測試者在房間內進行走動。經實驗驗證,如圖3所示,本方法在動態與靜態測試中均能有效抑制基線漂移和高頻噪聲,獲得較好的波形,同時能檢測出QRS點的位置。

圖3 實驗結果圖
測試環境:選用德州儀器ADS1292R芯片作為前端模數轉換芯片,在實際測試中使用500Hz的頻率進行采樣,使用電極貼片連接被測者測試樣本,分別利用傳統的基于差分法及形態學運算檢測QRS波群的方法和本發明方法進行測試并獲得結果數據;開啟自動化測試設備并運用MATLB軟件編程實現兩種方法的仿真測試,根據實驗結果得到仿真數據。每種方法各測試7組數據,結果見表2、3。
根據目前國內外對廉價、實時性高的心電信號監測識別軟件的需求,提出了基于差分過零檢測法的QRS波群識別算法,該方法在Pan_Tompkins方法的基礎上,加入了對QRS點的定位功能。從表2、3可以看出,本方法相對傳統方法在實時性高、運算量少的同時還具有較高檢測準確率。

表2 基于差分法及形態學運算檢測QRS波群的方法測試數據表
本次實驗完成了基于ads1292系列前端芯片與STM32F103系列單片機的心電采集、處理系統,其性能表現良好。此外,該方法具有通用性,只需改動參數便可適用于其他采集硬件。因此本方法應用前景廣闊。

表3 本方法實驗數據表