inspect_shape_modelinspect_shape_modelInspectShapeModelInspectShapeModelinspect_shape_model (Operator)

Name

inspect_shape_modelinspect_shape_modelInspectShapeModelInspectShapeModelinspect_shape_model — Repräsentation eines Formmodells.

Signatur

inspect_shape_model(Image : ModelImages, ModelRegions : NumLevels, Contrast : )

Herror inspect_shape_model(const Hobject Image, Hobject* ModelImages, Hobject* ModelRegions, const Hlong NumLevels, const Hlong Contrast)

Herror T_inspect_shape_model(const Hobject Image, Hobject* ModelImages, Hobject* ModelRegions, const Htuple NumLevels, const Htuple Contrast)

void InspectShapeModel(const HObject& Image, HObject* ModelImages, HObject* ModelRegions, const HTuple& NumLevels, const HTuple& Contrast)

HImage HImage::InspectShapeModel(HRegion* ModelRegions, Hlong NumLevels, const HTuple& Contrast) const

HImage HImage::InspectShapeModel(HRegion* ModelRegions, Hlong NumLevels, Hlong Contrast) const

static void HOperatorSet.InspectShapeModel(HObject image, out HObject modelImages, out HObject modelRegions, HTuple numLevels, HTuple contrast)

HImage HImage.InspectShapeModel(out HRegion modelRegions, int numLevels, HTuple contrast)

HImage HImage.InspectShapeModel(out HRegion modelRegions, int numLevels, int contrast)

def inspect_shape_model(image: HObject, num_levels: int, contrast: MaybeSequence[int]) -> Tuple[HObject, HObject]

Beschreibung

inspect_shape_modelinspect_shape_modelInspectShapeModelInspectShapeModelInspectShapeModelinspect_shape_model erzeugt eine Repräsentation eines Formmodells. Der Operator ist insbesondere dazu nützlich, um die Parameter NumLevelsNumLevelsNumLevelsNumLevelsnumLevelsnum_levels und ContrastContrastContrastContrastcontrastcontrast, die bei create_shape_modelcreate_shape_modelCreateShapeModelCreateShapeModelCreateShapeModelcreate_shape_model, create_scaled_shape_modelcreate_scaled_shape_modelCreateScaledShapeModelCreateScaledShapeModelCreateScaledShapeModelcreate_scaled_shape_model oder create_aniso_shape_modelcreate_aniso_shape_modelCreateAnisoShapeModelCreateAnisoShapeModelCreateAnisoShapeModelcreate_aniso_shape_model verwendet werden, einfach und schnell zu bestimmen. Die Repräsentation des Modells wird auf mehreren Pyramidenebenen generiert, wobei die Anzahl der Pyramidenebenen durch NumLevelsNumLevelsNumLevelsNumLevelsnumLevelsnum_levels bestimmt wird. Im Gegensatz zu create_shape_modelcreate_shape_modelCreateShapeModelCreateShapeModelCreateShapeModelcreate_shape_model, create_scaled_shape_modelcreate_scaled_shape_modelCreateScaledShapeModelCreateScaledShapeModelCreateScaledShapeModelcreate_scaled_shape_model und create_aniso_shape_modelcreate_aniso_shape_modelCreateAnisoShapeModelCreateAnisoShapeModelCreateAnisoShapeModelcreate_aniso_shape_model wird das Modell nur in der im Eingabebild ImageImageImageImageimageimage vorliegenden Rotation und Skalierung, also 0° und 1, erzeugt. Als Ausgabe erzeugt inspect_shape_modelinspect_shape_modelInspectShapeModelInspectShapeModelInspectShapeModelinspect_shape_model ein Bildobjekt ModelImagesModelImagesModelImagesModelImagesmodelImagesmodel_images mit den Bildern der einzelnen Pyramidenstufen, sowie eine Region in ModelRegionsModelRegionsModelRegionsModelRegionsmodelRegionsmodel_regions für jede Pyramidenstufe, die das Modell auf dieser Pyramidenstufe repräsentiert. Auf die einzelnen Objekte der jeweiligen Pyramidenstufe kann mit select_objselect_objSelectObjSelectObjSelectObjselect_obj zugegriffen werden. Falls das Eingabebild ImageImageImageImageimageimage einen Kanal besitzt, wird zur Berechnung der Repräsentation des Modells das Verfahren verwendet, das auch bei create_shape_modelcreate_shape_modelCreateShapeModelCreateShapeModelCreateShapeModelcreate_shape_model, create_scaled_shape_modelcreate_scaled_shape_modelCreateScaledShapeModelCreateScaledShapeModelCreateScaledShapeModelcreate_scaled_shape_model oder create_aniso_shape_modelcreate_aniso_shape_modelCreateAnisoShapeModelCreateAnisoShapeModelCreateAnisoShapeModelcreate_aniso_shape_model für die Metriken 'use_polarity'"use_polarity""use_polarity""use_polarity""use_polarity""use_polarity", 'ignore_global_polarity'"ignore_global_polarity""ignore_global_polarity""ignore_global_polarity""ignore_global_polarity""ignore_global_polarity" und 'ignore_local_polarity'"ignore_local_polarity""ignore_local_polarity""ignore_local_polarity""ignore_local_polarity""ignore_local_polarity" verwendet wird. Falls das Eingabebild mehr als einen Kanal besitzt, wird das Verfahren verwendet, das für die Metrik 'ignore_color_polarity'"ignore_color_polarity""ignore_color_polarity""ignore_color_polarity""ignore_color_polarity""ignore_color_polarity" verwendet wird. Wie bei create_shape_modelcreate_shape_modelCreateShapeModelCreateShapeModelCreateShapeModelcreate_shape_model, create_scaled_shape_modelcreate_scaled_shape_modelCreateScaledShapeModelCreateScaledShapeModelCreateScaledShapeModelcreate_scaled_shape_model oder create_aniso_shape_modelcreate_aniso_shape_modelCreateAnisoShapeModelCreateAnisoShapeModelCreateAnisoShapeModelcreate_aniso_shape_model beschrieben, sollten die Anzahl der Pyramidenebenen möglichst groß gewählt werden, wobei darauf zu achten ist, dass das Modell auf der obersten Pyramidenstufe noch erkennbar ist und genügend viele Punkte besitzt. Der Parameter ContrastContrastContrastContrastcontrastcontrast sollte so gewählt werden, dass nur die signifikanten Merkmale des Musters für das Modell verwendet werden. ContrastContrastContrastContrastcontrastcontrast kann auch ein Tupel mit zwei Werten enthalten. In diesem Fall wird bei der Segmentierung des Modells ein Verfahren, das ähnlich zum Hysterese-Schwellenwert-Verfahren in edges_imageedges_imageEdgesImageEdgesImageEdgesImageedges_image ist, eingesetzt. Dabei ist der erste Wert des Tupels der untere Schwellenwert und der zweite Wert der obere Schwellenwert. Für weitere Informationen über das Hysterese-Schwellenwert-Verfahren siehe hysteresis_thresholdhysteresis_thresholdHysteresisThresholdHysteresisThresholdHysteresisThresholdhysteresis_threshold. Optional kann in ContrastContrastContrastContrastcontrastcontrast auch ein dritter Wert als letztes Element des Tupels übergeben werden. Dieser Wert dient zur Selektion von signifikanten Komponenten des Modells basierend auf der Größe der Komponenten, d.h. Komponenten, deren Anzahl von Punkten kleiner ist als diese Mindestgröße, werden unterdrückt. Da sich die Mindestgröße auf die Größe der Komponenten bezieht kann es auch vorkommen, dass die daraus abgeleiteten Modellkonturen trotzdem kleiner als die angegebene Mindestgröße sind. Dieser Schwellenwert wird pro Pyramidenstufe halbiert. Falls eine Unterdrückung von kleinen Modellkomponenten gewünscht ist, aber keine Hysterese-Schwellenwert-Operation, müssen dennoch drei Werte in ContrastContrastContrastContrastcontrastcontrast übergeben werden, von denen die ersten zwei auf denselben Wert gesetzt werden. In der normalen Verwendung wird inspect_shape_modelinspect_shape_modelInspectShapeModelInspectShapeModelInspectShapeModelinspect_shape_model mehrmals interaktiv mit unterschiedlichen Werten für NumLevelsNumLevelsNumLevelsNumLevelsnumLevelsnum_levels und ContrastContrastContrastContrastcontrastcontrast aufgerufen, bis ein zufriedenstellendes Modell entsteht. Hierauf werden create_shape_modelcreate_shape_modelCreateShapeModelCreateShapeModelCreateShapeModelcreate_shape_model, create_scaled_shape_modelcreate_scaled_shape_modelCreateScaledShapeModelCreateScaledShapeModelCreateScaledShapeModelcreate_scaled_shape_model oder create_aniso_shape_modelcreate_aniso_shape_modelCreateAnisoShapeModelCreateAnisoShapeModelCreateAnisoShapeModelcreate_aniso_shape_model mit den so bestimmten Parametern aufgerufen.

