Design of Electrocardiography Signal Acquisition and Processing Software Module

Similar documents
ME EN 363 ELEMENTARY INSTRUMENTATION Lab: Basic Lab Instruments and Data Acquisition

Getting Started with the LabVIEW Sound and Vibration Toolkit

Recording of Coincidence Signals in a Software Medium

Introduction To LabVIEW and the DSP Board

Virtual Vibration Analyzer

Motion Artifact removal in Ambulatory ECG Signal using ICA

Heart Rate Variability Preparing Data for Analysis Using AcqKnowledge

Identification of Motion Artifact in Ambulatory ECG Signal Using Wavelet Techniques

LabView Exercises: Part II

Pre-processing of revolution speed data in ArtemiS SUITE 1

CHAPTER 3 ECG SIGNAL RECORDING USING LABVIEW

Speech and Speaker Recognition for the Command of an Industrial Robot

PS User Guide Series Seismic-Data Display

ECG SIGNAL COMPRESSION BASED ON FRACTALS AND RLE

DESIGN AND DEVELOPMENT OF A MICROCONTROLLER BASED PORTABLE ECG MONITOR

Chapter 1. Introduction to Digital Signal Processing

#PS168 - Analysis of Intraventricular Pressure Wave Data (LVP Analysis)

medlab One Channel ECG OEM Module EG 01000

MIE 402: WORKSHOP ON DATA ACQUISITION AND SIGNAL PROCESSING Spring 2003

Basic LabVIEW Programming Amit J Nimunkar, Sara Karle, Michele Lorenz, Emily Maslonkowski

Multi-Parameter Monitoring Data Acquisition System for SpO 2 Signals

Experiment 13 Sampling and reconstruction

Signal Stability Analyser

Real-time EEG signal processing based on TI s TMS320C6713 DSK

Real Time Bio-signal Acquisition System

PulseCounter Neutron & Gamma Spectrometry Software Manual

Lab experience 1: Introduction to LabView

DT9857E. Key Features: Dynamic Signal Analyzer for Sound and Vibration Analysis Expandable to 64 Channels

DICOM medical image watermarking of ECG signals using EZW algorithm. A. Kannammal* and S. Subha Rani

NanoGiant Oscilloscope/Function-Generator Program. Getting Started

Introduction: Overview. EECE 2510 Circuits and Signals: Biomedical Applications. ECG Circuit 2 Analog Filtering and A/D Conversion

MONITORING AND ANALYSIS OF VIBRATION SIGNAL BASED ON VIRTUAL INSTRUMENTATION

Data Mining in Medical Analysis and Performance Evaluation

MAutoPitch. Presets button. Left arrow button. Right arrow button. Randomize button. Save button. Panic button. Settings button

Application Note AN-708 Vibration Measurements with the Vibration Synchronization Module

Analyzing Modulated Signals with the V93000 Signal Analyzer Tool. Joe Kelly, Verigy, Inc.

Next Generation Software Solution for Sound Engineering

2 MHz Lock-In Amplifier

ECG Denoising Using Singular Value Decomposition

Detection and demodulation of non-cooperative burst signal Feng Yue 1, Wu Guangzhi 1, Tao Min 1

Doubletalk Detection

Comparative Analysis of Wavelet Transform and Wavelet Packet Transform for Image Compression at Decomposition Level 2

The Design of Teaching Experiment System Based on Virtual Instrument Technology. Dayong Huo

SNG-2150C User s Guide

Analyzing and Saving a Signal

EMBEDDED ZEROTREE WAVELET CODING WITH JOINT HUFFMAN AND ARITHMETIC CODING

Common Spatial Patterns 3 class BCI V Copyright 2012 g.tec medical engineering GmbH

Brain-Computer Interface (BCI)

Major Differences Between the DT9847 Series Modules

ECE 4220 Real Time Embedded Systems Final Project Spectrum Analyzer

Design of Electro Cardiograph Machine Based on ATmega Microcontroller

Spectrum Analyser Basics

Communication Theory and Engineering

Advanced Techniques for Spurious Measurements with R&S FSW-K50 White Paper

Senior Design Project A FEW PROJECT IDEAS

ENGR 1000, Introduction to Engineering Design

