test_equal_objtest_equal_objTestEqualObjTestEqualObj (Operator)

Name

test_equal_objtest_equal_objTestEqualObjTestEqualObj — Vergleich von Bildobjekten auf Gleichheit.

Signatur

test_equal_obj(Objects1, Objects2 : : : IsEqual)

Herror test_equal_obj(const Hobject Objects1, const Hobject Objects2, Hlong* IsEqual)

Herror T_test_equal_obj(const Hobject Objects1, const Hobject Objects2, Htuple* IsEqual)

void TestEqualObj(const HObject& Objects1, const HObject& Objects2, HTuple* IsEqual)

Hlong HObject::TestEqualObj(const HObject& Objects2) const

Hlong HImage::TestEqualObj(const HImage& Objects2) const

Hlong HRegion::TestEqualObj(const HRegion& Objects2) const

Hlong HXLD::TestEqualObj(const HXLD& Objects2) const

Hlong HXLDCont::TestEqualObj(const HXLDCont& Objects2) const

Hlong HXLDPoly::TestEqualObj(const HXLDPoly& Objects2) const

Hlong HXLDPara::TestEqualObj(const HXLDPara& Objects2) const

Hlong HXLDModPara::TestEqualObj(const HXLDModPara& Objects2) const

Hlong HXLDExtPara::TestEqualObj(const HXLDExtPara& Objects2) const

static void HOperatorSet.TestEqualObj(HObject objects1, HObject objects2, out HTuple isEqual)

int HObject.TestEqualObj(HObject objects2)

int HImage.TestEqualObj(HImage objects2)

int HRegion.TestEqualObj(HRegion objects2)

int HXLD.TestEqualObj(HXLD objects2)

int HXLDCont.TestEqualObj(HXLDCont objects2)

int HXLDPoly.TestEqualObj(HXLDPoly objects2)

int HXLDPara.TestEqualObj(HXLDPara objects2)

int HXLDModPara.TestEqualObj(HXLDModPara objects2)

int HXLDExtPara.TestEqualObj(HXLDExtPara objects2)

Beschreibung

test_equal_objtest_equal_objTestEqualObjTestEqualObjTestEqualObj vergleicht die Regionen und Grauwertkomponenten aller Objekte der beiden Eingabeparameter. Verglichen wird das n-te Objekt in Objects1Objects1Objects1Objects1objects1 mit dem n-ten Objekt in Objects2Objects2Objects2Objects2objects2 (für alle n). Falls alle entsprechenden Regionen gleich sind und auch die Anzahl der Regionen identisch ist, erhält IsEqualIsEqualIsEqualIsEqualisEqual den Wert TRUE, ansonsten FALSE.

Die in HALCON verfügbaren ikonischen Objekte werden bei der Einleitung zu Kapitel Objekt vorgestellt.

Achtung

Bildmatrizen und XLDs werden nicht auf ihren Inhalt verglichen. Zwei Bilder resp. XLDs sind daher „gleich“, wenn sie an der gleichen Stelle im Speicher stehen. Im Gegensatz dazu wird bei Regionen, die nicht an der gleichen Stelle im Speicher stehen, der tatsächliche Inhalt verglichen. Falls die Eingabeparameter leer sind und das Verhalten mit set_system(::'no_object_result','true':)set_system("no_object_result","true")SetSystem("no_object_result","true")SetSystem("no_object_result","true")SetSystem("no_object_result","true") gesetzt wurde, wird IsEqualIsEqualIsEqualIsEqualisEqual auf TRUE gesetzt, da alle Eingaben (= leere Menge) gleich sind.

Ausführungsinformationen

Parameter

Objects1Objects1Objects1Objects1objects1 (input_object)  object-array objectHObjectHObjectHobject

Testobjekte.

Objects2Objects2Objects2Objects2objects2 (input_object)  object-array objectHObjectHObjectHobject

Vergleichsobjekte.

IsEqualIsEqualIsEqualIsEqualisEqual (output_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

boolscher Ergebniswert.

Komplexität

Sei F die Fläche einer Region, dann beträgt die Laufzeitkomplexität bei Ergebnis TRUE O(1) oder O(sqrt(F)) und bei Ergebnis FALSE O(sqrt(F)).

Ergebnis

test_equal_objtest_equal_objTestEqualObjTestEqualObjTestEqualObj liefert den Wert 2 (H_MSG_TRUE), falls die Parameter korrekt sind. Das Verhalten bei leerer Eingabe (keine Eingaberegionen vorhanden) lässt sich mittels set_system(::'no_object_result',<Result>:)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>) festlegen. Unterscheidet sich die Anzahl der Objekte, wird eine Fehlerbehandlung durchgeführt. Ansonsten liefert test_equal_objtest_equal_objTestEqualObjTestEqualObjTestEqualObj den Wert 2 (H_MSG_TRUE)

Siehe auch

compare_objcompare_objCompareObjCompareObjCompareObj, test_equal_regiontest_equal_regionTestEqualRegionTestEqualRegionTestEqualRegion

Modul

Foundation