Я пытаюсь автоматически идентифицировать пики, используя функцию scipy find_peak. В настоящее время я пытаюсь оптимизировать параметр признания, так что только «реальные» пики идентифицированы, не снимая слишком много шумных точек. Все нормализовано и масштабируется MIN-MAX, поэтому диапазон моих данных составляет 0-1. Я экспериментировал с известностью = 0,01, но это приводит к пикам в моих данных (показано ниже), не идентифицированные. Если я попытаюсь понизить известность до известности
Вот мой код для расчета пиков: < /p>
Код: Выделить всё
def find_peaks_relative_height(data, threshold_factor=0.01):
"""Find peaks in data using relative height threshold."""
threshold = (np.amax(data) - np.amin(data)) * threshold_factor
peaks, _ = find_peaks(data, prominence=threshold)
return peaks
Image of two overlayed graphs with noisy points labeled as peaks on one graph but no labeled peaks on the other graph:

< /p>
График с выдающимися пиками, но без идентифицированных пиков с использованием find_peaks:
< /p>
Подробнее здесь:
https://stackoverflow.com/questions/796 ... find-peaks