What Does This Channel
Measure?
Electrical impedance changes in the thoracic cavity are largely
dependent on the movement of blood. The largest contributor is the
blood that is pumped vigorously by the left ventricle into the aorta
with every heartbeat. The impedance cardiography (ICG) dZ/dt signal
captures the velocity changes of the blood allows estimating
pre-ejection period (PEP), left-ventricular ejection time (LVET), and
stroke volume, among other cardiovascular parameters. PEP measures the
latency between the onset of electromechanical systole, and the onset
of left-ventricular ejection. Interest in PEP springs largely from
studies suggesting it is most heavily influenced by sympathetic
innervation of the heart. Particularly in combination with the
parasympathetic marker of cardiovascular activity RSA, PEP can be used
to partition components of autonomic activation in a study of
cardiovascular reactivity. PEP is noninvasively measured for any given
beat as the time between the Q-point in an electrocardiogram (ECG)
signal and the B-point in the derived impedance signal, dZ/dt.
The B-point in the ICG represents the opening of the aortic valve, when the blood suddenly shoots out of the already contracted left ventricle into the aorta. The B-point dZ/dt value is usually around 0, corresponding to very low velocity of the blood. The X-point represents the closing of the aortic valve to prevent the blood from the aorta streaming back into the left ventricle. Since the direction of blood flow at this point has typically already reversed (because of the 'cardiac afterload', the blood pressure the heart has to pump against), the X-point dZ/dt value is usually somewhat negative. The Z-point (dZ/dtmax) represents the maximal speed of the blood ejection. From these 3 points in relationship to the Q-point in the ECG, a variety of meaningful parameters can be estimated:
PEP
(pre-ejection period, in ms): interval from Q-point in the ECG
to
the B-point in the ICG. PEP is inversely related to left-ventricular
contractility and beta-adrenergic (=sympathetic) influences on the
myocard (=heart muscle).
LVET (left-ventricular
ejection time, in ms): interval from B- to
X-point in the ICG. This is how long the heart pumps blood out of the
left ventricle.
Inverse ejection-fraction index (ratio):
ratio adjusting PEP for LVET
(both are highly negatively correlated with heart rate): this is
suggested to be an index of left-ventricular function that is inversely
related to ejection fraction (the percentage of blood pumped out from
the left-ventricle with each heart beat; compromised hearts have a
lower ejection fraction).
Peak ejection velocity index
(in Ohm/sec): this is the amplitude of the
ICG Z-point (dZ/dtmax) relative to the B-point. A higher ejection
velocity is produced by higher cardiac contractility.
Heather Index (Ohm/sec2): ratio
of dZ/dtmax to Q-Z interval
(electromechanical time interval). This index has been shown to be
especially sensitive to changes in cardiac contractility. Sometimes
this index is adjusted by the baseline impedance (Z0) and is then
measured in units of 1/sec2.
Stroke volume (in ml):
calculated from the ICG signal using the Kubicek
formula:
SV = rho * (L/Z0)2 * LVET * dZ/dtmax
rho = blood resistivity
L = distance between frontal ICG electrodes (in cm)
Z0 = baseline impedance displayed on the impedance
cardiograph during
the recording (should be stable)
LVET = left-ventricular ejection time (in sec)
dZ/dtmax = peak ejection velocity
From stroke volume, cardiac output (= heart rate *
stroke volume) and
total peripheral resistance (= mean blood pressure / cardiac output)
can easily be computed.
Data
preparation
Because the ICG signal is highly susceptible to even subtle
movement artifacts and isometric muscular contraction near the thorax,
it is typically necessary to average the wave forms across many beats
to overcome the noise confound and assure reliable detection of the
B-point and other inflection points in the ICG curve. This averaging
relies on the times specified in a special icg timing file, which has
the same type as standard anslab timing files, except that it's named 'MyFileName.icg.m' instead of 'MyFileName.m' (see timing
files for more information): segments found in this file will be
used for beat averaging. You can create such a timing file by running
marker
analysis. You can additionally subdivide intervals created with the
marer analysis using
timing file modification
from the tools menu.
Information from the analyzed ECG file is also
needed for performing averaging of the wave forms, so make sure to have
run the ecg analysis beforehand. If beat averaging is not
synchronized
as shown in the picture below, sampling rate information that was used
for ecg analysis is likely to be incorrect: times of R-waves are
interpreted based on the sampling rate information and beat epochs are
extracted according to these times. Therefore, if the ecg-sampling rate
is incorrect, beat epochs are badly selected.
Thirdly, for each subject the main impedance level and the sensor
distance is required. You can supply this information manually by
entering the corresponding values in the dialog forms shown below:
Less laborious is however to collect these values for all subjects
in a textfile and have anslab read the values from this textfile
automatically. This textfile must located directly in the icg-subfolder
of your study folder (not in a subfolder of it) and must be called icgparam.txt . It should
contain three tab delimited columns of only numbers, the first column
beeing the subject number, the second column sensor distance given in
centimeters
and the third the the impedance given in ohm. An example
content of icgparam.txt is
shown below (subject 19 - 32) :
If you are using a textfile, be sure to select the corrsponding option in the icg-options dialog.
Editing of ICG Data
As with the other variables, select the file you want to look
at.
Anslab preprocesses the dz/dt
signal and in the first display (Axis A) shows the dZ/dt ensembles
synchronized by the ECG Q-point of each heartbeat. In the second axis,
an ensemble
average across the shown beats is displayed, with standard error
margins, and
the automatically detected B-, Z-, and X-point, as shown below.
You can display the corresponding piece of
raw signal by selecting the 'see raw signal' button:
Outlier
exsclusion and autoexclusion:
You can manually exclude outlier curves using the 'exlusion box'
outlier rectangular function, in the left axis. Moreover, if
autoediting is activated in the icg-options, anslab automatically
exludes outlier curves, that are above or below the mean +/- 2 standard
deviations in the B-point-window (shaded in light red). Special
emphasis is made on the B-point window, as outliers distort this point
most heavily, although you can extend the sensitive window to cover the
entire beat. Exluded curves are plotted in light red. You can adjust
the auto-editing parameters (sensitive window and standard deviations
factor) on the icg-options-dialog. The auto-editing outlier
criterion is calculated statically using all beats in a segment,
whereas the +/-1 standard deviation range in the average plot is
updated automatically based on remaining valid beats. Hitting the
'clear segment'-button will undo all exclusions for the current segment
(including auto-exclusions).
Adjusting
the B-, Z- and X point:
And you can
drag-and-drop the B-, Z,- and X-point in the right axis. You can also
drag-and-drop the X-point-detection-window border lines. Dragging the
left line will change both lines by the same amount (leaving the window
size constant). Dragging the right line does not move the left window
border, allowing you to change the window size. Number of beats, number
of excluded beats, segment number, PEP and LVET values are displayed
and updated according to editing steps in the data window.
X-detection-window limits are displayed in the dynamic section of the
command window as shown below. You can thus change the
x-detection-window also parameterically by entering values in the
corresponding edit boxes. You can save the x-detection-window settings
for use with other files by hitting the 'save'-button. If you
drag-and-drop a point, this point will be activated for precise
readjustment with the keyboard. This is indicated by the 'arrow key
setting active for:'-radiobuttons shown below. The activated option
here determines which point will be moved, if you press the 'left' or
'right' arrow buttons. Using this option, points are moved by a very
small amount (1 ms per keystroke). Therefore, adjusting the points
roughly with drag-and-drop first is abvisable. Anslab will remember
exluded beats for a segment and point position changes you performed
with drag-and-drop. If you whish to reset these choices for a given
segment, hit the 'clear segment'-button. Hitting the 'clear all'-button
will reset all editing steps performed so far, and restart with the
first defined segment.
Hitting 'accept' will save the current averaged waveform and it's B-,
Z- and X-points and continue with loading the beats of the next
segment.You can set a segment to missing data by choosing the 'set
missing'-button. Hitting the 'back'-button allows you to go back to a
previous
segment and continue editing there. You can jump to a segment of your
choice by entering a number in the 'jump to segment'-editbox, and you
can save editing results to the current point by hitting the
'save'-button. If loading of previous results is activated in the
icg-options, these editing results are loaded when reopening the file
for analysis. You can then use the 'last edited'-button to jump to last
edited segment (more precisely to the latest segment for which editing
results can be found). After the last segment has been
processed, extracted
parameters are plotted over the duration of the file, and you can
choose to save the reduced data to file or discard analysis
results. Note that extracted calculated traces are plotted as
'event'-type traces and can be directly aligned and compared with raw
icg and ecg signal, by switching from 'event' to 'raw'-display-mode.
Beat-by-beat
analysis:
Starting with anslab2.4, you can also run an icg analysis on every
single beat, having anslab find the B-,Z- and X-point automatically (to
activate the beat-by-beat analysis, set the "analysis mode" dropdown
box on the icg-options page to "both" or "beat-by-beat"). This gives
you better temporal resolution, but accuracy of the calculated
parameters depends much more on the signal quality. After the
beat-analysis, the calculated parameters are displayed (as shown below)
and you can edit the calculated parameters for outliers using the
exclude editing tool. If both the segment and the beat-by-beat analysis
are run, beats excluded in the segment analysis will automatically be
set to missing in the beat-by-beat analysis.
The Z-point is almost always easy to identify and the detection algorithm does not make an error here. The B- and X-points can be more problematic in some subjects during certain tasks, especially if there is much movement artifact. And of course, analyzing ICG is much easier in young healthy students than in older adults with cardiac disease.
If you can see a distinct B-point in the raw data but not in the
ensemble average this indicates that the ensembles are not aligned well
and the inflection point is 'washed out'. This could be because of a
noisy ECG resulting in some msec errors in the Q-point detection. The
Q-point times are the basis for the alignment of the ICG ensembles. In
this case you could use the setting use_q_fixed=1, which forces to
align by a Q-point estimated from the more reliable R-waves. Another
reason could be that the period you are averaging over doesn't
represent a steady state. If the PEP changes considerably across your
averaging period, this would also wash out the B-point inflection from
the ensembles. In this case it is recommended that you define smaller
segments in the U-variable in your study definition file. A reasonable
estimation of ICG parameters can be based on as few as 15 beats. Note
that PEP and other ICG parameters depend to somewhat on the filling of
the lungs, so it is important to average across several breaths.
If you cannot see a distinct B-point in both the ensemble averages and
raw data, this indicates that the subject has a cardiac and thoracic
morphology that makes estimation of PEP with just spot electrodes
difficult. You could exclude this subject from the ICG statistics, or
use the zero crossing mode, or manually reset the B-point to the zero
dZ/dt line. This needs to be done across all tasks to be consistent.
The X-point can sometimes be ambiguous. There can be two or even three
dips after the peak in the ICG signal. As a general rule, it is then
the second or third dip. Between those two, it is the one with a
consistently steeper immediately following increase, which indicates
the closing of the aortic valve and sudden stop of reflux of blood into
the left ventricle. Another guideline is that typical LVET values for
young healthy subjects range between 300 and 350 ms, but it also
depends much on various factors like physical fitness and body mass
index. It is important to be consistent with the identification of the
X-point within subjects.
Sometimes excluding a problematic subject from the analysis of ICG
derived parameters is the best option and helps to not to distort group
statistics.
ICG
options dialog:
* The main consideration is to make sure that the analysis sampling rate that was
used during the ECG analysis is set correctly.
If this is not
done, the ensembles don't line up.
It is recommended to use the highest possible analysis sampling rate allowed by
the data for both ECG as well as ICG analysis (recommendation is 1000 Hz) to
achieve an appropriate effective resolution for PEP and RSA estimation.
* For some subjects, there is no indication of any inflection in the
wave form indicative of the B-point. For these subjects, it is best to
use the zero-crossing mode across all tasks.
* Usually the 60 Hz digital notch filter should be applied to filter
out 60 Hz line noise.
* If the ECG was very noisy, the Q-point detection is relatively
unstable, and it is better to estimate it by a fixed interval backward
from the R-wave peak. This interval can be set for each subject based
on an inspection of the raw ECG in Exam.
* The resistivity of the blood can change with age and during stress,
but it has been shown that under normal circumstances it can be set to
a constant value of 135 Ohm * cm in humans.
* The stroke volume calibration factor allows to adjust the stroke
volume estimation by a constant factor. This is especially useful if a
concurrent invasive measurement of baseline stroke volume was done. In
that case, ICG derived stroke volume tracks real stroke volume during
stress very well. Without calibration, ICG derived stroke volume can be
inaccurate on an absolute level, and thus baseline differences between
groups have to be interpreted with caution.
* Usually taking the median across the ensembles is more accurate than
the mean, because outliers are given less weight.
* The ICG wave form display window can be adjusted to provide optimal
resolution for judging the location of the B- and X-points. Especially
for subjects with very high baseline heart rates this can be made
smaller, e.g., 500 ms.
* In many subjects there is a double-trough in the area where the
X-point is expected. With some judgment (see also below), you can
decide which one represents the closing of the aortic valve. This
decision then has to be applied to all tasks for this subject. Xwin1
and xwin2 allow to setup a search mask for detection of the correct
X-point. It is applied both to the ensemble and beat-by-beat analysis.
* The detection algorithm for the B-point looks for an inflection point
somewhere in the area before the steepest increase in the ICG signal
occurring before the Z-point. Some subjects have pronounced inflection
points, others have barely visible ones. B_fact and B_fact_en allow to
adjust the sensitivity of this detection.