T 기술기고문

PPG 신호를 사용하는 맥박 변이도 분석 기법을 위한 박동 간격 검출 알고리즘

PPG 신호를 사용하는 맥박 변이도 분석 기법을 위한 박동 간격 검출 알고리즘
 
글/
포루하르 포루잔(Foroohar Foroozan), 아나로그디바이스(Analog Devices, Inc.)
지안 슈 우(Jian Shu (James) Wu), 아나로그디바이스(Analog Devices, Inc.)
마드한 모한(Madhan Mohan), 자스민 인포테크(Jasmin Infotech)
 
 
심전도(electrocardiograms, ECG)를 이용하는 심박 변이도(heart rate variability, HRV) 분석 기술은 심장의 자율 신경 기능 진단용으로 널리 알려진 기법이다. 이보다 전통적인 심장 기능 평가 방법은 광혈류 측정기(photoplethysmography, PPG) 파형을 사용하는 것이다. 이 방법에서는 맥박 변이도(pulse rate variability, PRV)가 HRV를 대신한다. 하지만 PPG 신호 검출용으로 활용할 만한 제대로 된 알고리즘이 없어서 의료 업계에서는 PRV를 활용하여 임상 진단을 제공할 수 없었을 뿐 아니라 수면 단계, 스트레스 상태, 피로도 같은 건강 관련 생체 정보를 측정할 수도 없었다.
 
이 글에서는 PPG 신호를 사용하는 박동 간격 분석 기법을 위한 견고한 최고점(peak) 및 시작점(onset) 검출 알고리즘을 소개한다. 또한, 아나로그디바이스(Analog Devices, ADI)의 다중센서 워치 플랫폼을 사용하여 수집한 대규모 데이터를 통해, 이 새로운 접근법이 ECG 신호를 사용하는 박동 간격 검출 결과보다 높은 커버리지와 감도, 더 낮은 RMSSD(root mean square of successive difference)를 나타내는 것을 확인할 것이다. 

머리말
심박(HR) 모니터링은 많은 웨어러블 및 임상 장비에서 중요한 기능이다. 하지만 박동 간격을 사용해서 연속적인 심박 변이도(HRV)를 측정하는 기능은 아직 이러한 기기에 제공되지 않는다. HRV는 심전도(ECG)에서 얻어지는 심장박동 각 비트간 간격이 시간에 따라 변화하는 것을 나타내는 정보이다. HRV는 자율 신경계의 교감 및 부교감 활동을 나타내는 생체 정보들을 포함하고 HRV는 임상적 진단과 수면 단계, 스트레스 상태, 피로도 같이 건강과 관련한 생체 정보를 측정하기 위한 용도로 널리 사용된다. ECG 측정에는 기술적인 것들이 필요하기 때문에, 사고나 재난 발생 현장이나 전투 현장, 또는 전기적 간섭이 일어날 수 있는 장소 등에서는 ECG 사용이 어려울 수 있다.
 
HRV의 대안으로서, 광혈류 측정기(PPG)로부터 추출한 맥박 변이도(PRV)를 사용할 수 있다. PPG 신호는 사람의 피부에 LED 빛을 비추고, 반사된 빛을 가지고 포토다이오드를 사용하여 혈류로 인한 반사된 신호의 세기 변화를 측정함으로써 얻는다.
 
또한 PPG는 심박, 동맥 혈압, 경직도, 맥박 전이 시간, 맥박 파동 속도, 심장 출력, 동맥 순응성, 주변 저항 같이 심혈관계와 관련한 정보를 제공할 수 있다. 그런데 빈약한 혈액 관류, 주변 빛, 특히 무엇보다 움직임에 의한 신호왜곡(motion artifact, MA)으로 인해서 PPG 기반 알고리즘의 성능이 저하될 수 있다. 이러한 문제를 해결하기 위해서 ADI의 모션 제거 및 주파수 추적 알고리즘 같은 많은 신호 처리 기법들이 제안되고 있다. PPG 센서 가까이에 3축 가속도계 센서를 사용함으로써 MA 잡음을 제거할 수 있다.
 
