Você está na página 1de 44

Computao Grfica - Cor

Prof Dr. Carlos


Barros

Tpicos

Conceito
Percepo Visual
Sistema de cores RGB
Sistemas de cores HSV

Conceito
A cor um atributo da percepo visual que permite

mostrar as coisas conforme so vistas na natureza


Representar associaes simblicas
Chamar e direcionar a ateno
Enfatizar alguns aspectos sociais
Determinar um estado de esprito
Tornar uma imagem mais fcil de ser memorizada

Conceito Radiao Eletromagntica


Consiste de campos magnticos e eltricos oscilantes que se
movimentam no espao. produzida pelo movimento de
cargas eltricas (partculas).
A radiao eletromagntica classificada de acordo com
a frequncia da onda, que em ordem decrescente da durao
(perodo T) da onda so: ondas de rdio, micro-ondas,
radiao terahertz (Raios T), radiao infravermelha, luz
visvel, radiao ultravioleta, Raios-X e Radiao Gama.

Conceito Radiao Eletromagntica

Conceito de Cor

As cores so ondas eletromagnticas descritas pelo


seu comprimento de onda em nanmetros.
As diferentes cores, ou espectros luminosos, que
podem ser percebidos pelo sistema visual humano
correspondem a uma pequena faixa de frequncias do
espectro eletromagntico, que inclui as ondas de
rdio, microondas, os raios infravermelhos e os raios X
Rdio

Microondas

Infravermelho

700
600
Vermelho Alaranjado Amarelo

Ultravioleta

500
Verde

Azul

Raios X

400 nm
Violeta

Viso humana
As radiaes luminosas atravessam o cristalino
e convergem na retina que a membrana
interna da parte posterior.
A retina formada pela ramificao do nervo
tico que transmite as sensaes luminosas ao
crebro.
A imagem que se forma na retina real,
invertida e menor do que o objeto.
Percebemos os objetos em posio correta
graas forma como os sinais visuais so
processados

Viso Humana

Percepo de cor
A retina composta de, aproximadamente,
100 milhes de sensores, cada um
responsvel pela converso de uma poro
do estmulo luminoso. Estes sensores so
divididos em dois grupos:
- cones - sensveis a alto nvel de iluminao
e responsveis pela percepo das cores; e
- bastonetes - sensveis a baixo nvel de
iluminao e distinguem os tons de cinza.

Percepo de Cor

Sistema Visual humano / Cores Primrias


Os olhos humanos possuem trs tipos de sensores
coloridos diferentes, sensveis a diferentes partes
do espectro de luz visvel. Eles so os chamados
fotopigmentos azul, vermelho e verde.
A percepo da cor, portanto, seria determinada
pela mdia das trs respostas.
Essas so as razes pelas que se usam cores
primrias.
As cores primrias so as cores bsicas que podem
ser usadas para produzir outras cores.

Sistema de cores RGB


o sistema de cores utilizado nos computadores
baseado nas cores primrias Red-Green-Blue. So
utilizadas 256 variaes diferentes de intensidade
em cada uma das cores bsicas.
Para definir uma determinada cor, especifica-se na
realidade a intensidade (valor associado) dos
emissores R, G e B.
O valor (0,0,0) equivale a cor preta com
intensidade zero nas trs componentes. O valor
(255,255,255) equivale a cor branca onde as trs
componentes esto presentes com a sua

Sistema de cores RGB


Quando as trs componentes tiverem valores exatamente iguais
teremos definida uma escala de tons de cinza do preto ao branco,
a chamada "gray scale".

Modelo HSV (Hue, Saturation, Value)


O sistema HSV utiliza descries de cor que so mais intuitivas do que combinaes
de um conjunto de cores primrias.
Por isso, mais adequado para ser usado na especificao de cores em nvel de
interface com o usurio.

Modelo HSV (Hue, Saturation, Value)


Os vrios matizes esto representados na parte superior do cone (Hue), a saturao
medida ao longo do eixo horizontal, e a luminncia medida ao longo do eixo vertical.

