eccentricity_xld
— Aus den Ellipsenparametern abgeleitete Formmerkmale von Konturen bzw.
Polygonen.
eccentricity_xld(XLD : : : Anisometry, Bulkiness, StructureFactor)
eccentricity_xld
berechnet die drei Formmerkmale
Anisometry
, Bulkiness
und
StructureFactor
, die aus den geometrischen Momenten
hergeleitet sind, für jede Eingabekontur bzw. jedes Eingabepolyon. Ist die
Eingabekontur oder das Eingabepolygon nicht geschlossen,
so wird sie/es vor der Berechnung automatisch geschlossen.
Berechnung:
Seien die Ellipsenradien Ra, Rb (siehe elliptic_axis_xld
)
und die eingeschlossene Fläche F der Kontur bzw. des Polygons
gegeben, dann gilt:
Die Anisometrie eines Kreises ist 1.0.
Es ist zu beachten, dass eccentricity_xld
nur dann sinnvolle
Ergebnisse liefert, falls die Kontur oder das Polygon eine Fläche in
der Ebene einschließt. Insbesondere darf sich die Kontur oder das
Polygon nicht selbst schneiden. Dies ist insbesondere dann zu
beachten, wenn offene Konturen und Polygone übergeben werden, da
diese automatisch geschlossen werden, was dazu führen kann, dass sich
die Kontur oder das Polygon selbst schneidet. Ob sich die Konturen
oder Polygone selbst schneiden, kann leicht mit
test_self_intersection_xld
überprüft werden. Falls sich die
Kontur oder das Polygon selbst schneidet, kann ein sinnvoller Wert
für die Anisometrie mit eccentricity_points_xld
berechnet
werden.
Wird mehr als eine Kontur oder ein Polygon übergeben, dann werden
die Ergebnisse in Tupeln in der Reihenfolge ihrer entsprechenden Konturen
bzw. Polygone in XLD
abgespeichert.
XLD
(input_object) xld(-array) →
object
Zu untersuchende Konturen bzw. Polygone.
Anisometry
(output_control) real(-array) →
(real)
Anisometrie der Konturen bzw. Polygone.
Zusicherung: Anisometry >= 1.0
Bulkiness
(output_control) real(-array) →
(real)
Sperrigkeit der Konturen bzw. Polygone.
StructureFactor
(output_control) real(-array) →
(real)
Strukturfaktor der Konturen bzw. Polygone.
eccentricity_xld
liefert den Wert 2 (H_MSG_TRUE), falls die Eingabe nicht leer
ist. Das Verhalten bei leerer Eingabe (keine Eingabekontur vorhanden)
lässt sich mittels set_system('no_object_result',<Result>)
festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
gen_contours_skeleton_xld
,
edges_sub_pix
,
threshold_sub_pix
,
gen_contour_polygon_xld
,
test_self_intersection_xld
elliptic_axis_xld
,
moments_region_2nd
,
select_shape_xld
,
area_center_xld
Foundation