region_to_labelregion_to_labelRegionToLabelRegionToLabelregion_to_label (Operator)
Name
region_to_labelregion_to_labelRegionToLabelRegionToLabelregion_to_label
— Convert regions to a label image.
Signature
void RegionToLabel(const HObject& Region, HObject* ImageLabel, const HTuple& Type, const HTuple& Width, const HTuple& Height)
HImage HRegion::RegionToLabel(const HString& Type, Hlong Width, Hlong Height) const
HImage HRegion::RegionToLabel(const char* Type, Hlong Width, Hlong Height) const
HImage HRegion::RegionToLabel(const wchar_t* Type, Hlong Width, Hlong Height) const
(Windows only)
Description
region_to_labelregion_to_labelRegionToLabelRegionToLabelRegionToLabelregion_to_label
converts the input regions into a label
image according to their index (1..n), i.e., the first region is
painted with the gray value 1, the second the gray value 2, etc.
Only positive gray values are used. For 'byte'"byte""byte""byte""byte""byte"-images the
index is entered modulo 256.
Regions larger than the generated image are clipped appropriately.
If regions overlap the regions with the higher image are entered
(i.e., they are painted in the order in which they are contained in
the input regions). If so desired, the regions can be made
non-overlapping by calling expand_regionexpand_regionExpandRegionExpandRegionExpandRegionexpand_region
.
The background, i.e., the area not covered by any regions, is set to
0. This can be used to test in which image range no region is present.
Execution Information
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
Parameters
RegionRegionRegionRegionregionregion
(input_object) region(-array) →
objectHRegionHObjectHRegionHobject
Regions to be converted.
ImageLabelImageLabelImageLabelImageLabelimageLabelimage_label
(output_object) image →
objectHImageHObjectHImageHobject * (byte / int2 / int4)
Result image of dimension Width * Height
containing the converted regions.
TypeTypeTypeTypetypetype
(input_control) string →
HTuplestrHTupleHtuple (string) (string) (HString) (char*)
Pixel type of the result image.
Default value:
'int2'
"int2"
"int2"
"int2"
"int2"
"int2"
List of values: 'byte'"byte""byte""byte""byte""byte", 'int2'"int2""int2""int2""int2""int2", 'int4'"int4""int4""int4""int4""int4", 'int8'"int8""int8""int8""int8""int8"
WidthWidthWidthWidthwidthwidth
(input_control) extent.y →
HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Width of the image to be generated.
Default value: 512
Suggested values: 64, 128, 256, 512, 1024
Typical range of values: 1
≤
Width
Width
Width
Width
width
width
≤
1024
(lin)
Minimum increment: 1
Recommended increment: 16
Restriction: Width >= 1
HeightHeightHeightHeightheightheight
(input_control) extent.x →
HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Height of the image to be generated.
Default value: 512
Suggested values: 64, 128, 256, 512, 1024
Typical range of values: 1
≤
Height
Height
Height
Height
height
height
≤
1024
(lin)
Minimum increment: 1
Recommended increment: 16
Restriction: Height >= 1
Complexity
O(2*HeightHeightHeightHeightheightheight
*WidthWidthWidthWidthwidthwidth
).
Result
region_to_labelregion_to_labelRegionToLabelRegionToLabelRegionToLabelregion_to_label
always returns 2 (H_MSG_TRUE). 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>)set_system("no_object_result",<Result>)
and the behavior in case of an empty input region via
set_system('empty_region_result',<Result>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)set_system("empty_region_result",<Result>)
.
If necessary, an exception is raised.
Possible Predecessors
thresholdthresholdThresholdThresholdThresholdthreshold
,
regiongrowingregiongrowingRegiongrowingRegiongrowingRegiongrowingregiongrowing
,
connectionconnectionConnectionConnectionConnectionconnection
,
expand_regionexpand_regionExpandRegionExpandRegionExpandRegionexpand_region
Possible Successors
get_grayvalget_grayvalGetGrayvalGetGrayvalGetGrayvalget_grayval
,
get_image_pointer1get_image_pointer1GetImagePointer1GetImagePointer1GetImagePointer1get_image_pointer1
Alternatives
region_to_binregion_to_binRegionToBinRegionToBinRegionToBinregion_to_bin
,
paint_regionpaint_regionPaintRegionPaintRegionPaintRegionpaint_region
See also
label_to_regionlabel_to_regionLabelToRegionLabelToRegionLabelToRegionlabel_to_region
Module
Foundation