Você está na página 1de 34

Universidade Estadual de Londrina

Departamento de Computao

5COP012 - INTRODUO COMPUTAO


GRFICA
Mdulo 2 - Processamento Digital de
Imagens
Autor: Prof. Dr. Alan Salvany Felinto
email: alan@uel.br
(2017)
Sumrio
Captulo 4: Operaes em Imagens.

Operaes Lgicas
Zoom, nveis de cinza
Histograma, Equalizao de Histograma.

Referncias Bibliogrficas
Processamento Digital de
Imagens
Segmentao Representao
e descrio

Pr-
processamento Reconhecimento
Base de e interpretao
conhecimento
Problema
Aquisio
de imagens

Gonzalez (2000)
Efeitos na imagem

Imagens com diferentes tamanhos de pixels

256 cores 16 cores 2 cores


Termos Fotogrficos
- Abertura: tamanho da abertura da lente. Determina quanta luz ir
incidir no sensor da cmera, abrindo mais ou menos, quanto menor o
valor, maior a abertura da lente. Quando for mxima, permitir o
mximo de entrada de luz. Em cmeras compactas configurada
automaticamente. Nas cmeras prosumer e reflex pode ser configurada
manualmente;

Abertura do Diafragma
Termos Fotogrficos
- Automatic Shutter: recurso de disparo automtico que possibilita que
a foto seja tirada sem o acionamento direto do boto do obturador,
possibilitando diminuir a vibrao produzindo fotografias mais ntidas;

Disparo Automtico
Termos Fotogrficos
- Balano de branco: processo de remoo de cores no reais, o correto
balano de branco deve levar em considerao a temperatura de cor de
uma fonte de luz. Em geral, as lmpadas trazem informaes sobre sua
temperatura de cor, que deve ser configurada na cmera.
Termos Fotogrficos
- EXIF (Exchangeable Image File Format): so metadados gravados no
arquivo da imagem com os contedos: resoluo, data e hora, abertura,
velocidade, ISO, configuraes da cmera;
Termos Fotogrficos
- Exposio (EV): relao entre abertura e velocidade para determinada
condio de luz. Parmetro responsvel por fotos mais claras ou escuras
limitando a quantidade de luz do ambiente que entra na cmera, com
mais luz necessrio diminu-lo, ou aument-lo, caso contrrio. Regula
automaticamente o tempo de exposio com abertura mxima;

- Filtros: acessrios acoplados lente da cmera que ajustam


fisicamente o comportamento da luz. Um exemplo o filtro polarizador
que consegue eliminar reflexos das superfcies, principalmente midas,
realando cores e aumentando o contraste;
Termos Fotogrficos
- Flash: luz auxiliar para fotografar quando h deficincia na
iluminao do ambiente. Pode causar reflexo ou efeito de
superexposio que altera cores reais do objeto, tornando-as
esbranquiadas, quando utilizado em ambiente com muita luz ou
objetos muito prximos;

- Foco: busca do melhor contraste e nitidez da imagem. Pode ser


automtico ou manual. Em condies adversas ao uso de cmeras, o
modo automtico simplifica a captura da imagem;

- ISO: sensibilidade dos sensores em relao luz. Utilizado para


compensar a falta de luz, aumentando a captao do sensor. Quando
utilizado com valores muito altos gera rudo nas imagens;
Termos Fotogrficos
- Marcador: referncia colocada na fotografia para que se possa
digitalmente representar e adequar padro de escala ou medida;

- Resoluo: quantidade de pixels presentes na imagem, por exemplo,


uma fotografia com 1920 x 1080 pixels tem 2.073.600 pixels e tamanho
de dois megapixels;

- Trip: a fixao da cmera em trip permite maior mobilidade para


manipulao dos objetos a serem fotografados e reduz
consideravelmente a chance de imagens tremidas;
Operaes pxel a pxel
Dado 2 pxel, p e q:
(x-1,y-1) (x,y-1) (x+1,y-1)
Adio: p + q (x-1,y) (x,y) (x+1,y)
Subtrao: p q (x-1,y+1) (x,y+1) (x+1,y+1)
Multiplicao: p*q
Diviso: p/q

E: p E q Definio
OU: p OU q - 4 vizinhos
Complemento: No q - 8 vizinhos
Operaes Lgicas

OU =

E =

Fundo com valor 0 (zero). Objeto com valor 1 (um)


Distncias
Considere os pixels p, q, z com coordenadas (x,y), (s,t) e (u,v)
D(p,q) >= 0 (D(p,q)=0 se e somente se p=q);
D(p,q) = D(q,p), e
D(p,z) <= D(p,q) + D(q,z).

Euquidiana (raio): De(p,q) = [(x-s)2 + (y-t)2] 1/2


