1
$\begingroup$

ECG signal is affected by interferences such as the Powerline Interference, Baseline Wandering and Muscle Noise.

There are many filters available which can reasonably cancel these types of noise.

I've found that Butterworth, Chebyshev, Wiener and Kaiser filters, along with wavelets could be used for this purpose.

Now, my main questions are:

  1. Which filters are the most commonly used and easier to implement (both from the above list and from other filters you have in mind)?
  2. Can you provide me some pseudo-code samples on how to implement some simple filters, maybe Butterworth or Wiener?
  3. In which references should I look at concerning ECG digital filtering, I mean which provide an overview of the various filters instead of foccusing on a specific one?

Thanks in advance

$\endgroup$
1
$\begingroup$

Different filters are used for different purposes. Removing powerline noise, which usually is concentrated at a single frequency, is usually performed with a notch filter. Removing baseline wandering is usually done with a DC blocking filter, which is a very narrow high pass filter, and is essentially another notch filter with 0 Hz center frequency. Removing EMG is usually more difficult, but you can try doing it with a low pass filter, since EMG has a lot of content in high frequencies.

In order to process EEG signals for simple things like heartbeat rate detection, look at the Pan-Tompkinks algorithm.

Questions 2 and 3 require some effort on your part, since they're very broad. I've used this book in a graduate class on the topic, and I found it to be very insightful.

$\endgroup$
0
$\begingroup$

I think you can use any filter of them, it depends alot on the type of the filter(low pass,high pass,....) First you should know the useful frequency part and the noise part, depending on IEC specification, the bandwidth of the ECG is 0.5Hz to 150Hz.

so you can use a low pass filter with break frequency 150Hz to remove the high frequency noise(larger than 150), and use notch filter(remove specific frequency) to remove the power line noise at 50Hz or 60Hz, the noise added by muscles is hard to remove because it lies in the bandwidth of the ECG signal.

you can use MATLAB and see the help of these filters, it provides nice examples.

$\endgroup$
0
$\begingroup$

Joe..

Question 3 would answer Question 1 (since a resource giving an overview without focusing on any given technique would answer that question).

Have a look at Chapter 2 "ECG Signal Analysis" of "ECG Acquisition and Automated Remote Processing" by R. Gupta et al. (Springer India 2014).

It gives a nice overview on different challenges ECG Analysis faces, and different solutions for these problems, with references to original work in case you want to dig deeper on any matter. It also gives pseudo-code in case you're interested.

I had already tried the differences method to get rid of Baseline Wander, which I found effective.

Have also a look at "Computer Aided ECG Analysis - State of the Art and Upcoming Challenges".

Also, keep in mind that it's not enough to get a "nice ECG", meaning a "visually appealing" ECG. You need to take into account how much information is lost by that filtering, and how much distortion.

So you need to test your algorithms on known signals and known noise to be able to do that and compute error, etc.

Bear also in mind that it always boils down to a compromise. Some cite Heisenberg, I quote the Rolling Stones: You can't always have what you want.

We all want fast algorithms we can implement real time, filters that only filter the noise but leave the ECG characteristics intact, 1000+Hz sampling frequency on a wearable device with unlimited battery time.

The reality is quite not that great. Hence the word "challenges".

I'm also doing my thesis on the matter, so if you have any other question, feel free to ask: I won't be the douchebag who tells you "How come you don't know this ?".

$\endgroup$
0
$\begingroup$

A simple and efficient method was presented in this paper: A wavelet-based method for power-line interference removal in ECG signals. In: Res. Biomed. Eng., vol.34, n1, p.73-86, 2018. Authors: Bruno Rodrigues de Oliveira; Marco Aparecido Queiroz Duarte; Caio Cesar Enside de Abreu; Jozue Vieira Filho. DOI: http://dx.doi.org/10.1590/2446-4740.01817.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.