Operator Reference

monotonymonotonyMonotonyMonotonymonotony (Operator)

monotonymonotonyMonotonyMonotonymonotony — Calculating the monotony operation.

Signature

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

Description

The operator monotonymonotonyMonotonyMonotonymonotony calculates the monotony operator. Thereby the points which are strictly smaller than the current gray value will be counted in the 8 neighborhood. This number will be entered into the output imaged.

If there is a strict maximum, the value 8 is returned; in case of a minimum or a plateau, the value 0 will be returned. A ridge or a slope will return the corresponding intermediate values.

The monotony operator is often used to prepare matching operations as it is invariant with regard to lightness modifications.

Attention

Note that filter operators may return unexpected results if an image with a reduced domain is used as input. Please refer to the chapter Filters.

Execution Information

  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).
  • Multithreading scope: global (may be called from any thread).
  • Automatically parallelized on tuple level.
  • Automatically parallelized on channel level.
  • Automatically parallelized on domain level.

Parameters

ImageImageImageimageimage (input_object)  (multichannel-)image(-array) objectHImageHObjectHObjectHobject (byte / int2 / uint2)

Input image.

ImageMonotonyImageMonotonyImageMonotonyimageMonotonyimage_monotony (output_object)  (multichannel-)image(-array) objectHImageHObjectHObjectHobject * (byte / int2 / uint2)

Result of the monotony operator.

Number of elements: ImageMonotony == Image

Example (C)

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

Possible Predecessors

binomial_filterbinomial_filterBinomialFilterBinomialFilterbinomial_filter, gauss_filtergauss_filterGaussFilterGaussFiltergauss_filter, median_imagemedian_imageMedianImageMedianImagemedian_image, mean_imagemean_imageMeanImageMeanImagemean_image, smooth_imagesmooth_imageSmoothImageSmoothImagesmooth_image, invert_imageinvert_imageInvertImageInvertImageinvert_image

Possible Successors

thresholdthresholdThresholdThresholdthreshold, exhaustive_matchexhaustive_matchExhaustiveMatchExhaustiveMatchexhaustive_match, disp_imagedisp_imageDispImageDispImagedisp_image

Alternatives

local_maxlocal_maxLocalMaxLocalMaxlocal_max, topographic_sketchtopographic_sketchTopographicSketchTopographicSketchtopographic_sketch, corner_responsecorner_responseCornerResponseCornerResponsecorner_response

Module

Foundation