thickening🔗
Short description🔗
thickening — Add the result of a hit-or-miss operation to a region.
Warning🔗
thickening is obsolete and is only provided for
reasons of backward compatibility.
Signature🔗
thickening( region Region, region StructElement1, region StructElement2, out region RegionThick, point.y Row, point.x Column, integer Iterations )
Description🔗
thickening performs a thickening of the input regions
using morphological operations. The operator first applies a
hit-or-miss-transformation to Region (cf.
hit_or_miss), and then adds the detected points to the
input region. The parameter Iterations determines the
number of iterations performed.
For the choice of the structuring elements StructElement1
and StructElement2, as well as for Row and
Column, the same restrictions described under
hit_or_miss apply.
The structuring elements (StructElement1 and
StructElement2) can be generated by calling
golay_elements, for example.
Attention🔗
If the reference point is contained in StructElement1 the
input region remains unchanged.
Execution information🔗
Execution information
-
Multithreading type: reentrant (runs in parallel with non-exclusive operators).
-
Multithreading scope: global (may be called from any thread).
-
Automatically parallelized on tuple level.
Parameters🔗
Region (input_object) region(-array) → object
Regions to be processed.
StructElement1 (input_object) region → object
Structuring element for the foreground.
StructElement2 (input_object) region → object
Structuring element for the background.
RegionThick (output_object) region(-array) → object
Result of the thickening operator.
Row (input_control) point.y → (integer)
Row coordinate of the reference point.
Default: 16
Suggested values: 0, 2, 4, 8, 16, 32, 128
Value range: 0 ≤ Row ≤ 511 (lin)
Minimum increment: 1
Recommended increment: 1
Column (input_control) point.x → (integer)
Column coordinate of the reference point.
Default: 16
Suggested values: 0, 2, 4, 8, 16, 32, 128
Value range: 0 ≤ Column ≤ 511 (lin)
Minimum increment: 1
Recommended increment: 1
Iterations (input_control) integer → (integer)
Number of iterations.
Default: 1
Suggested values: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 15, 17, 20, 30, 40, 50, 70, 100, 200, 400
Value range: 1 ≤ Iterations (lin)
Minimum increment: 1
Recommended increment: 1
Complexity🔗
Let \(F\) be the area of an input region, \(F1\) the area of the structuring element 1, and \(F2\) the area of the structuring element 2. Then the runtime complexity for one object is:
Result🔗
thickening returns 2 (H_MSG_TRUE) if all parameters are correct.
The behavior in case of empty or no input region can be set via:
-
no region:
set_system('no_object_result',<RegionResult>) -
empty region:
set_system('empty_region_result',<RegionResult>)
Otherwise, an exception is raised.
Combinations with other operators🔗
Combinations
Possible predecessors
golay_elements, threshold, regiongrowing, connection, union1, watersheds, class_ndim_norm, gen_circle, gen_ellipse, gen_rectangle1, gen_rectangle2, draw_region, gen_region_points, gen_struct_elements, gen_region_polygon_filled
Possible successors
reduce_domain, select_shape, area_center, connection
Alternatives
thickening_golay, thickening_seq
See also
Module🔗
Foundation