本發明屬于心率監測技術領域,尤其涉及一種基于ppg信號的心率檢測方法及系統。
背景技術:
心率是指人體心臟每分鐘博動的次數,在人體參數檢測中,心率是一個非常重要的生理指標,為醫學診斷提供參考。同時,心率也可作為人體運動生理負荷的客觀評定指標,已經廣泛地用于健身運動、競技體育訓練的各個方面。目前,心率監測儀仍然存在很多限制,指夾式心率監測需要被測者在測量時保持靜止,ecg電極心率監測需要將電極片貼于皮膚固定位置監測心率,難以滿足未來電子健康監測、可穿戴設備等的要求,因此隨時隨地提取人的心率數據就顯得尤為重要。
ppg(photoplethysmography,光電容積脈搏波描記法)是借助光電手段在活體組織中檢測血液容積變化的一種無創檢測方法。當一定波長的光束照射到皮膚表面時,光速將通過透射式或反射的方式傳送到光電接收器,在此過程中,由于受到皮膚肌肉和血液的吸收衰減作用,檢測器檢測到的光強度將減弱,其中皮膚、肌肉、組織等對光的吸收在整個血液循環中是保持恒定不變的,而皮膚內的血液容積在心臟的作用下呈搏動性變化。當心臟收縮時,外圍血管血容量最多,光吸收量也最大,檢測到的光強度最小;而在心臟舒張時,外圍血管血容量最少,檢測到的光強度最大,使光電接收器檢測到的光強度隨之呈脈動式變化。將此光強度變化的信號轉換成電信號,便可以獲得容積脈搏血流的變化,心率可以通過對電信號的節律、周期、振幅分析計算得到。ppg傳感器通常比較小,可以集成到可穿戴設備中。因此,可以采用可穿戴設備通過采集、 分析、處理ppg信號獲取人體的心率。
然而,通過處理ppg信號計算心率仍然存在很多挑戰,由于ppg信號是從表面提取的生物信號,它的信號強度弱、易受干擾,工頻噪聲、環境噪聲以及運動噪聲均會對采集的信號質量造成很大的影響,并難以濾除。其中,運動噪聲干擾是由運動中組織干擾,靜脈血容量以及光程變化導致的,由于運動噪聲的主要頻率在很多情況下會與心率的頻率發生重疊,在多種噪聲中,最難以消除。
目前,伴隨著可穿戴設備的興起,人們研究并提出了一些消除ppg信號中運動干擾的方案,例如,采用自適應濾波、小波分析或者獨立成分分析等方法對ppg信號進行分析,進而計算得到心率,這些方案均是針對時域上因運動干擾而失真的ppg信號進行分析,并試圖重構隨心率變化產生的波形,然后根據重構的波形計算得到心率。這些方案的不足在于,由于重構的波形的時間長度有限,因此其僅僅只能在短時間運動時還原出比較清晰的波形,一般不超過5秒;而一旦運動時間超過5秒,則其重構后的波形的有效性則會大大降低,進而使得計算得到的心率誤差較大。
綜上,現有技術中提出的上述消除ppg信號中運動干擾的方案均無法消除連續的運動干擾,不能在連續的運動干擾下獲取準確的心率。
技術實現要素:
本發明實施例的目的在于提供一種基于ppg信號的心率檢測方法及系統,旨在解決上述現有技術中提出的消除ppg信號中運動干擾的方案均無法消除連續的運動干擾,不能在連續的運動干擾下獲取準確的心率的問題。
本發明實施例是這樣實現的,一種基于ppg信號的心率檢測方法,包括:
采用ppg傳感器根據待測人體的心率變化輸出對應的心率波形;
對所述心率波形進行傅里葉變換,以獲取與所述心率波形對應的心率頻譜;
在所述心率頻譜的心率頻段內定位三個最高峰,并將所述三個最高峰所對 應的頻率與前一次心率進行比較,將頻率最接近前一次心率的心率峰作為當前心率峰;
將所述當前心率峰所對應的頻率作為所述待測人體的當前心率輸出。
在本發明實施例所述的基于ppg信號的心率檢測方法中,在所述心率頻譜的心率頻段內定位三個最高峰,并將所述三個最高峰所對應的頻率與前一次心率進行比較,將頻率最接近前一次心率的心率峰作為當前心率峰之后還包括:
計算所述當前心率峰所對應的頻率與前一次心率的差值;
判斷所述差值是否大于預設值;
若所述差值大于所述預設值,則舍棄所述當前心率峰所對應的頻率,并將所述前一次心率作為當前心率輸出;
若所述差值小于或等于所述預設值,則將所述當前心率峰所對應的頻率作為所述待測人體的當前心率輸出。
在本發明實施例所述的基于ppg信號的心率檢測方法中,所述預設值為30bpm。
在本發明實施例所述的基于ppg信號的心率檢測方法中,所述采用ppg傳感器根據待測人體指定部位處的心率變化輸出對應的心率波形之后還包括:
采用運動傳感器監測所述待測人體是否處于靜止狀態,若所述待測人體處于靜止狀態,則直接根據所述ppg傳感器輸出的心率波形計算所述待測人體的心率,并將該心率作為當前心率獨立輸出。
在本發明實施例所述的基于ppg信號的心率檢測方法中,所述ppg傳感器為反射式或透射式ppg傳感器。
本發明實施例的另一目的在于提供一種基于ppg信號的心率檢測系統,包括:
ppg傳感器,用于根據待測人體的心率變化輸出對應的心率波形;
fft變換模塊,用于對所述心率波形進行傅里葉變換,以獲取與所述心率波形對應的心率頻譜;
心率峰定位模塊,用于在所述心率頻譜的心率頻段內定位三個最高峰,并將所述三個最高峰所對應的頻率與前一次心率進行比較,將頻率最接近前一次心率的心率峰作為當前心率峰;
心率輸出模塊,用于將所述當前心率峰所對應的頻率作為所述待測人體的當前心率輸出。
在本發明實施例所述的基于ppg信號的心率檢測系統中,還包括誤差計算模塊,用于:
計算所述當前心率峰所對應的頻率與前一次心率的差值;
判斷所述差值是否大于預設值;
若所述差值大于所述預設值,則控制所述心率輸出模塊舍棄所述當前心率峰所對應的頻率,并將所述前一次心率作為當前心率輸出;
若所述差值小于或等于所述預設值,則控制所述心率輸出模塊將所述當前心率峰所對應的頻率作為所述待測人體的當前心率輸出。
在本發明實施例所述的基于ppg信號的心率檢測系統中,所述預設值為30bpm。
在本發明實施例所述的基于ppg信號的心率檢測系統中,還包括:
運動傳感器,用于監測所述待測人體是否處于靜止狀態,若所述待測人體處于靜止狀態,則控制所述心率輸出模塊根據所述ppg傳感器輸出的心率波形計算所述待測人體的心率,并將該心率作為當前心率獨立輸出。
在本發明實施例所述的基于ppg信號的心率檢測系統中,所述ppg傳感器為反射式或透射式ppg傳感器。
實施本發明實施例提供的一種基于ppg信號的心率檢測方法及系統具有以下有益效果:
本發明實施例由于首先采用ppg傳感器根據待測人體的心率變化輸出對應的心率波形;然后對所述心率波形進行傅里葉變換,以獲取與所述心率波形對應的心率頻譜;最后在所述心率頻譜的心率頻段內定位三個最高峰,并將所 述三個最高峰所對應的頻率與前一次心率進行比較,將頻率最接近前一次心率的心率峰作為當前心率峰,并將所述當前心率峰所對應的頻率作為所述待測人體的當前心率輸出,從而能夠克服現有技術中存在的無法消除連續的運動干擾的問題,即使在長時間的持續運動干擾下也能夠計算得出準確的心率。
附圖說明
圖1是本發明第一實施例提供的一種基于ppg信號的心率檢測方法的具體實現流程圖;
圖2是本發明第二實施例提供的一種基于ppg信號的心率檢測方法的具體實現流程圖;
圖3是本發明第三實施例提供的一種基于ppg信號的心率檢測系統的結構示意圖。
具體實施方式
為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。
圖1是本發明第一實施例提供的一種基于ppg信號的心率檢測方法的具體實現流程圖。參見圖1所示,本發明第一實施例提供的一種基于ppg信號的心率檢測方法,包括:
在s101`中,采用ppg傳感器根據待測人體的心率變化輸出對應的心率波形。
在本實施例中,所述ppg傳感器可以內嵌于可穿戴設備,例如:指環、腕帶或者智能手表中,根據待測人體手腕處的血容量的變化輸出對應的心率波形。進一步的,所述ppg傳感器可以為反射式ppg傳感器或者透射式ppg傳感器。
在s102中,對所述心率波形進行傅里葉變換,以獲取與所述心率波形對應 的心率頻譜。
圖2示出了一段30秒長不包含運動干擾心率頻譜;圖3示出了一段30秒長不包含運動干擾心率頻譜。參見圖2和圖3所示,在頻域上雖然心率也受到了運動干擾,但是心率依然保持了一個較為清晰的波峰,我們仍然有機會通過定位心率峰而獲得準確的心率。所以,在本實施例中,當我們在通過ppg傳感器采集到待測人體的心率波形后將其通過傅里葉變換轉換為頻域信號,以便后續通過在頻域上定位心率峰來獲取準確的心率。
在s103中,在所述心率頻譜的心率頻段內定位三個最高峰,并將所述三個最高峰所對應的頻率與前一次心率進行比較,將頻率最接近前一次心率的心率峰作為當前心率峰。
在本實施例中,所述心率頻段為0.83~3.67hz,所以當我們獲取包含有運動干擾的心率頻譜后,首先定位在0.83~3.67hz頻段內的三個最高峰,然后分別將三個最高峰所對應的頻率與基于ppg信號的心率檢測系統輸出的前一次心率進行比較,由于心率計算的間隔是1秒,所以相鄰兩次輸出的心率不會有較大的變化,所以我們將頻率最接近前一次心率的心率峰作為當前心率峰。需要說明的是,在本實施例中,心率檢測系統首次輸出的心率是在待測人體保持靜止的情況下根據ppg傳感器輸出的心率波形直接計算得到的,所述心率監檢測系統中內置有用于檢測待測人體是否處于靜止狀態的運動傳感器。
在s104中,將所述當前心率峰所對應的頻率作為所述待測人體的當前心率輸出。
在本發明實施例中,當獲取當前心率峰后,我們可以根據所述當前心率峰在所述心率頻譜中獲取與其對應的頻率,并對所述頻率進行單位換算后得到待測人體的當前心率值后輸出。
以上可以看出,本發明實施例提供的一種基于ppg信號的心率檢測方法,由于首先采用ppg傳感器根據待測人體的心率變化輸出對應的心率波形;然后對所述心率波形進行傅里葉變換,以獲取與所述心率波形對應的心率頻譜;最 后在所述心率頻譜的心率頻段內定位三個最高峰,并將所述三個最高峰所對應的頻率與前一次心率進行比較,將頻率最接近前一次心率的心率峰作為當前心率峰,并將所述當前心率峰所對應的頻率作為所述待測人體的當前心率輸出,從而能夠克服現有技術中存在的無法消除連續的運動干擾的問題,即使在長時間的持續運動干擾下也能夠計算得出準確的心率。
圖2是本發明第二實施例提供的一種基于ppg信號的心率監測方法的具體實現流程圖。參見圖2所示,相對于圖1所示實施例,本實施例在所述心率頻譜的心率頻段內定位三個最高峰,并將所述三個最高峰所對應的頻率與前一次心率進行比較,將頻率最接近前一次心率的心率峰作為當前心率峰之后還包括:
在s204中,計算所述當前心率峰所對應的頻率與前一次心率的差值;
在s205中,判斷所述差值是否大于預設值,若所述差值大于所述預設值,則進入步驟s206-1;若所述差值小于或等于所述預設值,則進入步驟s206-2;
在s206-1中,舍棄所述當前心率峰所對應的頻率,并將所述前一次心率作為當前心率輸出;
在s206-2中,將所述當前心率峰所對應的頻率作為所述待測人體的當前心率輸出。
在本發明實施例中,由于在心率頻段中定位三個最高峰時,有小概率的心率峰不在這三個心率峰之中,所以如果當前心率峰的頻率與系統前一次輸出的頻率差異大于預設值,則舍棄當前心率峰所對應的頻率,將前一次心率作為當前心率輸出,這樣可以防止心率無算,進一步的保證系統輸出的心率的準確性。優選的,在本實施例中,所述預設值為30bpm。
進一步的,在本實施例中,在采用ppg傳感器根據待測人體的心率變化輸出對應的心率波形之后還可以包括:
采用運動傳感器監測所述待測人體是否處于靜止狀態,若所述待測人體處于靜止狀態,則直接根據所述ppg傳感器輸出的心率波形計算所述待測人體的心率,并將該心率作為當前心率獨立輸出。
在本實施例中,由于系統在心率的檢測過程中每次都會引用前一次心率作為當前心率的參考值,隨著誤差的積累可能會出現心率峰不在三個最高峰中并且三個最高峰的頻率與前一次心率的差異均小于預設值,這樣會導致心率輸出小幅度偏離實際值,而后續的計算偏移逐漸累加,使得出現較大的誤差,所以,我在檢測心率的過程中添加采用運動傳感器檢測待測人體是否處于靜止的狀態,當檢測到待測人體處于靜止狀態時,則直接根據ppg傳感器輸出的心率波形計算得到待測人體的心率,并將該心率作為當前心率獨立輸出,這樣能夠進一步的確保心率的準確性,減少測得心率的誤差。
需要說明的是本實施例中步驟s201~s203與圖1所示實施例中的步驟s101~s103完全相同,因此在此不再累述。
以上可以看出,相對于上一實施例,本實施例提供的一種基于ppg信號的心率檢測方法不僅能夠消除長時間的連續運動干擾,而且還能夠進一步的保證輸出心率的準確性,減少測得心率的誤差。
圖3是本發明第三實施例提供的一種基于ppg信號的心率檢測系統的結構示意圖,該系統用于運行圖1~圖2所示實施例提供的方法,在具體實現時,該系統可位于腕帶、手表以及指環等可穿戴設備中。為了便于說明僅僅示出了與本實施例相關的部分。
參見圖3所示,本實施例提供的一種基于ppg信號的心率檢測系統,包括:
ppg傳感器1,用于根據待測人體的心率變化輸出對應的心率波形;
fft變換模塊2,用于對所述心率波形進行傅里葉變換,以獲取與所述心率波形對應的心率頻譜;
心率峰定位模塊3,用于在所述心率頻譜的心率頻段內定位三個最高峰,并將所述三個最高峰所對應的頻率與前一次心率進行比較,將頻率最接近前一次心率的心率峰作為當前心率峰;
心率輸出模塊4,用于將所述當前心率峰所對應的頻率作為所述待測人體的當前心率輸出。
可選的,所述的基于ppg信號的心率檢測系統還包括誤差計算模塊5,用于:
計算所述當前心率峰所對應的頻率與前一次心率的差值;
判斷所述差值是否大于預設值;
若所述差值大于所述預設值,則控制所述心率輸出模塊4舍棄所述當前心率峰所對應的頻率,并將所述前一次心率作為當前心率輸出;
若所述差值小于或等于所述預設值,則控制所述心率輸出模塊4將所述當前心率峰所對應的頻率作為所述待測人體的當前心率輸出。
可選的,所述預設值為30bpm。
可選的,所述的基于ppg信號的心率檢測系統還包括:
運動傳感器6,用于監測所述待測人體是否處于靜止狀態,若所述待測人體處于靜止狀態,則控制所述心率輸出模塊4根據所述ppg傳感器1輸出的心率波形計算所述待測人體的心率,并將該心率作為當前心率獨立輸出。
可選的,所述ppg傳感器1為反射式或透射式ppg傳感器。
需要說明的是,本發明實施例提供的上述系統中各個模塊,由于與本發明方法實施例基于同一構思,其帶來的技術效果與本發明方法實施例相同,具體內容可參見本發明方法實施例中的敘述,此處不再贅述。
因此,可以看出本發明實施例提供的一種基于ppg信號的心率檢測系統,同樣由于首先采用ppg傳感器根據待測人體的心率變化輸出對應的心率波形;然后對所述心率波形進行傅里葉變換,以獲取與所述心率波形對應的心率頻譜;最后在所述心率頻譜的心率頻段內定位三個最高峰,并將所述三個最高峰所對應的頻率與前一次心率進行比較,將頻率最接近前一次心率的心率峰作為當前心率峰,并將所述當前心率峰所對應的頻率作為所述待測人體的當前心率輸出,從而能夠克服現有技術中存在的無法消除連續的運動干擾的問題,即使在長時間的持續運動干擾下也能夠計算得出準確的心率。
以上所述僅為本發明的較佳實施例而已,并不用以限制本發明,凡在本發 明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明的保護范圍之內。