Aufgrund der Art und Weise, wie das Savitzky-Golay-Filter abgeleitet wird (dh als lokale Polynomanpassungen der kleinsten Quadrate), gibt es eine natürliche Verallgemeinerung der ungleichmäßigen Abtastung - es ist nur viel rechenintensiver.
Savitzky-Golay-Filter im Allgemeinen
Für den Standardfilter besteht die Idee darin, ein Polynom an eine lokale Menge von Abtastwerten anzupassen [unter Verwendung der kleinsten Quadrate] und dann das mittlere Abtastwert durch den Wert des Polynoms am mittleren Index (dh bei 0) zu ersetzen. Das heißt, die Standard-SG-Filterkoeffizienten können durch Invertieren einer Vandermonde-Matrix von Abtastwertangaben erzeugt werden. Um beispielsweise eine lokale parabolische Anpassung über fünf Stichproben (mit lokalen Angaben -2, -1, 0 , 1, 2) zu erzeugen, wäre das System der Entwurfsgleichungen A c = y wie folgt:y0… Y4A c = y
⎡⎣⎢⎢⎢⎢⎢⎢⎢- 20- 10001020- 21- 11011121- 22- 12021222⎤⎦⎥⎥⎥⎥⎥⎥⎥⎡⎣⎢c0c1c2⎤⎦⎥= ⎡⎣⎢⎢⎢⎢⎢⎢y0y1y2y3y4⎤⎦⎥⎥⎥⎥⎥⎥.
Oben sind die die unbekannten Koeffizienten des Polynoms der kleinsten Quadrate c 0 + c 1 x + c 2 x 2 . Da der Wert des Polynoms bei x = 0 gerade c 0 ist , ergibt die Berechnung der Pseudoinverse der Entwurfsmatrix (dh c = ( A T A ) - 1 A T y ) die SG-Filterkoeffizienten in der oberen Reihe. In diesem Fall wären siec0… C2c0+ c1x + c2x2x = 0c0c = ( ATA )- 1EINTy
⎡⎣⎢c0c1c2⎤⎦⎥= ⎡⎣⎢- 3- 7512- 4- 3170- 5124- 3- 375⎤⎦⎥⎡⎣⎢⎢⎢⎢⎢⎢y0y1y2y3y4⎤⎦⎥⎥⎥⎥⎥⎥.
c0+ c1x + c2x2c1+ 2 c2xc1
Ungleichmäßige Probenahme
xntn0
t- 2t- 1t0t1t2= x- 2- x0= x- 1- x0= x0- x0= x1- x0= x2- x0
dann hat jede Entwurfsmatrix die folgende Form:
A = ⎡⎣⎢⎢⎢⎢⎢⎢⎢t0- 2t0- 1t00t01t02t1- 2t1- 1t10t11t12t2- 2t2- 1t20t21t22⎤⎦⎥⎥⎥⎥⎥⎥⎥= ⎡⎣⎢⎢⎢⎢⎢⎢⎢11111t- 2t- 10t1t2t2- 2t2- 10t21t22⎤⎦⎥⎥⎥⎥⎥⎥⎥.
EIN c0