Visible to Intel only — GUID: GUID-7F760AF6-F6D0-43D7-B498-85F5CC430C1B
Visible to Intel only — GUID: GUID-7F760AF6-F6D0-43D7-B498-85F5CC430C1B
HSVToRGB
Converts an HSV image to the RGB color model.
Syntax
IppStatus ippiHSVToRGB_<mod>(const Ipp<datatype>* pSrc, int srcStep, Ipp<datatype>* pDst, int dstStep, IppiSize roiSize);
Supported values for mod:
8u_C3R | 16u_C3R |
8u_AC4R | 16u_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 a HSV image pSrc to the image R'G'B'pDst.
The conversion algorithm from HSV to RGB can be represented in pseudocode as follows:
if S = 0 then R = G = B = V else if H = 360 then H = 0 else H = H/60 I = floor(H) F = H - I; M = V * ( 1 - S); N = V * ( 1 - S * F); K = V * ( 1 - S * (1 - F)); if(I == 0)then{ R = V;G = K;B = M;} if(I == 1)then{ R = N;G = V;B = M;} if(I == 2)then{ R = M;G = V;B = K;} if(I == 3)then{ R = M;G = N;B = V;} if(I == 4)then{ R = K;G = M;B = V;} if(I == 5)then{ R = V;G = M;B = N;}
The computed R',G',B' values are 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 if pSrc or pDst is NULL. |
ippStsSizeErr |
Indicates an error condition if roiSize has a field with a zero or negative value. |