You are on page 1of 18

Time-Frequency Analysis

and Wavelet Transform


(Tutorial)
Topic
The Application of Time-Frequency
Analysis on Biomedical ECG Signals

Student: Chen-Wei Huang


ID: D00942010
Date: 2013.01

Graduate Institute of Communication Engineering


National Taiwan University

-1-

CONTENTS
I.

Introduction.......................................................................................3

II. Methods..............................................................................................4
A. Time Domain Algorithms...........................................................5
(a) Derivative Method I................................................................5
(b) Derivative Method II...............................................................6
B. Frequency Domain Algorithms.................................................8
(a) Hilbert Transform Method......................................................8
(b) Discrete Wavelet Transform Method......................................9
C. Other Algorithms......................................................................10
(a) Genetic Method.....................................................................10
(b) Geometrical Match Method..................................................12
(c) Topological Mapping Method...............................................13
(d) Filter Bank Method...............................................................13
(e) Zero Crossing Method...........................................................14
(f) Morphology Method..............................................................15
III. Detection Performance Estimators................................................16
IV. One Popular Ecg Database.............................................................16
V. Performance Comparisons.............................................................17
VI. Conclusions......................................................................................17
VII.References........................................................................................19

-2-

AbstractBiomedical engineering is a big field research and usually requires


a lot of knowledge to handle different biomedical signals through mathematical
techniques and Computer-Aided Design (CAD) to help analyze medical data in
order to get quick and accurate analyzed result. Sometimes biomedical signals
are randomly and quickly changing to lead that it is hard to analyze such signals
in most cases. In this tutorial, it will focus on ElectroCardioGram (ECG)
biomedical signal analysis. The ECG signal can provide the information of
human heart status and are the most important indicator among all vital body
parameters. Many heart diseases can be found by analyzing ECG waves. Thus
an ECG analyzing method with good performance (faster and more accurate
result) is very helpful for determining the characteristics of the ECG signals.
This tutorial will introduce several ECG R-wave peak detection algorithms and
summarize the performance results between those methods. Because biomedical
signals are usually non-stationary, sometimes Fourier Transform is not suitable
to apply for all biomedical signals. To solve such problems, time-frequency
analysis and wavelet transform will be a good choice to provide both time and
frequency information at the same time..

Index TermsElectrocardiogram (ECG), R-wave detection, Sensitivity (SE),


Positive Prediction (+P), Detection Error Rate (DER) and MIT/BIH.

I. INTRODUCTION
The ECG signal is a biological signal and can be represented by a cyclic occurrence
of patterns with different frequency contents (QRS complex, P and T waves). By
observing the QT interval, the ST interval, and the PR interval, these differences can
lead to many physiological conditions as shown in Fig. 1.
Nowadays the applications of ECG signal analysis are feature extraction, feature
detection, data compression, heart rate variability (HRV) and R-wave detection. By
considering such information, the different types of diseases can be determined if
using the time-frequency analysis and wavelet transform.
ECG R-wave peak detection is the most important job in all automated ECG
analysis algorithms. When the position of R-wave peak is found, the locations of
other components of ECG signals such that Q, S waves can be found by considering
the relative position of R-wave peak and P wave is relative to the Q wave as well as T
wave is relative to the S wave. The normal ECG waveform is shown in Fig. 1.
Therefore, accurate detection of the R-wave peak becomes more essential in ECG
signal analysis.

-3-

Fig. 1. A standard and normal ECG signal waveform.


Software QRS detector is an integral and essential part of ECG signal detection.
The most cases of QRS detectors usually own two processing steps. The first step is to
do digital filtering of the ECG signals by linear or nonlinear method and to find out all
possible locations of the QRS R-wave peak by peak detection algorithm. The second
step is to do peak decision rule by considering peak characteristic properties
(including peak heights from the processed ECG signal and time of peak occurrence)
and to classify each R-wave candidate as either an actual QRS complex peak or a
noise peak.
The automatic detection of ECG waves is important to cardiac disease diagnosis. A
good performance of an ECG analyzing method will highly affect the accurate and
reliable detection of the QRS complexes as well as the T and P waves. Thus this
tutorial will focus on introducing the existing R-wave detection algorithms for ECG
signals.

