Content-type: text/html Man page of mlib_ImageColorHSL2RGB

mlib_ImageColorHSL2RGB

Section: mediaLib Library Functions (3MLIB)
Updated: 12 Sep 2007
Index Return to Main Contents
 

NAME

mlib_ImageColorHSL2RGB - HSL to RGB color conversion  

SYNOPSIS

cc [ flag... ] file... -lmlib [ library... ]
#include <mlib.h>

mlib_status mlib_ImageColorHSL2RGB(mlib_image *dst, const mlib_image *src);

 

DESCRIPTION

The mlib_ImageColorHSL2RGB() function performs a conversion from hue/saturation/lightness to red/green/blue. The source and destination images must be three-channel images.

It uses the following equations:

   L' = L          if L ≤ 1/2
  L' = 1 - L      if L > 1/2

  V = L + S*L'
  P = L - S*L'
  Q = L + S*L'*(1 - 2*fraction(H*6))
  T = L - S*L'*(1 - 2*fraction(H*6))

  R, G, B = V, T, P    if 0   ≤ H < 1/6
  R, G, B = Q, V, P    if 1/6 ≤ H < 2/6
  R, G, B = P, V, T    if 2/6 ≤ H < 3/6
  R, G, B = P, Q, V    if 3/6 ≤ H < 4/6
  R, G, B = T, P, V    if 4/6 ≤ H < 5/6
  R, G, B = V, P, Q    if 5/6 ≤ H < 1

where 0 ≤ H < 1 and 0 ≤ S, L, L', V, P, Q, T, R, G, B ≤ 1.

Assuming a pixel in the source image is (h, s, l) and its corresponding pixel in the destination image is (r, g, b), then for MLIB_BYTE images, the following applies:

   H = h/256
  S = s/255
  L = l/255
  r = R*255
  g = G*255
  b = B*255

for MLIB_SHORT images, the following applies:

   H = (h + 32768)/65536
  S = (s + 32768)/65535
  L = (l + 32768)/65535
  r = R*65535 - 32768
  g = G*65535 - 32768
  b = B*65535 - 32768

for MLIB_USHORT images, the following applies:

   H = h/65536
  S = s/65535
  L = l/65535
  r = R*65535
  g = G*65535
  b = B*65535

and for MLIB_INT images, the following applies:

   H = (h + 2147483648)/4294967296
  S = (s + 2147483648)/4294967295
  L = (l + 2147483648)/4294967295
  r = R*4294967295 - 2147483648
  g = G*4294967295 - 2147483648
  b = B*4294967295 - 2147483648

 

PARAMETERS

The function takes the following arguments:

dst

Pointer to destination image.

src

Pointer to source image.

 

RETURN VALUES

The function returns MLIB_SUCCESS if successful. Otherwise it returns MLIB_FAILURE.  

ATTRIBUTES

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPEATTRIBUTE VALUE

Interface StabilityCommitted

MT-Level

 

SEE ALSO

mlib_ImageColorHSL2RGB_Fp(3MLIB), mlib_ImageColorRGB2HSL(3MLIB), mlib_ImageColorRGB2HSL_Fp(3MLIB), attributes(5)


 

Index

NAME
SYNOPSIS
DESCRIPTION
PARAMETERS
RETURN VALUES
ATTRIBUTES
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 02:38:05 GMT, October 02, 2010