999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Python的PPG信號數據分析

2023-06-21 21:18:31周晶
現代信息科技 2023年1期
關鍵詞:數據分析

摘? 要:醫學臨床工作中,人體生理參數是重要基礎,目前常用ECG和PPG兩種生理信息測量方法,PPG以非入侵式、無創、測量方便的特點,方便日常生活使用。文章先介紹PPG和PPG的工作原理及ECG和PPG的圖像區別,再到程序設計中,通過導入數據和計算采樣率、處理截取的片段、填空NAN、PPG信號濾波、重采樣、分析信號、輸出度量值、數據可視化等操作后,可以從蘊含多種人體生理信息的復雜PPG信號中,獲取人體相關參數,用以判斷人體的健康狀態。

關鍵詞:PPG;Python;Heartpy;數據分析

中圖分類號:TP391 文獻標識碼:A? 文章編號:2096-4706(2023)01-0096-04

PPG Signal Data Analysis Based on Python

ZHOU Jing

(Nanjing Sport Institute, Nanjing? 210046, China)

Abstract: In the clinical work of medicine, the physiological parameters of the human body are important foundation. At present, ECG and PPG are two commonly used methods for measuring physiological information. PPG is non-invasive and convenient to measure, which is convenient to use in daily life. This paper firstly introduces the PPG and working principle of PPG and the image difference between ECG and PPG. And in the program design, through operation of importing data and calculating the sampling rate, processing the intercepted fragments, filling in the blank NAN, PPG signal filtering, resampling, analyzing signals, outputting metric values and data visualization, the relevant parameters of human body can be obtained from complex PPG signals that contain a variety of human physiological information to judge the health status of the human body.

Keywords: PPG; Python; Heartpy; data analysis

0? 引? 言

隨著社會的發展和人民生活水平的不斷提高,人們對健康日益關注,越來越多的人希望能夠實時了解自己的身體狀況。因此,很多可穿戴的生理參數檢測設備應運而生。

近年來,使用可穿戴式設備監測人體生理參數的方式已得到了普及,由于成本較低,在這種設備中監測人體信息最常用的方法是使用光電容積脈搏波(Photo Plethysmo Graphy, PPG)信號。PPG利用低強度紅外光照射皮膚,測量光透射或反射到光敏傳感器,檢測經過人體血液和組織吸收后的反射光強度的不同,實時描記被測部位(指端、耳垂、鼻翼等)血液中物質變化的光吸收量,來獲取外周為血管的血液容積隨心臟搏動而產生的脈動性變化,根據光吸收基本定理朗伯-比爾定律,提取出包含心率等多種人體生理信息的PPG信號。

光電容積脈搏波描記法是一種電光技術,將傳感器置于皮膚上方,通過發射綠光照亮皮膚表層,由傳感器接收反射光強度變化,并通過對PPG信號的周期性檢測與分析得到人體狀態,這種無創方法實時檢測人體參數的方式具有非常重要的實際意義。眾多對光電容積脈搏波的臨床應用研究表明了PPG信號中包含了許多人體生理參數,是實現心率、血氧飽和度、血壓、血管彈性等實時監測的重要手段。

當前,全球新一輪科技革命和產業變革日新月異,移動互聯網、云計算、物聯網、大數據、人工智能等新技術在制造業和服務業的應用日益增多。Python作為科研技術人員常用語言,也順勢成為目前最紅火的高級編程語言之一,Python常應用在科學計算、網絡爬蟲、數據分析、人工智能、自動化運維等眾多領域,它在醫學方面也有較好的表現。Python有很多開源包,如Heartpy是一款Python心率分析的工具包。本研究將用Python程序設計方法對采集到的PPG信號進行數據分析。通過對PPG信號數據分析獲取相關生理信息,從而可以合理科學的地評估人體健康水平。

1? 數據處理與數據分析

在程序設計方案中,整體思路是先將保存到文檔里的PPG信號數據和時間數據導入,分別獲取到PPG數據和計算得到采樣率,然后通過numpy數組的填充NAN、信號濾波、重采樣操作對數據進行基本的預處理,經過預處理后用Heartpy的process函數對數據進行信號數據分析,最后用plot相關函數將整理、分析好的PPG信號數據可視化。數據處理和數據分析共有八個步驟,分別是:導入數據和獲取采樣率、處理截取片段、填充NAN、PPG信號濾波、重采樣、分析信號、輸出度量值、數據可視化。

