
Heart rate variability (HRV) is derived from the R-R interval, which depends on the precise localization of R-peaks within an electrocardiogram (ECG) signal. However, current algorithm assessment methods prioritize the R-peak detection's sensitivity rather than the precision of pinpointing the exact R-peak positions. As a result, it is of great value to develop an R-peak detection algorithm with high-precision R-peak localization. This paper introduces a novel R-peak localization algorithm that involves modifications to the well-established Pan-Tompkins (PT) algorithm. The algorithm was implemented as follows. First, the raw ECG signal X(i) was band-pass filtered (5–35 Hz) to obtain a preprocessed signal Y(i). Second, Y(i) was squared to enhance the QRS complex, followed by a 5 Hz low-pass filter to obtain the QRS envelope, which was transformed into a window signal W(i) by dynamic threshold with a minimum width of 200 ms to mark the QRS complex. Third, Y(i) was used to generate QRS template T(n) automatically, and then the R-peak was identified by a template matching process to find the maximum absolute value of all cross-correlation values between T(n) and Y(i). The proposed algorithm achieved a sensitivity (SE) of 99.78%, a positive prediction value (PPV) of 99.78% and data error rate (DER) of 0.44% in R-peak localization for the MIT-BIH Arrhythmia database. The annotated-detected error (ADE), which represents the error between the annotated R-peak location and the detected R-peak location, was 8.35 ms for the MIT-BIH Arrhythmia database. These results outperformed the results obtained using the classical Pan-Tompkins algorithm which yielded an SE of 98.87%, a PPV of 99.14%, a DER of 1.98% and an ADE of 21.65 ms for the MIT-BIH Arrhythmia database. It can be concluded that the algorithm can precisely detect the location of R-peaks and may have the potential to enhance clinical applications of HRV analysis.
Citation: Diguo Zhai, Xinqi Bao, Xi Long, Taotao Ru, Guofu Zhou. Precise detection and localization of R-peaks from ECG signals[J]. Mathematical Biosciences and Engineering, 2023, 20(11): 19191-19208. doi: 10.3934/mbe.2023848
[1] | Wei Zhong, Li Mao, Wei Du . A signal quality assessment method for fetal QRS complexes detection. Mathematical Biosciences and Engineering, 2023, 20(5): 7943-7956. doi: 10.3934/mbe.2023344 |
[2] | Chunkai Zhang, Yingyang Chen, Ao Yin, Xuan Wang . Anomaly detection in ECG based on trend symbolic aggregate approximation. Mathematical Biosciences and Engineering, 2019, 16(4): 2154-2167. doi: 10.3934/mbe.2019105 |
[3] | Eleonora Sulas, Monica Urru, Roberto Tumbarello, Luigi Raffo, Danilo Pani . Systematic analysis of single- and multi-reference adaptive filters for non-invasive fetal electrocardiography. Mathematical Biosciences and Engineering, 2020, 17(1): 286-308. doi: 10.3934/mbe.2020016 |
[4] | Tetiana Biloborodova, Lukasz Scislo, Inna Skarga-Bandurova, Anatoliy Sachenko, Agnieszka Molga, Oksana Povoroznyuk, Yelyzaveta Yevsieieva . Fetal ECG signal processing and identification of hypoxic pregnancy conditions in-utero. Mathematical Biosciences and Engineering, 2021, 18(4): 4919-4942. doi: 10.3934/mbe.2021250 |
[5] | Weidong Gao, Yibin Xu, Shengshu Li, Yujun Fu, Dongyang Zheng, Yingjia She . Obstructive sleep apnea syndrome detection based on ballistocardiogram via machine learning approach. Mathematical Biosciences and Engineering, 2019, 16(5): 5672-5686. doi: 10.3934/mbe.2019282 |
[6] | Ya'nan Wang, Sen Liu, Haijun Jia, Xintao Deng, Chunpu Li, Aiguo Wang, Cuiwei Yang . A two-step method for paroxysmal atrial fibrillation event detection based on machine learning. Mathematical Biosciences and Engineering, 2022, 19(10): 9877-9894. doi: 10.3934/mbe.2022460 |
[7] | Hongyan Xu . Digital media zero watermark copyright protection algorithm based on embedded intelligent edge computing detection. Mathematical Biosciences and Engineering, 2021, 18(5): 6771-6789. doi: 10.3934/mbe.2021336 |
[8] | Huilin Ge, Yuewei Dai, Zhiyu Zhu, Biao Wang . Robust face recognition based on multi-task convolutional neural network. Mathematical Biosciences and Engineering, 2021, 18(5): 6638-6651. doi: 10.3934/mbe.2021329 |
[9] | Jing Zhang, Baoqun Yin, Yu Zhong, Qiang Wei, Jia Zhao, Hazrat Bilal . A two-stage grasp detection method for sequential robotic grasping in stacking scenarios. Mathematical Biosciences and Engineering, 2024, 21(2): 3448-3472. doi: 10.3934/mbe.2024152 |
[10] | Haonan Zhong, Wendi Wang . Mathematical analysis for COVID-19 resurgence in the contaminated environment. Mathematical Biosciences and Engineering, 2020, 17(6): 6909-6927. doi: 10.3934/mbe.2020357 |
Heart rate variability (HRV) is derived from the R-R interval, which depends on the precise localization of R-peaks within an electrocardiogram (ECG) signal. However, current algorithm assessment methods prioritize the R-peak detection's sensitivity rather than the precision of pinpointing the exact R-peak positions. As a result, it is of great value to develop an R-peak detection algorithm with high-precision R-peak localization. This paper introduces a novel R-peak localization algorithm that involves modifications to the well-established Pan-Tompkins (PT) algorithm. The algorithm was implemented as follows. First, the raw ECG signal X(i) was band-pass filtered (5–35 Hz) to obtain a preprocessed signal Y(i). Second, Y(i) was squared to enhance the QRS complex, followed by a 5 Hz low-pass filter to obtain the QRS envelope, which was transformed into a window signal W(i) by dynamic threshold with a minimum width of 200 ms to mark the QRS complex. Third, Y(i) was used to generate QRS template T(n) automatically, and then the R-peak was identified by a template matching process to find the maximum absolute value of all cross-correlation values between T(n) and Y(i). The proposed algorithm achieved a sensitivity (SE) of 99.78%, a positive prediction value (PPV) of 99.78% and data error rate (DER) of 0.44% in R-peak localization for the MIT-BIH Arrhythmia database. The annotated-detected error (ADE), which represents the error between the annotated R-peak location and the detected R-peak location, was 8.35 ms for the MIT-BIH Arrhythmia database. These results outperformed the results obtained using the classical Pan-Tompkins algorithm which yielded an SE of 98.87%, a PPV of 99.14%, a DER of 1.98% and an ADE of 21.65 ms for the MIT-BIH Arrhythmia database. It can be concluded that the algorithm can precisely detect the location of R-peaks and may have the potential to enhance clinical applications of HRV analysis.
HRV analysis is widely used for cardiovascular health monitoring and disease prediction [1,2]. It is also considered an important indicator to evaluate the control of cardiac autonomic nervous balance [3,4], which is related to physical activity [2], mental stress [1] and sleep health [5,6]. The crux of HRV analysis involves studying the fluctuations in time intervals between successive heartbeats, known as inter-beat intervals. Typically, the inter-beat interval is gauged as the time between two consecutive R-peak (R-R interval or RRi) ECG signals. Given that the precision of HRV analysis is contingent on accurately pinpointing R-peaks within the ECG signal, the development of a high-precision R-peak localization algorithm is of paramount significance.
For over four decades, the field of automated R-peak detection has undergone extensive exploration. Numerous algorithms targeting R-peak or QRS detection have been made available to the public [7,8], leveraging diverse principles like template matching [9,10,11], derivative analysis [12,13], digital filtering [14,15,16], wavelet transform [17,18], Hilbert transform [19,20], morphology classification [21], phase space reconstruction [22] and dynamic thresholding [23,24,25,26,27]. Despite these advancements, formulating a robust and universally accepted algorithm remains a challenge, given the diverse morphological differenes present in ECG signals [28]. The incorporation of machine learning, particularly deep neural networks [29,30,31], has significantly enhanced the sensitivity of R-peak or QRS detection, surpassing the 99.9% mark. However, the crux of the matter is that, instead of accurately pinpointing the chronological localization of R-peaks, current algorithms primarily emphasize sensitivity and overall accuracy in detecting R-peaks, accommodating a certain temporal discrepancy between actual and detected R-peaks [32].
This study centers on developing an algorithm to accurately identify the exact positions of R-peaks within ECG signals. This is achieved by enhancing an existing R-peak detection method. Among the available algorithms, we initiated our work by adapting the PT algorithm [33], which remains widely employed due to its robustness, efficiency and accuracy in R-peak detection [34]. The PT algorithm utilizes a moving-window-integration of 150 ms, a step that can occasionally lead to a random shift in the detected R-peak location. To address the lack of precision in R-peak localization, in particular from noisy or low-quality ECG data, we propose to first roughly localize the QRS complex through the computation and identification of the QRS envelope, and then refine the localization with a template matching method.
The assessment of the proposed technique was carried out using the MIT-BIH Arrhythmia database [35], available through PhysioNet [36]. The database contained 48 thirty-minute records with a sample rate of 360 Hz, which were captured from a group of patients with 22 females and 25 males aged between 23 and 89 years. Notably, some of these records exhibited noticeable morphological distortions, particularly evident in the P and T waves of the ECG signal. Expert cardiologists annotated the database as a point of reference. Each record contained 2 leads, and lead I was used to evaluate the proposed algorithm.
According to the Special Requirements for the Safety and Basic Performance of Dynamic ECG Systems from international standard IEC60601-2-47:2001, it is considered that the R-peak position is correctly detected by an algorithm if the R-peak position obtained by the algorithm is within 150 ms of the annotated position. The proposed algorithm is evaluated in terms of both the sensitivity of R-peak detection and the accuracy of the detected R-peak location. Sensitivity (Se), positive prediction value (PPV) and detection error rate (DER) are calculated by Eq (1) for the evaluation of R-peak detection [32]:
Se=TPTP+FN×100%;PPV=TPTP+FP×100%;DER=FN+FPTP+FN×100% | (1) |
where TP (true positive) refers to the number of correctly detected R-peaks, FN (false negative) refers to the number of undetected R-peaks which exist in annotation and FP (false positive) refers to the number of falsely detected R-peaks which do not exist in annotation (i.e., > 150 ms away from any annotated R-peaks).
The accuracy of the detected R-peak location is evaluated by the annotated-detected error (ADE) with unit ms calculated by Eq (2) [32]:
ADE=√1TPTP∑n=1(Kn−Dn)2∗Ts | (2) |
where Kn refers to the annotated R-peak location, Dn refers to the detected R-peak location and Ts refers to ECG signal sampling period with unit ms.
The R-peak position detected by the algorithm may have a group time delay with the annotated R-peak position. The final R-peak position group time delay needs to be compensated once for best alignment between the detected R-peaks and the annotated R-peaks with a fixed shift of several samples in each record. The group time delay is related to the filtering operation and also to the spectral characteristics of the QRS complex. Group time delay compensation is only used for fair comparison between different algorithms and has no effect on RRi calculation. Group time delay TD with unit ms can be simply calculated by Eq (3):
TD=[1TPTP∑n=1(Kn−Dn)]∗Ts | (3) |
The PT algorithm consists of 5 processes: band-pass filter (BPF), derivative, squaring, moving window integration (MWI) and R-peak detection [33], as shown in Figure 1.
The 5–15 Hz BPF was achieved by cascading a 15 Hz low-pass filter (LPF) cascaded with a 5 Hz high-pass filter (HPF). LPF was used to remove the high-frequency noise such as electromyogram (EMG) and power line interference [34]. HPF was used to remove the low-frequency interference, such as the baseline wander. Taking the derivative would enhance the slope information of the QRS complex and suppress the low-frequency P-wave and T-waves [34]. The squaring process was applied so that the positive and negative values were not canceled out in the following MWI process, and the QRS complex were further enhanced. The MWI process was performed with a 150 ms integration window to acquire the envelope of the R-wave. The 150-ms window width is used since it is slightly larger than that of a normal QRS complex for better adaptivity. We chose a third-party PT algorithm from NeuroKit [37] as a reference for performance evaluation. The source code is publicly available in Python on www.github.com.
In the PT algorithm, the MWI process may result in an R-peak location shift because the maximum slope position of the rising edge of the integration waveform was not the precise R-peak temporal location [33]. The precise R-peak is on the point of minimum slope position of the rising edge of integration waveform in theory, which will be illustrated in discussion section. In addition, the 5–15 Hz BPF may result in distortion of QRS complex which will also be illustrated in the discussion section. These processes could result in temporal shifts of R-peaks from their real positions and need to be further improved for more precise localization of R-peaks.
The proposed algorithm includes three stages (Figure 2). The first is the preprocessing stage, where the raw ECG signal is filtered by a 5–35 Hz BPF, which is achieved by a 35 Hz LPF cascaded with a 5 Hz HPF. The second stage calculates a window that marks the QRS complex, including 3 processes: squaring, 5 Hz LPF and windowing. The third stage is the template matching stage, in which a program auto-selected QRS template is taken to localize the R-peak by finding the maximum moving-window cross-correlation (CC) with the windowed pre-processed ECG signal.
The windowing stage is inspired from the PT algorithm. A 5–35 Hz pass band is used here instead of the 5–15 Hz pass band for better performance and adaptability. The derivative process can highlight the slope characteristic of the QRS complex, but can also induce a phase shift, so it is not used in our algorithm. The MWI process is replaced by a forward-backward digital 5 Hz LPF for better noise filtering and zero-time delay. After the windowing transformation of L(i), windows with 200-ms width are generated in accordance with the center of the QRS envelopes.
The template matching stage is an improvement for precise R-peak position detection. The QRS template is generated by automatic selection among the first five QRS windows from each ECG recording Y(i). Among the first five QRS complexes inside the window, the one with the median R-peak amplitude (absolute value) is selected. A 120 ms segment from the selected ECG waveform symmetrical about the R-peak position is taken as the template. One hundred twenty ms is determined because the width of 120 ms is the maximum width of normal QRS complexes [38]. The QRS template has a window width of N = 43 samples with a 360 Hz sampling rate, where N must be an odd number to ensure that the R-peak position is centered.
The proposed method was implemented on Python 3.9 software and evaluated over the MIT-BIH Arrhythmia database to compare with the state-of-the-art PT algorithm.
The filters used in the algorithm are all second-order forward-backward Butterworth infinite impulse response (IIR) filters with zero-phase delay. The forward-backward filtering processes are implemented as Eq (4) to Eq (6):
Z(i)=b0⋅X(i)+b1⋅X(i−1)+b2⋅X(i−2)−c1⋅Z(i−1)−c2⋅Z(i−2) | (4) |
Z(i)=Z(−i) | (5) |
Y(i)=b0⋅Z(i)+b1⋅Z(i−1)+b2⋅Z(i−2)−c1⋅Y(i−1)−c2⋅Y(i−2) | (6) |
where X(i) is the original ECG data, Y(i) is the filtered signal and b0, b1, b2, c1, c2 are filter parameters. Equations (4) and (6) are difference equations of the IIR filter. Equation (5) is included to reverse Z(i) and pass it through the IIR filter again for zero-phase delay.
Here, the 5–35 Hz BPF process is achieved by a 35 Hz LPF cascaded with a 5 Hz HPF. All filters are implemented with SciPy.signal.sosfiltfilt function available in Python. The first 4 s segment from record 209 was used to display the results of this stage, as shown in Figure 3.
This stage calculates a window to mark the QRS complex in each ECG beat. First, the Y(i) signal is squared to obtain S(i) according to Eq (7), which enhances the QRS complex:
S(i)=Y(i)2 | (7) |
Second, S(i) passes through a 5 Hz low-pass filter to obtain L(i) as the envelope of the QRS complex. Third, L(i) is converted into the window signal W(i) through dynamic thresholding. W(i) is composed of "0" and "1", where "1" indicates the interval of QRS window. The conversion logic is shown as Eqs (8) and (9):
D(n)=M(n)+D(n−1)∗(n−1)n | (8) |
W(i)={1,L(i)>max(0.3∗M(n)+0.1∗D(n),0.05∗A(n))0,L(i)≤max(0.3∗M(n)+0.1∗D(n),0.05∗A(n)) | (9) |
where M(n) is the maximum value of the n-th 400 ms window, D(n) is the average of all past maximum value of windows and A(n) is the maximum value of the 2 s segment of the signal (five consecutive 400 ms windows). W(i) is set to "1" or "0" according to Eq (9). The window threshold D(n) is dynamically updated every 400 ms according to Eq (8) and A(n) is updated every 400 ms with the forward-moving 2 s segment. We also verified the performance of different window widths, such as 200,300,400 and 500 ms, in which the 400 ms window had the best result.
The 400 ms window segmentation would cause some QRS complexes to be split, resulting in duplicate windows. Hence, W(i) was further processed to remove small windows resulting from window segmentation. Small-width windows, whose width were less than 1/4 of the average window width, were removed. And, the window with the smaller width was removed when there was another window within 0.4 s. Finally, the windows were symmetrically widened to 200 ms (72 samples for 360 Hz sample rate) about the center position. The windows whose width were greater than 200 ms remained unchanged. Figure 4 shows the first 4 s segment from record 209 as an example.
The QRS template is an N-sample time series T(n) extracted from Y(i). The CC is calculated by Eq (10):
C(i)=∑jn=−j(T(n)−¯T)(Y(i+n)−¯Y)√∑jn=−j(T(n)−¯T)2∑jn=−j(Y(i+n)−¯Y)2 | (10) |
where the parameter j=(N−1)/2 is half the QRS window width. C(i) is the CC result of moving window correlation between QRS template T(n) and Y(i).
The R-peak location (R(k) where k is the index of R-peaks number) is determined by finding the largest CC (Cp(k)). Figure 5 shows the first 4 s segment from record 209 as an example. R(k) and Cp(k) were further processed to reduce false detection of R-peaks. When the RRi is less than 0.4 times the average RRi, remove the corresponding R-peak with the smaller Cp value. The Cp(k) is used to select the R-peak because it shows the similarity of QRS complexes with the QRS template and may be used as an indicator for the reliability of R-peak detection. The final complete Cp(k) of record 209 was showed in Figure 6.
ECG signals are highly susceptible to external interference and noise, which often leads to distortions in the ECG waveform. This introduces significant challenges in detecting R-peaks accurately. Most QRS detection algorithms are structured around three essential steps: denoising, R-peak enhancement and R-peak detection [39]. The algorithm proposed in this paper aligns with this strategy as well. The initial preprocessing stage serves the purpose of noise reduction, followed by the application of windowing to enhance R-peaks. Ultimately, the template matching stage is used for R-peak detection. The 5–35 Hz band-pass filter effectively captures the spectrum energy of the QRS complex while preserving the essential morphology of QRS and simultaneously attenuating interference and noise. Employing the template matching technique stands out as a potent method for precisely identifying the exact positions of R-peaks.
The performances of the proposed algorithm on the Arrhythmia database are shown in Appendix Table A1. TB represents the total number of R-peaks annotated in the record. DB represents the total number of detected R-peaks. TD is the group time delay between TB and DB with an integer number of samples. DB is 109491, only 3 less than TB of 109494. Average TD is only 0.17 ms (0.0625 sample). The maximum FP value was 139 and the maximum FN value is 43. In general, the number of false detections (FP = 242) was slightly less than the number of missed detections (FN = 245).
The performances of the PT algorithm on the Arrhythmia database were shown in Appendix Table A2. The maximum FP value was 591 and the maximum FN value was 482, appearing in the same record, 108. In general, the number of false detections (FP = 934) was less than the number of missed detections (FN = 1233). The average TD of the PT algorithm was 30.49 ms (10.975 samples), much larger than that of the proposed algorithm, which was 0.17 ms on average.
Performance comparison between the two algorithms was also evaluated with different tolerance for R-peak detection, as shown in Table 1, in which: 150 ms was the time of 54 sample periods, 25 ms was the time of 9 sample periods, 2.78 ms was the time of 1 sample period. The proposed algorithm outperformed the PT algorithm on all metrics.
Pan-Tompkins Algorithm | Proposed Algorithm | |||||||
Tolerance | Se(%) | PPV(%) | DER(%) | ADE(ms) | Se(%) | PPV(%) | DER(%) | ADE(ms) |
150 ms | 98.87 | 99.14 | 1.98 | 21.65 | 99.78 | 99.78 | 0.44 | 8.35 |
25 ms | 79.41 | 79.63 | 40.90 | 13.37 | 96.82 | 96.82 | 6.36 | 3.17 |
2.78 ms | 11.85 | 11.88 | 176.03 | 2.42 | 86.18 | 86.18 | 27.64 | 1.86 |
Note: TB: total beats annotated; Se: sensitivity; PPV: positive prediction value; DER: detection error rate; ADE: annotated-detected error. |
The main purpose of this algorithm is to improve the detection accuracy of R-peak location, paying less attention to Se/PPV/DER metrics. Yet, the algorithm derives satisfying performance in the Se/PPV/DER metrics on the Arrhythmia database. Additionally, the proposed algorithm completely surpassed the comparison algorithm in the accuracy of R-peak location [32]. Refer to Table 2 for details.
Method | TB | Se(%) | PPV(%) | DER(%) | ADE(ms) |
Proposed | 109,494 | 99.78 | 99.78 | 0.44 | 8.35 |
Kai Zhao et al. [32] | 109,966 | 99.81 | 99.88 | 0.31 | 12.2 |
* Pan and Tompkins [33] | 109,966 | 99.13 | 99.63 | 1.24 | 13.4 |
* Indicates that the data is quoted from literature [32]. |
The introduced algorithm showcased superior performance over the PT algorithm across all metrics including SE, PPV, DER and ADE when tested on the Arrhythmia database. Notably, the achieved ADE of 8.35 ms surpassed the 12.2 ms reported in a comparative study [32]. To optimize the integrity of QRS morphology, a 5–35 Hz BPF was employed in the proposed algorithm. Furthermore, the template matching method was proved an effective strategy to identify the precise location of R-peaks.
The Arrhythmia database is widely used to evaluate the QRS detection algorithm, because it includes various arrhythmic QRS complexes, different types of noise and various QRS morphology with detailed annotation. However, the Arrhythmia database still has the problem of inaccurate R-peak annotation [40]. A large number of literatures with nearly perfect performance also have a problem with non-standardized R-peak numbers. There are various different values for the total number of R-peaks suggested for this database, such as 109,494 [10], 109,966 [27], 106,581 [41], 109,475 [42]. The Arrhythmia database have many categories of annotation: "*", "N", "L", "R", "a", "V", "F", "J", "A", "S", " "E", "j", "/", "Q", "e", "n", "f". This paper used 109,494 as the total R-peak number, and the categories excluded in the statistics were: "*", "n". The poor performance in ADE may result from not only the error of R-peak position detected, but also the error of R-peak position annotated. As shown in Figure 7, there are annotation errors in record 104, obviously, which results in detection error in both algorithms, although more in the PT algorithm.
We extracted record 122 and record 115 from the best ADE of the Arrhythmia database, and compared them with record 104 and record 208 from the worst ADE as shown in Table 3. Record 122 and record 115 only have normal beats. While the proportion of the number of "V" categories in TB (total number of R-peaks) is obviously larger in record 208 and record 104, which may be a reason for the poor ADE performance. "V" refers to the category of premature ventricular contract, "/" refers to the paced beat, 'f ' refers to fusion of paced and normal beat. Those kinds of QRS morphology differ from normal QRS morphology (and therefore the QRS template), which could result in degraded performance in template matching. These categories have different QRS templates which are not covered in the proposed method. But, the method still has the ability to detect R-peaks in a wrong position with a lower cross-correlation peak value, which induce detected R-peak shift from the real location and reduce the ADE performance.
File | ADE(ms) | TB | N | V | / | Q | F | f | S |
122 | 1.12 | 2476 | 2476 | ||||||
115 | 1.19 | 1953 | 1953 | ||||||
104 | 16.75 | 2229 | 163 | 2 | 1380 | 18 | 1 | 666 | |
208 | 24.96 | 2955 | 1586 | 992 | 2 | 373 | 2 | ||
Note: normal beats; V: beats of premature ventricular contract; /: paced beats; f: fusion of paced and normal beats; Q: Unclassifiable beats; F: fusion of ventricular and normal beats; S: supraventricular premature beats. |
There is another reason for false R-peak detection in the PT algorithm. The narrow-band BPF would distort the QRS morphology, causing the wrong R-peak position to be detected. Examples are shown in Figure 8. Comparing Figure 8(a), (c), 5–15 Hz BPF could shift the R-peak location forward about 22 samples while R-peak location nearly has no shift with 5–35 Hz BPF. And, the MWI process is another possible reason for R-peak location shift. In Figure 8(b), the blue line is the real R-peak location in raw ECG data, while the red line is the final detected R-peak by the PT algorithm with a shift of 26 samples. In Figure 8(d), the blue line is the real R-peak location in raw ECG data, while the red line is the final detected R-peak by the PT algorithm with a shift of 11 samples. The MWI process will result in a time delay of Trs (R-wave peak to S-wave offset) for R-peak position [33], where Trs is related with the QRS morphology and varies with noise.
This paper presents an enhanced version of the PT algorithm, wherein the inclusion of the QRS template matching substantially enhances the accuracy of R-peak position detection. This advancement is particularly effective in refining the precision of R-peak localization. Moving forward, the potential exists to expand the algorithm's versatility by incorporating various templates for atypical QRS patterns, thereby bolstering its adaptability. The contribution of this study lies in the introduction of a highly precise R-peak position detection algorithm capable of accurately pinpointing R-peak locations. This advancement holds the promise of significantly amplifying the clinical applications of HRV analysis.
The authors declare they have not used Artificial Intelligence (AI) tools in the creation of this article.
The authors wish to acknowledge the funding support from Science and Technology Program of Guangzhou (No. 2019050001), Program for Chang Jiang Scholars and Innovative Research Teams in Universities (No. IRT_17R40), Guangdong Provincial Key Laboratory of Optical Information Materials and Technology (No. 2017B030301007), Guangzhou Key Laboratory of Electronic Paper Displays Materials and Devices (201705030007), MOE International Laboratory for Optical Information Technologies, the 111 Project.
The authors declare there is no conflict of interest.
File | TD(ms) | TB | DB | TP | FP | FN | Se(%) | PPV(%) | DER(%) | ADE(ms) |
100 | 0.00 | 2273 | 2273 | 2273 | 0 | 0 | 100 | 100 | 0 | 2.21 |
101 | 0.00 | 1865 | 1865 | 1862 | 3 | 3 | 99.84 | 99.84 | 0.00 | 2.53 |
102 | 0.00 | 2187 | 2187 | 2187 | 0 | 0 | 100 | 100 | 0 | 10.80 |
103 | 0.00 | 2084 | 2083 | 2083 | 0 | 1 | 99.95 | 100 | 0.00 | 2.32 |
104 | 0.00 | 2229 | 2237 | 2228 | 9 | 1 | 99.96 | 99.60 | 0.00 | 16.75 |
105 | 0.00 | 2572 | 2590 | 2557 | 33 | 15 | 99.42 | 98.73 | 0.02 | 9.54 |
106 | 0.00 | 2027 | 2021 | 2020 | 1 | 7 | 99.65 | 99.95 | 0.00 | 5.30 |
107 | –2.78 | 2137 | 2136 | 2135 | 1 | 2 | 99.91 | 99.95 | 0.00 | 7.47 |
108 | 2.78 | 1763 | 1758 | 1754 | 4 | 9 | 99.49 | 99.77 | 0.01 | 14.95 |
109 | –2.78 | 2532 | 2530 | 2530 | 0 | 2 | 99.92 | 100 | 0.00 | 5.08 |
111 | 0.00 | 2124 | 2123 | 2123 | 0 | 1 | 99.95 | 100 | 0.00 | 5.78 |
112 | 0.00 | 2539 | 2539 | 2539 | 0 | 0 | 100 | 100 | 0 | 2.14 |
113 | 0.00 | 1795 | 1795 | 1795 | 0 | 0 | 100 | 100 | 0 | 1.93 |
114 | 30.56 | 1879 | 1880 | 1876 | 4 | 3 | 99.84 | 99.79 | 0.00 | 8.02 |
115 | 2.78 | 1953 | 1953 | 1953 | 0 | 0 | 100 | 100 | 0 | 1.12 |
116 | 0.00 | 2412 | 2390 | 2387 | 3 | 25 | 98.96 | 99.87 | 0.01 | 2.91 |
117 | –19.44 | 1535 | 1535 | 1535 | 0 | 0 | 100 | 100 | 0 | 6.97 |
118 | 0.00 | 2278 | 2278 | 2278 | 0 | 0 | 100 | 100 | 0 | 3.15 |
119 | 0.00 | 1987 | 1988 | 1987 | 1 | 0 | 100 | 99.95 | 0.00 | 6.00 |
121 | –2.78 | 1863 | 1861 | 1861 | 0 | 2 | 99.89 | 100 | 0.00 | 2.26 |
122 | 0.00 | 2476 | 2476 | 2476 | 0 | 0 | 100 | 100 | 0 | 1.19 |
123 | 0.00 | 1518 | 1518 | 1518 | 0 | 0 | 100 | 100 | 0 | 1.82 |
124 | 0.00 | 1619 | 1619 | 1619 | 0 | 0 | 100 | 100 | 0 | 6.99 |
200 | –5.56 | 2601 | 2601 | 2599 | 2 | 2 | 99.92 | 99.92 | 0.00 | 17.64 |
201 | 0.00 | 1963 | 1942 | 1942 | 0 | 21 | 98.93 | 100 | 0.01 | 4.15 |
202 | 0.00 | 2136 | 2122 | 2122 | 0 | 14 | 99.34 | 100 | 0.01 | 2.47 |
203 | –5.56 | 2980 | 2954 | 2937 | 17 | 43 | 98.56 | 99.42 | 0.02 | 15.28 |
205 | 0.00 | 2656 | 2648 | 2648 | 0 | 8 | 99.70 | 100 | 0.00 | 5.27 |
207 | 0.00 | 1860 | 1991 | 1852 | 139 | 8 | 99.57 | 93.02 | 0.08 | 12.98 |
208 | 8.33 | 2955 | 2939 | 2936 | 3 | 19 | 99.36 | 99.90 | 0.01 | 24.96 |
209 | 0.00 | 3005 | 3005 | 3005 | 0 | 0 | 100 | 100 | 0 | 1.54 |
210 | 0.00 | 2650 | 2623 | 2621 | 2 | 29 | 98.91 | 99.92 | 0.01 | 7.34 |
212 | 0.00 | 2748 | 2748 | 2748 | 0 | 0 | 100 | 100 | 0 | 2.24 |
213 | 0.00 | 3251 | 3248 | 3248 | 0 | 3 | 99.91 | 100 | 0.00 | 5.78 |
214 | 0.00 | 2262 | 2258 | 2258 | 0 | 4 | 99.82 | 100 | 0.00 | 4.60 |
215 | 0.00 | 3363 | 3359 | 3359 | 0 | 4 | 99.88 | 100 | 0.00 | 3.18 |
217 | –13.89 | 2208 | 2205 | 2204 | 1 | 4 | 99.82 | 99.95 | 0.00 | 8.09 |
219 | 0.00 | 2154 | 2154 | 2154 | 0 | 0 | 100 | 100 | 0 | 1.46 |
220 | 2.78 | 2048 | 2048 | 2048 | 0 | 0 | 100 | 100 | 0 | 1.82 |
221 | 0.00 | 2427 | 2425 | 2425 | 0 | 2 | 99.92 | 100 | 0.00 | 2.65 |
222 | 0.00 | 2483 | 2485 | 2483 | 2 | 0 | 100 | 99.92 | 0.00 | 1.81 |
223 | 0.00 | 2605 | 2603 | 2603 | 0 | 2 | 99.92 | 100 | 0.00 | 7.61 |
228 | 0.00 | 2053 | 2062 | 2047 | 15 | 6 | 99.71 | 99.27 | 0.01 | 5.69 |
230 | 2.78 | 2256 | 2256 | 2256 | 0 | 0 | 100 | 100 | 0 | 1.64 |
231 | 0.00 | 1571 | 1570 | 1570 | 0 | 1 | 99.94 | 100 | 0.00 | 1.55 |
232 | 0.00 | 1780 | 1782 | 1780 | 2 | 0 | 100 | 99.89 | 0.00 | 1.68 |
233 | –5.56 | 3079 | 3076 | 3076 | 0 | 3 | 99.90 | 100 | 0.00 | 16.33 |
234 | 0.00 | 2753 | 2752 | 2752 | 0 | 1 | 99.96 | 100 | 0.00 | 0.86 |
Total | 109,494 | 109,491 | 109,249 | 242 | 245 | 99.78 | 99.78 | 0.44 | 8.35 | |
TB: total beats annotated; DB: detected beats by algorithm; TD: Group time delay between TB and DB; TP: true positive, the number of correctly detected R-peaks; FP: false positive, the number of false detected R-peaks; FN: false negative, the number of undetected R-peaks; Se: sensitivity; PPV: positive prediction value; DER: detection error rate; ADE: annotated-detected error. |
File | TD(ms) | TB | DB | TP | FP | FN | Se(%) | PPV(%) | DER(%) | ADE(ms) |
100 | 44.44 | 2273 | 2271 | 2271 | 0 | 2 | 99.91 | 100 | 0.00 | 25.01 |
101 | 30.56 | 1865 | 1868 | 1863 | 5 | 2 | 99.89 | 99.73 | 0.00 | 13.98 |
102 | 22.22 | 2187 | 2187 | 2187 | 0 | 0 | 100 | 100 | 0 | 18.24 |
103 | 36.11 | 2084 | 2080 | 2079 | 1 | 5 | 99.76 | 99.95 | 0.00 | 16.79 |
104 | 16.67 | 2229 | 2273 | 2221 | 52 | 8 | 99.64 | 97.71 | 0.03 | 21.90 |
105 | 0.00 | 2572 | 2599 | 2561 | 38 | 11 | 99.57 | 98.54 | 0.02 | 18.40 |
106 | 25.00 | 2027 | 1996 | 1995 | 1 | 32 | 98.42 | 99.95 | 0.02 | 23.96 |
107 | 50.00 | 2137 | 2135 | 2135 | 0 | 2 | 99.91 | 100 | 0.00 | 26.49 |
108 | 19.44 | 1763 | 1872 | 1281 | 591 | 482 | 72.66 | 68.43 | 0.61 | 43.72 |
109 | 25.00 | 2532 | 2528 | 2527 | 1 | 5 | 99.80 | 99.96 | 0.00 | 24.43 |
111 | 25.00 | 2124 | 2125 | 2123 | 2 | 1 | 99.95 | 99.91 | 0.00 | 21.21 |
112 | 36.11 | 2539 | 2539 | 2539 | 0 | 0 | 100 | 100 | 0 | 32.70 |
113 | 44.44 | 1795 | 1794 | 1793 | 1 | 2 | 99.89 | 99.94 | 0.00 | 24.20 |
114 | 47.22 | 1879 | 1882 | 1876 | 6 | 3 | 99.84 | 99.68 | 0.00 | 15.68 |
115 | 38.89 | 1953 | 1953 | 1952 | 1 | 1 | 99.95 | 99.95 | 0.00 | 10.89 |
116 | 30.56 | 2412 | 2391 | 2387 | 4 | 25 | 98.96 | 99.83 | 0.01 | 16.35 |
117 | 25.00 | 1535 | 1535 | 1533 | 2 | 2 | 99.87 | 99.87 | 0.00 | 22.72 |
118 | 41.67 | 2278 | 2278 | 2274 | 4 | 4 | 99.82 | 99.82 | 0.00 | 25.16 |
119 | 30.56 | 1987 | 1988 | 1986 | 2 | 1 | 99.95 | 99.90 | 0.00 | 25.33 |
121 | 16.67 | 1863 | 1864 | 1858 | 6 | 5 | 99.73 | 99.68 | 0.01 | 23.31 |
122 | 2.78 | 2476 | 2476 | 2475 | 1 | 1 | 99.96 | 99.96 | 0.00 | 15.93 |
123 | 52.78 | 1518 | 1515 | 1513 | 2 | 5 | 99.67 | 99.87 | 0.00 | 18.09 |
124 | 8.33 | 1619 | 1620 | 1619 | 1 | 0 | 100 | 99.94 | 0.00 | 21.26 |
200 | 33.33 | 2601 | 2603 | 2596 | 7 | 5 | 99.81 | 99.73 | 0.00 | 22.39 |
201 | 33.33 | 1963 | 1912 | 1912 | 0 | 51 | 97.40 | 100 | 0.03 | 18.87 |
202 | 22.22 | 2136 | 2128 | 2127 | 1 | 9 | 99.58 | 99.95 | 0.00 | 15.54 |
203 | 19.44 | 2980 | 2957 | 2924 | 33 | 57 | 98.09 | 98.88 | 0.03 | 22.66 |
205 | 25.00 | 2656 | 2649 | 2648 | 1 | 8 | 99.70 | 99.96 | 0.00 | 14.22 |
207 | 36.11 | 1860 | 1919 | 1826 | 93 | 34 | 98.17 | 95.15 | 0.07 | 24.20 |
208 | 38.89 | 2955 | 2658 | 2654 | 4 | 301 | 89.81 | 99.85 | 0.10 | 28.16 |
209 | 41.67 | 3005 | 3005 | 3003 | 2 | 2 | 99.93 | 99.93 | 0.00 | 20.36 |
210 | 27.78 | 2650 | 2607 | 2603 | 4 | 47 | 98.23 | 99.85 | 0.02 | 15.29 |
212 | 13.89 | 2748 | 2749 | 2748 | 1 | 0 | 100 | 99.96 | 0.00 | 18.92 |
213 | 16.67 | 3251 | 3249 | 3249 | 0 | 2 | 99.94 | 100 | 0.00 | 26.62 |
214 | 22.22 | 2262 | 2255 | 2253 | 2 | 9 | 99.60 | 99.91 | 0.00 | 14.22 |
215 | 47.22 | 3363 | 3363 | 3362 | 1 | 1 | 99.97 | 99.97 | 0.00 | 19.16 |
217 | 41.67 | 2208 | 2205 | 2202 | 3 | 6 | 99.73 | 99.86 | 0.00 | 25.10 |
219 | 33.33 | 2154 | 2152 | 2150 | 2 | 4 | 99.81 | 99.91 | 0.00 | 17.94 |
220 | 38.89 | 2048 | 2048 | 2046 | 2 | 2 | 99.90 | 99.90 | 0.00 | 17.17 |
221 | 38.89 | 2427 | 2361 | 2360 | 1 | 67 | 97.24 | 99.96 | 0.03 | 21.64 |
222 | 19.44 | 2483 | 2488 | 2483 | 5 | 0 | 100 | 99.80 | 0.00 | 15.72 |
223 | 33.33 | 2605 | 2603 | 2602 | 1 | 3 | 99.88 | 99.96 | 0.00 | 29.88 |
228 | 19.44 | 2053 | 2080 | 2045 | 35 | 8 | 99.61 | 98.32 | 0.02 | 20.37 |
230 | 50.00 | 2256 | 2255 | 2255 | 0 | 1 | 99.96 | 100 | 0.00 | 15.21 |
231 | 41.67 | 1571 | 1569 | 1568 | 1 | 3 | 99.81 | 99.94 | 0.00 | 29.59 |
232 | 44.44 | 1780 | 1790 | 1776 | 14 | 4 | 99.78 | 99.22 | 0.01 | 25.12 |
233 | 22.22 | 3079 | 3072 | 3072 | 0 | 7 | 99.77 | 100 | 0.00 | 19.89 |
234 | 19.44 | 2753 | 2750 | 2750 | 0 | 3 | 99.89 | 100 | 0.00 | 11.04 |
Total | 109,494 | 109,196 | 108,262 | 934 | 1233 | 98.87 | 99.14 | 1.98 | 21.65 |
[1] |
K. M. Dalmeida, G. L. Masala, HRV features as viable physiological markers for stress detection using wearable devices, Sensors, 21 (2021), 2873. https://doi.org/10.3390/s21082873 doi: 10.3390/s21082873
![]() |
[2] |
T. Dan, H. Yeheng, A. Cole, A. Roger, S. Rashmi, G. Yang, et al., The benefits of heart rate variability (HRV) in the assessment of health and exercise performance, Imaging J. Clin. Med. Sci., 9 (2022), 11–14. https://doi.org/10.17352/2455-8702.000136 doi: 10.17352/2455-8702.000136
![]() |
[3] | A. R. Schwerdtfeger, C. Rominger, Feelings from the heart: Developing HRV decrease-trigger algorithms via multilevel hyperplane simulation to detect psychosocially meaningful episodes in everyday life, Psychophysiology, 58 (2021). https://doi.org/10.1111/psyp.13914 |
[4] | E. Mejía-Mejía, K. Budidha, T. Y. Abay, J. M. May, P. A. Kyriacou, Heart rate variability (HRV) and pulse rate variability (PRV) for the assessment of autonomic responses, Front. Physiol., 11 (2020). https://doi.org/10.3389/fphys.2020.00779 |
[5] |
M. Frasch, Comprehensive HRV estimation pipeline in Python using Neurokit2: Application to sleep physiology, Methodsx, 9 (2022), 101782. https://doi.org/10.1016/j.mex.2022.101782 doi: 10.1016/j.mex.2022.101782
![]() |
[6] | D. Romero, R. Jane, Relationship between sleep stages and HRV response in obstructive sleep apnea patients, in IEEE Engineering in Medicine and Biology Society. Annual International Conference, 2021 (2021), 5535. https://doi.org/10.1109/EMBC46164.2021.9630148 |
[7] |
S. Raj, K. C. Ray, O. Shankar, Development of robust, fast and efficient QRS complex detector: A methodological review, Australas. Phys. Eng. Sci. Med., 41 (2018), 581–600. https://doi.org/10.1007/s13246-018-0670-7 doi: 10.1007/s13246-018-0670-7
![]() |
[8] |
B. Köhler, C. Hennig, R. Orglmeister, The principles of software QRS detection, Eng. Med. Biol. Mag., 21 (2002), 42–57. https://doi.org/10.1109/51.993193 doi: 10.1109/51.993193
![]() |
[9] | B. R. Hopenfeld, Multiple channel electrocardiogram QRS detection by temporal pattern search, preprint, 2021. https://doi.org/10.1101/2021.08.15.456413 |
[10] |
J. Rahul, M. Sora, L. Sharma, A novel and lightweight P, QRS, and T-peaks detector using adaptive thresholding and template waveform, Comput. Biol. Med., 132 (2021), 104307. https://doi.org/10.1016/j.compbiomed.2021.104307 doi: 10.1016/j.compbiomed.2021.104307
![]() |
[11] |
T. Sa, F. B. Reguig, The QRS complex detection using morphological filtering, Arch. Biomed. Sci. Eng., 2019 (2019), 1–6. https://doi.org/10.17352/abse.000011 doi: 10.17352/abse.000011
![]() |
[12] |
T. W. Bae, K. K. Kwon, Efficient real-time R and QRS detection method using a pair of derivative filters and max filter for portable ECG device, Appl. Sci., 9 (2019), 4128. https://doi.org/10.3390/app9194128 doi: 10.3390/app9194128
![]() |
[13] | C. Nayak, S. Saha, R. Kar, D. Mandal, An efficient QRS complex detection using optimally designed digital differentiator, Circuits Syst. Signal Process., 38 (2019). https://doi.org/10.1007/s00034-018-0880-y |
[14] |
S. Tabakov, I. Iliev, V. Krasteva, Online digital filter and QRS detector applicable in low resource ECG monitoring systems, Ann. Biomed. Eng., 36 (2008), 1805–1815. https://doi.org/10.1007/s10439-008-9553-5 doi: 10.1007/s10439-008-9553-5
![]() |
[15] |
N. Bui, G. Byun, The comparison features of ECG signal with different sampling frequencies and filter methods for real-time measurement, Symmetry, 13 (2021), 1461. https://doi.org/10.3390/sym13081461 doi: 10.3390/sym13081461
![]() |
[16] |
L. Bachi, L. Billeci, M. Varanini, QRS detection based on medical knowledge and cascades of moving average filters, Appl. Sci., 11 (2021), 6995. https://doi.org/10.3390/app11156995 doi: 10.3390/app11156995
![]() |
[17] | F. Guendouzi, M. Attari, QRS complex detection in ECG signals using empirical wavelet transform and flower pollination algorithm, Period. Polytech. Electr. Eng. Comput. Sci., 66 (2022). https://doi.org/10.3311/PPee.20535 |
[18] |
K. Daqrouq, A. Alkhateeb, W. Ahmad, E. Khalaf, M. Awad, E. Noeth, et al., A universal ECG signal classification system using the wavelet transform, Neural Network World, 32 (2022), 43–54. https://doi.org/10.14311/NNW.2022.32.003 doi: 10.14311/NNW.2022.32.003
![]() |
[19] | W. Xu, F. Du, A robust QRS complex detection method based on Shannon energy envelope and Hilbert transform, J. Mech. Med. Biol., 22 (2022). https://doi.org/10.1142/S0219519422400139 |
[20] | H. Sharma, K. Sharma, ECG-derived respiration based on iterated Hilbert transform and Hilbert vibration decomposition, Australas. Phys. Eng. Sci. Med., 41 (2018). https://doi.org/10.1007/s13246-018-0640-0 |
[21] |
J. P. D. V. Madeiro, J. A. L. Marques, T. Han, R. C. Pedrosa, Evaluation of mathematical models for QRS feature extraction and QRS morphology classification in ECG signals, Measurement, 156 (2020), 107580. https://doi.org/10.1016/j.measurement.2020.107580 doi: 10.1016/j.measurement.2020.107580
![]() |
[22] |
Y. Li, X. Tang, Z. Xu, H. Yan, A novel approach to phase space reconstruction of single lead ECG for QRS complex detection, Biomed. Signal Process. Control, 39 (2018), 405–415. https://doi.org/10.1016/j.bspc.2017.06.007 doi: 10.1016/j.bspc.2017.06.007
![]() |
[23] |
J. Rahul, M. Sora, L. D. Sharma, Dynamic thresholding based efficient QRS complex detection with low computational overhead, Biomed. Signal Process. Control, 67 (2021), 102519. https://doi.org/10.1016/j.bspc.2021.102519 doi: 10.1016/j.bspc.2021.102519
![]() |
[24] |
T. Nguyen, T. Nguyen, B. Ngo, R peak determination using a WDFR algorithm and adaptive threshold, Appl. Comput. Sci., 18 (2022), 19–30. https://doi.org/10.35784/acs-2022-18 doi: 10.35784/acs-2022-18
![]() |
[25] |
S. Modak, L. Y. Taha, E. Abdel-Raheem, A novel method of QRS detection using time and amplitude thresholds with statistical false peak elimination, IEEE Access, 9 (2021), 46079–46092. https://doi.org/10.1109/ACCESS.2021.3067179 doi: 10.1109/ACCESS.2021.3067179
![]() |
[26] | S. K. Mukhopadhyay, S. Krishnan, Robust identification of QRS-complexes in electrocardiogram signals using a combination of interval and trigonometric threshold values, Biomed. Signal Process. Control, 61 (2020). https://doi.org/10.1016/j.bspc.2020.102007 |
[27] |
X. Lu, M. Pan, Y. Yu, QRS detection based on improved adaptive threshold, J. Healthcare Eng., 2018 (2018), 1–8. https://doi.org/10.1155/2018/5694595 doi: 10.1155/2018/5694595
![]() |
[28] | D. S. Benitez. A simple algorithm for detection of QRS onset in single channel ECG signals, in 2017 CHILEAN Conference on Electrical, Electronics Engineering, Information and Communication Technologies (CHILECON), (2017), 1–6. https://doi.org/10.1109/CHILECON.2017.8229647 |
[29] |
H. Ahsan, C. Karmakar, J. Yearwood, Impact of ECG dataset diversity on generalization of CNN model for detecting QRS complex, IEEE Access, 7 (2019), 93275–93285. https://doi.org/10.1109/ACCESS.2019.2927726 doi: 10.1109/ACCESS.2019.2927726
![]() |
[30] |
Y. Brosnan, X. Dong, T. Lu, Inter-patient CNN-LSTM for QRS complex detection in noisy ECG signals, IEEE Access, 7 (2019), 169359–169370. https://doi.org/10.1109/ACCESS.2019.2955738 doi: 10.1109/ACCESS.2019.2955738
![]() |
[31] | Y. Xiang, Z. Lin, J. Meng, Automatic QRS complex detection using two-level convolutional neural network, Biomed. Eng. Online, 17 (2018). https://doi.org/10.1186/s12938-018-0441-4 |
[32] | K. Zhao, Y. Li, G. Wang, Y. Pu, Y. Lian, A robust QRS detection and accurate R-peak identification algorithm for wearable ECG sensors, Sci. China Inf. Sci., 64 (2021). https://doi.org/10.1007/s11432-020-3150-2 |
[33] |
J. Pan, W. Tompkins, A real-time QRS detection algorithm, Biomed. Eng. IEEE Trans., 32 (1985), 230–236. https://doi.org/10.1109/TBME.1985.325532 doi: 10.1109/TBME.1985.325532
![]() |
[34] |
M. A. Z. Fariha, R. Ikeura, S. Hayakawa, S. Tsutsumi, Analysis of Pan-Tompkins algorithm performance with noisy ECG signals, J. Phys. Conf. Ser., 1532 (2020), 12022. https://doi.org/10.1088/1742-6596/1532/1/012022 doi: 10.1088/1742-6596/1532/1/012022
![]() |
[35] |
G. B. Moody, R. G. Mark, The impact of the MIT-BIH arrhythmia database, IEEE Eng. Med. Biol. Mag., 20 (2001), 45–50. https://doi.org/10.1109/51.932724 doi: 10.1109/51.932724
![]() |
[36] |
A. Goldberger, L. A. Amaral, L. Glass, J. Hausdorff, P. Ivanov, R. Mark, et al., PhysioBank, PhysioToolkit, and PhysioNet: Components of a new research resource for complex physiologic signals, Circulation, 101 (2000), E215–E220. https://doi.org/10.1161/01.CIR.101.23.e215 doi: 10.1161/01.CIR.101.23.e215
![]() |
[37] |
D. Makowski, T. Pham, Z. J. Lau, J. C. Brammer, F. Lespinasse, H. Pham, et al., NeuroKit2: A python toolbox for neurophysiological signal processing, Behav. Res. Methods, 53 (2021), 1689–1696. https://doi.org/10.3758/s13428-020-01516-y doi: 10.3758/s13428-020-01516-y
![]() |
[38] |
T. Nguyen, X. Qin, A. Dinh, F. Bui, Low resource complexity R-peak detection based on triangle template matching and moving average filter, Sensors, 19 (2019), 3997. https://doi.org/10.3390/s19183997 doi: 10.3390/s19183997
![]() |
[39] |
F. Liu, C. Liu, X. Jiang, Z. Zhang, Y. Zhang, J. Li, et al., Performance analysis of ten common QRS detectors on different ECG application cases, J. Healthcare Eng., 2018 (2018), 1–8. https://doi.org/10.1155/2018/9050812 doi: 10.1155/2018/9050812
![]() |
[40] | B. Porr, L. Howell, R-peak detector stress test with a new noisy ECG database reveals significant performance differences amongst popular detectors, preprint, 2019. https://doi.org/10.1101/722397 |
[41] |
U. Zalabarria, E. Irigoyen, R. Martinez, A. Lowe, Online robust R-peaks detection in noisy electrocardiograms using a novel iterative smart processing algorithm, Appl. Math. Comput., 369 (2020), 124839. https://doi.org/10.1016/j.amc.2019.124839 doi: 10.1016/j.amc.2019.124839
![]() |
[42] |
M. U. Zahid, S. Kiranyaz, T. Ince, O. C. Devecioglu, M. E. H. Chowdhury, A. Khandakar, et al., Robust R-peak detection in low-quality Holter ECGs using 1D convolutional neural network, IEEE Trans. Biomed. Eng., 69 (2022), 119–128. https://doi.org/10.1109/TBME.2021.3088218 doi: 10.1109/TBME.2021.3088218
![]() |
1. | Hend Karoui, Sihem Hamza, Yassine Ben Ayed, 2024, Chapter 14, 978-3-031-70815-2, 170, 10.1007/978-3-031-70816-9_14 |
Pan-Tompkins Algorithm | Proposed Algorithm | |||||||
Tolerance | Se(%) | PPV(%) | DER(%) | ADE(ms) | Se(%) | PPV(%) | DER(%) | ADE(ms) |
150 ms | 98.87 | 99.14 | 1.98 | 21.65 | 99.78 | 99.78 | 0.44 | 8.35 |
25 ms | 79.41 | 79.63 | 40.90 | 13.37 | 96.82 | 96.82 | 6.36 | 3.17 |
2.78 ms | 11.85 | 11.88 | 176.03 | 2.42 | 86.18 | 86.18 | 27.64 | 1.86 |
Note: TB: total beats annotated; Se: sensitivity; PPV: positive prediction value; DER: detection error rate; ADE: annotated-detected error. |
File | ADE(ms) | TB | N | V | / | Q | F | f | S |
122 | 1.12 | 2476 | 2476 | ||||||
115 | 1.19 | 1953 | 1953 | ||||||
104 | 16.75 | 2229 | 163 | 2 | 1380 | 18 | 1 | 666 | |
208 | 24.96 | 2955 | 1586 | 992 | 2 | 373 | 2 | ||
Note: normal beats; V: beats of premature ventricular contract; /: paced beats; f: fusion of paced and normal beats; Q: Unclassifiable beats; F: fusion of ventricular and normal beats; S: supraventricular premature beats. |
File | TD(ms) | TB | DB | TP | FP | FN | Se(%) | PPV(%) | DER(%) | ADE(ms) |
100 | 0.00 | 2273 | 2273 | 2273 | 0 | 0 | 100 | 100 | 0 | 2.21 |
101 | 0.00 | 1865 | 1865 | 1862 | 3 | 3 | 99.84 | 99.84 | 0.00 | 2.53 |
102 | 0.00 | 2187 | 2187 | 2187 | 0 | 0 | 100 | 100 | 0 | 10.80 |
103 | 0.00 | 2084 | 2083 | 2083 | 0 | 1 | 99.95 | 100 | 0.00 | 2.32 |
104 | 0.00 | 2229 | 2237 | 2228 | 9 | 1 | 99.96 | 99.60 | 0.00 | 16.75 |
105 | 0.00 | 2572 | 2590 | 2557 | 33 | 15 | 99.42 | 98.73 | 0.02 | 9.54 |
106 | 0.00 | 2027 | 2021 | 2020 | 1 | 7 | 99.65 | 99.95 | 0.00 | 5.30 |
107 | –2.78 | 2137 | 2136 | 2135 | 1 | 2 | 99.91 | 99.95 | 0.00 | 7.47 |
108 | 2.78 | 1763 | 1758 | 1754 | 4 | 9 | 99.49 | 99.77 | 0.01 | 14.95 |
109 | –2.78 | 2532 | 2530 | 2530 | 0 | 2 | 99.92 | 100 | 0.00 | 5.08 |
111 | 0.00 | 2124 | 2123 | 2123 | 0 | 1 | 99.95 | 100 | 0.00 | 5.78 |
112 | 0.00 | 2539 | 2539 | 2539 | 0 | 0 | 100 | 100 | 0 | 2.14 |
113 | 0.00 | 1795 | 1795 | 1795 | 0 | 0 | 100 | 100 | 0 | 1.93 |
114 | 30.56 | 1879 | 1880 | 1876 | 4 | 3 | 99.84 | 99.79 | 0.00 | 8.02 |
115 | 2.78 | 1953 | 1953 | 1953 | 0 | 0 | 100 | 100 | 0 | 1.12 |
116 | 0.00 | 2412 | 2390 | 2387 | 3 | 25 | 98.96 | 99.87 | 0.01 | 2.91 |
117 | –19.44 | 1535 | 1535 | 1535 | 0 | 0 | 100 | 100 | 0 | 6.97 |
118 | 0.00 | 2278 | 2278 | 2278 | 0 | 0 | 100 | 100 | 0 | 3.15 |
119 | 0.00 | 1987 | 1988 | 1987 | 1 | 0 | 100 | 99.95 | 0.00 | 6.00 |
121 | –2.78 | 1863 | 1861 | 1861 | 0 | 2 | 99.89 | 100 | 0.00 | 2.26 |
122 | 0.00 | 2476 | 2476 | 2476 | 0 | 0 | 100 | 100 | 0 | 1.19 |
123 | 0.00 | 1518 | 1518 | 1518 | 0 | 0 | 100 | 100 | 0 | 1.82 |
124 | 0.00 | 1619 | 1619 | 1619 | 0 | 0 | 100 | 100 | 0 | 6.99 |
200 | –5.56 | 2601 | 2601 | 2599 | 2 | 2 | 99.92 | 99.92 | 0.00 | 17.64 |
201 | 0.00 | 1963 | 1942 | 1942 | 0 | 21 | 98.93 | 100 | 0.01 | 4.15 |
202 | 0.00 | 2136 | 2122 | 2122 | 0 | 14 | 99.34 | 100 | 0.01 | 2.47 |
203 | –5.56 | 2980 | 2954 | 2937 | 17 | 43 | 98.56 | 99.42 | 0.02 | 15.28 |
205 | 0.00 | 2656 | 2648 | 2648 | 0 | 8 | 99.70 | 100 | 0.00 | 5.27 |
207 | 0.00 | 1860 | 1991 | 1852 | 139 | 8 | 99.57 | 93.02 | 0.08 | 12.98 |
208 | 8.33 | 2955 | 2939 | 2936 | 3 | 19 | 99.36 | 99.90 | 0.01 | 24.96 |
209 | 0.00 | 3005 | 3005 | 3005 | 0 | 0 | 100 | 100 | 0 | 1.54 |
210 | 0.00 | 2650 | 2623 | 2621 | 2 | 29 | 98.91 | 99.92 | 0.01 | 7.34 |
212 | 0.00 | 2748 | 2748 | 2748 | 0 | 0 | 100 | 100 | 0 | 2.24 |
213 | 0.00 | 3251 | 3248 | 3248 | 0 | 3 | 99.91 | 100 | 0.00 | 5.78 |
214 | 0.00 | 2262 | 2258 | 2258 | 0 | 4 | 99.82 | 100 | 0.00 | 4.60 |
215 | 0.00 | 3363 | 3359 | 3359 | 0 | 4 | 99.88 | 100 | 0.00 | 3.18 |
217 | –13.89 | 2208 | 2205 | 2204 | 1 | 4 | 99.82 | 99.95 | 0.00 | 8.09 |
219 | 0.00 | 2154 | 2154 | 2154 | 0 | 0 | 100 | 100 | 0 | 1.46 |
220 | 2.78 | 2048 | 2048 | 2048 | 0 | 0 | 100 | 100 | 0 | 1.82 |
221 | 0.00 | 2427 | 2425 | 2425 | 0 | 2 | 99.92 | 100 | 0.00 | 2.65 |
222 | 0.00 | 2483 | 2485 | 2483 | 2 | 0 | 100 | 99.92 | 0.00 | 1.81 |
223 | 0.00 | 2605 | 2603 | 2603 | 0 | 2 | 99.92 | 100 | 0.00 | 7.61 |
228 | 0.00 | 2053 | 2062 | 2047 | 15 | 6 | 99.71 | 99.27 | 0.01 | 5.69 |
230 | 2.78 | 2256 | 2256 | 2256 | 0 | 0 | 100 | 100 | 0 | 1.64 |
231 | 0.00 | 1571 | 1570 | 1570 | 0 | 1 | 99.94 | 100 | 0.00 | 1.55 |
232 | 0.00 | 1780 | 1782 | 1780 | 2 | 0 | 100 | 99.89 | 0.00 | 1.68 |
233 | –5.56 | 3079 | 3076 | 3076 | 0 | 3 | 99.90 | 100 | 0.00 | 16.33 |
234 | 0.00 | 2753 | 2752 | 2752 | 0 | 1 | 99.96 | 100 | 0.00 | 0.86 |
Total | 109,494 | 109,491 | 109,249 | 242 | 245 | 99.78 | 99.78 | 0.44 | 8.35 | |
TB: total beats annotated; DB: detected beats by algorithm; TD: Group time delay between TB and DB; TP: true positive, the number of correctly detected R-peaks; FP: false positive, the number of false detected R-peaks; FN: false negative, the number of undetected R-peaks; Se: sensitivity; PPV: positive prediction value; DER: detection error rate; ADE: annotated-detected error. |
File | TD(ms) | TB | DB | TP | FP | FN | Se(%) | PPV(%) | DER(%) | ADE(ms) |
100 | 44.44 | 2273 | 2271 | 2271 | 0 | 2 | 99.91 | 100 | 0.00 | 25.01 |
101 | 30.56 | 1865 | 1868 | 1863 | 5 | 2 | 99.89 | 99.73 | 0.00 | 13.98 |
102 | 22.22 | 2187 | 2187 | 2187 | 0 | 0 | 100 | 100 | 0 | 18.24 |
103 | 36.11 | 2084 | 2080 | 2079 | 1 | 5 | 99.76 | 99.95 | 0.00 | 16.79 |
104 | 16.67 | 2229 | 2273 | 2221 | 52 | 8 | 99.64 | 97.71 | 0.03 | 21.90 |
105 | 0.00 | 2572 | 2599 | 2561 | 38 | 11 | 99.57 | 98.54 | 0.02 | 18.40 |
106 | 25.00 | 2027 | 1996 | 1995 | 1 | 32 | 98.42 | 99.95 | 0.02 | 23.96 |
107 | 50.00 | 2137 | 2135 | 2135 | 0 | 2 | 99.91 | 100 | 0.00 | 26.49 |
108 | 19.44 | 1763 | 1872 | 1281 | 591 | 482 | 72.66 | 68.43 | 0.61 | 43.72 |
109 | 25.00 | 2532 | 2528 | 2527 | 1 | 5 | 99.80 | 99.96 | 0.00 | 24.43 |
111 | 25.00 | 2124 | 2125 | 2123 | 2 | 1 | 99.95 | 99.91 | 0.00 | 21.21 |
112 | 36.11 | 2539 | 2539 | 2539 | 0 | 0 | 100 | 100 | 0 | 32.70 |
113 | 44.44 | 1795 | 1794 | 1793 | 1 | 2 | 99.89 | 99.94 | 0.00 | 24.20 |
114 | 47.22 | 1879 | 1882 | 1876 | 6 | 3 | 99.84 | 99.68 | 0.00 | 15.68 |
115 | 38.89 | 1953 | 1953 | 1952 | 1 | 1 | 99.95 | 99.95 | 0.00 | 10.89 |
116 | 30.56 | 2412 | 2391 | 2387 | 4 | 25 | 98.96 | 99.83 | 0.01 | 16.35 |
117 | 25.00 | 1535 | 1535 | 1533 | 2 | 2 | 99.87 | 99.87 | 0.00 | 22.72 |
118 | 41.67 | 2278 | 2278 | 2274 | 4 | 4 | 99.82 | 99.82 | 0.00 | 25.16 |
119 | 30.56 | 1987 | 1988 | 1986 | 2 | 1 | 99.95 | 99.90 | 0.00 | 25.33 |
121 | 16.67 | 1863 | 1864 | 1858 | 6 | 5 | 99.73 | 99.68 | 0.01 | 23.31 |
122 | 2.78 | 2476 | 2476 | 2475 | 1 | 1 | 99.96 | 99.96 | 0.00 | 15.93 |
123 | 52.78 | 1518 | 1515 | 1513 | 2 | 5 | 99.67 | 99.87 | 0.00 | 18.09 |
124 | 8.33 | 1619 | 1620 | 1619 | 1 | 0 | 100 | 99.94 | 0.00 | 21.26 |
200 | 33.33 | 2601 | 2603 | 2596 | 7 | 5 | 99.81 | 99.73 | 0.00 | 22.39 |
201 | 33.33 | 1963 | 1912 | 1912 | 0 | 51 | 97.40 | 100 | 0.03 | 18.87 |
202 | 22.22 | 2136 | 2128 | 2127 | 1 | 9 | 99.58 | 99.95 | 0.00 | 15.54 |
203 | 19.44 | 2980 | 2957 | 2924 | 33 | 57 | 98.09 | 98.88 | 0.03 | 22.66 |
205 | 25.00 | 2656 | 2649 | 2648 | 1 | 8 | 99.70 | 99.96 | 0.00 | 14.22 |
207 | 36.11 | 1860 | 1919 | 1826 | 93 | 34 | 98.17 | 95.15 | 0.07 | 24.20 |
208 | 38.89 | 2955 | 2658 | 2654 | 4 | 301 | 89.81 | 99.85 | 0.10 | 28.16 |
209 | 41.67 | 3005 | 3005 | 3003 | 2 | 2 | 99.93 | 99.93 | 0.00 | 20.36 |
210 | 27.78 | 2650 | 2607 | 2603 | 4 | 47 | 98.23 | 99.85 | 0.02 | 15.29 |
212 | 13.89 | 2748 | 2749 | 2748 | 1 | 0 | 100 | 99.96 | 0.00 | 18.92 |
213 | 16.67 | 3251 | 3249 | 3249 | 0 | 2 | 99.94 | 100 | 0.00 | 26.62 |
214 | 22.22 | 2262 | 2255 | 2253 | 2 | 9 | 99.60 | 99.91 | 0.00 | 14.22 |
215 | 47.22 | 3363 | 3363 | 3362 | 1 | 1 | 99.97 | 99.97 | 0.00 | 19.16 |
217 | 41.67 | 2208 | 2205 | 2202 | 3 | 6 | 99.73 | 99.86 | 0.00 | 25.10 |
219 | 33.33 | 2154 | 2152 | 2150 | 2 | 4 | 99.81 | 99.91 | 0.00 | 17.94 |
220 | 38.89 | 2048 | 2048 | 2046 | 2 | 2 | 99.90 | 99.90 | 0.00 | 17.17 |
221 | 38.89 | 2427 | 2361 | 2360 | 1 | 67 | 97.24 | 99.96 | 0.03 | 21.64 |
222 | 19.44 | 2483 | 2488 | 2483 | 5 | 0 | 100 | 99.80 | 0.00 | 15.72 |
223 | 33.33 | 2605 | 2603 | 2602 | 1 | 3 | 99.88 | 99.96 | 0.00 | 29.88 |
228 | 19.44 | 2053 | 2080 | 2045 | 35 | 8 | 99.61 | 98.32 | 0.02 | 20.37 |
230 | 50.00 | 2256 | 2255 | 2255 | 0 | 1 | 99.96 | 100 | 0.00 | 15.21 |
231 | 41.67 | 1571 | 1569 | 1568 | 1 | 3 | 99.81 | 99.94 | 0.00 | 29.59 |
232 | 44.44 | 1780 | 1790 | 1776 | 14 | 4 | 99.78 | 99.22 | 0.01 | 25.12 |
233 | 22.22 | 3079 | 3072 | 3072 | 0 | 7 | 99.77 | 100 | 0.00 | 19.89 |
234 | 19.44 | 2753 | 2750 | 2750 | 0 | 3 | 99.89 | 100 | 0.00 | 11.04 |
Total | 109,494 | 109,196 | 108,262 | 934 | 1233 | 98.87 | 99.14 | 1.98 | 21.65 |
Pan-Tompkins Algorithm | Proposed Algorithm | |||||||
Tolerance | Se(%) | PPV(%) | DER(%) | ADE(ms) | Se(%) | PPV(%) | DER(%) | ADE(ms) |
150 ms | 98.87 | 99.14 | 1.98 | 21.65 | 99.78 | 99.78 | 0.44 | 8.35 |
25 ms | 79.41 | 79.63 | 40.90 | 13.37 | 96.82 | 96.82 | 6.36 | 3.17 |
2.78 ms | 11.85 | 11.88 | 176.03 | 2.42 | 86.18 | 86.18 | 27.64 | 1.86 |
Note: TB: total beats annotated; Se: sensitivity; PPV: positive prediction value; DER: detection error rate; ADE: annotated-detected error. |
Method | TB | Se(%) | PPV(%) | DER(%) | ADE(ms) |
Proposed | 109,494 | 99.78 | 99.78 | 0.44 | 8.35 |
Kai Zhao et al. [32] | 109,966 | 99.81 | 99.88 | 0.31 | 12.2 |
* Pan and Tompkins [33] | 109,966 | 99.13 | 99.63 | 1.24 | 13.4 |
* Indicates that the data is quoted from literature [32]. |
File | ADE(ms) | TB | N | V | / | Q | F | f | S |
122 | 1.12 | 2476 | 2476 | ||||||
115 | 1.19 | 1953 | 1953 | ||||||
104 | 16.75 | 2229 | 163 | 2 | 1380 | 18 | 1 | 666 | |
208 | 24.96 | 2955 | 1586 | 992 | 2 | 373 | 2 | ||
Note: normal beats; V: beats of premature ventricular contract; /: paced beats; f: fusion of paced and normal beats; Q: Unclassifiable beats; F: fusion of ventricular and normal beats; S: supraventricular premature beats. |
File | TD(ms) | TB | DB | TP | FP | FN | Se(%) | PPV(%) | DER(%) | ADE(ms) |
100 | 0.00 | 2273 | 2273 | 2273 | 0 | 0 | 100 | 100 | 0 | 2.21 |
101 | 0.00 | 1865 | 1865 | 1862 | 3 | 3 | 99.84 | 99.84 | 0.00 | 2.53 |
102 | 0.00 | 2187 | 2187 | 2187 | 0 | 0 | 100 | 100 | 0 | 10.80 |
103 | 0.00 | 2084 | 2083 | 2083 | 0 | 1 | 99.95 | 100 | 0.00 | 2.32 |
104 | 0.00 | 2229 | 2237 | 2228 | 9 | 1 | 99.96 | 99.60 | 0.00 | 16.75 |
105 | 0.00 | 2572 | 2590 | 2557 | 33 | 15 | 99.42 | 98.73 | 0.02 | 9.54 |
106 | 0.00 | 2027 | 2021 | 2020 | 1 | 7 | 99.65 | 99.95 | 0.00 | 5.30 |
107 | –2.78 | 2137 | 2136 | 2135 | 1 | 2 | 99.91 | 99.95 | 0.00 | 7.47 |
108 | 2.78 | 1763 | 1758 | 1754 | 4 | 9 | 99.49 | 99.77 | 0.01 | 14.95 |
109 | –2.78 | 2532 | 2530 | 2530 | 0 | 2 | 99.92 | 100 | 0.00 | 5.08 |
111 | 0.00 | 2124 | 2123 | 2123 | 0 | 1 | 99.95 | 100 | 0.00 | 5.78 |
112 | 0.00 | 2539 | 2539 | 2539 | 0 | 0 | 100 | 100 | 0 | 2.14 |
113 | 0.00 | 1795 | 1795 | 1795 | 0 | 0 | 100 | 100 | 0 | 1.93 |
114 | 30.56 | 1879 | 1880 | 1876 | 4 | 3 | 99.84 | 99.79 | 0.00 | 8.02 |
115 | 2.78 | 1953 | 1953 | 1953 | 0 | 0 | 100 | 100 | 0 | 1.12 |
116 | 0.00 | 2412 | 2390 | 2387 | 3 | 25 | 98.96 | 99.87 | 0.01 | 2.91 |
117 | –19.44 | 1535 | 1535 | 1535 | 0 | 0 | 100 | 100 | 0 | 6.97 |
118 | 0.00 | 2278 | 2278 | 2278 | 0 | 0 | 100 | 100 | 0 | 3.15 |
119 | 0.00 | 1987 | 1988 | 1987 | 1 | 0 | 100 | 99.95 | 0.00 | 6.00 |
121 | –2.78 | 1863 | 1861 | 1861 | 0 | 2 | 99.89 | 100 | 0.00 | 2.26 |
122 | 0.00 | 2476 | 2476 | 2476 | 0 | 0 | 100 | 100 | 0 | 1.19 |
123 | 0.00 | 1518 | 1518 | 1518 | 0 | 0 | 100 | 100 | 0 | 1.82 |
124 | 0.00 | 1619 | 1619 | 1619 | 0 | 0 | 100 | 100 | 0 | 6.99 |
200 | –5.56 | 2601 | 2601 | 2599 | 2 | 2 | 99.92 | 99.92 | 0.00 | 17.64 |
201 | 0.00 | 1963 | 1942 | 1942 | 0 | 21 | 98.93 | 100 | 0.01 | 4.15 |
202 | 0.00 | 2136 | 2122 | 2122 | 0 | 14 | 99.34 | 100 | 0.01 | 2.47 |
203 | –5.56 | 2980 | 2954 | 2937 | 17 | 43 | 98.56 | 99.42 | 0.02 | 15.28 |
205 | 0.00 | 2656 | 2648 | 2648 | 0 | 8 | 99.70 | 100 | 0.00 | 5.27 |
207 | 0.00 | 1860 | 1991 | 1852 | 139 | 8 | 99.57 | 93.02 | 0.08 | 12.98 |
208 | 8.33 | 2955 | 2939 | 2936 | 3 | 19 | 99.36 | 99.90 | 0.01 | 24.96 |
209 | 0.00 | 3005 | 3005 | 3005 | 0 | 0 | 100 | 100 | 0 | 1.54 |
210 | 0.00 | 2650 | 2623 | 2621 | 2 | 29 | 98.91 | 99.92 | 0.01 | 7.34 |
212 | 0.00 | 2748 | 2748 | 2748 | 0 | 0 | 100 | 100 | 0 | 2.24 |
213 | 0.00 | 3251 | 3248 | 3248 | 0 | 3 | 99.91 | 100 | 0.00 | 5.78 |
214 | 0.00 | 2262 | 2258 | 2258 | 0 | 4 | 99.82 | 100 | 0.00 | 4.60 |
215 | 0.00 | 3363 | 3359 | 3359 | 0 | 4 | 99.88 | 100 | 0.00 | 3.18 |
217 | –13.89 | 2208 | 2205 | 2204 | 1 | 4 | 99.82 | 99.95 | 0.00 | 8.09 |
219 | 0.00 | 2154 | 2154 | 2154 | 0 | 0 | 100 | 100 | 0 | 1.46 |
220 | 2.78 | 2048 | 2048 | 2048 | 0 | 0 | 100 | 100 | 0 | 1.82 |
221 | 0.00 | 2427 | 2425 | 2425 | 0 | 2 | 99.92 | 100 | 0.00 | 2.65 |
222 | 0.00 | 2483 | 2485 | 2483 | 2 | 0 | 100 | 99.92 | 0.00 | 1.81 |
223 | 0.00 | 2605 | 2603 | 2603 | 0 | 2 | 99.92 | 100 | 0.00 | 7.61 |
228 | 0.00 | 2053 | 2062 | 2047 | 15 | 6 | 99.71 | 99.27 | 0.01 | 5.69 |
230 | 2.78 | 2256 | 2256 | 2256 | 0 | 0 | 100 | 100 | 0 | 1.64 |
231 | 0.00 | 1571 | 1570 | 1570 | 0 | 1 | 99.94 | 100 | 0.00 | 1.55 |
232 | 0.00 | 1780 | 1782 | 1780 | 2 | 0 | 100 | 99.89 | 0.00 | 1.68 |
233 | –5.56 | 3079 | 3076 | 3076 | 0 | 3 | 99.90 | 100 | 0.00 | 16.33 |
234 | 0.00 | 2753 | 2752 | 2752 | 0 | 1 | 99.96 | 100 | 0.00 | 0.86 |
Total | 109,494 | 109,491 | 109,249 | 242 | 245 | 99.78 | 99.78 | 0.44 | 8.35 | |
TB: total beats annotated; DB: detected beats by algorithm; TD: Group time delay between TB and DB; TP: true positive, the number of correctly detected R-peaks; FP: false positive, the number of false detected R-peaks; FN: false negative, the number of undetected R-peaks; Se: sensitivity; PPV: positive prediction value; DER: detection error rate; ADE: annotated-detected error. |
File | TD(ms) | TB | DB | TP | FP | FN | Se(%) | PPV(%) | DER(%) | ADE(ms) |
100 | 44.44 | 2273 | 2271 | 2271 | 0 | 2 | 99.91 | 100 | 0.00 | 25.01 |
101 | 30.56 | 1865 | 1868 | 1863 | 5 | 2 | 99.89 | 99.73 | 0.00 | 13.98 |
102 | 22.22 | 2187 | 2187 | 2187 | 0 | 0 | 100 | 100 | 0 | 18.24 |
103 | 36.11 | 2084 | 2080 | 2079 | 1 | 5 | 99.76 | 99.95 | 0.00 | 16.79 |
104 | 16.67 | 2229 | 2273 | 2221 | 52 | 8 | 99.64 | 97.71 | 0.03 | 21.90 |
105 | 0.00 | 2572 | 2599 | 2561 | 38 | 11 | 99.57 | 98.54 | 0.02 | 18.40 |
106 | 25.00 | 2027 | 1996 | 1995 | 1 | 32 | 98.42 | 99.95 | 0.02 | 23.96 |
107 | 50.00 | 2137 | 2135 | 2135 | 0 | 2 | 99.91 | 100 | 0.00 | 26.49 |
108 | 19.44 | 1763 | 1872 | 1281 | 591 | 482 | 72.66 | 68.43 | 0.61 | 43.72 |
109 | 25.00 | 2532 | 2528 | 2527 | 1 | 5 | 99.80 | 99.96 | 0.00 | 24.43 |
111 | 25.00 | 2124 | 2125 | 2123 | 2 | 1 | 99.95 | 99.91 | 0.00 | 21.21 |
112 | 36.11 | 2539 | 2539 | 2539 | 0 | 0 | 100 | 100 | 0 | 32.70 |
113 | 44.44 | 1795 | 1794 | 1793 | 1 | 2 | 99.89 | 99.94 | 0.00 | 24.20 |
114 | 47.22 | 1879 | 1882 | 1876 | 6 | 3 | 99.84 | 99.68 | 0.00 | 15.68 |
115 | 38.89 | 1953 | 1953 | 1952 | 1 | 1 | 99.95 | 99.95 | 0.00 | 10.89 |
116 | 30.56 | 2412 | 2391 | 2387 | 4 | 25 | 98.96 | 99.83 | 0.01 | 16.35 |
117 | 25.00 | 1535 | 1535 | 1533 | 2 | 2 | 99.87 | 99.87 | 0.00 | 22.72 |
118 | 41.67 | 2278 | 2278 | 2274 | 4 | 4 | 99.82 | 99.82 | 0.00 | 25.16 |
119 | 30.56 | 1987 | 1988 | 1986 | 2 | 1 | 99.95 | 99.90 | 0.00 | 25.33 |
121 | 16.67 | 1863 | 1864 | 1858 | 6 | 5 | 99.73 | 99.68 | 0.01 | 23.31 |
122 | 2.78 | 2476 | 2476 | 2475 | 1 | 1 | 99.96 | 99.96 | 0.00 | 15.93 |
123 | 52.78 | 1518 | 1515 | 1513 | 2 | 5 | 99.67 | 99.87 | 0.00 | 18.09 |
124 | 8.33 | 1619 | 1620 | 1619 | 1 | 0 | 100 | 99.94 | 0.00 | 21.26 |
200 | 33.33 | 2601 | 2603 | 2596 | 7 | 5 | 99.81 | 99.73 | 0.00 | 22.39 |
201 | 33.33 | 1963 | 1912 | 1912 | 0 | 51 | 97.40 | 100 | 0.03 | 18.87 |
202 | 22.22 | 2136 | 2128 | 2127 | 1 | 9 | 99.58 | 99.95 | 0.00 | 15.54 |
203 | 19.44 | 2980 | 2957 | 2924 | 33 | 57 | 98.09 | 98.88 | 0.03 | 22.66 |
205 | 25.00 | 2656 | 2649 | 2648 | 1 | 8 | 99.70 | 99.96 | 0.00 | 14.22 |
207 | 36.11 | 1860 | 1919 | 1826 | 93 | 34 | 98.17 | 95.15 | 0.07 | 24.20 |
208 | 38.89 | 2955 | 2658 | 2654 | 4 | 301 | 89.81 | 99.85 | 0.10 | 28.16 |
209 | 41.67 | 3005 | 3005 | 3003 | 2 | 2 | 99.93 | 99.93 | 0.00 | 20.36 |
210 | 27.78 | 2650 | 2607 | 2603 | 4 | 47 | 98.23 | 99.85 | 0.02 | 15.29 |
212 | 13.89 | 2748 | 2749 | 2748 | 1 | 0 | 100 | 99.96 | 0.00 | 18.92 |
213 | 16.67 | 3251 | 3249 | 3249 | 0 | 2 | 99.94 | 100 | 0.00 | 26.62 |
214 | 22.22 | 2262 | 2255 | 2253 | 2 | 9 | 99.60 | 99.91 | 0.00 | 14.22 |
215 | 47.22 | 3363 | 3363 | 3362 | 1 | 1 | 99.97 | 99.97 | 0.00 | 19.16 |
217 | 41.67 | 2208 | 2205 | 2202 | 3 | 6 | 99.73 | 99.86 | 0.00 | 25.10 |
219 | 33.33 | 2154 | 2152 | 2150 | 2 | 4 | 99.81 | 99.91 | 0.00 | 17.94 |
220 | 38.89 | 2048 | 2048 | 2046 | 2 | 2 | 99.90 | 99.90 | 0.00 | 17.17 |
221 | 38.89 | 2427 | 2361 | 2360 | 1 | 67 | 97.24 | 99.96 | 0.03 | 21.64 |
222 | 19.44 | 2483 | 2488 | 2483 | 5 | 0 | 100 | 99.80 | 0.00 | 15.72 |
223 | 33.33 | 2605 | 2603 | 2602 | 1 | 3 | 99.88 | 99.96 | 0.00 | 29.88 |
228 | 19.44 | 2053 | 2080 | 2045 | 35 | 8 | 99.61 | 98.32 | 0.02 | 20.37 |
230 | 50.00 | 2256 | 2255 | 2255 | 0 | 1 | 99.96 | 100 | 0.00 | 15.21 |
231 | 41.67 | 1571 | 1569 | 1568 | 1 | 3 | 99.81 | 99.94 | 0.00 | 29.59 |
232 | 44.44 | 1780 | 1790 | 1776 | 14 | 4 | 99.78 | 99.22 | 0.01 | 25.12 |
233 | 22.22 | 3079 | 3072 | 3072 | 0 | 7 | 99.77 | 100 | 0.00 | 19.89 |
234 | 19.44 | 2753 | 2750 | 2750 | 0 | 3 | 99.89 | 100 | 0.00 | 11.04 |
Total | 109,494 | 109,196 | 108,262 | 934 | 1233 | 98.87 | 99.14 | 1.98 | 21.65 |