thickening thickening Thickening Thickening thickening (Operator)
Name
thickening thickening Thickening Thickening thickening
— Add the result of a hit-or-miss operation to a region.
Warning
thickening thickening Thickening Thickening thickening
is obsolete and is only provided for
reasons of backward compatibility.
Signature
Herror thickening (const Hobject Region , const Hobject StructElement1 , const Hobject StructElement2 , Hobject* RegionThick , const Hlong Row , const Hlong Column , const Hlong Iterations )
Herror T_thickening (const Hobject Region , const Hobject StructElement1 , const Hobject StructElement2 , Hobject* RegionThick , const Htuple Row , const Htuple Column , const Htuple Iterations )
void Thickening (const HObject& Region , const HObject& StructElement1 , const HObject& StructElement2 , HObject* RegionThick , const HTuple& Row , const HTuple& Column , const HTuple& Iterations )
HRegion HRegion ::Thickening (const HRegion& StructElement1 , const HRegion& StructElement2 , Hlong Row , Hlong Column , Hlong Iterations ) const
static void HOperatorSet .Thickening (HObject region , HObject structElement1 , HObject structElement2 , out HObject regionThick , HTuple row , HTuple column , HTuple iterations )
HRegion HRegion .Thickening (HRegion structElement1 , HRegion structElement2 , int row , int column , int iterations )
Description
thickening thickening Thickening Thickening thickening
performs a thickening of the input regions
using morphological operations. The operator first applies a
hit-or-miss-transformation to Region Region Region region region
(cf.
hit_or_miss hit_or_miss HitOrMiss HitOrMiss hit_or_miss
), and then adds the detected points to the
input region. The parameter Iterations Iterations Iterations iterations iterations
determines the
number of iterations performed.
For the choice of the structuring elements StructElement1 StructElement1 StructElement1 structElement1 struct_element_1
and StructElement2 StructElement2 StructElement2 structElement2 struct_element_2
, as well as for Row Row Row row row
and
Column Column Column column column
, the same restrictions described under
hit_or_miss hit_or_miss HitOrMiss HitOrMiss hit_or_miss
apply.
The structuring elements (StructElement1 StructElement1 StructElement1 structElement1 struct_element_1
and
StructElement2 StructElement2 StructElement2 structElement2 struct_element_2
) can be generated by calling
golay_elements golay_elements GolayElements GolayElements golay_elements
, for example.
Attention
If the reference point is contained in StructElement1 StructElement1 StructElement1 structElement1 struct_element_1
the
input region remains unchanged.
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 Region Region region region
(input_object) region(-array) →
object HRegion HObject HObject Hobject
Regions to be processed.
StructElement1 StructElement1 StructElement1 structElement1 struct_element_1
(input_object) region →
object HRegion HObject HObject Hobject
Structuring element for the foreground.
StructElement2 StructElement2 StructElement2 structElement2 struct_element_2
(input_object) region →
object HRegion HObject HObject Hobject
Structuring element for the background.
RegionThick RegionThick RegionThick regionThick region_thick
(output_object) region(-array) →
object HRegion HObject HObject Hobject *
Result of the thickening operator.
Row Row Row row row
(input_control) point.y →
HTuple int HTuple Htuple (integer) (int / long) (Hlong ) (Hlong )
Row coordinate of the reference point.
Default:
16
Suggested values:
0, 2, 4, 8, 16, 32, 128
Value range:
0
≤
Row
Row
Row
row
row
≤
511
(lin)
Minimum increment:
1
Recommended increment:
1
Column Column Column column column
(input_control) point.x →
HTuple int HTuple Htuple (integer) (int / long) (Hlong ) (Hlong )
Column coordinate of the reference point.
Default:
16
Suggested values:
0, 2, 4, 8, 16, 32, 128
Value range:
0
≤
Column
Column
Column
column
column
≤
511
(lin)
Minimum increment:
1
Recommended increment:
1
Iterations Iterations Iterations iterations iterations
(input_control) integer →
HTuple int HTuple Htuple (integer) (int / long) (Hlong ) (Hlong )
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
Iterations
Iterations
iterations
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 thickening Thickening Thickening 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>) set_system("no_object_result",<RegionResult>) SetSystem("no_object_result",<RegionResult>) SetSystem("no_object_result",<RegionResult>) set_system("no_object_result",<RegionResult>)
empty region:
set_system('empty_region_result',<RegionResult>) set_system("empty_region_result",<RegionResult>) SetSystem("empty_region_result",<RegionResult>) SetSystem("empty_region_result",<RegionResult>) set_system("empty_region_result",<RegionResult>)
Otherwise, an exception is raised.
Possible Predecessors
golay_elements golay_elements GolayElements GolayElements golay_elements
,
threshold threshold Threshold Threshold threshold
,
regiongrowing regiongrowing Regiongrowing Regiongrowing regiongrowing
,
connection connection Connection Connection connection
,
union1 union1 Union1 Union1 union1
,
watersheds watersheds Watersheds Watersheds watersheds
,
class_ndim_norm class_ndim_norm ClassNdimNorm ClassNdimNorm class_ndim_norm
,
gen_circle gen_circle GenCircle GenCircle gen_circle
,
gen_ellipse gen_ellipse GenEllipse GenEllipse gen_ellipse
,
gen_rectangle1 gen_rectangle1 GenRectangle1 GenRectangle1 gen_rectangle1
,
gen_rectangle2 gen_rectangle2 GenRectangle2 GenRectangle2 gen_rectangle2
,
draw_region draw_region DrawRegion DrawRegion draw_region
,
gen_region_points gen_region_points GenRegionPoints GenRegionPoints gen_region_points
,
gen_struct_elements gen_struct_elements GenStructElements GenStructElements gen_struct_elements
,
gen_region_polygon_filled gen_region_polygon_filled GenRegionPolygonFilled GenRegionPolygonFilled gen_region_polygon_filled
Possible Successors
reduce_domain reduce_domain ReduceDomain ReduceDomain reduce_domain
,
select_shape select_shape SelectShape SelectShape select_shape
,
area_center area_center AreaCenter AreaCenter area_center
,
connection connection Connection Connection connection
Alternatives
thickening_golay thickening_golay ThickeningGolay ThickeningGolay thickening_golay
,
thickening_seq thickening_seq ThickeningSeq ThickeningSeq thickening_seq
See also
hit_or_miss hit_or_miss HitOrMiss HitOrMiss hit_or_miss
Module
Foundation