YCCToRGB
Converts a YCC image to the RGB color model.
Syntax
IppStatus ippiYCCToRGB_<mod>(const Ipp<datatype>*
pSrc
, int
srcStep
, Ipp<datatype>*
pDst
, int
dstStep
, IppiSize
roiSize
);
Supported values for
mod
:8u_C3R | 16u_C3R | 16s_C3R | 32f_C3R |
8u_AC4R | 16u_AC4R | 16s_AC4R | 32f_AC4R |
Include Files
ippcc.h
Domain Dependencies
Headers:
ippcore.h
,
ippvm.h
,
ipps.h
,
ippi.h
Libraries:
ippcore.lib
,
ippvm.lib
,
ipps.lib
,
ippi.lib
Parameters
- pSrc
- Pointer to the source image ROI.
- srcStep
- Distance in bytes between starts of consecutive lines in the source image.
- pDst
- Pointer to the destination image ROI.
- dstStep
- Distance in bytes between starts of consecutive lines in the destination image.
- roiSize
- Size of the source and destination ROI in pixels.
Description
This function operates with ROI (see Regions of Interest in Intel IPP).
This function converts the
PhotoY'C'C'
image pSrc
to the R'B'G'
image pDst
. The function ippiYCCToRGB
first restores normal luminance and chrominance data as:Y' = 1.3584 * Y'
C1' = 2.2179 * (C1' - 156./255.)
C2' = 1.8215 * (C2' - 137./255.)
The equations above are given on the assumption that source
Y, C1
, and C2
values are normalized to the range [0..1]. In case of the floating-po int
data type, the input YCC values must already be in the range [0..1]. For integer data types, normalization is done by the conversion function internally.After that, YCC data are transformed into RGB format according to the following basic equations:
R' = Y' + C2'
G' = Y' - 0.194*C1' - 0.509*C2'
B' = Y' + C1'
In case of integer function flavors, the computed
R'B'G'
values are then scaled to the full range of the destination data type (see Table “Image Data Types and Ranges”
).Return Values
- ippStsNoErr
- Indicates no error. Any other value indicates an error.
- ippStsNullPtrErr
- Indicates an error condition ifpSrcorpDstisNULL.
- ippStsSizeErr
- Indicates an error condition ifroiSizehas a field with a zero or negative value.