2
D4 - Distncia City Block ou quarteiro 212
D4 (p,q) = |x-s| +|y-t| - menor distncia 21012
212
2
Distncia Xadrez. 22222
D8(p,q)= max (|x-s|,|y-t|). 21112
21012
21112
2222222
Zoom (quadriculado)
Cada ponto da imagem se transforma em quatro pontos da
imagem aumentada. Para diminuir o processo ao
contrrio, calculado a mdia aritmtica para cada grupo de
4 pontos. O valor da mdia considerado o valor de um
nico ponto da imagem de menor tamanho.
Aumentar a Imagem - Zoom in (linear)
Primeiro passo: Calcular a interpolao dos pontos ao longo das
linhas da imagem.
Segundo passo: Calcular a interpolao dos ponto ao longo das
colunas da imagem.
O ponto interpolado calculado pela mdia aritmtica de dois
pontos vizinhos.

Exemplo utilizando imagem em nveis de cinza:


Cor
10 15 20 15 10 20
10 20 10 20 17 14 12 10 15
30 8 10 30 19 8 9 10
50 20 2 40 27 14 10 6 10
50 35 20 11 2

Coordenadas da linha da imagem


Zoom in

Imagem Original

Zoom out
Diminuir a Imagem - Zoom out
Passo 1:
Calcular a mdia aritmtica, da cor, para cada grupo de no mximo
4 pixels vizinhos.
Passo 2:
O valor da mdia da cor considerado a cor resultante do pixel da
imagem de menor tamanho.
Imagem original (10+15+20+17)/ 4= 15,5
Em nveis de cinza (20+15+14+12)/4 = 15,25
(10+10)/2= 10
Diminuio
10 15 20 15 10 (30+19+40+27)/4= 25,5
20 17 14 12 10 da imagem
(8+9+14+10)/4 = 10
30 19 8 9 10 15 15 10
40 27 14 10 6 25 10 8 (10+6)/2= 8
50 35 20 11 2 42 15 2 (50+35)/2= 42,5
(20+11)/2= 15,5
2=2
Zoom in

Imagem Original

Zoom out pixels vizinhos


R G B
(10, 20, 30)
(15, 20, 25) interpolado
(20, 20, 20)
Zoom in

Imagem Original

Zoom out
Histogramas
Definio:
rk - Nvel de cinza k (cor) do pxel r
nk - Somatria de todos os pxels da imagem que possui o
nvel de cinza k
L - nmero mximo do nvel de cinza permitido em uma
imagem.
N - nmero total de pxels em uma imagem.

O histograma uma funo discreta dada por:


P(rk) = nk/N
k = 0,1,2,,L-1
P(rk) varia entre [0,1]

Ou seja, P(rk) a probabilidade de ocorrncia do nvel de


cinza rk na imagem
Histogramas
Exemplos de histogramas:
P(rk)
Imagem escura
0 L-1
P(rk)

Imagem clara
0 L-1
P(rk) Imagem com
pouco contraste
0
L-1
Considere r a intensidade do pxel antes do processamento
e s a intensidade do pxel depois do processamento.
L-1 s = T(r)
T(r)
s Negativo de uma imagem

0
0 r L-1

L-1

s T(r) Aumenta o contraste em


uma determinada regio
0
0 L-1
P(s)

r
P(r)
0

0
Exemplo de aplicao
Representao da Transformada de Fourier como imagem
Considere:
- A variao da Transformada de Fourier de uma imagem
igual a [0, R] = [0, 2.5x106]
- 256 nveis de cinza de uma imagem

s = T(r) Desta forma s = [0, 255] e r = [0, 2.5x106]

Como as principais informaes da T.F. esto contidas nas


regies prximas de zero ento a transformao T dever
realar as informaes prxima de zero em detrimento das
informaes prxima de 2.5x106.
Exemplo de aplicao
s = c log(1+|r|), neste caso r mximo igual a 2.5x106
ento log(1+| 2.5x106 |) = 6.4, portanto c = 255/6.4

Frmula final: s = (255/6.4) log(1+|r|)

L-1
(255)
s T(r)

0
0 r L-1
(2.5x106)
Exemplo de aplicao
Limiar ou threshold
Imagem original Histograma

P(rk) Segmenta
duas regies
0
L-1
Imagem resultante L-1
T(r)
s

0
0 r L-1

limiar
Equalizao de Histograma
Caractersticas:
a) T(r) um valor nico e monotonicamente crescente no intervalo
0 r 1 - preserva a ordem na escala de nveis de cinza
b) 0 T(r) 1 para 0 r 1 - Garante que a transformao T(r)
resulta em um s vlido na escala de nveis de cinza.
P(rk) = nk/N 0 rk 1 e k = 0, 1,, L - 1
Frmula final da equalizao que satisfaz os itens a e b:
k
ni
s k =T ( r k ) = Onde :Sk cor nova, rk cor original
i=0 N
Sk varia de 0 a 1 (como fazer para variar de 0 a 255)
k
rk varia de 0 a 1 ni
i varia de 0 a k - ( )
s k =T r k =
N
*255
k varia de 0 a 255 - k representa cor i=0
ni representa a quantidade da cor i na imagem
N total de pxels na imagem
Equalizao de Histograma
P(rk)
Antes
0
1
P(sk)
Depois da equalizao
0 1

