watersheds_threshold — Segmentieren nach dem Wasserscheiden-Prinzip unter Verwendung eines
Schwellenwertes.
Der Operator watersheds_threshold segmentiert Regionen, die durch
Wasserscheiden voneinander getrennt sind. Die Mindesthöhe der Wasserscheiden
kann durch Threshold festgelegt werden.
Im ersten Schritt berechnet watersheds_threshold die Wasserscheiden
und die zugehörigen dunklen Becken ohne Berücksichtigung eines Schwellenwertes,
was einem Aufruf von watersheds entspricht (weitere Informationen
sind bei watersheds zu finden). Im zweiten Schritt werden die Becken
sukzessive vereinigt, falls sie durch eine Wasserscheide voneinander getrennt
sind, die kleiner ist als Threshold. Seien und
die Minima zweier benachbarter Becken und W der
kleinste Grauwert der Wasserscheide, die die beiden Becken voneinander
trennt. Die Wasserscheide wird eliminiert und die beiden Becken werden
vereinigt, wenn gilt:
Die so erhaltenen Becken werden in Basins zurückgeliefert.
Wird für Threshold der Wert 0 übergeben, liefert
watersheds_threshold ähnliche Ergebnisse wie
watersheds. Allerdings werden nur die expandierten Becken, nicht aber
die Wasserscheiden selbst zurückgegeben. Wird Threshold dagegen auf
den maximalen Grauwertebereich von Image gesetzt, so gibt es keine
zwei Becken, die durch eine Wasserscheide der Höhe Threshold
voneinander getrennt sind. Folglich werden alle Becken zu einem vereinigt,
d.h. Basins enthält nur eine Region.
Image (input_object) singlechannelimage → object (byte / uint2 / real)
Zu segmentierendes Eingabebild.
Basins (output_object) region-array → object
Gefundene Segmente (dunkle Becken).
Threshold (input_control) number → (integer / real)
Schwellenwert für die Wasserscheiden.
Defaultwert: 10
Wertevorschläge: 0, 5, 10, 20, 30, 50
Restriktion: Threshold >= 0
watersheds liefert normalerweise den Wert 2 (H_MSG_TRUE).
Für das Verhalten bzgl. des Eingabebildes und der Ausgaberegionen sind
die Flags 'no_object_result',
'empty_region_result' und 'store_empty_region'
einstellbar (siehe set_system). Gegebenenfalls wird
eine Fehlerbehandlung durchgeführt.
binomial_filter,
gauss_filter,
smooth_image,
invert_image
expand_region,
select_shape,
reduce_domain,
opening
Foundation