陳甜甜,于哲,劉錚,譚菲菲,郝鵬飛,付麗,宋慶華,張克
山東省醫療器械和藥品包裝檢驗研究院,山東 濟南 250101
心電圖自動分析是目前計算機在醫學和健康領域中最成功的應用范例之一,其融合了傳感器技術、數字信號處理技術、人工智能等最新的研究成果[1]。心電圖自動分析功能的應用有效減輕了醫生的工作量,提高了心臟疾病診斷篩查的臨床工作效率[2]。目前,隨著數字技術和醫用軟件的迅速發展,具有自動分析功能的心電圖機、心電工作站、心電自動分析云平臺大量出現,帶有手機APP及后臺云服務的動態心電監測儀等移動醫療設備不斷涌現[3-4],這類產品逐漸在主動健康和老齡化科技應對中發揮巨大的作用[4],心電圖自動分析的準確性也成為評價該類產品有效性的關鍵技術指標之一。YY 9706.247-2021《醫用電氣設備第2-47部分:動態心電圖系統的基本安全和基本性能專用要求》[5]中給出了自動分析算法測試的標準數據庫和試驗要求,但并未具體描述如何實現算法準確性測試,對于該標準的理解和具體執行都有較大難度[6]。針對以上問題,本文旨在具體描述Cygwin測試環境、WFDB軟件包的構建方法、WFDB應用程序的使用方法及最終統計報告的生成,以期完成動態心電圖自動分析功能準確性的測試方法研究。
對于動態心電圖系統自動分析功能準確性,目前國內現行標準為YY 0885-2013《醫用電氣設備第2部分:動態心電圖系統安全和基本性能專用要求》(IEC 60601-2-47:2001,MOD)[7],其于2013年10月21日發布,2014年10月1日實施。國家藥品監督管理局于2021年9月6日發布了新標準YY 9706.247-2021《醫用電氣設備第2-47部分:動態心電圖系統的基本安全和基本性能專用要求》(IEC 60601-2-47: 2012)[5],該標準實施日期為2024年5月1日,實施后將代替YY 0885-2013。
目前,新版標準YY 9706.247-2021[5]中心電圖自動分析功能準確性測試所采用的標準數據庫共5個,如表1所示,與之前的舊版標準YY 0885-2013相比,新增1個歐洲心臟病學會ST-T數據庫。5個標準數據庫分別用于QRS檢測、心率測量、室性異位搏動、心室撲動或心室顫動、室上性異位搏動或心房撲動或心房顫動、ST段偏移的準確性測試,見表2。

表1 用于心電圖自動分析準確性測試的標準數據庫

