ARRHYTHMIAS are a form of cardiac disease involving

Similar documents
A comparison of three QRS detection algorithms over a public database

INTEGRATED APPROACH TO ECG SIGNAL PROCESSING

Reconstruction of ECG signals in presence of corruption

An Approach to Detect QRS Complex Using Backpropagation Neural Network

Classifying the Brain's Motor Activity via Deep Learning

Identification of Cardiac Arrhythmias using ECG

Design of a VLSI Hamming Neural Network For arrhythmia classification

Adaptive Detection and Classification of Life Threatening Arrhythmias in ECG Signals Using Neuro SVM Agnesa.A 1 and Shally.S.P 2

Robust Detection of R-Wave Using Wavelet Technique

International Journal of Engineering Trends and Technology ( IJETT ) Volume 63 Number 1- Sep 2018

Noise Reduction Technique for ECG Signals Using Adaptive Filters

A Dynamically Reconfigurable ECG Analog Front-End with a 2.5 Data-Dependent Power Reduction

Detection of Abnormalities in Fetal by non invasive Fetal Heart Rate Monitoring System

CANCELLATION OF ARTIFACTS FROM CARDIAC SIGNALS USING ADAPTIVE FILTER LMS,NLMS AND CSLMS ALGORITHM

Power Line Interference Removal from ECG Signal using Adaptive Filter

Examination of Single Wavelet-Based Features of EHG Signals for Preterm Birth Classification

ECG Data Compression

Portable, Low Cost, Low Power Cardiac Interpreter

ECG Signal Acquisition and Analysis for Telemonitoring

Real time P and T wave detection from ECG using FPGA

Real-Time System Identification Using TMS320C30. Digital Signal Processor ABSTRACT I. INTRODUCTION

COMPRESSIVE SENSING BASED ECG MONITORING WITH EFFECTIVE AF DETECTION. Hung Chi Kuo, Yu Min Lin and An Yeu (Andy) Wu

Investigating the effects of an on-chip pre-classifier on wireless ECG monitoring

An Automated Algorithm for Fast Pulse Wave Detection

New Method of R-Wave Detection by Continuous Wavelet Transform

Design and Implementation of Digital Stethoscope using TFT Module and Matlab Visualisation Tool

NOISE REDUCTION TECHNIQUES IN ECG USING DIFFERENT METHODS Prof. Kunal Patil 1, Prof. Rajendra Desale 2, Prof. Yogesh Ravandle 3

Noise Suppression in Unshielded Magnetocardiography: Least-Mean Squared Algorithm versus Genetic Algorithm

NEURAL NETWORK ARCHITECTURE DESIGN FOR FEATURE EXTRACTION OF ECG BY WAVELET

Introduction. Research Article. Md Salah Uddin Farid, Shekh Md Mahmudul Islam*

An Improved Approach of DWT and ANC Algorithm for Removal of ECG Artifacts

Performance Evaluation of Percent Root Mean Square Difference for ECG Signals Compression

RESEARCH AND DEVELOPMENT OF DSP-BASED FACE RECOGNITION SYSTEM FOR ROBOTIC REHABILITATION NURSING BEDS

Design and Development of a Two Channel Telemedicine System for Rural Healthcare

A linear Multi-Layer Perceptron for identifying harmonic contents of biomedical signals

A Bi-level Block Coding Technique for Encoding Data Sequences with Sparse Distribution

INTERNATIONAL JOURNAL OF ENGINEERING SCIENCES & RESEARCH TECHNOLOGY

Comparison of MLP and RBF neural networks for Prediction of ECG Signals

STM32 microcontroller core ECG acquisition Conditioning System. LIU Jia-ming, LI Zhi

Fetal ECG Extraction Using Independent Component Analysis

BRADLEY UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING. Peoria, Illinois SENIOR PROJECT CONFERENCE

A Machine Learning Technique for Person Identification using ECG Signals

BIOMEDICAL DIGITAL SIGNAL PROCESSING

Protocol to assess robustness of ST analysers: a case study

A Body Area Network through Wireless Technology

ARM BASED WAVELET TRANSFORM IMPLEMENTATION FOR EMBEDDED SYSTEM APPLİCATİONS

ECG Analysis based on Wavelet Transform. and Modulus Maxima

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

