opening_golayopening_golayOpeningGolayOpeningGolayopening_golay (Operator)

Name

opening_golayopening_golayOpeningGolayOpeningGolayopening_golay — Open a region with an element from the Golay alphabet.

Warning

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

Signature

opening_golay(Region : RegionOpening : GolayElement, Rotation : )

Herror opening_golay(const Hobject Region, Hobject* RegionOpening, const char* GolayElement, const Hlong Rotation)

Herror T_opening_golay(const Hobject Region, Hobject* RegionOpening, const Htuple GolayElement, const Htuple Rotation)

void OpeningGolay(const HObject& Region, HObject* RegionOpening, const HTuple& GolayElement, const HTuple& Rotation)

HRegion HRegion::OpeningGolay(const HString& GolayElement, Hlong Rotation) const

HRegion HRegion::OpeningGolay(const char* GolayElement, Hlong Rotation) const

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

static void HOperatorSet.OpeningGolay(HObject region, out HObject regionOpening, HTuple golayElement, HTuple rotation)

HRegion HRegion.OpeningGolay(string golayElement, int rotation)

def opening_golay(region: HObject, golay_element: str, rotation: int) -> HObject

Description

opening_golayopening_golayOpeningGolayOpeningGolayOpeningGolayopening_golay is defined as a Minkowski subtraction followed by a Minkowski addition. First the Minkowski subtraction of the input region (RegionRegionRegionRegionregionregion) with the structuring element from the Golay alphabet defined by GolayElementGolayElementGolayElementGolayElementgolayElementgolay_element and RotationRotationRotationRotationrotationrotation is computed. Then the Minkowski addition 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 RotationRotationRotationRotationrotationrotation 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_elementsGolayElementsGolayElementsGolayElementsgolay_elements.

opening_golayopening_golayOpeningGolayOpeningGolayOpeningGolayopening_golay serves to eliminate regions smaller than the structuring element, and to smooth regions' boundaries.

Attention

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

Execution Information

Parameters

RegionRegionRegionRegionregionregion (input_object)  region(-array) objectHRegionHObjectHRegionHobject

Regions to be opened.

RegionOpeningRegionOpeningRegionOpeningRegionOpeningregionOpeningregion_opening (output_object)  region(-array) objectHRegionHObjectHRegionHobject *

Opened regions.

GolayElementGolayElementGolayElementGolayElementgolayElementgolay_element (input_control)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Structuring element from the Golay alphabet.

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

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

RotationRotationRotationRotationrotationrotation (input_control)  integer HTupleintHTupleHtuple (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

Complexity

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

Result

opening_golayopening_golayOpeningGolayOpeningGolayOpeningGolayopening_golay 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

thresholdthresholdThresholdThresholdThresholdthreshold, regiongrowingregiongrowingRegiongrowingRegiongrowingRegiongrowingregiongrowing, connectionconnectionConnectionConnectionConnectionconnection, union1union1Union1Union1Union1union1, watershedswatershedsWatershedsWatershedsWatershedswatersheds, class_ndim_normclass_ndim_normClassNdimNormClassNdimNormClassNdimNormclass_ndim_norm

Possible Successors

reduce_domainreduce_domainReduceDomainReduceDomainReduceDomainreduce_domain, select_shapeselect_shapeSelectShapeSelectShapeSelectShapeselect_shape, area_centerarea_centerAreaCenterAreaCenterAreaCenterarea_center, connectionconnectionConnectionConnectionConnectionconnection

Alternatives

opening_segopening_segOpeningSegOpeningSegOpeningSegopening_seg, openingopeningOpeningOpeningOpeningopening

See also

erosion_golayerosion_golayErosionGolayErosionGolayErosionGolayerosion_golay, dilation_golaydilation_golayDilationGolayDilationGolayDilationGolaydilation_golay, closing_golayclosing_golayClosingGolayClosingGolayClosingGolayclosing_golay, hit_or_miss_golayhit_or_miss_golayHitOrMissGolayHitOrMissGolayHitOrMissGolayhit_or_miss_golay, thinning_golaythinning_golayThinningGolayThinningGolayThinningGolaythinning_golay, thickening_golaythickening_golayThickeningGolayThickeningGolayThickeningGolaythickening_golay, golay_elementsgolay_elementsGolayElementsGolayElementsGolayElementsgolay_elements

Module

Foundation