Operator Reference

morph_skizmorph_skizMorphSkizMorphSkizmorph_skiz (Operator)

morph_skizmorph_skizMorphSkizMorphSkizmorph_skiz — Thinning of a region.

Warning

morph_skizmorph_skizMorphSkizMorphSkizmorph_skiz is obsolete and is only provided for reasons of backward compatibility.

Signature

Herror morph_skiz(const Hobject Region, Hobject* RegionSkiz, const Hlong Iterations1, const Hlong Iterations2)

Herror T_morph_skiz(const Hobject Region, Hobject* RegionSkiz, const Htuple Iterations1, const Htuple Iterations2)

void MorphSkiz(const HObject& Region, HObject* RegionSkiz, const HTuple& Iterations1, const HTuple& Iterations2)

HRegion HRegion::MorphSkiz(const HTuple& Iterations1, const HTuple& Iterations2) const

HRegion HRegion::MorphSkiz(Hlong Iterations1, Hlong Iterations2) const

def morph_skiz(region: HObject, iterations_1: Union[int, str], iterations_2: Union[int, str]) -> HObject

Description

morph_skizmorph_skizMorphSkizMorphSkizmorph_skiz first performs a sequential thinning (thinning_seqthinning_seqThinningSeqThinningSeqthinning_seq) of the input region with the element 'l' of the Golay alphabet. The number of iterations is determined by the parameter Iterations1Iterations1Iterations1iterations1iterations_1. Then a sequential thinning of the resulting region with the element 'e' of the Golay alphabet is carried out. The number of iterations for this step is determined by the parameter Iterations2Iterations2Iterations2iterations2iterations_2. The skiz operation serves to compute a kind of skeleton of the input regions, and to prune the branches of the resulting skeleton. If the skiz operation is applied to the complement of the region, the region and the resulting skeleton are separated.

If very large values or 'maximal' are passed for Iterations1Iterations1Iterations1iterations1iterations_1 or Iterations2Iterations2Iterations2iterations2iterations_2, the processing stops if no more changes occur.

Execution Information

  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).
  • Multithreading scope: global (may be called from any thread).
  • Automatically parallelized on tuple level.

Parameters

RegionRegionRegionregionregion (input_object)  region(-array) objectHRegionHObjectHObjectHobject

Regions to be thinned.

RegionSkizRegionSkizRegionSkizregionSkizregion_skiz (output_object)  region(-array) objectHRegionHObjectHObjectHobject *

Result of the skiz operator.

Iterations1Iterations1Iterations1iterations1iterations_1 (input_control)  integer HTupleUnion[int, str]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)

Number of iterations for the sequential thinning with the element 'l' of the Golay alphabet.

Default: 100

Suggested values: 'maximal'"maximal""maximal""maximal""maximal", 0, 1, 2, 3, 5, 7, 10, 15, 20, 30, 40, 50, 70, 100, 150, 200, 300, 400

Value range: 0 ≤ Iterations1 Iterations1 Iterations1 iterations1 iterations_1 (lin)

Minimum increment: 1

Recommended increment: 1

Iterations2Iterations2Iterations2iterations2iterations_2 (input_control)  integer HTupleUnion[int, str]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)

Number of iterations for the sequential thinning with the element 'e' of the Golay alphabet.

Default: 1

Suggested values: 'maximal'"maximal""maximal""maximal""maximal", 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 15, 17, 20, 30, 40, 50

Value range: 0 ≤ Iterations2 Iterations2 Iterations2 iterations2 iterations_2 (lin)

Minimum increment: 1

Recommended increment: 1

Complexity

Let F be the area of the input region. Then the runtime complexity for one region is

Result

morph_skizmorph_skizMorphSkizMorphSkizmorph_skiz returns 2 ( H_MSG_TRUE) if all parameters are correct. The behavior in case of empty or no input region can be set via:

Otherwise, an exception is raised.

Possible Predecessors

thresholdthresholdThresholdThresholdthreshold, regiongrowingregiongrowingRegiongrowingRegiongrowingregiongrowing, connectionconnectionConnectionConnectionconnection, union1union1Union1Union1union1, watershedswatershedsWatershedsWatershedswatersheds, class_ndim_normclass_ndim_normClassNdimNormClassNdimNormclass_ndim_norm

Possible Successors

pruningpruningPruningPruningpruning, reduce_domainreduce_domainReduceDomainReduceDomainreduce_domain, select_shapeselect_shapeSelectShapeSelectShapeselect_shape, area_centerarea_centerAreaCenterAreaCenterarea_center, connectionconnectionConnectionConnectionconnection, background_segbackground_segBackgroundSegBackgroundSegbackground_seg, complementcomplementComplementComplementcomplement

Alternatives

skeletonskeletonSkeletonSkeletonskeleton, thinning_seqthinning_seqThinningSeqThinningSeqthinning_seq, morph_skeletonmorph_skeletonMorphSkeletonMorphSkeletonmorph_skeleton, interjacentinterjacentInterjacentInterjacentinterjacent

See also

thinningthinningThinningThinningthinning, hit_or_miss_seqhit_or_miss_seqHitOrMissSeqHitOrMissSeqhit_or_miss_seq, differencedifferenceDifferenceDifferencedifference

Module

Foundation