表2 用于性能測試的標準數據庫
動態心電圖自動分析最基本的測試工具是WFDB(Waveform Database)軟件包(https://www.physionet.org/content/wfdb/10.7.0/)[13]。該軟件包是一個基于C語言的可調用函數包,有30余年的發展歷史,最初設計用于心電圖數據庫,包括MIT-BIH心律失常數據庫和AHA室性心律失常檢測數據庫[14-15]。目前,WFDB軟件包在PhysioNet(免費的醫學研究數據存儲庫,由麻省理工學院計算生理學實驗室管理)上公開發布,現已具有足夠的通用性,可用于血壓、呼吸、血氧飽和度、腦電圖以及心電圖等生理信號的處理和分析,包含70多個應用程序。該軟件包用高度可移植的C語言編寫,可以在很多平臺上使用,包括GNU/Linux、Mac OS、MS-Windows、Unix、Matlab 和 Python。
WFDB軟件包最初是由2項美國國家標準ANSI/AAMI EC 38:1998[16]和ANSI/AAMI EC 57:1998[17]要求使用的,這2項標準涉及的WFDB應用程序包括bxb、rxr、mxm和epicmp,這些應用程序主要用于評估動態心電圖自動分析的準確性。目前,這2項美國國家標準對應的現行版本分別為ANSI/AAMI EC38:2007[18]和ANSI/AAMI EC57:2012 (R2020)[19]。我國行業標準YY 9706.247-2021修改采用國際現行標準IEC 60601-2-47:2012,動態心電圖自動分析功能的準確性測試仍使用WFDB軟件包作為測試工具。
Cygwin是一個運行在MS-Windows平臺上的開源軟件,可以在Windows環境下提供對Unix/Linux環境的模擬與支持,具有較為完善的Unix/Linux工具包和編程環境,操作界面為命令行界面[20]。在Cygwin上可以執行諸多Linux命令,此外還可以執行WindowsDOS下的命令程序。本文中將Cygwin作為測試環境,在Cygwin下安裝WFDB軟件包,確保WFDB 應用程序在 MS-Windows 上的正常使用。首先將WFDB軟件包下載到Cygwin工作目錄下,執行“make install”命令編譯并安裝WFDB軟件包。安裝完成后,執行“make check”命令測試是否安裝成功。安裝成功后,直接運行Cygwin便可使用WFDB應用程序進行動態心電圖自動分析功能準確性測試。
WFDB軟件包具有諸多用途,注釋比較器是其典型用途之一[21-22]。YY 9706.247-2021[5]中標準條款201.12.1.101.2.2中規定使用程序bxb、rxr、epic、mxm(MIT-BIH心律失常數據庫光盤中提供的版本或任何與MIT相關的最新版本)或等同的程序宜用于“測試注釋文件”和“參考注釋文件”之間的比對。其中,標準提及的bxb、rxr、epic、mxm便是WFDB軟件包中的應用程序,其中epic隨著軟件包的升級換版,已改為epicmp應用程序。本文利用上述應用程序完成比對,并輸出比對結果,從而確定動態心電圖自動分析算法的準確性。常用應用程序如下:① bxb:搏-搏比對,輸出包括QRS、VEB和SVEB敏感度和陽性預測值,以及RR間期誤差RMS和停搏統計數據;② rxr:段-段比對,輸出包括成對VEB、短段VEB、長段VEB、成對SVEB、短段SVEB、長段SVEB敏感度和陽性預測值;③ epicmp:VF和AF比對,輸出包含VF片段、AF片段、VF區間、AF區間、缺血性ST段檢測統計數據以及ST段偏移測量比較;④ mxm:輸出心率測量誤差;⑤ ahaecg2mit:將AHA數據庫中txt格式的數據庫文件轉換為MIT-BIH數據庫格式文件,每份記錄轉化后包含atr、.dat和.hea 3個文件;⑥ sumstats:讀取bxb、rxr、epicmp和mxm生成的輸出文件,并計算1組記錄的統計數據;⑦ ecgeval:批處理命令,對每條心電記錄運行bxb、rxr、epicmp和mxm,得到輸出結果,然后運行sumstats,自動化整個比較過程,需要注意的是ecgeval只生成標準EC38和EC57要求的統計數據,如果需要更詳細的評估數據,則需要單獨運行bxb、rxr等WFDB應用程序。
此外,為了更具有便捷性,可以在Cygwin工作路徑下建立一個腳本(批處理)文件,包含需要運行的全部指令,運行該腳本可以順序執行全部命令,實現自動化進行動態心電圖自動分析功能準確性測試。
采用本文的測試方法,在Cygwin環境下使用WFDB應用程序對某公司心電工作站軟件進行自動分析功能準確性測試,采用敏感度、陽性預測值進行分析,具體計算方式如公式(1)~(2)所示。

式中,Se代表敏感度,表示正確檢出異常信號數量占所有樣本數量的百分比,表征算法檢測出實際異常信號的能力,醫學上表征正確判斷患者的能力,即診斷疾病時不漏診的概率;+P代表陽性預測值,表示實際異常信號數量占所有算法檢出信號數量的百分比,醫學上表征檢測為患病的人中,真正患病的占比;TP表示真陽性,即正確檢出異常信號的數量;FP表示假陽性:即正常信號被錯判為異常信號的數量;FN表示假陰性,即異常信號被錯判為正常信號的數量。
采用本文的測試方法,在Cygwin環境下使用WFDB應用程序對某公司心電工作站軟件進行自動分析功能準確性測試,部分測試結果如表3所示。以美國心臟協會數據庫對應的統計數據為例,表3中對應的數據為采用WFDB應用程序對美國心臟協會數據中78份記錄(每份時長35 min)進行準確性比對,并將生成的所有心電記錄的比對結果進行統計計算,分別得到待檢信號的敏感度和陽性預測值。使用本文所述測試方法,對同一軟件采用同樣的標準數據庫多次進行測試,得到的準確性統計結果是不變的,測試方法具有重復性,測試結果是可復現的。另外,將標準數據庫中的參考注釋文件本身進行比對,統計結果為100%匹配,證明了該測試方法的有效性。

表3 自動分析功能準確性測試統計報告[%(n/N)]
本文測試方法是將來自標準數據庫的數字化心電圖信號直接輸入自動分析軟件,生成測試注釋文件。為了保證測試的可靠性和重復性,生成測試注釋文件的自動分析算法程序應完全公開以確保獨立的測試人員能夠使用此程序。從而,測試人員使用相同測試數據時,能驗證測試結果的真實性。該測試方法嚴格遵循標準要求,可實現對待測動態心電圖系統注釋結果與標準數據庫參考注釋文件的快速對比,從而幫助相關企業和檢測機構有效評價動態心電圖自動分析功能的準確性。
標準數據庫為第三方檢測機構和自動分析軟件制造商均能獲取的資源,因此無法保證自動分析軟件訓練數據集和測試數據集的獨立,按照現行動態心電圖系統相關標準進行的自動分析準確性測試也存在一定的測試漏洞。未來可考慮引入標準數據庫以外的測試數據(非公開、制造商無法獲取的)進行心電圖自動分析準確性測試,打破現有標準的局限性。