Ausführungsinformationen

Parameter

ImageImageImageImageimageimage (input_object)  (multichannel-)image objectHImageHObjectHImageHobject (byte / uint2)

Eingabebild.

ModelImagesModelImagesModelImagesModelImagesmodelImagesmodel_images (output_object)  (multichannel-)image-array objectHImageHObjectHImageHobject * (byte / uint2)

Bildpyramide des Eingabebildes.

ModelRegionsModelRegionsModelRegionsModelRegionsmodelRegionsmodel_regions (output_object)  region-array objectHRegionHObjectHRegionHobject *

Model-Regionen-Pyramide.

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

Anzahl von Pyramidenebenen.

Defaultwert: 4

Werteliste: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

ContrastContrastContrastContrastcontrastcontrast (input_control)  number(-array) HTupleMaybeSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Schwellenwert bzw. Hystereseschwellenwerte für den Kontrast des Objektes im Bild und optional Mindestgröße der Objektteile.

Defaultwert: 30

Wertevorschläge: 10, 20, 30, 40, 60, 80, 100, 120, 140, 160

Ergebnis

Sind die Parameterwerte korrekt, dann liefert inspect_shape_modelinspect_shape_modelInspectShapeModelInspectShapeModelInspectShapeModelinspect_shape_model den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

reduce_domainreduce_domainReduceDomainReduceDomainReduceDomainreduce_domain

Nachfolger

select_objselect_objSelectObjSelectObjSelectObjselect_obj

Siehe auch

set_generic_shape_model_paramset_generic_shape_model_paramSetGenericShapeModelParamSetGenericShapeModelParamSetGenericShapeModelParamset_generic_shape_model_param

Modul

Foundation