Een Savitzky-Golayfilter is een wiskundig filter uit de signaalverwerking voor toepassing op equidistante getalsmatige data. De methode is gebaseerd op bestaande wiskundige technieken en werd voor het eerst in 1964 beschreven door Abraham Savitzky en Marcel J. E. Golay. Het filter maakt het oorspronkelijke signaal "gladder", dat wil zeggen vlakt snelle wisselingen af, waardoor ruis wordt uitgefilterd. Tevens kan het filter gebruikt worden om van het gefilterde signaal afgeleiden te bepalen. De afvlakking gebeurt door in het midden van een venster de gefilterde waarde te bepalen als gewogen som van de oorspronkelijke data in het venster. De wegingsfactoren worden bepaald met een polynoom die in een omgeving van het punt goed bij de data past.

Principe
Een signaal is op equidistante afstanden gegeven door de rij:

Rondom het -de punt in de rij wordt een venster 

beschouwd, dat dus zicht biedt op de data

Op het venster wordt een polynoom van graad  gedefinieerd door
,

die zo goed mogelijk bij de data in het venster past in de zin van kleinste kwadraten, dus zo dat
 minimaal is.

De kleinste-kwadratenoplossing  voldoet aan de normaalvergelijkingen:

Deze vergelijkingen hebben de vorm:
,

met als oplossing
,

waarin de -matrix  vanwege de equidistante afstanden een eenvoudige vorm heeft, die voor alle punten dezelfde is. De kolommen zijn:
 
 
 
 
 
 

en

is de kolomvector met de waarden van de data in het venster.

De matrix  is een matrix met constante antidiagonalen (diagonalen dwars op de hoofddiagonaal), dus bij snijden van de hooddiagonaal met elementen gelijk aan het element op de hoofddiagonaal:
,

en bij kruisen van de hoofddiagonaal de waarden 0.

De matrix  is alleen afhankelijk van de halve vensterbreedte  en de graad  van de polynoom, en kan dus berekend worden onafhankelijk van de data.

Voor bijvoorbeeld  en  is:
.

Voor  en  is:

en voor  en  is:

Het gefilterde signaal bestaat uit de rij:
,

met

Het gefilterde signaal is dus een vorm van convolutie van de eerste rij (met rij-index 0) van de matrix  en het oorspronkelijke signaal, en wordt gegeven door de gewogen som van de waarden van de data in het venster.

Afgeleiden

De matrix  kan ook gebruikt worden om afgeleiden van het gefilterde signaal te berekenen. In het -de punt wordt het gefilterde signaal voorgesteld door de polynoom 

Deze heeft de afgeleiden:
,

,

met in het -de punt de waarde

en

Analoog geldt voor andere afgeleiden:

De rij van  met rij-index  levert dus de wegingsfactoren voor het berekenen van de afgeleide van orde .

Voorbeeld
Voor  en  is de matrix :

Eigenschappen en beperkingen
Het Savitzky-Golayfilter heeft ook zijn beperkingen. Als ruisfilter zijn de eigenschappen vaak eerder cosmetisch dan van praktisch belang omdat het filter het frequentiespectrum van de ruis nadelig beïnvloedt. Het onderdrukt een deel van de hoogfrequentie ruis, maar laat de langzamere componenten die vaak meer de analyse van de gegevens in de war sturen ongemoeid. Het is immers de laagfrequente ruis die het moeilijk maakt een piek van de signaalachtergrond te onderscheiden. Na filtering door middel van Savitzky-Golay is de ruis niet langer 'wit' en de meetfout niet langer normaal verdeeld.

Het aantal punten en het aantal termen in het filter met zorg gekozen moeten worden. De eigenschappen van een S-G filter hangen in belangrijke mate af van het gekozen venster en de gekozen orde van de polynoom. Als het model niet past is de uitkomst van de regressie niet te vertrouwen en komen er soms volkomen verkeerde getallen uit de berekening. Dit geldt eveneens in sterke mate voor de aanwezigheid van uitbijters in het signaal: een enkel volkomen fout punt (bijvoorbeeld ten gevolge van een schakelpuls in de stroom). Hoe groter het venster des te meer middeling en des te meer de ruis onderdrukt wordt. Hoe meer termen in de polynoom, hoe meer het oorspronkelijke signaal (inclusief ruis) benaderd wordt. Het benodigde venster voor het berekenen van de gekozen polynoom mag eveneens niet kleiner zijn dan het meetsignaal.

Signaalanalyse
Analytische chemie
Audiobewerking
Statistiek