# R Peak Detection Method Using Wavelet Transform and Modified Shannon Energy Envelope.

1. IntroductionAn electrocardiogram (ECG) is a recording of the electrical activity of the heart [1, 2] and a graphical representation of the signals obtained from electrodes placed on the skin near the heart [1, 3, 4]. The recent use of computers in conducting ECG analysis allows the patterns of the ECG signal, composed of multiple cycles that include numerous sample points, to be visualized [5]. Some of these sample points are fiducial--namely, the P wave, QRS complex, and T wave [4]. The identification of these points is a critical step in analyzing the ECG signal and has become possible by analyzing its morphological patterns [6].

In 2012, cardiovascular diseases (CVDs) accounted for 37% of premature (under the age of 70) noncommunicable disease mortality [7-9]. The detection of fiducial points is critical for the initial diagnosis and analysis of CVDs. In Figure 1, we can see the peaks of the QRS complex, the highest of which is known as the R peak in the QRS interval [10]. Other time segments are also shown, such as the P-Q and S-T segments. The R peak in the QRS interval is the most important feature for analyzing the ECG data. All these waves are electrical manifestations of the contractile activity of the heart [11]. Detection of the main characteristic waves in an ECG is one of the most essential tasks, and the performance of any CVD analysis method depends on the reliable detection of these waves. R peak detection in ECG is one such method that is widely used to diagnose heart rhythm irregularities and estimate heart-rate variability (HRV) [12, 13].

Significant research efforts have been devoted to the detection of the fiducial points of an ECG signal. Those methods include slope-based threshold methods [14, 15], wavelet-transform-based methods [1, 4, 10, 16-18], mathematical-morphology-based methods [6, 19], digital filtering methods [14, 20, 21], and Shannon energy envelope- (SEE-) based methods [22-25]. There are also other studies that use the wavelet transform for denoising ECG signals [4, 17].

The Pan and Tompkins methods (PT) [14] appear to be the most common benchmark given that they incorporate several fundamental techniques including low-pass filtering, high-pass filtering, derivative filtering, squaring, and windowing for the detection of the R peaks. The principal drawback of a filtering-based approach is the adverse effect on performance [20] because of the change in frequency of the characteristic wave. Shannon energy with the Hilbert transform method (SEHT) [22] provides good accuracy for detecting R peaks. However, the Hilbert transform in SEHT requires large memory and processing time, making it unsuitable for real-time application. Moreover, SEHT detects many noise peaks in ECG data with long pauses. Zhu and Dong [23] developed an R peak detection method called PSEE by using only the SEE. The authors used an amplitude threshold that affects the performance of the algorithm for valid peak detection. A QRS complex generally overlaps in the frequency domain [26], resulting in false positive detections. Some of the threshold techniques are highly noise-sensitive [17]; therefore, developments of sophisticated, automatic, and computationally efficient techniques are required that can outperform existing methods to ensure the real-time analysis of an ECG for the proper diagnosis of CVDs.

In this paper, we propose a novel approach of using the wavelet transform (WT) and modified SEE for the rapid detection of R peaks in the QRS complex. First, the proposed WTSEE algorithm performs a WT to reduce the size and noise of ECG signals and subsequently calculates the SEE after first-order differentiation and amplitude normalization. Following this step, the peak energy envelope (PEE) is made from the SEE for easy identification of peaks. R peaks are then estimated from the PEE, and the estimated peaks are adjusted from the input ECG. Finally, the algorithm generates the final R peaks by validating R-R intervals and updating the extracted R peaks.

The proposed R peak detection method was validated using 48 first-channel ECG records of the MIT-BIH arrhythmia database with sensitivity, positive predictability, detection error rate, and accuracy. We also measured the mean of R-R interval (MRR), standard deviation of normal to normal R-R intervals (SDNN), and root mean square of successive heartbeat interval differences (RMSSDs), which can be used for analyzing heart rate variability.

The remainder of this paper is organized as follows. In Section 2, we discuss the proposed R peak detection method using the wavelet transform and SEE. In Section 3, we provide the experimental results, the performance analysis of the proposed method, and a discussion of the real-time implementation. In Section 4, we conclude our work and provide insight into future study.

2. Methods

An ECG signal consists of many cycles of P, Q, R, and S waves, with each cycle comprising many sample points. In MIT-BIH record 100, a cycle comprises approximately 280 sample points [27]. There are up to 10 fiducial points that determine the overall characteristics of a cycle of ECG signal. Among various existing SEE-based methods, band-pass filters, such as the Chebyshev type I filter and Butterworth filter, are used for denoising input ECG signals as preprocessing steps. In the proposed method, wavelet transform replaces the band-pass filters by level 2 down-sampling, soft thresholding for denoising detailed coefficients [17], and reconstructing the level 1 signal. By applying this procedure, we can reduce the size and time required for extracting R peaks.