PRV 분석을 위해서는 PPG 파형으로부터 수축기 최고점, 시작점, 중복맥 같은 중요한 지점들을 추출해야 한다. PPG 파형에서 시작점은 혈액이 심장에서 대동맥으로 뿜어져 나올 때이고, 중복맥은 혈액이 뿜어져 나오는 것이 끝나고 대동맥 판막이 닫히는 때이다. 지금까지는 적어도 부분적으로는 PPG 용으로 제대로 된 검출 알고리즘을 이용할 수 없어서 연구자들이 본격적으로 PPG를 사용해서 PRV 분석을 할 수 없었다. PRV에 관한 이전의 연구는 어떤 것은 기준점을 무시하고 있고, 또 어떤 것은 수축기 최고점을 수작업으로 검출하고, 또 어떤 것은 검증되지 않은 시간 윈도우 기반 알고리즘을 사용해서 맥박 최고점을 구하고 있다.
 
이 글에서는 동맥 혈압(arterial blood pressure, ABP) 파형 용으로 제안된 딜리니에이션(delineation) 기법을 사용하는 견고한 최고점 및 시작점 검출 알고리즘을 소개한다. 손목 착용 웨어러블 기기를 통해 획득한 PPG 신호는 MA, 베이스라인 변동, 반사파, 그 밖에 검출 알고리즘 동작에 영향을 미칠 수 있는 기타 잡음을 포함할 수 있다. 그러므로 먼저 데이터를 전처리를 하고 나서 박동 간격 추출 모델로 전달해야 한다. 이 연구에 사용된 자동 딜리니에이션은 하이브리드 기법으로서, 원시 PPG로부터의 서로 다른 전처리 신호와 이들 신호의 일차 도함수를 사용해서 최고점과 시작점을 추출한다. 이 연구에서는 ADI 워치 플랫폼을 사용해서 PPG 신호와 ECG 신호를 동시에 포착한 대규모 데이터베이스를 사용했다. 이 알고리즘은 메모리 풋프린트 면에서 경량이며 ADI 워치 플랫폼에 임베디드 알고리즘으로 사용할 수 있다. 이 알고리즘은 이미 검증되었으며, 커버리지, 감도, 양성 예측도, RMSSD 같은 지표를 사용하는 ECG 신호로부터 얻은 박동 간격 결과와 비교 검증되었다.



그림 1: 박동 간격 추출 알고리즘 흐름도. (i) 전처리 단계와 (ii)고분해능 박동 간격 추출 단계로 이루어진다.
 
PPG 형태에 기반한 박동 간격 알고리즘
손목 착용형 PPG 신호 용으로 (i) 전처리 단계와 (ii) 고분해능 박동 간격 추출 단계로 이루어진 이 박동 간격 알고리즘에 대해서 좀더 자세히 알아보자. 그림 1은 이 알고리즘의 블록 다이어그램을 나타낸다.
 
전처리
PPG 신호가 주변 조직으로 인한 빈약한 혈액 관류와 MA에 취약하다는 것은 이미 널리 알려져 있다. PPG 분석의 후속 단계로 이러한 요인들의 영향을 최소화하기 위해서 전처리 단계가 필요하다. 이 단계는 다음으로 이루어진다:
  • 프레이밍과 윈도잉
  • 대역통과 필터링(0.4 ~ 4Hz)
  • 신호 레벨을 제한하기 위한 자동 이득 제어(AGC)
  • 신호 스무딩과 베이스라인 완더링 제거
 