II. METHODS
Many R-wave detection algorithms have been proposed by researchers for the past
several decades. These detection algorithms can be divided into the following
mathematical algorithms including Time domain detection algorithms [2][3][8][9].
Considering that R-wave is characterized by of high amplitude and the ECG signal is
changing quickly, these algorithms directly detect R-wave in time domain by using
detecting threshold of ECG signal with first-order or second-order derivative. Time
domain algorithms are often good enough for real-time application but they are
sensitive to interference. Thus such existing algorithms are suitable for the ECG
signal without changing quickly sometimes. Frequency domain detection algorithms
[4][5][6][12]. Firstly, obtain transformation of ECG signal by linear or nonlinear
transform, in which SNR is higher than original ECG signal. Then apply appropriate
threshold detection rules. The representative transform includes wavelet transform,
Hilbert transform, etc. Transform domain algorithms often have high detection rate
and good robustness to interference but sometimes need more detection time. Other
algorithms [20][21][22][23] include template matching and morphologic filtering
algorithms, gene-based design, morphology-based design, zero-crossing design and
filter bank design.
In the past several decades, there were many studies focusing on ECG signal
detection for QRS complex. The goal is to get higher sensitivity, higher positive
-4-

predication and lower detection error rate. In the follows, several published
algorithms in the past years were shown in many topics of conferences and journals.
In this section, now the detailed existing methods will be introduced to show
development processes of the ECG detection algorithm in the past years in detecting
R-wave peaks.

A. Time Domain Algorithms


(a) Derivative Method I
In order to attenuate noise, the signal passes through a digital band-pass filter
composed of cascaded high-pass and second-order low-pass filters. The stop
frequencies are set at 5 and 15 Hz.
The transfer function of the low-pass filter is
(1 z 6 ) 2
H ( z)
(1 z 1 ) 2
The transfer function of the high-pass filter is
(1 32 z 16 z 32 )
H ( z)
(1 z 1 )
After filtering, the signal is differentiated to provide the R-wave slope information.
The transfer function of the differentiation is
( z 2 2 z 1 2 z1 z 2 )
H ( z)
8T
After differentiation, the signal is squared point by point. Obtain waveform feature
information in addition to the slope of the R wave by moving-window integration. It
is calculated as below. The symbol N is the number of samples in the width of the
integration window.
y (nT )

x( nT ( N 1)T ) x(nT ( N 2)T ) K x (nT ))


N

The filtered signal and the integration signal process the threshold detection
respectively. To be identified as the R-wave, a peak must be detected in both the
integration and the filtered waveforms with adaptive thresholds.
The rules to c1assity the R-wave peak or noise peak are presented as below. The
maximal peak detected in a regular RR time interval that satisfies the condition of
peak height > threshold. If the condition is true, the peak is considered to a R-wave
peak, other peaks are considered to the noisy peak. If no R-wave is detected in a
regular RR time interval, search-back procedure is required to look for the
waveforms. The more details can be referred in [1].
(b) Derivative Method II
-5-

In order to attenuate noise, the signal passes through a digital band-pass filter
composed of cascaded high-pass and second-order low-pass filters. After this,
following steps are differentiation, squaring, and time averaging of the ECG signal. A
separate derivative of the original ECG is used for wave discrimination.
The low-pass filter is one of a class of filters and implemented with the difference
equation as below.

y (nT ) 2 y (nT T ) y (nT 2T ) x (nT ) 2 x(nT 6T ) x(nT 12T )


Where T is the sampling period, n is an arbitrary integer, x( n) is the differentiated
ECG signal and y (n) is the bandpassed ECG signal.
The high-pass filter is implemented with the difference equation as below.

y (nT ) y (nT T ) x( nT ) / 32 x(nT 16T ) x( nT 17T ) x(nT 32T ) / 32


The difference equation for the derivative is

y (nT ) (2 x( nT ) x( nT T ) x(nT 3T ) 2 x( nT 4T )) / 8
The nonlinear squaring function squares each output data point. Time averaging is
done by adding together the 32 most recent values from the squaring function and
dividing the total by 32.

Fig. 2. Block diagram of Derivative Method II

-6-

Fig. 3. (a) Unfiltered ECG signal (b) Output of Bandpassed filter


