본문 바로가기
STEM - 학술세미나/전기정보공학

스마트 워치들은 우리의 심박수와 호흡을 어떻게 측정하는 걸까?

by STEMSNU 2021. 6. 12.

 

 

안녕하세요? STEM 12기 손진아입니다.


여러분, 혹시 핸드폰으로 걸음 수를 측정해보거나 스마트 워치로 심박수를 재본 경험이 있나요? 저만 해도 스마트워치로 걸음 수, 심박수, 호흡 등 다양한 정보들을 기록하는데요, 최근에는 이렇게 다양한 생체 신호를 측정하기 위한 웨어러블 디바이스, IoT 디바이스들의 등장과 더불어 여러 건강 관련 어플들이 등장하고 있습니다.

그래서 오늘은 그 중에서도 PhotoPlethysmoGraphy(PPG)를 활용해서 심박수와 호흡수를 측정하는 원리에 대해 알아보려고 합니다! 글 순서는 아래와 같습니다.

  • PPG
    • PPG란?
    • PPG의 기본 원리
    • 스마트폰, 스마트 워치 속의 PPG
  • PPG 활용하기
    • PPG로 심박수 측정하기
    • PPG로 호흡수 측정하기
    • PPG의 한계점 & 해결책

PPG (PhotoPlethysmoGraphy)

먼저, PPG는 무엇인지, 어떤 원리로 작동하는지, 그리고 스마트폰과 스마트워치에서 활용되고 있는지 알아보겠습니다.

PPG란?

PPG(PhotoPlethysmoGraphy)는 피부 근처에 있는 혈관들에서의 혈류량 변화를 측정하기 위한 기술입니다. 아래는 PPG 센서의 모습인데요, 크게 Photodiode와 초록빛 LED로 이뤄져있습니다.

PPG의 기본 원리

그렇다면 PPG에서는 이 2가지로 어떻게 혈류량 변화를 측정할까요?

먼저, 초록빛 LED에서 빛을 피부에 쏘게 되면 초록색 LED 빛 중 일부는 혈관에서 흡수되고 일부는 반사되어 나오는데 이 반사되어 나오는 빛을 photodiode에서 측정함으로써 얼마나 많은 양이 혈관에 흡수되었는지 측정하게 됩니다. 혈관에서 얼마나 많은 빛이 흡수되었는지에서 어떻게 혈류량 변화를 알아낼 수 있는걸까요?

위의 그래프는 Photodiode에서의 측정에 기반하여 시간에 따라 얼마나 많은 빛이 흡수되었는지 측정한 그래프입니다. 여기서 볼 수 있듯이, 동맥혈에서 흡수되는 양이 주기적으로 변하는데, 이는 심장박동에 의해 동맥에 흐르는 혈류량이 변하기 주기적으로 변하기 때문입니다. 즉, 심장박동 직후 동맥에 피가 많이 흐를 때에는 동맥혈에서 더 많은 양의 빛을 흡수하게 되고, 동맥에 피가 적게 흐를 때에는 혈관에서 상대적으로 빛이 덜 흡수됩니다. 따라서 우리는 이런 흡수량의 추이를 통해서 다양한 정보들을 이끌어내게 됩니다.

스마트폰, 스마트 워치 속의 PPG

그렇다면 이런 PPG는 스마트폰과 스마트워치에서 어떻게 구현이 될까요? 우선 제 스마트 워치를 살펴보겠습니다! 스마트워치에서는 뒷면에 PPG 센서가 설치되어서 심박수를 측정하게 되면 아래와 같이 뒷면에서 초록색 LED 빛이 나오게 됩니다.

스마트워치 외에 스마트폰에서도 PPG를 구현하려한 시도들이 있었는데요, 왼쪽 사진처럼 얼굴에 빛을 쏴서 돌아오는 빛을 측정하는 방식이 있고 후면 카메라와 플래시를 활용하여 PPG를 구현하기도 합니다. 다만 얼굴에 PPG 기술을 적용하는 경우에는 기기와 얼굴 사이 거리가 있다보니 다른 방식들에 비해 다소 더 노이즈가 많다는 단점이 있습니다.

Yan, Bryan & Chan, Christy & Li, Christien & To, Olivia & Lai, William & Tse, Gary & Poh, Yukkee & Poh, Ming-Zher. (2017). Resting and Postexercise Heart Rate Detection From Fingertip and Facial Photoplethysmography Using a Smartphone Camera: A Validation Study. JMIR Mhealth Uhealth. 5. e33. 10.2196/mhealth.7275.

