如何在嘈杂的曲线中找到拐点?

信息处理 Python
2022-01-28 06:55:18

我有 numpy 2D 数组定义的嘈杂曲线: MEPSC

如您所见,它具有第一个平坦段,然后是上升、峰值和衰减阶段。我需要找到上升阶段的起点,这里用红点标记。我可以使用什么算法?我需要它尽可能地耐噪声。

1个回答

我认为 Jazzmaniac 关于 Savitkzy-Golay 过滤器的建议很有意义。但是,我不建议简单地使用这些过滤器来平滑您的数据。许多人不知道的是,存在微分 Savitzky-Golay 滤波器,它可以同时平滑和计算导数。这样的过滤器在 Matlab 中实现:检查这个

您可以使用平滑导数来检测所需的起点。它仍然需要一些启发式和调整,但我没有看到任何其他更直接的方法来做到这一点。