An FPGA implementation ofreal-time QRS detection
H.K.Chatterjee Dept. of ECECamellia School of Engineering & Technology
Kolkata India
R.Gupta, J.N.Bera, M.MitraDept. of Applied Physics
University Of Calcutta Kolkata India
m5151117
Yumiko Kimezawa
October 11, 2012 1RPR
Outline
• Introduction• Materials and Methods• Testing and Results• Conclusion
October 11, 2012 RPR 2
Introduction
• QRS detection is one of the important and primary job and very often used for heart rate computation
• In recent years, there has been considerable use of FPGA based system for ECG monitoring, QRS detection and feature extraction
• This paper illustrates a real time QRS detection algorithm using an FPGA based embedded system
October 11, 2012 RPR 3
Materials and Methods
October 11, 2012 RPR 4
Data Port
Status Port
Control Port
ptb-db file
Data Capture & Analysis
Section
Display Section
8 Switches
8 LEDsInterfacing Unit
Parallel port
PC
FPGA Xilinx Spartan 2
Figure 1: Block diagram of the system
Trigger pulsetrain
Start Capture
Materials and Methods
The entire work• Generation of digitized ECG from ptb-db
file
• Development and testing of the algorithm in FPGA platform
October 11, 2012 RPR 5
Materials and Methods• Generation of digitized ECG from ptb-db
file
October 11, 2012 RPR 6
Figure 2: Generation of ECG data by PC
Data send from PC parallel port (D0 – D7)
Data accepted by FPGA (P108 – 111, P113 – 115, P119)
Pulse train generated by FPGA (P121), & accepted by PC parallel port (S7)
“Start Capture” pulse generated by PC parallel port (C0) & accepted by FPGA (P120)
Materials and Methods
• Real time QRS detection from the ECG samples- The training zone: The first 1500 samples- A characterization of QRS polarization is performed
based on 20 point slope- ECG samples are stored in a group of memory cells
which holds the last 42 samples- Computing 20 point average slope by calculation
differences like R20-R19, R19-R18,….., R2-R1
October 11, 2012 RPR 7
Formula:
Materials and Methods
October 11, 2012 RPR 8
R1
R 42
R 20
Current index point
Current index point
Current pointof reference
R 20
Figure 3: Illustration of characterization of QRA complex
Average of both side slope: (|R20-R40| + |R21-R0|)/2
Group I: Left side 20 pt. slope: R42-R21 > 0 & Right side 20 pt. slope: R20-R1 < 0
Group II: Left side 20 pt. slope: R42-R21 < 0 & Right side 20 pt. slope: R20-R1 > 0
Testing and Results
• Test using normal and abnormal data in MIT-PTB database and MIT-BIH arrhythmia database
• Initially performed in the MATLAB platform• 30000 samples (Single lead data)• Resolution: 8-bit• sampling interval: 1 ms
October 11, 2012 RPR 9
Testing and Results
• The evaluation criteria are Sensitivity (Re) and Positive Predictivity (P+), defined as:
October 11, 2012 RPR 10
and
TP (True-Positive): correctly found R peaksFN(False-Negative): missed R peaksFP: the number of misdetection
Testing and Results
• MATLAB simulation- With mit-db, 60,000 samples• Re and P+ of 97.82 %• 98.35 % respectively
- With ptb-db, 120 leads• An average sensitivity of 99.47 %• Predictivity of 95 %
October 11, 2012 RPR 11
Testing and Results
• FPGA implementation- With a total of 100 single lead data, each
containing 7,000 samples• An average Re and P+ of 94.8 %• 98.17 % respectively
October 11, 2012 RPR 12
Conclusion
• The algorithm is implemented with synthetic ECG data from ptb-db and mit-db
• In the present approach, 20 point average slope eliminates the effect of high frequency noise and to minimize the effect of any momentary spike
• 2 point slope should not exceed the slope threshold criteria
October 11, 2012 RPR 13