PPG 활용하기

그렇다면 이 PPG로 어떻게 심박수와 호흡수를 알아내는지 살펴보겠습니다.

PPG로 심박수 측정하기

PPG로 심박수를 측정하려면 크게 4단계를 거치게 됩니다.

  1. average green intensity per frame 구하기
    측정하게 되면 그래프의 파란 곡선을 얻게 됩니다.
  2. peak detection algorithm
    아래의 파란 곡선 그림을 보면 주기적으로 뾰족한 peak가 나타나는 것을 볼 수 있습니다. 이를 peak를 찾아내는 알고리즘을 적용하여 그래프의 빨간 선처럼 추출해냅니다.
  3. R-R interval (RRI)
    Peak들을 구하고 나면 연속적인 Peak 사이의 시간 간격을 구할 수 있게 됩니다. 이를 R-R Interval (RRI)라고 부르고 심장박동 주기에 대응됩니다.
  4. 60/RRI를 계산하게 되면, RRI가 60초동안 몇번 나타나는지를 구함으로써 심박수를 구할 수 있습니다.

Jimenez, L., & Gutierrez-Osuna, R. (2013). EXTRACTING HEART RATE AND RESPIRATION RATE USING A CELL PHONE CAMERA.

PPG로 호흡수 측정하기

놀랍게도 PPG를 통해서 호흡수도 구할 수 있는데요, PPG가 혈류양 변화를 측정하는 기술이다보니 이로 어떻게 호흡수를 구할 수 있는지 의아할 수도 있습니다. 하지만 이는 호흡과 심박수 사이의 Respiratory sinus arrhythmia라는 관계 때문에 가능합니다. 명칭은 굉장히 복잡해보이지만, 간단히 얘기하면 숨을 들이쉬는 동안은 심장박동이 빨라지고 숨을 내쉬는 동안은 심장박동이 느려지는 현상입니다. 그래서 이런 현상은 아까 구한 PPG Signal에도 나타나서 PPG Signal에 FFT를 적용하면 이렇게 2개의 진동수를 구할 수 있습니다. 그 중 더 높은 진동수를 가지는 신호가 심박수에 해당하고, 그 다음으로 높은 진동수를 가지는 신호가 호흡수에 해당합니다.

Jimenez, L., & Gutierrez-Osuna, R. (2013). EXTRACTING HEART RATE AND RESPIRATION RATE USING A CELL PHONE CAMERA.

PPG의 한계점 & 해결책

하지만 이런 PPG 기술에도 한계점이 있습니다. 사람마다 웨어러블 디바이스를 착용하는 패턴 (헐겁게 매는지, 꽉 매는지), 움직임 여부에 따라서 정확도가 많이 달라질 수 있습니다. 이를 방지하기 위해서 제시된 해결책 중에서는, 언제 신호가 부정확할지 파악해서 선별적으로 PPG Signal을 사용하는 방식이 있습니다.
그렇다면 어떤 식으로 PPG Signal이 부정확할지 판단할 수 있을까요? 이에 대해 크게 2가지 방법을 살펴보려고 합니다.

    • Accelerometer 이용
      첫번째는 accelerometer를 쓰는 방식입니다. Acceleromater는 주로 핸드폰에서 기기의 위치를 파악해서 걸음수 측정에 많이 사용되는데요, accelerometer 데이터를 분석하면 앉아있는지, 걷고 있는지, 뛰고 있는지 등의 움직임을 알 수 있습니다. 따라서 움직임이 많은 상태이면 PPG signal이 부정확할 확률이 높으니 사용하지 않는 판단을 내리는 방식으로 문제를 해결할 수 있습니다.
    • 빛 강도 이용
      두번째는 빛 강도를 측정하는 방식입니다. 스마트워치를 느슨하게 차게 되면 빛이 새어나가 강도가 약해지는데, 이를 측정하여 빛 강도가 낮고 일정하지 않게 측정되면 PPG Signal을 사용하지 않도록 할 수 있습니다.

이런 방식을 통해서 여러 문제를 해결할 수는 있지만 정확도가 낮을 것으로 판단되는 구간을 버리다보니, 중요한 순간들을 놓칠 수 있다는 문제점이 여전히 있습니다. 가령, 운동을 격하게 할 때의 심박수가 중요한 어플일 경우에는 이 때의 데이터를 활용하지 못하게 된다는 문제가 있습니다. 따라서 움직임이 여전히 심해도 정확히 측정가능한 기술이 앞으로 더 연구되어야 할 것으로 보입니다.

댓글