The proposed WTSEE algorithm extracts these fiducial points (R peaks) from the down-sampled ECG signals by calculating SEE, repeating a similar procedure as SEE to emphasize peak information (thus, we call this procedure the peak energy envelope), detecting R peaks, and updating the R peaks by comparing the R-R intervals. Figure 2 presents the data flow in the proposed R peak detection algorithm with its principle stages. First, the proposed WTSEE algorithm performs a wavelet transform, instead of a band-pass filter, to reduce the size and noise of ECG signals. It then calculates SEE after first-order differentiation and amplitude normalization. In the third stage, the PEE is created from the SEE for easy identification of peaks. In the next stage, R peaks are estimated from the PEE, and the estimated peaks are adjusted from the input ECG. Finally, the algorithm generates the final R peaks by validating R-R intervals and updating the extracted R peaks. In Figure 2, original time space and down-sampled time space are represented by [t.sub.1] and [t.sub.2], respectively.

2.1. Discrete Wavelet Transform. The wavelet transform (WT) is a good technique for signal compression and noise reduction. The computational complexity for the discrete wavelet transform (DWT) is O(n). Wavelet analysis combines filtering and down-sampling as shown in Figure 3 [4, 17].

(1) As the first step of the proposed method, WT reduces the size and noise of an ECG. By applying these transform, memory requirements and processing time are dramatically reduced.

Symlets wavelet (sym5) is chosen as the wavelet function to decompose the ECG signals, and the thresholding method is employed to remove the noise [4]. Figure 4 demonstrates the difference between the scaling function and wavelet function with symlets [28]. By applying this procedure, the peak signal becomes clearer. The sym5 wavelet transformation is performed as

[[A.sub.C], [D.sub.C]] = dwt([E.sub.I], 'sym5'), (1)

where [A.sub.C] is an approximation coefficient vector, [D.sub.C] is a detail coefficient vector, [E.sub.I] is an input ECG signal vector, and dwt(*) is a DWT function.

(2) To reduce the noise of an ECG signal, we applied a soft thresholding that is recognized as more powerful than hard thresholding as

[mathematical expression not reproducible], (2)

where coefficients [mathematical expression not reproducible] are detail coefficients after and before thresholding, respectively.

In the proposed scheme, we chose the universal threshold selection method. Here, the value of threshold (t) is computed as

t = [sigma][square root of (2log(N)/N)], (3)

where N is the total number of wavelet coefficients and [sigma] = median([absolute value of ([D.sub.C](j))])/0.6745 is the standard deviation of the noise.

After the noise removal, reconstruction is applied to obtain noise-free ECG signal as follows:

[mathematical expression not reproducible], (4)

where [A.sub.C] is a previously extracted approximation coefficients vector, [mathematical expression not reproducible] is a noise-removed detail coefficient vector, [E.sup.F] is a denoised ECG signal, and idwt(*) is an inverse DWT function.

2.2. Shannon Energy Envelope Calculation. (3) After applying the 2nd DWT along with noise removal and reconstruction, we perform the first-order differentiation of the signal to obtain the slope information. The first-order differentiation is equivalent with a high-pass filter that passes high-frequency components (QRS complex) and attenuates lower frequency components (P and T waves). The mathematical implementation of the first-order differentiation can be shown as

[D.sub.n] = [E.sup.F.sub.n+1] - [E.sup.F.sub.n]. (5)

(4) Next, the signal is normalized to scale its value to 1. This is to prepare the signal for SEE computation.

[mathematical expression not reproducible]. 6

(5) After differentiating the ECG signal, it becomes a bipolar signal. Given that the method is based on peak detection, we must transform the differentiated signal into a unipolar signal. The unipolar signal can be obtained by the following Shannon energy function:

[mathematical expression not reproducible]. (7)

(6) To obtain a smooth SEE, the signal is passed through a zero-shift moving average filter [13] that can be considered as a moving window integrator. The mathematical expression of a moving average filter is expressed in the following where the window width is set as 33:

[S.sup.S.sub.n] = 1/N {[S.sup.E.sub.n-N/2] + ... + [S.sup.E.sub.n-1] + [S.sup.E.sub.n] + [S.sup.E.sub.n+1] + ... + [S.sup.E.sub.n+N/2]}. (8)

The length of the moving average filter is an important parameter for this detection method. Generally, the length of the moving average filter is taken as approximately the width of the QRS complex. In the existing method [13], 65 samples are used for the moving average filter. However, in this paper, we reduce the length to 33.

2.3. Peak Energy Envelope Calculation. After the SEE calculation stage, we obtain the smooth peak signal, but it contains both true R peaks and false R peaks. In this stage, we thus attenuate the false R peaks and emphasize the true R peaks. This is performed by similar steps to those of the SEE, so we call this procedure the peak energy envelope (PEE).

(7) It is natural that the amplitude values for true R peaks are higher than those for false peaks. Thus, if we take the first-order differentiation of the signal, it stores the slope information of the true peaks but reduces the slope information of the false peaks. The first-order differentiation can be expressed as

[D.sup.S.sub.n] = [S.sup.S.sub.n+1] - [S.sup.S.sub.n]. (9)

(8) Next, the signal is amplitude normalized to unity as

[mathematical expression not reproducible]. (10)

