Если у меня есть сигнал, как показано ниже, как мне найти начало и конец двух «основных событий» (показаны зеленой стрелкой, где событие начинается, и красной стрелкой, где оно заканчивается)?
Я попробовал метод, предложенный в этом ответе, но кажется, что сколько бы я ни играл с lag
, threshold
и influence
, он либо реагирует на крошечные изменения в начале, середине и конце графика (где нет крупных событий), либо не реагирует вообще.
Я не могу просто определить, превышает ли сигнал фиксированный порог, поскольку сила сигнала может варьироваться, поэтому мне нужен какой-то способ обнаружения, когда сигнал сильно отклоняется от «фонового шума». Кроме того, иногда сигнал может находиться в общем тренде, как на графиках ниже.
Я уже применяю к сигналу простой фильтр нижних и верхних частот. Я хотел бы получить что-то вроде оранжевого сигнала на графике ниже (я нарисовал его вручную только для иллюстрации).