dilation_golaydilation_golayDilationGolayDilationGolay (Operator)


dilation_golaydilation_golayDilationGolayDilationGolay — Dilate a region with an element from the Golay alphabet.


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


dilation_golay(Region : RegionDilation : GolayElement, Iterations, Rotation : )

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

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

void DilationGolay(const HObject& Region, HObject* RegionDilation, const HTuple& GolayElement, const HTuple& Iterations, const HTuple& Rotation)

HRegion HRegion::DilationGolay(const HString& GolayElement, Hlong Iterations, Hlong Rotation) const

HRegion HRegion::DilationGolay(const char* GolayElement, Hlong Iterations, Hlong Rotation) const

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

static void HOperatorSet.DilationGolay(HObject region, out HObject regionDilation, HTuple golayElement, HTuple iterations, HTuple rotation)

HRegion HRegion.DilationGolay(string golayElement, int iterations, int rotation)


dilation_golaydilation_golayDilationGolayDilationGolayDilationGolay dilates a region with the selected element GolayElementGolayElementGolayElementGolayElementgolayElement from the Golay alphabet. The following structuring elements are available:

'l', 'm', 'd', 'c', 'e', 'i', 'f', 'f2', 'h', 'k'.

The rotation number RotationRotationRotationRotationrotation determines which rotation of the element should be used, and whether the foreground (even) or background version (odd) of the selected element should be used. The Golay elements, together with all possible rotations, are described with the operator golay_elementsgolay_elementsGolayElementsGolayElementsGolayElements. The operator works by shifting the structuring element over the region to be processed (RegionRegionRegionRegionregion). For all positions of the structuring element that intersect the region, the corresponding reference point (relative to the structuring element) is added to the output region. This means that the union of all translations of the structuring element within the region is computed.

The parameter IterationsIterationsIterationsIterationsiterations 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.


Not all values of RotationRotationRotationRotationrotation are valid for any Golay element. For some of the values of RotationRotationRotationRotationrotation, the resulting regions are identical to the input regions.

Execution Information


RegionRegionRegionRegionregion (input_object)  region(-array) objectHRegionHRegionHobject

Regions to be dilated.

RegionDilationRegionDilationRegionDilationRegionDilationregionDilation (output_object)  region(-array) objectHRegionHRegionHobject *

Dilated regions.

GolayElementGolayElementGolayElementGolayElementgolayElement (input_control)  string HTupleHTupleHtuple (string) (string) (HString) (char*)

Structuring element from the Golay alphabet.

Default value: 'h' "h" "h" "h" "h"

List of values: 'c'"c""c""c""c", 'd'"d""d""d""d", 'e'"e""e""e""e", 'f'"f""f""f""f", 'f2'"f2""f2""f2""f2", 'h'"h""h""h""h", 'i'"i""i""i""i", 'k'"k""k""k""k", 'l'"l""l""l""l", 'm'"m""m""m""m"

IterationsIterationsIterationsIterationsiterations (input_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Number of iterations.

Default value: 1

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

Typical range of values: 1 ≤ Iterations Iterations Iterations Iterations iterations (lin)

Minimum increment: 1

Recommended increment: 1

RotationRotationRotationRotationrotation (input_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Rotation of the Golay element. Depending on the element, not all rotations are valid.

Default value: 0

List of values: 0, 2, 4, 6, 8, 10, 12, 14, 1, 3, 5, 7, 9, 11, 13, 15


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


dilation_golaydilation_golayDilationGolayDilationGolayDilationGolay 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_normClassNdimNormClassNdimNormClassNdimNorm

Possible Successors

reduce_domainreduce_domainReduceDomainReduceDomainReduceDomain, select_shapeselect_shapeSelectShapeSelectShapeSelectShape, area_centerarea_centerAreaCenterAreaCenterAreaCenter, connectionconnectionConnectionConnectionConnection


dilation1dilation1Dilation1Dilation1Dilation1, dilation2dilation2Dilation2Dilation2Dilation2, dilation_seqdilation_seqDilationSeqDilationSeqDilationSeq

See also

erosion_golayerosion_golayErosionGolayErosionGolayErosionGolay, opening_golayopening_golayOpeningGolayOpeningGolayOpeningGolay, closing_golayclosing_golayClosingGolayClosingGolayClosingGolay, hit_or_miss_golayhit_or_miss_golayHitOrMissGolayHitOrMissGolayHitOrMissGolay, thinning_golaythinning_golayThinningGolayThinningGolayThinningGolay, thickening_golaythickening_golayThickeningGolayThickeningGolayThickeningGolay, golay_elementsgolay_elementsGolayElementsGolayElementsGolayElements