1 Ver.mob Brief guide

NOTICE: This document is for use only at UNSW. No copies can be made of this document without the permission of the authors.

6.111 Project Proposal IMPLEMENTATION. Lyne Petse Szu-Po Wang Wenting Zheng

Getting Started Guide

DT9837 Series. High Performance, USB Powered Modules for Sound & Vibration Analysis. Key Features:

Please feel free to download the Demo application software from analogarts.com to help you follow this seminar.

Lab 1 Introduction to the Software Development Environment and Signal Sampling

BioGraph Infiniti Physiology Suite

Investigation of Digital Signal Processing of High-speed DACs Signals for Settling Time Testing

Boonton 4540 Remote Operation Modes

Oscilloscope Guide Tektronix TDS3034B & TDS3052B

WHALETEQ PPG Heart Rate Simulator Test System (HRS200) User Manual

Common Spatial Patterns 2 class BCI V Copyright 2012 g.tec medical engineering GmbH

Design of Medical Information Storage System ECG Signal

Operating Instructions

ni.com Digital Signal Processing for Every Application

Datascope Spectrum OR With Gas Module 3 Monitor

VivoSense. User Manual Galvanic Skin Response (GSR) Analysis Module. VivoSense, Inc. Newport Beach, CA, USA Tel. (858) , Fax.

Precision DeEsser Users Guide

FIR Center Report. Development of Feedback Control Scheme for the Stabilization of Gyrotron Output Power

THE BERGEN EEG-fMRI TOOLBOX. Gradient fmri Artifatcs Remover Plugin for EEGLAB 1- INTRODUCTION

Re: ENSC 370 Project Physiological Signal Data Logger Functional Specifications

Thought Technology Ltd Belgrave Avenue, Montreal, QC H4A 2L8 Canada

SC24 Magnetic Field Cancelling System

Linrad On-Screen Controls K1JT

Torsional vibration analysis in ArtemiS SUITE 1

An Integrated EMG Data Acquisition System by Using Android app

RS232 Connection. Graphic LCD Screen. Power Button. Charger Adapter Input LNB Output. MagicFINDER Digital SatLock Operating Manual

BeneHeart R3. Electrocardiograph

Press Publications CMC-99 CMC-141

E X P E R I M E N T 1

Burlington County College INSTRUCTION GUIDE. for the. Hewlett Packard. FUNCTION GENERATOR Model #33120A. and. Tektronix

0.01 (amplitude) The amplitude at 0.01s from QRS loop (angle) The angle at 0.01s from QRS loop

Overview. Signal Averaged ECG

Detecting and Analyzing System for the Vibration Comfort of Car Seats Based on LabVIEW

WAVELET DENOISING EMG SIGNAL USING LABVIEW

SC24 Magnetic Field Cancelling System

A Parametric Autoregressive Model for the Extraction of Electric Network Frequency Fluctuations in Audio Forensic Authentication

Quick Guide Book of Sending and receiving card

Design of VGA Controller using VHDL for LCD Display using FPGA

PRELIMINARY INFORMATION. Professional Signal Generation and Monitoring Options for RIFEforLIFE Research Equipment

User Guide EMG. This user guide has been created to educate and inform the reader about doing EMG measurements

Environmental Controls Laboratory

B I O E N / Biological Signals & Data Acquisition

Transcription:

