EEG bandpass filtering locutoff and hicutoff syntax

10 visualizzazioni (ultimi 30 giorni)
Zhuo
Zhuo il 8 Nov 2025 alle 4:29
Modificato: Umar il 9 Nov 2025 alle 7:15
I have been confused with this basic question for a while. If I want to keep the EEG data ranging from 0.05Hz- 80Hz when doing the bandpass filtering step, should I run: EEG = pop_eegfiltnew(EEG, 'locutoff', 0.05, 'hicutoff', 80)or EEG = pop_eegfiltnew(EEG, 'locutoff', 0.05, 'hicutoff', 80, ‘revfilt’, 1)? Thank you so much for anawering this question!

Risposte (1)

Umar
Umar il 9 Nov 2025 alle 7:14
Modificato: Umar il 9 Nov 2025 alle 7:15

Hi @Zhuo,

For your question about bandpass filtering EEG data in the range of 0.05Hz to 80Hz, the choice between the two commands depends on the filtering approach you'd like to use:

  • If you're processing offline data and want to preserve phase relationships, you should use:
    EEG = pop_eegfiltnew(EEG, 'locutoff', 0.05, 'hicutoff', 80, 'revfilt', 1);

This applies a zero-phase filter (non-causal), which is ideal for offline processing when phase accuracy is important.

  • If you're working with *real-time data* or prefer a *causal filter*, then you can use:
    EEG = pop_eegfiltnew(EEG, 'locutoff', 0.05, 'hicutoff', 80);

This applies a causal bandpass filter, which only uses past and present data.

For most offline analyses, `revfilt = 1` is recommended for better phase preservation.

Hope this helps.

Reference:

https://sccn.ucsd.edu/pipermail/eeglablist/2023/016946.html

Categorie

Scopri di più su EEG/MEG/ECoG in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by