Color space processing

Overview

// enums

enum cv::cuda::AlphaCompTypes;
enum cv::cuda::DemosaicTypes;

// global functions

void
cv::cuda::alphaComp(
    InputArray img1,
    InputArray img2,
    OutputArray dst,
    int alpha_op,
    Stream& stream = Stream::Null()
    );

void
cv::cuda::cvtColor(
    InputArray src,
    OutputArray dst,
    int code,
    int dcn = 0,
    Stream& stream = Stream::Null()
    );

void
cv::cuda::demosaicing(
    InputArray src,
    OutputArray dst,
    int code,
    int dcn = -1,
    Stream& stream = Stream::Null()
    );

void
cv::cuda::gammaCorrection(
    InputArray src,
    OutputArray dst,
    bool forward = true,
    Stream& stream = Stream::Null()
    );

void
cv::cuda::swapChannels(
    InputOutputArray image,
    const int dstOrder [4],
    Stream& stream = Stream::Null()
    );

Detailed Documentation

Global Functions

void
cv::cuda::alphaComp(
    InputArray img1,
    InputArray img2,
    OutputArray dst,
    int alpha_op,
    Stream& stream = Stream::Null()
    )

Composites two images using alpha opacity values contained in each image.

  • An example demonstrating the use of alphaComp can be found at opencv_source_code/samples/gpu/alpha_comp.cpp

Parameters:

img1 First image. Supports CV_8UC4 , CV_16UC4 , CV_32SC4 and CV_32FC4 types.
img2 Second image. Must have the same size and the same type as img1 .
dst Destination image.
alpha_op

Flag specifying the alpha-blending operation:

  • ALPHA_OVER
  • ALPHA_IN
  • ALPHA_OUT
  • ALPHA_ATOP
  • ALPHA_XOR
  • ALPHA_PLUS
  • ALPHA_OVER_PREMUL
  • ALPHA_IN_PREMUL
  • ALPHA_OUT_PREMUL
  • ALPHA_ATOP_PREMUL
  • ALPHA_XOR_PREMUL
  • ALPHA_PLUS_PREMUL
  • ALPHA_PREMUL
stream Stream for the asynchronous version.
void
cv::cuda::cvtColor(
    InputArray src,
    OutputArray dst,
    int code,
    int dcn = 0,
    Stream& stream = Stream::Null()
    )

Converts an image from one color space to another.

3-channel color spaces (like HSV, XYZ, and so on) can be stored in a 4-channel image for better performance.

Parameters:

src Source image with CV_8U , CV_16U , or CV_32F depth and 1, 3, or 4 channels.
dst Destination image.
code Color space conversion code. For details, see cvtColor .
dcn Number of channels in the destination image. If the parameter is 0, the number of the channels is derived automatically from src and the code .
stream Stream for the asynchronous version.

See also:

cvtColor

void
cv::cuda::demosaicing(
    InputArray src,
    OutputArray dst,
    int code,
    int dcn = -1,
    Stream& stream = Stream::Null()
    )

Converts an image from Bayer pattern to RGB or grayscale.

The function can do the following transformations:

  • Demosaicing using bilinear interpolation

    > - COLOR_BayerBG2GRAY , COLOR_BayerGB2GRAY , COLOR_BayerRG2GRAY , COLOR_BayerGR2GRAY > - COLOR_BayerBG2BGR , COLOR_BayerGB2BGR , COLOR_BayerRG2BGR , COLOR_BayerGR2BGR

  • Demosaicing using Malvar-He-Cutler algorithm ([32])

    > - COLOR_BayerBG2GRAY_MHT , COLOR_BayerGB2GRAY_MHT , COLOR_BayerRG2GRAY_MHT , > COLOR_BayerGR2GRAY_MHT > - COLOR_BayerBG2BGR_MHT , COLOR_BayerGB2BGR_MHT , COLOR_BayerRG2BGR_MHT , > COLOR_BayerGR2BGR_MHT

Parameters:

src Source image (8-bit or 16-bit single channel).
dst Destination image.
code Color space conversion code (see the description below).
dcn Number of channels in the destination image. If the parameter is 0, the number of the channels is derived automatically from src and the code .
stream Stream for the asynchronous version.

See also:

cvtColor

void
cv::cuda::gammaCorrection(
    InputArray src,
    OutputArray dst,
    bool forward = true,
    Stream& stream = Stream::Null()
    )

Routines for correcting image color gamma.

Parameters:

src Source image (3- or 4-channel 8 bit).
dst Destination image.
forward true for forward gamma correction or false for inverse gamma correction.
stream Stream for the asynchronous version.
void
cv::cuda::swapChannels(
    InputOutputArray image,
    const int dstOrder [4],
    Stream& stream = Stream::Null()
    )

Exchanges the color channels of an image in-place.

The methods support arbitrary permutations of the original channels, including replication.

Parameters:

image Source image. Supports only CV_8UC4 type.
dstOrder Integer array describing how channel values are permutated. The n-th entry of the array contains the number of the channel that is stored in the n-th channel of the output image. E.g. Given an RGBA image, aDstOrder = [3,2,1,0] converts this to ABGR channel order.
stream Stream for the asynchronous version.