IEEE TRANSACTIONS ON BIOMEDICAL ENGINEERING, VOL. BME-32, NO. 3, MARCH 1985
A Real-Time QRS Detection Algorithm
JIAPU PAN AND WILLIS J. TOMPKINS, SENIOR
Abstract-We have developed a real-time algorithm for detection of the QRS complexes of ECG signals. It reliably recognizes QRS complexes based upon digital analyses of slope, amplitude, and width. A special digital bandpass filter reduces false detections caused by the various types of interference present in ECG signals. This filtering permits use of low thresholds, thereby increasing detection sensitivity. The algorithm automatically adjusts thresholds and parameters periodically to adapt to such ECG changes as QRS morphology and heart rate. For the standard 24 h MIT/BIH arrhythmia database, this algorithm correctly detects 99.3 percent of the QRS complexes.
INTRODUCTION THERE are many uses for a reliable QRS recognition algorithm. Computer interpretation of the 12-lead ECG is a popular technique. Coronary care units now use arrhythmia monitors extensively. Widely used Holter tape recording requires a Holter scanning device that includes a QRS detector to analyze the tapes much faster than real time. Currently under development are arrhythmia monitors for ambulatory patients which analyze the ECG in real time  -[31. When an arrhythmia appears, such a monitor can be programmed to immediately store an interval of the abnormal ECG for subsequent transmission to a central station where a physician can interpret it. Such a device requires a very accurate QRS recognition capability. False detection results in unnecessary transmission of data to the central station or requires an excessively large memory to store any ECG segments that are unnecessarily captured. Thus, an accurate QRS detector is an important part of many ECG instruments. QRS detection is difficult, not only because of the physiological variability of the QRS complexes, but also because of the various types of noise that can be present in the ECG signal. Noise sources include muscle noise, artifacts due to electrode motion, power-line interference, baseline wander, and T waves with high-frequency characteristics similar to QRS complexes. In our approach, digital filters reduce the influence of these noise sources, and thereby improve the signal-to-noise ratio. Of the many QRS detectors proposed in the literature, few give serious enough attention to noise reduction. Software QRS detectors typically include one or more of three different types of processing steps: linear digital filtering, nonlinear transformation, and decision rule algorithms . We use all three types. Linear processes include a bandpass filter,
a derivative, and a moving window integrator. The nonlinear transformation that we use is signal amplitude squaring. Adaptive thresholds and T-wave discrimination techniques provide part of the decision rule algorithm. The slope of the R wave is a popular signal feature used to locate the QRS complex in many QRS detectors . An analog circuit or a real-time derivative algorithm that provides slope information is straightforward to implement. However, by its very nature, a derivative amplifies the undesirable higher frequency noise components. Also, many abnormal QRS complexes with large amplitudes and long durations are missed in a purely derivative approach because of their relatively low Rwave slopes. Thus, R-wave slope alone is insufficient for proper QRS detection. To achieve reliable performance, we must extract other parameters from the signal such as amplitude, width, and QRS energy , . It is very important to evaluate a QRS detector algorithm using a standard arrhythmia database. There are now two such databases available: MIT/BIH  and AHA (American Heart Association)  . The performance of an algorithm on a database is not the ultimate answer as to its utility in a clinical environment, but it provides a standardized means of comparing the basic...