KlassenKlassenKlassenKlassen | | | | Operatoren

watersheds_thresholdwatersheds_thresholdWatershedsThresholdwatersheds_thresholdWatershedsThresholdWatershedsThreshold (Operator)

Name

watersheds_thresholdwatersheds_thresholdWatershedsThresholdwatersheds_thresholdWatershedsThresholdWatershedsThreshold — Segmentieren nach dem Wasserscheiden-Prinzip unter Verwendung eines Schwellenwertes.

Signatur

watersheds_threshold(Image : Basins : Threshold : )

Herror watersheds_threshold(const Hobject Image, Hobject* Basins, const Hlong Threshold)

Herror T_watersheds_threshold(const Hobject Image, Hobject* Basins, const Htuple Threshold)

Herror watersheds_threshold(Hobject Image, Hobject* Basins, const HTuple& Threshold)

HRegionArray HImage::WatershedsThreshold(const HTuple& Threshold) const

void WatershedsThreshold(const HObject& Image, HObject* Basins, const HTuple& Threshold)

HRegion HImage::WatershedsThreshold(const HTuple& Threshold) const

HRegion HImage::WatershedsThreshold(Hlong Threshold) const

void HOperatorSetX.WatershedsThreshold(
[in] IHUntypedObjectX* Image, [out] IHUntypedObjectX*Basins, [in] VARIANT Threshold)

IHRegionX* HImageX.WatershedsThreshold([in] VARIANT Threshold)

static void HOperatorSet.WatershedsThreshold(HObject image, out HObject basins, HTuple threshold)

HRegion HImage.WatershedsThreshold(HTuple threshold)

HRegion HImage.WatershedsThreshold(int threshold)

Beschreibung

Der Operator watersheds_thresholdwatersheds_thresholdWatershedsThresholdwatersheds_thresholdWatershedsThresholdWatershedsThreshold segmentiert Regionen, die durch Wasserscheiden voneinander getrennt sind. Die Mindesthöhe der Wasserscheiden kann durch ThresholdThresholdThresholdThresholdThresholdthreshold festgelegt werden.

Im ersten Schritt berechnet watersheds_thresholdwatersheds_thresholdWatershedsThresholdwatersheds_thresholdWatershedsThresholdWatershedsThreshold die Wasserscheiden und die zugehörigen dunklen Becken ohne Berücksichtigung eines Schwellenwertes, was einem Aufruf von watershedswatershedsWatershedswatershedsWatershedsWatersheds entspricht (weitere Informationen sind bei watershedswatershedsWatershedswatershedsWatershedsWatersheds zu finden). Im zweiten Schritt werden die Becken sukzessive vereinigt, falls sie durch eine Wasserscheide voneinander getrennt sind, die kleiner ist als ThresholdThresholdThresholdThresholdThresholdthreshold. 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 BasinsBasinsBasinsBasinsBasinsbasins zurückgeliefert.

Wird für ThresholdThresholdThresholdThresholdThresholdthreshold der Wert 0 übergeben, liefert watersheds_thresholdwatersheds_thresholdWatershedsThresholdwatersheds_thresholdWatershedsThresholdWatershedsThreshold ähnliche Ergebnisse wie watershedswatershedsWatershedswatershedsWatershedsWatersheds. Allerdings werden nur die expandierten Becken, nicht aber die Wasserscheiden selbst zurückgegeben. Wird ThresholdThresholdThresholdThresholdThresholdthreshold dagegen auf den maximalen Grauwertebereich von ImageImageImageImageImageimage gesetzt, so gibt es keine zwei Becken, die durch eine Wasserscheide der Höhe ThresholdThresholdThresholdThresholdThresholdthreshold voneinander getrennt sind. Folglich werden alle Becken zu einem vereinigt, d.h. BasinsBasinsBasinsBasinsBasinsbasins enthält nur eine Region.

Parallelisierung

Parameter

ImageImageImageImageImageimage (input_object)  singlechannelimage objectHImageHImageHImageHImageXHobject (byte / uint2 / real)

Zu segmentierendes Eingabebild.

BasinsBasinsBasinsBasinsBasinsbasins (output_object)  region-array objectHRegionHRegionHRegionArrayHRegionXHobject *

Gefundene Segmente (dunkle Becken).

ThresholdThresholdThresholdThresholdThresholdthreshold (input_control)  number HTupleHTupleHTupleVARIANTHtuple (integer / real) (int / long / double) (Hlong / double) (Hlong / double) (Hlong / double) (Hlong / double)

Schwellenwert für die Wasserscheiden.

Defaultwert: 10

Wertevorschläge: 0, 5, 10, 20, 30, 50

Restriktion: Threshold >= 0

Ergebnis

watershedswatershedsWatershedswatershedsWatershedsWatersheds liefert normalerweise den Wert 2 (H_MSG_TRUE). Für das Verhalten bzgl. des Eingabebildes und der Ausgaberegionen sind die Flags 'no_object_result'"no_object_result""no_object_result""no_object_result""no_object_result""no_object_result", 'empty_region_result'"empty_region_result""empty_region_result""empty_region_result""empty_region_result""empty_region_result" und 'store_empty_region'"store_empty_region""store_empty_region""store_empty_region""store_empty_region""store_empty_region" einstellbar (siehe set_systemset_systemSetSystemset_systemSetSystemSetSystem). Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

binomial_filterbinomial_filterBinomialFilterbinomial_filterBinomialFilterBinomialFilter, gauss_filtergauss_filterGaussFiltergauss_filterGaussFilterGaussFilter, smooth_imagesmooth_imageSmoothImagesmooth_imageSmoothImageSmoothImage, invert_imageinvert_imageInvertImageinvert_imageInvertImageInvertImage

Nachfolger

expand_regionexpand_regionExpandRegionexpand_regionExpandRegionExpandRegion, select_shapeselect_shapeSelectShapeselect_shapeSelectShapeSelectShape, reduce_domainreduce_domainReduceDomainreduce_domainReduceDomainReduceDomain, openingopeningOpeningopeningOpeningOpening

Alternativen

watershedswatershedsWatershedswatershedsWatershedsWatersheds, pouringpouringPouringpouringPouringPouring

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren