View Full Version : Re: Summary 'filtering ECG from EMG'

Wendy Gilleard
12-15-1996, 05:05 PM
Hi all,
As usual a fantastic response. Thanks to all who replied. You have given me
some great ideas.

Original Message:

I have collected some abdominal EMG which for the electrodes in the upper
abdominal area have significant cardiac ECG signals in it. This ECG signal
is interfering greatly with the ability to determine onsets etc. Therefore
we would like to get rid of it. I realise that filtering will remove all the
signal, and hence some EMG, at whatever frequency we use. However at the
moment we cannot determine an onset at all that makes sense.
My question is:
Has anybody tried this?
What filter and frequency did you use?
Have you published this anywhere?

Summary of replies:

From: "Rod Barrett NHS"
Organization: Griffith University Gold Coast

Redfern, MS. (1987). Elimination of EKG contamination of torso
electromyographic signals. In Asfour, SS (Ed) Trend in
Ergonomics/Human Factors IV (pp. 725-729). Amsterdam: Elsevier
Science Publishers BV.

From: burden
Adrian Burden
Chelsea School
University of Brighton

From: ErgoHughes@aol.com
Richard Hughes

Redfern, M.S., Hughes, R.E. and Chaffin, D.B. (1993). High -pass filtering
to remove electrocardiographic interference from torso EMG recordings.
Clinical Biomechanics, 8:44-48.

From: Rolf Moe-Nilssen
Organisation: University of Bergen

In stead of filtering in the frequency domain, you could try the easy
solution of making a histogram of the distribution of EMG amplitudes.
Most likely you will get a bimodal distribution, where the upper mode
represents the signals containing ECG artifact. If the dip between the
two modes is sufficiently deep (which it most likely is if the EMG
activity is low), you can make this a cut off value for the amplitudes
you would like to include. Thus you dispose of all samples containing
ECG without distorting the rest. At least you get rid of the QRS-complex
of the ECG signal this way. It's like going between heartbeats to do
your analysis. If you need exact onset times you should retain the
removed samples as missing values. I did this on resting EMG from the
upper (left) trapezius with good results. Unfortunately I only have the
results written in Norwegian, but if you want to have a look, I could
easily fax you some relevant figures showing the EMG signals with and
without corrections for ECG artifact.

From: lhsome@luga.latrobe.edu.au
Owen Evans, La Trobe University

This is a characteristic problem of emgs recorded from the trunk. It
differs according to site and individual. The only satisfactory method of
reducing it that I have used is direct recording of the EKG, and digital or
analog subtraction. But that's a long time ago, and may seem crude in this
day and age.

From: (Karl Kraus)
Organisation: Tufts University

You are getting far field from the heart, obviously. Usually this means you
are doing surface recording. Analog filtering is not the answer. You need to
position your active, reference and ground such that the heart signal gets to
your active and reference electrodes at the same time, usually this means
close together. Ground closer to the heart. If you can, use bipolar EMG
needles. This is painful, however. If this is impossible, try digital
filtering and FFT.

From: l.abraham@mail.utexas.edu (Larry Abraham)
Organisation: The University of Texas at Austin

I don't think normal filtering techniques will do what you want. I suspect
you will get much better results by "subtracting" the ECG waveform, since
it is fairly discreet and regular. There are commercial software packages
which do this, but they are a bit pricey. You can probably write your own
code to do this particular job. The general idea is as follows:

First, using triggered averaging, collect an average waveform of the ECG.
You can do this by aligning segments of the data which contain the
waveform, using the most salient feature (largest peak), and averaging.
This should remove the "random" abdominal EMG and leave you with a
representative waveform of the offending ECG.

Then, go back through the data and "subtract" the composite waveform from
the raw data at each heartbeat. What is left should be a relatively pure
EMG signal.

From: Richard Shiavi
Organisation: Vanderbilt University

Without having done this my best guess is that you will have to do something
similar to what folks have done separating the maternal and fetal ECG
signals. First detect the ECG QRS complex and then subtract it from the
original measurement. After that some high pass filtering with cutoff
frequency around 20 Hz should remove most of the energy in the P and T waves
and retain most of the EMG signal.

