Abstract
There have been numerous studies on extracting the R-peak from electrocardiogram (ECG) signals. However, most of the detection methods are complicated to implement in a real-time portable electrocardiograph device and have the disadvantage of requiring a large amount of calculations. R-peak detection requires pre-processing and post-processing related to baseline drift and the removal of noise from the commercial power supply for ECG data. An adaptive filter technique is widely used for R-peak detection, but the R-peak value cannot be detected when the input is lower than a threshold value. Moreover, there is a problem in detecting the P-peak and T-peak values due to the derivation of an erroneous threshold value as a result of noise. We propose a robust R-peak detection algorithm with low complexity and simple computation to solve these problems. The proposed scheme removes the baseline drift in ECG signals using an adaptive filter to solve the problems involved in threshold extraction. We also propose a technique to extract the appropriate threshold value automatically using the minimum and maximum values of the filtered ECG signal. To detect the R-peak from the ECG signal, we propose a threshold neighborhood search technique. Through experiments, we confirmed the improvement of the R-peak detection accuracy of the proposed method and achieved a detection speed that is suitable for a mobile system by reducing the amount of calculation. The experimental results show that the heart rate detection accuracy and sensitivity were very high (about 100%).
심전도(ECG) 신호에서 R-피크를 추출하는 기법에 대하여 많은 연구가 진행 되어 왔으며, 다양한 방법으로 구현되어 왔다. 그러나 이러한 검출 방법 대부분은 실시간 휴대용 심전도 장치에서 구현하기가 복잡하고 어려운 단점이 있다. R-피크 검출을 위해서는 심전도 데이터에 대하여 베이스라인 드리프트 및 상용전원 잡음 제거 등의 적절한 전처리 및 후가공이 필요하며, 특히 적응형 필터를 활용한 기법에서는 적절한 임계값을 선택하는 것이 중요하다. 적응형 필터의 임계값을 추출하는 방식에서는 고정형(Fixed) 및 적응형(adaptive)으로 구분할 수 있다. 고정 임계 값 추출 방식은 고정된 임계값 보다 낮은 값의 입력이 들어오는 경우에 R-피크 값을 감지하지 못하는 경우가 있으며, 적응 임계값 추출 방식은 때때로 잡음에 의한 잘못된 임계값을 도출하여, 다른 파형(P혹은 T파)의 피크를 감지하는 경우도 나타난다. 본 논문에서는 계산상의 복잡성이 적고, 코드 구현이 단순하면서도 잡음에 강인한 R-피크 검출 알고리즘을 제안한다. 제안된 방식은 앞서 설명한 임계값 추출 문제를 해결하기 위해서, 적응형 필터를 사용해, 심전도 신호에서 베이스 라인 드리프트 제거를 하여 적절한 임계값을 계산하도록 한다. 그리고 필터 처리된 심전도 신호의 최소 값과 최대 값을 사용하여 적절한 임계값이 자동으로 추출 되도록 한다. 그런 다음 심전도 신호로부터 R-피크를 검출하기 위해 임계값 아래에서 'neighborhood searching' 기법이 적용된다. 제안된 방법은 R-피크 검출의 정확도를 향상시키고, 계산 량을 줄여 검출 속도가 보다 빨라지도록 하였다. 다음으로 R-피크 값이 검출 되면, R-R interval 등의 값을 이용해 심박 수를 계산할 수 있도록 한다. 실험결과 심박 수 검출 정확도와 감도가 약 100%로 매우 높았음을 확인할 수 있었다.