【问题标题】:Relation of Sampling frequency, Signal length (datapoints) and Time range of Discrete Wavelet Transform?离散小波变换的采样频率,信号长度(数据点)和时间范围的关系?
【发布时间】:2019-05-03 00:05:16
【问题描述】:

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

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

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

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

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

根据这篇文章,我需要回答我的第一个问题。

非常感谢。

【问题讨论】:

    标签: matlab fft wavelet frequency-analysis dwt


    【解决方案1】:

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

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

    根据参考资料,我在这里复制了一些代码,您可能想测试一下,您可能想减少这里的级别和 Fs 的数量,如果您愿意,可以定义自己的 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

    【讨论】:

      猜你喜欢
      • 2011-06-09
      • 1970-01-01
      • 1970-01-01
      • 2018-10-20
      • 2021-12-02
      • 2016-02-18
      • 1970-01-01
      • 2015-11-28
      • 2013-07-20
      相关资源
      最近更新 更多