hysteresis_thresholdhysteresis_thresholdHysteresisThresholdHysteresisThresholdhysteresis_threshold (Operator)

Name

hysteresis_thresholdhysteresis_thresholdHysteresisThresholdHysteresisThresholdhysteresis_threshold — Segmentieren von Bildern mittels Hysterese-Schwellenwertoperation.

Signatur

hysteresis_threshold(Image : RegionHysteresis : Low, High, MaxLength : )

Herror hysteresis_threshold(const Hobject Image, Hobject* RegionHysteresis, const Hlong Low, const Hlong High, const Hlong MaxLength)

Herror T_hysteresis_threshold(const Hobject Image, Hobject* RegionHysteresis, const Htuple Low, const Htuple High, const Htuple MaxLength)

void HysteresisThreshold(const HObject& Image, HObject* RegionHysteresis, const HTuple& Low, const HTuple& High, const HTuple& MaxLength)

HRegion HImage::HysteresisThreshold(const HTuple& Low, const HTuple& High, Hlong MaxLength) const

HRegion HImage::HysteresisThreshold(Hlong Low, Hlong High, Hlong MaxLength) const

static void HOperatorSet.HysteresisThreshold(HObject image, out HObject regionHysteresis, HTuple low, HTuple high, HTuple maxLength)

HRegion HImage.HysteresisThreshold(HTuple low, HTuple high, int maxLength)

HRegion HImage.HysteresisThreshold(int low, int high, int maxLength)

def hysteresis_threshold(image: HObject, low: Union[int, float], high: Union[int, float], max_length: int) -> HObject

Beschreibung

hysteresis_thresholdhysteresis_thresholdHysteresisThresholdHysteresisThresholdhysteresis_threshold führt eine Schwellenwertoperation mit Hysterese (nach Canny) durch. Dabei werden alle Punkte im Eingabebild ImageImageImageimageimage größer oder gleich der oberen Schwelle HighHighHighhighhigh sofort in die Ausgaberegion(en) übernommen („sichere“ Punkte). Umgekehrt werden alle Punkte mit Grauwerten echt kleiner als die untere Schwelle LowLowLowlowlow zurückgewiesen. „Potentielle“ Punkte mit Grauwerten zwischen den beiden Schwellen schließlich werden dann übernommen, wenn sie durch einen Pfad mit maximaler Länge MaxLengthMaxLengthMaxLengthmaxLengthmax_length von „potentiellen“ Punkten mit einem „sicheren“ Punkt verbunden sind. Die „sicheren“ Punkte strahlen also auf ihre Umgebung aus, sie „wirken nach“ (Hysterese).

Achtung

Bei Bildern vom Typ byte, uint2 oder int4 muss die untere Schwelle LowLowLowlowlow > 0 sein.

Ausführungsinformationen

Parameter

ImageImageImageimageimage (input_object)  singlechannelimage(-array) objectHImageHObjectHObjectHobject (byte / uint2 / int4 / real)

Eingabebild.

RegionHysteresisRegionHysteresisRegionHysteresisregionHysteresisregion_hysteresis (output_object)  region(-array) objectHRegionHObjectHObjectHobject *

segmentierte Region.

LowLowLowlowlow (input_control)  number HTupleUnion[int, float]HTupleHtuple (integer / real) (int / long / double) (Hlong / double) (Hlong / double)

Untere Schwelle für die Grauwerte.

Default: 30

Wertevorschläge: 5, 10, 15, 20, 30, 40, 50, 60, 70, 80, 90, 100

HighHighHighhighhigh (input_control)  number HTupleUnion[int, float]HTupleHtuple (integer / real) (int / long / double) (Hlong / double) (Hlong / double)

Obere Schwelle für die Grauwerte.

Default: 60

Wertevorschläge: 5, 10, 15, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130

Restriktion: High >= Low

MaxLengthMaxLengthMaxLengthmaxLengthmax_length (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Maximale Länge eines Pfades „potentieller“ Punkte zu einem „sicheren“ Punkt hin.

Default: 10

Wertevorschläge: 1, 2, 3, 5, 7, 10, 12, 14, 17, 20, 25, 30, 35, 40, 50

Wertebereich: 1 ≤ MaxLength MaxLength MaxLength maxLength max_length

Minimale Schrittweite: 1

Empfohlene Schrittweite: 5

Ergebnis

hysteresis_thresholdhysteresis_thresholdHysteresisThresholdHysteresisThresholdhysteresis_threshold liefert den Wert 2 ( H_MSG_TRUE) , falls die Parameter korrekt sind. Für das Verhalten bzgl. der Eingabebilder und Ausgaberegionen sind die Flags '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" und 'store_empty_region'"store_empty_region""store_empty_region""store_empty_region""store_empty_region" einstellbar (siehe set_systemset_systemSetSystemSetSystemset_system). Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Alternativen

dyn_thresholddyn_thresholdDynThresholdDynThresholddyn_threshold, thresholdthresholdThresholdThresholdthreshold, class_2dim_supclass_2dim_supClass2dimSupClass2dimSupclass_2dim_sup, fast_thresholdfast_thresholdFastThresholdFastThresholdfast_threshold

Siehe auch

edges_imageedges_imageEdgesImageEdgesImageedges_image, sobel_dirsobel_dirSobelDirSobelDirsobel_dir, background_segbackground_segBackgroundSegBackgroundSegbackground_seg

Literatur

J. Canny, „Finding Edges and Lines in Images“; Report, AI-TR-720, M.I.T. Artificial Intelligence Lab., Cambridge, MA, 1983.

Modul

Foundation