hamming_change_regionhamming_change_regionHammingChangeRegionHammingChangeRegion (Operator)

Name

hamming_change_regionhamming_change_regionHammingChangeRegionHammingChangeRegion — Generate a region having a given Hamming distance.

Warning

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

Signature

hamming_change_region(InputRegion : OutputRegion : Width, Height, Distance : )

Herror hamming_change_region(const Hobject InputRegion, Hobject* OutputRegion, const Hlong Width, const Hlong Height, const Hlong Distance)

Herror T_hamming_change_region(const Hobject InputRegion, Hobject* OutputRegion, const Htuple Width, const Htuple Height, const Htuple Distance)

void HammingChangeRegion(const HObject& InputRegion, HObject* OutputRegion, const HTuple& Width, const HTuple& Height, const HTuple& Distance)

HRegion HRegion::HammingChangeRegion(Hlong Width, Hlong Height, Hlong Distance) const

static void HOperatorSet.HammingChangeRegion(HObject inputRegion, out HObject outputRegion, HTuple width, HTuple height, HTuple distance)

HRegion HRegion.HammingChangeRegion(int width, int height, int distance)

Description

hamming_change_regionhamming_change_regionHammingChangeRegionHammingChangeRegionHammingChangeRegion changes the region in the left upper part of the image given by WidthWidthWidthWidthwidth and HeightHeightHeightHeightheight such that the resulting regions have a Hamming distance of DistanceDistanceDistanceDistancedistance to the input regions. This is done by adding or removing DistanceDistanceDistanceDistancedistance points from the input region.

Attention

If WidthWidthWidthWidthwidth and HeightHeightHeightHeightheight are chosen too large the resulting region requires a lot of memory.

Execution Information

Parameters

InputRegionInputRegionInputRegionInputRegioninputRegion (input_object)  region(-array) objectHRegionHRegionHobject

Region to be modified.

OutputRegionOutputRegionOutputRegionOutputRegionoutputRegion (output_object)  region(-array) objectHRegionHRegionHobject *

Regions having the required Hamming distance.

WidthWidthWidthWidthwidth (input_control)  extent.x HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Width of the region to be changed.

Default value: 100

Suggested values: 64, 128, 256, 512

Typical range of values: 1 ≤ Width Width Width Width width ≤ 512 (lin)

Minimum increment: 1

Recommended increment: 10

Restriction: Width > 0

HeightHeightHeightHeightheight (input_control)  extent.y HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Height of the region to be changed.

Default value: 100

Suggested values: 64, 128, 256, 512

Typical range of values: 1 ≤ Height Height Height Height height ≤ 512 (lin)

Minimum increment: 1

Recommended increment: 10

Restriction: Height > 0

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

Hamming distance between the old and new regions.

Default value: 1000

Suggested values: 100, 500, 1000, 5000, 10000

Typical range of values: 0 ≤ Distance Distance Distance Distance distance ≤ 10000 (lin)

Minimum increment: 1

Recommended increment: 10

Restriction: Distance >= 0 && Distance < Width * Height

Complexity

Memory requirement of the generated region (worst case): O(2 * WidthWidthWidthWidthwidth * HeightHeightHeightHeightheight).

Result

hamming_change_regionhamming_change_regionHammingChangeRegionHammingChangeRegionHammingChangeRegion returns 2 (H_MSG_TRUE) if all parameters are correct. The behavior in case of empty input (no regions given) can be set via set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>). If necessary, an exception is raised.

Possible Predecessors

connectionconnectionConnectionConnectionConnection, regiongrowingregiongrowingRegiongrowingRegiongrowingRegiongrowing, pouringpouringPouringPouringPouring, class_ndim_normclass_ndim_normClassNdimNormClassNdimNormClassNdimNorm

Possible Successors

select_shapeselect_shapeSelectShapeSelectShapeSelectShape

See also

hamming_distancehamming_distanceHammingDistanceHammingDistanceHammingDistance

Module

Foundation