Преобразование данных непрерывного сигнала 1-D и создание ряда преобразований для данной полосы пропускания/масштаба. Теперь, как автоматически выбрать наилучшую пропускную способность или масштаб в заданном диапазоне?
Пример: на диаграмме темно-синяя линия — это исходные данные непрерывного одномерного сигнала. Каждая вторая кривая представляет собой преобразование этих данных для диапазона полос пропускания [10, 20, 30, 40, 50]. В этом примере, как автоматически выбрать полосу пропускания, которая лучше всего отражает изменение кривой?
Примечание. Ответы могут быть Python
конкретными или очень общими о том, как рассчитать "наилучшую" пропускную способность.
import numpy
import matplotlib.pyplot as plt
from scipy.signal import ricker, cwt
data #numpy.ndarray
# data = ([11, 8, 8, 2, 2, 4, 4, 4, 4, 3, 3, 5, 5, 9, 12, 17, 19, 19, 20, 19, 19, 14, 12, 11, 9, 6, 4, 3, 3, 2, 2, 6, 9, 12, 16, 17, 19, 20, 20, 19, 17, 15, 13, 9, 7, 6, 5, 3, 2, 4], dtype=int64)
bandwidths = np.arange(10, 60, 10)
cwt_data = cwt(data, ricker, bandwidths) #transforms the data
plt.plot(cwt_speed.T, label='Transformed data')
plt.plot(speed, label='original data', linewidth=2)
plt.legend()