Deepali Shukla 1 (Asst.Professor), Vandana Pandya 2 (Asst.Professor) Medicaps Institute of Technology & Management, Indore (M.P.

Analysis of ECG Signal Compression Technique Using Discrete Wavelet Transform for Different Wavelets

TERMA Framework for Biomedical Signal Analysis: An Economic-Inspired Approach

ADAPTIVE IIR FILTER FOR TRACKING AND FREQUENCY ESTIMATION OF ELECTROCARDIOGRAM SIGNALS HARMONICALLY

A WIRELESS PORTABLE ELECTROCARDIOGRAM MONITORING SYSTEM FOR CONTINUOUS CARDIAC ACTIVITY RECORDING

Sensor, Signal and Information Processing (SenSIP) Center and NSF Industry Consortium (I/UCRC)

Delineation of ECG Characteristics Points using Multi-resolution Wavelet Transform Approach

MAC based FIR Filter: A novel approach for Low-Power Real-Time De-noising of ECG signals

Question 1 Draw a block diagram to illustrate how the data was acquired. Be sure to include important parameter values

Open Access Research and Development of Electrocardiogram P-wave Detection Technology

ENGR 499: Wireless ECG

Embedded Hardware for Online Monitoring of ECG Signal

In-depth Analysis of Cardiac Signals Using Novel Equipment and Software

Remote Monitoring of Heart and Respiration Rate Using a Wireless Microwave Sensor

Embedded MCSoC Architecture and Period-Peak Detection (PPD) Algorithm for ECG/EKG Processing Yasuyoshi Haga, Abderazek Ben Abdallah, Kenichi Kuroda Th

A Hybrid Lossy plus Lossless Compression Scheme for ECG Signal

A Novel Approach of Fetal ECG Extraction Using Adaptive Filtering

ECG Artifact Removal from Surface EMG Signal Using an Automated Method Based on Wavelet-ICA

AN EFFICIENT QRS DETECTION METHOD FOR ECG SIGNAL CAPTURED FROM FINGERS. Md Saiful Islam, Naif Alajlan

International Journal of Emerging Technologies in Computational and Applied Sciences (IJETCAS)

A Review on ECG based Human Authentication

ECG QRS Enhancement Using Artificial Neural Network

Crew Health Monitoring Systems

Dynamic time warping and machine learning for signal quality assessment of pulsatile signals

Total Hours Registration through Website or for further details please visit (Refer Upcoming Events Section)

Classification of Cardiac Arrhythmia using Hybrid Technology of Fast Discrete Stockwell-Transform (FDST) and Self Organising Map

International Journal of Scientific & Engineering Research, Volume 5, Issue 5, May ISSN

Biosignal Analysis Biosignal Processing Methods. Medical Informatics WS 2007/2008

LabVIEW Based Biomedical Signal Acquisition and Processing

Development of Electrocardiograph Monitoring System

Implementation of wireless ECG measurement system in ubiquitous health-care environment

Suppression of Noise in ECG Signal Using Low pass IIR Filters

LOW POWER CMOS CIRCUIT DESIGN FOR R WAVE DETECTION AND SHAPING IN ECG

International Journal of Advancements in Research & Technology, Volume 2, Issue 12, December ISSN

An algorithm to estimate the transient ST segment level during 24-hour ambulatory monitoring

Android Electro Cardio Monitor

Removal of Motion Noise from Surface-electromyography Signal Using Wavelet Adaptive Filter Wang Fei1, a, Qiao Xiao-yan2, b

DESIGN AND IMPLEMENTATION OF AN ALGORITHM FOR MODULATION IDENTIFICATION OF ANALOG AND DIGITAL SIGNALS

ECG Set. We Simplify the Procedures and You Save Time!

6.111 Final Project Proposal HeartAware

REAL-TIME WIRELESS ECG AND ITS SIGNAL DISPLAY ON LABVIEW

Nonlinear Filtering in ECG Signal Denoising

6.555 Lab1: The Electrocardiogram

Wireless Cardiac Rhythm Monitoring System

Simple Approach for Tremor Suppression in Electrocardiograms

HUMAN BODY MONITORING SYSTEM USING WSN WITH GSM AND GPS

Comparative Study of QRS Complex Detection in ECG Ibtihel Nouira, Asma Ben Abdallah, Ibtissem Kouaja, and Mohamed Hèdi Bedoui

Internal Sound Denoising for Traditional Stethoscope Using Inverse Chebyshev IIR Bandstop Filter

Electrocardiography Reader (ECG Reader) Group 22

PORTABLE ECG MONITORING APPLICATION USING LOW POWER MIXED SIGNAL SOC ANURADHA JAKKEPALLI 1, K. SUDHAKAR 2

FAULT DETECTION AND DIAGNOSIS OF HIGH SPEED SWITCHING DEVICES IN POWER INVERTER

Noise Cancellation on ECG and Heart Rate Signals Using the Undecimated Wavelet Transform

Transcription:

JOURNAL OF L A TEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 1 Real-time Heart Monitoring and ECG Signal Processing Fatima Bamarouf, Claire Crandell, and Shannon Tsuyuki, Student Member, IEEE Abstract Arrhythmias are a form of heart disease involving irregular heartbeats. Premature ventricular contractions (PVCs) are a type of arrhythmia that may indicate ventricular tachycardia (VT), a potentially life-threatening condition. A stand-alone embedded system has been developed to facilitate real-time arrhythmia detection, performing electrocardiogram (ECG) signal processing and alerting the patients doctor of VT via wireless messaging. Heart data records from the MIT-BIH arrhythmia database were used to test the accuracy of the template-matching algorithm. For testing, a PC program sent heart data to the CC3200 LaunchPad using the WFDB toolbox (which accesses the arrhythmia database). For our template-matching algorithm, the preliminary MATLAB simulation results have an overall accuracy of 91% and a PVC sensitivity of 85.9% for the 18 records tested. These results suggest that the template-matching algorithm is a viable, low-complexity solution for PVC detection. Index Terms ECG, premature ventricular contractions, realtime signal processing, heart monitoring. I. INTRODUCTION ARRHYTHMIAS are a form of cardiac disease involving irregular heartbeats. Current monitoring devices can perform signal processing on a patient s electrocardiogram (ECG) to detect these irregular heartbeats. However, these methods cannot operate in real time and often require a physician to review the patient s ECG after it has been recorded by a monitoring device. This delay may pose a risk to patients who suffer from ventricular tachycardia (VT), a condition where a patient experiences three or more consecutive premature ventricular contractions (PVCs), a type of arrhythmia. To improve the speed of diagnosis and patient outcomes, it is desirable for these arrhythmias to be detected automatically in real time and for the physician to be notified of an event via a wireless message. This study involves the development of software for an embedded platform capable of signal processing and wireless communication. In order to detect PVCs, the proposed algorithm must first extract the R peaks (the maximum values of each QRS complex) from the ECG. Existing methods of finding the R peaks include the Pan-Tompkins [1] and wavelet transform algorithms [2]. The Pan-Tompkins algorithm is suitable for real-time implementation, and the method uses thresholds to detect the peaks in band-pass-filtered and moving-averagefiltered waveforms. The authors are undergraduate students in the Department of Electrical and Computer Engineering, Bradley University, Peoria, Illinois. (emails: fbamarouf@mail.bradley.edu, ccrandell@mail.bradley.edu, stsuyuki2@mail.bradley.edu) Manuscript received 2016; revised 2016. For premature ventricular contractions (PVCs), several types of detection methods have been proposed, including using the wavelet transform [3], neural networks [4], [5], and Bayesian methods [6]. Although these algorithms have high degrees of accuracy in detecting PVCs, their computational complexity is incompatible with a real-time implementation. This paper proposes a template-matching algorithm [7] that involves correlating each heartbeat with a template of a healthy heartbeat. Two features of each heartbeat, the QRS complex and the RR-interval, are correlated with the template to minimize the effects of noise in either of the two features. The paper is organized as follows. In Section II of this paper, the QRS and PVC algorithms are discussed. Section III discusses the implementation of the algorithm and wireless communication subsystems, and Section IV examines the study s results. II. ALGORITHMS The algorithm development is divided into three main phases: preprocessing, QRS detection, and PVC recognition. The Pan-Tompkins algorithm was used for both preprocessing and QRS detection, and a template-matching algorithm was used was PVC detection. A. Preprocessing The Pan-Tompkins algorithm [1] locates the R peaks in band-pass-filtered and moving-average-filtered waveforms. Five different operators are applied to the heart signal: a low-pass filter, a high-pass filter, a differentiator, a squaring operator, and a moving-average filter. 1) Low-pass filter: The ECG is first filtered to eliminate high-frequency components. This filter has a cutoff frequency of 11 Hz, and the difference equation is y(n) = 2y(n 1) y(n 2) x(n) 2x(n 6)+x(n 12) (1) The filter delay is 5 samples. 2) High-pass filter: Next, a high-pass filter is applied to the low-pass-filtered waveform. Its cutoff frequency is 5 Hz, and its difference equation is y(n) = y(n) x(n)/32+x(n 16) x(n 17)+x(n 32)/32 (2) The delay of this filter is 16 samples. 3) Differentiator: After the band-pass filter, a differentiator is applied to obtain the slope information of the signal. The difference equation for the filter is y(n) = (2x(n) + x(n 1) x(n 3) 2x(n 4))/8 (3) The delay of this filter is 2 samples.

