emphasize
— Kontrast des Bildes verbessern.
emphasize(Image : ImageEmphasize : MaskWidth, MaskHeight, Factor : )
emphasize
hebt hochfrequente Anteile im Bild hervor
(Kanten und Ecken). Das Ergebnisbild erscheint daher schärfer.
Die Prozedur führt zunächst eine Filterung mit dem Tiefpass
(mean_image
) durch. Aus den so gewonnenen Grauwerten (mean)
und den Originalgrauwerten (orig) werden die Ergebnisgrauwerte (res)
wie folgt berechnet:
res := round((orig - mean) * Factor) + orig
Factor
dient somit als Maß für die Kontraststeigerung.
Die Trennfrequenz wird über die Größe der Filtermatrix festgelegt.
Je größer die Matrix ist, desto niedriger wird die Trennfrequenz.
Als Randbehandlungen werden die Grauwerte an den Bildrändern gespiegelt. Über- bzw. Unterlauf von Grauwerten wird beschnitten.
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 / int2 / uint2)
Zu verbesserndes Bild.
ImageEmphasize
(output_object) (multichannel-)image(-array) →
object (byte / int2 / uint2)
Kontrastverstärktes Bild.
MaskWidth
(input_control) extent.x →
(integer)
Breite der Tiefpassmaske.
Defaultwert: 7
Wertevorschläge: 3, 5, 7, 9, 11, 15, 21, 25, 31, 39
Typischer Wertebereich: 3
≤
MaskWidth
≤
201
Minimale Schrittweite: 2
Empfohlene Schrittweite: 2
MaskHeight
(input_control) extent.y →
(integer)
Höhe der Tiefpassmaske.
Defaultwert: 7
Wertevorschläge: 3, 5, 7, 9, 11, 15, 21, 25, 31, 39
Typischer Wertebereich: 3
≤
MaskHeight
≤
201
Minimale Schrittweite: 2
Empfohlene Schrittweite: 2
Factor
(input_control) real →
(real)
Stärke der Kontrastanhebung.
Defaultwert: 1.0
Wertevorschläge: 0.3, 0.5, 0.7, 1.0, 1.4, 1.8, 2.0
Typischer Wertebereich: 0.0
≤
Factor
≤
20.0
(sqrt)
Minimale Schrittweite: 0.01
Empfohlene Schrittweite: 0.2
Restriktion: 0 < Factor && Factor < 20
read_image(Image,'mreut') dev_display (Image) draw_region(Region,WindowHandle) reduce_domain(Image,Region,Mask) emphasize(Mask,Sharp,7,7,2.0) dev_display (Sharp)
Sind die Parameterwerte korrekt, dann liefert emphasize
den Wert 2 (H_MSG_TRUE).
Das Verhalten bei leerer Eingabe (keine Eingabebilder vorhanden) lässt
sich mittels set_system(::'no_object_result',<Result>:)
festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
mean_image
,
sub_image
,
laplace
,
add_image
Foundation