宋銀濤,馬千里,周炳威,卞春華
(1.南京郵電大學(xué) 通信與信息工程學(xué)院,江蘇 南京 210003;2.南京郵電大學(xué) 地理與生物信息學(xué)院,江蘇 南京 210003;3.南京大學(xué) 電子學(xué)院,江蘇 南京 210093)
基于Hadoop的無(wú)線動(dòng)態(tài)心電分析系統(tǒng)
宋銀濤1,馬千里2,周炳威1,卞春華3
(1.南京郵電大學(xué) 通信與信息工程學(xué)院,江蘇 南京 210003;2.南京郵電大學(xué) 地理與生物信息學(xué)院,江蘇 南京 210003;3.南京大學(xué) 電子學(xué)院,江蘇 南京 210093)
動(dòng)態(tài)心電圖是人體在非平靜狀態(tài)下監(jiān)測(cè)心電信號(hào),具有常規(guī)心電圖沒(méi)有體現(xiàn)的臨床價(jià)值。為了實(shí)時(shí)監(jiān)測(cè)動(dòng)態(tài)心電圖,并針對(duì)用戶個(gè)人信息進(jìn)行綜合診斷,提出了基于Hadoop集群的無(wú)線動(dòng)態(tài)心電分析系統(tǒng)??蛻舳瞬捎肁ndroid App完成交互顯示,檔案及診斷管理及緊急呼救等功能。服務(wù)端利用云計(jì)算層次化服務(wù)模型框架搭建云平臺(tái),使用Hadoop集群分析海量生理數(shù)據(jù),通過(guò)運(yùn)動(dòng)干預(yù)、健康風(fēng)險(xiǎn)評(píng)估等服務(wù)幫助用戶。系統(tǒng)運(yùn)行結(jié)果顯示,其能完成大數(shù)據(jù)條件下對(duì)動(dòng)態(tài)心電的存儲(chǔ)和分析。改善了傳統(tǒng)醫(yī)療監(jiān)護(hù)系統(tǒng)存儲(chǔ)、處理海量數(shù)據(jù)等方面能力不足的問(wèn)題。通過(guò)分析病人的特征數(shù)據(jù),匹配相似病例幫助醫(yī)生提高診斷精度、預(yù)測(cè)治療效果,使病人隨時(shí)可以獲得醫(yī)療服務(wù),有助于解決老齡化、醫(yī)療費(fèi)用高等社會(huì)問(wèn)題,具有重要的現(xiàn)實(shí)意義。
動(dòng)態(tài)心電;Android App;Hadoop;云平臺(tái)
長(zhǎng)期以來(lái),心臟病都是威脅人們生命健康的主要疾病之一。而運(yùn)動(dòng)與心臟的關(guān)系更是運(yùn)動(dòng)醫(yī)學(xué)界研究的熱門課題[1]。動(dòng)態(tài)心電圖是人體在非平靜狀態(tài)下監(jiān)測(cè)、分析心電信號(hào),能誘發(fā)人們處于靜態(tài)時(shí)不易發(fā)現(xiàn)的心臟疾病[2],在應(yīng)用范圍及臨床價(jià)值等方面均明顯優(yōu)于常規(guī)的心電圖機(jī)。對(duì)冠心病、心肌缺血等的診斷,藥物療效判斷[3],指導(dǎo)運(yùn)動(dòng)員訓(xùn)練,減少運(yùn)動(dòng)員受傷幾率[4]等方面均有其他檢查不可替代的意義。
基于國(guó)內(nèi)擁有世界上最大的移動(dòng)網(wǎng)絡(luò)市場(chǎng)及當(dāng)前醫(yī)療資源緊缺這兩大背景[5],移動(dòng)智能設(shè)備被認(rèn)為是非常有前景的醫(yī)療保健工具,具有方便快捷、節(jié)省成本等特點(diǎn),使得廣大群眾可以不受時(shí)間和地點(diǎn)的限制接受監(jiān)護(hù)[6]。由于手機(jī)存儲(chǔ)容量、計(jì)算能力及能耗的限制,基于移動(dòng)終端的健康云監(jiān)測(cè)系統(tǒng)更具有實(shí)用價(jià)值。然而,隨著監(jiān)護(hù)數(shù)據(jù)的激增[7],傳統(tǒng)監(jiān)護(hù)技術(shù)已無(wú)法有效地對(duì)其進(jìn)行管理和分析。如合理地對(duì)動(dòng)態(tài)心電大數(shù)據(jù)進(jìn)行存儲(chǔ)、提取和分析,對(duì)監(jiān)護(hù)服務(wù)、疾病分析有著極大的價(jià)值。
如今,建立監(jiān)測(cè)動(dòng)態(tài)心電以及基于移動(dòng)云的醫(yī)療監(jiān)護(hù)平臺(tái)的想法已經(jīng)出現(xiàn)。例如,文獻(xiàn)[1-2]描述了如何構(gòu)建一個(gè)用于平板動(dòng)態(tài)心電圖監(jiān)測(cè)的系統(tǒng);黃停[3]介紹了動(dòng)態(tài)心電的預(yù)處理和特征值分析方法;Lin C C等[8]提出將生理數(shù)據(jù)保存在后臺(tái)服務(wù)器;文獻(xiàn)[9-10]分別介紹了基于云分析的系統(tǒng);文獻(xiàn)[11]提出了基于云計(jì)算的數(shù)據(jù)分析方法。然而,構(gòu)建完整的遠(yuǎn)程醫(yī)療診斷系統(tǒng)的文獻(xiàn)還是不多,多數(shù)仍使用Web框架處理數(shù)據(jù),且所設(shè)計(jì)的移動(dòng)設(shè)備的管理能力較弱,沒(méi)有針對(duì)用戶個(gè)人情況進(jìn)行診斷。而這幾乎是實(shí)際使用中最重要的。
為此,系統(tǒng)設(shè)計(jì)以Android智能終端作為面向用戶的客戶端,并整合以低廉的主機(jī)為基礎(chǔ),高可靠性、高處理能力的Hadoop集群的方式構(gòu)建云平臺(tái),提供實(shí)時(shí)準(zhǔn)確的動(dòng)態(tài)心電監(jiān)測(cè)服務(wù)。實(shí)際運(yùn)行表明,Android智能終端和云平臺(tái)的引入,方便了心電波形展示和數(shù)據(jù)隨時(shí)隨地的上傳和下載,改變了傳統(tǒng)的數(shù)據(jù)庫(kù)軟件和數(shù)據(jù)處理軟件無(wú)法應(yīng)對(duì)存儲(chǔ)、處理、分析大數(shù)據(jù)的任務(wù),為運(yùn)動(dòng)狀態(tài)下心臟疾病的監(jiān)測(cè)、藥物作用的判斷起到了積極的指導(dǎo)作用。
基于Hadoop集群的無(wú)線動(dòng)態(tài)心電分析系統(tǒng)主要由采集模塊、Android智能終端、Web服務(wù)器管理平臺(tái)以及Hadoop云分析服務(wù)器集群組成。系統(tǒng)分為硬件層、應(yīng)用層、網(wǎng)絡(luò)層和云平臺(tái)層。其中,應(yīng)用層又分為服務(wù)層和傳輸層;云平臺(tái)層又分為業(yè)務(wù)層、功能層和平臺(tái)層,系統(tǒng)架構(gòu)如圖1所示。
圖1 系統(tǒng)架構(gòu)圖
主要工作流程:硬件層使用采集傳感器采集動(dòng)態(tài)心電信號(hào),通過(guò)藍(lán)牙發(fā)送至智能終端服務(wù)層顯示并通過(guò)4G/Wifi網(wǎng)絡(luò)傳輸?shù)焦芾矸?wù)平臺(tái)。服務(wù)層還可供用戶查看健康評(píng)估報(bào)告、管理數(shù)據(jù)。發(fā)生異常時(shí),報(bào)警通知醫(yī)護(hù)人員。云服務(wù)平臺(tái)業(yè)務(wù)層接收生理數(shù)據(jù)后,功能層按用戶進(jìn)行存儲(chǔ),將實(shí)時(shí)數(shù)據(jù)進(jìn)行特征分析,通過(guò)Hadoop集群對(duì)歷史數(shù)據(jù)進(jìn)行縱向分析、病情與特定人群的關(guān)聯(lián)性分析,預(yù)測(cè)疾病風(fēng)險(xiǎn)等,從而得到診斷結(jié)論及健康評(píng)估,并反饋到移動(dòng)端。醫(yī)護(hù)人員可以通過(guò)業(yè)務(wù)層的Web端查看用戶的診斷報(bào)告及生理指標(biāo),管理存儲(chǔ)在集群上的大數(shù)據(jù),并進(jìn)行健康干預(yù)。系統(tǒng)通過(guò)云平臺(tái)將用戶與醫(yī)護(hù)人員、醫(yī)療機(jī)構(gòu)聯(lián)接起來(lái)。
客戶端的主要任務(wù)就是采集、展示動(dòng)態(tài)心電信號(hào),管理用戶個(gè)人信息,查詢歷史診斷記錄和報(bào)告。客戶端的使用流程如圖2所示。
圖2 Android應(yīng)用程序使用流程圖
2.1 客戶端功能模塊
(1)檔案管理模塊。主要采集身高、體重等個(gè)人信息,生活習(xí)慣及病藥史等,輔助診斷和大數(shù)據(jù)分析。
(2)運(yùn)動(dòng)心電監(jiān)測(cè)模塊。軟件通過(guò)藍(lán)牙接收動(dòng)態(tài)心電數(shù)據(jù)包,同時(shí)采集加速度,將接收數(shù)據(jù)進(jìn)行解析、預(yù)處理,濾除工頻干擾、基線漂移和肌電干擾這三種噪聲。并通過(guò)網(wǎng)絡(luò)將數(shù)據(jù)上傳到服務(wù)器,使用RC5加密算法對(duì)數(shù)據(jù)進(jìn)行加密,保證數(shù)據(jù)安全[10]。
(3)診斷管理模塊。軟件以圖表文字等方式展示歷史診斷記錄、心率趨勢(shì)和運(yùn)動(dòng)分析等診斷報(bào)告和健康建議。
(4)報(bào)警呼救模塊。發(fā)生異常時(shí),如突發(fā)性心臟疾病,軟件會(huì)通過(guò)響鈴提醒用戶。嚴(yán)重時(shí)自動(dòng)發(fā)信息、撥打電話告知醫(yī)護(hù)人員GPS定位信息和病情,避免用戶獨(dú)處時(shí)無(wú)法自救和護(hù)理。
(5)接收健康信息。服務(wù)端主動(dòng)將不定期更新的健康提醒推送給用戶實(shí)現(xiàn)健康干預(yù)。由于服務(wù)器端主動(dòng)向客戶端發(fā)送信息,減少了客戶端手機(jī)電量與通信流量的消耗。
2.2 動(dòng)態(tài)心電監(jiān)測(cè)流程
用戶登錄時(shí)驗(yàn)證身份,如身份正確則可開始使用軟件。監(jiān)測(cè)前首先進(jìn)行藍(lán)牙連接,藍(lán)牙配對(duì)成功后Android端開始接收數(shù)據(jù)。Android端的數(shù)據(jù)接收是經(jīng)典的生產(chǎn)者-消費(fèi)者問(wèn)題。實(shí)時(shí)接收時(shí)每秒數(shù)據(jù)量較少,收到的心電數(shù)據(jù)需要積累到一定數(shù)量才能解析,否則會(huì)影響解析效果,因此系統(tǒng)采用多線程的方式維護(hù)兩個(gè)環(huán)形隊(duì)列緩存區(qū)進(jìn)行數(shù)據(jù)存取。一個(gè)隊(duì)列用來(lái)實(shí)時(shí)接收數(shù)據(jù),另一個(gè)負(fù)責(zé)累積數(shù)據(jù)。在數(shù)據(jù)解析的同時(shí),手機(jī)端界面實(shí)時(shí)刷新動(dòng)態(tài)心電波形圖,并將數(shù)據(jù)上傳至服務(wù)器端進(jìn)行分析,最后將服務(wù)器返回的診斷報(bào)告顯示給用戶。動(dòng)態(tài)心電監(jiān)測(cè)流程如圖3所示。
圖3 動(dòng)態(tài)心電監(jiān)測(cè)流程圖
3.1 云平臺(tái)架構(gòu)設(shè)計(jì)
采用云計(jì)算通用的層次化的服務(wù)模型框架[12],分為IaaS基礎(chǔ)設(shè)施層、PaaS平臺(tái)服務(wù)層和SaaS應(yīng)用軟件層。其架構(gòu)如圖4所示。
圖4 云管理服務(wù)平臺(tái)架構(gòu)
基礎(chǔ)設(shè)施層是以多臺(tái)普通配置的服務(wù)器為基礎(chǔ),利用虛擬化技術(shù)向上層提供服務(wù)。PaaS層用于數(shù)據(jù)持久存儲(chǔ)和管理并提供編程模型供數(shù)據(jù)分析計(jì)算,根據(jù)云平臺(tái)數(shù)據(jù)量大且結(jié)構(gòu)化、非結(jié)構(gòu)化數(shù)據(jù)并存的特點(diǎn)[13],云平臺(tái)的數(shù)據(jù)存儲(chǔ)采用MySQL關(guān)系型數(shù)據(jù)庫(kù)存儲(chǔ)和HDFS分布式文件系統(tǒng)存儲(chǔ)兩種存儲(chǔ)方式。其中MySQL數(shù)據(jù)庫(kù)主要用于存儲(chǔ)結(jié)構(gòu)化的數(shù)據(jù);HDFS數(shù)據(jù)庫(kù)存儲(chǔ)非結(jié)構(gòu)化的數(shù)據(jù)(如圖片等)。SaaS層為應(yīng)用層,提供生理數(shù)據(jù)接收、分析和操作HDFS中原始數(shù)據(jù)的文件管理與交互等功能。
3.2 云平臺(tái)數(shù)據(jù)分析
在數(shù)據(jù)分析時(shí),使用者主要通過(guò)Web服務(wù)器訪問(wèn)云管理平臺(tái),發(fā)給主節(jié)點(diǎn)MasterNode服務(wù)器,由它對(duì)數(shù)據(jù)節(jié)點(diǎn)進(jìn)行統(tǒng)一的資源管理和控制,然后,SlaveNode服務(wù)器負(fù)責(zé)將接收的數(shù)據(jù)進(jìn)行存儲(chǔ)和計(jì)算。通過(guò)將診斷算法整合至Hadoop集群中的MapReduce框架[14],根據(jù)病人特征進(jìn)行健康狀況評(píng)估,選擇治療方案。MapReduce計(jì)算框架有兩個(gè)主要的計(jì)算函數(shù):Map函數(shù)和Reduce函數(shù)。Map函數(shù)主要用于并行計(jì)算分塊數(shù)據(jù),得到心電數(shù)據(jù)中的QRS時(shí)限、R峰值、ST段特征值及運(yùn)動(dòng)狀態(tài)等特征參數(shù)。Map函數(shù)計(jì)算完成后輸出
對(duì)動(dòng)態(tài)心電監(jiān)測(cè)的運(yùn)行結(jié)果進(jìn)行展示。藍(lán)牙連接成功后,采集模塊以固定采樣率向監(jiān)護(hù)App發(fā)送數(shù)據(jù)。圖5展示了監(jiān)護(hù)App的動(dòng)態(tài)心電監(jiān)護(hù)界面及運(yùn)動(dòng)心率的數(shù)據(jù)統(tǒng)計(jì)圖。軟件進(jìn)行實(shí)時(shí)的心電圖波形展示,波形可放大縮小,方便觀察。測(cè)試完成后,實(shí)時(shí)顯示服務(wù)器端返回的實(shí)時(shí)診斷的結(jié)果。用戶信息的采集有助于系統(tǒng)綜合分析用戶的健康狀況。
圖6展示了服務(wù)器保存的實(shí)時(shí)分析后生成的診斷報(bào)告。報(bào)告中包含用戶的基本信息、心電圖波形(可查看波形細(xì)節(jié))、診斷結(jié)果,為醫(yī)生在給出健康建議時(shí)提供參考。經(jīng)測(cè)試運(yùn)行,驗(yàn)證了基于云平臺(tái)的動(dòng)態(tài)心電監(jiān)測(cè)系統(tǒng)設(shè)計(jì)的可行性。
圖5 動(dòng)態(tài)心電監(jiān)護(hù)界面
系統(tǒng)利用Android智能手機(jī)和云計(jì)算,從健康監(jiān)測(cè)、健康干預(yù)等方面為出發(fā)點(diǎn),實(shí)現(xiàn)了對(duì)個(gè)人健康情況的實(shí)時(shí)監(jiān)控。智能手機(jī)應(yīng)用程序的開發(fā),將醫(yī)學(xué)診斷和健康干預(yù)信息接入智能終端,使用戶可以隨時(shí)隨地監(jiān)測(cè)自身生理狀況、醫(yī)療咨詢和自我健康管理。引入基于Hadoop的云平臺(tái),緩解了海量數(shù)據(jù)難于存儲(chǔ)、處理分析等問(wèn)題,減輕了客戶端負(fù)擔(dān)和能耗,輔助專家指
導(dǎo)用戶進(jìn)行健康管理,實(shí)現(xiàn)了一套完整的從客戶端到云平臺(tái)的醫(yī)療數(shù)據(jù)分析系統(tǒng),達(dá)到了疾病監(jiān)護(hù)、早期預(yù)警的目的。
[1] 雷靳燦,廖彥劍,鄭小林,等.模塊式多功能運(yùn)動(dòng)心電檢測(cè)系統(tǒng)的設(shè)計(jì)[J].儀器儀表學(xué)報(bào),2010,31(7):1484-1489.
[2] 吳冬青,王保華,朱仁觀,等.平板運(yùn)動(dòng)心電圖測(cè)量與分析系統(tǒng)[J].電子學(xué)報(bào),2001,29(3):432.
[3] 黃 停.動(dòng)態(tài)心電信號(hào)采集分析及系統(tǒng)研究[D].沈陽(yáng):東北大學(xué),2013.
[4] 陸世鵬.運(yùn)動(dòng)心電監(jiān)護(hù)系統(tǒng)[D].桂林:廣西師范大學(xué),2010.
[5] 倪明選,張 黔,譚浩宇,等.智慧醫(yī)療——從物聯(lián)網(wǎng)到云計(jì)算[J].中國(guó)科學(xué):信息科學(xué),2013(4):515-528.
[6] 蔡耀婷,李 蕓.智能手機(jī)在個(gè)人醫(yī)療健康管理服務(wù)領(lǐng)域的應(yīng)用現(xiàn)狀和發(fā)展前景[J].護(hù)理研究,2016,30(5):1549-1552.
[7] 朱凌云,李連杰,孟春艷.遠(yuǎn)程多生理參數(shù)實(shí)時(shí)監(jiān)測(cè)云服務(wù)平臺(tái)的構(gòu)建與分析[J].生物醫(yī)學(xué)工程學(xué)雜志,2014,31(6):1377-1383.
[8] Lin C C,Huang S W,Chen Q Y.A real-time abnormal heartbeat detection and emergency system[C]//International conference on fuzzy theory and its applications.Yilan:[s.n.],2015:12-17.
[9] Srinivasan S,Muthukumarasamy S,Sivagamy N.Parallel computing based intelligent web service for healthcare platform[C]//International conference on information communication and embedded systems.Chennai:[s.n.],2014:1-5.
[10] Karunarathne M S,Jones S A,Ekanayake S W,et al.Remote monitoring system enabling cloud technology upon smart phones and inertial sensors for human kinematics[C]//Fourth international conference on big data and cloud computing.Sydney:IEEE,2014:137-142.
[11] Yuan B, Herbert J. A cloud-based mobile data analytics framework:case study of activity recognition using smartphone[C]//2nd International conference on mobile cloud computing,services,and engineering.Oxford:IEEE,2014:220-227.
[12] 梁 實(shí),王益新.深圳智慧醫(yī)療云服務(wù)平臺(tái)建設(shè)[J].測(cè)繪科學(xué),2014,39(8):74-77.
[13] 陸婷娟,戚小平.基于Hadoop的醫(yī)學(xué)影像數(shù)據(jù)平臺(tái)應(yīng)用研究[J].世界復(fù)合醫(yī)學(xué),2015,1(3):223-226.
[14] Wee K C,Zahid M S M.Auto-tuned Hadoop MapReduce for ECG analysis[C]//2015 IEEE student conference on research and development.Kuala Lumpur:IEEE,2015:329-334.
Wireless Dynamic Electrocardiogram Analysis System Based on Hadoop
SONG Yin-tao1,MA Qian-li2,ZHOU Bing-wei1,BIAN Chun-hua3
(1.College of Telecommunications & Information Engineering,Nanjing University of Posts &Telecommunications,Nanjing 210003,China;2.School of Geography & Biological Information,Nanjing University of Posts & Telecommunications,Nanjing 210003,China;3.School of Electronic Science & Engineering,Nanjing University,Nanjing 210093,China)
Dynamic electrocardiogram (ECG) is to monitor ECG signal of human during daily activities,which has more clinical value than conventional ECG.In order to monitor dynamic ECG in real-time and perform comprehensive diagnosis according to users’ personal information,a wireless dynamic electrocardiogram analysis system with Hadoop cluster has been designed and implemented,in which Android App on mobile devices is used as client to display status,manage files,perform diagnosis,and make emergency call,etc.The cloud platform utilizes generic hierarchical service modeling framework to analyze massive amounts of physiological data through a Hadoop cluster,and through exercise intervention,health risk assessment and other services to provide assistance for users.Results show that the system can complete storage and analysis tasks of the dynamic ECG under the condition of large data.It has solved the problem of that the traditional monitoring technology has been unable to effectively carry on the management and analysis.The analysis of the features of patient data and matching similar cases could help doctors improve the diagnostic accuracy and predict the treatment effect,and also can provide the patients access to medical service at any time.The system has the important practical significance in solving the issues with the ageing society and high medical treatment costs.
dynamic electrocardiogram;Android App;Hadoop;cloud platform
2016-06-21
2016-09-28
時(shí)間:2017-03-07
國(guó)家自然科學(xué)基金資助項(xiàng)目(GZ212062)
宋銀濤(1992-),男,碩士,研究方向?yàn)樾盘?hào)與信息處理;馬千里,副教授,碩士生導(dǎo)師,研究方向?yàn)樯镝t(yī)學(xué)電子學(xué)。
http://kns.cnki.net/kcms/detail/61.1450.TP.20170307.0922.092.html
TP302
A
1673-629X(2017)04-0157-04
10.3969/j.issn.1673-629X.2017.04.035