gen_savitzky_golay_filterT_gen_savitzky_golay_filterGenSavitzkyGolayFilterGenSavitzkyGolayFiltergen_savitzky_golay_filter (Operator)

Name

gen_savitzky_golay_filterT_gen_savitzky_golay_filterGenSavitzkyGolayFilterGenSavitzkyGolayFiltergen_savitzky_golay_filter — Berechnet die Koeffizienten eines Savitzky-Golay-Filters.

Signatur

gen_savitzky_golay_filter( : : FilterSize, PolynomialDegree, Derivative : Filter)

Herror T_gen_savitzky_golay_filter(const Htuple FilterSize, const Htuple PolynomialDegree, const Htuple Derivative, Htuple* Filter)

void GenSavitzkyGolayFilter(const HTuple& FilterSize, const HTuple& PolynomialDegree, const HTuple& Derivative, HTuple* Filter)

static HTuple HImage::GenSavitzkyGolayFilter(Hlong FilterSize, Hlong PolynomialDegree, Hlong Derivative)

static void HOperatorSet.GenSavitzkyGolayFilter(HTuple filterSize, HTuple polynomialDegree, HTuple derivative, out HTuple filter)

static HTuple HImage.GenSavitzkyGolayFilter(int filterSize, int polynomialDegree, int derivative)

def gen_savitzky_golay_filter(filter_size: int, polynomial_degree: int, derivative: int) -> Sequence[float]

Beschreibung

gen_savitzky_golay_filtergen_savitzky_golay_filterGenSavitzkyGolayFilterGenSavitzkyGolayFiltergen_savitzky_golay_filter berechnet die Koeffizienten eines Savitzky-Golay-Filters für einen Filter der Größe FilterSizeFilterSizeFilterSizefilterSizefilter_size mit einem Polynom der Ordnung PolynomialDegreePolynomialDegreePolynomialDegreepolynomialDegreepolynomial_degree. Die Koeffizienten werden für die Ableitung DerivativeDerivativeDerivativederivativederivative des gefitteten Polynoms berechnet. Ein Wert von 0 gibt an, dass der Filter die Originalfunktion glättet.

Der Savitzky-Golay-Filter ist ein linearer Filter. Er entspricht einem Anpassen eines Polynoms in benachbarte Funktionswerte, welche an äquidistanten Stützstellen ausgewertet werden, und anschließend einer Auswertung dieses Polynoms an der zentralen Stützstelle. Dies kann verwendet werden um die Daten zu glätten. Zusätzlich kann das Polynom vor der Auswertung abgeleitet werden, wodurch beispielsweise lineare Trends in den Daten entfernt werden können.

Die Filterparameter können beispielsweise für ein Glätten von Hyperspektralbildern in Kanalrichtung mittels des Operators convol_channelsconvol_channelsConvolChannelsConvolChannelsconvol_channels verwendet werden.

Aus numerischen Gründen kann der Polynomgrad höchstens 9 sein.

Ausführungsinformationen

Parameter

FilterSizeFilterSizeFilterSizefilterSizefilter_size (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Größe des Filters.

Default: 11

Wertevorschläge: 5, 7, 9, 11, 13, 15, 17

PolynomialDegreePolynomialDegreePolynomialDegreepolynomialDegreepolynomial_degree (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Grad des approximierenden Polynoms.

Default: 3

Wertevorschläge: 3, 5

DerivativeDerivativeDerivativederivativederivative (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Zu berechnende Ableitung.

Default: 0

Wertevorschläge: 0, 1, 2

FilterFilterFilterfilterfilter (output_control)  real-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Filterkoeffizienten.

Nachfolger

convol_channelsconvol_channelsConvolChannelsConvolChannelsconvol_channels

Siehe auch

convol_channelsconvol_channelsConvolChannelsConvolChannelsconvol_channels

Modul

Foundation