Heartbeats are important aspects for the study of heart diseases in medical sciences as they provide vital information on heart disorders and abnormalities in heart rhythms. Each heartbeat provides a QRS complex in the electrocardiogram (ECG) which is centered at the R-peak. The analysis of ECG is hindered by low-frequency noise, high-frequency noise, interference from P and T waves, and changes in QRS morphology. This paper presents a new peak detection algorithm that can suppress the noise and adapt to changes in ECG signal morphology for better detection performance. The proposed algorithm is based on median and moving average (MA) filtering, segmentation, time and amplitude thresholds, and statistical false peak elimination (SFPE). The filters are first used in preprocessing to reduce unwanted noise and interference. The data is then divided into smaller segments and each segment is then analyzed using two distinct thresholds, a time axis (x-axis) threshold and an amplitude (y-axis) threshold. Next, the false peaks are eliminated resulting from any residue of noise using an average value of peak-to-peak interval. A post-processing stage is added to eliminate any peak that is detected twice and to search for missed low-amplitude peaks. The proposed method is tested on MIT-BIH arrhythmia and Fantasia databases and provides better results in comparison to several state-of-the-art methods in the field. The mean sensitivity, positive predictivity, and detection error rates for the proposed method are 99.82%, 99.88%, and 0.31%, respectively, for the MIT-BIH arrhythmia database and 99.92%, 99.90%, and 0.18%, respectively, for the Fantasia database.
Read full abstract