The ECG detection is well documented and i could send you some MATLAB script
if you decided to use this approach.

From: atyler@saunix.sau.edu (Amy E. Tyler)
Organisation: St. Ambrose University

I had similar problems when collecting dissertation data a few years back.
I ended up recording abdominal muscle activity in the lower abdominal area
(further away from the heart) and orienting the bipolar electrodes so that
they were aligned perpendicular to the direction of the heart (in an
attempt to have the electrodes "subtract" the ECG).

I'm now using a different emg setup with a cut off frequency of either 20
or 70 Hz. Using the 70Hz cut off helps a lot, but doesn't completely
eliminate the problem, which is unfortunate because onsets/offsets are then
impossible to confidently identify as you've indicated.

It sounds as if you already have the data and you are trying to filter out
the ECG after data collection. Is there some way of estimating the
magnitude and frequency of the ECG and somehow subtracting that from your
data? I'd be interested in any responses you get about such ideas as I
suspect I will continue to struggle with ECG artifact as you have.

From: Peter Meyer
Organisation: NeuroMuscular Research Center, Boston University

This is just off the top of my head with very little thought involved,
but what if you used a differential amplifier to subtract out the ECG?
If you placed the ECG electrodes in an orientation such that the EMG and
ECG electrodes pick up similar projections of the cardiac vector, you
could run the outputs through a diff amp. It wouldn't be perfect, since
you can't get the exact same cardiac vector projection at a different
spot, but it might be better that filtering.

Good luck. You have an interesting problem.

From: "Paul Guy"
Organization: University of Waterloo

Yep, we've done filtering and found it highly successful at
removing ECG artifacts from EMG. The part you won't like is how we
did it. In effect, we use a 'brick wall' high pass filter, whose
corner frequency was at 30-40 Hz.
To achieve that type of filter I used a Fourier transform, that
gave BOTH real and imaginary terms, zero'd out the frequencies I
didn't want, and then did an inverse Fourier Transform. Since there
is a one-to-one transformation between time and frequency domain
using FFT's, this is a valid approach.
In practice, I used Microsoft Excel to do it. I brought the data
into a spreadsheet, and used macros I have developed to perform the
FFT and inverse FFT. Those macros are publicly available from our FTP
site - gailab1.uwaterloo.ca in directory: /pub/foryou/excelstuff as
pmacros.xls . If you want them, do it fast as the powers that be want
that Unix machine trashed to make more room for their junk.
For the same reason, if you want to get in touch with me, don't
use gaitlab1.uwaterloo.ca, use pguy@math.uwaterloo.ca . You can post
this reply to the newsgroup if you want, as I have only replied to
you personally.
I haven't published this, I don't believe this would be worthy of
a quality article, as it is just a mere technique to get the job done.

From: Joel L Lanovaz

University of Saskatchewan

I don't deal with ECG or EMG signals specifically, but I have worked with
a data analysis technique which may be of some interest to you. Have you
tried filtering your data using Wavelets? Wavelet smoothing (often called
"de-noising") has the unique ability to eliminate noise at a given
frequency level while retaining real signal components at the same
frequency. If your real EMG signal has a great enough signal power
with respect to the interference signal, wavelet smoothing might work
quite well.

I have only used "home grown" wavelet software, so I can't give you names
of any software packages. A quick search on the web should show quite a
few free packages (usually in MATLAB or C). As far as references go, I
don't have my full list handy, but one you might start with is:

Wavelets: Theory, algorithms and applications (1994), Edited by Chui,
Academic Press, San Diego.

Wendy Gilleard E-mail: w.gilleard@cchs.usyd.edu.au
Dept. Biomedical Science Tel: Int +61- (0)2 - 935 19528
Faculty of Health Science Fax: Int +61- (0)2 - 935 19520
University of Sydney
Post: P.O. Box 170, Lidcombe, N.S.W. 2141, Australia