PANDORE Version 6 GREYC-IMAGE

prgb2hsv



Converts RGB color image to HSV color image.



Synopsis

prgb2hsv [-m mask] [im_in|-] [im_out|-]

Description

prgb2hsv converts color image from the color space RGB (Red, Green, Blue) to the color space HSV (Hue, Saturation, Value).

A hue refers to the gradation of color within the visible spectrum, or optical spectrum, of light. It is expressed in degree unit [0..360].

Saturation or purity is the intensity of a specific hue: a highly saturated hue has a vivid, intense color, while a less saturated hue appears more muted and gray. With no saturation at all, the hue becomes a shade of gray. It is expressed as percentage [0..100].

Value is the largest component of a color. It is expressed in gray level unit [0..255].

The output image is a float image.

The transformation from RGB to HSV is:

  let max = MAX(R,G,B) and min = MIN(R,G,B)

    |- 0			     if max = min
    |	       (G-B) 
H = |- (60 * -------- + 360) mod 360 if max = R
    |	     (max-min)
    |	       (B-R) 
    |- (60 * -------- + 120) + 210   if max = V
    |	     (max-min)
    |	       (R-G)
    |- (60 * -------- + 240)	     if max = B
            (max-min)

V =  max

    |- 0                si max = 0
S = |
    |         max-min
    |- 100 * ---------  si max > 0
                max 

Inputs

Outputs

Result

Returns SUCCESS or FAILURE.

Examples

Converts parrot.pan from rgb to hsv and conversely.

   prgb2hsv parrot.pan a.pan
   phsvtorgb a.pan b.pan

See also

Color, phsv2rgb

C++ prototype

Errc PRGB2HSV( const Imc2duc &im_in, Imc2dsf &im_out );

Author: Régis Clouard