I am working on eeg signals. In feature extraction process,I want to subdivide the spectrum into frequency subbands. Plz suggest me how to do so.

2 次查看(过去 30 天)
Hello sir, I am working on data (Subject1_1D)available on website. On that,I want to apply autoregressive method by yule-walker algorithm which is applied to estimate the PSD.Now, it is required to divide the spectrum into frequency subbands and then calculate the relative spectral power(RSP). I don't understand how to get the subbands of the spectrum. Plz guide me.

回答(1 个)

Wayne King
Wayne King 2013-6-18
编辑:Wayne King 2013-6-18
If I understand your methodology, you are obtaining an AR spectral estimate using the Yule-Walker method and then you want to split that AR PSD estimate into subbands.
In MATLAB, I'll assume you are using pyulear()
If you input the sampling frequency into pyulear(), then you can obtain a frequency vector in cycles/unit time. I'll assume that is cycles\second here (Hz).
You can then easily use that frequency vector to partition the PSD estimate into the desired subbands in Hz.
For example, I'll create a signal and assume it's sampled at 1 kHz. To extract the 100-200 Hz band of the AR PSD estimate:
x = randn(1000,1);
y = filter(1,[1 1/2 1/3 1/4 1/5],x); %AR(4) model
[pxx,f] = pyulear(x,4,length(y),1000);
df = f(2)-f(1);
beginidx = floor(100/df)+1;
endidx = floor(200/df)+1;
subband_100_200 = pxx(beginidx:endidx);

类别

Help CenterFile Exchange 中查找有关 Parametric Spectral Estimation 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by