생체 신호를 포함한 아날로그 주기 신호는 피크의 특성을 갖는다. 또한 Vital sign으로 심박을 활용할 만큼 심전도의 주기를 검출하는 것은 많은 의학적 응용분야에서 중요하기 때문에, 본 논문에서는 다양한 생체 신호(ECG : Electrocardiogram, PPG : Photo-plethysmographic, Respiration, etc.)에 범용적으로 적용가능하고, 신호의 전처리 단계들을 최소화하여 계산량에 이점이 있는 알고리즘을 제안하고 validation DB로서 MIT-BIH 부정맥 데이터베이스를 사용하여 검증하고자 한다.
주변 탐색(Look-around Searching) 알고리즘은 피크 후보 점 주변의 샘플과 관계식을 통해 피크인지 구분한다. 피크 후보 점 전방으로의 관계식을 적용하는 전방의 탐색 구간을 LaP(Look-ahead Period)라고 정의하고, 후방으로의 관계식을 진행하는 후방의 탐색 구간을 LbP(Look-behind Period)라고 정의한다. 전·후방 탐색 구간을 합쳐서 주변 탐색 구간 LAP(Look-Around Period)이라고 정의한다. 전체 탐색 구간 안의 피크점 후보들의 관계는 베이지안 정리를 적용하여 주변 탐색 행렬 LAM(Look-Around Matrix)로 나타낸다.
주변 탐색 알고리즘은 임의의 i 번째 샘플에서 전/후방 관측 구간의 샘플들과 비교를 하게 된다. k는 i 지점에서 전/후방 관측 샘플을 의미한다. 일반적으로 전/후방 주변 관측 구간을 대칭적으로 가정하며, ±k는 관측 구간을 벗어나지 않도록 한다. 베이즈 정리 식을 이용하여 최대 사후 확률 분포 행렬을 만들 수 있다. P(Hi)는 사전 확률로 탐색 구간 내에서 피크일 확률로 균등 확률 분포(1/탐색 구간)로 간주 된다. 탐색 구간에 의해 결정된 k를 피크 분포에 따라 확률 질량 함수를 만들 수 있고, 우도확률(likelihood)은 확률 질량 함수에 의해 결정된 확률로 'Peak'인 경우 k개의 피크 분포에 따라 확률 분포를 따른다. 사후 확률 분포를 나타내는 후보 점 i에서의 행렬의 열(column)은 각 후보 점에서의 사후 확률 분포를 나타내는데, 각 후보 점에서 사후 확률의 최대인 지점에 피크의 분포가 표준화된 값 1.0에 위치에 있어야 피크로 추정이 가능하다.
MIT-BIH 부정맥 데이터베이스를 포함하여 심전도를 계측하여 얻는 신호에서는 부정맥에 의해 피크가 반전된 신호가 포함되어 있을 수 있다. 따라서 반전 신호에서 음(Negative)의 피크를 검출하는 알고리즘은 심박의 주기를 알기 위해 필요하다. 음의 피크를 검출하는 알고리즘 또한 양(Positive)의 피크를 검출하는 주변 탐색 알고리즘과 동일하다. 단 비교하는 관계식이 반대가 된다. 동일한 방법으로 알고리즘을 진행하고, 반전 신호만의 음의 피크를 검출하고 나면, 최종적으로 심전도의 피크를 검출하게 된다.
양의 피크만을 검출했을 때의 결과로 MIT-BIH의 100번 파일의 경우 Sensitivity는 100%, Positive Predictivity는 99.96%였다. 하지만 200번 파일의 경우 Sensitivity는 66.97%이고, Positive Predictivity는 72.65%가 나왔는데, 이는 부정맥에 의해 피크가 반전된 신호가 다량 발생했을 경우이므로 반전 신호의 음의 피크 또한 검출했을 때의 200번 파일의 결과는 Sensitivity가 91.74%, Positive Predictivity가 98.84%이다. 전체 정확도 평균 또한 증가하였는데, 표1의 Sensitivity의 평균은 93.29% 표 2에서의 Sensitivity는 97.68%로 증가하였다.
최대 사후 확률을 추정하여 피크를 검출하는 주변 탐색 알고리즘의 강점은 간단한 알고리즘을 통해 적은 계산량뿐만 아니라, 피크를 특성으로 갖는 생체 신호에 몇 가지 파라미터만 변경하면 범용적으로 사용할 수 있는 점이다. 따라서 향후 웨어러블 디바이스, 디지털 헬스케어 분야에서 피크를 검출하는 용도로 활용되는 것을 기대한다.