thinningthinningThinningThinningthinning (算子)

名称

thinningthinningThinningThinningthinning — 从区域中删除击中或击不中操作的结果。

警告

thinningthinningThinningThinningThinningthinning 已过时,仅出于向后兼容性考虑而保留。

签名

thinning(Region, StructElement1, StructElement2 : RegionThin : Row, Column, Iterations : )

Herror thinning(const Hobject Region, const Hobject StructElement1, const Hobject StructElement2, Hobject* RegionThin, const Hlong Row, const Hlong Column, const Hlong Iterations)

Herror T_thinning(const Hobject Region, const Hobject StructElement1, const Hobject StructElement2, Hobject* RegionThin, const Htuple Row, const Htuple Column, const Htuple Iterations)

void Thinning(const HObject& Region, const HObject& StructElement1, const HObject& StructElement2, HObject* RegionThin, const HTuple& Row, const HTuple& Column, const HTuple& Iterations)

HRegion HRegion::Thinning(const HRegion& StructElement1, const HRegion& StructElement2, Hlong Row, Hlong Column, Hlong Iterations) const

static void HOperatorSet.Thinning(HObject region, HObject structElement1, HObject structElement2, out HObject regionThin, HTuple row, HTuple column, HTuple iterations)

HRegion HRegion.Thinning(HRegion structElement1, HRegion structElement2, int row, int column, int iterations)

def thinning(region: HObject, struct_element_1: HObject, struct_element_2: HObject, row: int, column: int, iterations: int) -> HObject

描述

thinningthinningThinningThinningThinningthinning performs a thinning of the input regions using morphological operations. The operator first applies a hit-or-miss-transformation to RegionRegionRegionRegionregionregion (cf. hit_or_misshit_or_missHitOrMissHitOrMissHitOrMisshit_or_miss), and then removes the detected points from the input region. The parameter IterationsIterationsIterationsIterationsiterationsiterations determines the number of iterations performed.

For the choice of the structuring elements StructElement1StructElement1StructElement1StructElement1structElement1struct_element_1 and StructElement2StructElement2StructElement2StructElement2structElement2struct_element_2, as well as for RowRowRowRowrowrow and ColumnColumnColumnColumncolumncolumn, the same restrictions described under hit_or_misshit_or_missHitOrMissHitOrMissHitOrMisshit_or_miss apply.

Structuring elements (StructElement1StructElement1StructElement1StructElement1structElement1struct_element_1, StructElement2StructElement2StructElement2StructElement2structElement2struct_element_2) 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 processed.

StructElement1StructElement1StructElement1StructElement1structElement1struct_element_1 (输入对象)  region objectHRegionHObjectHRegionHobject

Structuring element for the foreground.

StructElement2StructElement2StructElement2StructElement2structElement2struct_element_2 (输入对象)  region objectHRegionHObjectHRegionHobject

Structuring element for the background.

RegionThinRegionThinRegionThinRegionThinregionThinregion_thin (输出对象)  region(-array) objectHRegionHObjectHRegionHobject *

Result of the thinning operator.

RowRowRowRowrowrow (输入控制)  point.y HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Row coordinate of the reference point.

默认值: 0

值范围: 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 ≤ 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 F be the area of an input region, F1 the area of the structuring element 1, and F2 the area of the structuring element 2. Then the runtime complexity for one object is:

结果

thinningthinningThinningThinningThinningthinning 在所有参数正确时返回 2 ( H_MSG_TRUE )。当输入区域为空或不存在时,其行为可通过以下方式设置:

否则,将抛出异常。

可能的前趋

thresholdthresholdThresholdThresholdThresholdthreshold, regiongrowingregiongrowingRegiongrowingRegiongrowingRegiongrowingregiongrowing, connectionconnectionConnectionConnectionConnectionconnection, union1union1Union1Union1Union1union1, 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

替代

thinning_golaythinning_golayThinningGolayThinningGolayThinningGolaythinning_golay, thinning_seqthinning_seqThinningSeqThinningSeqThinningSeqthinning_seq

另见

hit_or_misshit_or_missHitOrMissHitOrMissHitOrMisshit_or_miss

模块

基础