JOURNAL OF L A TEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 2 4) Squaring operation: To amplify the higher frequencies, the differentiated signal is then squared at each sample: y(n) = [x(n)] 2 (4) 5) Moving average filter: Lastly, the signal is integrated using a moving average filter. The general equation for the filter is y(n) = (1/N)[x(n (N 1))+x(n (N 2))+ +x(n)] (5) The window size N should be close to the size of the widest QRS complex. At a sampling frequency of 360 Hz (the frequency used in the MIT-BIH arrhythmia database), the window size was chosen to be 64 samples (or approximately 178 ms). B. Pan-Tompkins Algorithm The QRS complexes were then detected in the band-passfiltered and moving-average-filtered waveforms using the Pan- Tompkins algorithm. A brief summary of the algorithm is as follows. Two sets of thresholds, one for the signal and one for the noise, were used for each of the two filtered signals. The thresholds followed the equations SP K i = 0.125P EAK i + 0.875SP KI i (6) NP K i = 0.125P EAK i + 0.875NP K i (7) T HRESHOLD i1 = NP K i + 0.25(NP K i SP K i ) (8) T HRESHOLD i2 = 0.5T HRESHOLD i1 (9) where SP K i is the current signal peak value (where i can represent either the band-pass-filtered or movingaverage-filtered waveform), NP K i is the current noise peak value, P EAK i is the maximum value of the signal, T HRESHOLD i1 is the initial signal threshold, and T HRESHOLD i2 is the adjusted signal threshold. If the current peak is greater than the initial threshold, then it is classified as an R-peak. Otherwise, the peak is considered to be noise (unless an R peak has been missed). In order to detect missed beats, the average of the eight most recent RR intervals is calculated. If each of the RR intervals falls within 92% to 116% of the accepted RR-interval average, then the current RR-interval average becomes the new accepted RR-interval average. If the interval between the last R peak and the current sample is at least 166% of the average RR-interval value, the algorithm will search for a signal peak using the adjusted threshold. If a peak has been found using this threshold, then the updated thresholds are determined by SP K i = 0.25P EAK i + 0.75SP KI i (10) Lastly, our QRS detection algorithm used a different method than the 200 ms blanking used in the Pan-Tompkins algorithm. If a potential peak in the moving-average-filtered signal were within 200 ms of the last detected peak, then the amplitude of the corresponding potential peak in the bandpass-filtered signal was checked. If this peak was greater than the latest detected peak in the bandpass-filtered signal, then this peak replaced the latest detected peak. Fig. 1. MATLAB plot of T1 and T2 templates. C. Template-Matching Algorithm The template-matching algorithm generates two templates for correlation with each beat of the testing data. The first template is a healthy QRS complex, and the second shows a healthy signal between two consecutive R peaks. The templates are denoted as T1 and T2, respectively. Both templates are generated using a similar process. Although the peaks were detected in the band-pass- and moving-average-filteredwaveforms, the original signal was used in the templatematching algorithm. The peak locations in the band-passfiltered signal were converted to indices in the original signal by subtracting the band-pass filter delay of 21 samples. 1) Template generation: The first 120 seconds of R peaks are used to determine mean peak height and mean peak-topeak length. The data after the first 120 seconds is then parsed for a suitable template, i.e. a peak where the height and the length of time to the next peak are both within 10% of the respective mean. The QRS complex of the first peak is kept as the T1 template and the peak-to-peak signal is kept as the T2 template. In order to extract the QRS complex for the T1 template, a method based on the wavelet transform was used. First, the original signal was filtered according to the equation [8] w(m) = (1/1.5)[ 2x(m) + 2x(m 1)] (11) This filter obtains the slope information of the heart signal. The R-peak was then located in the wavelet-filtered signal by searching for a zero-crossing in the range [p(i) 6, p(i) + 6], where p represents a vector of peak indices. After the peak location j has been found, the onset is found by searching for a zero-crossing in the range [j 35, j 6]. The offset is found in the same manner using the range [j + 6, j + 35]. Lastly, to further increase the algorithm s accuracy, the template for the QRS complex contained samples between the QRS onset and 30 samples after the QRS offset. 2) Template matching: To distinguish healthy beats from PVC beats, the templates are correlated with the incoming data. The number of samples for the QRS complex correlation is determined by the number of samples in the T1 template. The number of samples to the left and the right of the R peak will be the same for the incoming data as for T1.

