Download Data Analysis manuscript - CVIP Lab

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts

Quantium Medical Cardiac Output wikipedia , lookup

Transcript
HEART: An Automated Beat-to-Beat
Cardiovascular Analysis Package Using Matlab®
Mark J. Schroeder1,2, Ph.D., Bill Perreault2, M.S., Daniel L. Ewert1,2, Ph.D., and Steven
C. Koenig1, Ph.D.
1Jewish
Hospital Heart and Lung Institute, Department of Surgery, University of
Louisville, Louisville, KY 40202
2Cardiovascular
Research Laboratory, Department of Electrical and Computer
Engineering, North Dakota State University, Fargo, ND 58105
*Funding provided by a grant from the Jewish Hospital Heart and Lung Institute
Running Title: Hemodynamic Beat-to-Beat Analysis
Word Count: 5899
Address Correspondence To:
Mark J. Schroeder, Ph.D.
Electrical and Computer Engineering Dept.
North Dakota State University
Fargo, ND 58105
PH: (701)-231-8049
FAX: (701)-231-8677
Email: [email protected]
Steven C. Koenig, Ph.D.
Cardiovascular Research Center
500 South Floyd Street
Department of Surgery
University of Louisville
Louisville, KY 40202
PH: (502)-852-4416
FAX: (502)-852-1795
E-mail: [email protected]
Abstract
A computer program is described for beat-to-beat analysis of cardiovascular
parameters from high-fidelity pressure and flow waveforms. The Hemodynamic
Estimation and Analysis Research Tool (HEART) is a post-processing analysis
software package developed in Matlab® that enables scientists and clinicians to
document, load, view, calibrate, and analyze experimental data that has been
digitally saved in ascii or binary format. Analysis routines include traditional
hemodynamic parameter estimates as well as more sophisticated analyses to
estimate lumped arterial model parameters and vascular impedance frequency
spectra. Cardiovascular parameter values of all analyzed beats can be viewed
and statistically analyzed. The most attractive feature of the HEART program is
the ability to analyze data with visual quality assurance throughout the process
establishing a framework toward which Good Laboratory Practice (GLP)
compliance can be obtained. Additionally, the development of HEART on the
Matlab® platform provides users with the flexibility to adapt or create studyspecific analysis files according to their specific needs.
Author Key Words
Data acquisition, data analysis, beat-to-beat, hemodynamics, cardiovascular,
computer software package, Matlab®
Hemodynamic Beat-to-Beat Analysis
3
1. Background
Scientists, engineers, and clinicians record hemodynamic data in order to
investigate cardiovascular dynamics and improve treatment of cardiovascular
disease. The selected method of data analysis is a critical factor in extracting the
most information from these data. Unfortunately, often times little attention is paid
to the details of the data analysis methods and the investigator settles for a less
than ideal method for obtaining cardiovascular metrics.
Since the 1960’s, most data acquisition methods involved recording and
analyzing data using strip chart recorders [1-2]. The methods used to obtain
hemodynamic parameters from strip chart paper are subject to numerous
measurement inaccuracies that can ultimately lead to incorrect results and
conclusions. Additionally, the tedious and time intensive nature of performing
analog data analysis often leads to only small samples of data or a
representative beat of data being analyzed, thus creating errors due to the
unsteady nature of hemodynamic data, e.g. changes caused by respiration.
Over the past several decades, there has been a migration from standard strip
chart recorders toward digital data acquisition and analysis systems in which
data can be streamed directly to a digital storage device. Despite the obvious
time and space saving features of using such a method, many investigators
hesitate to make the transition to digital acquisition systems due to the user’s
inability to perform post-processing of the digital data. This, along with the
realization that ever-increasing amounts of data can be stored digitally as data
storage capabilities grow, signifies a need for fast and accurate digital data
analysis methods.
The first data acquisition and analysis (DAQA) programs were developed on
Apple [3-5] and Macintosh computers [6], microcomputers [2,7-9], and VAX
systems [10-11]. As computer technology rapidly improved in the 1990’s, DAQA
programs were developed for personal computers [12-17]. These earlier
programs were capable of performing data acquisition, but were often limited by
storage capabilities and required off-line data analysis. More recently, data
acquisition with real-time data analysis has been introduced, and used
successfully in support of cardiovascular research [18-21].
A number of turn-key computer software packages are also now commercially
available, including BioBench (National Instruments, Austin, TX), PowerLab
(ADInstruments, Grand Junction, CO), ARIA-1 (Millar Instruments, Houston,
TX), DADiSP (DSP Development Corp, Newton, MA), and PO-NE-MAH
(Gould Instrument Systems, Valley View, OH ). Although they have offered
some solace to investigators, these commercial ‘what-you-see-is-what-you-get’
(WYSIWYG) packages provide a limited number of analysis options and often
lack the flexibility necessary to meet the evolving study-specific demands of
some investigators.
Hemodynamic Beat-to-Beat Analysis
4
In sharp contrast to the recent trend toward real-time data acquisition (DAQ) and
real-time data analysis (DA), our group has made a conscious decision to keep
these procedures separate. The rationale for this is two-fold: (1) it enables a
high-degree of control for quality assurance throughout data acquisition and data
analysis processes, thereby establishing a framework that will meet Good
Laboratory Practice (GLP) guidelines regulated by the Food and Drug
Administration (FDA) in testing medical devices, and (2) it exploits industrystandard software packages that were designed explicitly for carrying out data
acquisition (LabVIEW, National Instruments, Austin, TX) and data analysis
(Matlab®, MathWorks, Natick, MA) procedures.
Over the past ten years, our group has been developing PC-based data
acquisition and analysis programs. Our experience in handling large amounts of
digital data has led us to develop an efficient and accurate data analysis program
that allows a user to easily document, view, calibrate, analyze, and execute data
reduction of cardiovascular data on a beat-to-beat basis. The program was
created within the Matlab® environment (Mathworks, Natick MA), a commonly
used mathematical tool used by many mathematicians, engineers, and scientists.
Equipped with myriad mathematical capabilities, this analysis package and
platform provide tremendous flexibility and power to meet the user’s present and
future needs. We describe in detail the design and functionality of this program
called HEART (Hemodynamic Estimation and Analysis Research Tool).
2. Design
The HEART program was developed with the goals of ease of use, time
efficiency, accuracy, flexibility, and quality assurance for every step of the data
analysis process. These were accomplished by implementing the program using
windows-based graphical user interfaces (GUIs) and a menu-driven format to
make navigation of the system easy and user-friendly. All programming was
performed using Matlab® version 6.0, a matrix based mathematical package
capable of handling large amounts of data and carrying out time-efficient
handling of mathematical manipulations. HEART can either be run as a standalone data analysis tool or within the Matlab® programming environment
(requires purchase of Matlab® software), thereby allowing users to modify or add
additional routines to the main HEART program tailored to investigator studyspecific needs.
The complete HEART program uses a total of seventeen Matlab® m-files. As
illustrated in the flowchart below (Figure 1), HEART was designed to carry out
numerous functions to help investigators analyze their data. The flowchart
outlines the order in which these generalized functions are performed. The first
step in this process is accessing or loading the data by using the “Profile”
window. This was designed to load either binary or ascii data from files
Hemodynamic Beat-to-Beat Analysis
5
containing numerous variables stored in columnar format. Data of various word
sizes can be loaded, as can data containing header information at the beginning
of the data file. The “Data Viewer” can be used to plot and/or save any or all data
variables over any desired length of time. The data can be viewed versus data
point index or time, and, if desired, with pre-selected beat indices. Separate
windows exist for calibrating data, automatically selecting beat indices, and
viewing mathematically manipulated data. A “Data Analysis” window allows the
user to select from a variety of automated data analysis routines. Finally,
windows exist for viewing the analysis results and exporting the results and other
information to an ascii file for data reduction and/or statistical analysis. The
following sections will describe each function in greater detail.
[ Figure 1 ]
2.1.
Profile
The first step in using HEART is to start the Matlab® program and then type
“heart” at the command line prompt. Assuming the HEART program is located in
a Matlab-accessible directory, the program will open to the “Profile” window
(Figure 2). This window allows the user to either create or load a previously
saved “profile”. A profile is an information set linked to a unique set of data. It is
initially created to provide necessary information for loading and analyzing the
data, but will ultimately include beat indices, calibration factors, and analysis
results. To create a profile, one must first select the “Create Profile” button. Then
a data file can be selected using the browse feature. If a calibration file exists (to
be discussed later), the file and path can again be located using the browse
feature. The names of the signals and corresponding signal units that are in the
data file must be selected and entered in the order they appear in the data file by
using the signal name and signal unit popup menus. Additional signal names can
be created by using the “Edit: Preferences” option (to be discussed later).
[ Figure 2 ]
A section exists in the profile window for specifying information concerning the
data file. The four specifications include the data file format, sampling rate, data
word size, and number of lines of the file header. The file format can be either
ascii or binary. The sampling frequency must be entered in units of samples per
second. The data word size, or type and length of each data value, can be
selected from a popup menu that provides six different word lengths and types
including integer and floating point numbers. If the data file has a header, the
number of lines can be specified so that header lines are skipped when loading
the data. A “View Header” button opens a separate window showing the
specified number of lines of the data set. The entered number of header lines
can then be adjusted if it was inaccurate. To load the data, the user selects the
“Load Data File” button. A small window will appear indicating that data is being
Hemodynamic Beat-to-Beat Analysis
6
loaded, which is followed by a window that indicates whether or not the data was
successfully loaded.
A description of the data and pertinent notes can be entered and displayed in the
‘Profile Description and Notes’ panel by clicking on the “Edit Description” button.
Additionally, the profile name and path and the original and last saved dates
information is provided in the “Other Profile Information” panel.
Once the profile has been created, it can be saved as a “*.pro” file. The default
profile name is the name of the specified data file but with an extension of “.pro”.
Of course, this name can be altered when saving the profile. Multiple profile
handling was incorporated so that several profiles can be opened and data
loaded before proceeding to other program options. Each HEART subroutine
provides the user with an option of which profile/data set to use. This eliminates
the need to repeatedly access the profile window or close profiles so that another
one can be opened.
2.2 Data Preparation: View Data
Once a profile has been called or created and the experimental data have been
loaded, one will generally want to inspect the waveforms to insure the data
loaded properly. This can be accomplished using the data viewer (Figure 3) that
contains a window allowing selected signals to be plotted over any selected
range. If desired, a user can save the raw data in the plot window, data file name,
data range, sampling rate and beat indices to a Matlab® or ascii file by clicking
on the “Save Plotted Data to a File” button. Additionally, a “Mark Point” button
can be used to display the values of all plotted signals at a selected x-value.
Several features that are in the “View Data” window are also utilized in other
windows that involve plotting. These include: zoom, a “VCR Player Control” that
scrolls through the data at adjustable speeds, and options to view the data in its
entirety, calibrated or uncalibrated, normalized, or versus time or index. If the
beats have already been picked, one can also view picked beat boundaries for
the desired signal of choice.
[ Figure 3 ]
2.3. Data Preparation: Data Calibration
The HEART program offers a simple means for calibrating data and storing
calibration factors. Calibration of data against a known standard is necessary to
convert binary bit counts to physiologic units and insure the accuracy of the
acquired data prior to analysis. The calibration process begins by loading data
collected at various known measurement values; for instance, data collected
from a pressure catheter subjected to known pressures of 0 mmHg and 100
mmHg. The data can then be viewed in the “Data Calibration Factors
Hemodynamic Beat-to-Beat Analysis
7
Extrapolation” window found under the “Data Preparation” pull-down menu, as
shown in Figure 4. Data calibration zones are selected at each desired
measurement level by clicking on the “Pick Calibration Zone” button and then
choosing the left and right sides of a data section using a cursor. The user is
prompted to enter the actual known value of each zone, for instance, 0 mmHg
(minimum) and 100 mmHg (maximum). This information is stored in memory and
must be performed for at least two zones of differing values. Incorrectly selected
zones can be deleted by selecting the “Delete a Zone” button.
[ Figure 4 ]
The user then selects whether a first or second order fit is desired. A first order fit
will determine the coefficients for the equation of a straight line (y = Ax + B) that
best fits the average values of the calibration zones to the entered known values
in a least-squares sense. A second order fit requires at least three calibration
zones and determines the coefficients for a non-linear fit of the form: y = Ax2 +
Bx + C. The first order fit is generally the method of choice, as transducers
should be linear. The calibration procedure must be repeated for all other signals
that require calibration.
Upon calculation of the calibration factors for a signal, the coefficients are
displayed in their corresponding calibration factors text boxes. The text boxes
also allow for the manual entry of calibration factors. All signal calibration factors
are saved when the profile is saved. Alternately, one can save the calibration
factors to a separate file by selecting the “Save Calibration Factors” button in the
calibration window. This will create a file with an extension of “*.cal” that can then
be applied to additional data sets by choosing it as the calibration file in the
profile window.
2.4. Data Preparation: Pick Beats
In order to analyze hemodynamic data on a beat-to-beat basis, beginning and
ending beat indices must be identified and verified. Therefore, two windows were
designed to perform these tasks: 1) Beat Pick: Initial Selection and 2) Beat Pick:
Beat Editor.
The “Beat Pick: Initial Selection” window (Figure 5) allows the user to select
beginning and ending beat boundries manually or automatically using beat
detection algorithms. The manual method allows one to add a beat by clicking on
the “Add Beat” button and then selecting the beginning and ending points of a
beat by using a cross-hair cursor. After choosing a beat, the beginning of beat
boundary will be marked with a circle and the end of the beat boundary will be
marked by an ‘x’. Beats can be deleted by selecting the “Delete Beat” button and
then clicking on the beat beginning marker. Beat selections can be saved by
selecting the “Save Beats” button.
Hemodynamic Beat-to-Beat Analysis
8
[ Figure 5 ]
There are several automatic beat detection algorithms for the user to select. The
automatic selection of beat indices is a two-step process. First, the subroutine
uses an initial picking algorithm to get a rough approximate of the beat indices.
Then a second algorithm is used to refine the initial selection of beat indices. The
user selects an algorithm pair from a popup menu. The beat picking algorithms
for the left atrium, left ventricle, and systemic vasculature are as follows:
AoF  LVP
AoF  AoP
AoF  dLVP/dt
LVP  LVP
LVP  AoP
LVP  dLVP/dt,
where AoF is aortic flow, LVP is left ventricular pressure, AoP is aortic pressure,
and dLVP/dt is the first derivative of LVP. Similar beat picking routines and
detection algorithms are available for right atrial, right ventricle, and pulmonary
vasculature hemodynamic waveforms.
Prior to running the beat picking algorithm, the user must select which signal to
associate or save the beat indices to by selecting a signal in the “Beat Type to
View/Save to” popup menu. This is important since the analysis routines access
specific beat indices according to the name under which they were saved.
Additionally, the beat indices can be viewed atop any signal of choice by
selecting a signal in the “Beat Reference Signal” drop down box. Next, the user
must enter various threshold values that the beat picking algorithms use to select
beats. The first two threshold values, “Upper Threshold” and “Lower Threshold”,
are based on the first algorithm signal of the beat picking method selected.
Values should be entered so that the upper threshold is greater than the lower
threshold and such that neither threshold exceeds any one beat’s extrema. The
third threshold, “Bad Beat Threshold”, utilizes the first derivative of the ventricular
pressure to indicate bad beats. This removes bad beats due to anomalies such
as the aortic valve hitting the transducer. The derivative can be viewed by
checking the “View Ventricular dP/dt” box. A value above the typical diastolic
noise level should be entered into this threshold box. If a beat is found with noise
in the relaxation phase exceeding this threshold level, it is automatically marked
as a bad beat. The last threshold, “End-Diastolic Threshold”, is used to select the
end-diastolic ventricular pressure when the left ventricular pressure is the final
beat picking algorithm. This is again based on the first derivative of the
ventricular pressure. The threshold value, generally between 0 and 150, should
indicate the derivative at the point of end-diastolic ventricular pressure. These
threshold values can be revised until the correctly picked end-diastolic point is
Hemodynamic Beat-to-Beat Analysis
9
selected, which can vary according to the level of noise in the left ventricular
waveform and heart rate.
After these initial steps, beat picking can be performed by clicking on the “Run
Beat Pick” button. Beat selection is carried out according to the pair of algorithms
selected. The first beat picking algorithm uses the “Upper Threshold” and “Lower
Threshold” values of either aortic flow (AoF) or left ventricular pressure (LVP) to
roughly determine the location of the beat boundaries. The use of the two
thresholds can help reduce beat selection errors due to noise. The final beat
picking algorithm first establishes a window, or range, around the resultant
boundaries of the first algorithm. The final beat boundary is selected within the
window according to the particular algorithm selected as follows: AoP –
minimum aortic pressure value, LVP – backward search until the “End-Diastolic
Threshold” is crossed, and dLVP/dt – maximum first derivative of the left
ventricular pressure, calculated using a 5-point derivative [22]. This will result in
the selection of beat boundaries as either the minimum diastolic aortic pressure,
the end-diastolic left ventricular pressure, or the maximum value of the left
ventricular first derivative, respectively.
Upon completion, the user is shown the number of selected “good” and “bad”
beats and queried on whether to save the beat indices. If the beats are not saved
at that time, they are stored in memory until they are saved in the “Beat Editor”
window or at the time of closing the profile. The beat indices will be immediately
plotted in the display window on the chosen beat reference signal. The beginning
of each beat is indicated by a circle and the end of the beat by an ‘x’. By default,
these symbols are color coded green for a good beat and red for a bad beat, as
shown in Figure 5. Again, if the beat picking routine does not select the beat
indices satisfactorily, the user can alter the threshold values and repeat the beat
picking process.
Upon satisfactory automatic beat selection, the selected beat indices can be fine
adjusted by the user in a “Beat Editor” window. This window allows one to move
the start or end position of a beat by selecting the desired action button, clicking
the original position of the index to be moved, and then clicking the newly desired
position of the index. Also, one can convert previously picked beats to either
“good” or “bad” by selecting the corresponding action button and then clicking on
the start of the beat to be changed. The beat indices can be saved at any time by
clicking the “Save Beats” button. Additionally, all beat indices can be removed by
pressing the “Clear Beats” button.
2.5. Data Preparation: Manipulate data
The HEART program data manipulation window allows the user to
mathematically manipulate and plot the loaded data. This is done by entering
equations as one would do at the Matlab® command line. Simple expressions
Hemodynamic Beat-to-Beat Analysis
10
such as addition and subtraction can be calculated and graphically displayed as
well as more complex Matlab® functions such as derivative, integral, and Fast
Fourier Transform (FFT). After entering the desired expression, pressing the
“Plot Signal” button will evaluate and plot the expression as well as display the
expression in the panel next to the plot window. Repeating the process will add
signals to the plot, while pressing the “Clear Plot“ button will clear and reset the
plot window.
2.6. Data analysis
The power of the HEART program lies in the speed of automatically picking and
verifying beat indices, efficiency of analysis, and its adaptability. The analysis
window provides a list of analysis routines and check boxes from which to
choose the analyses programs to execute. Additionally, indicator boxes exist to
show which routines have previously been executed. The user can either save
the selected analysis routine selections or execute the selected routines for the
indicated profile by selecting either “Save Selections” or “Analyze Selected File”,
respectively. All of the checked analysis routines will be analyzed in order and a
window will be displayed to indicate completion of the analysis. The results of
each analysis routine are saved to the profile where they can be accessed via
the “View Output Data” window.
Currently, several analysis options have been incorporated into the HEART
program. Of these, two provide beat-to-beat analysis of basic cardiovascular
parameters most commonly used by investigators. An analysis routine called
“Cardiac: Left Heart” calculates up to twenty-five parameters that can be derived
from left ventricular pressure, aortic pressure and flow, left atrial pressure, and
central venous pressure. These include systolic, diastolic, and mean values,
derivatives, integrals, and mechanical properties of the left ventricle (i.e. stroke
work, elastance, source loss, etc.). A complete list of beat-to-beat calculated
parameters for the left heart program is listed in Table 1. Parameters for the right
atrium, right ventricle, and pulmonary vasculature can be determined by selecting
the “Cardiac: Right Heart” analysis routine. These routines use beat indices
based on the end-diastolic right ventricular pressure. After execution of the
analysis, the results are immediately saved to the output file.
[Table 1]
Another commonly used analysis routine is the four-element Burattini arterial
model [23-24]. This lumped parameter electrical model uses a parallel inductor
and resistor in series with a parallel capacitor and resistor to characterize the
systemic vasculature. Previously described methods are used to estimate these
Hemodynamic Beat-to-Beat Analysis
11
four parameters [25-26]. Briefly, the routine estimates the optimal lumped
parameter values by iteratively adjusting initial parameter estimates until the least
sum squared error between the model and experimental impedance is
minimized. This routine uses beat indices that are based on the end-diastolic
aortic pressure. Again, the results are immediately saved upon completion. This
analysis routine possesses the flexibility to be easily adapted to other electrical
analog models, and can also be applied to characterize the pulmonary
vasculature.
Additional programs exist to analyze the impedance spectrum of the systemic
and pulmonic arterial systems, coronary circulation, and other investigator study
specific parameters (e.g. ventricular pressure-volume relationship). Combined,
the aforementioned analysis programs provide the investigator with a powerful
means to obtain commonly used hemodynamic information quickly and easily.
Additionally, advanced users of Matlab® can edit the HEART program analysis
files or create entirely new files to perform operations that are tailored to the
investigator’s needs.
2.7. Post-processing Output: View output data
The “View Output Data” window (Figure 6) allows one to view the analyzed
results for every beat from the previously executed analyses. By using the
provided popup menus and the “Plot” button, one can add a desired parameter to
the plot window. This will plot the parameter’s value for every beat that was
analyzed. Beats that were marked as bad are not analyzed and a break in the
plotted line at the point of its occurrence will be present. Additional parameters
can be added to the plot by following the same steps. One can even plot the
same parameter from different profiles together. Another feature is the ability to
plot the mean, maximum, minimum, and standard deviation of the last plotted
variable by selecting a desired statistic calculation from a popup menu and
clicking on “Plot Statistic”.
[ Figure 6 ]
2.8. Post-processing Output: Export Data
It is often necessary for the user to be able to access the physiologic data, profile
data, or the analysis output data. The post-processing output menu option of
“Export Data” allows one to do just that. Three options are presented within the
window, as listed in Table 2. Selecting any of the options will send the desired
information to an ascii file that can be loaded via a number of text editors and
spreadsheets for viewing and further manipulation.
[ Table 2 ]
Hemodynamic Beat-to-Beat Analysis
12
2.9. Edit Preferences
In order to provide the user with both functional and stylistic options, the option to
edit preferences is available under the “Edit” menu selection. Realizing that
signals other than those provided in the Profile Signal Name list may be required,
the Preferences window allows additional signal names and corresponding
abbreviations to be entered and saved. Additionally, for esthetic purposes,
stylistic changes that can be altered include the following:
Window, panel, and text colors
Plot window and plot line colors
Good and bad beat marker color, size, and style
Calibration zone marker color and style
Measurement line color and style
All preference alterations can be saved as well as be restored from either the last
saved values or from the default values.
3. Verification
Calculation of analysis output parameters, as previously described (Table 1),
have been verified using qualitative and quantitative comparison methods. For
example, calculated parameters such as systolic, diastolic, and end-diastolic
pressures are compared against calibrated pressure waveforms from
experimental data sets as well as simulated data sets (Patient Simulator,
Dynatek Nevada, Carson City, NV). Minimal error is encountered in determining
these parameters aside from the presence of aberrant beats. However, aberrant
beats should be removed by the user in the beat boundary and data integrity
verification steps.
Each calculated hemodynamic parameter has been verified by comparing the
result to that determined from visual inspection of the plotted data or by
mathematical calculation of the parameter. In all cases, verification-plotting
features have been added to the analysis code so that the programmer can plot
a specific resultant value or indice superimposed on the hemodynamic data. This
has proven valuable in verifying the integrity of the automatically selected beat
boundaries and other indices that are used to calculate hemodynamic
parameters.
Since parameter accuracy is highly dependent upon correct placement of the
selected beat indices, the HEART program was designed to allow the user the
freedom to easily reposition beat indices or remove selected beats altogether.
For example, heart rate is dependent upon correct selection of beat indices,
subsequently, if the beat indices are selected consistently then the heart rate will
Hemodynamic Beat-to-Beat Analysis
13
be calculated correctly. The ability to visually inspect and adjust beat indices is a
unique feature that provides a stage of user quality assurance. This enables the
user to remove corrupted beats and/or intermittently poor data from the analysis
procedure without discarding entire data sets. The visual inspection and
verification of beat indices process can be performed quickly and reliably by rapid
scanning of the entire data set. For example, a one-hour data file containing
over 10,000 beats of data can be scanned in less than a minute, if no changes
are required. To adjust start and end indices for one beat or mark a good beat
as bad, takes but a few seconds to accomplish. Additionally, electrical analog
models (i.e. 4-element Windkessel) were used to simulate hemodynamic data
with known output parameters [23]. The HEART program output parameters
were verified against the simulation parameters. Uncertainty and Monte Carlo
analyses were also performed to validate arterial model parameter estimation
accuracy [25].
4. Comparison to Existing Programs
Methods used for data analysis have greatly evolved over the last few decades.
Digital data analysis methods, as well as data acquisition methods, have matured
along with the advancements in computer technology [2-17]. Limited resources of
early computers forced acquisition and analysis of data to be performed
separately. However, as computer architecture and operating systems continued
to improve with time, it was feasible to perform simultaneous real-time data
acquisition and analysis. The first program capable of this task was CORDAT II,
an academically inspired program capable of real-time DAQA on a DOS-based
486 PC with a 33 MHz microprocessor [21]. In addition to calculating traditional
cardiovascular parameters on a beat-to-beat basis, it was also capable of
calculating more sophisticated cardiac parameters such as pressure derivatives
(dP/dt) and the times at which the parameters occurred. Nowadays, various
academic, real-time DAQA programs exist. These programs are, in general, very
user-friendly, and provide a great deal of graphic user interface (GUI) technology
that allows the user to easily control the program [18-20].
To provide support to the populace, a number of turn-key computer software
packages are also now commercially available. As previously mentioned, these
include BioBench, PowerLab, ARIA-1, DADiSP, and PO-NE-MAH.
These real-time DAQA programs are user-friendly and capable of calculating a
large number of cardiovascular parameters and their related time indices. As the
need to acquire and process hemodynamic data in the science fields continues
to grow, the use of real-time DAQA programs continues to flourish. Although
these programs provide a necessary service to investigators who want fast
results, it is sometimes done at the expense of quality assurance and flexibility.
Investigators often have the need to calculate unique, study-specific parameters
that are not available from these “canned” data analysis packages. This forces
Hemodynamic Beat-to-Beat Analysis
14
the investigator to either devise another means for calculating the parameters or
discourages the investigator from studying the desired parameters altogether.
Additionally, these programs do not provide visual verification steps required to
assure data integrity. Although the thought of acquiring and analyzing data with
only the push of a button, i.e. no additional time requirements for data analysis or
quality assurance, is initially attractive, one can easily realize the drawbacks of
accepting the program’s output parameters at face value. This practice can lead
to the inclusion of aberrant data, misinterpretation of results, and formulation of
incorrect study conclusions.
To remedy these problems, we contend that data analysis must be performed
off-line. In selecting appropriate software to perform the tasks of acquisition and
analysis, our group selected two industry-standard software packages,
LabVIEW™ and Matlab®, respectively. Each of these programs is considered
among the best in their respective fields. Although either program is now capable
of performing both DAQ and DA, we prefer to use them to perform the tasks in
which they were originally intended. Reasons for this include LabVIEW’s™
compatibility with National Instrument’s hardware and Matlab’s® flexibility,
numerous mathematical functions, and superior ability to handle large amounts
of matrix data.
Proponents of real-time DAQA correctly point out the need for monitoring the
physiological condition of the test subject during the experimental protocol. In
order to meet this requirement, our 16-channel real-time data acquisition
program calculates and displays basic clinical parameters such as heart rate,
systolic/diastolic/mean pressure, and cardiac output [27]. These data are strictly
used to monitor the test subject, but due to possible inaccuracies, are not
included in the final data analysis.
The principle reason for performing post-processing data analysis is to maintain
the highest-standards of data accuracy and quality assurance throughout the
analysis process. In order to maintain the highest degree of accuracy, pre- and
post-calibrations of all transducers are performed and compared during the offline data analysis procedure. This is particularly important in long acute (i.e. > 4
hrs) and chronic (i.e. days) experiments when catheter drift can occur, which
could mask physiological changes if only pre-calibrations are used. Quality
assurance steps such as this are practiced and maintained throughout the data
analysis process by allowing the investigator to monitor each step, including
calibration, beat boundary selection, data analysis, and data reduction. For
example, this approach allows the investigator to focus on sections of the data
where artifact may be introduced, such as PVCs, catheter whip, noise, and
transducer drift, that can dramatically influence the selection of beat boundries
and calculation of cardiovascular parameters.
As shown in Table 1 and Figure 1, the HEART program offers most, if not all, of
the hemodynamic parameters and analysis tools that other on-line and off-line
Hemodynamic Beat-to-Beat Analysis
15
data analysis packages offer. We hope to incorporate any remaining commonly
used parameters and tools in the near future. HEART also provides additional
analysis methods not generally seen in other packages. These include
calculation of arterial input impedance over numerous harmonics and estimation
of lumped parameter arterial model parameters. Additionally, we have
incorporated other study-specific programs used to support various ongoing
research projects in our lab.
Finally, an important long-range goal is the DAQA of experimental data during
testing of medical devices. In order to meet strict FDA regulations, the DAQA
software must be GLP compliant. In separating the data acquisition and analysis
programs and providing quality assurance throughout the analysis process, it is
believed a proper framework is in place toward achieving meeting FDA
requirements.
5. Summary
As cardiovascular data acquisition techniques continue to shift towards digital
data collection and archiving methods, there is an increasing need for userfriendly, yet flexible, data analysis software. There are a number of advantages
to using a digitally-based analysis program, including the HEART program,
compared to earlier methods of analyzing data from strip chart recordings.
Primarily, it allows anyone from a student to a clinician to quickly and accurately
reduce large amounts of data, enabling investigators to rapidly assess and
disseminate results.
The HEART program provides many attractive features required by rigorous data
analyzers, primarily the ability to analyze data with a high degree of control and
accuracy throughout the analysis process and provides investigators the
flexibility to modify or add new features. The HEART program has the ability to
efficiently handle both ascii and binary formatted digital data, and allows the user
to load, view, calibrate, manipulate, and analyze hemodynamic data on a beat-tobeat basis in an easy to learn, user-friendly format. It also has ability to quickly
determine beginning and ending beat indices that can then be used to accurately
calculate hemodynamic parameters on a beat-to-beat basis. The calibration and
beat-to-beat analysis provide a high level of accuracy and quality assurance
through visual verification in calculating hemodynamic parameters at a level
difficult to obtain using pre-digital analysis methods. This can be beneficial in
achieving statistical significance and reducing error. The power and flexibility of
this program are derived from the Matlab® platform upon which it was built.
Matlab® provides numerous powerful functions that can be used for analyzing,
manipulating, and viewing data. Additionally, custom, study-specific functions
and analysis routines can easily be added to the HEART program. Unlike
commercially-available turnkey systems, this provides tremendous adaptability
as well as a means to perform quality control at each step.
Hemodynamic Beat-to-Beat Analysis
16
*Anyone interested in learning more about the HEART program and/or obtaining
a beta test version are encouraged to contact the authors. Currently, the HEART
program is being upgraded to include additional functions, error trapping, and
error checking routines. The authors are also working toward making the
HEART program compliant with Good Laboratory Practice (GLP) guidelines
defined by the Food and Drug Administration (FDA) for testing of medical
devices.
Hemodynamic Beat-to-Beat Analysis
17
References
L. Maloy and R.M. Gardner, Monitoring systemic arterial blood pressure: Strip
chart recording versus digital display, Heart Lung 15, 627-635 (1986).
D.M. Wilkison, K.C. Preuss, and D.C. Warltier, A microcomputer-based package
for determination of regional and global cardiac function and coronary
Hemodynamics, J. Pharmacol. Methods 12, 59-67 (1984).
A.P. Farrell and F. Bruce, Data acquisition and analysis of pulsatile signals using
a personal computer: an application in cardiovascular physiology. Comput. Biol.
Med. 17, 151-159 (1987)
H.J. Mass, J.T. Gean, and P.A. Gwirtz, Computer analysis of cardiovascular
parameters. Comput. Biol. Med. 17, 75-84 (1987)
J. Weissenburger, P. Zitoun, and C. Louis, Data acquisition and analysis of
hemodynamic signals using a standard microcomputer, J. Pharmacol. Methods
14, 89-98 (1985).
H.D. Swanson, A comparison, for teaching purposes, of three data-acquisition
systems for the Macintosh, Am. J. Physiol. 258 (6 pt 3) S17-23 (1990).
P.L. Schiffman, A computer program for the interpretation of hemodynamic
pressures. Comput. Biol. Med. 15, 355-359 (1985)
J.Y. Kresh and S.K. Brockman, An interactive microcomputer-based graphics
system for analysis of cardiodynamic function. Comput. Biol. Med. 14, 419-427
(1984)
J. Kedem, E. Tzikoni, S. Feldman, and J. Sonn, Real time data acquisition and
analysis of cardiovascular experiments in dogs. Comput. Biol. Med. 14, 21-28
(1982)
J.E. Axenborg and I. Hirsch, A PC-based on-line system for physiological in vivo
and in vitro experiments. Comput. Methods Programs Biomed. 41, 55-67 (1993)
J.E. Axenborg, BIOLAB – a computerized on-line system for physiological
measurements in experimental animals. Comput. Methods Programs Biomed.
28, 75-85 (1989)
C.R. Benedict, R.H. Gayden, and J.T. Gean, Microcomputer-based analysis of
cardiovascular indices. Comput. Biol. Med. 22, 1-22 (1992)
K.F. Pitsillides, J.D. Symons, and J.C. Longhurst, Analysis of beat-to-beat
cardiovascular hemodynamic variables obtained during long-term biotelemetry.
Comput. Methods Programs Biomed. 37, 167-177 (1992)
S.E. Greenhut, J.W. Lee, J.C. Monsur, and J.M. Nicklas, Computer analysis of
physiological signals in a cardiovascular research laboratory. Comput. Biol. Med.
21, 79-96 (1991)
C.P. Herbst, J. Diedericks, N.J. Uys, J. Brummer, and M.G. Lotter, Use of a
personal computer for fast acquisition of cardiovascular data over an extended
period. Comput. Biol. Med. 21, 407-415 (1991)
Hemodynamic Beat-to-Beat Analysis
18
J.C. James III, N.S. Gatenberg, and G.R. Hageman, A sample computer system
for physiological data acquisition and analysis. Comput. Biol. Med. 20, 407-413
(1990)
R.A. Mustard, A. Cosolo, J. Fisher, T. Pike, B.D. Schouten, and H.T. Swanson,
PC-based system for collection and analysis of physiological data. Comput. Biol.
Med. 20, 65-74 (1990)
L.S.S. Wong, S.C.U. Marsch, S. Dalmas, and P. Foex, An IBM PC-based system
for experimental hemodynamic studies. Med. Eng. & Phys. 22, 419-424 (2000).
W.C. Hu and B.J. Leone, A graphic oriented data analysis system for
hemodynamic research. Comput. Methods Programs Biomed. 59, 197-214
(1999)
J.K. Van den Saffele, F.D.G.D. Schoonjans, C. Gao, and J.M. Kaufman, The
Multi Unit Activity analyzer: a WindowsTM based hardware-software system for
low cost, high speed analog to digital data conversation, data acquisition and
window discrimination, Comput. Methods Programs Biomed. 56, 273-275 (1998).
A. Skyschally, R. Schulz, and G. Heusch, CORDAT II: A new program for data
acquisition and on-line calculation of hemodynamic and regional myocardial
dimension parameters. Comput. Biol. Med. 23, 359-367 (1993)
R.L. Burden, J.D. Faires, A.C. Reynolds, Numerical Analysis, Second Edition,
Prindle, Weber & Schmidt, Boston, Massachusetts, ISBN 0-534-98020-1, 130
(1981).
N. Stergiopulos, B.E. Westerhof, and N. Westerhof, Total arterial inertance as the
fourth element of the windkessel model, Am. J. Physiol. 276, H81-H88 (1999).
R. Burattini and G. Gnudi, Computer identification of models for the arterial tree
input impedance: comparison between two new simple models and first
experimental results, Med. Biol. Eng. Comput. 20, 134-144 (1982).
S. Essler, M.J. Schroeder, V. Phaniraj, S.C. Koenig, R.D. Latham, and D.L.
Ewert, Fast estimation of arterial vascular parameters for transient and steady
beats with application to hemodynamic state under variant gravitational
conditions, Ann. Biomed. Eng. 27, 486-497 (1999).
D.A. Self, D.L. Ewert, R.D. Swope, R.P. Crisman, and R.D. Latham, A new
method for beat-to-beat determination of peripheral resistance and systemic
arterial compliance under non-steady-state conditions during +Gz centrifugation,
Aviat. Space Environ. Med. 65, 396-403 (1994).
G.A. Drew and S.C. Koenig, Biomedical patient monitoring, data acquisition, and
playback with LabVIEW. Chapter 2 (pp 92-98): In LabVIEW for Automative,
Telecommunications, Semiconductor, Biomedical, and other Applications.
Prentice Hall PTR, Upper Saddle River, NJ (2000).
Hemodynamic Beat-to-Beat Analysis
19
List of Tables
Table 1: Output Parameters from ‘Cardiac: Left Heart’ Analysis Routine. LVP is
left ventricular pressure, AoP is aortic pressure, LAP is left atrial pressure, CVP
is central venous pressure, sys is systolic, dia is diastolic, avg is average, bd is
beginning diastolic, and ed is end diastolic.
Table 2: User options within the Export Data window
List of Figures
Figure 1: Flow diagram of the HEART program main functions.
Figure 2: Profile window indicating file, data, and documentation information.
Figure 3: Data Viewer displaying selected hemodynamic signals and their
corresponding value at a specific point in time.
Figure 4: Data calibration window showing three calibration zones on calibration
data and the calculated calibration factors.
Figure 5: Beat selection window displaying left ventricular pressure beat
boundaries. A bad beat is shown with red beat boundary symbols.
Note: hemodynamic data are uncalibrated.
Figure 6: Output data viewer showing beat-to-beat results and statistics for two
hemodynamic parameters containing one bad beat at point of line
break.
Hemodynamic Beat-to-Beat Analysis
Table 1
Stroke volume
LVPsys/bd/ed
CVPsys/dia/avg
LV external work
LV end-systolic
volume
Output Parameters
Heart Rate
AoPsys/dia/avg
LV dP/dt max/min
Cardiac Output
LAPsys/dia/avg
LV end-systolic and
diastolic elastance
Total peripheral resistance
LV end-diastolic
volume
20
Hemodynamic Beat-to-Beat Analysis
21
Table 2
Selection
Export Profile
Export Data
Export Output
Saved Information
Header information, signal names, calibration
factors, beat indices.
Raw signal data and signal names. Data is
calibrated if option is selected.
Results of all the executed analysis files.
Hemodynamic Beat-to-Beat Analysis
22
Figure 1
PROFILE
Specify data information and load data.
DATA PREPARATION
View Data
View and save ranges of loaded data.
Calibrate Data
Calibrate loaded data to known values by
executing a first or second order fit.
Display calibration coefficients.
Pick Beats
Select beginning and ending indices of each beat
manually or automatically. Also, edit beat indices.
Waveform Manipulation
Use Matlab commands to plot
mathematically manipulated data.
DATA ANALYSIS
Analyze data according to
user-selected algorithms.
DATA POST-PROCESSING
View Output Data
Plot chosen parameters from
executed analysis algorithms.
Export Output Data
Save profile, data, or analysis
outputs to an ascii file.
Hemodynamic Beat-to-Beat Analysis
Figure 2
23
Hemodynamic Beat-to-Beat Analysis
Figure 3
24
Hemodynamic Beat-to-Beat Analysis
Figure 4
25
Hemodynamic Beat-to-Beat Analysis
Figure 5
26
Hemodynamic Beat-to-Beat Analysis
Figure 6
27