International Journal of Biomedical Science and Engineering 2015; 3(2): 11-17 Published online March 27, 2015 (http://www.sciencepublishinggroup.com/j/ijbse) doi: 10.11648/j.ijbse.20150302.11 ISSN: 2376-7227 (Print); ISSN: 2376-7235 (Online) Design of Electrocardiography Signal Acquisition and Processing Software Module Duong Trong Luong, Nguyen Duc Thuan, Nguyen Minh Duc, Dang Huy Hoang, Nguyen Ngoc Xuan Dept. of Electronics Technology and Biomedical Engineering, Hanoi University of Science and Technology, Hanoi, Vietnam Email address: luong.duongtrong@hust.edu.vn (D. T. Luong), thuan.nguyenduc@hust.edu.vn (N. D. Thuan), ducbkfet@gmail.com (N. M. Duc), huyhoang.bme.bka@gmail.com (D. H. Hoang), xuansyt@gmail.com (N. N. Xuan) To cite this article: Duong Trong Luong, Nguyen Duc Thuan, Nguyen Minh Duc, Dang Huy Hoang, Nguyen Ngoc Xuan. Design of Electrocardiography Signal Acquisition and Processing Software Module. International Journal of Biomedical Science and Engineering. Vol. 3, No. 2, 2015, pp. 11-17. doi: 10.11648/j.ijbse.20150302.11 Abstract: This paper presents the design of electrocardiography (ECG) signal acquisition and processing using graphic programming language LabVIEW 2012. The module software is designed towards applying in researches, monitoring and diagnosing cardiovascular diseases. The module software includes several main functions such as acquiring and displaying ECG signals in real time; filtering common artifacts in ECG signal using different algorithms and techniques; reading, displaying, analyzing and processing available ECG database; computing heart rate; saving ECG signals before and after noises filtering in data and graphs format; analyzing ECG signals before and after noises filtering by spectral analysis method. The designed module software is tested with arrhythmia ECG database and 12-lead ECG database from physionet.org and experimented with measuring from volunteer in the lab. The experimented results show that this module could support for researches, monitoring and diagnosing cardiovascular diseases. Keywords: ECG Signal Processing, LabVIEW Software, ECG Signal Acquisition, Filtered ECG Signals 1. Introduction The biosignal acquisition, especially ECG signal has been researching and developing. Nowadays, there are different published scientific researches that improve designing hardware module and software module ECG acquisition and processing in order to increase the accuracy, and proposing algorithms in ECG signal processing to advance the effect in monitoring and diagnosing cardiovascular diseases. Furthermore, the rapidly development of software has made good conditions to design software applications in medicine especially in ECG signal processing. There are many researchers with different designs of ECG signal acquisition and processing with other approaches. Avishek Paul and Jahnavi Jha proposed the ECG signal acquisition and processing in [1]. Peng Wang and Zhigang Lv presented their module in gathering 3 single leads ECG signals module MSP430F149 [2]. Mihaela Lascu, Dan Lascu introduced the ECG module based on graphical programming [3]. M. K. Islam and his fellow authors have presented research and analysis of ECG signal using Matlab and LabVIEW such as effective tools [4]. Raman Yadav and other authors has introduced analyzing and processing ECG signal in real time using Matlab [5]. The recent advances in microelectronics technology and the strong development of information technology allowed the creation of ECG recording equipments. In Vietnam, these equipments are imported and their manufacturing technology, detailed specifications are hidden with the aim of the authorization security. Further, measured data is performed through such equipments are often encoded and can be only decoded with software which provided by the manufacturing, therefore, it is difficult to analyze ECG signal in real time. In addition, for the purposes of the ECG signal research, measurement testing, processing and analysis requires a module software that convenient for researching, using and easy to embed noise signal filter algorithms. This paper proposes a solution for designing an ECG signal acquisition and processing tool or module software using the graphic programming LabVIEW 2012. The module software is designed with useful functions including acquisition ECG signal and filtering noises from ECG signal in real time; heart

12 Duong Trong Luong et al.: Design of Electrocardiography Signal Acquisition and Processing Software Module rate calculating, displaying single lead or 12-lead ECG signal; saving ECG signal in data or graph forms; reading and analyzing available ECG data; spectrum analysis after filtering the ECG signal to have more information of the ECG signal after removing noises. The ECG signal measured from the body is contaminated different noises such as power line interference, baseline noise, EMG noise, high frequency noise 100 KHz to 1 MHz from medical instruments placed in the same room, and movement of electrodes in the skin caused noise [6-8]. To remove the noises, the authors have used proposed adaptive filter [9], signal smoothing algorithm [10], and wavelet function bior3.9 [11]. The module software is experimented with direct measured ECG signal from volunteers and ECG database in MIT-BIH. 2. Methodology This software module is designed by the graphical programming language LabVIEW to acquire and process ECG signal. To measure the ECG signal from patients, the authors have used a circuit (shown in figure 1) together with three electrodes attached to the limbs. This circuit is connected to acquisition module NI USB 6008 [12] linked to computer via UART standard. The ECG signal is acquired and processed by proposed software which installed in the computer. The figure 1 shows the block diagram of the acquisition and processing ECG signal system in real time. input sampling rate. The default value of sampling rate is 360samples/s. For initializing and finishing the ECG signal acquisition process, the user presses button Start/stop Acquire signal. If the user wants to save the ECG signal data at *.csv, *.tdms files, or image, he or she has to use save button after acquisition and processing. Especially, with spectrum analysis function, the user enables to investigate filtered ECG signal containing noises or not by using menu Spectrum analysis. Pressing Help button helps understanding the software execution. In addition, the designed software could compute and display heart rate measured from human body. The heart rate is calculated following these below steps. The authors set S(n) as ECG signal input coded in one array having 3600 elements. Figure 1. The lock diagram of acquisition and processing ECG signal system in real time. Figure 2 shows the main function diagram of the designed software module. The menu function diagram of proposed software is introduced in figure 3. After running the program, user can select acquiring ECG signal from volunteers or reading ECG database saved in the computer s drivers by choosing menu Read file/acquire signal, then the users select three filter methods and sets up these methods by using menu settings. In order to support reading file stored in the drivers, menu Starting read file is selected. In this section, the user can choose types of ECG database file (single lead or 12-lead) and Figure 2. The main function diagram of the designed software module.

International Journal of Biomedical Science and Engineering 2015; 3(2): 11-17 13 If the value of R-R intervals in range of 144 540 samples, then next step is processed. Calculate the mean value of R-R interval, and calculate HR=60*360samples/Mean(R-R). The HR value could be rounded. 3. Results and Discussion Figure 3. The function menus block diagram of the proposed software module. Step 1: calculate downslope d(t) of QRS complex wave of S(n) following formula(1): d(n) = x[n+3] + x[n+1] x[n-1] x[n-3] (1) Step 2: Find the maximum value Max1 and the minimum value Min1 of d(n) in array of from 1000 th to 2000 th element. Find the maximum value Max2 and the minimum value Min2 of d(n) in array of from 2001 th to 3000 th element. Choose the maximum value Max and the minimum value Min by the below way: If Max1 Max 2 then Max: = Max2. If Min1 Min2 then Min: = Min1. Step 3: Determine the above and below thresholds: If Max < 0.3 then the above threshold (Th top ) = Max - 0.05; else (Th top ) = 0.3. If Min > - 0.3 then the below threshold (Th bot) ) = Min-0.05; else (Th bot ) = - 0.3. (Th top ) và (Th bot ) are the parameters of block peak detector.vi (width=10) of LabVIEW, and the authors locate the positions of the above peaks (peak: P[i]) and the valley (valley: V[i]). Step 4: Check the position of peaks of the actual ECG signal and unreliable peaks generated by noises by comparing consecutive elements (peaks) of the array P[i]. If the difference between the two peaks are smaller than 100 samples, the authors choose the value P[i+1] as the real ECG signal peak. The real peaks of ECG signal of the array V[i] is similar checked. Step 5: Locate the R peaks. The R peak has the position between corresponding V[i] and P[i]. If P[i]-V[i] < 100, the position of R peak is the mean value of P[i] and V[i]. Step 6: Determine R-R interval: If the interval of R-R peaks is from 144 samples {corresponding to 150 beats} and 540 samples {corresponding to 40 beats}, following the formula : BPM = 60*360samples/(R-R) (2) When user perform running designed software module, a main graphic user interface (GUI) appears as show in the figure 4. The left of the main graphic user interface are function menus. From the main interface, the user can change the window size horizontally or vertically by clicking the mouse button on the value displayed on these axises and input the requisite value. Furthermore, different display mode is available for showing contaminated ECG signal (original signal), filtered signal, and noises after filtering in the checkbox at the right top corner of the display window. Figure 5 shows the graphic user interface (GUI) of reading available ECG signal file to analyze and noise signal process. In this GUI, user can choose type of ECG signal file Single lead or 12 lead for analysing and processing. For the ECG database files from MIT-BIH include always top two rows present header and the first column presents elapsed time. So, user should click on menu Header in file? and choose yes ; click on menu choose column data and input number 2; click on The number of header row and input number 3. For Sample rate, default value is 360samples because this value is sample rate of the single lead database ECG files. With the 12-lead database ECG signal, user have to input sample rate is 10.000 into Sample rate menu. In this paper, we have experimented reading ECG database file record number 117 and patient 243-s0472 from MIT-BIH. The authors has researched, investigated and integrated three filtering methods including power line noise filter, white noise filter, and baseline noise filter. To remove the power line harmonic noise, we use proposed adaptive filtered algorithm [9]. For reducing of white noise level, the authors based on reference[10] and studied, experimented the Savitzky-Golay Smoothing Filter algorithm is available in LabVIEW. Through experimented results of this algorithm, we knew that the algorithm give the best results with setting parameters include side points equal to 21, polynomial orders equal to 6. For removing of base line noise, we use results of researched in reference [11] combine the Wavelet function bior 3_9 with decompose level is eight. Figure 6 is the graphic user interface of selecting filter methods. User may choose each of filtered methods or able to choose filtered methods combination, setting filter parameters for reducing white noise level and baseline noise filter algorithms.

