median_weightedmedian_weightedMedianWeightedMedianWeightedmedian_weighted (Operator)

Name

median_weightedmedian_weightedMedianWeightedMedianWeightedmedian_weighted — Gewichtete Medianfilterung mit verschiedenen Rangmasken.

Signatur

median_weighted(Image : ImageWMedian : MaskType, MaskSize : )

Herror median_weighted(const Hobject Image, Hobject* ImageWMedian, const char* MaskType, const Hlong MaskSize)

Herror T_median_weighted(const Hobject Image, Hobject* ImageWMedian, const Htuple MaskType, const Htuple MaskSize)

void MedianWeighted(const HObject& Image, HObject* ImageWMedian, const HTuple& MaskType, const HTuple& MaskSize)

HImage HImage::MedianWeighted(const HString& MaskType, Hlong MaskSize) const

HImage HImage::MedianWeighted(const char* MaskType, Hlong MaskSize) const

HImage HImage::MedianWeighted(const wchar_t* MaskType, Hlong MaskSize) const   (Nur Windows)

static void HOperatorSet.MedianWeighted(HObject image, out HObject imageWMedian, HTuple maskType, HTuple maskSize)

HImage HImage.MedianWeighted(string maskType, int maskSize)

def median_weighted(image: HObject, mask_type: str, mask_size: int) -> HObject

Beschreibung

median_weightedmedian_weightedMedianWeightedMedianWeightedMedianWeightedmedian_weighted berechnet den Median der Grauwerte innerhalb einer lokalen Umgebung. Im Gegensatz zu median_imagemedian_imageMedianImageMedianImageMedianImagemedian_image, bei dem alle Grauwerte innerhalb der Umgebung genau einmal eingehen, werden bei median_weightedmedian_weightedMedianWeightedMedianWeightedMedianWeightedmedian_weighted die Grauwerte, abhängig von ihrer Position mehrfach gewichtet. Dabei wird ein Grauwert, entsprechend seiner Gewichtung mehrfach in das zu sortierende Feld aufgenommen. Es stehen folgende Masken zur Verfügung:

'gauss'

(MaskSizeMaskSizeMaskSizeMaskSizemaskSizemask_size = 3) 1 2 1 2 4 2 1 2 1

'inner'

(MaskSizeMaskSizeMaskSizeMaskSizemaskSizemask_size = 3) 1 1 1 1 3 1 1 1 1

Der median_weightedmedian_weightedMedianWeightedMedianWeightedMedianWeightedmedian_weighted ist, dass im Gegensatz zu median_imagemedian_imageMedianImageMedianImageMedianImagemedian_image Grauwertecken erhalten bleiben.

Das Konzept der Glättungsfilter ist in der Einleitung zum Kapitel Filter / Glättung beschrieben.

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)

Zu filterndes Bild.

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

Mediangefiltertes Bild.

MaskTypeMaskTypeMaskTypeMaskTypemaskTypemask_type (input_control)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Art der Median-Maske.

Defaultwert: 'inner' "inner" "inner" "inner" "inner" "inner"

Werteliste: 'gauss'"gauss""gauss""gauss""gauss""gauss", 'inner'"inner""inner""inner""inner""inner"

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

Maskengröße.

Defaultwert: 3

Werteliste: 3

Beispiel (HDevelop)

read_image(Image,'fabrik')
median_weighted(Image,MedianWeighted,'gauss',3)
dev_display(MedianWeighted)

Beispiel (C)

read_image(&Image,"fabrik");
median_weighted(Image,&MedianWeighted,"gauss",3);
disp_image(MedianWeighted,WindowHandle);

Beispiel (HDevelop)

read_image(Image,'fabrik')
median_weighted(Image,MedianWeighted,'gauss',3)
dev_display(MedianWeighted)

Beispiel (HDevelop)

read_image(Image,'fabrik')
median_weighted(Image,MedianWeighted,'gauss',3)
dev_display(MedianWeighted)

Beispiel (HDevelop)

read_image(Image,'fabrik')
median_weighted(Image,MedianWeighted,'gauss',3)
dev_display(MedianWeighted)

Komplexität

Pro Bildpunkt: O(F * log(F)) mit F = Fläche von MaskTypeMaskTypeMaskTypeMaskTypemaskTypemask_type.

Vorgänger

read_imageread_imageReadImageReadImageReadImageread_image

Nachfolger

thresholdthresholdThresholdThresholdThresholdthreshold, dyn_thresholddyn_thresholdDynThresholdDynThresholdDynThresholddyn_threshold, regiongrowingregiongrowingRegiongrowingRegiongrowingRegiongrowingregiongrowing

Alternativen

median_imagemedian_imageMedianImageMedianImageMedianImagemedian_image, trimmed_meantrimmed_meanTrimmedMeanTrimmedMeanTrimmedMeantrimmed_mean, sigma_imagesigma_imageSigmaImageSigmaImageSigmaImagesigma_image

Literatur

R. Haralick, L. Shapiro; „Computer and Robot Vision“; Addison-Wesley, 1992, Seite 319

Modul

Foundation