set_planar_calib_deformable_model_metricT_set_planar_calib_deformable_model_metricSetPlanarCalibDeformableModelMetricSetPlanarCalibDeformableModelMetricset_planar_calib_deformable_model_metric (Operator)

Name

set_planar_calib_deformable_model_metricT_set_planar_calib_deformable_model_metricSetPlanarCalibDeformableModelMetricSetPlanarCalibDeformableModelMetricset_planar_calib_deformable_model_metric — Setzen der Metrik eines planaren kalibrierten deformierbaren Modells, das aus XLD-Konturen erzeugt wurde.

Signatur

set_planar_calib_deformable_model_metric(Image : : ModelID, Pose, Metric : )

Herror T_set_planar_calib_deformable_model_metric(const Hobject Image, const Htuple ModelID, const Htuple Pose, const Htuple Metric)

void SetPlanarCalibDeformableModelMetric(const HObject& Image, const HTuple& ModelID, const HTuple& Pose, const HTuple& Metric)

void HDeformableModel::SetPlanarCalibDeformableModelMetric(const HImage& Image, const HPose& Pose, const HString& Metric) const

void HDeformableModel::SetPlanarCalibDeformableModelMetric(const HImage& Image, const HPose& Pose, const char* Metric) const

void HDeformableModel::SetPlanarCalibDeformableModelMetric(const HImage& Image, const HPose& Pose, const wchar_t* Metric) const   (Nur Windows)

void HImage::SetPlanarCalibDeformableModelMetric(const HDeformableModel& ModelID, const HPose& Pose, const HString& Metric) const

void HImage::SetPlanarCalibDeformableModelMetric(const HDeformableModel& ModelID, const HPose& Pose, const char* Metric) const

void HImage::SetPlanarCalibDeformableModelMetric(const HDeformableModel& ModelID, const HPose& Pose, const wchar_t* Metric) const   (Nur Windows)

static void HOperatorSet.SetPlanarCalibDeformableModelMetric(HObject image, HTuple modelID, HTuple pose, HTuple metric)

void HDeformableModel.SetPlanarCalibDeformableModelMetric(HImage image, HPose pose, string metric)

void HImage.SetPlanarCalibDeformableModelMetric(HDeformableModel modelID, HPose pose, string metric)

def set_planar_calib_deformable_model_metric(image: HObject, model_id: HHandle, pose: Sequence[Union[float, int]], metric: str) -> None

Beschreibung

set_planar_calib_deformable_model_metricset_planar_calib_deformable_model_metricSetPlanarCalibDeformableModelMetricSetPlanarCalibDeformableModelMetricSetPlanarCalibDeformableModelMetricset_planar_calib_deformable_model_metric ändert den Wert des Parameters MetricMetricMetricMetricmetricmetric der bei der Erstellung des Formmodells ModelIDModelIDModelIDModelIDmodelIDmodel_id gesetzt wurde. Weil keine Information über die Polarität von Modellkonturen aus XLD Konturen vorhanden ist, wird die Polarität unter Verwendung des Bildes ImageImageImageImageimageimage bestimmt. Dafür werden die Modellkonturen and die entsprechende Position an der das Objekt im Bild ImageImageImageImageimageimage erscheint mit Hilfe von PosePosePosePoseposepose abgebildet. PosePosePosePoseposepose kann mit einem vorherigen Aufruf von find_planar_uncalib_deformable_modelfind_planar_uncalib_deformable_modelFindPlanarUncalibDeformableModelFindPlanarUncalibDeformableModelFindPlanarUncalibDeformableModelfind_planar_uncalib_deformable_model ermittelt werden.

Der Parameter MetricMetricMetricMetricmetricmetric legt fest, unter welchen Bedingungen das Muster später im Suchbild noch erkannt wird. Falls MetricMetricMetricMetricmetricmetric = 'use_polarity'"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 MetricMetricMetricMetricmetricmetric = 'ignore_global_polarity'"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_planar_calib_deformable_modelfind_planar_calib_deformable_modelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModelfind_planar_calib_deformable_model erhöht sich in diesem Fall geringfügig.

Es muss sichergestellt werden, dass die Objektkonturen im Bild ImageImageImageImageimageimage 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 Modellkonturen nicht mit der Polarität der Konturen 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 ImageImageImageImageimageimage ü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 MetricMetricMetricMetricmetricmetric 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""ignore_local_polarity" gesetzt werden. Dann kann das Modell in einem ersten Suchbild gefunden werden. Aus den resultierenden Matchingergebnissen lassen sich die Transformationsparameter bestimmen, die die Modellkonturen an die Stelle des Suchbildes abbilden, an der das Objekt erscheint. Um die Matchingergebnisse interaktiv zu kontrollieren, können die Modellkonturen entsprechend transformiert werden. Ist das Matchingergebnis korrekt, kann der Wert des Parameters MetricMetricMetricMetricmetricmetric z.B. zu 'use_polarity'"use_polarity""use_polarity""use_polarity""use_polarity""use_polarity" verändert werden. Dies führt in den nachfolgenden Bildern zu einer schnelleren und robusteren Erkennung.

Achtung

set_planar_calib_deformable_model_metricset_planar_calib_deformable_model_metricSetPlanarCalibDeformableModelMetricSetPlanarCalibDeformableModelMetricSetPlanarCalibDeformableModelMetricset_planar_calib_deformable_model_metric 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

ImageImageImageImageimageimage (input_object)  singlechannelimage objectHImageHObjectHImageHobject (byte / uint2)

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

ModelIDModelIDModelIDModelIDmodelIDmodel_id (input_control, Zustand wird modifiziert)  deformable_model HDeformableModel, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle des Modells.

PosePosePosePoseposepose (input_control)  pose HPose, HTupleSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Lage des Modells im Bild.

Parameteranzahl: 7

MetricMetricMetricMetricmetricmetric (input_control)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Art der zum Matchen verwendeten Metrik.

Defaultwert: 'use_polarity' "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""ignore_global_polarity", 'use_polarity'"use_polarity""use_polarity""use_polarity""use_polarity""use_polarity"

Ergebnis

Sind die Parameterwerte korrekt, dann liefert set_planar_calib_deformable_model_metricset_planar_calib_deformable_model_metricSetPlanarCalibDeformableModelMetricSetPlanarCalibDeformableModelMetricSetPlanarCalibDeformableModelMetricset_planar_calib_deformable_model_metric den Wert TRUE. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

create_planar_calib_deformable_model_xldcreate_planar_calib_deformable_model_xldCreatePlanarCalibDeformableModelXldCreatePlanarCalibDeformableModelXldCreatePlanarCalibDeformableModelXldcreate_planar_calib_deformable_model_xld, find_planar_calib_deformable_modelfind_planar_calib_deformable_modelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModelfind_planar_calib_deformable_model

Nachfolger

find_planar_calib_deformable_modelfind_planar_calib_deformable_modelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModelfind_planar_calib_deformable_model

Siehe auch

create_planar_calib_deformable_model_xldcreate_planar_calib_deformable_model_xldCreatePlanarCalibDeformableModelXldCreatePlanarCalibDeformableModelXldCreatePlanarCalibDeformableModelXldcreate_planar_calib_deformable_model_xld

Modul

Matching