T초 윈도우를 사용해서 PPG 입력 데이터를 처리하고 mT0(예를 들어 m = 3/4)이 겹쳐지도록 윈도우를 옮겨서 후속 블록들을 처리한다. 그 다음에는 대역통과 필터를 사용해서 PPG 신호의 고주파수 성분(전원 등)과 모세혈관 밀도, 정맥 혈류량, 체온 변화 같은 저주파수 성분을 제거한다. 그림 2a와 그림 2b는 필터링을 하기 전과 후의 PPG 신호를 보여준다. 이 필터는 컷오프 주파수가 0.4 ~ 4Hz까지다. HR의 기본 주파수는 0.4 ~ 3Hz까지이므로, 이보다 좀더 높은 범위를 사용한다. 필터링된 신호로부터 메디안 필터를 사용해서 순간적인 스파이크를 제거한다. 다음에는 AGC 모듈이 신호 레벨을 ±V 볼트로 제한하고 후속 단계에서 신호의 크기를 검사해서 선택한 최고점을 검사한다. HRV 측정을 위한 계속적인 PPG 측정은 불가피하게 베이스라인 완더링 같은 또 다른 형태의 아티팩트를 일으킨다. 따라서 저역통과 FIR(finite impulse response) 필터를 사용하여 프레임에서 PPG 샘플 어레이를 매끄럽게 해서(그림 2c) 베이스라인 완더링 잡음을 제거하고 딜리니에이션 모듈을 위해 좀더 매끄러워진 신호를 얻을 수 있다.



그림 2: PPG 플롯
 
고분해능 박동 간격 추출 모듈
이 박동 간격 추출 알고리즘은 다음과 같이 이루어진다:
  • 보간
  • 딜리니에이션
  • 고분해능 박동 간격 추출
  • 신호 품질 지표
박동 간격 추출 알고리즘의 정확도를 높이기 위해서 전처리 모듈의 출력을 보간(interpolation) 블록으로 보낸다. t0부터 tT까지의 PPG 세그먼트가 b0부터 bT까지의 박동 간격으로 첫 번째 프레임에 주어지면, 끝점들 사이에 n개의 지점을 사용해서 박동 간격 값을 선형적으로 보간한 다음, b0부터 bT까지 고분해능 박동 간격을 추출할 수 있다(예를 들면 1ms 분해능). 그런 다음 딜리니에이션 모듈이 신호 형태와 주기 정보를 사용해서 최고점과 시작점을 추출한다. 그러므로 박동 간격 검출을 위해서는 수축기 최고점뿐 아니라 시작점과 중복맥 또한 필요하다. 여기서 제안하고 있는 딜리니에이터는 “광혈류 측정기 파형 용의 적응식 딜리니에이터(An Adaptive Delineator for Photoplethysmography Waveforms)”와 “동맥 혈압 파형 용의 자동 딜리니에이터(On an Automatic Delineator for Arterial Blood Pressure Waveforms)” 논문과 이론상 같은 것으로서, 신호의 일차 도함수로부터 변곡점 및 제로 크로싱 점 쌍을 사용해서 손목형 PPG 신호에 맞게 변형했다. 그림 2d에서는 PPG 분석과 관련한 변곡점과 제로 크로싱 점들을 볼 수 있다. 제로 크로싱 점들에 대해서 제로 위상 왜곡 필터를 사용해서 신호를 처리해서 애초 상태와 일치시킴으로써 시작과 끝의 과도 응답을 최소화한다. 이것은 필터링 후에도 시간 도메인 특성이 유지되도록 하기 위한 것이다. PPG 파형의 도함수로부터 시작점은 최대 변곡점 전의 제로 크로싱 점에 해당되며, 수축기 최고점은 변곡점 후의 제로 크로싱에 해당된다. 이 박동 간격 알고리즘에 사용된 신호 품질 지표는 선명도로서, 이것은 신호가 톤을 포함하는 정도를 나타낸다. 이 지표는 원래 필립 맥클리오드(Philip McLeod)와 지오프 와이빌(Geoff Wyvill)의 논문인 “피치를 찾기 위한 스마트한 방법(A Smarter Way to Find Pitch)”에서 제안된 것이다. 이 논문에서는 신호의 주기성을 찾아내기 위해서 정규화 제곱 차이 함수(일종의 자동상관화 함수)를 사용한다.  
 
