采样频率、信号长度(数据点)和离散小波变换时间范围的关系?

Relation of Sampling frequency, Signal length (datapoints) and Time range of Discrete Wavelet Transform?

如上令Fs为采样频率,L为信号长度,t为时间范围。

由于在 Matlab 中使用 mdwtdec 将多原始信号分解为特定频带,我只注意到第一级分解信号的长度被分成两半,并保持在第 2 级切入第 1 级信号的一半。

原始信号的时间范围计算:t = 0 --> (L/Fs)

我的问题是在每个分解级别中采样频率Fs是否仍然相同?以及在每个分解级别我如何计算每个细节和近似系数的时间范围。

同时为了验证离散小波变换的频带,我在post之后的每个级别应用了 FFT:https://jp.mathworks.com/help/matlab/ref/fft.html?lang=en

据此post我的第一个问题需要回答。

非常感谢。

我非常肯定,在离散小波变换中,时间序列数据或信号,如果我们愿意,将被下采样 2,这意味着如果我们有 2^10 或 1024 个数据点在我们原来的时间序列数据中,在第一层,它会被分成2,我们的第一层采样频率是2^9或512,在第二层会减少到256,依此类推。

然而,在连续小波变换中,它很可能保持不变。

根据参考资料,我在这里复制了一些代码,您可能想测试看看,您可能想在这里减少级别和 F 的数量,如果您愿意,可以定义自己的 x :

 Fs = 1e6;
 t = 0:1/Fs:1-1/Fs;
 x = cos(2*pi*50*t);
 [C,L] = wavedec(x,15,'db4');
 details = detcoef(C,L,'cells');
 d14recon = wrcoef('d',C,L,'db4',14);
 plot(d14recon,'k'); 
 d13recon = wrcoef('d',C,L,'db4',13);
 hold on;
 plot(d13recon,'r');  %look how small the amplitude is

 a13recon = wrcoef('a',C,L,'db4',13);
 plot(a13recon,'b');

有用的链接:

我不是这方面的专家,您可以阅读更多相关信息并找到您想要的信息。还有很多关于它的 YouTube 视频。

Discrete wavelet transform relation to sampling frequency of the signal

Single-level discrete 2-D wavelet transform