14 Duong Trong Luong et al.: Design of Electrocardiography Signal Acquisition and Processing Software Module Figure 4. The main graphic user interface of the ECG signal acquisition and processing software module (the left of the main graphic user interface are function menus, user can adjust the scale display window by double click maximum value of vertical or horizontal axis then entering appropriate value. as the figure 7. This is the experimental result of ECG database record number 117 from MIT-BIH. In the figure 7, below ECG signal is original ECG signal contains white noise, above ECG signal is filtered ECG signal by using Savitzky-Golay Smoothing filter algorithm.the heart rate value is calculated based on six steps as shown above. This heart rate caculation method gives reliable results because it is experimented with several simulated ECG signals inculde presetting Heart rate, the displayed results are coincident. For Signal Noise Ratio (SNR) is determined by formula (3). SNR = 10log 10 ( ) ( ) (3) Figure 5. The graphic user interface of reading ECG database. Figure 6. The graphics user interface of selectings filter methods and settings filter parameters. After reading ECG signal file, the user selects filtering methods, and sets parameters for filters. The results are shown Where, N is length of signal Figure 8 and 9 present experimental results with 12-lead ECG database record number patient243-s0472 from MIT-BIH. From these results, the original ECG signal is contaminated by baseline noise (from lead I to lead V6). With applying wavelet bior3_9 function with 8 levels decompose for removing of the baseline noise. The results (red ECG signals) show that baseline noise is thoroughly removed from ECG signal. From the GUIs shown in the fig.8 and fig.9, the user can return to the main GUI to process the other manipulations by clicking the exit button. To acquire ECG signal directly from the patients through lead measurements and the circuit (as shown in the figure 1), the user presses the button ACQUIRE SIGNAL, after that click menu SETTINGS to select filter methods and set the filter parameters, then press START DAQ. The result displays in the figure 10. The user can check acquired ECG signal having what noises, the filtered signal contains noises or not by pressing SPECTRUM button; the results is shown in figure 11. From these results, measured ECG signal from the volunteersis contaminated by power line noise and baseline

International Journal of Biomedical Science and Engineering 2015; 3(2): 11-17 15 noise (shown in the figure 11a). Figure 11b presents the spectrum analysis result of the ECG signal after applying filter methods. The user can click OK button to return back the main GUI. Figure 7. The experimental result of ECG database record number 117 from MIT-BIH. Figure 8. The experimental result of 12- lead ECG database record number patient243-s0472 from MIT-BIH (lead I, II, III, avr, avl, avf). Red signals are filtered ECG signals; green signals are noise signals; blue signals are original signals.

16 Duong Trong Luong et al.: Design of Electrocardiography Signal Acquisition and Processing Software Module Figure 9. The experimental result of 12-lead ECG database record number patient243-s0472 from MIT-BIH (V1 lead to V6 lead). Red signals are filtered ECG signals; green signals are noise signals; blue signals are original signals. Figure 10. The experimental results of acquiring ECG signal from volunteers in the Lab.

International Journal of Biomedical Science and Engineering 2015; 3(2): 11-17 17 a) b) Figure 11. The experimental results of measured ECG signal from volunteer spectrum analysis. a) The original ECG signal spectrum; b) the filtered ECG signal spectrum. 4. Conclusion The authors have designed of the ECG signal acquisition and processing module software using the graphical programming language LabVIEW with main function menu as shown in the figure 3. The proposed software has ability to acquire, process and display ECG signal in real time or from MIT-BIH. The filtering methods used in removing three common noises in the ECG signal include proposed adaptive filter algorithm used for filtering 50Hz power line noise, Savitzky-Golay Smoothing filter algorithm to reduce white noise and wavelet functions for removing baseline noise. All of these methods are integrated in this software. In addition, we embedded the heart rate calculation method as shown above in this software. The obtained results with high reliable because this method experimented with several simulated ECG signals include presetting heart rate. And spectrum analysis FFT method also has been applied to investigate the effects of the filtering algorithms. The proposed module software is tested with several records of ECG database from MIT-BIH and measured ECG signal from the volunteers via designed circuits and NI USB 6008 module as shown in the figure 1. To reduce the capacity, big size of the module, the module software is complied with exe file to perform in other computers. The software will be developed in the next researche to acquire and process other biosignals such as SpO2, temperature, and respiration. Furthermore, the authors will develope this software continously to be able to interface and install in available ECG signal measurement equipments. References [1] Avishek Paul and Jahnavi Jha, "ECG signal acquisition and processing system". International Journal of Electrical, Electronics and computer Engineering 2(2):62-65, India, 2013. [2] Peng Wang and Zhigang Lv, "Design of a Simple 3-Lead ECG Acquisition System Based on MSP430F149". International Conference on Computer and Automation Engineering (ICCAE 2011), IPCSIT vol. 44 (2012) IACSIT Press, Singapore. [3] Mihaela Lascu, Dan Lascu, Graphical Programming based Biomedical signal Acquisition and processing. International Journal of circuits, systems and signal processing. Issue 4, Volume1, 2007. [4] M. K. Islam, A. N. M. M. Haque, G. Tangim, T. Ahammad, and M. R. H. Khondokar " Study and Analysis of ECG Signal Using MATLAB &LABVIEW as Effective Tools". International Journal of Computer and Electrical Engineering, Vol. 4, No. 3, June 2012. [5] Raman Yadav, Sharda Vashisth, Ashok K.Salhan "Real Time Acquisition and Analysis of ECG signals using MATLAB". International Journal of Advances in Engineering Science and Technology. ISSN: 2319-1120 /V2N2: 190-195 IJAEST. [6] G.D. Clifford, F. Azuaje, and P. McSharry, Advanced Methods and Tools for ECG Data Analysis. Norwood, MA, USA: Artech House, Inc., 2006. [7] D.C. Reddy, Biomedical signal processing.principles and Techniques.Tata McGraw-hill,2006 [8] Jungkuk Kim, Minkyu Kim, Injae Won, Seungyhul Yang, Kiyoung Lee, and Woong Huh, An ECG signal processing Algorithm based on removal of wave deflections in time domain. The 31st Annual International Conference of the IEEE EMBS, Minneapolis, Minnesota, USA, September 2-6, 2009. [9] Duong Trong Luong, Nguyen Duc Thuan, Dang Huy Hoang, Removal of power line interference from Electrocardiograph (ECG) using proposed adaptive filter. Global Journal of Computer Science and Technology, ISSN 0975-4172 (online), ISSN 0975-4350 (print), Volume 15-C, issue 2 version 1.0, 2015. [10] Md.Abdul Awal, Sheikh Shanawaz Mostafa and Mohiuddin Ahmad, "Performance Analysis of Savitzky-Golay Smoothing Filter Using ECG Signal". IJCIT, ISSN 2078-5828 (print), ISSN 2218-5224 (online), Volume 01, issue 02, 2011. [11] Dejan Stantic & Jun Jo, "Selection of Optimal Parameters for ECG Signal Smoothing and Baseline Drift Removal". Computer and Information Science; Vol. 7, No. 4, ISSN 1913-8989, 2014, Canadian Center of Science and Education. [12] http://www.ni.com [13] Staff off ADInstruments, ECG & peripheral circulation, ADInstruments, 2008.