Определить горизонтальные области на шумном графике - PullRequest
1 голос
/ 14 мая 2019

У меня есть куча шумных данных. enter image description here Я должен быть в состоянии найти точки, где увеличение у начинается и заканчивается. Визуально это довольно очевидно, но мне трудно было придумать алгоритм, который был бы последовательным и точным. Я попытался получить уклон напрямую (как разница между соседними точками): enter image description here Но и здесь я не уверен, как правильно определить начало и конец шага. Я попытался просто уйти от величины разницы между точками, но я получаю либо много ложных срабатываний (как в этом очень шумном всплеске на втором графике), либо я пропускаю очень маленькие шаги (как первый и третий). Я также попытался выполнить шаги из десяти пунктов, рассчитать линию наилучшего соответствия и MSE, и когда MSE достигнет определенного порогового значения, я буду считать это углом на графике. Например, для 10 точек в несколько горизонтальной линии MSE для линии наилучшего соответствия будет небольшим, но для 9 точек и 1 в начале наклона MSE будет намного больше. Я думал о том, чтобы попытаться преобразовать его в пошаговый график, но я не уверен, как это сделать, плюс я чувствую, что у меня может быть только одна точка, где график идет от низкого к высокому, а не две точки, одна когда оно начинает расти, а другое - когда оно прекращается. У кого-нибудь есть идеи о том, как можно это сделать?

...