1.1? 導入數據和獲取采樣率

在對PPG信號進行分析中,最重要的是要導入PPG數據和獲取數據的采樣率。在實驗階段,收集PPG數據,發現通常PPG原始數據會保存在“.csv”“.mat”“.txt”后綴文件中,而“.csv”最常用,故使用csv文件獲取PPG數據。采樣率,也稱采樣頻率,定義了每秒從連續信號中提取并組成離散信號的采樣個數,單位為Hz,例如100 Hz,就是每秒鐘采集100個信號樣本,采樣率對PPG信號燈數據分析十分重要,直接決定了后面計算相關人體信息的準確程度。

在導入數據和采樣率這部分的設計中,編寫了init_input函數,專門用于獲取PPG信號數據和采樣率。函數中首先關注導入文件的有效性,利用os.path.split函數按照路徑將文件名和路徑分割,截取文件名,再用str.index(“.”),把文件后綴截取出來,用以確定輸入文件的格式,判斷文件后綴是否可用,目前只在有效后綴列表中,加入“.csv”字段,如果導入其他類型文件,會報錯,并回到起始點,重新輸入。確定絕對路徑復合規則后,就可以用heartpy.get函數導入原始數據。如圖1所示,反映了文件后綴的兩種狀況。

其次在是否有列名、輸入列名、是否有采樣率、輸入采樣率、計算采樣率等邏輯設計中,采用input函數獲取信息,if語句判斷交互內容。其中在采樣率的獲取中,可以根據用戶的時間數據列,用isinstance判斷相應時間類型,判斷是ms-based time(時間戳)還是datetime-based time(日期),正則表達式選擇datetime-based time格式,使用適用的函數,自動計算出樣本的采樣率。計算出采樣率后,函數返回可用的PPG信號原始數據和采樣率。如圖2和圖3所示,是兩種時間數據格式。

設計有容錯措施,整個函數的執行外,有while True循環執行,除非是正確執行,return返回數據并退出函數,不然會一直在本函數執行重新輸入。

1.2? 處理截取片段

由于有時獲取的樣本采樣率高、采樣時間長,導致采樣數據量較大,將大量的數據處理完,再可視化,屏幕幾乎是密密麻麻的小點,無法直接觀察PPG的信號規律,所以只選取某段感興趣的數據進行分析,之后程序會提示選擇的是哪個時間段數據。如圖4所示,是截取后的片段圖像。

1.3? 信號數據預處理

1.3.1? 填充NAN

本研究使用nump.nan_to_num函數,用數值數據(0)替換NaN值的時間段,避免分析的某些數值部分失敗。填充完后,如圖5所示。

1.3.2? PPG信號濾波(filter)

收集到的原始信號數據有好有壞,理想情況下的信號規律、穩定,不理想的數據雜亂、不穩定,但有某種規律的趨勢,可以通過濾波器抑制噪聲,將不理想的數據變得稍微規整些。樣本根據時間進行采樣,并進行描記信號數據,形成時域數據,這是一個以時間為參照的區域數據。根據傅里葉變換,時域的曲線可以由多個曲線疊加形成,如果把這多個曲線沿z軸展開,可以看到每個曲線的頻率,再從z軸看,形成了這個時域曲線的頻域,一個以頻率參照的區域數據,此時把過低的頻率和過高的頻率過濾掉,這時再從時域角度看,就把紛雜的不理想數據給消除掉,形成較為規律穩定的信號數據,可以從信號中提取有用信息。也即通過傅里葉變換先把時域變換成頻域,對頻域范圍進行過濾,再從頻域變換成時域。

本設計中,使用heartpy.filter_signal函數,filtertype選擇“bandpass”(巴特沃斯)帶通濾波器,過濾掉頻率小于0.8 Hz(≤48 bpm)和大于3.5 Hz(≥210 bpm)的雜亂信號數據。

1.3.3? 重采樣(resample)

采樣率對PPG信號數據的分析至關重要,但采樣率過低,計算BPM沒問題,但要計算HRV(心率變異性)、SDNN、SDSD時會不太準確,所以如果要做適應性閾值分析時,會重采樣到100 Hz以上。

