HALCON Reference Manual 10.0.2
Table of Contents / Morphology / Region ClassesClassesClasses | | | Operators

closing_golayclosing_golayclosing_golayClosingGolayClosingGolay (Operator)

Name

closing_golayclosing_golayclosing_golayClosingGolayClosingGolay — Close a region with an element from the Golay alphabet.

Signature

closing_golay(Region : RegionClosing : GolayElement, Rotation : )

Herror closing_golay(const Hobject Region, Hobject* RegionClosing, const char* GolayElement, const Hlong Rotation)

Herror T_closing_golay(const Hobject Region, Hobject* RegionClosing, const Htuple GolayElement, const Htuple Rotation)

Herror closing_golay(Hobject Region, Hobject* RegionClosing, const HTuple& GolayElement, const HTuple& Rotation)

HRegion HRegion::ClosingGolay(const HTuple& GolayElement, const HTuple& Rotation) const

HRegionArray HRegionArray::ClosingGolay(const HTuple& GolayElement, const HTuple& Rotation) const

void HOperatorSetX.ClosingGolay(
[in] IHUntypedObjectX* Region, [out] IHUntypedObjectX*RegionClosing, [in] VARIANT GolayElement, [in] VARIANT Rotation)

IHRegionX* HRegionX.ClosingGolay(
[in] BSTR GolayElement, [in] Hlong Rotation)

static void HOperatorSet.ClosingGolay(HObject region, out HObject regionClosing, HTuple golayElement, HTuple rotation)

HRegion HRegion.ClosingGolay(string golayElement, int rotation)

Description

closing_golayclosing_golayclosing_golayClosingGolayClosingGolay is defined as a Minkowski addition followed by a Minkowski subtraction. First the Minkowski addition of the input region (RegionRegionRegionRegionregion) with the structuring element from the Golay alphabet defined by GolayElementGolayElementGolayElementGolayElementgolayElement and RotationRotationRotationRotationrotation is computed. Then the Minkowski subtraction of the result and the structuring element rotated by 180 degrees is performed.

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_elementsgolay_elementsGolayElementsGolayElements.

closing_golayclosing_golayclosing_golayClosingGolayClosingGolay serves to close holes smaller than the structuring element, and to smooth regions' boundaries.

Attention

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.

Parallelization

Parameters

RegionRegionRegionRegionregion (input_object)  region(-array) objectHRegionHRegionHRegionXHobject

Regions to be closed.

RegionClosingRegionClosingRegionClosingRegionClosingregionClosing (output_object)  region(-array) objectHRegionHRegionHRegionXHobject *

Closed regions.

GolayElementGolayElementGolayElementGolayElementgolayElement (input_control)  string HTupleHTupleVARIANTHtuple (string) (string) (char*) (BSTR) (char*)

Structuring element from the Golay alphabet.

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

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

RotationRotationRotationRotationrotation (input_control)  integer HTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (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

Complexity

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

       O(6 * sqrt(F)) .

Result

closing_golayclosing_golayclosing_golayClosingGolayClosingGolay 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_normclass_ndim_normClassNdimNormClassNdimNorm

Possible Successors

reduce_domainreduce_domainreduce_domainReduceDomainReduceDomain, select_shapeselect_shapeselect_shapeSelectShapeSelectShape, area_centerarea_centerarea_centerAreaCenterAreaCenter, connectionconnectionconnectionConnectionConnection

Alternatives

closingclosingclosingClosingClosing

See also

erosion_golayerosion_golayerosion_golayErosionGolayErosionGolay, dilation_golaydilation_golaydilation_golayDilationGolayDilationGolay, opening_golayopening_golayopening_golayOpeningGolayOpeningGolay, hit_or_miss_golayhit_or_miss_golayhit_or_miss_golayHitOrMissGolayHitOrMissGolay, thinning_golaythinning_golaythinning_golayThinningGolayThinningGolay, thickening_golaythickening_golaythickening_golayThickeningGolayThickeningGolay, golay_elementsgolay_elementsgolay_elementsGolayElementsGolayElements

Module

Foundation


Table of Contents / Morphology / Region ClassesClassesClasses | | | Operators
HALCON Reference Manual 10.0.2 Copyright © 1996-2011 MVTec Software GmbH