monotonymonotonyMonotonyMonotonymonotony (Operator)

Name

monotonymonotonyMonotonyMonotonymonotony — Berechnung des Monotonieoperators.

Signatur

monotony(Image : ImageMonotony : : )

Herror monotony(const Hobject Image, Hobject* ImageMonotony)

Herror T_monotony(const Hobject Image, Hobject* ImageMonotony)

void Monotony(const HObject& Image, HObject* ImageMonotony)

HImage HImage::Monotony() const

static void HOperatorSet.Monotony(HObject image, out HObject imageMonotony)

HImage HImage.Monotony()

def monotony(image: HObject) -> HObject

Beschreibung

monotonymonotonyMonotonyMonotonyMonotonymonotony berechnet den Monotonieoperator. Hierzu wird die Anzahl der Punkte in der 8-Nachbarschaft gezählt, die echt kleiner als der aktuelle Grauwert sind. Diese Anzahl wird im Ausgabebild eingetragen.

Bei einem echten Maximum erhält man den Wert 8, bei einem Minimum oder auf einem Plateau ergibt sich der Wert 0. Bei einem Grat oder einem Hang erhält man entsprechende Zwischenwerte.

Um lokale Minima zu untersuchen, muss das Eingabebild vorher nur mit dem Befehl invert_imageinvert_imageInvertImageInvertImageInvertImageinvert_image invertiert werden.

Der Monotonieoperator wird häufig als Vorbereitung für Matching-Verfahren eingesetzt, da er invariant gegen Helligkeitsänderungen ist.

Achtung

Beachten Sie, dass Filteroperatoren eventuell unerwartete Resultate ausgeben, wenn ein Bild mit einer reduzierten Domäne als Input übergeben wird. Weitere Informationen können im Kapitel Filter gefunden werden.

Ausführungsinformationen

Parameter

ImageImageImageImageimageimage (input_object)  (multichannel-)image(-array) objectHImageHObjectHImageHobject (byte / int2 / uint2)

Eingabebild.

ImageMonotonyImageMonotonyImageMonotonyImageMonotonyimageMonotonyimage_monotony (output_object)  (multichannel-)image(-array) objectHImageHObjectHImageHobject * (byte / int2 / uint2)

Ergebnis des Monotonieoperators.

Parameteranzahl: ImageMonotony == Image

Beispiel (C)

/* searching the strict maximums */
gauss_filter(Image,&Gauss,5);
monotony(Gauss,&Monotony);
threshold(Monotony,Maxima,8.0,8.0);

Vorgänger

binomial_filterbinomial_filterBinomialFilterBinomialFilterBinomialFilterbinomial_filter, gauss_filtergauss_filterGaussFilterGaussFilterGaussFiltergauss_filter, median_imagemedian_imageMedianImageMedianImageMedianImagemedian_image, mean_imagemean_imageMeanImageMeanImageMeanImagemean_image, smooth_imagesmooth_imageSmoothImageSmoothImageSmoothImagesmooth_image, invert_imageinvert_imageInvertImageInvertImageInvertImageinvert_image

Nachfolger

thresholdthresholdThresholdThresholdThresholdthreshold, exhaustive_matchexhaustive_matchExhaustiveMatchExhaustiveMatchExhaustiveMatchexhaustive_match, disp_imagedisp_imageDispImageDispImageDispImagedisp_image

Alternativen

local_maxlocal_maxLocalMaxLocalMaxLocalMaxlocal_max, topographic_sketchtopographic_sketchTopographicSketchTopographicSketchTopographicSketchtopographic_sketch, corner_responsecorner_responseCornerResponseCornerResponseCornerResponsecorner_response

Modul

Foundation