Skip to content

dilation_seqDilationSeqDilationSeqdilation_seqdilation_seqπŸ”—

Short descriptionπŸ”—

dilation_seqDilationSeqDilationSeqdilation_seqdilation_seq β€” Dilate a region sequentially.

WarningπŸ”—

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

SignatureπŸ”—

dilation_seq( region Region, out region RegionDilation, string GolayElement, integer Iterations )void DilationSeq( const HObject& Region, HObject* RegionDilation, const HTuple& GolayElement, const HTuple& Iterations )static void HOperatorSet.DilationSeq( HObject region, out HObject regionDilation, HTuple golayElement, HTuple iterations )def dilation_seq( region: HObject, golay_element: str, iterations: int ) -> HObject

Herror dilation_seq( const Hobject Region, Hobject* RegionDilation, const char* GolayElement, const Hlong Iterations )

Herror T_dilation_seq( const Hobject Region, Hobject* RegionDilation, const Htuple GolayElement, const Htuple Iterations )

HRegion HRegion::DilationSeq( const HString& GolayElement, Hlong Iterations ) const

HRegion HRegion::DilationSeq( const char* GolayElement, Hlong Iterations ) const

HRegion HRegion::DilationSeq( const wchar_t* GolayElement, Hlong Iterations ) const (Windows only)

HRegion HRegion.DilationSeq( string golayElement, int iterations )

DescriptionπŸ”—

dilation_seqDilationSeq computes the sequential dilation of the input region Regionregionregion with the selected structuring element GolayElementgolayElementgolay_element from the Golay alphabet. This is done by executing the operator dilation_golayDilationGolay with all rotations of the structuring element Iterationsiterationsiterations times. The following structuring elements can be selected:

β€˜l’, β€˜d’, β€˜c’, β€˜f’, β€˜h’, β€˜k’.

In order to compute the skeleton of a region, usually the elements β€˜l’ and β€˜m’ are used. Only the β€œforeground elements” (even rotation numbers) are used. The elements β€˜i’ and β€˜e’ result in unchanged output regions. The elements β€˜l’, β€˜m’ and β€˜f2’ are identical for the foreground. The Golay elements, together with all possible rotations, are described with the operator golay_elementsGolayElements.

Execution informationπŸ”—

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πŸ”—

Regionregionregion (input_object) region(-array) β†’ objectHObjectHRegionHObjectHobject

Regions to be dilated.

RegionDilationregionDilationregion_dilation (output_object) region(-array) β†’ objectHObjectHRegionHObjectHobject *

Dilated regions.

GolayElementgolayElementgolay_element (input_control) string β†’ (string)HTuple (HString)HTuple (string)strHtuple (char*)

Structuring element from the Golay alphabet.

Default: 'h'"h"
List of values: 'c', 'd', 'f', 'h', 'k', 'l'"c", "d", "f", "h", "k", "l"

Iterationsiterationsiterations (input_control) integer β†’ (integer)HTuple (Hlong)HTuple (int / long)intHtuple (Hlong)

Number of iterations.

Default: 11
Suggested values: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 15, 17, 20, 30, 40, 501, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 15, 17, 20, 30, 40, 50
Value range: 1 ≀ Iterations (lin)
Minimum increment: 1
Recommended increment: 1

ComplexityπŸ”—

Let \(F\) be the area of an input region. Then the runtime complexity for one region is:

\[\begin{eqnarray*} O(\textrm{Iterations} \cdot 20 \cdot \sqrt{F}) \enspace . \end{eqnarray*}\]

ResultπŸ”—

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

  • no region: set_system('no_object_result',<RegionResult>)

  • empty region: set_system('empty_region_result',<RegionResult>)

Otherwise, an exception is raised.

Combinations with other operatorsπŸ”—

Combinations

Possible predecessors

thresholdThreshold, regiongrowingRegiongrowing, connectionConnection, union1Union1, watershedsWatersheds, class_ndim_normClassNdimNorm

Possible successors

reduce_domainReduceDomain, select_shapeSelectShape, area_centerAreaCenter, connectionConnection

Alternatives

dilation1Dilation1, dilation2Dilation2, dilation_golayDilationGolay

See also

erosion_seqErosionSeq, hit_or_miss_seqHitOrMissSeq, thinning_seqThinningSeq

ModuleπŸ”—

Foundation