检测分段常数信号中的步骤

VP.*_*VP. 5 matlab signal-processing

我有一个分段恒定信号如下所示.我想检测步骤转换的位置(用红色标记).

我目前的做法:

我目前正在实施检测不连续性的最后一步.但是,我无法获得精确的位置,并以许多错误检测结束.

我的问题:

  1. 这是正确的方法吗?
  2. 如果是的话,有人会为最后一步提供一些信息/算法吗?
  3. 请建议替代/更好的方法.

谢谢

1级地块的原始,平滑,DWT详细的Coeff

bla*_*bla 4

将信号与高斯的一阶导数进行卷积以找到步进位置,类似于一维中的Canny 边缘检测。您可以通过多尺度方法来做到这一点,从“大”西格玛(例如〜10像素)开始检测局部最大值,然后到较小的西格玛(〜2像素)以收敛到步骤所在的正确像素。

您可以在此处查看此方法的实现。