如何计算频带内的功率谱?

问题描述:

我有离散的脑电信号,我试图从每个通道中提取绝对功率。采样率为30Hz。我感到困惑的是我不知道如何准确编程。 首先我做:如何计算频带内的功率谱?

y = fft(eegdata); 

这给了我一个复杂的两倍。我必须在Hamming窗口+ 50%重叠的频带(alpha +)内进行计算,但我不知道如何去做。任何人都可以帮我解决这个问题吗?

+0

我的第一次尝试是获取FFT数据的绝对量值,然后在非规格化之后,将幅度平方得到功率谱。 – Zeeshan

尝试Matlab的pwelch函数。如果你的单位是U(例如),那么pwelch输出U^2 /(Hz s),所以如果你想要U^2/Hz的功率谱密度,把你的采样间隔乘以pwelch的结果(在你的情况下,1/30秒)。

默认设置应用50%重叠的汉明窗口。

+0

请务必阅读关于该功能的Matlab文档,并且我发现这篇文章对帮助理解Welch的方法非常有用:https://www.osti.gov/scitech/servlets/purl/5688766/ –