Name
compactness_xldcompactness_xldCompactnessXldcompactness_xldCompactnessXldCompactnessXld — Formfaktor für die Kompaktheit von Konturen oder Polygonen.
compactness_xldcompactness_xldCompactnessXldcompactness_xldCompactnessXldCompactnessXld berechnet die Kompaktheit für jede Eingabekontur
bzw. jedes Eingabepolygon in XLDXLDXLDXLDXLDXLD.
Es muss darauf geachtet werden, dass sich die Eingabekonturen bzw. -polygone
nicht selbst schneiden, da ansonsten der Ausgabeparameter keinen
aussagekräftigen Wert enthält (Ob sich die Eingabekonturen bzw. -polygone
selbst schneiden oder nicht, lässt sich mit
test_self_intersection_xldtest_self_intersection_xldTestSelfIntersectionXldtest_self_intersection_xldTestSelfIntersectionXldTestSelfIntersectionXld überprüfen).
Sind die Eingabekonturen bzw. -polygone nicht geschlossen, so werden sie vor
der Berechnung automatisch geschlossen.
Berechnung:
Sei L die Länge der Kontur/des Polygons und F die
eingeschlossene Fläche, dann ist der Formfaktor
CompactnessCompactnessCompactnessCompactnessCompactnesscompactness definiert als:
Der Formfaktor CompactnessCompactnessCompactnessCompactnessCompactnesscompactness ist bei einem Kreis gleich 1.
Ist die Kontur bzw. das Polygon langgestreckt, dann ist
CompactnessCompactnessCompactnessCompactnessCompactnesscompactness größer als 1.
compactness_xldcompactness_xldCompactnessXldcompactness_xldCompactnessXldCompactnessXld spricht auf den Verlauf der Kontur/des Polygons
(Rauhigkeit) an.
Wird mehr als eine Kontur oder ein Polygon übergeben, dann werden
ihre Formfaktoren in einem Tupel in der Reihenfolge ihrer entsprechenden
Konturen bzw. Polygone in XLDXLDXLDXLDXLDXLD abgespeichert.
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Automatisch parallelisiert auf Tupelebene.
Zu untersuchende Konturen bzw. Polygone.
Kompaktheit der Eingabekonturen bzw. Polygone.
Zusicherung: Compactness >= 1.0 || Compactness == 0
compactness_xldcompactness_xldCompactnessXldcompactness_xldCompactnessXldCompactnessXld 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>)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.
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
gen_contours_skeleton_xldgen_contours_skeleton_xldGenContoursSkeletonXldgen_contours_skeleton_xldGenContoursSkeletonXldGenContoursSkeletonXld,
edges_sub_pixedges_sub_pixEdgesSubPixedges_sub_pixEdgesSubPixEdgesSubPix,
threshold_sub_pixthreshold_sub_pixThresholdSubPixthreshold_sub_pixThresholdSubPixThresholdSubPix,
gen_contour_polygon_xldgen_contour_polygon_xldGenContourPolygonXldgen_contour_polygon_xldGenContourPolygonXldGenContourPolygonXld,
test_self_intersection_xldtest_self_intersection_xldTestSelfIntersectionXldtest_self_intersection_xldTestSelfIntersectionXldTestSelfIntersectionXld
circularity_xldcircularity_xldCircularityXldcircularity_xldCircularityXldCircularityXld,
convexity_xldconvexity_xldConvexityXldconvexity_xldConvexityXldConvexityXld,
eccentricity_xldeccentricity_xldEccentricityXldeccentricity_xldEccentricityXldEccentricityXld
area_center_xldarea_center_xldAreaCenterXldarea_center_xldAreaCenterXldAreaCenterXld,
select_shape_xldselect_shape_xldSelectShapeXldselect_shape_xldSelectShapeXldSelectShapeXld
Foundation