新聞中心

EEPW首頁 > 設(shè)計應(yīng)用 > 基于前項差分和動態(tài)閾值的PPG心率測量算法

基于前項差分和動態(tài)閾值的PPG心率測量算法

作者:辛 毅 時間:2019-09-06 來源:電子產(chǎn)品世界 收藏

  辛 毅 (Maxim Integrated公司)

本文引用地址:http://butianyuan.cn/article/201909/404538.htm

  摘?要:基于Maxim的新款超低功耗微控制器MAX32660,運用前項和動態(tài)方法,實現(xiàn)了一種信號的提取算法。該算法為參考設(shè)計MAXREFDES1207而設(shè)計,并進行了測試,效果優(yōu)良,適合可穿戴設(shè)備的實時測量。

  關(guān)鍵詞:;;;

  引言

  近年來,隨著大眾生活水平的日益提高,各種可穿戴健康設(shè)備逐漸成為了一個熱點領(lǐng)域。這些設(shè)備具有體積小、續(xù)航長、使用便利等諸多優(yōu)點,能夠?qū)崿F(xiàn)評價人體的多種生命體征,為人們生活方式的改善提供有益建議。在生命體征的評價指標中,實時心率極其重要。本文基于Maxim的新款超低功耗微控制器MAX32660,運用前項和動態(tài)方法,實現(xiàn)了一種信號的心率提取算法。該算法為參考設(shè)計MAXREFDES1207而設(shè)計,并進行了測試,效果優(yōu)良,適合可穿戴設(shè)備的心率實時測量。

  1 原理與背景

  目前,國內(nèi)外開發(fā)了許多電子設(shè)備用于心率測量,其本質(zhì)是分別運用了4種不同的測量方法:電勢測量法、生物阻抗法、動脈血壓法和光電測量法。前3種方法分別利用人體的心電、生物電阻抗和動脈壓的周期性變化來計算心率,干擾度大、硬件要求高,因而較少被可穿戴設(shè)備采用。

  比較常用的是光電測量法。光電測量法即“光電容積脈搏波描記法 ”,即通過綠光LED光源結(jié)合接收傳感器管照射人體的血管,根據(jù)血管對光的反射量的改變獲得PPG信號,從而測量心率。由于人體的皮膚、骨骼、肌肉等對光的反射是固定值,而血管容積隨著脈搏的變化而不斷變化,所以血管對光的反射是波動值,其波動頻率即為心率。目前,光電測量法是市面上可穿戴器件的主流,Maxim的低功耗心率MAXREFDES1207也是基于這一原理進行心率的提取。

  從PPG信號獲取心率有多種成熟的算法,如閾值法、模板法,甚至有些算法還利用了機器學習的原理。其中,閾值法算量小,但是準確度較低;模板法準確度較高,但算法復(fù)雜;機器學習方法準確度最高,但是對硬件要求甚高,一般的微控制器無法勝任。由于本設(shè)計需要在MAXREFDES1207的MAX32660平臺上實現(xiàn),需要做到心率的實時計算并兼顧到結(jié)果的準確性,故本文在閾值法的基礎(chǔ)上加以改進,結(jié)合前項差分的預(yù)處理方法實現(xiàn)算法,實現(xiàn)準確、實時的心率輸出。

  2 算法實現(xiàn)

  2.1 數(shù)據(jù)預(yù)處理

  一般而言,從傳感器中讀取的原始信號含有較多噪聲。其中最為顯著的噪聲由體表的運動產(chǎn)生。在測量過程中,人并不能保證完全靜止,這些擾動會使測量部位和傳感器之間的距離發(fā)生變化,導(dǎo)致接收到的信號發(fā)生變化。最為典型的干擾是呼吸干擾,會使得信號的基線發(fā)生緩慢漂移。一路典型的PPG原始信號如圖1所示。可見,信號的基線受到呼吸的影響,有較為嚴重的漂移。同時可以觀察到,信號中含有較大的直流分量,這都給心率的提取造成了障礙。

1568173069617163.png

1568173120511607.png

  鑒于此,本算法使用前項差分法進行數(shù)據(jù)預(yù)處理,即計算原始PPG信號 r(k) 的前向差分信號x(k)=r(k)-r(k-1),可以同時達到去除基線漂移和直流分量的效果,如圖2所示。

  由圖2可見,進過預(yù)處理,原始PPG信號中的基線漂移和直流分量都已被去除,同時原始信號的周期性特征已經(jīng)從易被干擾的波峰轉(zhuǎn)化為特征突出的負脈沖,為下一步的閾值法計算心率提供了有力支持。

  2.2 閾值檢測

  經(jīng)過預(yù)處理的信號的干擾已經(jīng)被抑制,可以進行心率的計算。鑒于波形的特征和硬件的性能,本算法使用閾值法對預(yù)處理后的信號的負脈沖進行提取,從而計算心率。需要注意的是,圖2信號中的不同負脈沖的峰值并非完全一致,因此如果使用硬閾值進行峰值檢測,效果不會理想。為此,本算法使用動態(tài)閾值進行檢測。動態(tài)閾值又稱軟閾值,即根據(jù)信號的特性不斷地更新閾值,從而獲得較好的檢測效果。具體來說,首先,將信號的最小值的30%作為初始閾值;然后,檢測到第1個峰值后,將其40%作為新的閾值;接著,每檢測到1個新的峰值則更新閾值,新的閾值為之前檢測到的所有峰值的平均數(shù)的40%。閾值選取中的百分數(shù)系根據(jù)大量測試確定。閾值選取的效果如圖3所示。

微信截圖_20190911113800.png

  根據(jù)圖3,閾值能夠跟隨負脈沖的峰值發(fā)生變化,使得負脈沖的漏檢率得到有效降低。

  2.3 心率計算

  由于設(shè)計需要,心率需做到實時顯示,故本算法采用8 s的PPG信號進行計算,每從傳感器獲得一個新的信號進行實時更新。接著,經(jīng)過上述的兩個步驟計算出相鄰負脈沖間隔時間的平均數(shù) I ,從而計算出心率。心率的計算公式為:HR I =60 。整個算法的過程如圖4所示。

微信截圖_20190911113851.png

  3 算法測試

  為 驗 證 算 法,將 算 法 嵌 入 到 參 考 設(shè) 計MAXREFDES1207(如圖5所示)之中,并隨機抽選不同性別和不同年齡的6組測量對象,并和市面上比較流行的進行對比,如表1所示。測試位置為左手手腕。

微信截圖_20190911113913.png

  由測試結(jié)果可見,與主流的產(chǎn)品的測量結(jié)果相比,本算法的準確度較高,能夠較好地配合硬件實現(xiàn)功能。

  參考文獻

  [1] MAX32660數(shù)據(jù)手冊[EB/OL].[2019-07-15].https://www.maximintegrated.com/en/products/microcontrollers/MAX32660.html

  [2] 方良.基于SIMO技術(shù)的低功耗心率手環(huán)測量方案[R/OL].(2019-06-27)[2019-07-15].http://butianyuan.cn/article/201906/401978.htm

  [3] Chen I.Maxim應(yīng)用筆記:Using Reflectometry fora PPG Waveform[R/OL].[2019-07-12].https://www.maximintegrated.com/en/app-notes/index.mvp/id/6547

  作者簡介:

  辛毅,Maxim Integrated應(yīng)用工程師,負責Maxim產(chǎn)品及日本客戶的技術(shù)培訓(xùn)與支持。

  本文來源于科技期刊《電子產(chǎn)品世界》2019年第9期第27頁,歡迎您寫論文時引用,并注明出處。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