(9) The normalized bipolar signal is converted to a unipolar signal by a squaring operation. The amplitude of false peaks is very low, and the squaring operation will attenuate these peaks completely. As a result, the true R peaks are amplified, and false R peaks are diminished. The squared unipolar signal can be expressed as:

[mathematical expression not reproducible]. (11)

(10) The signal is then passed through a moving average filter to obtain a resulting signal with smooth peak. In our proposed technique, we use a moving average filter length of 43 samples, which is smaller than the existing length of 85 [13]. The final signal expressed next is used for peak detection where the window width is set as 43.

[P.sup.S.sub.n] = 1/N{[P.sup.E.sub.n-N/2] + ... + [P.sup.E.sub.n-1] + ... + [P.sup.E.sub.n+N/2]}. (12)

2.4. Peak Detection. Figure 5 shows an example flow of the proposed WTSEE method for detecting R peaks. After squaring, to obtain a smooth SEE, a moving average filter operation is performed. The output of the moving average filter does not provide any unnecessary rising peaks.

(11) The locations of rising peaks are referred to as the locations of true R peaks, as shown in the Figure 5(k). Thus, no amplitude threshold value is required for the detection of R peaks.

[R.sup.E] = findPeaks([P.sup.S]), (13)

where [R.sup.E] is the estimated locations of rising peaks and findPeaks(*) is a peak-finding function from smooth PEE [P.sup.S].

(12) In this stage, the R peaks are detected by applying a peak-finding algorithm. However, the detected peak locations are slightly different from the actual positions of the R peaks in the ECG signal. Thus, to find the real positions of R peaks, the actual sample instant of R peaks in the input ECG signal is found by searching for the maximum amplitude within [+ or -]25 samples of the identified location in the previous step as

[mathematical expression not reproducible], (14)

where [R.sup.C.sub.k] is the searched real position from the input ECG signal and [E.sup.F.sub.k] is the amplitude of the kth positions of estimated R peak [R.sup.E.sub.k].

In Figure 5, the total signal processing of the proposed method is shown, where red circles indicate the detected R peaks by using the proposed method in Figure 5(l).

2.5. R Peak Update. As the final procedure, the previously detected peak set [R.sup.C] is validated and updated using the following steps. This validation and update process is based on the R-R intervals between neighboring R peaks. The objective of this procedure is balancing the R-R intervals.

(13) Measure the x-axis intervals between neighboring R peaks as follows:

[DELTA][R.sup.C](k) = [x.sub.k+1] - [x.sub.k], k = 1, 2, ..., K - 1. (15)

(14) Generate the final R feature, [R.sup.F](x), by repeating the validation and update for all candidate peaks of [R.sup.C](x). Each peak [R.sup.C]([x.sub.k]) can be classified into one of three categories according to the value of the [DELTA][R.sup.C](k):

(a) [R.sup.C]([x.sub.k]) is not included to [R.sup.F](x) if the x-axis intervals between two neighboring peaks, [DELTA][R.sup.C](k -1) or [DELTA][R.sup.C](k), are less than a given threshold; that is,

[R.sup.C]([x.sub.k]) [not member of] [R.sup.F](x), if [DELTA][R.sup.C](k - 1) < [[theta].sub.[DELTA]1] or [DELTA][R.sup.C](k) < [[theta].sub.[DELTA]1], (16)

where [[theta].sub.[DELTA]1] is a threshold value that determines the minimum offset between R-R peaks. This threshold value can be set as follows:

[[theta].sub.[DELTA]1] = [alpha] x [[mu].sub.[DELTA]], (17)

where [alpha] = 05 and [[mu].sub.[DELTA]] is the average spacing of R-R peaks.

(b) Find additional R peaks between [R.sup.C]([x.sub.k-1]) and [R.sup.C]([x.sub.k+1]) when x-axis intervals with two neighboring peaks are greater than a given threshold:

[E.sup.F]([x.sub.a]) [member of] [R.sup.F](x), [x.sub.k-1] + [gamma] x [[mu].sub.[DELTA]] < [x.sub.a] < [x.sub.k+1] - [gamma] x [[mu].sub.[DELTA]], if [DELTA][R.sup.C](k - 1) > [[theta].sub.[DELTA]2] or [DELTA][R.sup.C](k) > [[theta].sub.[DELTA]2], (18)

where [[theta].sub.[DELTA]2] = [beta] x [[mu].sub.[DELTA]] is a threshold value that determines the maximum interval between R-R peaks and [gamma] is a parameter for defining the size of search area. We used [beta] and [gamma] as 1.5 and 0.5, respectively.

(c) [R.sup.C]([x.sub.k]) is maintained as [R.sup.F](x) when the x-axis intervals are located at the proper intervals:

[R.sup.C]([x.sub.k]) [member of] [R.sup.F](x), if [[theta].sub.[DELTA]1] [less than or equal to] [DELTA][R.sup.C](k) [less than or equal to] [[theta].sub.[DELTA]2], [[theta].sub.[DELTA]1] [less than or equal to] [DELTA][R.sup.C](k + 1) [less than or equal to] [[theta].sub.[DELTA]2]. (19)

