rectangularityrectangularityRectangularityRectangularity (Operator)

Name

rectangularityrectangularityRectangularityRectangularity — Ermitteln des Formfaktors für die Rechteckigkeit einer Region.

Signatur

rectangularity(Regions : : : Rectangularity)

Herror rectangularity(const Hobject Regions, double* Rectangularity)

Herror T_rectangularity(const Hobject Regions, Htuple* Rectangularity)

void Rectangularity(const HObject& Regions, HTuple* Rectangularity)

HTuple HRegion::Rectangularity() const

static void HOperatorSet.Rectangularity(HObject regions, out HTuple rectangularity)

HTuple HRegion.Rectangularity()

Beschreibung

rectangularityrectangularityRectangularityRectangularityRectangularity berechnet die Rechteckigkeit der Eingaberegionen.

Zur Bestimmung der Rechteckigkeit wird zunächst ein Rechteck ermittelt, das die gleichen ersten und zweiten Momente besitzt wie die Eingaberegion. Die Berechnung des Rechteckigkeitsmaßes basiert schließlich auf der Fläche der Differenz zwischen dem ermittelten Rechteck und der Eingaberegion normiert auf die Fläche des Rechtecks.

In der Dokumentation zu diesem Kapitel (Regionen / Merkmale) finden Sie ein Bild mit Regionen, die sich in ihrer Rechteckigkeit unterscheiden.

Für Rechtecke liefert rectangularityrectangularityRectangularityRectangularityRectangularity den Wert 1 zurück. Je weniger die Eingaberegion einem Rechteck gleicht, desto geringer ist RectangularityRectangularityRectangularityRectangularityrectangularity.

Bei einer leeren Region liefert rectangularityrectangularityRectangularityRectangularityRectangularity (soweit kein anderes Verhalten festgelegt wurde (siehe set_systemset_systemSetSystemSetSystemSetSystem)) den Wert 0. Wird mehr als eine Region übergeben, dann werden die Zahlenwerte für die Rechteckigkeit in einem Tupel abgespeichert, wobei die Position eines Wertes in dem Tupel der Position der Region im Eingabetupel entspricht.

Achtung

Bei Eingaberegionen, deren Orientierung über Momente zweiter Ordnung nicht definiert ist (wie es z.B. beim Quadrat der Fall ist), wird für RectangularityRectangularityRectangularityRectangularityrectangularity je nach Orientierung der Eingaberegion ein bis zu 10% zu niedriger Wert zurückgeliefert.

Ausführungsinformationen

Parameter

RegionsRegionsRegionsRegionsregions (input_object)  region(-array) objectHRegionHRegionHobject

Zu untersuchende Region(en).

RectangularityRectangularityRectangularityRectangularityrectangularity (output_control)  real(-array) HTupleHTupleHtuple (real) (double) (double) (double)

Rechteckigkeit der Eingaberegion(en).

Zusicherung: 0 <= Rectangularity && Rectangularity <= 1.0

Ergebnis

rectangularityrectangularityRectangularityRectangularityRectangularity liefert den Wert 2 (H_MSG_TRUE), falls die Eingabe nicht leer ist. 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. 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>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>) bestimmt. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

thresholdthresholdThresholdThresholdThreshold, regiongrowingregiongrowingRegiongrowingRegiongrowingRegiongrowing, connectionconnectionConnectionConnectionConnection

Alternativen

circularitycircularityCircularityCircularityCircularity, compactnesscompactnessCompactnessCompactnessCompactness, convexityconvexityConvexityConvexityConvexity, eccentricityeccentricityEccentricityEccentricityEccentricity

Siehe auch

contlengthcontlengthContlengthContlengthContlength, area_centerarea_centerAreaCenterAreaCenterAreaCenter, select_shapeselect_shapeSelectShapeSelectShapeSelectShape

Literatur

P. L. Rosin: „Measuring rectangularity“; Machine Vision and Applications; vol. 11; pp. 191-196; Springer-Verlag, 1999.

Modul

Foundation