compactness_xldcompactness_xldCompactnessXldCompactnessXldcompactness_xld紧凑性扩展线描述(算子)
名称
compactness_xldcompactness_xldCompactnessXldCompactnessXldcompactness_xld — 轮廓或多边形紧凑性的形状因子。
签名
def compactness_xld(xld: HObject) -> Sequence[float]
def compactness_xld_s(xld: HObject) -> float
描述
算子 compactness_xldcompactness_xldCompactnessXldCompactnessXldCompactnessXldcompactness_xld 计算 XLDXLDXLDXLDXLDxld 中每个输入轮廓或多边形的紧凑性。输入轮廓或多边形不得自相交,否则生成的参数将失去意义(可通过 test_self_intersection_xldtest_self_intersection_xldTestSelfIntersectionXldTestSelfIntersectionXldTestSelfIntersectionXldtest_self_intersection_xld 判断输入轮廓或多边形是否自相交)。如果输入的轮廓或多边形未闭合,系统将自动将其闭合。
计算:
若 L 为轮廓或多边形的长度,F 为其围成的面积,则形状因子 CompactnessCompactnessCompactnessCompactnesscompactnesscompactness 定义为:
圆的形状因子 CompactnessCompactnessCompactnessCompactnesscompactnesscompactness 为 1。若轮廓或多边形包围的是细长区域,其 CompactnessCompactnessCompactnessCompactnesscompactnesscompactness
大于 1。算子 compactness_xldcompactness_xldCompactnessXldCompactnessXldCompactnessXldcompactness_xld 响应轮廓或多边形的走向(粗糙度)。若传递多个轮廓或多边形,形状因子将按
XLDXLDXLDXLDXLDxld 中对应轮廓或多边形的顺序存储于元组中。
执行信息
- 多线程类型:可重入(与非独占算子并行运行)。
- 多线程作用域:全局(可从任何线程调用)。
- 在元组级别上自动并行化。
参数
XLDXLDXLDXLDXLDxld (输入对象) xld(-array) → objectHXLDHObjectHXLDHobject
待检查的轮廓或多边形。
CompactnessCompactnessCompactnessCompactnesscompactnesscompactness (输出控制) real(-array) → HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
输入轮廓或多边形的紧凑性。
断言:
Compactness >= 1.0 || Compactness == 0
结果
算子 compactness_xldcompactness_xldCompactnessXldCompactnessXldCompactnessXldcompactness_xld 在输入不为空时返回值 2 (H_MSG_TRUE)。当输入为空(无可用输入轮廓)时,可设置行为通过算子 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>)set_system("no_object_result",<Result>)。如有必要,则抛出异常。
可能的前趋
gen_contours_skeleton_xldgen_contours_skeleton_xldGenContoursSkeletonXldGenContoursSkeletonXldGenContoursSkeletonXldgen_contours_skeleton_xld,
edges_sub_pixedges_sub_pixEdgesSubPixEdgesSubPixEdgesSubPixedges_sub_pix,
threshold_sub_pixthreshold_sub_pixThresholdSubPixThresholdSubPixThresholdSubPixthreshold_sub_pix,
gen_contour_polygon_xldgen_contour_polygon_xldGenContourPolygonXldGenContourPolygonXldGenContourPolygonXldgen_contour_polygon_xld,
test_self_intersection_xldtest_self_intersection_xldTestSelfIntersectionXldTestSelfIntersectionXldTestSelfIntersectionXldtest_self_intersection_xld
替代
circularity_xldcircularity_xldCircularityXldCircularityXldCircularityXldcircularity_xld,
convexity_xldconvexity_xldConvexityXldConvexityXldConvexityXldconvexity_xld,
eccentricity_xldeccentricity_xldEccentricityXldEccentricityXldEccentricityXldeccentricity_xld,
rectangularity_xldrectangularity_xldRectangularityXldRectangularityXldRectangularityXldrectangularity_xld
另见
area_center_xldarea_center_xldAreaCenterXldAreaCenterXldAreaCenterXldarea_center_xld,
select_shape_xldselect_shape_xldSelectShapeXldSelectShapeXldSelectShapeXldselect_shape_xld
模块
基础