SavitzkyGolayFilter (FPScript)

07.02.2018
 Daten mathematisch analysieren > Referenz > FPScript-Funktionen > Filtern und Glätten > SavitzkyGolayFilter

SavitzkyGolayFilter (FPScript)

<< Klicken, um Inhaltsverzeichnis anzuzeigen >>

  Daten mathematisch analysieren > Referenz > FPScript-Funktionen > Filtern und Glätten >

SavitzkyGolayFilter (FPScript)

Filtert einen Datensatz mit einem Savitzky-Golay FIR-Glättungsfilter.

Syntax

SavitzkyGolayFilter(DataSet, LeftSmoothingWidth, RightSmoothingWidth [ , Order = 2 ])

 

Die Syntax der SavitzkyGolayFilter-Funktion besteht aus folgenden Teilen:

Teil

Beschreibung

DataSet

Der zu filternde (glättende) Datensatz.

Es sind alle Datenstrukturen erlaubt außer Einzelwert. Es sind alle numerischen Datentypen erlaubt.

Für die X-Komponente gelten zusätzliche Beschränkungen. Die Werte müssen einen konstanten positiven Abstand haben.

Ist das Argument eine Liste, dann wird die Funktion für jedes Element der Liste ausgeführt und das Ergebnis ist ebenfalls eine Liste.

LeftSmoothingWidth

Gibt an, wie viel benachbarte Werte links des jeweils zu glättenden Wertes einbezogen werden sollen.

Erlaubte Datenstrukturen sind Einzelwert. Unterstützte Datentypen sind 16-Bit Ganzzahl und 32-Bit Ganzzahl.

Der Wert muss größer gleich 0 sein.

Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt.

RightSmoothingWidth

Gibt an, wie viel benachbarte Werte rechts des jeweils zu glättenden Wertes einbezogen werden sollen.

Erlaubte Datenstrukturen sind Einzelwert. Unterstützte Datentypen sind 16-Bit Ganzzahl und 32-Bit Ganzzahl.

Der Wert muss größer gleich 0 sein.

Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt.

Order

Gibt die Ordnung des Polynoms an, das zur Bestimmung der Filterkoeffizienten verwendet wird.

Erlaubte Datenstrukturen sind Einzelwert. Es sind alle ganzzahligen Datentypen erlaubt.

Der Wert muss größer gleich 2 und kleiner gleich 6 sein.

Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt.

Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert 2 gesetzt.

Anmerkungen

Das Ergebnis hat die gleiche Struktur und Einheit wie das Argument DataSet.

Jeder Wert in DataSet wird mit LeftSmoothingWidth Nachbarwerten links und RightSmoothingWidth Nachbarwerten rechts geglättet. Bei diesem Verfahren werden die Filterkoeffizienten eines FIR-Filters so bestimmt, dass das Filterergebnis einer lokalen polynominalen Regression entspricht. Die Filterkoeffizienten sind nicht von den y-Werten abhängig. Die Filterung ist nicht auf die Unterdrückung höherer Frequenzen, sondern auf die Unterdrückung statistischer Momente höherer Ordnung optimiert. Das Filter eignet sich daher zur Glättung von Signalen, die ohne Rauschen einen hohen Frequenzbereich aufweisen. Eingesetzt wird das Verfahren auch, wenn ein Peak durch nur wenige Punkte abgetastet wurde. Es lässt sich die Lage und die Höhe des Peaks schätzen, auch wenn das Maximum zwischen zwei Abtastpunkte fällt. Eine typische Anwendung ist zum Beispiel die Auswertung von Infrarot-Spektren. Das Savitzky-Golay-Glättungsverfahren wird auch "Digital Smoothing Polynomial Filter (DISPO)" genannt.

Vor der Filterung werden die Werte in reelle bzw. komplexe 64-Bit Fließkommazahlen gewandelt. Das Ergebnis hat immer den Datentyp reelle oder komplexe 64-Bit Fließkommazahl.

Nach der Filterung findet automatisch eine Phasenkorrektur statt, so dass eine Nullphase entsteht.

Die Grafik hebt den Unterschied der beiden Glättungsfunktionen Smooth und SavitzkyGolayFilter hervor. Beide Funktionen haben die gleiche Glättungsbreite.

Verfügbarkeit

Option Digitale Filter

Beispiele

SavitzkyGolayFilter(Signal, 2, 2, 2)

Glättet ein Signal mit dem Savitzky-Golay-Filter. Dazu wird ein Polynom der zweiten Ordnung verwendet und es werden jeweils zwei benachbarte Werte links und rechts des jeweils zu glättenden Wertes in das Ergebnis einbezogen.

Siehe auch

Smooth-Funktion

LowessFilter-Funktion

LoessFilter-Funktion

Option Digitale Filter

Analyseobjekt Signalglättung

SavitzkyGolay Algorithmus

Share article or send as email:

You might be interested in these articles