2016-05-22 23 views
1

Ich versuche, eine Zeitreihe/Vektor usind dwt zu approximieren. Ich kann die vollständige dwt- und idwt-Rekonstruktion anwenden, aber ich weiß nicht, wie ich das ursprüngliche Signal basierend auf ein paar Koeffizienten (nicht alle) rekonstruieren/approximieren kann.Haar Wavelets - Partielle Signalrekonstruktion

Ich habe versucht dies:

library(wavelets) 
x<-c(7, 5, 5, 3, 3, 3, 4, 6) 
w <- dwt(x, filter="haar",n.levels = 3) 
rec<-idwt(w) 

ich Koeffizient Abschneiden gelesen, aber ich weiß nicht, wie es zu tun.

Was ist, wenn ich eine Approximation basierend auf, sagen wir, 2 Koeffizienten brauche?

Ich werde jede Hilfe zu schätzen wissen.

Antwort

1

In zwischen den Linien 3 und 4 Sie

tun können
str (w)  # see what w looks like 
[email protected]$W1 [] = 0 # set the 1st level detail coefficients to 0 

dann wird Ihre rec

[1] 6 6 4 4 3 3 5 5 

sein und das macht Sinn: ohne Detailkoeffizienten auf der feinsten Ebene das Haar kehrt die durchschnittlichen verwandeln von jedem Punktepaar für beide Punkte.