median_weightedmedian_weightedMedianWeightedMedianWeighted (Operator)
Name
median_weightedmedian_weightedMedianWeightedMedianWeighted
— Gewichtete Medianfilterung mit verschiedenen Rangmasken.
Signatur
Beschreibung
median_weightedmedian_weightedMedianWeightedMedianWeightedMedianWeighted
berechnet den Median der Grauwerte
innerhalb einer lokalen Umgebung. Im Gegensatz zu
median_imagemedian_imageMedianImageMedianImageMedianImage
, bei dem alle Grauwerte innerhalb der Umgebung
genau einmal eingehen, werden bei median_weightedmedian_weightedMedianWeightedMedianWeightedMedianWeighted
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'
(MaskSizeMaskSizeMaskSizeMaskSizemaskSize
= 3)
1 2 1
2 4 2
1 2 1
- 'inner'
(MaskSizeMaskSizeMaskSizeMaskSizemaskSize
= 3)
1 1 1
1 3 1
1 1 1
Der median_weightedmedian_weightedMedianWeightedMedianWeightedMedianWeighted
ist, dass im Gegensatz zu
median_imagemedian_imageMedianImageMedianImageMedianImage
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
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Automatisch parallelisiert auf Tupelebene.
- Automatisch parallelisiert auf Kanalebene.
- Automatisch parallelisiert auf Domainebene.
Parameter
ImageImageImageImageimage
(input_object) (multichannel-)image(-array) →
objectHImageHImageHobject (byte / int2 / uint2)
Zu filterndes Bild.
ImageWMedianImageWMedianImageWMedianImageWMedianimageWMedian
(output_object) (multichannel-)image(-array) →
objectHImageHImageHobject * (byte / int2 / uint2)
Mediangefiltertes Bild.
MaskTypeMaskTypeMaskTypeMaskTypemaskType
(input_control) string →
HTupleHTupleHtuple (string) (string) (HString) (char*)
Art der Median-Maske.
Defaultwert:
'inner'
"inner"
"inner"
"inner"
"inner"
Werteliste: 'gauss'"gauss""gauss""gauss""gauss", 'inner'"inner""inner""inner""inner"
MaskSizeMaskSizeMaskSizeMaskSizemaskSize
(input_control) integer →
HTupleHTupleHtuple (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 MaskTypeMaskTypeMaskTypeMaskTypemaskType
.
Vorgänger
read_imageread_imageReadImageReadImageReadImage
Nachfolger
thresholdthresholdThresholdThresholdThreshold
,
dyn_thresholddyn_thresholdDynThresholdDynThresholdDynThreshold
,
regiongrowingregiongrowingRegiongrowingRegiongrowingRegiongrowing
Alternativen
median_imagemedian_imageMedianImageMedianImageMedianImage
,
trimmed_meantrimmed_meanTrimmedMeanTrimmedMeanTrimmedMean
,
sigma_imagesigma_imageSigmaImageSigmaImageSigmaImage
Literatur
R. Haralick, L. Shapiro; „Computer and Robot Vision“;
Addison-Wesley, 1992, Seite 319
Modul
Foundation