(c) Output after bandpass, differentiation and squaring processes
(d) Final time-averaged signal.
The final step of this method is to do peak detection. A typical large waveform
produced by the time-averaged window is very similar to a QRS complex. Although it
is easy to visually identify one large peak, simple peak detection algorithms falsely
detect multiple peaks due to ripples in the wave. A simple local maximum peak
detector should have the ability of detecting many small-amplitude peaks. Although
both peaks result from the same QRS complex, one peak is classified as resulting
from a QRS complex, the others are classified as noise. This can bias the noise level
estimate on the high side. In contrast, some ripples in the baseline of the timeaveraged signal can bias the noise estimate on the low side. The more details can be
referred in [15].

B. Frequency Domain Algorithms


(a) Hilbert Transform Method
Mathematically, the Hilbert transform is defined as
1 x( )
xH (t )
d
t
Or
xH (t ) IFT {FT [ x(t )]H ( f )}
where x(n) is the differentiated ECG input.
In the frequency domain, the signal is transformed with a filter of response.

-7-

j, 0 f
j , f 0

H( f )

o
The input signal x(n) is equivalently processed with an all-pass filter with 90
o
shift for positive frequencies and 90 shift for negative frequencies. The Hilbert
transform is the imaginary part of the analytic signal that has the input as its real part.

Because the Hilbert transform is the zero-crossings and an odd filter of the
differentiated ECG, the Hilbert transform will be represented as peaks in the output of
the transform. The output of the Hilbert transform on the differentiated ECG has been
explained in terms of its odd symmetry property and signal envelope. The all-pass
characteristic of Hilbert transform prevents unnecessary signal distortion. In contrast
to the second derivative method, it tends to attenuate the signal at the lower
frequencies. Thus, the odd-phase component of the filter provides the necessary
modification of the differentiated ECG signal in order to identify the QRS peaks
while the uniform magnitude of the filter ensures that necessary information of the
QRS complexes is preserved. The effects of the magnitude and phase of this
transform are further used.
The first differential in discrete domain of the ECG waveform sequence x(n) can
be obtained by
x (n 1) x (n 1)
y ( n)
2
The Hilbert transform h( n) of the sequence y (n) that represents the first
differential of the ECG waveform in this subset is then obtained using the following
methodology. At first obtain the Fourier transform F (n) of the input sequence y ( n)
and set DC component to zero. Later multiply the positive and negative harmonics by
j and j respectively.
Perform the inverse Fourier transform of this resulting sequence to obtain the
Hilbert transform h(n) . Finally, threshold detection is used to locate the peaks in

h(n) sequence. The position of the R-wave is located by threshold detection if its
value is greater than 18% of the maximum value of the sequence. The Hilbert
transform can have other modified forms such as it can combine with one or two
adaptive thresholding method. The more details can be referred in [8].
(b) Discrete Wavelet Transform Method
The main idea behind this algorithm was to use Discrete Wavelet Transform
(DWT) and Cubic Spline Interpolation (CSI) techniques with an improved dynamic
weights adjusting strategy to enhance the detection robustness and the signal-to-noise
ratio (SNR) of this ECG signal in heavy noise condition. It made use of the property
that symmetric wavelet decomposition can be used to retrieve delta-function peak
location precisely. DWT aims to separate base line drift, QRS R-wave peak and highfrequency noise. The interpolation was employed to adjust the coefficients of each
-8-

decomposition level and improve time resolution of wavelet coefficients in high


decomposition levels, which generates smooth curves and suppresses noise. In
addition, an improved dynamic weight adjusting strategy was adopted to assign
proper weight for each level to further enhance the signal-to-noise ratio. Finally, a
peak detector is employed to generate R peak candidates and an adaptive threshold
detector to locate R peaks.

Fig. 4. Block Diagram of Wavelet Transform.


It is obvious that wavelet coefficient has better time resolution in low
decomposition levels and has better frequency resolution for high decomposition
levels. When wavelet coefficients from different levels are found, it is reasonable to
improve high level resolution to achieve higher time accuracy. In fact, all these
preserved levels are interpolated with different gains. As cubic spline interpolation
technique is used to evaluate new points between given R-wave candidates, it is
employed in the preprocessing step to find out the wavelet coefficients.
From here, we can observe that symmetric wavelet is suited to precisely locate the
R-wave peaks in the ECG signal. There is a local maximum in the wavelet
coefficients to find out the locations of R-wave peaks. Using the local maximum of
wavelet coefficients is the essential point of such an algorithm. Spline interpolation is
adopted in this method to improve time resolution of wavelet coefficients in high
decomposition levels, which generates smooth curves and suppresses noise. In
addition, an adaptive coefficient weighting strategy is used to improve the SNR in
heavy noise condition. Such method sometimes has better accuracy on detection on
ECG signals but may need more computation time. The more details can be referred
in [9],[12].