3. Results

3.1. Experimental Data. We used the MIT-BIH arrhythmia database [28] from the PhysioNet site. This database was developed with the aim of benchmarking references for automated analysis of ECG signals. The MIT-BIH arrhythmia DB has 48 two-channel ambulatory ECG recordings of 30 min duration each. They are available at different frequencies and different time lengths. These signals are sampled at 360 samples per second and have a resolution of 11 bits over a 10 mV range. We used the first lead of all 48 records to validate the performance of the proposed method.

There are 112,647 labeled beats, where the "Normal beat" class contains 75,052 beats of annotation type "1." Table 1 summarizes the annotations in the MIT-BIH arrhythmia DB and shows the examples of the 23 types of annotated beats. In the table, 1: NORMAL, 2: LBBB, ..., and 38: PFUS are the annotation types and their abbreviations, respectively (please refer to the site for the meaning, annotation types, and their abbreviations). And # indicates the number of corresponding beats in MIT-BIH DB, and R-# is the record number of illustrated data.

As shown in Table 1, there are many abnormal beats in the ECG signals, so considering all annotations to be the reference peaks is not the correct way to verify the performance of the R peak detection methods. To solve the problem of incorrect or ambiguous annotation, we apply the validation process to determine whether each annotated position is true peak or not.

3.2. R Peak Detection Results. Figure 6 shows examples of the detected R peaks from various records in the MIT-BIH DB. In this figure, black asterisks (*) denote the annotated beats in DB and red circles (O) denote the extracted peaks. As shown in the figure, the proposed method can detect normal R peaks under various conditions such as baseline drift, noisy signal, tall T waves as shown in Figure 6(c), or long paused waves as shown in Figure 6(h).

Figure 7 shows another example of the detected R peaks and annotated beats from various records in the MIT-BIH database. In this figure, numbers, such as 1, 2, 3, 5, 14, and 28, indicate the annotation types of each beat. As shown in the figure, the proposed method can remove abnormal beats at the initial position of the ECG signal and correct the location errors of record 117 as shown in Figure 7(c).

Despite the superiority of the proposed method, detection errors still exist. Figure 8 demonstrates examples of false positives (FP) and false negatives (FN) of the proposed method. FP is mainly generated in a high-frequency region, and FN occurs in a small-noise area between R peaks. Especially, the DER of the proposed method appears the best among others.

3.3. Evaluation Measure and Results. To evaluate the performance of our proposed R peak detection method, we require three parameters--namely, true positive (TP), false negative (FN), and false positive (FP)--from the detected R peak. Here, TP is the number of correctly detected R peaks, FN is the number of missed R peaks, and FP is the number of noise spikes incorrectly detected as R peaks. Sensitivity (Se), positive predictability (+P), detection error rate (DER), and accuracy (Acc) can be computed by using TP, FN, and FP by using the following equations, respectively, as widely used in the literatures [1, 2, 4, 13, 24-26]:

Se = TP/TP + FN x 100%, +P = TP/TP + FP x 100%, DER = FP + FN/TP x 100%, Acc = TP/TP + FP + FN x 100%, (20)

where TP are the correctly detected beats (true positive), FP are falsely detected beats (false positive), and FN are the undetected beats (false negative). The sensitivity is used for evaluating the ability of the algorithm to detect true beats, the positive predictability is used for evaluating the ability of the algorithm to discriminate between true and false beats, and the error rate is used for evaluating the accuracy of the algorithm [25].

The performance of the proposed R peak detection method for 48 ECG recordings of the MIT-BIH arrhythmia database is summarized in Table 2. The proposed method detects a total of 109,415 (In total, there are 116,137 annotated beats in MIT-BIH DB, but this number varies among different references due to the use of different steps and comparing tools [24]) true peaks. It also produces 79 FNs and 99 FPs. The average accuracy for the proposed method is 99.838%, the sensitivity is 99.93%, the positive predictability is 99.91%, and the detection error rate is 0.163%. The obtained performance is comparable to the best performances reported in the literature considering the processing speed and memory use. The high detection accuracy of the proposed method is especially meaningful because it is based on wavelet transform. Previous studies using wavelet transform did not show high performance compared with nonwavelet transform-based methods. Moreover, the final validation procedure proposed in our method verifies the validity of each detected peak and further improved the peak detection accuracy.

In Table 3, the performance of the proposed method on the MIT-BIH arrhythmia DB is compared with other existing methods. It shows that our proposed method has comparable accuracy to other conventionally used methods including wavelet transform techniques, the differential operation method, the Pan and Tompkins algorithm, SEHT, and the Shannon energy technique.

