Filtering EEG signals with bandpass filter

8 visualizaciones (últimos 30 días)
Mahirah Hamdan
Mahirah Hamdan el 17 de Dic. de 2013
Comentada: Mahirah Hamdan el 17 de Dic. de 2013
my EEG signals is signal with time domain and the magnitude in Voltage. How i want to filter my EEG signals, so that I only have signals with frequency 3Hz-40Hz. My Fs is 128Hz. Anyone can help? I see this in bandpas filter, d = fdesign.bandpass('Fst1,Fp1,Fp2,Fst2,Ast1,Ap,Ast2',1/4,3/8,5/8,6/8,60,1,60); But i dont know how i want to determine my Ast as it is in db.. should i convert my signal to db first?

Respuesta aceptada

Wayne King
Wayne King el 17 de Dic. de 2013
Editada: Wayne King el 17 de Dic. de 2013
First of all, you should design your filter in Hz.
d = fdesign.bandpass('Fst1,Fp1,Fp2,Fst2,Ast1,Ap,Ast2',1,3,40,45,40,1,40,128);
The stopband attenuation setting should depend on the dynamic range of the signal. I doubt that in EEG data you need 60 dB of stopband attenuation.
Also, are you sure you need a bandpass filter? and not just a lowpass filter with a cutoff at 40 Hz? You're creating many more demands on your filter to try and have a stopband from [0 3) Hz.
How about just
d = fdesign.lowpass('Fp,Fst,Ap,Ast',40,45,1,40,128);

Más respuestas (0)

Categorías

Más información sobre EEG/MEG/ECoG en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by