C. Other Algorithms
(a) Genetic Method
There is an approach to design optimal QRS detectors which used a detector
including the linear or nonlinear polynomial filter to enhance the QRS complexes as
well as a simple and adaptive maxima detector. The design of such a QRS detector
required the definition of the characteristics of the polynomial filter as well as the
selection of its coefficients and the parameters of the maxima detector. Some of these
variables were set by the human designer, the others were chosen by a genetic
algorithm. In genetic algorithm application, it used several filters including the QuasiLinear filter and the Quadratic filter to apply to consecutive samples and selected
samples.
-9-

Fig. 5. Block Diagram of Genetic Method.


In polynomial filters, the output signal y at time i is the value taken by a
x , x ,..., xi d N
polynomial of order M of a set of N input samples i d1 i d 2
.

yi ... ak1k2 ...k N xik1 d1 xik2d 2 ...xikNd N


k1 0 k2 0

kN 0

and

d
where j is the time delay with respect to time i .
The maximum detector is used to detect the maxima of the filter output. To avoid
false detections in the presence of noise, QRS-like artifacts, and filter responses, only
the maxima that have amplitude greater than a threshold.

Genetic algorithm has allowed optimizing the parameters of the maxima detector
and the coefficients of the filter according to a single criterion: minimizing the
number of erroneous detections. While this objective function is commonly used in
the optimization of detectors having few parameters, it has never been adopted in
designing more complicated QRS enhancing filters or detectors. The joint
optimization of the two stages of detectors has made optimally adapted to each other.
This has allowed for the discovery of parameters which yield robust and efficient
QRS detectors even with very simple layouts and only a few operations per sample.
The more details can be referred in [23].

-10-

Fig. 6. Block Diagram of Geometrical Match Method.


(b) Geometrical Match Method
One approach was developed which is based on a geometrical matching rule
evaluated using a decision function in a local moving-window procedure. The
decision function was a normalized measurement of a similarity criterion comparing
the windowed input signal with the reference beat-pattern into a nonlinear-curve
space. A polynomial expansion model described the reference pattern. For the curve
space, an algebraic-fitting distance was built according to the canonical equation of
the unit circle. The geometrical matching approach operated in two stages including
training and detection. In the first stage, a learning method based on genetic algorithm
estimated the decision function from training beat-pattern. In the second stage, a
level-detection algorithm evaluated the decision function to establish the threshold of
similarity between the reference pattern and the input signal.
The first step is to define geometrical matching. it is similar to pattern recognition.
The goal of matching procedure is to determine the similarity between two entities. It
is proposed to evaluate the matching between the pattern and the analyzed signal
according to a nonlinear geometric metric.
The second step is to define data set and geometric curve. A measurement vector
describes the signal pattern to be detected. The selection of the most effective features
reduces the dimensionality on the measurement vector. The proposed decision
function will be trained to take into account the discriminatory features of the pattern,
evaluating the concept of -similarity. In literature, this problem involves a
preprocessing stage referred as the feature extractor machine.
The third step is to do polynomial model estimation. It must be capable to generate
the polynomial parameters. The more details can be referred in [21].
(c) Topological Mapping Method
A topological mapping is used from one dimensional sampled ECG signals to two
dimensional vectors for a real-time detection of the QRS complexes of ECG signals.
In order to describe a change of curvature, it derived a modified spatial velocity
-11-

