KlassenKlassenKlassenKlassen | | | | Operatoren

hamming_distancehamming_distanceHammingDistancehamming_distanceHammingDistanceHammingDistance (Operator)

Name

hamming_distancehamming_distanceHammingDistancehamming_distanceHammingDistanceHammingDistance — Ermitteln des Hamming-Abstands zweier Regionen.

Signatur

hamming_distance(Regions1, Regions2 : : : Distance, Similarity)

Herror hamming_distance(const Hobject Regions1, const Hobject Regions2, Hlong* Distance, double* Similarity)

Herror T_hamming_distance(const Hobject Regions1, const Hobject Regions2, Htuple* Distance, Htuple* Similarity)

Herror hamming_distance(Hobject Regions1, Hobject Regions2, Hlong* Distance, double* Similarity)

Herror hamming_distance(Hobject Regions1, Hobject Regions2, HTuple* Distance, HTuple* Similarity)

Hlong HRegion::HammingDistance(const HRegion& Regions2, double* Similarity) const

HTuple HRegionArray::HammingDistance(const HRegionArray& Regions2, HTuple* Similarity) const

void HammingDistance(const HObject& Regions1, const HObject& Regions2, HTuple* Distance, HTuple* Similarity)

HTuple HRegion::HammingDistance(const HRegion& Regions2, HTuple* Similarity) const

Hlong HRegion::HammingDistance(const HRegion& Regions2, double* Similarity) const

void HOperatorSetX.HammingDistance(
[in] IHUntypedObjectX* Regions1, [in] IHUntypedObjectX* Regions2, [out] VARIANT* Distance, [out] VARIANT* Similarity)

VARIANT HRegionX.HammingDistance(
[in] IHRegionX* Regions2, [out] VARIANT* Similarity)

static void HOperatorSet.HammingDistance(HObject regions1, HObject regions2, out HTuple distance, out HTuple similarity)

HTuple HRegion.HammingDistance(HRegion regions2, out HTuple similarity)

int HRegion.HammingDistance(HRegion regions2, out double similarity)

Beschreibung

hamming_distancehamming_distanceHammingDistancehamming_distanceHammingDistanceHammingDistance liefert den Hamming-Abstand zweier Regionen, d.h. die Zahl der Punkte der Regionen, die sich unterscheiden (DistanceDistanceDistanceDistanceDistancedistance), also die Zahl der Punkte, die in der einen Region enthalten sind, in der anderen jedoch nicht:

Der Parameter SimilaritySimilaritySimilaritySimilaritySimilaritysimilarity beschreibt die Ähnlichkeit der beiden Regionen, basierend auf dem Hamming-Abstand DistanceDistanceDistanceDistanceDistancedistance:
Sind beide Regionen leer, dann wird SimilaritySimilaritySimilaritySimilaritySimilaritysimilarity auf 0 gesetzt. Es werden immer die Regionen mit dem gleichen Index aus den beiden Eingabeparametern miteinander verglichen.

Achtung

In beiden Eingabeparametern muss die gleiche Anzahl von Regionen übergeben werden.

Parallelisierung

Parameter

Regions1Regions1Regions1Regions1Regions1regions1 (input_object)  region(-array) objectHRegionHRegionHRegionHRegionXHobject

Zu untersuchende Regionen.

Regions2Regions2Regions2Regions2Regions2regions2 (input_object)  region(-array) objectHRegionHRegionHRegionHRegionXHobject

Vergleichsregionen.

DistanceDistanceDistanceDistanceDistancedistance (output_control)  integer(-array) HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Hamming-Abstand zweier Regionen.

Zusicherung: Distance >= 0

SimilaritySimilaritySimilaritySimilaritySimilaritysimilarity (output_control)  real(-array) HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Ähnlichkeit zweier Regionen.

Zusicherung: 0 <= Similarity && Similarity <= 1

Komplexität

Sei F die Fläche einer Region, dann beträgt die Laufzeitkomplexität im Mittel O(sqrt(F)).

Ergebnis

hamming_distance liefert den Wert 2 (H_MSG_TRUE), falls die Anzahl der Objekte in beiden Parametern gleich ist und nicht 0 beträgt. Das Verhalten bei leerer Eingabe (keine Eingabeobjekte vorhanden) lässt sich mittels set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>) festlegen. Das Verhalten bei einer leeren Region (Region ist die leere Menge) wird mit set_system('empty_region_result',<Result>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>) bestimmt. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

thresholdthresholdThresholdthresholdThresholdThreshold, regiongrowingregiongrowingRegiongrowingregiongrowingRegiongrowingRegiongrowing, connectionconnectionConnectionconnectionConnectionConnection

Alternativen

intersectionintersectionIntersectionintersectionIntersectionIntersection, complementcomplementComplementcomplementComplementComplement, area_centerarea_centerAreaCenterarea_centerAreaCenterAreaCenter

Siehe auch

hamming_change_regionhamming_change_regionHammingChangeRegionhamming_change_regionHammingChangeRegionHammingChangeRegion

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren