我获得了如下信号,它是一个数字化信号:
image http://i62.tinypic.com/2kn8yp.png
我想用MATLAB确定信号的起点。我想到的一个想法是使用时频变换来确定频率的新分量何时出现。但是,我不知道如何在MATLAB中继续这个。
以下是与此信号相关的数据 - https://www.dropbox.com/s/16gqlvi7obkb4nk/sig.txt
答案 0 :(得分:1)
这是你可以采取的一种方式。
[~,i]=max(cwt(a,1:16,'db4'),[],2);
start_point=min(i);
应用上述代码并在时间序列上绘制"start_point"
,可得到以下图像:
红色星号(*)标志着信号的开始。请注意,如果您在一个时间序列中有多个起点,则可以考虑局部最大值超过某个阈值。请查看"cwt"
的帮助,并选择适合您的音阶和母小波。