(MSV) to locate QRS complexes more easily. In this method, firstly it should choose
the mapping parameters including time delay and mapping dimension to obtain a clear
representation of the QRS complex in the new space for a discrimination of QRS
complex from other components, such as P and T waves. Secondly it should find out
the relation between noise and phase portrait which is essential to reduce highfrequency noise components. Finally the detection method was to accept only the
QRS complex spectral components by filtering. It used only one low-pass filter to
remove high-frequency components relative to the QRS complex spectral
components. In summary, this algorithm reliably detected QRS complexes using the
rate of curvature of the vector loop. The distinct feature of this method was a change
of signal dimension to the new dimension vector loop. This topological mapping
made overall processing steps simpler and very robust to low-frequency noise or
artifact.
For this method, it is at first to choose mapping parameters including time delay
and mapping dimension. By obtaining proper reconstruction parameters and a clear
representation of the QRS complex, it is a purely geometrical considerations and
guarantees a maximum distance of trajectories represented in the new dimension.
The second step is to find out the relationship between noise and phase portrait. The
high-frequency noise includes power line interference, electrode contact noise, muscle
contractions and the low-frequency noise includes base line drift. In high-frequency
noise, the structure of phase portrait could not be recognized and it can be removed by
using filter. In low frequency noise, the structure of phase portrait does not hide and is
clearly recognizable. The more details are shown in [16].
(d) Filter Bank Method
A multi-rate digital signal processing algorithm is used to detect heart beats in the
electrocardiogram (ECG). The algorithm incorporated a filter bank (FB) which
decomposed the ECG into sub-bands with uniform frequency bandwidths. The Filter
Bank-based algorithm enabled independent time and frequency analysis to be
performed on a signal. Features computed from a set of the sub-bands and a detection
strategy was used to fuse decisions from multiple one-channel beat detection
algorithms. Further improvements to the algorithm may be easily achieved by using
more features of the frequency components of the ECG.
FB contains a set of analysis and synthesis filters. The analysis filters decompose
an incoming signal into specific frequency bands or sub-bands. Processing can be
performed on each sub-band independently. The set of synthesis filters can then
combine the processed sub-bands to result in a processed version of the input signal.
Thus, a FB-based algorithm involves decomposing a signal into frequency sub-bands,
processing these sub-bands according to the application at hand, and then sometimes
reconstructing the processed sub-bands.
The choice of filter bank is important that the FB used to process the ECG have
certain characteristics. The analysis and synthesis filters should have linear phase.
Linear phase ensures that the R-wave points in the ECG. The perfect reconstruction
property was also incorporated into the design of the FB because an overall goal is to
develop one set of filters to accomplish multiple ECG processing tasks. The more
-12-

details can be referred in [20].


(e) Zero Crossing Method
It is an algorithm based on a feature obtained by counting the number of zero
crossings per segment. The algorithm operates for feature extraction, event detection
and localization of R peak by counting zero crossings. It was a feature signal that was
largely independent of sudden changes in the amplitude level of the signal and was
robust against noise and pathological signal morphologies. It was shown that this
feature could be used for a computationally simple algorithm with a high detection
performance. Due to this simple principle, QRS detection can be realized at low
computational costs.
In feature extraction step, due to these spectrum characteristics of the ECG
components, it is reasonable to filter the ECG signal at first in order to attenuate the
mean, the P-wave, T-wave, and the high frequency noise. The bandpassed filtered
signal oscillates around zero. From observation, it is obvious that many zero crossings
are in non-QRS segments and only a small number of zero crossings are during the
QRS complex.

Fig. 7. Block Diagram of Zero Crossing Method


In event detection step, an event begins when the feature signal (number of zero
crossings per segment) falls under an adaptive threshold. The event ends when the
signal rises above the threshold. Both the beginning and the end of the event are in the
boundaries of the search interval for the temporal localization of the R-wave. If
adjacent events are temporally very close (multiple events), they will be combined
into one single event. The beginning of the combined event is the beginning of the
first event, and the end of the combined event is the end of the last event.
In temporal localization of the R-wave step, the detection of the QRS complex is
completed by the determination of the temporal location of the R-wave. If only one
ECG channel is used for the detection of the R-wave, the temporal location is
determined by a combined maximum and minimum search. Using the maximum or
the minimum position of the search interval as the temporal location of the R-wave is
a simple decision boundary. The more details can be described in [22].
(f) Morphology Method
It is an algorithm to remove background noise and baseline wandering from
original ECG signal by morphological filter , which uses two most fundamental
mathematical morphological operators (erosion and dilation). The modulus
accumulation and combination are utilized to act as a low-pass filter to enhance the
QRS complex and improve the signal-to-noise ratio. Finally peak extraction is done
by adaptive thresholding and decisions. In morphology, opening and closing are two
extended morphological operators and could also work as morphology filters with
-13-