JOURNAL OF L A TEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 3 For correlation of T2 with the processed ECG signal from peak-to-peak, the number of incoming data samples will be stretched or compressed to the number of samples in T2. First, let Lk be the number of samples from peak to peak, and let L be the total number of samples in T2. If Lk > L, the incoming data signal will be interpolated according to the equations below: c k (m) = (b k ( α ) b k ( α )(a α ) + b k ( α ) (12) α = 1 + (L k /L)(m 1) (13) Here, bk is the incoming peak-to-peak data, ck is the interpolated signal, and m = 1, 2,, L. If, however, Lk < L, the incoming data signal must be extrapolated according to the same equation; however, α = 1 + (L k /L)(m 1) and c k (L) = b k (L). After the RR-interval is the same length as the T2 template, the signal can be correlated with the two templates to obtain the correlation coefficients. The following correlation was performed on the QRS complex and RR-interval of each detected beat: ( L n=1 [b k(n) b k ][T i (n) T ) i ] x k, y k = ( L n=1 [b k(n) b ) ( L k ] 2 n=1 [T i(n) T ) i ] 2 (14) b k (n) is either the QRS complex or the RR-interval to be correlated with T1 or T2, respectively, T i (n) is either T1 or T2, and b k and T i are the averages of the signal to be correlated and the template. x k is the correlation for T1, and y k is the correlation for T2. Taken individually, the correlation coefficients are difficult to interpret. However, using an exponential function to relate the two variables allows PVCs to be detected when either xk or yk is low. A third variable, z k, can thus be calculated: z k = exr k + e y r k 2e (15) The parameter r can be varied to adjust the algorithm s sensitivity to low correlation. The 2e term in the denominator normalizes z k. Next, z k is compared to z threshold. If z k is greater than the threshold value, then the beat is classified as a normal beat. Otherwise, the beat is marked as a PVC beat. For the purposes of this study, a z threshold value of 0.55 and an r value of 5 were used. III. SIMULATION AND IMPLEMENTATION Simulation and verification of the QRS and PVC detection algorithms was performed in MATLAB prior to the algorithm implementation in C. The CC3200 LaunchPad (Texas Instruments) was chosen for implementation. The board features an ARM Cortex-M4 microcontroller (used for signal processing) and a Wi-Fi subsystem (used for transmitting an SMS message). A. MATLAB Simulation QRS and PVC detection routines in MATLAB. Using the WFDB toolbox for MATLAB, the program accessed heart data from the MIT-BIH arrhythmia database [9], [10]. The WFDB toolbox also includes functions for algorithm evaluation. The bxb function generates a beat-by-beat comparison using the methods described in ANSI/AAMI EC57:1998 (American National Standards Institute/Association for the Advancement of Medical Instrumentation). B. C Implementation After simulation of both algorithms had completed, the MATLAB functions were converted to C for implementation on the CC3200 LaunchPad. The Code Composer Studio IDE was used to develop and debug the system. To send testing data to the board, a UART communication system between the CC3200 and a PC was created. The PC used the C functions of the WFDB library to send heart data to the board. After each run of the program, the indices of peaks and detected PVCs were saved into two.dat files. These files were then opened in MATLAB so that the bxb function could be used to generate the beat-by-beat comparison. C. Wireless Messaging For the wireless messaging system, Temboo was chosen to send an SMS message to the physician s cellular phone. This required code development in Energia, which uses a C++ compiler. Temboo provides code generation and cloud services for IoT developers. The design uses the Temboo SendSMS Choreo for the CC3200 LaunchPad. The Choreo communicates with Twilio s SMS service to send the message. Developers are able to specify the sending and receiving phone numbers, the text to include in the SMS message, and the media file to attach to the message. For the purposes of this study, the text indicated the presence of VT and the attached image file included the last 1000 samples of heart data were attached to the SMS message. The VT criterion used was three or more consecutive PVC beats. In order to generate the attached image file, the online graphing service Plotly was used. The Plotly Arduino libraries on GitHub were used as a starting point for our libraries. Although these libraries use the Plotly Streaming API, this study required the generation of static graphs. The library code was thus modified to use the Plotly REST API instead. To integrate the wireless and the algorithm code, we added the C algorithm code to an Energia sketch within Code Composer Studio. Because the hardware libraries for Energia and Code Composer Studio are identical, the process was relatively seamless. IV. RESULTS The results for the MATLAB simulation and the implementation on the CC3200 showed that the combined Pan-Tompkins and template-matching algorithm system is a viable solution for PVC detection. For testing, the 18 records used in the previous template-matching study were selected. These records

JOURNAL OF L A TEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 4 TABLE I MATLAB AND C IMPLEMENTATION ACCURACY COMPARISON Record QRS Sensitivity (%) QRS Positive Predictivity (%) PVC Sensitivity (%) PVC Positive Predictivity (%) Overall Accuracy (%) MATLAB C MATLAB C MATLAB C MATLAB C MATLAB C 101 99.42 99.94 99.77 99.77 - - - - 99.77 99.77 106 97.30 97.61 99.46 99.95 73.15 72.95 97.59 98.64 93.90 94.04 108 94.55 99.03 86.76 88.52 100.00 93.33 0.86 0.91 47.58 52.05 112 99.96 99.96 100.00 100.00 - - - - 99.96 99.96 114 99.94 99.89 99.89 99.83 100.00 78.57 2.98 15.07 56.99 90.23 115 100.00 99.95 100.00 100.00 - - - - 100.00 100.00 116 98.89 98.85 99.78 99.87 97.20 97.20 93.69 95.41 99.57 99.66 119 100.00 100.00 100.00 100.00 100.00 100.00 100.00 100.00 100.00 100.00 122 100.00 99.96 100.00 100.00 - - - - 100.00 100.00 201 98.15 97.31 99.43 97.91 100.00-75.57 66.54 96.82 94.41 203 99.03 99.10 98.71 98.21 92.44 85.37 64.35 54.77 92.84 89.87 205 99.84 99.76 100.00 100.00 98.59 95.77 100.00 98.55 99.96 99.84 208 96.54 93.81 99.85 99.42 90.16 82.59 98.12 97.20 97.02 94.81 209 99.96 99.93 99.96 100.00 100.00 100.00 20.00 20.00 99.86 99.86 215 99.87 99.81 100.00 100.00 95.95 93.24 96.60 93.24 99.67 99.39 220 100.00 99.95 100.00 100.00 - - - - 100.00 100.00 223 99.30 99.51 99.92 99.96 57.05 57.91 97.80 98.91 92.86 93.11 230 100.00 99.95 99.95 100.00 100.00 100.00 3.20 2.80 87.12 85.52 contain records with few or no PVCs, records with many PVCs, and records containing other types of arrhythmias. Additionally, this study tested all 30 minutes of each record. By testing different types of records, this study examines the algorithm s sensitivity and positive predictivity for both PVC and non-pvc beats. For the Pan-Tompkins algorithm in the MATLAB simulation, the QRS sensitivity was 99.12% and the positive predictivity was 99.21%. For the C implementation, these values were 99.08% and 99.18%, respectively. The difference in these values occurs because the C implementation did not use floating-point arithmetic for the filtering as in the MATLAB simulation. The template-matching algorithm had a PVC sensitivity of 85.86% and a positive predictivity of 43.14% for the MATLAB simulation. The C implementation had 81.65% sensitivity and 52.01% positive predictivity. The lower positive predictivity for the PVC detection is mostly caused by records 108, 114, 203, and 230. Records 108 and 203 have significant noise in their ECGs, record 114 has high and sharp R-peaks, and record 230 has high T-waves. Because of these factors, many false positive PVCs were detected for these records. The overall accuracy (including all correctly and incorrectly identified PVC and non-pvc beats) for the MATLAB simulation was 90.96%. The result for the C implementation was comparable (93.16%). Although the implemented version was less sensitive to PVCs overall, the lower number of false positives detected in the implementation resulted in a greater overall accuracy. The CC3200 implementation verified the algorithms realtime operation. Using the UART testing system, each 30- minute data record was sent to the board for processing, and the total processing time for each record was 7 minutes. The board was also used to validate the SMS messaging system. Using the Wi-Fi subsystem on the CC3200 LaunchPad, we sent an SMS message (with an image file of the last 1000 samples of heart data) to a cell phone. V. CONCLUSION This study indicates that the combined Pan-Tompkins and template-matching system is a low-complexity solution for PVC detection. Real-time operation was achieved, and comparable results were obtained on the CC3200 when floating-point operations were omitted during filtering. Future work on the subject may involve improvements to the algorithm to reduce its false positive rate. These improvements may include adjustments for the baseline drift in certain signals. ACKNOWLEDGMENT The authors would like to thank Dr. Yufeng Lu (Bradley University, Peoria, Illinois) and Dr. Jose Sanchez (University of Indianapolis, Indianapolis, IN) for their technical expertise and guidance in this project. REFERENCES [1] J. Pan and W. J. Tompkins, A Real-Time QRS Detection Algorithm, IEEE Transactions on Biomedical Engineering, vol. 32, pp. 230 236, 1985. [2] C. Li, C. Zheng, and C. Tai, Detection of ecg characteristic points using wavelet transforms, IEEE Transactions on Biomedical Engineering, vol. 42, pp. 21 28, 1995. [3] R. C.-H. Chang, C.-H. Lin, M.-F. Wei, K.-H. Lin, and S.-R. Chen, Highprecision real-time premature ventricular contraction (pvc) detection system based on wavelet transform, Journal of Signal Processing Systems, vol. 77, no. 3, pp. 289 296, 2013. [4] J. S. Lim, Finding features for real-time premature ventricular contraction detection using a fuzzy neural network system, IEEE Transactions on Neural Networks, vol. 20, no. 3, pp. 522 527, 2009.

JOURNAL OF L A TEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 5 [5] S.-H. Liu, D.-C. Cheng, and C.-M. Lin, Arrhythmia identification with two-lead electrocardiograms using artificial neural networks and support vector machines for a portable ecg monitor system, Sensors, vol. 13, no. 1, p. 813, 2013. [6] O. Sayadi, M. B. Shamsollahi, and G. D. Clifford, Robust detection of premature ventricular contractions using a wave-based bayesian framework, IEEE Transactions on Biomedical Engineering, vol. 57, no. 2, pp. 353 362, 2010. [7] P. Li, C. Liu, X. Wang, D. Zheng, Y. Li, and C. Liu, A lowcomplexity data-adaptive approach for premature ventricular contraction recognition, Signal, Image and Video Processing, vol. 8, no. 1, pp. 111 120, 2013. [8] S. Mallat and S. Zhong, Characterization of signals from multiscale edges, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 14, no. 7, pp. 710 732, 1992. [9] 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. [10] A. L. Goldberger, L. A. N. Amaral, L. Glass, J. M. Hausdorff, P. C. Ivanov, R. G. Mark, J. E. Mietus, G. B. Moody, C.-K. Peng, and H. E. Stanley, Physiobank, physiotoolkit, and physionet: Components of a new research resource for complex physiologic signals, Circulation, vol. 101, no. 23, pp. e215 e220, 2000. Fatima Bamarouf received the B.S. degree in Electrical Engineering from Bradley University in May 2016. Her professional interests include control theory and digital signal processing. Claire Crandell was born in Peoria, Illinois, in 1993. She received the B.S. degree in Electrical Engineering with Computer Option from Bradley University in May 2016. Her professional interests are embedded programming and digital signal processing. Shannon Tsuyuki earned the B.S. degree in Electrical Engineering from Bradley University in May 2016. Her professional interests are digital signal processing and communication theory.