Вейвлеты Хаара - Частичная реконструкция сигнала
Я пытаюсь приблизить временной ряд / вектор usind dwt. Я могу применить полную реконструкцию DWT и IDWT, но я не знаю, как восстановить / аппроксимировать исходный сигнал, основываясь только на нескольких коэффициентах (не на всех).
Я попробовал это:
library(wavelets)
x<-c(7, 5, 5, 3, 3, 3, 4, 6)
w <- dwt(x, filter="haar",n.levels = 3)
rec<-idwt(w)
Я читал об усечении коэффициентов, но не знаю, как это сделать.
Что если мне нужно приближение, например, на основе 2 коэффициентов?
Я буду признателен за любую помощь.
1 ответ
Между строками 3 и 4 вы можете сделать
str (w) # see what w looks like
w@W$W1 [] = 0 # set the 1st level detail coefficients to 0
тогда ваш rec
будет
[1] 6 6 4 4 3 3 5 5
и это имеет смысл: без детальных коэффициентов на самом тонком уровне преобразование Хаара возвращает среднее значение каждой пары точек для обеих точек.