set_local_deformable_model_metricT_set_local_deformable_model_metricSetLocalDeformableModelMetricSetLocalDeformableModelMetric (Operator)

Name

set_local_deformable_model_metricT_set_local_deformable_model_metricSetLocalDeformableModelMetricSetLocalDeformableModelMetric — Setzen der Metrik eines lokal deformierbaren Modells, das aus XLD-Konturen erzeugt wurde.

Signatur

set_local_deformable_model_metric(Image, VectorField : : ModelID, Metric : )

Herror T_set_local_deformable_model_metric(const Hobject Image, const Hobject VectorField, const Htuple ModelID, const Htuple Metric)

void SetLocalDeformableModelMetric(const HObject& Image, const HObject& VectorField, const HTuple& ModelID, const HTuple& Metric)

void HDeformableModel::SetLocalDeformableModelMetric(const HImage& Image, const HImage& VectorField, const HString& Metric) const

void HDeformableModel::SetLocalDeformableModelMetric(const HImage& Image, const HImage& VectorField, const char* Metric) const

void HDeformableModel::SetLocalDeformableModelMetric(const HImage& Image, const HImage& VectorField, const wchar_t* Metric) const   (Nur Windows)

void HImage::SetLocalDeformableModelMetric(const HImage& VectorField, const HDeformableModel& ModelID, const HString& Metric) const

void HImage::SetLocalDeformableModelMetric(const HImage& VectorField, const HDeformableModel& ModelID, const char* Metric) const

void HImage::SetLocalDeformableModelMetric(const HImage& VectorField, const HDeformableModel& ModelID, const wchar_t* Metric) const   (Nur Windows)

static void HOperatorSet.SetLocalDeformableModelMetric(HObject image, HObject vectorField, HTuple modelID, HTuple metric)

void HDeformableModel.SetLocalDeformableModelMetric(HImage image, HImage vectorField, string metric)

void HImage.SetLocalDeformableModelMetric(HImage vectorField, HDeformableModel modelID, string metric)

Beschreibung

set_local_deformable_model_metricset_local_deformable_model_metricSetLocalDeformableModelMetricSetLocalDeformableModelMetricSetLocalDeformableModelMetric ermöglicht eine Änderung des Wertes des Parameters MetricMetricMetricMetricmetric, der bei der Erstellung des Formmodells ModelIDModelIDModelIDModelIDmodelID gesetzt wurde. Weil keine Information über die Polarität von Modellkonturen aus XLD Konturen vorhanden ist, wird die Polarität unter Verwendung des Bildes ImageImageImageImageimage bestimmt. Dafür werden die Modellkonturen an der entsprechenden Position an der das Objekt im Bild ImageImageImageImageimage erscheint, abgebildet. Hierfür wird das VectorFieldVectorFieldVectorFieldVectorFieldvectorField benötigt, welches vom semantischen Typ 'vector_field_absolute' sein muss und mit einem vorherigen Aufruf von find_local_deformable_modelfind_local_deformable_modelFindLocalDeformableModelFindLocalDeformableModelFindLocalDeformableModel ermittelt wird. Es ist zu beachten, das die 'expand_border' Option in find_local_deformable_modelfind_local_deformable_modelFindLocalDeformableModelFindLocalDeformableModelFindLocalDeformableModel nicht verwendet werden darf, da sonst das zurückgelieferte VectorFieldVectorFieldVectorFieldVectorFieldvectorField die falsche Größe hat.

Der Parameter MetricMetricMetricMetricmetric legt fest, unter welchen Bedingungen das Muster später im Suchbild noch erkannt wird. Falls MetricMetricMetricMetricmetric = 'use_polarity'"use_polarity""use_polarity""use_polarity""use_polarity", muss das Objekt im Bild dieselben Kontrasteigenschaften aufweisen wie das Modell. Wenn z.B. das Modell ein helles Objekt auf dunklem Hintergrund ist, wird das Objekt im Bild nur dann gefunden, wenn es auch heller als der Hintergrund ist. Falls MetricMetricMetricMetricmetric = 'ignore_global_polarity'"ignore_global_polarity""ignore_global_polarity""ignore_global_polarity""ignore_global_polarity", wird das Objekt auch dann im Bild gefunden, wenn sich der Kontrast global umkehrt. Im obigen Beispiel würde das Objekt also auch dann gefunden, wenn es dunkler als der Hintergrund ist. Die Laufzeit von find_local_deformable_modelfind_local_deformable_modelFindLocalDeformableModelFindLocalDeformableModelFindLocalDeformableModel erhöht sich in diesem Fall geringfügig.

