5. L'espai HSV

 

Índex

 

A la recerca d'altres espais de colors

Busquem una manera de representar els colors de manera que ens mostri alhora la composió RGB i els conceptes més intuïtius de to (longitud d'ona dominant), saturació i lluminositat.

cub rgb modificat i projectatUna primera idea consisteix a disposar el cub amb el vértex representatiu del negre cap avall i el vértex representatiu del blanc cap amunt i units per un eix vertical. Amb aquesta operació, els 8 colors bàsics del cub queden disposats en tres nivells, de dalt a baix, segons el detall següent:

Notem que si determinem un pla qualsevol perpendicular a l'eix blanc negre, la intersecció d'aquest pla amb el cub serà un triangle.

Aquesta disposició rarament es fa servir així i es busquen altres figures geomètriques que permetin una manipulació matemàtica més simple.

 

Deformació del cub

Les operacions que es duen a terme habitualment són dues:

Notem que amb aquests canvis només es modifica la disposició relativa dels colors, però en cap cas no es produeixen confusions ni pèrdues d'informació. Per tant per a cada espai hi ha un algorisme relativament simple que relaciona les seves descripcions amb la de l'espai rgb.

I per a cada sistema es defineixen conceptes de to, de saturació (relativa) i d'intensitat perceptual, amb escales pròpies no equivalents directament i subjectes a relacions descriptibles amb mètodes geomètrics simples:

Notem que parlem de saturació relativa. La saturació màxima en termes absoluts només s'assoleix si la font de color és monocromàtica, però no mai en el cas de les mescles additives. Entenguem-ho doncs el terme com indicatiu del grau de saturació relativa, és a dir, comparat amb la màxima que es pot obtenir amb els colors primaris emprats.

El joc entre les tres dimensions dóna lloc a representacions mitjançant cons, a cilindres o a esferes; els més usats són els dos primers.

Ens fixarem amb més detall en dos sistemes: l'HSV i el l'HLS, que són els més emprats en les interfícies del programes informàtics de tractament d'imatges, i els representarem mitjançant cons.

Cal insistir-hi: amb l'ús d'espais diferents no parlem de maneres diferents de produir colors, sinó de diverses maneres de mesurar-los.

 

L'espai HSV

con HSV

El sistema HSV fa servir els conceptes de to (hue), saturació (saturation) i valor (value), mesura de la intensitat perceptual. Pràcticament equivalent és el sistema HSB, en què la intensitat perceptual s'anomena brillantor (brightness).

Molts programes informàtics gràfics - com ara el PhotoShop d'Adobe, el Flash de Macromedia o el GIMP de GNU - faciliten a l'usuari el treball amb els paràmetres HSV.

En la representació cònica d'aquest sistema, el vértex es troba a la part inferior i correspon al negre (valor 0) i la circunferència de la base superior conté els colors de valor màxim, és a dir, aquells en què almenys un component RGB és màxim i almenys un altre és nul. El sentit de la figura cònica és que com menys intensa és la llum, més irrellevants esdevenen les distincions de to i de saturació. El blanc ocupa el centre de la base superior del con. Amb aquest sistema

 

Mostra dels talls dels cons HSV

A continuació es presenta un esquema que representa aproximadament la intersecció triangular del con HSV amb el pla format per l'eix i una generatriu. Hi ha tres caselles, R, G i B per a indicar les intensitats dels tres components primaris, segons una escala que va del 0 al 10. Doneu el valor 10 a un dels tres; 0 a un altre i un valor entre 0 i 10 a un altre, i feu clic en el botó: immediatament apareixerà el color seleccionat en la casella superior dreta i el conjunt de colors emparentats amb aquest en les altres. Podeu fer tants canvis com volgueu.


                                   
                                  R 
                                   
                                   
                                  G 
                                   
                                   
                                  B 
                                   
                                   
                                   
                                   
                                   
                                   
                                   
                                   
                                   

 

Escales de l'espai HSV i punts singulars

Habitualment els tons es mesuren sobre una escala de 0 a 360 (la mesura sexagesimal habitual dels angles), amb els tres colors primaris distribuïts uniformement: el 0 (que coincideix amb el 360) correspon al vermell, el 120 al verd i el 240 al blau. I, d'acord amb les regles de la mescla additiva, els punts intermedis sobre el cercle són ocupats pel groc (60, el cian (180) i el magenta (300).

El valor va de 0 (vértex del con) a 100 (base superior del con).

La saturació va de 0 a 100 (quocient dels radis expressat en percentatge).

D'aquests supòsits deriven els punts singulars següents:

Color RGB HSV
 
  rgb(255,255,255) hsv(-,0,100)
 
  rgb(255,0,0) hsv(0,100,100)
  rgb(255,255,0) hsv(60,100,100)
  rgb(0,255,0) hsv(120,100,100)
  rgb(0,255,255) hsv(180,100,100)
  rgb(0,0,255) hsv(240,100,100)
  rgb(255,0,255) hsv(300,100,100)
  rgb(255,0,0) hsv(360,100,100)
 
  rgb(0,0,0) hsv(-,0,0)

Notem que en realitat H per al blanc i per al negre és indeterminat.

Aquest espai té una propietat molt important: donats dos colors, podem obtenir per interpolació un tercer color, i la mateixa regla d'interpolació valdrà per a l'espai RGB i per a l'espai HSV. La interpolació per a H es fa en termes d'angles; totes les altres, en termes de longituds. El valor indeterminat (-) no compta a l'hora de fer la interpolació.

Per exemple, el color taronja rgb(255,127,0), que és situat a mig camí entre rgb(255,0,0) i rgb(255,255,0), mesurat en l'espai HSV és hsv(30,100,100), que també està a mig camí entre hsv(0,100,100) i hsv(60,100,100).

 

con HSBTransformacions RGB - HSV

Les transformacions RGB-HSV es poden fer d'una manera entenedora generalitzant el procediment que s'acaba d'indicar.

Sigui el color C=hsv(30,60,75). Farem successivament l'ajustament del to, de la saturació i finalment del valor (recorregut SI-I-C de la figura).

Determinem el color afí de màxima saturació i màxim valor partint del color donat i fent S=100 i V=100, i anotem els valors rgb corresponents:

  hsv(30,100,100) rgb(255,127,0)  

Ajustem la saturació al 60% interpolant entre el color anterior i el blanc:

0,6* hsv(30,100,100) rgb(255,127,0)  
+0,4* hsv(30,0,100) rgb(255,255,255)  
= hsv(30,60,100) rgb(255,178,102)  

I finalment ajustem el valor al 75% interpolant entre el color anterior i el negre:

0,75* hsv(30,60,100) rgb(255,178,102)  
+0,25* hsv(-0,-,0) rgb(0,0,0)  
= hsv(30,60,75) rgb(191,134,76)  

Aquest raonament dóna lloc a sengles algorismes (vegeu-ne un per al pas d'RGB a HSV i un altre per al pas d'HSV a RGB), i a programes, com el que es fa servir a l'apartat següent.

 

Eina de càlcul i representació de colors a partir de les dades HSV

A continuació hi ha una eina que permet, a partir de les dades HSV, la representació i la quantificació RGB de qualsevol color. S'hi fan servir les relacions anteriors.

Cal començar fent una primera aproximació de to (H) prement qualsevol dels botons numerats.

A continuació s'ajusta el to, la saturació i la brillantor, amb els 12 botons corresponents. Poden fer-s'hi tantes rectificacions com calgui.

En tot moment se'ns presenta:


           
      R    
G  
B  
   
SI  
I  
   
   
To 0-360
Saturació 0-100
Valor 0-100