Professional Documents
Culture Documents
IME 04-10842
Computação Gráfica
Professor Guilherme Mota
Professor Gilson Costa
Por que estudar cores em CG?
Geri's Game (Pixar) was produced with the goal to "take human
and cloth animation to new heights"
2/97
Por que estudar cores em CG?
●
Uma imagem (e.g., uma fotografia) fica determinada pela
variação da cor nos diversos pontos de sua superfície ou
suporte.
●
O estudo da cor desempenha um papel importante no
estudos das imagens.
3/97
O que são cores?
Fenômeno Psicofísico
4/97
Física da Luz
5/97
Natureza dual da luz
ONDA PARTÍCULA
ELETROMAGNÉTICA
v / f
c=f
6/97
Espectro Eletromagnético
7/97
Natureza da luz
Cor (1 nm = 10-9 m)
Violeta 380-440 nm
Azul 440-490 nm
Verde 490-565 nm
Amarelo 565-590 nm
Laranja 590-630 nm
Vermelho 630-780 nm
8/97
Percepção das cores
9/97
Formação
de cores
10/97
Processos de formação de cores
●
As cores que percebemos surgem da iteração entre fontes
de luz e diversos tipos de materiais encontrados no mundo
físico.
●
Podem ser de 2 tipos:
– Aditivo
– Subtrativo
11/97
Processo aditivo
Ea
a
a+b
Eb
b
Ea+b() = Ea ()+Eb()
12/97
Processo subtrativo
Ef
Ei t
tons mais
claros Tinta
Tinta colorida
branca saturada
Cinzas
tons mais
escuros
Tinta
preta
14/97
Percepção
de cores
15/97
Representação no sistema visual humano
16/97
Representação no sistema visual humano
Cones
● Altamente sensível a cor
● Visão Fotópica: alta luminosidade
● 3 tipos: S (azul); M (verde); G (vermelho)
● 6-7 mio, principalmente na fóvea
Bastonetes
● Sensível a baixos níveis de iluminação
● Escotópica: baixa luminosidade
● 75 a 150 mio, ao longo da retina
17/97
Representação no sistema visual humano
.20 G(λ)
.18 R(λ)
Resposta dos cones
.16
.14
.12
.10
.08
.06
.04
B(λ)
.02
18/97
Representação no sistema visual humano
19/97
Reconstrução perceptual
Rc(C())
C’() reconstruída
C()
Rh(C()) Rh(C’())
20/97
Representação
de cores
21/97
Representação no espaço tricromático
●
O sistema visual humano representa as cores do espaço
espectral E em um espaço tricromático.
●
Isto significa que três amostras (nas faixas correspondentes
ao vermelho,
vermelho verde e azul)
azul são suficientes para os
propósitos de reconstrução perceptual.
22/97
Sistemas emissores
●
Reconstroem cores.
●
Possuem um conjunto de
P1() P2() P3()
emissores Pk, k=1...n.
●
Cada emissor está Cr()
associado a uma cor
primária com distribuição
espectral Pk().
n
●
O conjunto de cores que C r ( λ )= ∑ c k P k ( λ )
podem ser reconstruídas k =1
por um sistema emissor é
denominado gamute.
23/97
Geometria dos espaços de cores tricromáticos
c’
c
c c’
c’ = t.c
24/97
Triângulo de Maxwell
(0,1,0)
(1,0,0)
=1
c
+ 3
c
: c 1+
2
(0,0,1)
25/97
Coordenadas de cromaticidade
(0,1,0)
ci
*
c i
(1,0,0)
=1
c
+ 3
c
: c 1+
2
ci
*
(0,0,1) c=
i
c 1 +c 2 +c 3
26/97
Sólidos de cor e diagrama de cromaticidade
●
É um cone.
●
É convexo. Plano X+Y+Z=1
●
Cores espectrais (puras)
estão na fronteira.
27/97
Sistemas de cor
●
Sólido de cor + uma base = Sistema de cor
28/97
Sistemas do CIE
29/97
Sistemas de cor padrão
●
Sistemas propostos para especificação de cor padronizada.
●
Independentes de dispositivos físicos.
●
Sistemas propostos pela CIE
(Comission Internationale de l´Eclairage)
– Sistema CIE-RGB
– Sistema CIE-XYZ
30/97
Sistema CIE-RGB
●
Primeiro sistema padrão proposto.
●
Utiliza uma representação de cor no espaço
tricromático
●
Base de primárias do sistema:
– R() vermelho com comprimento de onda de 700 nm
– G() verde com comprimento de onda de 546 nm
– B() azul com comprimento de onda de 435.8 nm
31/97
Funções de reconstrução de cor (Sistema CIE-RGB)
0.40
r (λ)
0.30 g (λ)
b (λ)
0.20
0.10
0.00
−0.10
400 500 λ 600 700 800
32/97
Sistema CIE-RGB
0.9
520
0.8 540
0.7
560
0.6
500
0.5 580
y
0.4 600
620
0.3 E
0.2
480
0.1
0.0 460
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
x 33/97
Sistema CIE-XYZ
●
Sistema proposto capaz de reconstruir todas as
cores visíveis.
●
A base de primárias {X,Y,Z} é formada por cores
não visíveis que estão fora do sólido de cor.
●
Deste modo todas as cores visíveis possuem
coordenadas positivas.
34/97
Funções de Reconstrução de Cor CIE-XYZ
35/97
Sistema CIE-XYZ
36/97
Sistema CIE-RGB
37/97
Sistema CIE-XYZ
38/97
Conceitos de Cores no CIE-XYZ
● Saturação ● Complementaridade
c2
b c'
c1
a
a
b
c
x x
a a b
Saturação(c1 )= ⋅c+ ⋅c ' =Branco
a+b a+b a+b
α⋅c +β⋅c ' =Branco
39/97
Comparação CIE-RGB e CIE- XYZ
● CIE-RGB ● CIE-XYZ
0.9
520
0.8 540
0.7
560
0.6
500
0.5 580
y
0.4 600
620
0.3 E
0.2
480
0.1
0.0 460
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
x
0.40
r (λ)
0.30 g (λ)
b (λ)
0.20
0.10
0.00
−0.10
400 500 λ 600 700 800
40/97
Conversão entre os sistemas CIE-RGB e CIE-XYZ
●
É feita através de mudanças de coordenadas
(determinada por uma mudança de base).
●
A mudança entre as bases é determinada por uma
transformação linear.
∣ ∣∣ ∣∣ ∣
X 0.49 0.31 0.20 R
Y = 0.17 0.81 0.01 ⋅ G
Z 0.00 0.01 0.99 B
41/97
Sistemas dos
dispositivos
42/97
Sistema dos monitores - mRGB
Processo Aditivo
pixel
43/97
Sistema dos monitores - mRGB
Reconstrução
G processo aditivo perceptual
verde
1.0 amarelo
ciano branco
44/97
Sistema das impressoras CMY
Processo Subtrativo
lu
z
br
an
ca luz ciano (0,1,1)
45/97
Conversões entre sistemas
●
RGB para CMY
Ciano = 1 - Vermelho
Magenta = 1 - Verde
Amarelo = 1 - Azul
●
CMY para RGB
Vermelho = 1 - Ciano
Verde = 1 - Magenta
Azul = 1 - Amarelo
46/97
Sistema das impressoras CMYK
Processo Subtrativo
Para usar menos tinta, e produzir tons pretos mais profundos: cores
não saturadas e escuras são produzidas usando de tinta preta em vez
da combinação de ciano, magenta e amarelo.
47/97
Sistema das impressoras CMYK
K C M Y
48/97
Conversões entre sistemas
●
CMY para CMYK
Preto = mínimo(Ciano,Magenta,Amarelo)
Ciano = (Ciano-Preto)/(1-Preto)
Magenta = (Magenta-Preto)/(1-Preto)
Amarelo = (Amarelo-Preto)/(1-Preto)
●
CMYK para CMY
Ciano = mínimo(1, Ciano (1-Preto)+Preto)
Magenta = mínimo(1, Magenta (1-Preto)+Preto)
Amarelo = mínimo(1, Amarelo (1-Preto)+Preto)
49/97
Gamute no diagrama de cromaticidade dos
dispositivos
1.0
0.9
0.8
gamute de um monitor
0.7
C2
0.6
0.5 C1
0.4
W
0.3
0.2
0.1 gamute de uma impressora
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 x
50/97
Sistemas de
interface
51/97
Sistemas de interface
●
Permitem uma especificação intuitiva de cores.
●
São baseados em uma decomposição crominância-
luminância.
●
Utilizam o seguinte esquema:
– Escolha da crominância.
– Escolha da luminância (brilho).
52/97
Sistemas de interface
● Escolha da crominância:
53/97
Sistema HSV
●
Sistema criado para a especificação de cores em
monitores.
●
Introduz um sistema de coordenadas segundo o
esquema luminância-crominância no sistema
mRGB.
●
Descreve uma cor através de 3 parâmetros:
– Hue(matiz)
– Saturation(saturação)
– Value(valor), uma medida de brilho igual a
max{r,g,b}.
54/97
Sistema HSV
G Y
C
R
B
M
R
55/97
Sistema HSV
G
Branco (1,1,1)
1.0
1.0
R
Preto (0,0,0)
1.0 t
Ct
B
56/97
Sistema HSV
V Value
G Y
C R
B M
H Hue
K S Saturation
57/97
Sistema HSV
58/97
Sistema HSV
59/97
Manipulação de cores em imagens digitais
●
Operações que alteram o conjunto de cores (gamute)
presente na imagem.
●
Operações devem ser feitas sobre cada uma das três
bandas/canais/planos de cor da imagem.
●
Operações mais comuns: operações pontuais; manipulação
de histograma; filtragem/convolução.
●
Corriqueiramente, operações são chamadas indistintamente
de “filtros”.
60/97
Manipulação de cores em imagens digitais
vermelho
verde
azul
61/97
Operações Pontuais: ci' = g(ci)
g : ci → ci '
y y
x x
2 2
f : {( x , y) ∈U ⊂ ℝ }→C f ' : {( x , y) ∈U ⊂ ℝ }→ C '
g ( f )⇔ f ' 62/97
Manipulação de cores em imagens digitais
●
Negativo:
g ( f )⇔ f '
255
f'
0
0
f 255
63/97
Manipulação de cores em imagens digitais
64/97
Manipulação de cores em imagens digitais
●
Realce de contraste:
g ( f )⇔ f '
255
f'
0
0
f 255
65/97
Manipulação de cores em imagens digitais
Original Manipulada
250
200
150
S a íd a
100
50
0
0 50 100 150 200 250
E n tra d a
66/97
Manipulação de cores em imagens digitais
250
250
200
200
150 150
S a íd a
S a íd a
100
100
50
50
0
0 50 100 150 200 250 0
0 50 100 150 200 250
E n tra d a
E n tra d a
250
250
200
200
150
150
S a íd a
S a íd a
100
100
50
50
0
0 50 100 150 200 250 0
0 50 100 150 200 250
E n tra d a
E n t ra d a
67/97
Manipulação de cores em imagens digitais
●
Correção Gamma:
g ( f )⇔ f '
255
f'
0
0
f 255
γ
g : ci → ci ' ; c i ' =c para γ=0.4
i
68/97
Manipulação de cores em imagens digitais
69/97
Manipulação de cores em imagens digitais
●
Correção Gamma:
g ( f )⇔ f '
255
f'
0
0
f 255
γ
g : ci → ci ' ; c i ' =c para γ=2.5
i
70/97
Manipulação de cores em imagens digitais
71/97
Manipulação de cores em imagens digitais
●
Ajuste de Contraste + Correção Gamma:
γ
g 2 ( f )=( g 1 ( f )) = f '
250
250
200
200
150 150
S a íd a
S a íd a
100 100
50 50
0 0
0 50 100 150 200 250 0 50 100 150 200 250
g2 g1
E n tra d a E n tra d a
72/97
Manipulação de cores em imagens digitais
Original Manipulada
250
200
150
S a íd a
100
50
0
0 50 100 150 200 250
E n tra d a
73/97
Manipulação de cores em imagens digitais
Original Manipulada
250
200
150
S a íd a
100
50
0
0 50 100 150 200 250
E n tra d a
74/97
Manipulação de cores em imagens digitais
250
250
200
200
150 150
S a íd a
S a íd a
100
100
50
50
0
0 50 100 150 200 250 0
0 50 100 150 200 250
E n tra d a
E n tra d a
250
250
200
200
150
150
S a íd a
S a íd a
100
100
50
50
0
0 50 100 150 200 250 0
0 50 100 150 200 250
E n tra d a
E n t ra d a
75/97
Manipulação de cores em imagens digitais
250 250
200 200
150 150
S a íd a
S a íd a
100 100
50
50
0
0 50 100 150 200 250 0
0 50 100 150 200 250
E n tra d a E n t ra d a
250 250
200 200
150 150
S a íd a
S a íd a
100 100
50
50
0
0 50 100 150 200 250 0
0 50 100 150 200 250
E n tra d a
E n t ra d a
76/97
Manipulação de cores em imagens digitais
●
Combinação Linear: (Sepia)
g ( f )⇔ f '
∣ ∣∣ ∣∣ ∣
f ' r 0.393 0.769 0.189 f r
f ' g = 0.349 0.686 0.168 ⋅ f g
f ' b 0.272 0.534 0.131 f b
77/97
Manipulação de cores em imagens digitais
78/97
Filtros Espaciais
●
Operação: máscara posicionada sobre cada pixel da
imagem de entrada.
g ( f )⇔ f '
36 36 36 36 36 ? ? ? ? ?
36 36 45 45 54 1/9 1/9 1/9 ? 38 41 45 ?
36 36 45 54 54 1/9 1/9 1/9 = ? 41 46 52 ?
36 45 54 54 63 1/9 1/9 1/9 ? 43 50 56 ?
36 45 54 63 63 w (s,t) ? ? ? ? ?
f (x,y) f ' (x,y) = g(x,y)
a b
g ( x, y ) w( s, t ) f ( x s, y t )
s at b
79/97
Filtros Espaciais
●
Operação: máscara posicionada sobre cada pixel da
imagem de entrada.
a b
g ( x, y ) w(s, t ) f ( x s, y t )
s at b
1 1 1 1 7 1
1/9 1 1 1 1/88 7 54 7
1 1 1 1 7 1
máscara de máscara
média 3x3 gaussiana 3x3
80/97
Filtros Espaciais
●
Derivadas da imagem digital:
●
Primeira derivada: Gradiente
●
Segunda derivada: Laplaciano
82/97
Filtros Espaciais
f 4
3
x
2
1
0
Valor dos pixels
4 em linha horizontal
0 -1 1 3
2
1
0 Primeira derivada
-1
-2
-3
-4
4
3
2
1
0 Segunda derivada
-1
-2
-3
-4
83/97
Filtros Espaciais
●
Primeira derivada:
f
Gx x
Gradiente: f f
G y
y
Magnitude:
f magf Gx2 G y2 1/ 2
Gx G y
Gy
Direção: α x, y tag
1
Gx
84/97
Filtros Espaciais
●
Máscaras para o Gradiente:
f
y
f
x
85/97
Filtros Espaciais
f G x G y
86/97
Filtros Espaciais
●
Segunda derivada: Laplaciano
2 f 2 f
f 2 2
2
x y
2 f
f ( x 1, y ) f ( x 1, y ) 2 f ( x, y )
x 2
2 f
f ( x, y 1) f ( x, y 1) 2 f ( x, y )
y 2
2 f f ( x 1, y ) f ( x 1, y ) f ( x, y 1) f ( x, y 1) 4 f ( x, y )
87/97
Filtros Espaciais
●
Segunda derivada: Laplaciano
2 f 2 f
f 2 2
2
x y
2 f f ( x 1, y ) f ( x 1, y ) f ( x, y 1) f ( x, y 1) 4 f ( x, y )
88/97
Filtros Espaciais
●
Segunda derivada: Laplaciano
2 f 2 f
f 2 2
2
x y
89/97
Filtros Espaciais
90/97
Filtros Espaciais
●
Filtro de aguçamento (sharpening)
ou
-C -C -C
-C 8C+1 -C
-C -C -C
91/97
Filtros Espaciais
original
92/97
Filtros Espaciais
0 -1 0
-1 5 -1
0 -1 0
93/97
Filtros Espaciais
-1 -1 -1
-1 9 -1
-1 -1 -1
94/97
Filtros Espaciais
●
Filtro de aguçamento (unsharp): subtrai da imagem uma
versão suavizada dela mesma.
f s ( x , y ) f ( x, y ) f ( x, y )
95/97
Filtros Espaciais
original
96/97
Filtros Espaciais
unsharp
97/97
Fim
98/97