2
$\begingroup$

Apologies if this is too basic.

I need to implement a band-pass filter, for a realtime system. Not sure what to use. FIR? IIR? Something else ?

Any tips would be highly appreciated.

$\endgroup$
2
  • 1
    $\begingroup$ What do you mean by real-time? Please provide the maximum allowable delay, sampling frequency, and filter requirements. All these are interdependent. $\endgroup$
    – Juancho
    Commented Dec 27, 2012 at 12:14
  • $\begingroup$ Sampling frequency 512Hz. Filter 1Hz-30Hz and as minimum delay as possible. It's EEG data BTW. Thanks @Juancho! $\endgroup$
    – Dov
    Commented Dec 27, 2012 at 12:59

1 Answer 1

4
$\begingroup$

For an EEG signal, I suppose you need to keep the shape of the signal. Therefore the filter should have linear phase, so the reasonable way to go is a FIR filter.

If shape (transients) don't matter much for your application, then an IIR filter would be preferable since it will give less end-to-end delay in general.

Note that suprressing 0 - 1 Hz, inevitably gives a group delay of at least 1 second, depending on how sharp the transition should be, so your real-time requirements may conflict with the start frequency.

You may try some filter design tools (e.g. from matlab) to find a reasonable compromise between frequency response and group delay.

$\endgroup$
2
  • $\begingroup$ Could you please elaborate a bit about the "group delay problem" you have mentioned, not 100% sure why it's happened (I Probably missing something very basic ) Thanks this is all very helpful! $\endgroup$
    – Dov
    Commented Dec 27, 2012 at 22:46
  • $\begingroup$ Could you please elaborate a bit about the "group delay problem" you have mentioned, not 100% sure why it's happened (I Probably missing something very basic ) Thanks this is all very helpful! $\endgroup$
    – Dov
    Commented Dec 28, 2012 at 10:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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