clipping effects to cut down peaks and fill up valleys from ECG signals. Although this
paper presented a morphology-based algorithm for QRS detection which is different
from other frequency-based methods, the calculations of erosion and dilation
operations for ECG signals takes more computation time. The more details can be
referred in [10].

III. DETECTION PERFORMANCE ESTIMATORS


For the R-wave detection of the ECG signals, there are three parameters to be
proposed as standard. There are Sensitivity (SE), Positive Prediction (+P) and
Detection Error Rate (DER). The three parameters are used to evaluate the detection
performance of R-wave detection of the ECG signals for all existing detection
algorithms and their corresponding meanings are described as below.
TP
%
TP FN
TP
P(%)
%
TP FP
FP FN
DER (%)
%
Total R wave peaks
SE (%)

TP is the numbers of a correctly detected true beat (actual R-wave). FN represents


that the numbers of a missed true beat by the proposed algorithm. FP means the
numbers of a false beat detection. Thus the detection performance parameters of
Sensitivity (SE), Positive Prediction (+P) and Detection Error Rate (DER) are
calculated by using above equations respectively.

IV.ONE POPULAR ECG DATABASE


In order to compare the detection performance for those proposed algorithms in the
world, a common ECG signal database is very important for this. It is very lucky that
one database website is used and all related algorithms for ECG R-wave peak
detection are using the MIT/BIH Arrhythmia Database [1]. The characteristic
features about this database are described as below with more detailed information.
The database is public to everyone and it can be gotten by those people who are
interested in such ECG research for FREE.
It contains 48 half-hour and two-channel ambulatory ECG recordings. The subjects
are 25 men aged from 32 to 89 years-old (Records 201 and 202 came from the same
male subject) and 22 women aged from 23 to 89 years-old. From the current data
distribution of those recordings, the total 11 records from healthy persons are
including 113, 115, 116, 117, 208, 210, 212, 215, 223, 231 and 234. Other 37 records
belong to sick persons. These recordings have 11-bit resolution over 10mV and are
sampled at 360Hz and each recording has 650000 sampling points. The ground truth
data is obtained from the current MIT/BIH database website [1] and the total number
of the ground truth beats is 112647 beats.
-14-

For all recordings with many different beat types, the five beat types (+, ~, |, x
and !) could be removed from the ground truth data because they are not standard
ECG waveform. The beat types of +, ~ and | belongs to isolated QRS-like artifact. The
beat types of ! and x are ventricular flutter wave and non-conducted p-wave
respectively. The total number of final ground truth beats without considering these
five beat types is 109494 beats.

V. PERFORMANCE COMPARISONS
In order to compare the detection performance, the three parameters Sensitivity
(SE), Positive Prediction (+P) and Detection Error Rate (DER) described before are
listed here again. For the Sensitivity and Positive Prediction parameters, their values
are as higher as possible for representing the better performance. For the Detection
Error Rate parameter, its value is as lower as possible for representing the better
performance.
After collecting the performance results from all existing published algorithms,
From TABLE I, it can be seen the total ground truth beats of all existing published
algorithms ,and the values of SE, +P and DER respectively on different ECG R-wave
peak detection algorithms.

VI. CONCLUSIONS
In summaries for all existing detection algorithms, even they used different methods
or mixed methods on both time domain and frequency domain, the ONLY one goal is
to get better performance on Sensitivity (SE), Positive Prediction (+P) and Detection
Error Rate (DER) on the ECG signals for improving R-wave peak detection accuracy
of electrocardiogram (ECG) signals and obtaining better performance gain.

-15-

TABLE I
PERFORMANCE COMPARISON
WITH OTHER PUBLISHED ALGORITHMS AND THE PROPOSED ALGORITHM IN THE PAPER ON THE
STANDARD MIT/BIH ARRHYTHMIA DATABASE

Algorith
m
[7]

Total
Beats
109508

199 405 99.82% 99.63% 0.55%

[8]

97794

195 411 99.80% 99.58% 0.62%

[9]

90989

296 375 99.67% 99.59% 0.74%

[10]

109510

279 199 99.75% 99.82% 0.44%

[11]

109492

