minkowski_sub2minkowski_sub2MinkowskiSub2MinkowskiSub2minkowski_sub2 (算子)
名称
minkowski_sub2minkowski_sub2MinkowskiSub2MinkowskiSub2minkowski_sub2 — 腐蚀一个区域(使用参考点)。
签名
Herror minkowski_sub2(const Hobject Region, const Hobject StructElement, Hobject* RegionMinkSub, const Hlong Row, const Hlong Column, const Hlong Iterations)
Herror T_minkowski_sub2(const Hobject Region, const Hobject StructElement, Hobject* RegionMinkSub, const Htuple Row, const Htuple Column, const Htuple Iterations)
描述
minkowski_sub2minkowski_sub2MinkowskiSub2MinkowskiSub2MinkowskiSub2minkowski_sub2 computes the Minkowski subtraction of the
input regions with a structuring element (StructElementStructElementStructElementStructElementstructElementstruct_element)
having the reference point (RowRowRowRowrowrow,ColumnColumnColumnColumncolumncolumn).
minkowski_sub2minkowski_sub2MinkowskiSub2MinkowskiSub2MinkowskiSub2minkowski_sub2 has a similar effect as
minkowski_sub1minkowski_sub1MinkowskiSub1MinkowskiSub1MinkowskiSub1minkowski_sub1, the difference is that the reference
point of the structuring element can be chosen arbitrarily. The
parameter IterationsIterationsIterationsIterationsiterationsiterations determines the number of iterations
which are to be performed with the structuring element. The result
of iteration n-1 is used as input for iteration n.
A maximum region is generated in case of an empty structuring
element.
Structuring elements (StructElementStructElementStructElementStructElementstructElementstruct_element) can be generated
with operators such as gen_circlegen_circleGenCircleGenCircleGenCirclegen_circle, gen_rectangle1gen_rectangle1GenRectangle1GenRectangle1GenRectangle1gen_rectangle1,
gen_rectangle2gen_rectangle2GenRectangle2GenRectangle2GenRectangle2gen_rectangle2, gen_ellipsegen_ellipseGenEllipseGenEllipseGenEllipsegen_ellipse,
draw_regiondraw_regionDrawRegionDrawRegionDrawRegiondraw_region, gen_region_polygongen_region_polygonGenRegionPolygonGenRegionPolygonGenRegionPolygongen_region_polygon,
gen_region_pointsgen_region_pointsGenRegionPointsGenRegionPointsGenRegionPointsgen_region_points, etc.
执行信息
- 多线程类型:可重入(与非独占算子并行运行)。
- 多线程作用域:全局(可从任何线程调用)。
- 在元组级别上自动并行化。
参数
RegionRegionRegionRegionregionregion (输入对象) region(-array) → objectHRegionHObjectHRegionHobject
Regions to be eroded.
StructElementStructElementStructElementStructElementstructElementstruct_element (输入对象) region → objectHRegionHObjectHRegionHobject
Structuring element.
RegionMinkSubRegionMinkSubRegionMinkSubRegionMinkSubregionMinkSubregion_mink_sub (输出对象) region(-array) → objectHRegionHObjectHRegionHobject *
Eroded regions.
RowRowRowRowrowrow (输入控制) point.y → HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Row coordinate of the reference point.
默认值:
0
建议值:
0, 10, 16, 32, 64, 100, 128
值范围:
0
≤
Row
Row
Row
Row
row
row
≤
511 (lin)
最小增量:
1
建议增量:
1
ColumnColumnColumnColumncolumncolumn (输入控制) point.x → HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Column coordinate of the reference point.
默认值:
0
建议值:
0, 10, 16, 32, 64, 100, 128
值范围:
0
≤
Column
Column
Column
Column
column
column
≤
511 (lin)
最小增量:
1
建议增量:
1
IterationsIterationsIterationsIterationsiterationsiterations (输入控制) integer → HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Number of iterations.
默认值:
1
建议值:
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 15, 17, 20, 30, 40, 50
值范围:
1
≤
Iterations
Iterations
Iterations
Iterations
iterations
iterations
(lin)
最小增量:
1
建议增量:
1
复杂度
Let F1 be the area of the input region, and F2 be the area of
the structuring element. Then the runtime complexity for one region
is:
结果
minkowski_sub2minkowski_sub2MinkowskiSub2MinkowskiSub2MinkowskiSub2minkowski_sub2 在所有参数正确时返回 2 ( H_MSG_TRUE )。当输入区域为空或不存在时,其行为可通过以下方式设置:
-
无区域:
set_system('no_object_result',<RegionResult>)set_system("no_object_result",<RegionResult>)SetSystem("no_object_result",<RegionResult>)SetSystem("no_object_result",<RegionResult>)SetSystem("no_object_result",<RegionResult>)set_system("no_object_result",<RegionResult>)
-
空区域:
set_system('empty_region_result',<RegionResult>)set_system("empty_region_result",<RegionResult>)SetSystem("empty_region_result",<RegionResult>)SetSystem("empty_region_result",<RegionResult>)SetSystem("empty_region_result",<RegionResult>)set_system("empty_region_result",<RegionResult>)
否则,将抛出异常。
可能的前趋
thresholdthresholdThresholdThresholdThresholdthreshold,
regiongrowingregiongrowingRegiongrowingRegiongrowingRegiongrowingregiongrowing,
watershedswatershedsWatershedsWatershedsWatershedswatersheds,
class_ndim_normclass_ndim_normClassNdimNormClassNdimNormClassNdimNormclass_ndim_norm,
gen_circlegen_circleGenCircleGenCircleGenCirclegen_circle,
gen_ellipsegen_ellipseGenEllipseGenEllipseGenEllipsegen_ellipse,
gen_rectangle1gen_rectangle1GenRectangle1GenRectangle1GenRectangle1gen_rectangle1,
gen_rectangle2gen_rectangle2GenRectangle2GenRectangle2GenRectangle2gen_rectangle2,
draw_regiondraw_regionDrawRegionDrawRegionDrawRegiondraw_region,
gen_region_pointsgen_region_pointsGenRegionPointsGenRegionPointsGenRegionPointsgen_region_points,
gen_region_polygon_filledgen_region_polygon_filledGenRegionPolygonFilledGenRegionPolygonFilledGenRegionPolygonFilledgen_region_polygon_filled
可能的后继
reduce_domainreduce_domainReduceDomainReduceDomainReduceDomainreduce_domain,
select_shapeselect_shapeSelectShapeSelectShapeSelectShapeselect_shape,
area_centerarea_centerAreaCenterAreaCenterAreaCenterarea_center,
connectionconnectionConnectionConnectionConnectionconnection
替代
minkowski_sub1minkowski_sub1MinkowskiSub1MinkowskiSub1MinkowskiSub1minkowski_sub1,
erosion1erosion1Erosion1Erosion1Erosion1erosion1,
erosion2erosion2Erosion2Erosion2Erosion2erosion2
另见
gen_circlegen_circleGenCircleGenCircleGenCirclegen_circle,
gen_rectangle2gen_rectangle2GenRectangle2GenRectangle2GenRectangle2gen_rectangle2,
gen_region_polygongen_region_polygonGenRegionPolygonGenRegionPolygonGenRegionPolygongen_region_polygon
模块
基础