The previous four measures are related only to the R peaks. Recently, measures of HRV have been suggested, such as the mean of R-R intervals (MRR), standard deviation of normal to normal R-R intervals (SDNN), and root mean square of normal to normal RR intervals (RMSSD, where R is the peak of a QRS complex (heartbeat) [29].

(i) MRR is measured by

MRR = [bar.I] = 1/N - 1 [N.summation over (n=2)] I(n), (21)

where N is the total heart beats (N = TP + FN), I(n) is R-R interval between nth R peak and previous R peak, and [bar.I] is a mean of R-R intervals.

(ii) SDNN is defined by

SDNN = [square root of (1/N - 1 [N.summation over (n=2)] [[I(n) - [bar.I]].sup.2]. (22)

(iii) RMSSD is measured by

RMSSD = [square root of (1/N - 2 [N.summation over (n=3)] [[I(n) - I(n - 1)].sup.2]. (23)

Figure 9 depicts the measured MMR, SDNN, and RMSSD from R-R intervals of the extracted R peaks. By investigating these measures, initial diagnosis of CVDs for patients can be achieved. In Figure 9, half of MRRs are illustrated to show three different kinds of measures together. The proposed method obtained MRR of 0.808, SDNN of 0.145, and RMSSD of 0.193, on average.

3.4. Experimental Environment and Real-Time Implementation. The proposed R peak detection method using WT and modified SEE has been implemented with MATLAB R2016b on a PC with a 3.3-GHz Intel Core i5-4590 CPU, 4 GB of memory on Windows 7. The average processing time of our method is approximately 13.7 s on 48 ECG records in the MIT-BIH arrhythmia DB with a length of 30 minutes. As a result, the average throughput is 28.6 ms for an ECG signal. We showed exact parameter values used in our experiments around each of the equations throughout the manuscript to help researchers who want to implement our methods. It is recommended that researchers carefully follow the descriptions provided in Section 2.5 to obtain the same peak detection accuracies as those presented in this paper.

3.5. Discussions. This study presented our approach using WT and modified SEE for detecting R peaks of an ECG signal in the QRS complex. We used WT to take advantage of its representation power of temporal features at various resolutions. We applied WT to ECG signals to perform both down-sampling and noise reduction in a single step. This WT replaces the band-pass filtering used in a few representative ECG signal analysis methods [13, 25]. We also applied a soft-thresholding method for noise removal with keeping informative signals. The application of SEE and PEE can be considered as similar to the methods in [13]. However, we introduced additional postprocessing steps (Section 2.5) where the R-R peak intervals were inspected to determine whether to keep each detected R peak or detect additional R peaks in an R-R peak interval.

The novelty of our work is twofold: (1) Firstly, we proposed an ECG analysis technique that starts with WT method. There have been many WT-based methods, but their performances have been observed lower than those of non-WT-based methods [1, 4, 10, 13, 16-18, 25]. Our study demonstrates the possibility of obtaining high-peak detection accuracy in ECG signal analysis by using WT method. (2) Secondly, we proposed a postprocessing method that verifies the validity of each detected peak and indicates the probability of a missing peak.

The experimental results of our study show reasonable R peak detection performance with using less memory and processing time. This study has diverse applications in the initial diagnosis of CVDs for remote patients. The quantitative parameters (i.e., sensitivity, positive predictability, detection error rate, and accuracy) confirm acceptable performance of the proposed WTSEE detection method in practical applications.

4. Conclusion

In this paper, we presented a novel approach to detecting R peaks of an ECG signal and calculating the R-R interval of the R peaks via the wavelet transform (WT) method and a modified Shannon energy envelope (SEE) for rapid ECG analysis. The proposed method utilized WT and showed superior performance to other WT-based methods. We believe that the use of WT combined with subsequent processing steps properly analyzed the ECG signals to detect R peaks with high accuracy. Moreover, the proposed postprocessing method effectively validated each detected peak and indicated miss detection to further improve the peak detection accuracy.

The proposed system was tested using the MIT-BIH arrhythmia DB. We analyzed the system performance for sensitivity, positive predictability, detection error rate, and accuracy. We compared the proposed approach with the existing techniques to validate the superior performance of the former. In the future, we would like to apply our analysis method to detecting other peak points in ECG signals. Detecting various types of peaks in ECG signal will provide more useful information for diagnosing CVDs and create a number of related applications.

https://doi.org/ 10.1155/2017/4901017

Conflicts of Interest

The authors declare that there are no competing interests regarding the publication of this paper.

Acknowledgments

This research was supported by the Basic Science Research Program through the National Research Foundation of Korea funded by the Ministry of Education, Science and Technology (NRF-2012R1A1A3015620, NRF-2015R1D1A1A01060422) and by the Brain Research Program through the National Research Foundation of Korea funded by the Ministry of Science, ICT & Future Planning (NRF-2014M3C7A1046050).

References

[1] Z. Zidelmal, A. Amirou, M. Adnane, and A. Belouchrani, "QRS detection based on wavelet coefficients," Computer Methods and Programs in Biomedicine, vol. 107, no. 3, pp. 490-496, 2012.

[2] M. Merino, I. M. Gomez, and A. J. Molina, "Envelopment filter and K-means for the detection of QRS waveforms in electrocardiogram," Medical Engineering and Physics, vol. 37, no. 6, pp. 605-609, 2015.

[3] R. B. K. Hoti and S. Khattak, "Automated noise removal and feature extraction in ECGs," Arabian Journal for Science and Engineering, vol. 39, no. 3, pp. 1937-1948, 2014.

[4] H.-Y. Lin, S.-Y. Liang, Y.-L. Ho, Y.-H. Lin, and H.-P. Ma, "Discrete-wavelet-transform-based noise removal and feature extraction for ECG signals," IRBM, vol. 35, no. 6, pp. 351-361, 2014.

[5] A. Ristovski, A. Guseva, M. Gusev, and S. Ristov, "Visualization in the ECG QRS detection algorithms," in Proceedings of the 39th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO 2016), pp. 202-207, Opatija, Croatia, May-June 2016.

[6] S. Yazdani and J.-M. Vesin, "Extraction of QRS fiducial points from the ECG using adaptive mathematical morphology," Digital Signal Processing, vol. 56, Issue C, pp. 100-109, 2016.

[7] R. Rodriguez, A. Mexicano, J. Bila, S. Cervantes, and R. Ponce, "Feature extraction of electrocardiogram signals by applying adaptive threshold and principal component analysis," Journal of Applied Research and Technology, vol. 13, no. 2, pp. 261-269, 2015.

[8] D. Ai, J. Yang, Z. Wang, J. Fan, C. Ai, and Y. Wang, "Fast multi-scale feature fusion for ECG heartbeat classification," EURASIP Journal on Advances in Signal Processing, vol. 2015, no. 46, 2015.

[9] W.H.O, "World health statistics - part 6: SDG health and health-related targets," Tech. Rep., World Health Organization, 2016.

[10] M. Merah, T. A. Abdelmalik, and B. H. Larbi, "R-peaks detection based on stationary wavelet transform," Computer Methods and Programs in Biomedicine, vol. 121, no. 3, pp. 149-160, 2015.

[11] L. D. Sharma and R. K. Sunkaria, "A robust QRS detection using novel pre-processing techniques and kurtosis based enhanced efficiency," Measurement, vol. 87, pp. 194-204, 2016.

[12] Y.-C. Yeh and W.-J. Wang, "QRS complexes detection for ECG signal: the difference operation method," Computer Methods and Programs in Biomedicine, vol. 91, pp. 245-254, 2008.

[13] M. Rakshit, D. Panigrahy, and P. K. Sahu, "An improved method for R-peak detection by using Shannon energy envelope," Sadhana. Academy Proceedings in Engineering Sciences, vol. 41, no. 5, pp. 469-477, 2016.

[14] J. Pan and W. J. Tompkins, "A real-time QRS detection algorithm," IEEE Transactions on Biomedical Engineering (BME), vol. 32, no. 3, pp. 230-236, 1985.

[15] F. Sufi, Q. Fang, and I. Cosic, "ECG R-R peak detection on mobile phones," in Proceedings of 29th IEEE Conference on Engineering in Medicine and Biology Society (EMBS), pp. 3697-3700, Lyon, France, August 2007.

[16] J. P. Martinez, S. Olmos, and P. Laguna, "Evaluation of a wavelet-based ECG waveform detector on the QT database," in Computers in Cardiology, pp. 81-84, Cambridge, MA, 2000.

[17] P. Karthikeyan, M. Murugappan, and S. Yaacob, "ECG signal denoising using wavelet thresholding techniques in human stress assessment," International Journal on Electrical Engineering and Informatics, vol. 4, no. 2, pp. 306-319, 2012.

[18] M. Yochum, C. Renaud, and S. Jacquir, "Automatic detection of P, QRS and T patterns in 12 leads ECG signal based on CWT," Biomedical Signal Processing and Control, vol. 25, pp. 46-52, 2016.

[19] Y. Sun, K. L. Chan, and S. M. Krishnan, "Characteristic wave detection in ECG signal using morphological transform," BMC Cardiovascular Disorders, vol. 5, pp. 28-27, 2005.

[20] J. A. Vav Alste and T. S. Schilder, "Removal of base-line wander and power-line interference from the ECG by an efficient FIR filter with a reduced number of taps," IEEE Transactions on Biomedical Engineering (BME), vol. 32, no. 12, pp. 1052-1060, 1985.

[21] P. Phukpattaranont, "QRS detection algorithm based on the quadratic filter," Expert Systems with Applications, vol. 42, no. 11, pp. 4867-4877, 2015.

[22] M. S. Manikandan and K. P. Soman, "A novel method for detecting R-peaks in electrocardiogram (ECG) signal," Biomedical Signal Processing and Control, vol. 7, pp. 118-128, 2012.

[23] H. Zhu and J. Dong, "An R-peak detection method based on peaks of Shannon energy envelope," Biomedical Signal Processing and Control, vol. 8, no. 5, pp. 466-474, 2013.

[24] Z. Zidelmal, A. Amirou, D. Ould-Abdeslam, A. Moukadem, and A. Dieterlen, "QRS detection using S-transform and Shannon energy," Computer Methods and Programs in Biomedicine, vol. 116, no. 1, pp. 1-9, 2014.

[25] H. Beyramienanlou and N. Lotfivand, "Shannon's energy based algorithm in ECG signal processing," Computational and Mathematical Methods in Medicine, vol. 2017, Article ID 8081361, 16 pages, 2017.

[26] M. Baurnert, "QT variability versus sympathetic cardiac activity in patients with major depression and patients with panic disorder," in Proceedings of World Congress on Medical Physics and Biomedical Engineering (IFMBE), vol. 25, no. 4, pp. 1318-1320, Munich, Germany, September 2009.

[27] G. B. Moody and R. G. Mark, "The impact of the MIT-BIH arrhythmia database," IEEE Engineering in Medicine and Biology, vol. 20, no. 3, pp. 45-50, 2001, https://physionet.org/ physiobank/database/mitdb/.

[28] http://wavelets.pybytes.com/wavelet/sym5/.

[29] H.-M. Wang and S.-C. Huang, "SDNN/RMSSD as a surrogate for LF/HF: a revised investigation," Modelling and Simulation in Engineering, vol. 2012, Article ID 931943, 8 pages, 2012.

Jeong-Seon Park, (1) Sang-Woong Lee, (2) and Unsang Park (3)

(1) Department of Multimedia, Chonnam National University, 50 Daehak-ro, Yeosu, Jeollanamdo 59626, Republic of Korea

(2) Department of Software, Gachon University, 1342 Seongnam-daero, Sujeong-gu, Seongnam, Gyeonggido 13120, Republic of Korea

(3) Department of Computer Science & Engineering, Sogang University, 35 Baekbeom-ro, Mapo-gu, Seoul 04107, Republic of Korea

Correspondence should be addressed to Unsang Park; unsangpark@sogang.ac.kr

Received 16 December 2016; Revised 3 April 2017; Accepted 23 April 2017; Published 5 July 2017

Academic Editor: Benlian Xu

Caption: FIGURE 1: Fiducial points of an ECG signal: P wave, QRS complex, T wave, and time intervals.

Caption: FIGURE 2: Data flow in the proposed R peak detection method using WT and modified SEE.

Caption: FIGURE 3: Procedure of wavelet transform comprising filtering, down-sampling, thresholding, up-sampling, and reconstruction.

Caption: FIGURE 4: Comparison of scaling function and wavelet function with symlets 5 [28].

Caption: FIGURE 5: Example flow of the proposed R peak detection methods using WT and modified SEE. (a) Input ECG signal of record 121, (b) resized ECG after wavelet transform, (c) output of 1st-order differential, (d) squared differential, (e) normalized differential, (f) calculated Shannon energy (SE), (g) extracted Shannon energy envelope (SEE) after moving average, (h) normalized difference of SEE, (i) calculated peak energy (PE) after square operation, (j) extracted peak energy envelope (PEE) after moving average, (k) estimated peaks in PEE (red circles), and (l) true detected R peaks in ECG signal (red circles).

Caption: FIGURE 6: Examples of the detected R peaks from various normal records: (a) 101, (b) 108, (c) 111, (d) 112, (e) 202, (f) 221, (g) 222, and (h) 232. In the figure, black asterisks (*) denote the annotated beats in MIT DB and red circles (O) denote the extracted R peaks.

Caption: FIGURE 7: Examples of the annotated beats and detected real peaks from various records: (a) 106, (b) 111, (c) 117, (d) 119, (e) 207, and (f) 233. In the figure, the numbers such as 1, 2, 3, 5, 14, and 18 indicate the annotation types of each beat.

Caption: FIGURE 8: Detection failure of the proposed WTSEE method.

Caption: FIGURE 9: HRV measurements of the MIT-BIH DB. MRR: mean R-R intervals (ms), SDNN: standard deviation of normal to normal R-R intervals, RMSSD: root mean square of normal to normal R-R intervals.

TABLE 1: Summary and example of the 23 types of annotated beats in the MIT-BIH arrhythmia DB. 1: NORMAL (75,025) 2: LBBB (8075) 3: RBBB 4: ABERR (150) (7529) 5: PVC (7130) 6: FUSION (803) 7: NPC 8: APC (2546) (83) 9: SVPB (2) 10: VESC (106) 11: NESC 12: PACE (7028) (229) 13: UNKNOWN (33) 14: NOISE (616) 16: ARFCT 22: NOTE (437) (132) 28: RHYTHM (1291) 31: FLWAV (472) 32: VFON 33: VFOFF (6) (6) 34: AESC (16) 37: NAPC (193) 38: PFUS 23 types of (982) annotation Total annotated beats: 112,647 TABLE 2: Performance of the proposed R peak detection method using the MIT-BIH arrhythmia DB with length 30 min. Record Total beats TP FN FP Se +P (%) (TP + FN) (beats) (beats) (beats) (%) 100 2273 2272 1 0 99.96 100 101 1865 1864 1 3 99.95 99.84 102 2187 2187 0 0 100 100 103 2084 2084 0 0 100 100 104 2229 2228 1 5 99.96 99.78 105 2572 2568 4 17 99.84 99.34 106 2027 2024 3 5 99.85 99.75 107 2137 2136 1 1 99.95 99.95 108 1763 1759 4 5 99.77 99.72 109 2532 2532 0 1 100 99.96 111 2124 2123 1 0 99.95 100 112 2539 2539 0 0 100 100 113 1795 1794 1 0 99.94 100 114 1879 1878 1 2 99.95 99.89 115 1953 1953 0 3 100 99.85 116 2412 2400 12 2 99.50 99.92 117 1535 1532 3 1 99.80 99.93 118 2278 2278 0 2 100 99.91 119 1987 1986 1 2 99.95 99.90 121 1863 1862 1 1 99.95 99.95 122 2476 2476 0 0 100 100 123 1518 1518 0 2 100 99.87 124 1619 1619 0 4 100 99.75 200 2601 2600 1 2 99.96 99.92 201 1963 1960 3 0 99.85 100 202 2136 2135 1 0 99.95 100 203 2980 2959 21 8 99.30 99.73 205 2656 2655 1 0 99.96 100 207 1860 1858 2 5 99.89 99.73 208 2955 2946 9 3 99.70 99.90 209 3005 3005 0 1 100 99.97 210 2650 2649 1 2 99.96 99.92 212 2748 2748 0 0 100 100 213 3251 3251 0 0 100 100 214 2262 2262 0 1 100 99.96 215 3363 3362 1 0 99.97 100 217 2208 2208 0 1 100 99.95 219 2154 2154 0 0 100 100 220 2048 2048 0 0 100 100 221 2427 2427 0 1 100 99.96 222 2483 2483 0 1 100 99.96 223 2605 2605 0 0 100 100 228 2053 2052 1 12 99.95 99.42 230 2256 2256 0 2 100 99.91 231 1571 1571 0 0 100 100 232 1780 1780 0 2 100 99.89 233 3079 3076 3 2 99.90 100 234 2753 2753 0 0 100 100 Total 109,494 109,415 79 99 99.93 99.91 Record DER (%) Acc (%) 100 0.044 99.956 101 0.215 99.786 102 0 100 103 0 100 104 0.269 99.731 105 0.818 99.189 106 0.395 99.606 107 0.094 99.906 108 0.512 99.491 109 0.039 99.961 111 0.047 99.953 112 0.000 100.000 113 0.056 99.944 114 0.160 99.841 115 0.154 99.847 116 0.583 99.420 117 0.261 99.740 118 0.088 99.912 119 0.151 99.849 121 0.107 99.893 122 0 100 123 0.132 99.868 124 0.247 99.754 200 0.115 99.885 201 0.153 99.847 202 0.047 99.953 203 0.980 99.029 205 0.038 99.962 207 0.377 99.625 208 0.407 99.594 209 0.033 99.967 210 0.113 99.887 212 0 100 213 0 100 214 0.044 99.956 215 0.030 99.970 217 0.045 99.955 219 0 100 220 0 100 221 0.041 99.959 222 0.040 99.960 223 0 100 228 0.634 99.370 230 0.089 99.911 231 0 100 232 0.112 99.888 233 0.163 99.838 234 0 100 Total 0.163 99.838 TABLE 3: Comparison of the proposed WTSEE method with other methods for detecting R peaks using the MIT-BIH database. Method Total beats (a) TP FN FP (beats) (TP + FN) (beats) (beats) Proposed WTSEE 109,494 109,415 79 99 ISEE, 2016 [13] 109,532 109,474 58 116 PSEE, 2013 [23] 109,494 109,401 93 91 SEHT, 2012 [22] 109,496 109,417 79 140 DOM, 2008 [12] 109,809 109,751 58 166 STSE, 2014 [24] 108,494 108,323 171 97 WT, 2004 [16] 109,428 109,208 220 153 PT, 1985 [14] 109,809 109,302 507 277 Method Se +P DER Acc (%) (b) (%) (b) (%) (b) (%) (b) Proposed WTSEE 99.93 99.91 0.163 99.838 ISEE, 2016 [13] 99.95 99.89 0.159 99.841 PSEE, 2013 [23] 99.92 99.92 0.168 99.832 SEHT, 2012 [22] 99.93 99.87 0.200 99.800 DOM, 2008 [12] 99.95 99.85 0.204 99.796 STSE, 2014 [24] 99.84 99.91 0.247 99.753 WT, 2004 [16] 99.80 99.86 0.342 99.660 PT, 1985 [14] 99.54 99.75 0.717 99.288 (a) Total beats--the sum of total beats of all analyzed records in each study. (b) These values are calculated by total beats.

Printer friendly Cite/link Email Feedback | |

Title Annotation: | Research Article |
---|---|

Author: | Park, Jeong-Seon; Lee, Sang-Woong; Park, Unsang |

Publication: | Journal of Healthcare Engineering |

Date: | Jan 1, 2017 |

Words: | 6770 |

Previous Article: | A Novel Approach towards Medical Entity Recognition in Chinese Clinical Text. |

Next Article: | Development and Implementation of an End-Effector Upper Limb Rehabilitation Robot for Hemiplegic Patients with Line and Circle Tracking Training. |

Topics: |