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

Generate a region having a given Hamming distance.

hamming_change_region changes the region in the left upper part of the image given by Width and Height such that the resulting regions have a Hamming distance of Distance to the input regions. This is done by adding or removing Distance points from the input region.


Attention

If Width and Height are chosen too large the resulting region requires a lot of memory.


Parameters

InputRegion (input_object)
region(-array) -> object
Region to be modified.

OutputRegion (output_object)
region(-array) -> object
Regions having the required Hamming distance.

Width (input_control)
extent.x -> integer
Width of the region to be changed.
Default value: 100
Suggested values: 64, 128, 256, 512
Range of values: 1 <= Width <= 512 (lin)
Minimum increment: 1
Recommended increment: 10
Restriction: Width > 0

Height (input_control)
extent.y -> integer
Height of the region to be changed.
Default value: 100
Suggested values: 64, 128, 256, 512
Range of values: 1 <= Height <= 512 (lin)
Minimum increment: 1
Recommended increment: 10
Restriction: Height > 0

Distance (input_control)
integer -> integer
Hamming distance between the old and new regions.
Default value: 1000
Suggested values: 100, 500, 1000, 5000, 10000
Range of values: 0 <= 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 * Width * Height).


Result

hamming_change_region returns 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>:). If necessary, an exception is raised.


Possible Predecessors

connection, regiongrowing__, pouring, class_ndim1__


Possible Successors

select_shape


See also

hamming_distance



Copyright © 1996-1997 MVTec Software GmbH