equ_histo_image_rect — Histogrammlinearisierung innerhalb einer rechteckigen Maske.
equ_histo_image_rect(Image : ImageEquHisto : Mode, MaskWidth, MaskHeight, MaxContrast : )
equ_histo_image_rect dient der Kontrastverbesserung.
Ähnlich zu equ_histo_image wird dabei eine Grauwerttransformation
durchgeführt, die das kumulative Histogramm linearisiert.
Anstatt des gesamten Bildes wird jedoch nur die lokale Nachbarschaft eines
Pixels betrachtet, um die Transformation zu berechnen. Die Breite und Höhe
dieser rechteckigen Nachbarschaftsregion wird durch die Parameter
MaskWidth und MaskHeight bestimmt.
Die lokale Kontrastmaximierung verbessert die Sichtbarkeit von Strukturen mit
schwachem Kontrast, verstärkt aber auch das Rauschen im Bild. Der Parameter
MaxContrast kann benutzt werden, um den maximalen Kontrast in einer
lokalen Nachbarschaft zu beschränken und die Verstärkung des Rauschens
zu mildern. Diese Methode wird auch als Contrast-Limited Adaptive Histogram
Equalization (CLAHE) bezeichnet.
Der Parameter Mode legt den Verarbeitungsmodus fest.
Im Modus 'accurate' wird die Transformation für jeden Pixel so
durchgeführt wie oben beschrieben.
Im Modus 'fast' wird die Transformation nur für eine Teilmenge aller
Pixel berechnet und zwischen diesen Punkten interpoliert.
Aufgrund dieser Interpolation können die Ergebnisse der beiden Modi deutlich
voneinander abweichen.
equ_histo_image_rect dient in erster Linie der optischen
Aufbereitung von Bildern für einen menschlichen Betrachter. So kann
beispielsweise die durchgeführte (lokale) Kontrastspreizung in der Folge zur
Detektion von Scheinkanten führen.
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.
Image (input_object) (multichannel-)image(-array) → object (byte)
Zu verbesserndes Bild.
ImageEquHisto (output_object) (multichannel-)image(-array) → object (byte)
Bild mit linearisierten Grauwerten.
Mode (input_control) string → (string)
Verarbeitungsmodus.
Defaultwert: 'accurate'
Wertevorschläge: 'accurate', 'fast'
MaskWidth (input_control) extent.x → (integer)
Breite der Filtermaske.
Defaultwert: 51
Wertevorschläge: 31, 51, 101, 151
Typischer Wertebereich: 1
≤
MaskWidth
Minimale Schrittweite: 2
Restriktion: MaskWidth <= width(Image)
MaskHeight (input_control) extent.y → (integer)
Höhe der Filtermaske.
Defaultwert: 51
Wertevorschläge: 31, 51, 101, 151
Typischer Wertebereich: 1
≤
MaskHeight
Minimale Schrittweite: 2
Restriktion: MaskHeight <= height(Image)
MaxContrast (input_control) real → (real / integer)
Maximal zulässiger Kontrast.
Defaultwert: 0.01
Wertevorschläge: 0, 0.01, 0.02, 0.05, 0.1, 0.5, 1
Typischer Wertebereich: 0
≤
MaxContrast
≤
1
Im Modus Mode='accurate' verwendet
equ_histo_image_rect einen Algorithmus mit konstanter Komplexität pro
Pixel, so dass die Laufzeit des Operators nur von der Eingabebildgröße und
nicht von der Maskengröße abhängt.
Im Modus Mode='fast', hängt die Anzahl der zu berechnenden
Histogramme von der Maskengröße ab. Daher erhöht sich die Laufzeit bei
kleinen Maskengrößen und verringert sich bei großen Maskengrößen.
equ_histo_image,
scale_image,
scale_image_max,
illuminate
S. Pizer et al.: „Adaptive Histogram Equalization and Its Variations“. Computer Vision, Graphics, and Image Processing 39, pp. 355-368, 1987.
Foundation