Mic*_*ael 4 signal-processing wavelet gsl time-frequency
我想对EEG信号进行时频分析.我找到了用于计算小波系数的GSL小波函数.如何从该系数中提取实际频段(例如8-12 Hz)?GSL手册说:
对于正向变换,原始数组的元素由
f_i -> w_{j,k}填充三角形存储布局中的离散小波变换代替,其中J是级别的索引,j = 0 ... J-1并且K是每个级别内系数的索引k = 0 ... (2^j)-1.级别总数是J = \log_2(n).输出数据具有以下形式,
(s_{-1,0}, d_{0,0}, d_{1,0}, d_{1,1}, d_{2,0}, ..., d_{j,k}, ..., d_{J-1,2^{J-1}-1})
如果我理解正确的输出阵列data[]包含位置1(例如data[1])频带的幅度2 ^ 0 = 1 Hz,和
data[2] = 2^1 Hz
data[3] = 2^1 Hz
data[4] = 2^2 Hz
until
data[7] = 2^2 Hz
data[8] = 2^3 Hz
Run Code Online (Sandbox Code Playgroud)
等等 ...
这意味着我只有频率为1 Hz,2 Hz,4 Hz,8 Hz,16 Hz的振幅,......我怎样才能得到频率分量振幅为5.3 Hz的振幅?如何获得整个频率范围的幅度,例如8-13 Hz的幅度?有什么建议如何获得良好的时频分布?
Pho*_*non 12
我不确定你对一般的信号处理有多熟悉,所以我会尽量清楚,但不要为你咀嚼食物.
小波本质上是滤波器组.每个滤波器将给定信号分成两个非重叠的独立高频和低频子带,使得它然后可以通过逆变换重建.当连续应用这样的过滤器时,您会得到一个过滤器树,其输出为1.构建此类树的最简单,最直观的方法如下:
这样做的原因是您可以对得到的近似信号进行下采样.例如,如果您的滤波器将采样频率(Fs)为48000 Hz(通过奈奎斯特定理得出最大频率为24000 Hz)的信号分为0到12000 Hz近似分量和12001到24000 Hz细节分量,则可以采用近似分量的每个第二个样本没有混叠,基本上是抽取信号.这广泛用于信号和图像压缩.
根据此描述,在第一级,您将频率内容分成中间并创建两个单独的信号.然后你拿下你的低频成分并再次将它分成中间.您现在总共获得三个组件:0到6000 Hz,6001到12000 Hz和12001到24000 Hz.您会看到两个较新的组件都是第一个细节组件带宽的一半.你得到这样的图片:

这与你在上面描述(带宽2^1 Hz,2^2 Hz,2^3 Hz等).但是,使用更广泛的滤波器组定义,我们可以根据需要安排上述树结构,它仍将是滤波器组.例如,我们可以喂都近似和细节分量分裂成两个高频和低频信号,像这样

如果你仔细看,你看,这两个高频和低频分量倒在他们的频率中,因此你会得到一个统一的滤波器组的频率间隔看起来更像是这样的:

请注意,所有波段都具有相同的大小.通过构建具有N级的均匀滤波器组,您最终得到2 ^(N-1)个带低音滤波器的响应.您可以微调滤波器组,最终为您提供所需的频段(8-13 Hz).
一般来说,我不建议你用小波来做这件事.您可以阅读一些有关设计良好带通滤波器的文献,并简单地构建一个只允许通过8-13 Hz的EEG信号的滤波器.这就是我以前做过的,对我来说效果很好.