224 154 99.80% 99.86% 0.35%

[12]

102934

[13]

107344

[14]

109267

101 191 99.90% 99.81% 0.28%


211
884 98.03% 99.17% 2.79%
2
340 248 99.69% 99.77% 0.54%

[15]

116137

277 507 99.76% 99.56% 0.68%

[16]

109481

335 137 99.69% 99.87% 0.43%

[20]

90909

[21]

60431

[22]

91283

374 406 99.59% 99.55% 0.86%


124
521 97.94% 99.13% 2.92%
6
277 390 99.70% 99.57% 0.73%

[23]

109963

441 545 99.60% 99.50% 0.90%

FN

FP

SE

+P

DER

For all existing detection algorithms with better performance, we can observe that
the original ECG data is FIRSTLY processed by using filter to do baseline extraction
of ECG signals in order to reduce false detections caused by the various types of
interference which are present in ECG signals. SECONDLY, the specific methods in
time domain or frequency domain or mixed methods are used to obtain R-wave
candidates. At the THIRD step, use one or two adaptive thresholding methods to sift
for true R-wave peak of the ECG signals.
From the previous sections, we can observe there are always some trade-off
conditions on computation time and performance (SE, +P and DER) for different
ECG R-wave detection methods. There is one summary table for these proposed
methods which are shown in TABLE II.

-16-

TABLE II
SUMMARY OF ALGORITHMS
Year

Algorithm

Method

Filter

Thresholding

Comments

2011

[7]

Derivation

N/A

Two fixed schemes

Differention, Slope estimation

2011

[8]

Hibert transform

Band-Pass filter

One adaptive scheme

FFT, RR interval estimation

2008

[9]

Wavelet transform

N/A

One adaptive scheme

Discrete Wavelet Transform, Cubic Spline Interpolation

2012

[10]

Morphology

Low-Pass filter

One adaptive scheme

Dilation, Erosion, Opening and Closing

2012

[11]

Wavelet transform

Band-Pass filter

One adaptive scheme

Four-scale discrete wavelet transform

2010

[12]

Wavelet transform

Band-Pass filter

One adaptive scheme

Biorthogonal spline wavelet transform, Mallat algorithm

2008

[13]

Hibert transform

Band-Pass filter

Two fixed schemes

Hamilton-Tompkins, Squaring and time-average estimation

1986

[14]

Derivation

Band-Pass filter

One adaptive scheme

Median estimator, Search back, Peak level estimation

1985

[15]

Derivation

Band-Pass filter

Two adaptive schemes

Squaring and moving-average estimation

1996

[16]

Topological mapping

Low-Pass filter

One fixed scheme

Spatial velocity with 2D vectors

1999

[20]

Filter bank

Band-Pass filter

Two adaptive schemes

Magnitude and phase reconstruction, subband handling

2007

[21]

Geometrical match

N/A

One fixed scheme

Polynomial model estimation

2003

[22]

Zero crossing

Band-Pass filter

One adaptive scheme

Feature extraction, Zero crossing count

1995

[23]

Genetic algorithm

Band-Pass filter

One adaptive scheme

Polynomial filter, Genetic maxima detection

VII. REFERENCES
[1] Physionet website. MIT-BIH Arrhythmia Database Directory.
http://www.physionet.org/physiobank/database/, [Data is Online to be updated in
04 Apr, 2011]. 1997.
[2] J.P.Pan, A Real-Time QRS Dection Algorithm, IEEE Transaction Biomedical
Engineering, pp. 230-236, 1985.
[3] Gary. M. Friesen, A Comparison of the Noise Sensitivity of the Nine QRS
Detection Algorithms, IEEE Transaction Biomedical Engineering, vol. 37, no.1,
pp. 85-98, January. 1990.
[4] CHEN S-W, CHEN H-C and CHAN H.-L. A real-time QRS detection method
based on moving-averaging incorporating with wavelet denoising, Comput.
Meth. Prog. Biomed, pp. 187-195, 2006.
[5] SCHUCK JR A, WISBECK 1.0, QRS detector pre-processing using the complex
wavelet transform. Proc. 25th Ann. Int. Conf. IEEE/EMBS Cancun, Mexico,
pp.17-21, September. 2003.
[6] DS.Benitez, A New QRS Detection Algorithm Based on the Hilbert Transform,
Computers in Cardiology, pp. 379-382, 2000.
[7] Wang, Y, Deepu C.J and Lian, Y, A Computationally Efficient QRS Detection
Algorithm for Wearable ECG Sensors, Engineering in Medicine and Biology
Society, pp. 5641-5644, 2011.
[8] Cui Xiaomeng, A NEW real-time ECG R-wave detection algorithm, Strategic
Technology (IFOST), pp. 1252-1255, 2011.
[9] Huabin Zheng and Jiankang Wu, Real-time QRS detection method, e-health
Networking, Applications and Services, pp. 169-170, 2008.
[10] Zhang, C.F and Tae-Wuk Bae, VLSI Friendly ECG QRS Complex Detector for
-17-