ADI 손목 착용 워치 플랫폼을 사용한 시험 결과
이 PPG 박동 간격 알고리즘 결과를 ECG 최고점 검출용으로 잘 알려진 알고리즘인 판-톰킨스(Pan-Tompkins) 알고리즘을 사용한 결과와 비교했다. 이를 위해 ADI의 VSM(Vital Signs Monitoring) 손목 착용 워치 플랫폼을 사용해서 데이터를 수집했다. ADI VSM iOS 애플리케이션을 사용해서 블루투스 연결을 통해 이 워치에 접속했다. 이 ADI 워치는 PPG 센서를 내장하고 있으므로, 이를 사용해서 피시험자의 손목에서 PPG 신호를 수집했다. 이 ADI 워치로부터 ECG 신호도 수집했다. 3개의 ECG 전극을 피시험자의 가슴 부위에 부착했다. 이들 전극으로부터의 와이어를 ADI 워치로 연결하고 PPG 신호와 동시에 처리 및 기록했다. 그러므로 이 플랫폼은 PPG 신호와 ECG 신호를 동시적으로 제공할 수 있다. 그림 3a는 데이터 수집에 사용된 ADI 워치이고, 그림 3b는 iOS 앱 인터페이스와 이 플랫폼에서 포착한 샘플 신호이다.


그림 3: ADI 플랫폼과 툴
 
평가 지표와 결과
결과를 비교하기에 앞서 먼저 판- 톰킨스 알고리즘과 이 PPG 박동 간격 알고리즘 출력에서 최고점이 누락되거나 추가된 이상 수치를 제거하는 과정이 필요했다. 이 과정을 거치지 않으면 박동 간격이 비정상적으로 나타나고 부정확한 결과를 얻게 된다. 판-톰킨스 알고리즘에 의해 제공되는 연속적 박동 간격을 검사해서 ECG 신호에서의 이상 수치를 식별했다. 박동 간격이 20% 이상 차이가 나는 ECG 최고점은 이상 수치로 분류했다. 그 다음에는 각각의 ECG 최고점을 PPG 신호의 최고점과 상관화해서 PPG 신호에 있어서 누락되거나 추가된 최고점을 찾아냈다. PPG 최고점이 ECG 최고점과 시간적으로 근접해 있으면 PPG 최고점을 ECG 최고점과 상관화했다. ECG 최고점과 근접한 영역에서 PPG 최고점이 확인되지 않거나 또는 너무 많은 최고점이 식별될 때는 이상 수치로 분류했다.
 
일련의 지표들을 사용해서 이번에 제안한 알고리즘과 판-톰킨스 알고리즘의 박동 간격 값을 비교했다. 이러한 지표들은 (i) 커버리지(공식 1), (ii) 감도 Se(공식 2), (iii) 양성 예측도 P+(공식 3), (iv) RMSSD(공식 4)이다. 그림 4는 비교에 사용된 값들을 시각화한 것이다.

   (1)

   (2)

   (3)

    (4) 

이 공식에서, TP(true positive)는 PPG 알고리즘으로 정확하게 식별된 심박 개수이고, FP(false positive)는 ECG의 실제 심박과 일치하지 않는 PPG 심박 개수이며, FN(false negative)은 PPG 알고리즘이 놓친 심박 개수이다. 심박 간격(interbeat interval, IBI)은 연속적인 ECG 최고점, PPG 최고점, 또는 PPG 시작점 사이의 시간 간격이다.
 
