EEG preprocessing using bandpass filter
14 ビュー (過去 30 日間)
古いコメントを表示
I have EEG data obtained from BCI Competition III dataset IIIA. I want to band pass this data in 8-13 HZ. Currently, the data is in the frequency range of 0-50HZ.How do I apply Butterworth filter on this data? What should be the ideal filter order?can somebody provide the code?
0 件のコメント
回答 (1 件)
Ashish Tiwari
2019 年 12 月 28 日
First of all let me know the sampling frequency you are working on. if your sampling frequency is 128HZ then normalise your lower cut off frequency and upper cut off frequency like this:
Fs=128;
for signals between 8-13Hz:--
[8 13]/Fs/2
then put this in butter function
[b,a]=butter(10,[8 13]/Fs/2);%where 10 is the order of the filter.The resulting bandpass and bandstop designs are of order 2n.i.e. 20th order
2 件のコメント
vo
2022 年 12 月 12 日
@Ashish Tiwari Why the bandpass [flo fhi]/128/2 ? I don't know why? why must divide 128/2? Can you explain for me? thank you
Star Strider
2022 年 12 月 12 日
編集済み: Star Strider
2022 年 12 月 12 日
@vo — It is necessary to divide the frequencies in Hz by the Nyquist frequency (the highest uniquely identifiable frequency in a sampled signal, one-half the sampling frequency) in order to normalise the signal on the interval
radians/independent variable unit (seconds, centimetres, etc.), although actually to the interval
as arguments to the MATLAB filter design functions.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1228232/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1228237/image.png)
参考
カテゴリ
Help Center および File Exchange で EEG/MEG/ECoG についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!