Como fazer na prtica a equalizao da imagem ?


Lembre-se que a cor est representada entre o intervalo de 0 e 1.
Questes de Implementao
Mat image, copy_image, Mat gray_image, Mat result;
int vector[256];
uchar s;
image = imread("/users/alan/Desktop/alan.jpg");
if( !image.data )
{
printf( "No image data \n" );
return -1;
}
cvtColor(image, gray_image, CV_BGR2GRAY);
copy_image = image.clone();
for(int i = 0; i< gray_image.rows ; i++){
for (int j = 0; j< gray_image.cols ; j++) {
s = gray_image.at<uchar>(i, j);
vector[(int)s]++; // conta cor

}
Questes de Implementaes
s = gray_image.at<uchar>(i, j); // valor do nvel de cinza do pixel (i,j)
result.at<uchar>(j,i) = s;// atribui valor ao nvel de cinza do pixel (i,j)

gray_image.size().width; //largura da Imagem


gray_image.size().height; //altura da Imagem

namedWindow( "Display Image", CV_WINDOW_AUTOSIZE );


imshow( "Display Image", result );

result.create(height/2, width/2, CV_8UC3); //cria uma imagem


Vec3b color = image.at<Vec3b>(i,j);
result.at<Vec3b>(i,j) = color;
(int)color[0] cor Azul image.at<Vec3b>(j,i).val[0]
(int)color[1] cor verde image.at<Vec3b>(j,i).val[1]
(int)color[2] cor vermelha image.at<Vec3b>(j,i).val[2]

image.at<Vec3b>(j,i).val[1] = valor
Exerccios
1. Implemente, para uma imagem colorida e em nveis de
Cinza, o Zoom in e o Zoom out (aproximar/afastar).
Para o aumento e diminuio da imagem:
Implementao 1: Para cada pxel da imagem original
transforme-o em 4 pxel da imagem aumentada e vice e
versa (verifique o efeito desta transformao na imagem).
Implementao 2: Utilize a mdia entre os pxels para
aumentar a imagem (Zoom linear verifique o efeito desta
transformao na imagem)
Exerccios
2) Em uma imagem colorida deixe a imagem mais clara ou
mais escura. a) Utilize a soma ou subtrao de um nmero
em todos os canais de todos os pxes. Utilize o modelo de
cor HSV ou HSI.
3) Binarize uma imagem em nveis de cinza o parmetro do
limiar de binarizao um nvel de cinza dado pelo usurio.
4) Faa a equalizao do Histograma de uma imagem em
nveis de cinza.
5)
a) Utilizando o Modelo YIQ faa a equalizao do Histograma
de uma imagem.
b) Utilizando o Modelo HSV ou HSI faa a equalizao do
Histograma de uma imagem.
Exerccio
6) Implemente a seguinte transformao s[k] = T(k,L,H) em
uma imagem em nveis de cinza
Onde: s

k - a cor antiga da imagem 255

s - a nova cor transformada da imagem


T(k) obedece a seguinte formulao:
Dado 2 parmetros L e H, onde: (0,0) L H 255 k

L e H so cores variando de 0 a 255.


L sempre menor ou igual a H.
todo valor de k que for menor que L vira 0 (preto)
todo valor de k que for igual ou maior que H vira 255 (branco)
todo valor entre L e H a transformao de t(k) obedecer a
equao da reta cujo pontos extremos so (L,0) e (H,255), ou
seja dado k calcule (k, t(k)).
Bibliografias

[Castleman (1996)] Castleman, K. R. Digital Image Processing. Prentice Hall pp-667. 1996.
[Gonzalez (1993)] Gonzalez, R. F.; Woods, R. E. Digital Image Processing. Addison-Wesley, p
716. 1993.
[Hearn (1997)] Hearn, D; Baker, M. P. Computer Graphics, C Version. Prentice Hall, 2 a edio, p.
650. 1997.
[FOLEY_90] Foley, James D. et al : Computer Graphics - Principles and Practice, Addison-
Wesley Publishing Company, 1990.

[PERSIANO_89] Persiano, R.C.M.; Oliveira, A.A.F. :Introduo Computao Grfica, Livros


Tcnicos e Cientficos Editora Ltda., 1989.
[Pratt (1991)] Pratt, Willian K. Digital Image Processing. A Wiley-Interscience Publication, 2a
edio. 698 p. 1991.
http://www.icmsc.sc.usp.br/ensino/material/ - Link para o curso de computao grfica do
Instituto de Cincias Matemticas e de Computao (ICMC-USP- So Carlos, So Paulo).
Inserir trabalhos de TCC

Você também pode gostar