Body Sensor Networks, Emerging and Selected Topics in Circuits and Systems,
pp. 52-59, 2012.
[11] Xin Liu, Yuanjin Zheng, Phyu, M.W, Endru, F.N, Navaneethan, V and Bin Zhao,
An Ultra-Low Power ECG Acquisition and Monitoring ASIC System for WBAN
Applications, Emerging and Selected Topics in Circuits and Systems, pp. 60-70,
2012.
[12] Tao Pan, Lei Zhang and Shumin Zhou, Detection of ECG characteristic points
using Biorthogonal Spline Wavelet, Biomedical Engineering and Informatics
(BMEI), 3rd International Conference, vol. 2, pp. 858-863, 2010.
[13] Arzeno, N.M, Zhi-De Deng and Chi-Sang Poon, Analysis of First-Derivative
Based QRS Detection Algorithms, IEEE Transactions on Biomedical
Engineering, pp. 478-484, 2008.
[14] Hamilton, Patrick S., Tompkins, Willis J., Quantitative Investigation of QRS
Detection Rules Using the MIT_BIH Arrhythmia Database, IEEE Transactions
on Biomedical Engineering, pp. 1157-1165, 1986.
[15] Pan, Jiapu, Tompkins, Willis J., A Real-Time QRS Detection Algorithm, IEEE
Transactions on Biomedical Engineering, vol. BME-32, issue 3, pp. 230-236,
1985.
[16] Jeongwhan Lee, Keesam Jeong, Jiyoung Yoon and Myoungho Lee, A simple
real-time QRS detection algorithm, Engineering in Medicine and Biology
Society, Bridging Disciplines for Biomedicine. Proceedings of the 18th Annual
International Conference of the IEEE, vol. 4, pp. 1396-1398 vol.4, 1996.
[17] M. Adnane, Z. Jiang, and S. Choi, Development of QRS detection algorithm
designed for wearable cardiorespiratory system, Computer Methods and
Programs in Biomedicine, vol. 93, pp. 20-31, 2009.
[18] X. D. Zou, X. Y. Xu, L. B. Yao, and Y. Lian, A 1 V 450 nW fully integrated
programmable biomedical sensor interface system, IEEE J. Solid-State Circuits,
vol. 44, no. 4, pp. 1067-1077, April. 2009.
[19] C.-T. Tsai, Z.-H. Hsieh, and W.-C. Fang, A low power low noise CMOS analog
front-end IC for portable brain-heart monitoring applications, IEEE/NIH Life
Science, pp. 43-46, 2011.
[20] Afonso, V.X., Tompkins, W.J. Nguyen, T.Q. and Shen Luo, ECG beat detection
using filter banks, IEEE Transactions on Biomedical Engineering, vol. 46 , issue
2, pp. 192-202, 1999.
[21] Suarez, K.V, Silva, J.C, Berthoumieu, Y. Gomis and P. Najim, M., ECG Beat
Detection Using a Geometrical Matching Approach, IEEE Transactions on
Biomedical Engineering, vol. 54, issue 4, pp. 641-650, 2007.
[22] B.U. KOHLER, C. HENNIG and R. ORGLMEISTER, Genetic design of
optimum linear and nonlinear QRS detectors, IEEE Transactions on Biomedical
Engineering, pp. 1137-1141, 2003.
[23] Poli, R., Cagnoni and S., Valli, G., Genetic design of optimum linear and
nonlinear QRS detectors, IEEE Transactions on Biomedical Engineering, vol.
42, issue 11, pp. 1137-1141, 1995.

-18-