이 알고리즘을 평가하기 위해서, 각각의 피시험자에 대해서 PPG 신호와 ECG 신호를 동시적으로 수집했다. 서로 다른 연령대, 피부색, 체형의 피시험자들에 대한 데이터들이다. 이는 다양한 인구 집단을 반영하기 위한 것이다. 27명(다양한 피부색의 남성과 여성)의 피시험자들에 대해서 2분 30초간 데이터를 포착했다. 피시험자들에게 절반의 시간에는 서게 하고 절반의 시간에는 앉게 했다. 표 1은 박동 간격 알고리즘용 각각의 측정 지표에 대한 평균적인 결과를 보여준다. ECG 신호 결과와 비교하면 커버리지, 감도, 양성 예측도는 83% 이상이고 평균적인 RMSSD 차이는 20ms 미만이라는 것을 알 수 있다.



그림 4: 심박 간격(IBI)을 포함한 ECG 신호와 PPG 신호. 원시 PPG 신호에 대한 박동 알고리즘으로 각각의 최고점과 시작점을 알 수 있다.
 
표 1: 항목별 측정 결과
측정항목 결과
커버리지 83%
감도 87%
양성 예측도 98%
평균 PPG대 ECG RM 12ms


맺음말
이 글에서는 손목 PPG 신호의 PRV 분석을 위한 견고한 최고점 및 시작점 검출 알고리즘을 소개했다. 이 알고리즘은 여러 단계의 전처리 과정들을 사용하며 하이브리드 딜리니에이션 알고리즘을 사용해서 PPG 신호의 기준점들을 검출한다. 이 알고리즘을 시험하기 위한 평가 플랫폼으로서 ADI의 다중 센서 워치를 사용했다. 결과를 보면 ECG HRV와 상당히 일치한다는 것을 알 수 있다. 앞으로도 계속해서 PRV 분석 용으로 모션 제거 알고리즘을 적용하고 박동 누락 문제를 다루는 것을 연구할 계획이다.
 

 
저자 소개
포루하르 포루잔(Foroohar Foroozan)은 2015년 8월에 아나로그디바이스에 입사했다. 신호 처리 공학자로서, 의료 사업부에서 생체 신호 및 가정용 모니터링 시스템과 관련해서 토론토 알고리즘 팀을 이끌고 있다. ADI 입사 전에는 지오테크(Geotech) 연구개발부에서 차세대 공중 전자기 지리물리 실측 시스템용 스마트 필터링 연구를 수행했다. 2012~2013년까지 서니브룩 연구소에서 박사후과정 연구원으로서 뇌 혈관 맵핑용 3D 초고해상도 초음파 영상을 연구했다. 2011년에 캐나다 토론토 소재 요크 대학의 라송드 공학부에서 컴퓨터 과학 박사학위를 취득했다. 주 관심 분야는 생체 신호 시스템과 생의학 영상 같은 생의학 시스템용의 신호 처리와 알고리즘이다. 온타리오 직업 공학 학회 회원이며, IEEE의 선임 회원이다. 문의: foroohar.foroozan@analog.com
 
마드한 모한(Madhan Mohan)은 2005년부터 인도 첸나이 소재 자스민 인포테크(Jasmin Infotech)에서 근무해 왔다. 그 전에는, SRM 대학에서 VLSI 및 디지털 신호 처리 선임 강사로 재직했다. 인도 트리치 소재 바라티다산 대학의 J.J. 공학부에서 전기전자 공학학사를, 같은 도시의 리저널 엔지니어링 칼리지(현 NIT)에서 VLSI 시스템 석사학위를 취득했다. 다양한 DSP 애플리케이션뿐 아니라 오디오 압축 알고리즘, 의료 애플리케이션, 고성능 오디오 신호 처리, 임베디드 시스템 설계, VLSI와 관련해서 풍부한 경험을 쌓고 있다. 문의: madhanmohan.p@jasmin-infotech.com
 
지안 슈(제임스) 우(Jian Shu (James) Wu)는 토론토 대학의 학생으로서, 로봇 공학을 전공하고 있다. 2017년 5월부터 2018년 8월까지 아나로그디바이스에서 인턴으로 근무했다. 주 관심 분야는 알고리즘 개발, 데이터 공학, 수학 모델링이다. 문의: js.wu@mail.utoronto.ca