set_hsiT_set_hsiSetHsiSetHsi (Operator)


set_hsiT_set_hsiSetHsiSetHsi — Define output colors (HSI-coded).


set_hsi( : : WindowHandle, Hue, Saturation, Intensity : )

Herror T_set_hsi(const Htuple WindowHandle, const Htuple Hue, const Htuple Saturation, const Htuple Intensity)

void SetHsi(const HTuple& WindowHandle, const HTuple& Hue, const HTuple& Saturation, const HTuple& Intensity)

void HWindow::SetHsi(const HTuple& Hue, const HTuple& Saturation, const HTuple& Intensity) const

void HWindow::SetHsi(Hlong Hue, Hlong Saturation, Hlong Intensity) const

static void HOperatorSet.SetHsi(HTuple windowHandle, HTuple hue, HTuple saturation, HTuple intensity)

void HWindow.SetHsi(HTuple hue, HTuple saturation, HTuple intensity)

void HWindow.SetHsi(int hue, int saturation, int intensity)


set_hsiset_hsiSetHsiSetHsiSetHsi sets the region output color(s)/grayvalue(s) for the valid window. Colors are passed as HueHueHueHuehue, SaturationSaturationSaturationSaturationsaturation, and IntensityIntensityIntensityIntensityintensity. Transformation from HSI to RGB is done with:

The value range is clipped to 0 to 255.

If only one combination is passed, all output will take place in that color. If a tuple of colors is passed, the output color of regions and geometric objects is modulo to the number of colors. HALCON always begins output with the first color passed. Note, that the number of output colors depends on the number of objects that are displayed in one operator call. If only single objects are displayed, they always appear in the first color, even if the consist of more than one connected components.

Selected colors are used until the next call of set_colorset_colorSetColorSetColorSetColor,set_rgbset_rgbSetRgbSetRgbSetRgb or set_grayset_graySetGraySetGraySetGray. Colors are relevant to windows, i.e. only the colors of the valid window can be set. Region output colors are used by operators like disp_regiondisp_regionDispRegionDispRegionDispRegion, disp_linedisp_lineDispLineDispLineDispLine, disp_rectangle1disp_rectangle1DispRectangle1DispRectangle1DispRectangle1, disp_rectangle2disp_rectangle2DispRectangle2DispRectangle2DispRectangle2, disp_arrowdisp_arrowDispArrowDispArrowDispArrow, etc. It is also used by operators with gray value output in certain output modes (e.g. '3d_plot_lines','histogram', 'contourline', etc. See set_paintset_paintSetPaintSetPaintSetPaint).


The colors are internally stored as RGB triples. Some HSI triples can not be represented by a valid RGB triple (i.e. in the range 0..255). In this case the nearest color which can be represented is used instead.

Execution Information


WindowHandleWindowHandleWindowHandleWindowHandlewindowHandle (input_control)  window HWindow, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Window handle.

HueHueHueHuehue (input_control)  integer(-array) HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Hue for region output.

Default value: 30

Typical range of values: 0 ≤ Hue Hue Hue Hue hue ≤ 255

Restriction: 0 <= Hue && Hue <= 255

SaturationSaturationSaturationSaturationsaturation (input_control)  integer(-array) HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Saturation for region output.

Default value: 255

Typical range of values: 0 ≤ Saturation Saturation Saturation Saturation saturation ≤ 255

Restriction: 0 <= Saturation && Saturation <= 255

IntensityIntensityIntensityIntensityintensity (input_control)  integer(-array) HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Intensity for region output.

Default value: 84

Typical range of values: 0 ≤ Intensity Intensity Intensity Intensity intensity ≤ 255

Restriction: 0 <= Intensity && Intensity <= 255


set_hsiset_hsiSetHsiSetHsiSetHsi returns 2 (H_MSG_TRUE) if the window is valid and the output colors are displayable. Otherwise an exception is raised.

Possible Predecessors


Possible Successors


See also

get_hsiget_hsiGetHsiGetHsiGetHsi, trans_from_rgbtrans_from_rgbTransFromRgbTransFromRgbTransFromRgb, trans_to_rgbtrans_to_rgbTransToRgbTransToRgbTransToRgb, disp_regiondisp_regionDispRegionDispRegionDispRegion