Intel® Integrated Performance Primitives (Intel® IPP) Developer Guide and Reference
A newer version of this document is available. Customers should click here to go to the newest version.
ColorToGray
Converts an RGB image to gray scale using custom transform coefficients.
Syntax
IppStatus ippiColorToGray_<mod>(const Ipp<datatype>* pSrc, int srcStep, Ipp<datatype>* pDst, int dstStep, IppiSize roiSize, const Ipp32f coeffs[3]);
Supported values for mod:
8u_C3C1R | 16u_C3C1R | 16s_C3C1R | 32f_C3C1R |
8u_AC4C1R | 16u_AC4C1R | 16s_AC4C1R | 32f_AC4C1R |
IppStatus ippiColorToGray_<mod>(const Ipp<datatype>* pSrc, int srcStep, Ipp<datatype>* pDst, int dstStep, IppiSize roiSize, const Ipp64f coeffs[3]);
Supported values for mod:
64f_C3C1R |
64f_AC4C1R |
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. |
coeffs |
Transform coefficients. |
Description
This function operates with ROI (see Regions of Interest in Intel IPP ).
This function uses the following equation to convert an RGB image to gray scale:
Y = coeffs[0] * R + coeffs[1] * G + coeffs[2] * B,
where the coeffs array contains user-defined transform coefficients which must be non-negative and satisfy the condition
coeffs[0] + coeffs[1] + coeffs[2] ≤ 1.
Return Values
ippStsNoErr |
Indicates no error. Any other value indicates an error. |
ippStsNullPtrErr |
Indicates an error condition if pSrc or pDst is NULL. |
ippStsSizeErr |
Indicates an error condition if roiSize has a field with a zero or negative value. |