Modelo HSV (Hue, Saturation, Value)

O matiz varia de 0o (vermelho) a 360o, e o ngulo entre os


vrtices de 60o. A saturao varia de 0 a 1 e representada como
sendo a razo entre a pureza de um determinado matiz e a sua
pureza mxima S=1. Quando S=0 tem-se a escala de cinzas. A
luminncia varia de 0 (no pico do cone), que representa a cor
preta, a 1 (na base), onde as intensidades das cores so mximas.

Converso de cores do modelo RGB para HSI


Dada uma imagem em RGB com valores normalizados em [0,1] e que H
seja medido com relao ao eixo Red do espao HSI, as componentes H,
S e I de cada pixel RGB so obtidos pelas equaes:

( R G B)
I
3

H=

360o

se B G

S 1

3
[min( R, G, B)]
( R G B)
1
[( R G ) ( R B)]
2

se B > G

cos

01
2

Para normalizar H basta dividir o resultado


por
360
.
Se
S
=
ento
H

[ R intensidade)
G ) ( R B)(G B)]
no est definido ( no h matiz no eixo de

Converso de HSI para RGB


Dados os valores de HSI no intervalo [0,1]. A converso leva em conta
trs setores de interesse. A converso comea multiplicando H por 360 o
para retornar ao intervalo original [0o,360o].
Setor RG ( 0o <= H < 120o):

1
1
ScosH
b (1 S )
r [1cos(60H ) ]
3
3
Setor GB (120 <= H < 240 ): H = H 120
o

1
S cos H
g [1 cos(
60 H ) ]
3

g 1 ( r b)
o

1
r (1 S )
3

b 1 (r g )

Setor BR (240o <= H < 360o): H = H 240o

1
S cos H
b [1 cos(
60 H ) ]
3

1
(1 S )
3

r 1 ( g b)

CMY

YIQ

CIE-XYZ

CIE-XYZ

Cor em OpenGL
A definio de cor no OpenGL descrita segundo o
modelo RGB. Usa-se o comando glColor.
A sintaxe para o comando :
glColor3 {f,d} ( XRed, XGreen, XBlue), onde :
XRed -> porcentagem de vermelho (variando de 0.0
a 1.0);
XGreen -> porcentagem de verde (variando de 0.0 a
1.0);
XBlue -> porcentagem de azul (variando de 0.0 a
1.0);

Imagens

3.3.2. Amostragem e
Quantificao
Uma imagem digital descrita
por uma matriz N x M de
valores de pixel (p(x,y)) inteiros
positivos,
que
indica
a
intensidade de cor em cada
posio [x,y] da imagem.
Figura 3.15 Reticulado
uniforme da representao
matricial da imagem.
Computao Grfica - Vol. 2 - Cap.
3

26

Amostragem e Quantizao
Amostragem refere-se ao nmero de pontos
amostrados de uma imagem digitalizada (resoluo).
Quantizao - quantidade de nveis de tons que pode
ser atribudo a cada ponto digitalizado.
As imagens reais possuem um nmero ilimitado de cores
ou tons. No processamento de imagens computacional
necessrio limitar os nveis de cores ou tons possveis de serem
atribudos a cada pixel da imagem (gradao tonal).

Computao Grfica - Vol. 2 - Cap.


3

27

Quantizao

Figura 3.4 Efeito da variao da gradao tonal ou quantizao na


qualidade da imagem.
Computao Grfica - Vol. 2 - Cap.
3

28

Imagens True-Color
Tem-se geralmente 24 bits/pixel8 bits
para cada componente RGB
2^24 cores possveis para cada
ponto : 16.777.216 cores

Imagens com Palette


A imagem separada em duas
partes
O nmero de cores diferentes por
imagem limitado pelo tamanho
doPalette

Reduo do nmero de
cores.
Como exibir uma imagem True-Color em
um dispositivo com Palette ?
Como exibir uma imagem com palette
de 256 cores em um dispositivo de 16
cores ?
Genericamente:Como exibir uma
imagem com um M cores diferentes
(M trincas RGB distintas) e um dispositivo
capaz de exibir N cores
diferentes sendo N < M ?

Reduo do nmero de
cores
Algoritmo1. Tomar a imagem de
entrada e determinar quais as N
cores que mais vezes aparecem2.
Criar um palette com estas cores
3. Para cada ponto da imagem de
entrada
3.1 Determinar qual das entradas do
palette construdomais se parece
com a cor (RGB)do ponto
3.2 Exibir o ponto com a cor obtida

CoresParecidas
Para determinar qual dentre duas
cores(RGB) a que maisse
parececom uma terceira basta
calcular adistnciaentre as cores no
espao RGB.
Quanto menor a distnciamais
pareciadasso Cor 1 e Cor 2

Exibio de imagens em tons


de cinza
Tom de cinza
Uma cor umtom de cinzasempre que suas
componentes R, G e B so iguais
Preto R:0 G:0 B:0
Branco R:255 G:255 B:255
Cinza R:30 G:30 B:30
Cinza R:200 G:200 B:200

Grau de luminosidade
O grau deluminosidade de uma corsignifica
quanto o olho humano pode perceber desta cor.
Pode ser calculado por
Luminosidade = R*0.3 + G*0.59 + B *0.11

Mtodo do Limiar
(threshold)
Determina-se um nvel de cinza(limiar) a
partir do qual o ponto deve ser aceso
Para cada ponto da imagem
Se NivelDeCinza > limiar
ento acende o ponto
seno apaga o pontoOlimiarpode ser
escolhido como a intensidade mdia do
palette da imagemGera uma imagem de
baixa qualidade, entretanto um
algortimo rpido.

Aproximao por Halftone


(Meios-tons)
Cada intensidade exibida como um padro
Para gerar imagens com 5 tons de cinza usa-se um (padro 2x2)

Para imagens com 10 tons de cinza (padro 3x3)

As imagens geradas comhalftoneso sempre maiores que a imagem


originalSe uma imagem possuir mais intensidades que o nmero de
padres ento deve-se criar grupos de intensidades que sero exibidas
com o mesmo padro:
5 padres X 50 intensidades

Imagem gerada por Halftone


com padro 2x2

Aproximao por Dither


Busca no aumentar o tamanho da
imagem
Dn = Matriz de Dither de ordem n

O problema do Dither que o padro


visvelPara gerar matrizes de Dither
maiores pode-se usar a seguinte
tcnica

FILTROS
Filtros Passa-alta
Trata a curva mantendo trechos de alfa freqncia e eliminando trechos de
baixa freqncia
Usado para detectar bordas em imagens
Algoritmo
1)Detectar bordas no horizontais
Para cada ponto (x,y) de uma linha
Se (Cor(x-1,y) - Cor(x,y)) > limiar
Ento Gera um ponto na imagem de sada na posio (x,y)
2)Detectar bordas no verticais
Para cada ponto (x,y) de uma coluna
Se (Cor(x,y-1) - Cor(x,y)) > limiar
Ento Gera um ponto na imagem de sada na posio (x,y)
Observao: Nestes algoritmos, o clculo "Cor(x-1,y)- Cor(x,y)" referese ao cculo de uma distncia entre duas cores.Veja na seo 2.1 como
calcular a distncia entre duas cores. Tambm possivel usar a diferena de
luminosidade entre duas cores apra detectar uma borda.

Filtros Passa-baixa
Trata a curva mantendo trechos de baixa
freqncia e eliminando trechos de alta
freqncia
Usado para suavizar bordas imagens
Algoritmo
A cor de cada ponto da imagem passa a ser uma
mdia ponderada entre sua cor original e as
cores dos pontos vizinhos
Em geral, representam-se os pesos de cada
ponto por meio de uma matriz de convoluo.