Es muss sichergestellt werden, dass die Objektkonturen im Bild ImageImageImageImageimage die gleiche (oder inverse) Polarität aufweisen wie die entsprechenden Konturen im späteren Suchbild. Insbesondere darf das Objekt nicht verdeckt sein und der Hintergrund muss entweder heller oder dunkler sein als das Objekt. Ansonsten stimmt die Polarität der Modellkanten nicht mit der Polarität der Kanten im Suchbild überein und das Formmodell kann dort nicht gefunden werden. Zu beachten ist, dass nur die Polarität der Konturen bestimmt wird, nicht ihr Kontrast. Des Weiteren ist zu beachten, dass die Polarität nur aus einem einkanaligen Bild bestimmt wird. Wird ein Mehrkanalbild in ImageImageImageImageimage übergeben, so wird nur der erste Kanal verwendet (und keine Fehlermeldung zurückgegeben).

Eine typische Vorgehensweise besteht darin, zuerst die XLD-Konturen aus einer Datei einzulesen. Da diese XLD-Konturen keine Polaritätsinformation haben, muss der Parameter MetricMetricMetricMetricmetric bei der Erzeugung des Formmodells aus den XLD-Konturen auf den Wert 'ignore_local_polarity'"ignore_local_polarity""ignore_local_polarity""ignore_local_polarity""ignore_local_polarity" gesetzt werden. Dann kann das Modell in einem ersten Suchbild gefunden werden. Aus den resultierenden Matchingergebnissen lassen sich die Transformationsparameter (VectorFieldVectorFieldVectorFieldVectorFieldvectorField) bestimmen, die die Modellkonturen an der Stelle des Suchbildes abbilden, an der das Objekt erscheint. Ist das Matchingergebnis korrekt, kann der Wert des Parameters MetricMetricMetricMetricmetric z.B. auf 'use_polarity'"use_polarity""use_polarity""use_polarity""use_polarity" gesetzt werden. Dies führt in den nachfolgenden Bildern zu einer schnelleren und robusteren Erkennung.

Achtung

set_local_deformable_model_metricset_local_deformable_model_metricSetLocalDeformableModelMetricSetLocalDeformableModelMetricSetLocalDeformableModelMetric kann nur mit Modellen genutzt werden, die aus XLD-Konturen erzeugt wurden.

Ausführungsinformationen

Dieser Operator modifiziert den Zustand des folgenden Eingabeparameters:

Während der Ausführung dieses Operators muss der Zugriff auf den Wert dieses Parameters synchronisiert werden, wenn er über mehrere Threads hinweg verwendet wird.

Parameter

ImageImageImageImageimage (input_object)  singlechannelimage objectHImageHImageHobject (byte / uint2)

Eingabebild, das zur Bestimmung der Polarität verwendet wird.

VectorFieldVectorFieldVectorFieldVectorFieldvectorField (input_object)  singlechannelimage objectHImageHImageHobject (vector_field)

Vektorfeld der lokalen Deformation.

ModelIDModelIDModelIDModelIDmodelID (input_control, Zustand wird modifiziert)  deformable_model HDeformableModel, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle des Modells.

MetricMetricMetricMetricmetric (input_control)  string HTupleHTupleHtuple (string) (string) (HString) (char*)

Art der zum Matchen verwendeten Metrik.

Defaultwert: 'use_polarity' "use_polarity" "use_polarity" "use_polarity" "use_polarity"

Werteliste: 'ignore_global_polarity'"ignore_global_polarity""ignore_global_polarity""ignore_global_polarity""ignore_global_polarity", 'use_polarity'"use_polarity""use_polarity""use_polarity""use_polarity"

Ergebnis

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

Vorgänger

create_local_deformable_model_xldcreate_local_deformable_model_xldCreateLocalDeformableModelXldCreateLocalDeformableModelXldCreateLocalDeformableModelXld, find_local_deformable_modelfind_local_deformable_modelFindLocalDeformableModelFindLocalDeformableModelFindLocalDeformableModel

Nachfolger

find_local_deformable_modelfind_local_deformable_modelFindLocalDeformableModelFindLocalDeformableModelFindLocalDeformableModel

Siehe auch

create_local_deformable_model_xldcreate_local_deformable_model_xldCreateLocalDeformableModelXldCreateLocalDeformableModelXldCreateLocalDeformableModelXld

Modul

Matching