region_to_labelregion_to_labelRegionToLabelRegionToLabel (Operator)

Name

region_to_labelregion_to_labelRegionToLabelRegionToLabel — Convert regions to a label image.

Signature

region_to_label(Region : ImageLabel : Type, Width, Height : )

Herror region_to_label(const Hobject Region, Hobject* ImageLabel, const char* Type, const Hlong Width, const Hlong Height)

Herror T_region_to_label(const Hobject Region, Hobject* ImageLabel, const Htuple Type, const Htuple Width, const Htuple Height)

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)

static void HOperatorSet.RegionToLabel(HObject region, out HObject imageLabel, HTuple type, HTuple width, HTuple height)

HImage HRegion.RegionToLabel(string type, int width, int height)

Description

region_to_labelregion_to_labelRegionToLabelRegionToLabelRegionToLabel 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"-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_regionExpandRegionExpandRegionExpandRegion.

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

Parameters

RegionRegionRegionRegionregion (input_object)  region(-array) objectHRegionHRegionHobject

Regions to be converted.

ImageLabelImageLabelImageLabelImageLabelimageLabel (output_object)  image objectHImageHImageHobject * (byte / int2 / int4)

Result image of dimension Width * Height containing the converted regions.

TypeTypeTypeTypetype (input_control)  string HTupleHTupleHtuple (string) (string) (HString) (char*)

Pixel type of the result image.

Default value: 'int2' "int2" "int2" "int2" "int2"

List of values: 'byte'"byte""byte""byte""byte", 'int2'"int2""int2""int2""int2", 'int4'"int4""int4""int4""int4", 'int8'"int8""int8""int8""int8"

WidthWidthWidthWidthwidth (input_control)  extent.y HTupleHTupleHtuple (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 ≤ 1024 (lin)

Minimum increment: 1

Recommended increment: 16

Restriction: Width >= 1

HeightHeightHeightHeightheight (input_control)  extent.x HTupleHTupleHtuple (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 ≤ 1024 (lin)

Minimum increment: 1

Recommended increment: 16

Restriction: Height >= 1

Complexity

O(2*HeightHeightHeightHeightheight*WidthWidthWidthWidthwidth).

Result

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

Possible Predecessors

thresholdthresholdThresholdThresholdThreshold, regiongrowingregiongrowingRegiongrowingRegiongrowingRegiongrowing, connectionconnectionConnectionConnectionConnection, expand_regionexpand_regionExpandRegionExpandRegionExpandRegion

Possible Successors

get_grayvalget_grayvalGetGrayvalGetGrayvalGetGrayval, get_image_pointer1get_image_pointer1GetImagePointer1GetImagePointer1GetImagePointer1

Alternatives

region_to_binregion_to_binRegionToBinRegionToBinRegionToBin, paint_regionpaint_regionPaintRegionPaintRegionPaintRegion

See also

label_to_regionlabel_to_regionLabelToRegionLabelToRegionLabelToRegion

Module

Foundation