Я экспортировал два вейвлета из программного обеспечения и преобразовал их в два разных массива, каждый из которых представляет сигнал с 1001 выборками.
Один сигнал является необработанным, а другой - фильтром нижних частот, применяемым к необработанному сигналу:
low pass butter worth Freq @ 3db down 70 HZ , slope : -72db
(Pass frequency = 58.9 HZ , Stop Frequency = 96.4 HZ)
Этот фильтр был применен до того, как я извлек вейвлеты.
Я пытаюсь повторить аналогичный фильтр в python, используя scipy для получения похожих результатов в необработанном вейвлете, но результаты не совпадают.
Я использую батторд и масло вместе с фильтратом из сигнала:
n , wn = signal.buttord(wp=0.59, ws=0.96, gpass=3, gstop=72, analog=False)
b, a = signal.butter(n , wn, btype='low' )
output_signal = signal.filtfilt(b, a, stack_arr)
Есть ли способ скопировать этот фильтр?
Извлеченные вейвлеты и результат:
Синяя линия - это вейвлет, который я хочу сопоставить с результатами, оранжевый - это нефильтрованный вейвлет
Синяя линия - это вейвлет, который я хочу сопоставить с результатами, оранжевый - после применения фильтра scipy