minkowski_add2 minkowski_add2 MinkowskiAdd2 MinkowskiAdd2 minkowski_add2 (Operator)
Name
minkowski_add2 minkowski_add2 MinkowskiAdd2 MinkowskiAdd2 minkowski_add2
— Dilate a region (using a reference point).
Signature
Herror minkowski_add2 (const Hobject Region , const Hobject StructElement , Hobject* RegionMinkAdd , const Hlong Row , const Hlong Column , const Hlong Iterations )
Herror T_minkowski_add2 (const Hobject Region , const Hobject StructElement , Hobject* RegionMinkAdd , const Htuple Row , const Htuple Column , const Htuple Iterations )
Description
minkowski_add2 minkowski_add2 MinkowskiAdd2 MinkowskiAdd2 MinkowskiAdd2 minkowski_add2
computes the Minkowski addition of the
input regions with a structuring element (StructElement StructElement StructElement StructElement structElement struct_element
)
having the reference point (Row Row Row Row row row
,Column Column Column Column column column
).
minkowski_add2 minkowski_add2 MinkowskiAdd2 MinkowskiAdd2 MinkowskiAdd2 minkowski_add2
has a similar effect as
minkowski_add1 minkowski_add1 MinkowskiAdd1 MinkowskiAdd1 MinkowskiAdd1 minkowski_add1
, the difference is that the reference
point of the structuring element can be chosen arbitrarily. The
parameter Iterations Iterations Iterations Iterations iterations iterations
determines the number of iterations
which are to be performed with the structuring element. The result
of iteration n-1 is used as input for iteration n.
An empty region is generated in case of an empty structuring
element.
Structuring elements (StructElement StructElement StructElement StructElement structElement struct_element
) can be generated
with operators such as gen_circle gen_circle GenCircle GenCircle GenCircle gen_circle
, gen_rectangle1 gen_rectangle1 GenRectangle1 GenRectangle1 GenRectangle1 gen_rectangle1
,
gen_rectangle2 gen_rectangle2 GenRectangle2 GenRectangle2 GenRectangle2 gen_rectangle2
, gen_ellipse gen_ellipse GenEllipse GenEllipse GenEllipse gen_ellipse
,
draw_region draw_region DrawRegion DrawRegion DrawRegion draw_region
, gen_region_polygon gen_region_polygon GenRegionPolygon GenRegionPolygon GenRegionPolygon gen_region_polygon
,
gen_region_points gen_region_points GenRegionPoints GenRegionPoints GenRegionPoints gen_region_points
, etc.
Attention
A Minkowski addition always results in enlarged regions.
Closely spaced regions which may touch or overlap as a result of the
dilation are still treated as two separate regions. If the desired
behavior is to merge them into one region, the operator
union1 union1 Union1 Union1 Union1 union1
has to be called first.
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 region
(input_object) region(-array) →
object HRegion HObject HRegion Hobject
Regions to be dilated.
StructElement StructElement StructElement StructElement structElement struct_element
(input_object) region →
object HRegion HObject HRegion Hobject
Structuring element.
RegionMinkAdd RegionMinkAdd RegionMinkAdd RegionMinkAdd regionMinkAdd region_mink_add
(output_object) region(-array) →
object HRegion HObject HRegion Hobject *
Dilated regions.
Row Row Row Row row row
(input_control) point.y →
HTuple int HTuple Htuple (integer) (int / long) (Hlong ) (Hlong )
Row coordinate of the reference point.
Value range:
1
≤
Row
Row
Row
Row
row
row
≤
511
(lin)
Minimum increment:
1
Recommended increment:
1
Column Column Column Column column column
(input_control) point.x →
HTuple int HTuple Htuple (integer) (int / long) (Hlong ) (Hlong )
Column coordinate of the reference point.
Value range:
1
≤
Column
Column
Column
Column
column
column
≤
511
(lin)
Minimum increment:
1
Recommended increment:
1
Iterations 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
Value range:
1
≤
Iterations
Iterations
Iterations
Iterations
iterations
iterations
(lin)
Minimum increment:
1
Recommended increment:
1
Complexity
Let F1 be the area of the input region, and F2 be the area of
the structuring element. Then the runtime complexity for one region
is:
Result
minkowski_add2 minkowski_add2 MinkowskiAdd2 MinkowskiAdd2 MinkowskiAdd2 minkowski_add2
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>) 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>) SetSystem("empty_region_result",<RegionResult>) set_system("empty_region_result",<RegionResult>)
Otherwise, an exception is raised.
Possible Predecessors
threshold threshold Threshold Threshold Threshold threshold
,
regiongrowing regiongrowing Regiongrowing Regiongrowing Regiongrowing regiongrowing
,
connection connection Connection Connection Connection connection
,
union1 union1 Union1 Union1 Union1 union1
,
watersheds watersheds Watersheds Watersheds Watersheds watersheds
,
class_ndim_norm class_ndim_norm ClassNdimNorm ClassNdimNorm ClassNdimNorm class_ndim_norm
,
gen_circle gen_circle GenCircle GenCircle GenCircle gen_circle
,
gen_ellipse gen_ellipse GenEllipse GenEllipse GenEllipse gen_ellipse
,
gen_rectangle1 gen_rectangle1 GenRectangle1 GenRectangle1 GenRectangle1 gen_rectangle1
,
gen_rectangle2 gen_rectangle2 GenRectangle2 GenRectangle2 GenRectangle2 gen_rectangle2
,
draw_region draw_region DrawRegion DrawRegion DrawRegion draw_region
,
gen_region_points gen_region_points GenRegionPoints GenRegionPoints GenRegionPoints gen_region_points
,
gen_region_polygon_filled gen_region_polygon_filled GenRegionPolygonFilled GenRegionPolygonFilled GenRegionPolygonFilled gen_region_polygon_filled
Possible Successors
reduce_domain reduce_domain ReduceDomain ReduceDomain ReduceDomain reduce_domain
,
select_shape select_shape SelectShape SelectShape SelectShape select_shape
,
area_center area_center AreaCenter AreaCenter AreaCenter area_center
,
connection connection Connection Connection Connection connection
Alternatives
minkowski_add1 minkowski_add1 MinkowskiAdd1 MinkowskiAdd1 MinkowskiAdd1 minkowski_add1
,
dilation1 dilation1 Dilation1 Dilation1 Dilation1 dilation1
See also
transpose_region transpose_region TransposeRegion TransposeRegion TransposeRegion transpose_region
Module
Foundation