21
EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 32 ____________________________________________________________________________ ____________________________________________________________________________ Diagrama de Cromaticidade CIE-XYZ Motivação Definição de 3 estímulos primários X, Y e Z artificiais (não realizáveis fisicamente), para entre outros: Evitar valores negativos Um das funções de igualação, associada ao estímulo Y, corresponder à curva de Eficácia luminosas Espectrais para a visão diurna (demanda da televisão preto-e-branco) Áreas das curvas de igualação iguais EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 33 ____________________________________________________________________________ ____________________________________________________________________________ Diagrama de Cromaticidade CIE-XYZ Eficácia luminosa espectral Eficácia luminosa espectral de uma radiação monocromática de comprimento de onda λ [sendo V(λ ) para a visão fotópica e V’(λ) para a visão escotópica], é a razão do fluxo radiante de comprimento de onda λm, para o fluxo de comprimento de onda λ, os dois fluxos produzindo sensações luminosas igualmente intensas em condições fotométricas especificadas, e sendo λm escolhido de modo que o valor máximo dessa razão seja 1. V(λ) - visão diurna (fotópica) V’(λ) - visão noturna (escotópica) Eficácias Luminosas Espectrais 0,0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0 380 420 460 500 540 580 620 660 700 740 780 λ [ λ [ λ [ λ [ nm] V( λ λ λ ) V'( λ λ λ ) V( λ λ λ ) V'( λ λ λ )

Motivação - dca.fee.unicamp.brmartino/disciplinas/ea978/na2.pdf · Eficácia luminosa espectral de uma radiação monocromática de comprimento de onda ... da luz em função do

Embed Size (px)

Citation preview

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 32____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Motivação

� Definição de 3 estímulos primários X, Y e Z artificiais (nãorealizáveis fisicamente), para entre outros:

� Evitar valores negativos

� Um das funções de igualação, associada ao estímuloY, corresponder à curva de Eficácia luminosasEspectrais para a visão diurna (demanda da televisãopreto-e-branco)

� Áreas das curvas de igualação iguais

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 33____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Eficácia luminosa espectral

� Eficácia luminosa espectral de uma radiaçãomonocromática de comprimento de ondaλ [sendo V(λ )para a visão fotópica e V’(λ) para a visão escotópica], é arazão do fluxo radiante de comprimento de ondaλm, para ofluxo de comprimento de ondaλ, os dois fluxos produzindosensações luminosas igualmente intensas em condiçõesfotométricas especificadas, e sendoλm escolhido de modoque o valor máximo dessa razão seja 1.

� V(λ) - visão diurna (fotópica)

� V’( λ) - visão noturna (escotópica)

Eficácias Luminosas Espectrais

0,0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1,0

380 420 460 500 540 580 620 660 700 740 780

λ [λ [λ [λ [ nm]

V(λλλλ ) V'(λλλλ )

V(λλλλ )V'(λλλλ )

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 34____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Eficácia luminosa espectral (cont.)

� As curvas de eficácia luminosa são levantadas em umprocedimento de igualação de intensidade.

� Eficácia luminosa é uma medida da sensibilidade depercepção da intensidade (claro/escuro) da luz em funçãodo comprimento de onda.

� Mantida a mesma potência, determinados estímulos, porexemplo de 550 nm, são percebidos como mais claros queestímulos na faixa de 450 nm.

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 35____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Função de Igualação de Cores dos EstímulosPrimários CIE X, Y e Z

� Y é denominado luminância e reflete a eficácia luminosaespectral e está, portanto, associado à percepção declaro/escuro.

� X e Z estão associados a informações cromaticidade (matize saturação)

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 36____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Espaço de cor CIE-XYZ

� Gráfico em um sistema cartesiano XYZ das funções deigualação de cores

� Utilizando as primárias XYZ, uma cor é dada por

Contorno curvo: Lugar dascores espectrais puras – curvadefinida pelas funções deigualação

Linha púrpura

Volume interno: todas ascores possíveis (combinaçõeslineares possíveis das coresespectrais puras)

ZYXC ZYX ++=

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 37____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Diagrama de Cromaticidade CIE-XYZ

� Interseção com plano unitário: X+Y+Z =1

� Projeção (ortogonal) do plano unitário no plano XY

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 38____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Diagrama de Cromaticidade CIE-XYZ

� Projeção (ortográfica) do plano unitário no plano XY

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 39____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Interseção com o plano X+Y+Z = 1

� Coordenadas de cromaticidade x,y,z: Interseção com plano

X+Y+Z =1 (x,y,z pontos no plano)

� Cor é especificada pela tripla (x,y, Y), onde:

� (x, y) são as coordenadas de cromaticidade (estão

relacionadas à matiz e saturação)

� Y é a luminância (está associada à luminosidade –

percepção de claro e escuro).

� As coordenadas de cromaticidade e luminância e dosvalores dos estímulos primário XYZ são relacionados por:

ZYX

Xx

++=

ZYX

Yy

++=

ZYX

Zz

++=

1=++ zyx

y

YxX = YY =

y

YyxZ )1( −−=

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 40____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Coordenadas de cromaticidade e luminância

� É importante observar que cada ponto (x,y) do diagrama decromaticidade está associado a um conjunto de cores.

� O conjunto de cores com as mesmas coordenadas decromaticidade é dado por todas as cores definidas porvetores colinares no espaço XYZ.

� Um conjunto de cores colineares diferem apenas por umfator de escala s e são especificado pelas seguintescoordenadas de cromaticidade e luminância (x,y, sY). Pois,

� Ou seja, um ponto (x,y) no diagrama de cromaticidade estáassociado a um conjunto de cores que diferem apenas pelaluminância.

( )

sYYZYX

X

sZsYsX

sYy

ZYX

X

sZsYsX

sXx

ZsYsXsZYXs

=++

=++

=

++=

++=

++=++= ZYXZYXC

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 41____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Espaço CIE_XYZ e Diagrama de Cromaticidade

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 42____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Diagrama de Cromaticidade CIE

� Contorno curvo do diagrama é lugar das cores espectraispuras.

� Linha reta do diagrama (a denominada linha púrpura) temlugar pela combinação linear das cores vermelho e azul.

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 43____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Exercício

� Considere duas cores:

� Qual as coordenadas de cromaticidade e luminância (x,y,Y)de cada uma destas cores ?

� OBS.: As cores diferem apenas da luminância, possuindo asmesmas coordenadas de cromaticidade.

),,( 1111 ZYX=C

),,(),,( 111222

12

aZaYaXZYX

a

=== CC

111

11 ZYX

Xx

++=

111

11 ZYX

Yy

++=

11 YY =

1111

12 x

ZYX

Xx =

++=

1111

12 y

ZYX

Yy =

++=

122 YYY ≠=

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 44____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Exercício

� Considere as cores abaixo:

� Qual as coordenadas de cromaticidade e luminância damistura aditiva em igual proporção das duas cores ?

� Em coordenadas de cromaticidade:

ZYXC 1111 ZYX ++=

ZYXC 2222 ZYX ++=

ZYX

CCC

)()()( 212121

2112

ZZYYXX +++++=+=

21

221112 TT

TxTxx

++=

21

221112 TT

TyTyy

++=

2112 YYY +=

1

11 y

YT =

2

22 y

YT =

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 45____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Brancos ou Iluminantes

� O padrão CIE-XYZ define ainda um conjunto de brancos:

� Iluminante A (0,448; 0,408) - lâmpada de tungstênio(avermelhado);

� Iluminante B (0,349; 0,3452) - luz solar direta ao meiodia;

� Iluminante C (0,310,0,316) luz solar difusa de um céunublado ao meio dia (padrão NTSC);

� Iluminante Energia Igual (0,333, 0,333);

� Iluminante D6500 (0,313; 0,329) - radiação de umcorpo negro 6500° K (padrão SMPTE);

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 46____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Iluminantes

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 47____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Utilização do Diagrama

� Comprimento de onda dominante: Considere uma cor Alocalizada no diagrama de cromaticidade em algum pontodo segmento de reta que une o branco de referência a umacor espectral pura B. Como a cor A pode ser consideracomo uma combinação do branco com a cor espectral puraB, esta cor B comprimento de onda dominante da cor ª

� Pureza: A pureza da cor é expressa pela valor da distânciada cor ao branco divido pela distância entre o branco e ocor da dominante.

� Cores complementares: são 2 cores que podem produzir obranco (de referência) ao serem combinadas.

� Obs.: Para algumas cores (púrpuras e magentas) não épossível definir um comprimento de onda dominante, jáque o cálculo da cor espectral pura levaria para um cor nalinha púrpura. Para estas cores utiliza-se a dominantecomplementar. A cor dominante complementar pode serextraída do diagrama estendendo-se o segmento de retaentre a cor e o branco até que a curva do diagrama quedefine o lugar das cores espectrais puras.

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 48____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Diagrama de Cromaticidade CIE - dominante epureza

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 49____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Utilização do Diagrama

� Gama de cores de dispositivos/processos: Dadas ascoordenadas de cromaticidade das cores primitivas de umdispositivo de apresentação/reprodução de imagens, a gamade cores que o dispositivo consegue reproduzir é definidapela área no diagrama de cromaticidade definido pelotriângulo cujos vértices são definidos pelas coordenadas dascores primitivas.

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 50____________________________________________________________________________

____________________________________________________________________________Diagrama de Cromaticidade CIE-XYZ

ÿ Diagrama de Cromaticidade CIE - gama de cores dedispositivos

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 51____________________________________________________________________________

____________________________________________________________________________Transformação entre espaços de cores

ÿ Transformação RGB - XYZ

� A transformação entre os espaços de cores RGB (típicosdos monitores de vídeo) para o XYZ é dado por:

ÿÿÿ

���

ÿÿÿ

���

=ÿÿÿ

���

B

G

R

ZZZ

YYY

XXX

Z

Y

X

bgr

bgr

bgr

ZYXB

ZYXG

ZYXR

ZYXBGRC

bbb

ggg

rrr

ZYX

ZYX

ZYX

ZYXBGR

++=

++=

++=

++=++=

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 52____________________________________________________________________________

____________________________________________________________________________Transformação entre espaços de cores

ÿ Diagrama de Cromaticidade CIE - transformaçãoentre espaços de cores

� Considerando as coordenadas de cromaticidade dos

fósforos (xr, yr) (xg, yg) (xb,yb) a transformação fica:

� Observe que Cr, Cg e Cb são desconhecidas.

� Para o cálculo de Cr, Cg e Cb utiliza-se o branco decalibração. Mede-se o valor Xw, Yw, Zw para a situaçãoR=G=B=1 (valor máximo igual em todos = branco)

ÿÿÿ

���

ÿÿÿ

���

−−−−−−=

ÿÿÿ

���

B

G

R

CyxCyxCyx

CyCyCy

CxCxCx

Z

Y

X

bbbgggrrr

bbggrr

bbggrr

)1()1()1(

r

rr y

YC =

g

gg y

YC =

b

bb y

YC =

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 53____________________________________________________________________________

____________________________________________________________________________Transformação entre espaços de cores

ÿ Diagrama de Cromaticidade CIE - transformaçãoentre espaços de cores

� Com a medida do branco de calibração calcula-se os

valores de Cr, Cg e CB através da solução do sistemas de

equações:

� A resolução resulta em:

ÿÿÿ

���

ÿÿÿ

���

−−−−−−=

ÿÿÿ

���

b

g

r

bbggrr

bgr

bgr

w

w

w

C

C

C

yxyxyx

yyy

xxx

Z

Y

X

)1()1()1(

[ ]D

yxyxxxyyyx

y

YC gbbgbgwbgw

w

wr

−+−−−���

����

�=

)()(

[ ]D

yxyxxxyyyx

y

YC brrbrbwrbw

w

wg

−+−−−���

����

�= )()(

[ ]D

yxyxxxyyyx

y

YC rggrgrwgrw

w

wb

−+−−−���

����

�=

)()(

)()()( grbrbgbgr yyxyyxyyxD −+−+−=

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 54____________________________________________________________________________

____________________________________________________________________________Transformação entre espaços de cores

ÿ Exercício

� No padrão NTSC as cores dos fósforos vermelho, verde eazul (RGB) dos monitores são padronizadas tendo asseguintes coordenadas de cromaticidade

� R (0,670 ; 0,330)

� G (0,210 ; 0,710)

� B (0,140 ; 0,080)

� Branco de calibração: D6500 (0,313 ; 0,329)

� (D6500branco de calibração padrão SMPTE - Society ofMotion Picture and Television Engineers).

� Calcule os valores dos estímulos RGB do monitor para quea cor (x ; y ; Y) = (0,2 ; 0,3 ; 0,5) seja apresentada nomonitor. Considere que o branco de calibração e produzidoquando (R,G,B) = (1,1,1) e que o branco é produzido comluminância unitária (Y=1).

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 55____________________________________________________________________________

____________________________________________________________________________Transformação entre espaços de cores

ÿ Exercício

� No padrão NTSC as cores dos fósforos vermelho, verde eazul (RGB) dos monitores são padronizadas tendo asseguintes coordenadas de cromaticidade

� R (0,670 ; 0,330)

� G (0,210 ; 0,710)

� B (0,140 ; 0,080)

� Branco de calibração: D6500 (0,313 ; 0,329)

� (D6500branco de calibração padrão SMPTE - Society ofMotion Picture and Television Engineers).

� Calcule os valores dos estímulos RGB do monitor para quea cor (x ; y ; Y) = (0,2 ; 0,3 ; 1) seja apresentada nomonitor. Considere que o branco de calibração e produzidoquando (R,G,B) = (1,1,1) e que o branco produzido comluminância unitária (Y=1).

� O que significa uma das componentes RGB maior que 1?

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 56____________________________________________________________________________

____________________________________________________________________________Transformação entre espaços de cores

ÿ Exercício

� No padrão NTSC as cores dos fósforos vermelho, verde eazul (RGB) dos monitores são padronizadas tendo asseguintes coordenadas de cromaticidade

� R (0,670 ; 0,330)

� G (0,210 ; 0,710)

� B (0,140 ; 0,080)

� Branco de calibração: D6500 (0,313 ; 0,329)

� (D6500branco de calibração padrão SMPTE - Society ofMotion Picture and Television Engineers).

� Calcule os valores dos estímulos RGB do monitor para quea cor (x ; y ; Y) = (0,6 ; 0,6 ; 1) seja apresentada nomonitor. Considere que o branco de calibração e produzidoquando (R,G,B) = (1,1,1) e que o branco produzido comluminância unitária (Y=1).

� O que significa uma das componentes RGB negativa ?

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 57____________________________________________________________________________

____________________________________________________________________________Modelos de Cor

ÿ Modelo RGB

� RGB – Red, Green, Blue

� Sistema utilizado em monitores coloridos

� R+G+B = branco (sistema aditivo)

� Fundo/substrato preto

Red(1, 0, 0)

Blue(0, 0, 1)

Green(0, 1, 0)

White(1, 1, 1)

Cyan(0, 1, 1)

Magenta(1, 0, 1)

Yellow(1, 1, 0)

Black(0, 0, 0)

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 58____________________________________________________________________________

____________________________________________________________________________Modelos de Cor

ÿ Modelo CMY

� CMY - Cyan, Magenta, Yellow

� Para reprodução impressa

� C+M+Y= preto (sistema subtrativo)

� Fundo/substrato branco

� CMY complementar de RGB

Red(0, 1, 1)

Blue(1, 1, 0)

Green(1, 0, 1)

White(0, 0, 0)

Cyan(1, 0, 0)

Magenta(0, 1, 0)

Yellow(0, 0, 1)

Black(1, 1, 1)

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 59____________________________________________________________________________

____________________________________________________________________________Modelos de Cor

ÿ Modelo CMY (cont.)

� Transformação RGB para CMYRGB e CMY [0,1]

� Transformação CMY para RGBRGB e CMY [0,1]

ÿÿÿ

���

�−

ÿÿÿ

���

�=

ÿÿÿ

���

−=−=

−=

B

G

R

Y

M

C

GWY

BWM

RWC

1

1

1

ÿÿÿ

���

�−

ÿÿÿ

���

�=

ÿÿÿ

���

−=−=−=

Y

M

C

B

G

R

YWG

MWB

CWR

1

1

1

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 60____________________________________________________________________________

____________________________________________________________________________Modelos de Cor

ÿ Sistema Aditivo (RGB) - Sistema Subtrativo (CMY)

� Relação RGB / CMY - cores complementares

� Tela monitor

� Papel impressora

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 61____________________________________________________________________________

____________________________________________________________________________Modelos de Cor

ÿ Modelo CMY (cont.)

� Relações entre RGB e CMY

GRBBGRY

BRGBGRM

BGRBGRC

BGRW

GWY

BWM

RWC

+=−++=+=−++=

+=−++=

++=−=−=

−=

)(

)(

)(

)(

)()(

)()(

)()(

)(

)(

MCWYYMCWYKWB

YCWMYMCWMKWG

YMWCYMCWCKWR

BGRW

YMCK

YWG

MWB

CWR

++=−+++=−+=++=−+++=−+=

++=−+++=−+=

++=++=

−=−=−=

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 62____________________________________________________________________________

____________________________________________________________________________Modelos CMYK - Reprodução impressa

ÿ Reprodução impressa

� Relação RGB/CMY - reprodução por impressão emsubstrato branco - processo de filtragem

� Na prática para a impressão utiliza-seCMYK (K = blacK - preto)

� Melhorar a reprodução do preto, melhorando contraste

� Economia de tinta

� Menor tempo de secagem

� Duas técnicas de impressão

� Superposição de pigmento (como apresentado acima)

� Composição espacial

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 63____________________________________________________________________________

____________________________________________________________________________Modelos CMYK - Reprodução impressa

ÿ Composição espacial das primárias em substratobranco.

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 64____________________________________________________________________________

____________________________________________________________________________Modelos de cor

ÿ Modelo HSV

� HSV – Hue, Saturation, Value

Red

Blue

Green

White

Cyan

Magenta

Yellow

Black

Value

Hue

SaturationRed0°

Yellow60°

Green120°

Cyan180°

Blue240°

Magenta300°

Black0,0

White1,0

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 65____________________________________________________________________________

____________________________________________________________________________Modelos de cor

ÿ Modelo HSV (cont.)

� Hue (matiz) medido em graus [0°, 360°]

� Saturation (saturação) [0.0, 1.0]

� Value (valor) [0.0, 1.0]

Red

YellowGreen

Cyan

Blue Magenta

hue

Saturation0°

120°

180°

60°

240° 300°

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 66____________________________________________________________________________

____________________________________________________________________________Modelos de cor

ÿ Modelo HSV (cont.)

� Transformação RGB para HSV

// Entrada: r, g e b [0,1]

// Saida: h [0,360], s [0,1] e v [0,1]

max = MAX( r, g, b );

min = MIN( r, g, b );

v = max;

delta = max – min;

if ( max != 0 )

s = delta / max;

else

s = 0;

if ( s == 0 )

h = UNDEFINED;

else {

if ( r = max )

h = 60 * ( g – b ) / delta;

else if ( g = max )

h = 120 + 60 * ( b – r ) / delta;

else if ( b = max) {

h = 240 + 60 * ( r – g ) / delta;

if ( h < 0 )

h = h + 360;

}

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 67____________________________________________________________________________

____________________________________________________________________________Modelos de cor

ÿ Modelo HSV (cont.)

� Transformação HSV para RGB

// Entrada: h [0,360], s [0,1] e v [0,1]

// Saída: r, g e b [0,1]

if ( s == 0 )

if ( h = UNDEFINED )

r = g = b = v;

else

ERROR;

else {

if ( h = 360 )

h = 0;

h = h /60;

i = Floor( h );

f = h – i;

p = v * ( 1 – s );

q = v * ( 1 – (s * f ) );

t = v * ( 1 – ( s * ( 1 – f ) );

switch ( i ) {

case 0:

r = v; g = t; b = p;

break;

case 1:

r = q; g = v; b = p;

break;

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 68____________________________________________________________________________

____________________________________________________________________________Modelos de cor

ÿ Modelo HSV (cont.)

� Transformação RGB para HSV (cont.)

case 2:

r = p; g = v; b = t;

break;

case 3:

r = p; g = q; b = v;

break;

case 4:

r = t; g = p; b = v;

break;

case 5:

r = v; g = p; b = q;

break;

}

}

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 69____________________________________________________________________________

____________________________________________________________________________Modelos de cor

ÿ Modelo HLS

� HLS – Hue, Lightness, Saturation

� Hue (matiz) medido em graus [0°, 360°]

� Lightness (brilho) [0.0, 1.0]

� Saturation (valor) [0.0, 1.0]

Lightness

Hue

SaturationRed0°

Yellow60°

Green120°

Cyan180°

Blue240°

Magenta300°

Black0,0

White1,0

0,5

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 70____________________________________________________________________________

____________________________________________________________________________Modelos de cor

ÿ Modelo HLS (cont. )

� Transformação RGB para HLS

// Entrada: r, g e b [0,1]

// Saida: h [0,360], l [0,1] e s [0,1]

max = MAX( r, g, b );

min = MIN( r, g, b );

delta = max – min;

l = ( max + min ) / 2;

if ( max == min ) {

s = 0;

h = UNDEFINED;

} else {

if ( l <= 0.5 )

s = delta / (max + min);

else

s = delta / (2 – max – min) ;

if ( r == max )

h = 60 * ( g – b ) / delta;

else if ( g == max )

h = 120 + 60 * ( b – r ) / delta;

else if ( b == max) {

h = 240 + 60 * ( r – g ) / delta;

if ( h < 0 )

h = h + 360;

}

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 71____________________________________________________________________________

____________________________________________________________________________Modelos de cor

ÿ Modelo HLS (cont. )

� Transformação HLS para RGB

// Entrada: r, g e b [0,1]

// Saida: h [0,360], l [0,1] e s [0,1]

if ( l <= 0.5)

m2 = l * ( 1 + s );

else

m2 = l + s – l * s ;

m1 = 2 * l – m2;

if( s == 0 )

if( h == UNDEFINED )

r = g = b = l;

else

ERROR;

else {

r = value( m1, m2, h + 120 );

g = value( m1, m2, h );

b = value( m1, m2, h – 120 );

}

EA978 Sistemas de Informações Gráficas - Prof. J. Mario De Martino 72____________________________________________________________________________

____________________________________________________________________________Modelos de cor

ÿ Modelo HLS (cont. )

� Transformação HLS para RGB (cont.)

double value( double n1, double n2, double hue){

if( hue > 360 )

hue = hue – 360;

else if( hue < 0 )

hue = hue + 360;

if( hue < 60 )

val = n1 + ( n2 – n1 ) * hue / 60;

else if( hue < 180 )

val = n2;

else if( hue < 240 )

val = n1 + (n2 – n1) *(240 – hue) / 60;

else

val = n1;

return val;

}