設計中先用if語句進行判斷,如果采樣率過低,小于101 Hz,會計算適當倍數到105 Hz,再使用scipy.signal的resample函數進行重采樣。如果采樣率超過101,則完成了設計的“預處理”環節,然后進行信號分析。如圖6和圖7所示,分別是重采樣前后對橫坐標進行對比。

1.4? 分析信號(process)

PPG信號是包含多種對心血管系統有關的有價值的復雜信息,通過數據分析,可以了解人體健康信息,比如每分鐘心跳數(BPM),俗稱心率,在ECG中能分析出來,在PPG中也同樣能分析出來。

分析數據環節,使用Heartpy包的process函數,只要確定較好的PPG信號數據和較為準確以及合適的采樣率,process函數就可以根據檢測到的峰值自動化計算時間序列測量值,輸出度量包含每分鐘心跳數(BPM)、節拍間隔(IBI)、RR間隔的標準差(SDNN)、連續差異的標準偏差(SDSD)、連續差均方根(RMSSD)、20 ms以上的連續差異的比例(pNN20)、50 ms以上的連續差異的比例(pNN50)、RR間隔的中值絕對偏差(MAD)等。

其中process也還可以加入其他的選項,例如本程序中加入的report_time和clean_rr選項,分別是否報告process執行的總處理時間和清洗峰-峰間隔,它將嘗試識別并拒絕異常值,拒絕大多數的峰值噪聲區(低置信度變紅)。

1.5? 輸出度量值

在process分析操作之后,會返回兩個字典,一個是wording_data工作數據字典,還有一個是measures度量值字典,measures的每個數據都是經過process計算分析后的度量值,總共有13個,這里使用for遍歷數組的方法,把字典的keys作為變量帶入,提取并展示每個度量值。如圖8所示,表現了程序最后的輸出。

其中,BPM(beat per minute)是每分鐘心跳數,IBI(inter beat interval)是節拍間隔,SDNN(standard deviation of RR intervals)是RR間隔的標準差,SDSD(standard deviation of successive differences)是連續差異的標準偏差,RMSSD(root mean square of successive differences)是連續差均方根,pNN20(proportion of successive differences above 20 ms)是20 ms以上的連續差異的比例,pNN50(proportion of successive differences above 50 ms)是50 ms以上的連續差異的比例,MAD(median absolute deviation of RR intervals)是RR間隔的中值絕對偏差,sd1(the standard deviation of instantaneous beat-to-beat interval variability)是瞬時心跳到心跳間隔變異性,sd2(the continuous long-term R/R interval variability)是連續的長期R/R間隔變異性,sd1/sd2是SD1/SD2比值,breathing rate是呼吸率。

另外可以根據計算出來的SD1、SD2、S、SD1/SD2,使用心率變異性的非線性幾何分析的方法,畫出龐加萊散點圖,如圖9所示,是彭加萊散點圖的樣圖。

1.6? 數據可視化(plot)

Heartpy中有plotter函數,專門對處理完的信號數據進行二維繪圖-曲線圖,它的內部構造,也是使用的matplotlib包,帶入process返回的wording_data工作數據字典和measures度量值字典,即可進行繪圖。在原圖基礎上進行繪畫,加入綠點后如圖10所示。

2? 結? 論

本研究利用Python高級語言設計程序對PPG信號進行數據分析,通過導入數據和采樣率、是否選取片段、填空NAN、PPG信號濾波、重采樣、分析信號、輸出度量值、數據可視化等功能設計后,完成了基于Python的PPG信號數據分析,不僅獲得了有關人體健康的基本信息如心率、呼吸率等,而且能根據節拍間隔、SDNN、SDSD、RMSSD等數據來分析心率變異性,還可以根據分析出來的SD1、SD2、S、SD1/SD2,畫出龐加萊散點圖,可以從蘊含多種人體生理信息的復雜PPG信號中,獲取人體相關參數,用以判斷人體的健康狀態。給醫務人員最直觀的數據呈現,讓程序作為工具,輔助醫學發展。

參考文獻:

[1] Richard_LiuJH. 光學心率測量原理 [EB/OL].(2015-11-04)[2022-05-16].https://blog.csdn.net/richard_liujh/article/details/49615395

[2] CVETKOVIC D,?BEYLI E D,COSIC I.Wavelet Transform Feature Extraction from Human PPG,ECG,and EEG Signal Responses to Elf Pemf Exposures:A Pilot Study [J].Digit Signal Process,2007,18(5):861-874.

