Operator Reference

rgb3_to_grayrgb3_to_grayRgb3ToGrayRgb3ToGrayrgb3_to_gray (Operator)

rgb3_to_grayrgb3_to_grayRgb3ToGrayRgb3ToGrayrgb3_to_gray — Transform an RGB image to a gray scale image.

Signature

rgb3_to_gray(ImageRed, ImageGreen, ImageBlue : ImageGray : : )

Herror rgb3_to_gray(const Hobject ImageRed, const Hobject ImageGreen, const Hobject ImageBlue, Hobject* ImageGray)

Herror T_rgb3_to_gray(const Hobject ImageRed, const Hobject ImageGreen, const Hobject ImageBlue, Hobject* ImageGray)

void Rgb3ToGray(const HObject& ImageRed, const HObject& ImageGreen, const HObject& ImageBlue, HObject* ImageGray)

HImage HImage::Rgb3ToGray(const HImage& ImageGreen, const HImage& ImageBlue) const

def rgb3_to_gray(image_red: HObject, image_green: HObject, image_blue: HObject) -> HObject

Description

rgb3_to_grayrgb3_to_grayRgb3ToGrayRgb3ToGrayrgb3_to_gray transforms an RGB image into a gray scale image. The three channels of the RGB image are passed as three separate images. The image is transformed according to the following formula: gray = 0.299 * red + 0.587 * green + 0.114 * blue .

Execution Information

  • Supports OpenCL compute devices.
  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).
  • Multithreading scope: global (may be called from any thread).
  • Automatically parallelized on tuple level.
  • Automatically parallelized on domain level.

Parameters

ImageRedImageRedImageRedimageRedimage_red (input_object)  singlechannelimage(-array) objectHImageHObjectHObjectHobject (byte / int2 / uint2 / real)

Input image (red channel).

ImageGreenImageGreenImageGreenimageGreenimage_green (input_object)  singlechannelimage(-array) objectHImageHObjectHObjectHobject (byte / int2 / uint2 / real)

Input image (green channel).

ImageBlueImageBlueImageBlueimageBlueimage_blue (input_object)  singlechannelimage(-array) objectHImageHObjectHObjectHobject (byte / int2 / uint2 / real)

Input image (blue channel).

ImageGrayImageGrayImageGrayimageGrayimage_gray (output_object)  singlechannelimage(-array) objectHImageHObjectHObjectHobject * (byte / int2 / uint2 / real)

Gray scale image.

Example (HDevelop)

* Transformation from rgb to gray
read_image(Image,'patras')
dev_display(Image)
decompose3(Image, ImageR, ImageG, ImageB)
rgb3_to_gray(ImageR,ImageG,ImageB,GrayImage)
dev_display(GrayImage)

Example (C)

/* Transformation from rgb to gray  */
read_image(Image,"patras");
disp_color(Image,WindowHandle);
decompose3(Image,&Rimage,&Gimage,&Bimage);
rgb3_to_gray(Rimage,Gimage,Bimage,&GrayImage);
disp_image(GrayImage,WindowHandle);

Example (HDevelop)

* Transformation from rgb to gray
read_image(Image,'patras')
dev_display(Image)
decompose3(Image, ImageR, ImageG, ImageB)
rgb3_to_gray(ImageR,ImageG,ImageB,GrayImage)
dev_display(GrayImage)

Example (HDevelop)

* Transformation from rgb to gray
read_image(Image,'patras')
dev_display(Image)
decompose3(Image, ImageR, ImageG, ImageB)
rgb3_to_gray(ImageR,ImageG,ImageB,GrayImage)
dev_display(GrayImage)

Possible Predecessors

decompose3decompose3Decompose3Decompose3decompose3

Alternatives

rgb1_to_grayrgb1_to_grayRgb1ToGrayRgb1ToGrayrgb1_to_gray, trans_from_rgbtrans_from_rgbTransFromRgbTransFromRgbtrans_from_rgb

Module

Foundation