Printer Friendly

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

1. Introduction

An 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. 10.1155/2017/4901017

Conflicts of Interest

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


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).


[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, physiobank/database/mitdb/.


[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;

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)
5: PVC (7130)        6: FUSION (803)    7: NPC      8: APC (2546)
9: SVPB (2)          10: VESC (106)    11: NESC    12: PACE (7028)
13: UNKNOWN (33)     14: NOISE (616)   16: ARFCT    22: NOTE (437)
28: RHYTHM (1291)    31: FLWAV (472)   32: VFON     33: VFOFF (6)
34: AESC (16)        37: NAPC (193)    38: PFUS      23 types of
                                         (982)     annotation Total
                                                   annotated beats:

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.
COPYRIGHT 2017 Hindawi Limited
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2017 Gale, Cengage Learning. All rights reserved.

Article Details
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
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.

Terms of use | Privacy policy | Copyright © 2020 Farlex, Inc. | Feedback | For webmasters