[3] 梁康,孫迎.基于智能手機提取PPG測心率方法準確性研究 [J].生物醫學工程學進展,2014,35(4):191-195.

[4] 許彥坤,石萍,喻洪流.基于成像式光電容積描記技術的人體生理參數檢測研究進展 [J].北京生物醫學工程,2017,36(6):648-654.

[5] 鐘敏,陳丹妮,陳思思.光電容積描記技術測量心率的應用研究 [J].黑龍江科技信息,2015(18):60-61.

作者簡介:周晶(1983.03—),女,漢族,江蘇南京人,副教授,博士,研究方向:數據挖掘。

收稿日期:2022-06-24

基金項目:江蘇省高校哲學社會科學研究課題“基于大數據分析的體育院校學生用戶行為模式研究”(2021SJA0392);教育部產學合作協同育人項目(202101224027);江蘇高校“青藍工程”項目(蘇教師函〔2022〕2號)

猜你喜歡
數據分析
我校如何利用體育大課間活動解決男生引體向上這個薄弱環節
體育時空(2016年8期)2016-10-25 18:02:39
Excel電子表格在財務日常工作中的應用
淺析大數據時代背景下的市場營銷策略
新常態下集團公司內部審計工作研究
中國市場(2016年36期)2016-10-19 04:31:23
淺析大數據時代對企業營銷模式的影響
基于讀者到館行為數據分析的高校圖書館服務優化建議
科技視界(2016年22期)2016-10-18 14:37:36
主站蜘蛛池模板: 园内精品自拍视频在线播放| 中文字幕第4页| 极品性荡少妇一区二区色欲| 日本少妇又色又爽又高潮| 国产精品专区第一页在线观看| 欧美亚洲激情| 国产一区二区网站| 精品人妻系列无码专区久久| 亚洲成AV人手机在线观看网站| 日本一本在线视频| 香蕉色综合| 精品在线免费播放| 亚洲国产综合精品一区| 国产原创演绎剧情有字幕的| av一区二区三区高清久久| 午夜福利视频一区| 国产欧美又粗又猛又爽老| 亚洲国产清纯| 国产免费网址| 亚洲欧洲综合| 亚洲成人动漫在线观看| 国产精品久久久精品三级| 国产91视频免费观看| 免费女人18毛片a级毛片视频| 91国内视频在线观看| 成人福利在线免费观看| 国产在线拍偷自揄拍精品| 国产毛片基地| 婷婷综合在线观看丁香| 久久精品亚洲专区| 午夜电影在线观看国产1区| 亚洲视频影院| 四虎在线高清无码| 一区二区理伦视频| 国产成在线观看免费视频| v天堂中文在线| 免费a级毛片视频| 欧美三级视频网站| 一级毛片免费观看久| 白丝美女办公室高潮喷水视频| 久久综合伊人 六十路| 久久人与动人物A级毛片| 99精品这里只有精品高清视频| jizz亚洲高清在线观看| 青青热久麻豆精品视频在线观看| 人人91人人澡人人妻人人爽 | 一级做a爰片久久免费| 免费毛片全部不收费的| 高清无码手机在线观看 | 国产真实乱人视频| 99久久精品免费看国产电影| 国产精品亚洲天堂| 国产精品久线在线观看| 一级高清毛片免费a级高清毛片| 免费无码AV片在线观看国产| 视频在线观看一区二区| 2022国产91精品久久久久久| 久久精品亚洲中文字幕乱码| 在线观看国产黄色| 一级一级特黄女人精品毛片| 国产剧情国内精品原创| 国产靠逼视频| 中文字幕久久波多野结衣| 制服无码网站| 99热最新网址| 欧美一级99在线观看国产| 日韩免费无码人妻系列| 国产激情第一页| h视频在线播放| 亚洲最大福利网站| 欧美乱妇高清无乱码免费| 成人精品视频一区二区在线| 亚洲天堂网站在线| 精品一区二区三区无码视频无码| 中文字幕在线日韩91| 99热这里只有成人精品国产| 久久精品国产电影| 玩两个丰满老熟女久久网| 国产综合色在线视频播放线视| 亚洲日韩精品综合在线一区二区| 免费无码AV片在线观看中文| 欧美日本在线|