Buscar

Processamento Digital de Imagens (Slides) - Prof. Leonardo Vidal

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Prof. Leonardo Vidal Batista 
 
CI/PPGI 
leonardo@ci.ufpb.br 
 
Modelagem matemática, análise, projeto e 
implementação (S&H) de algoritmos, técnicas 
e sistemas voltados ao tratamento de 
informação pictórica, com fins estéticos, para 
torná-la mais adequada à interpretação ou 
aumentar eficiência de armazenamento e 
transmissão. 
28/09/2014 Leonardo Vidal Batista - 2 
28/09/2014 Leonardo Vidal Batista - 3 
28/09/2014 Leonardo Vidal Batista - 4 
Fonte: http://www.youtube.com/watch?v=2gtLgiWr8hE 
28/09/2014 Leonardo Vidal Batista - 5 
28/09/2014 Leonardo Vidal Batista - 6 
104 M bytes 
659 K bytes 
Compressão = 157:1 
 
28/09/2014 Leonardo Vidal Batista - 7 
 
Imagens 
Visão 
Computacional 
Computação 
Gráfica 
Processamento 
Digital de Imagens 
(sinais 2D) 
Dados 
Processamento 
Digital de Sinais 
 
28/09/2014 Leonardo Vidal Batista - 8 
 ImageNet large-scale visual recognition 
challenge 
 Team GoogLeNet 
28/09/2014 Leonardo Vidal Batista - 9 
 
28/09/2014 Leonardo Vidal Batista - 10 
 
28/09/2014 Leonardo Vidal Batista - 11 
 
28/09/2014 Leonardo Vidal Batista - 12 
 
28/09/2014 Leonardo Vidal Batista - 13 
 
28/09/2014 Leonardo Vidal Batista - 14 
 
28/09/2014 Leonardo Vidal Batista - 15 
 
28/09/2014 Leonardo Vidal Batista - 16 
 
28/09/2014 Leonardo Vidal Batista - 17 
 
28/09/2014 Leonardo Vidal Batista - 18 
 
28/09/2014 Leonardo Vidal Batista - 19 
 
28/09/2014 Leonardo Vidal Batista - 20 
 
28/09/2014 Leonardo Vidal Batista - 21 
 
28/09/2014 Leonardo Vidal Batista - 22 
28/09/2014 Leonardo Vidal Batista - 23 
 
28/09/2014 Leonardo Vidal Batista - 24 
 Interpol faz apelo público para identificar 
pedófilo (http://noticias.terra.com.br/mundo/interna/0,,OI1971484-EI294,00.html) 
 Fotos manipuladas digitalmente para disfarçar 
o rosto do pedófilo, 
 Especialistas da Agência de Polícia Federal na 
Alemanha recuperaram o rosto do suspeito 
 
28/09/2014 Leonardo Vidal Batista - 25 
 A imagem distorcida foi recuperada por especialistas 
28/09/2014 Leonardo Vidal Batista - 26 
 
28/09/2014 Leonardo Vidal Batista - 27 
 
28/09/2014 Leonardo Vidal Batista - 28 
 
28/09/2014 Leonardo Vidal Batista - 29 
 
28/09/2014 Leonardo Vidal Batista - 30 
 
28/09/2014 Leonardo Vidal Batista - 31 
http://www.echalk.co.uk/
amusements/OpticalIllusi
ons/illusions.htm 
 
28/09/2014 Leonardo Vidal Batista - 32 
 
28/09/2014 Leonardo Vidal Batista - 33 
 
28/09/2014 Leonardo Vidal Batista - 34 
 
28/09/2014 Leonardo Vidal Batista - 35 
 
28/09/2014 Leonardo Vidal Batista - 36 
 
28/09/2014 Leonardo Vidal Batista - 37 
 
28/09/2014 Leonardo Vidal Batista - 38 
 
28/09/2014 Leonardo Vidal Batista - 39 
 
28/09/2014 Leonardo Vidal Batista - 40 
 
28/09/2014 Leonardo Vidal Batista - 41 
 Luz: radiação eletromagnética 
 Freqüência f, comprimento de onda L, 
intensidade ou amplitude A 
 Faixa visível do espectro eletromagnético: 380 
nm < L < 780 nm 
Na faixa visível, o sistema visual humano 
(SVH) percebe comprimentos de onda 
diferentes como cores diferentes 
28/09/2014 Leonardo Vidal Batista - 42 
 
28/09/2014 Leonardo Vidal Batista - 43 
Fonte: http://www.dnr.sc.gov/ael/personals/pjpb/lecture/lecture.html 
 
28/09/2014 Leonardo Vidal Batista - 44 
 Radiação monocromática: radiação em um 
único comprimento de onda 
Cor espectral pura: radiação monocromática 
na faixa visível 
28/09/2014 Leonardo Vidal Batista - 45 
 
28/09/2014 Leonardo Vidal Batista - 46 
Denominação Usual da Cor Faixa do Espectro (nm) 
Violeta 380 – 440 
Azul 440 – 490 
Verde 490 – 565 
Amarelo 565 – 590 
Laranja 590 – 630 
Vermelho 630 – 780 
 
Aproximadamente esférico, diâmetro em torno 
de dois centímetros 
A luz penetra no olho passando pela pupila e 
pelo cristalino e atingindo a retina 
 Imagem invertida do cenário externo sobre a 
retina 
Cones e bastonetes convertem energia 
luminosa em impulsos elétricos que são 
transmitidos ao cérebro. 
28/09/2014 Leonardo Vidal Batista - 47 
 
28/09/2014 Leonardo Vidal Batista - 48 
 75 a 150 milhões/olho, sobre toda a retina 
 Insensíveis às cores 
 Baixa resolução - conectados em grupos aos 
terminais nervosos 
 Sensíveis à radiação de baixa intensidade na 
faixa visível 
Visão geral e de baixa luminosidade 
(escotópica) 
Objetos acinzentados sob baixa luminosidade 
28/09/2014 Leonardo Vidal Batista - 49 
 Thomas Young e Hermann von Helmholtz (séc. 19): 
3 tipos de receptores de cores no olho, os cones 
 L-cones: sensíveis a comprimentos de onda 
elevados – “sensíveis ao vermelho” (R) 
 M-cones: sensíveis a comprimentos de onda 
médios – “sensíveis ao verde” (G) 
 S-cones: sensíveis a comprimentos de onda 
reduzidos – “sensíveis ao azul” (B) 
 Cores representadas como soma de 3 cores 
primárias 
 28/09/2014 Leonardo Vidal Batista - 50 
 6 a 7 milhões/olho, concentrados na fóvea 
 Sensíveis às cores 
Alta resolução - um cone por terminal nervoso 
 Pouco sensíveis à radiação de baixa 
intensidade na faixa visível 
Visão específica, de alta luminosidade 
(fotópica) 
Movimentamos os olhos para que a imagem 
do objeto de interesse recaia sobre a fóvea. 
28/09/2014 Leonardo Vidal Batista - 51 
28/09/2014 Leonardo Vidal Batista - 52 
 http://www.telescope-
optics.net/eye_spectral_response.htm 
28/09/2014 Leonardo Vidal Batista - 53 
 Gonzalez&Woods, Digital Image Processing. 
 
28/09/2014 Leonardo Vidal Batista - 54 
Fonte: http://www.reefcorner.org/forum/conceitos_de_luminotecnica_colorimetria-52313 
28/09/2014 Leonardo Vidal Batista - 55 
 
Comprimento de onda (nm) 
700 600 500 400 
Re
sp
os
ta 
Cone “Vermelho” 
Cone “Verde” 
Cone “Azul” 
28/09/2014 Leonardo Vidal Batista - 56 
http://www.aif.estt.ipt.pt/Ficheiros_PDF/SensitAnalogica_FOTO/Fichas
/Cap3_Sensito.pdf 
A cor de uma fonte de radiação na faixa visível 
é definida pela adição das cores espectrais 
emitidas – sistema aditivo 
Combinação de radiações monocromáticas 
vermelho (R), verde (G) e azul (B) 
Cores primárias da luz 
 Sistema de cores RGB 
28/09/2014 Leonardo Vidal Batista - 57 
 Padronização da Comissão Internacional de 
Iluminação (CIE): 
• Azul: 435,8 nm 
• Verde: 546,1 nm 
• Vermelho: 700 nm 
28/09/2014 Leonardo Vidal Batista - 58 
Cores secundárias da luz: magenta (M), cíano 
(C) e amarelo (Y): 
• M = R + B 
• C = B + G 
• Y = G + R 
Cor branca (W): 
• W = R + G + B 
28/09/2014 Leonardo Vidal Batista - 59 
Cor em RGB é um vetor em um espaço 3D 
28/09/2014 Leonardo Vidal Batista - 60 
Fonte: http://corisectelmo.blogspot.com/2010/11/aula-12-experiencia-fundamental-da.html 
 Reta (i, i, i): reta acromática 
 Pontos na reta acromática: tonalidades de 
cinza ou níveis de cinza 
 Preto: (0, 0, 0) (ausência de luz) 
 Branco: (M, M, M), M é a intensidade máxima 
de uma componente de cor) 
Monitor de vídeo: sistema RGB 
28/09/2014 Leonardo Vidal Batista - 61 
Cor de objeto que não emite radiação 
depende dos pigmentos que absorvem 
radiação em determinadas faixas de 
freqüência e refletem outras 
Absorção variável 
de R, G e B da radiação 
incidente: sistema 
subtrativo 
28/09/2014 Leonardo Vidal Batista - 62 
Cores primárias dos pigmentos: absorvem 
uma cor primária da luz e refletem as outras 
duas 
• C = W –
R = G + B 
• M = W – G = R + B 
• Y = W – B = G + R 
28/09/2014 Leonardo Vidal Batista - 63 
Cores secundárias: 
• R = M + Y 
• G = C + Y 
• B = M + C 
 Preto (K): 
• K = C + M + Y = W – R – G – B 
 Impressoras coloridas: CMY ou CMYK 
28/09/2014 Leonardo Vidal Batista - 64 
28/09/2014 Leonardo Vidal Batista - 65 
 
 
28/09/2014 Leonardo Vidal Batista - 66 
(255,0,0) 
(0,255,0) 
 
(0,0,255) 
 
(0,0,0) 
 
(255,255,0) 
 
(255,0,255) 
 
(0,255,255) 
(128,128,128) 
 
(128,0,0) 
 
(0, 128,0) 
 
(0, 0, 128) (255,255,255) 
(255,128,64) (255,32,32) (255,128,128) (255,230, 230) 
 Transmissão de TV em cores: compatibilidade 
com TV P&B 
 Y: luminância, intensidade percebida, ou 
brilho 
 I e Q: crominâncias 
28/09/2014 Leonardo Vidal Batista - 67 
Conversão de RGB para YIQ 
• Y = 0.299R + 0.587G + 0.114B 
• I = 0.596R – 0.274G –0.322B 
• Q = 0.211R – 0.523G + 0.312B 
 
Conversão de YIQ para RGB : 
• R = 1.000 Y + 0.956 I + 0.621 Q 
• G = 1.000 Y – 0.272 I – 0.647 Q 
• B = 1.000 Y – 1.106 I + 1.703 Q 
28/09/2014 Leonardo Vidal Batista - 68 
 RGB = (25, 25, 25) 
 RGB = (200, 200, 200) 
 RGB = (100, 0, 0) 
 RGB = (0, 100, 0) 
 RGB = (100, 50, 25) 
 RGB = (200, 100, 50) 
 
 
 
 
28/09/2014 Leonardo Vidal Batista - 69 
YIQ = (25, 0, 0) 
YIQ = (200, 0, 0) 
YIQ = (29.9, 59.6, 21.1) 
YIQ = (58.7, -27.4, -52.3) 
YIQ = (62.1, 37.85, 2.75) 
YIQ = (124.2, 75.7, 5.5) 
 Fisiologicamente, a retina humana opera no 
sistema RGB 
A percepção subjetiva de cor é diferente 
Atributos perceptivos das cores: 
• Matiz (hue) ou tonalidade 
• Saturação 
• Intensidade 
28/09/2014 Leonardo Vidal Batista - 70 
 Hue-Saturation-Intensity (ou Lightness, Luminance, 
Luminosity) 
 Análogo aos sistemas HSB e HSV (L=Lightness , 
Luminance ou Luminosity; B=Brightness; V=Value). 
28/09/2014 Leonardo Vidal Batista - 71 
 
28/09/2014 Leonardo Vidal Batista - 72 
H=0o 
H=120o 
H=240o 
S=0 
S=0,5 
S=1 
S=1 
I=0 I=100% 
Matiz (H): determinada pelo comprimento de 
onda dominante; cor espectral mais próxima; 
denominação usual das cores 
H é um ângulo: 0o = R; 120o = G; 240o = B 
 Saturação: pureza da cor quanto à adição de 
branco 
 S = 0: cor insaturada (nível de cinza) 
 S = 1: cor completamente saturada 
Cores espectrais puras tem S = 1 
28/09/2014 Leonardo Vidal Batista - 73 
Algoritmos nas Notas de 
Aula 
RGB = (100, 100, 100) 
RGB = (255, 255, 255) 
RGB = (255, 255, 0) 
RGB = (0, 255, 0) 
RGB = (25, 255, 25) 
 
28/09/2014 Leonardo Vidal Batista - 74 
HSB = (0o, 0%, 39%) 
HSB = (0o, 0%, 100%) 
HSB = (60o, 100%, 100%) 
HSB = (120o, 100%, 100%) 
HSB = (120o, 90%, 100%) 
 
28/09/2014 Leonardo Vidal Batista - 75 
 y 
x 
 Função Ia(x,y) 
 (x, y): coordenadas espaciais 
 Ia(x,y): intensidade ou brilho da imagem em 
(x,y) 
28/09/2014 Leonardo Vidal Batista - 76 
Digitalização: 
• discretização espacial (amostragem) 
• discretização de intensidade (quantização) 
28/09/2014 Leonardo Vidal Batista - 77 
 
28/09/2014 Leonardo Vidal Batista - 78 
 
Sinal discreto 
Sinal analógico 
0 Ta 2Ta 3Ta ... 
Tempo, espaço etc. 
Am
pl
itu
de
 
 
28/09/2014 Leonardo Vidal Batista - 79 
 
Sinal digital 
Sinal analógico 
0 Ta 2Ta 3Ta ... 
0 
q 
2q 
 -2q 
... 
 -q 
... 
Tempo, espaço etc. 
Am
pl
itu
de
 
 
28/09/2014 Leonardo Vidal Batista - 80 
 
Sinal digital 
Sinal analógico 
 Erros 
 de 
quantização 0 Ta 2Ta 3Ta ... 
0 
q 
2q 
 -2q 
... 
 -q 
... 
Tempo, espaço etc. 
Am
pl
itu
de
 
v. Domínio da Frequência 
 
28/09/2014 Leonardo Vidal Batista - 81 
Processador 
analógico Sinal analógico 
de entrada 
Sinal analógico 
de saída 
 
28/09/2014 Leonardo Vidal Batista - 82 
Conversor 
A/D 
Processador 
Digital 
Sinal 
analógico 
Sinal 
digital 
Conversor 
A/D 
Processador 
Digital 
Sinal 
analógico 
Sinal 
analógico Conversor 
D/A 
Alguns sinais são inerentemente digitais ou 
puramente matemáticos 
 Ex: Número de gols por rodada do 
campeonato brasileiro de futebol 
Neste caso, não há necessidade de Conversão 
A/D 
Ainda assim, pode haver necessidade de 
conversão D/A 
• Ex: texto -> voz sintetizada 
28/09/2014 Leonardo Vidal Batista - 83 
Hardware, software, ou ambos 
Maior flexibilidade 
Menor custo 
Menor tempo de desenvolvimento 
Maior facilidade de distribuição 
 Sinais digitais podem ser armazenados e 
reproduzidos sem perda de qualidade 
Mas alguns sistemas exigem uma etapa 
analógica! 
 
28/09/2014 Leonardo Vidal Batista - 84 
 
28/09/2014 Leonardo Vidal Batista - 85 
Sinal analógico original 
Sinal corrompido, recuperação difícil ou impossível 
 
28/09/2014 Leonardo Vidal Batista - 86 
‘1’ 
‘0’ 
Sinal digital original 
‘1’ 
‘0’ 
Sinal corrigido 
Sinal corrompido – recuperação 
possível+códigos corretores. 
‘1’ 
‘0’ 
Sinal recuperado (com erro) 
‘1’ 
‘0’ 
 Ta: período de amostragem (unidade de espaço 
ou tempo) 
 fa = 1/Ta: freqüência de amostragem 
(amostras/unidade de espaço ou tempo) 
 q: tamanho do passo de quantização 
 Sinal analógico: s(t), s(x) 
 Sinal digitalizado: s[nTa], n inteiro não negativo, 
s[nTa] {-Mq, ..., -2q, -q, 0, q, 2q, ..., (M-1)q} 
28/09/2014 Leonardo Vidal Batista - 87 
 Sinal analógico r(t): voltagem na saída de um 
sistema, em função do tempo 
 T = 0.5 s, q = 0.5 V, M = 64 
 
 
 
 
 
 
 
28/09/2014 Leonardo Vidal Batista - 88 
 
0 1 2 3 4 5 6 7 
-40 
-20 
0 
20 
40 
Vo
lts 
segundos 
Sinal analógico 
 
Amostragem com T = 0.5s: r(0.5n), n = 0, 1, 2, ... 
Considere que 
• r(0.0) = 9.71293 V... 
• r(0.5) = 7.75000 V... 
• r(1.0) = -2.24555 V... 
• r(1.5) = -10.50000 V... 
Quantização com q = 0.5 V e M = 64 
• r[0.5n] {-32, -31.5..., -0.5, 0, 0.5 1,...,31, 31.5} 
 
 
28/09/2014 Leonardo Vidal Batista - 89 
 

 r[0]=9.5V, r[0.5]=8V, 
r[1]=-2V, r[1.5]= -10.5V, ... 
Notação Simplificada: 
• r[n] {-M,..., -2, -1, 0, 1, 2,..., M-1} 
• r[0]=19, r[1]=16, 
r[2]=-4, r[3]=-21,... 
• r[n] = {19, 16, -4, -21, ...} 
28/09/2014 Leonardo Vidal Batista - 90 

 Em um processo de digitalização foram colhidas N=10 
amostras de um sinal de temperatura (º Celsius) 
igualmente espaçadas ao longo de um segmento de reta 
unindo duas cidades A e B. A 1ª amostra foi colhida na 
cidade A e a última na cidade B. O sinal digital resultante é 
s[n] = {12 12 13 13 14 13 14 14 15 14} 
 Perguntas: 
 (a) Distância entre as cidades? 
 (b) Valores de temperatura registrados? 
 (c) Limites de temperatura registrável? 
 (d) Qual o valor de s[5km]? 
 (e) Erro máximo cometido na conversão 
28/09/2014 Leonardo Vidal Batista - 91 
 Precisamos conhecer f, q e M! 
 Dados: 
f = 0.1 amostra/km 
q = 2o Celsius 
M = 16; 
28/09/2014 Leonardo Vidal Batista - 92 
 Em um processo de digitalização foram colhidas N=10 
amostras de um sinal de temperatura (º Celsius) 
igualmente espaçadas ao longo de um segmento de reta 
unindo duas cidades A e B. A 1ª amostra foi colhida na 
cidade A e a última na cidade B. O sinal digital resultante é 
s[n] = {12 12 13 13 14 13 14 14 15 14} 
 f = 0.1 amostra/km, q = 2o Celsius, M = 16 
 Perguntas: 
 (a) Distância
entre as cidades? 
 (b) Valores de temperatura registrados? 
 (c) Limites de temperatura registrável? 
 (d) Qual o valor de s[5km]? 
 (e) Erro máximo cometido na conversão 
 28/09/2014 Leonardo Vidal Batista - 93 
 T = 10 km/amostra 
 (a) Distância entre as cidades = 
(10-1)x10 = 90 km 
 (b) Temperaturas (º Celsius): 
{24 24 26 26 28 26 28 28 28 30} 
 (c) Limites de temperatura (º Celsius): [-32,30] 
 (d) s[5km]: no sinal digital s[nT] não há nT = 
5km! 
 (e) Indefinido! 
28/09/2014 Leonardo Vidal Batista - 94 
Conversor Analógico/Digital (Analog to 
Digital Converter - ADC): amostra, quantiza 
em L níveis e codifica em binário. 
Um transdutor deve converter o sinal de 
entrada para tensão elétrica (V) 
Códigos de b bits: L = 2b níveis de quantização 
 Exemplo: b = 8, L = 256 
ADC de b bits 
 
28/09/2014 Leonardo Vidal Batista - 95 
ADC unipolar: voltagem de entrada de 0 a Vref 
ADC bipolar: voltagem de entrada de -Vref a 
Vref 
 Exemplo: ADC unipolar de 3 bits, Vref = 10 V 
• L = 2³ = 8, Resolução de voltagem: 10/8 = 1,25V 
 Exemplo: ADC bipolar de 3 bits, Vref = 5 V 
• L = 2³ = 8, Resolução de voltagem: 10/8 = 1,25V 
 
28/09/2014 Leonardo Vidal Batista - 96 
 
28/09/2014 Leonardo Vidal Batista - 97 
Unipolar Bipolar 
Voltagem Código Voltagem Código 
[0,00, 1,25) 
[1,25, 2,50) 
[2,50, 3,75) 
[3,75, 5,00) 
[5,00, 6,25) 
[6,25, 7,50) 
[7,50, 8,75) 
[8,75, 10,0) 
000 
001 
010 
011 
100 
101 
110 
111 
[-5,0, -3,75) 
[-3,75, -2,5) 
[-2,5, -1,25) 
[-1,25, 0,0) 
[0,00, 1,25) 
[1,25, 2,50) 
[2,50, 3,75) 
[3,75, 5,00) 
000 
001 
010 
011 
100 
101 
110 
111 
 
O bit menos significativo (LSB) do código se 
altera em incrementos de 1,25V. 
 Resolução de voltagem: “valor” do LSB 
Alguns parâmetros: fa, Vref, b, ... 
 
28/09/2014 Leonardo Vidal Batista - 98 
 
28/09/2014 Leonardo Vidal Batista - 99 
 
0 1 2 3 4 5 6 7 
-40 
-20 
0 
20 
40 
Vo
lts
 
segundos 
Sinal analógico 
 
0 1 2 3 4 5 6 7 
-40 
-20 
0 
20 
40 
f = 2 amostras/s 
(T = 0,5s), q = 1 
 
0 1 2 3 4 5 6 7 
-40 
-20 
0 
20 
40 
Sinal analógico 
reconstruído 
 
28/09/2014 Leonardo Vidal Batista - 100 
 
0 1 2 3 4 5 6 7 
-40 
-20 
0 
20 
40 
Vo
lts
 
segundos 
Sinal analógico 
 
0 1 2 3 4 5 6 7 
-40 
-20 
0 
20 
40 
f = 5 amostras/s 
(T = 0,2s), q = 1 
 
0 1 2 3 4 5 6 7 
-40 
-20 
0 
20 
40 
Sinal analógico 
reconstruído 
 
28/09/2014 Leonardo Vidal Batista - 101 
 
0 1 2 3 4 5 6 7 
-40 
-20 
0 
20 
40 
Vo
lts
 
segundos 
Sinal analógico 
 
0 1 2 3 4 5 6 7 
-40 
-20 
0 
20 
40 
f = 10 amostras/s 
(T = 0,1s), q = 1 
 
0 1 2 3 4 5 6 7 
-40 
-20 
0 
20 
40 
Sinal analógico 
reconstruído 
 
28/09/2014 Leonardo Vidal Batista - 102 
 
0 1 2 3 4 5 6 7 
-40 
-20 
0 
20 
40 
Vo
lts
 
segundos 
Sinal analógico 
 
0 1 2 3 4 5 6 7 
-40 
-20 
0 
20 
40 
f = 10 amostras/s 
(T = 0,1s), q = 16 
 
0 1 2 3 4 5 6 7 
-40 
-20 
0 
20 
40 
Sinal analógico 
reconstruído 
 f[i, j] {0, 1, 2,..., M-1} 
 Tipicamente, M = 256 

28/09/2014 Leonardo Vidal Batista - 103 
 
28/09/2014 Leonardo Vidal Batista - 104 
Th 
Tv 
161 161 
 
28/09/2014 Leonardo Vidal Batista - 105 












95...163163
............
142...161161
142...161161
 
28/09/2014 Leonardo Vidal Batista - 106 
 
28/09/2014 Leonardo Vidal Batista - 107 












95...163163
............
142...161161
142...161161
 
28/09/2014 Leonardo Vidal Batista - 108 
0 100 200 300 400 500
0
50
100
150
200
250
0 50 100 150 200 250 300 350
0
50
100
150
200
250
i=0 
J=266 
 
28/09/2014 Leonardo Vidal Batista - 109 
256x256 / 256 níveis 256x256 / 64 níveis 256x256 / 2 níveis 
32x32 / 256 níveis 
 
28/09/2014 Leonardo Vidal Batista - 110 
128 grey levels (7 bpp) 64 grey levels (6 bpp) 32 grey levels (5 bpp) 
16 grey levels (4 bpp) 8 grey levels (3 bpp) 4 grey levels (2 bpp) 2 grey levels (1 bpp) 
256 grey levels (8 bits per pixel) 
 
28/09/2014 Leonardo Vidal Batista - 111 
Banda R Banda G Banda B 
Imagem RGB 












138...00
............
3...129132
3...133137












79...00
............
3...8991
3...9296












37...00
............
3...6163
3...6468
 
28/09/2014 Leonardo Vidal Batista - 112 
Banda R Banda G Banda B 
Imagem RGB 
Uma imagem é uma matriz bidimensional 
observada de forma pictórica. 
 Imagens de densidade demográfica, de raios 
x, de infravermelho, de temperaturas de uma 
área, etc. 
28/09/2014 Leonardo Vidal Batista - 113 
 Monocromáticos: fila de diodos fotossensíveis em 
um suporte que se desloca 
 Coloridos: fila de diodos fotossensíveis, recobertos 
por filtros R, G e B, em um suporte que se desloca 
 Lâmpada fluorescente branca 
ilumina o objeto 
 Diodos produzem carga elétrica 
proporcional à intensidade da 
luz refletida pelo objeto 
 
 
28/09/2014 Leonardo Vidal Batista - 114 
 
28/09/2014 Leonardo Vidal Batista - 115 
 
28/09/2014 Leonardo Vidal Batista - 116 
 Th: distância entre diodos no suporte 
 Tv: tamanho do passo do suporte 
 Th e Tv definem a resolução espacial 
M: profundidade de cor ou resolução de 
contraste 
 Resolução espacial: pontos por polegada (dot 
per inch, dpi) (1 ponto = 1 sensor em scanner 
monocromático, 3 sensores em scanners RGB) 
 1 pol = 2,54 cm. 
 
28/09/2014 Leonardo Vidal Batista - 117 
 
 
 Ex: scanner 300 x 300 dpi, capaz de digitalizar 
de formato carta(8,5 x 11’’), no máximo 
• 8,5x300=2550 diodos (mono) ou 
• 3x2550=7650 diodos (cor) 
Aumentar resolução vertical sem aumentar o 
número de sensores 
 
28/09/2014 Leonardo Vidal Batista - 118 
 
28/09/2014 Leonardo Vidal Batista - 119 
 Sensor de imagem: matriz de diodos 
fotosensíveis cobertos por filtros R, G e B 
Diodos produzem carga elétrica proporcional 
à intensidade da luz incidente 
 Resolução espacial de câmeras: número de 
pontos (ou pixels), RxC 
(1 ponto = 3 sensores) 
 
28/09/2014 Leonardo Vidal Batista - 120 
 
28/09/2014 Leonardo Vidal Batista - 121 
 
... 
... 
 
28/09/2014 Leonardo Vidal Batista - 122 
Pontos de cálculo 
dos valores RGB 
 
28/09/2014 Leonardo Vidal Batista - 123 
Fonte: http://micro.magnet.fsu.edu/primer/digitalimaging/cmosimagesensors.html 
 
28/09/2014 Leonardo Vidal Batista - 124 
Fonte: http://micro.magnet.fsu.edu/primer/digitalimaging/cmosimagesensors.html 
 
28/09/2014 Leonardo Vidal Batista - 125 
Fonte: http://www.moglik.com/i/show/4255/camera-sensor-cmos-diagrama.htm 
 
28/09/2014 Leonardo Vidal Batista - 126 
 
28/09/2014 Leonardo Vidal Batista - 127 
 Fuji S9500–ISO 1600 
9 M pixels 
Canon EOS350D–ISO 1600 
8 M pixels 
 
28/09/2014 Leonardo Vidal Batista - 128 
 Fuji S9500–ISO 1600 
Canon EOS350D–ISO 1600 
 Boa qualidade: resolução abaixo de 5 M pixels 
/cm2 (em 2012 ) 
• Canon EOS 5D Mark III: 22 M pixels, R$ 10.000,00 
• Canon 60D, R$ 2.500,00 
• Nikon CoolPix P7100, R$ 1.200,00 
• Sony Cyber-shot DSC-TX100V, R$
1.000,00 
 
 
 
 
 
28/09/2014 Leonardo Vidal Batista - 129 
 Boa qualidade: resolução abaixo de 5 M pixels 
/cm2 (em 2012 ) 
• Canon EOS 5D Mark III: 22 M pixels /(3,6cm 
x2,4cm) = 2,5 M pixels/cm2 
• Canon 60D: 18 M pixels/(2,23cm x1,49cm) = 
5,4 M pixels/cm2 
• Nikon CoolPix P7100: 10M pixels /(0,76cm x 
0,57cm) = 23 M pixels/cm2 
• Sony Cyber-shot DSC-TX100V: 16,2 M pixels / 
(0,617 x 0,455 cm) = 57 M pixels/cm2 
 
 
 
28/09/2014 Leonardo Vidal Batista - 130 
 Exemplo: Sony DSC V1: 1944 x 2592 pixels = 
5Mpixels. Digitalizar papel em formato carta 
com imagem da folha ocupando todo o sensor. 
Resolução (em dpi)? Comparar com scanner 
de 300 x 300 dpi, em qualidade, número de 
sensores e preço. Comparar com scanner de 
2400 x 2400 dpi. 
 
28/09/2014 Leonardo Vidal Batista - 131 
 
 Solução: 
 1944 / 8,5 pol x 2592/11 pol = 228,7 dpi x = 235,6 
dpi 
 Resolução espacial inferior à do scanner de 300 x 
300 dpi, com 1944 x 2592 x 3 / 7650 = 1976 vezes 
mais sensores, mais cara, aberrações geométricas 
e de cor, etc. 
 Câmeras digitais têm escopo de aplicação maior 
e são mais rápidas 
 Scanner de 2400 x 2400 dpi = câmera de 500 
Mpixels! 
28/09/2014 Leonardo Vidal Batista - 132 
 Exemplo: câmera digital, 2000 x 3000 pontos 
(6 Mpixels), foto impressa em formato 10x15 
cm, com o mesmo no. de pontos. Qual a 
resolução (dpi) no papel? 
 10x15 cm = 3,94 x 5,91 pol. 
 Resolução (dpi): 3000/5,91 = 2000/3,94 = 
507x507 dpi 
28/09/2014 Leonardo Vidal Batista - 133 
 Ex: foto 10x15cm, scanneada a 1200x1200 dpi, 
24 bits/pixel. Tamanho em bytes? 
Dimensões impressa em 1440x1440 dpi? 
Dimensões impressa em 720 x 720 dpi? 
Dimensões em tela de 14 pol., resolução 
1024x768? Resolução em dpi da tela? 
Dimensões em tela de 17 pol., resolução 
1024x768? Resolução em dpi da tela? 
 
28/09/2014 Leonardo Vidal Batista - 134 
 Solução: 
 Foto 10x15cm = 3,94 x 5,91 pol. 
 Tamanho em bytes: 3,94x1200 x 5,91x1200 
pixels x 3 bytes/pixel = 4728 x 7092 x 3 = 100 
milhões de bytes (96 MB) 
Dimensões (pol) em impressora de 1440x1440 
dpi: 4728/1440 x 7092/1440 = 3,3 x 4,9 pol. 
Dimensões (pol.) em impressora de 720 x 720 
dpi = 6,6 x 9,9 pol 
28/09/2014 Leonardo Vidal Batista - 135 
 Solução: 
 Dimensões em tela de 14 pol., em resolução de 
1024x768 pontos? Resolução em dpi da tela? 
 x2 + y2 = 142 
 x/y = 3/4 
 x = 8,4 pol; y = 11,2 pol. 
 Res. = 1024/11,2 x 768/8,4 = 91,4 x 91,4 dpi. 
 Dimensões = 4728 / 91,4 x 7092 / 91,4 =51,73 x 
77,59 pol = 131,39 x 197,09cm (apenas parte da 
imagem será visível) 
 
28/09/2014 Leonardo Vidal Batista - 136 
 Solução: 
 Dimensões em tela de 17 pol., em resolução de 
1024x768 pontos? Resolução em dpi da tela? 
 y = 13,6 pol; x = 10,2 pol 
 Res. = 1024/13,6 x 768/10,2 = 75,3 x 75, 3 dpi 
(pior que no monitor de 14 pol) 
 Dimensões = 4728 / 75,3,4 x 7092 / 75,3 =62,79 x 
94,18 pol = 159,49 x 239,22cm (apenas parte da 
imagem será visível) 
 
28/09/2014 Leonardo Vidal Batista - 137 
A e C: Placas aceleradoras e defletoras 
D: tela com pontos de fósforos RGB 
 F: Máscara de sombra ou grade de abertura 
28/09/2014 Leonardo Vidal Batista - 138 
 
28/09/2014 Leonardo Vidal Batista - 139 
 
28/09/2014 Leonardo Vidal Batista - 140 
 
28/09/2014 Leonardo Vidal Batista - 141 
 
28/09/2014 Leonardo Vidal Batista - 142 
 
28/09/2014 Leonardo Vidal Batista - 143 
 
28/09/2014 Leonardo Vidal Batista - 144 
 Linha 0 
 Linha 1 
 Linha R-1 
 Espaço / freqüência 
 Locais / pontuais 
Unárias / binárias / ... / n-árias 
28/09/2014 Leonardo Vidal Batista - 145 
Operação T sobre n imagens, f1, f2, ..., fn, 
produzindo uma imagem de saída g 
 
 g = T[f1, f2, ..., fn] 
 
Operações binárias: n = 2 
Operações unárias ou filtros: n = 1 
 
 g = T[f] 
28/09/2014 Leonardo Vidal Batista - 146 
 g(i, j) depende do valor do pixel nas 
coordenadas (i’, j’) das imagens de entrada 
28/09/2014 Leonardo Vidal Batista - 147 
j’ 
i’ 
j 
i 
T 
 Se (i, j) = (i’, j’) e operação unária: s = T(r) 
 r, s: nível de cinza de f, g em (i, j) 
28/09/2014 Leonardo Vidal Batista - 148 
 
m (0,0) (0,0) m r r 
s s 
Aumento de Contraste Limiarização 
ou binarização 
 
28/09/2014 Leonardo Vidal Batista - 149 
 
28/09/2014 Leonardo Vidal Batista - 150 
 
28/09/2014 Leonardo Vidal Batista - 151 
 
(0,0) r 
s 
L-1 
L-1 
 
(0,0) 
 r 
s 
L-1 
L-1 
(r1, s1) 
(r2, s2) 
 
28/09/2014 Leonardo Vidal Batista - 152 
 
28/09/2014 Leonardo Vidal Batista - 153 
 g(i, j) depende dos valores dos pixels das 
imagens de entrada em uma vizinhança de (i’, 
j’) 
28/09/2014 Leonardo Vidal Batista - 154 
 
 i’ 
 j’ 
 Vizinhança de (i, j) 
 i 
 j 
 f g 
 
28/09/2014 Leonardo Vidal Batista - 155 
 Filtro Média, ou Box 
 
 
 
 
 Operação sobre pixels da imagem original: 
resultado do filtro em um dado pixel não altera o 
resultado em outros pixels. 
 Primeira e última coluna/linha? 
 
28/09/2014 Leonardo Vidal Batista - 156 
 
 
)]1,1(),1()1,1( 
)1,(),()1,( 
)1,1(),1()1,1([
9
1
),(



jifjifjif
jifjifjif
jifjifjifjig
 
 Kernel 
 
28/09/2014 Leonardo Vidal Batista - 157 
 
1/9 1/9 1/9 
1/9 1/9 1/9 
1/9 1/9 1/9 
 
 
 
 
 
28/09/2014 Leonardo Vidal Batista - 158 
 
 
 
7x7 15x15 
 
 
 
 
 
28/09/2014 Leonardo Vidal Batista - 159 
 
49x49 
Média ponderada, moda, mediana, gaussiano 
(média ponderada específica)... 
Vizinhança m x n 
28/09/2014 Leonardo Vidal Batista - 160 
Mediana 7x7 Gaussiano 15x15 
 Kernel 
28/09/2014 Leonardo Vidal Batista - 161 
 
28/09/2014 Leonardo Vidal Batista - 162 
 
28/09/2014 Leonardo Vidal Batista - 163 
 
28/09/2014 Leonardo Vidal Batista - 164 
 
28/09/2014 Leonardo Vidal Batista - 165 
 
28/09/2014 Leonardo Vidal Batista - 166 
 
28/09/2014 Leonardo Vidal Batista - 167 
 Efeito contrário ao de suavização: acentuam 
variações de intensidade entre pixels 
adjacentes 
 Baseados no gradiente de funções 
bidimensionais. 
Gradiente de f(x, y): 
 
28/09/2014 Leonardo Vidal Batista - 168 
 
 















y
f
x
f
yxfG




)],([ 2/122
)],([





















y
f
x
f
yxfG




 g(i, j): aproximação discreta do módulo do 
vetor gradiente em f(i, j). 
Aproximações usuais: 
• g(i, j) = {[f(i,j)-f(i+1,j)]2 + [f(i,j)-f(i,j+1)]2}1/2 
• g(i, j) = |f(i,j)-f(i+1,j)| + |f(i,j)-f(i,j+1)| 
 
Gradiente de Roberts: 
• g(i,j) = {[f(i,j)-f(i+1,j+1)]2+[f(i+1,j)-f(i,j+1)]2}1/2 
• g(i, j) = |f(i,j)-f(i+1,j+1)| + |f(i+1,j)-f(i,j+1)| 
28/09/2014 Leonardo Vidal Batista - 169 
Gradiente de Prewitt: 
• g(i, j) = |f(i+1,j-1) + f(i+1, j) + f(i+1, j+1) + 
 - f(i-1, j-1) - f(i-1, j) - f(i-1, j+1)| + 
 +|f(i-1, j+1) + f(i, j+1) + f(i+1, j+1) + 
 - f(i-1, j-1) - f(i, j-1) - f(i+1, j-1)| 
 
Gradiente de Sobel: 
• g(i, j) = |f(i+1, j-1) + 2f(i+1, j) + f(i+1, j+1) + 
 - f(i-1, j-1) - 2f(i-1, j) - f(i-1, j+1)| + 
 + |f(i-1, j+1)
+ f(i, j+1) + f(i+1, j+1) + 
 - f(i-1, j-1) - 2f(i, j-1) - f(i+1, j-1)| 
28/09/2014 Leonardo Vidal Batista - 170 
 
28/09/2014 Leonardo Vidal Batista - 171 
Limiares 15, 30 e 60 
28/09/2014 Leonardo Vidal Batista - 172 
Prewitt Canny Roberts 
Sobel LoG 
 Se o nível de cinza l ocorre nl vezes em 
imagem com n pixels, então 
 
 
Histograma da imagem é uma representação 
gráfica de nl ou P(l) 
 
28/09/2014 Leonardo Vidal Batista - 173 
n
n
lP l)(
 
 
Leonardo Vidal Batista - 174 
 
 3 3 
 Histograma 
 Imagem 
 l 
 nl 
 7 
 6 
 5 
 4 
 3 
 2 
 1 
 0 
 3 2 1 0 
 0 0 1 
 3 3 3 0 0 
 3 3 1 1 1 
Imagem 3 x 5 (L = 4) e seu histograma 
O histograma representa a distribuição 
estatística de níveis de cinza de uma imagem 
28/09/2014 Leonardo Vidal Batista - 175 
 
 l 
 nl 
 255 0 
 
 l 
 nl 
 255 0 
 
 l 
 nl 
 255 0 
 
28/09/2014 Leonardo Vidal Batista - 176 
0 50 100 150 200 250
0
2000
4000
6000
8000
10000
 
28/09/2014 Leonardo Vidal Batista - 177 
0 50 100 150 200 250
0
500
1000
1500
 Faixa reduzida de níveis de cinza: expansão de 
histograma pode produzir uma imagem mais 
rica visualmente. 
28/09/2014 Leonardo Vidal Batista - 178 
 
 l 
 nl 
L-1 m0=0 
 l 
 nl 
L-1 0 
 l 
 nl 
m1=L-1 0 m0 m1 
A B C 
m1 m0 
 
28/09/2014 Leonardo Vidal Batista - 179 









 )1()(
minmax
min L
rr
rr
roundrTs
 
28/09/2014 Leonardo Vidal Batista - 180 
0 50 100 150 200 250
0
500
1000
1500
0 50 100 150 200 250
0
500
1000
1500
 Expansão é ineficaz nos seguintes casos: 
28/09/2014 Leonardo Vidal Batista - 181 
 
 l 
 nl 
L-1 0 
 l 
 nl 
L-1 0 
 l 
 nl 
L-1 0 m0 m1 
A B C 
L-1 
 Se a imagem apresenta pixels de valor 0 e L-1 
(ou próximos a esses extremos) a expansão de 
histograma é ineficaz. 
Nestas situações a equalização de histograma 
pode produzir bons resultados. 
O objetivo da equalização de histograma é 
gerar uma imagem com uma distribuição de 
níveis de cinza uniforme. 
28/09/2014 Leonardo Vidal Batista - 182 
 
28/09/2014 Leonardo Vidal Batista - 183 










r
l
ln
RC
L
roundrTs
0
1
)(
0 50 100 150 200 250
0
500
1000
1500
0 50 100 150 200 250
0
500
1000
1500
 Exemplo: imagem 64 x 64, L = 8 
28/09/2014 Leonardo Vidal Batista - 184 
 
l nl 
0 790 
1 1023 
2 850 
3 656 
4 329 
5 245 
6 122 
7 81 
 
 l 
 nl 
 1200 
 1000 
 800 
 600 
 400 
 200 
 0 
 7 6 5 4 3 2 1 0 
 Exemplo (cont.): 
 r = 0  s = round(790 x 7 / 4096) = 1 
 r = 1  s = round(1813 x 7 / 4096) = 3 
 r = 2  s = round(2663 x 7 / 4096) = 5 
 r = 3  s = round(3319 x 7 / 4096) = 6 
 r = 4  s = round(3648 x 7 / 4096) = 6 
 r = 5  s = round(3893 x 7 / 4096) = 7 
 r = 6  s = round(4015 x 7 / 4096) = 7 
 r = 7  s = round(4096 x 7 / 4096) = 7 
28/09/2014 Leonardo Vidal Batista - 185 
 Exemplo: imagem 64 x 64, L = 8 
28/09/2014 Leonardo Vidal Batista - 186 
 
l nl 
0 0 
1 790 
2 0 
3 1023 
4 0 
5 850 
6 985 
7 448 
 
 k 
 nk 
 1200 
 1000 
 800 
 600 
 400 
 200 
 0 
 7 6 5 4 3 2 1 0 
 
28/09/2014 Leonardo Vidal Batista - 187 
 
 l 
 nl 
L-1 0 
 l 
 nl 
L-1 0 
 l 
 nl 
L-1 0 m0 m1 
Hist. Original Hist. Equal. (Ideal) 
L-1 
Hist. Equal. (Real) 
 Expansão de histograma é pontual ou local? E 
equalização de histograma? 
O que ocorre quando uma imagem com um 
único nível passa pela operação de 
equalização de histograma? 
Melhor fazer equalização seguido por 
expansão de histograma, o inverso, ou a ordem 
não importa? 
 
28/09/2014 Leonardo Vidal Batista - 188 
 Para cada locação (i,j) de f 
• Calcular histograma na vizinhança de (i,j) 
• Calcular s = T(r) para equalização de histograma na 
vizinhança 
• G(i,j) = s 
 
28/09/2014 Leonardo Vidal Batista - 189 
 
28/09/2014 Leonardo Vidal Batista - 190 








0),();,(
0),()];,(),([
),(
),(
),(
jijif
jijijif
ji
c
ji
jig


Leonardo Vidal Batista - 191 
Nível de 
cinza 
R G B 
0 15 20 30 
1 15 25 40 
... 
L-1 200 0 0 
28/09/2014 Leonardo Vidal Batista - 192 
Curtose, máximo, mínimo etc. 
 Filtros de suavização + filtros de aguçamento 
 Laplaciano do Gaussiano (LoG) 
 “Emboss” 
Aumento de saturação 
Correção de gama 
 ... 
28/09/2014 Leonardo Vidal Batista - 193 
 Filtro linear: 
• T [af1 + bf2] = aT [f1] + bT [f2], para constantes 
arbitrárias a e b. 
 Filtro invariante ao deslocamento: 
• Se g[i, j] = T [f[i, j]] 
então g[i - a, j – b] = T [f[i - a, j – b]]. 
 Se i e j são coordenadas espaciais: filtros 
espacialmente invariantes. 
28/09/2014 Leonardo Vidal Batista - 194 
Convolução de s(t) e h(t): 
28/09/2014 Leonardo Vidal Batista - 195 



  dthsthtstg )()()(*)()(
 
28/09/2014 Leonardo Vidal Batista - 196 



  dthsthtstg )()()(*)()(
 
 t2 t3 
)(h 
0 
 
 
 -t2 -t3 0  
)( h 
 
-t2+t -t3+t 
)( th 
 
 
 t0 t1 
(0,0) 
s(t) 
 t 
Observe que g(t) = 0 para 
28/09/2014 Leonardo Vidal Batista - 197 
][ 3120 t, t ttt 
Convolução linear entre s[n] e h[n] 
28/09/2014 Leonardo Vidal Batista - 198 





 ][][][*][][ nhsnhnsng
 
 
 
28/09/2014 Leonardo Vidal Batista - 199 





 ][][][*][][ nhsnhnsng
0...0.000...
...]3[]1[]2[]0[]1[]1[]0[]2[...]2[][]2[

 


x
hshshshshsg


0...0000...
...]2[]1[]1[]0[]0[]1[]1[]2[...]1[][]1[

 


xx
hshshshshsg


n 0 1 2 3 4 5 6 
s[n] 1 2 3 4 5 2 1 
h[n] 3 2 1 0 1 2 
 
 
28/09/2014 Leonardo Vidal Batista - 200 





 ][][][*][][ nhsnhnsng
3...023100...
...]1[]1[]0[]0[]1[]1[...][][]0[

 


xxx
hshshshsg


8...00322100
]...1[]2[]0[]1[]1[]0[]2[]1[...]1[][]1[

 


xxxx
hshshshshsg


n 0 1 2 3 4 5 6 
s[n] 1 2 3 4 5 2 1 
h[n] 3 2 1 0 1 2 
 
 
28/09/2014 Leonardo Vidal Batista - 201 





 ][][][*][][ nhsnhnsng
12...0001122500...]2[]7[]3[]6[]4[]5[
]5[]4[]6[]3[]7[]2[]8[]1[]9[]0[...]9[][]9[

 


xxxxxhshshs
hshshshshshsg


n 0 1 2 3 4 5 6 
s[n] 1 2 3 4 5 2 1 
h[n] 3 2 1 0 1 2 
5...1000112200
...]3[]7[]4[]6[]5[]5[]6[]4[...]10[][]10[

 


xxxxx
hshshshshsg


 
 
28/09/2014 Leonardo Vidal Batista - 202 





 ][][][*][][ nhsnhnsng
2...002100
...]4[]7[]5[]6[]6[]5[...]11[][]11[

 


xxx
hshshshsg


n 0 1 2 3 4 5 6 
s[n] 1 2 3 4 5 2 1 
h[n] 3 2 1 0 1 2 
0...000000
...]5[]7[]6[]6[]7[]5[...]12[][]12[

 


xxx
hshshshsg


 
28/09/2014 Leonardo Vidal Batista - 203 
a b c d 
A B C D E 
0 1 2 ... m -1 
n 
h[n] 
s[n] 
g[n]=s[n]*h[n], em n=m? 
F G H I 
 
28/09/2014 Leonardo Vidal Batista - 204 
c b a d 
A B C D E 
0 1 2 ... m -1 -2 
F G H I 
 
28/09/2014 Leonardo
Vidal Batista - 205 
c b a d 
A B C D E 
0 1 2 ... m -1 0 
F 
g[m]=d.E+c.F+b.G+a.H 
G H I 
 
28/09/2014 Leonardo Vidal Batista - 206 
 
0 1 2 3 4 5 6 
2 
4 
6 )(s 
 
 
0 1 2 3 4 5 
2 
4 
6 )(h 
 
 
0 -1 
2 
4 
6 
 -2 -3 -4 1 -5 
)( h 
 
 
2 
4 
6 
n 
)( nh 
 
 g[0] = 3 
28/09/2014 Leonardo Vidal Batista - 207 
 
0 1 2 3 4 5 6 
2 
4 
6 )(s 
 
 
0 -1 
2 
4 
6 
 -2 -3 -4 1 -5 
)( h 
 
 g[1] = 8 
28/09/2014 Leonardo Vidal Batista - 208 
 
0 1 2 3 4 5 6 
2 
4 
6 )(s 
 
 
0 -1 
2 
4 
6 
 -2 -3 -4 1 -5 
)1( h 
 
 
28/09/2014 Leonardo Vidal Batista - 209 
 
0 1 2 3 4 5 6 
2 
4 
6 s[n] 
n 
 
0 1 2 3 4 5 
2 
4 
6 h[n] 
n 
 
0 1 2 3 4 5 6 7 8 9 10 11 
10 
20 
30 g[n] = s[n]* h[n] 
n 
 
28/09/2014 Leonardo Vidal Batista - 210 
n -1 0 1 2 3 4 5 6 7 8 
s[n] 1 1 1 1 100 100 100 100 
h[n] 1/3 1/3 1/3 
n -1 0 1 2 3 4 5 6 7 8 
s[n] 1 1 1 1 100 100 100 100 
h[n] -1 0 1 
n -1 0 1 2 3 4 5 6 7 8 
s[n] 1 1 1 1 100 100 100 100 
h[n] -1 0 1 
 
28/09/2014 Leonardo Vidal Batista - 211 
n -1 0 1 2 3 4 5 6 7 8 
s[n] 2 2 2 2 200 200 200 200 
h[n] 1/3 1/3 1/3 
n -1 0 1 2 3 4 5 6 7 8 
s[n] 3 2 101 101 101 200 200 102 
h[n] -1 0 1 
n -1 0 1 2 3 4 5 6 7 8 
s[n] 2 1 100 100 1 100 100 2 
h[n] -1 0 1 
Operador Convolução: g = Th(s) = s*h 
 Th(a.s) = a.g 
28/09/2014 Leonardo Vidal Batista - 212 
n -1 0 1 2 3 4 5 6 7 8 
s[n] 1 1 1 1 100 100 100 100 
h[n] 1/3 1/3 1/3 
g[n] 0.33 0.67 1 1 34 67 100 100 66,67 33,33 
n -1 0 1 2 3 4 5 6 7 8 
s[n] 2 2 2 2 200 200 200 200 
h[n] 1/3 1/3 1/3 
g[n] 0.67 1.33 2 2 68 134 200 200 133,3 66,67 
 
28/09/2014 Leonardo Vidal Batista - 213 
n -1 0 1 2 3 4 5 6 7 8 
s[n] 1 1 1 1 100 100 100 100 
h[n] -1 0 1 
g[n] -1 -1 0 0 -99 -99 0 0 100 100 
n -1 0 1 2 3 4 5 6 7 8 
s[n] 2 1 100 100 1 100 100 2 
h[n] -1 0 1 
g[n] -2 -1 -98 -99 99 0 -99 98 100 2 
n -1 0 1 2 3 4 5 6 7 8 
s[n] 3 2 101 101 101 200 200 102 
h[n] -1 0 1 
g[n] -3 -2 -98 -99 0 -99 -99 98 200 102 
 g1 = Th(s1) = s1*h 
 g2 = Th(s2) = s2*h 
 Th(s1+s2) = g1+g2 
Como Th(a.s) = a.g, convolução é uma 
operação linear 
 
28/09/2014 Leonardo Vidal Batista - 214 
 
28/09/2014 Leonardo Vidal Batista - 215 
n -1 0 1 2 3 4 5 6 7 8 
s[n] 1 1 1 1 100 100 100 100 
h[n] -1 0 1 
g[n] -1 -1 0 0 -99 -99 0 0 100 100 
n -1 0 1 2 3 4 5 6 7 8 9 
s[n] 1 1 1 1 100 100 100 100 
h[n] -1 0 1 
g[n] -1 -1 0 0 -99 -99 0 0 100 100 
 g [n]= Th(s[n]) = s[n]*h[n] 
 Th(s[n-c]) = g[n-c] 
 
28/09/2014 Leonardo Vidal Batista - 216 
Matlab: 
s=[1 1 1 1 100 100 100 100]; 
 h = [1/3 1/3 1/3]; 
conv(s,h) 
 ans = 
 Columns 1 through 6 
0.3333 0.6667 1.0000 1.0000 34.0000 67.0000 
Columns 7 through 10 
 100.0000 100.0000 66.6667 33.3333 
28/09/2014 Leonardo Vidal Batista - 217 
 
 
 
 
 
 
 
 g[n]: resposta do filtro a s[n] 
28/09/2014 Leonardo Vidal Batista - 218 
 
Filtro Th 
h[n] 
 
s[n] g[n] 





 ][][][*][][ nhsnhnsng
 f[i, j] e h[i, j], extensão por zeros 
28/09/2014 Leonardo Vidal Batista - 219 
 





 
 ],[],[],[*],[],[ jihfjihjifjig
 Rebatimento de h 
28/09/2014 Leonardo Vidal Batista - 220 
a b c d 
e f g h 
i j k l 
m n o p 
0 
0 
p o n m 
l k j i 
h g f e 
d c b a 
0 
0 
28/09/2014 Leonardo Vidal Batista - 221 
 Fonte: https://developer.apple.com/library/mac/#documentation/Performance/Conceptual/vImage/ConvolutionOperations/ConvolutionOperations.html 
 
1 1 1 
0 0 0 
-1 -1 -1 
28/09/2014 Leonardo Vidal Batista - 222 
1 0 -1 
1 0 -1 
1 0 -1 
-1 -1 -1 
-1 8 -1 
-1 -1 -1 
1/9 1/9 1/9 
1/9 1/9 1/9 
1/9 1/9 1/9 
0.025 0.1 0.025 
0.1 0.5 0.1 
0.025 0.1 0.025 
 Filtragem sucessiva com cada máscara 
 Pixel de saída recebe o valor máximo 
 
28/09/2014 Leonardo Vidal Batista - 223 
 
5 5 5 
-3 0 -3 
-3 -3 -3 
-3 5 5 
-3 0 5 
-3 -3 -3 
-3 -3 5 
-3 0 5 
-3 -3 5 
-3 -3 -3 
-3 0 5 
-3 5 5 
-3 -3 -3 
-3 0 -3 
5 5 5 
-3 -3 -3 
5 0 -3 
5 5 -3 
5 -3 -3 
5 0 -3 
5 -3 -3 
5 5 -3 
5 0 -3 
-3 -3 -3 
 Em geral 
• Máscaras de integração (filtros de suavização) 
somam para 1 
• Máscaras de diferenciação (filtros de detecção ou 
realce de bordas) somam para 0 
 
MATLAB: conv2(s,h) 
 
28/09/2014 Leonardo Vidal Batista - 224 
 Função gaussiana, ou normal 
 
 
 
 
 
 
 
28/09/2014 Leonardo Vidal Batista - 225 
2
2
2
)(
2
1
)( 





x
exG
 Plotar curva gaussiana no Matlab 
• mi=2; 
• sigma = 1; 
• x=mi-3*sigma:0.1:mi+3*sigma; 
• g = (1/(sqrt(2*pi)*sigma))*exp(-((x-
mi).^2)/(2*sigma*sigma)); 
• plot(x,g) 
 Amostrar e normalizar curva gaussiana no Matlab 
• mi= 0; 
• xi=mi-3*sigma:mi+3*sigma; 
• gi = (1/(sqrt(2*pi)*sigma))*exp(-((xi-
mi).^2)/(2*sigma*sigma)); 
• gi = gi/sum(gi) 
 
 
 
28/09/2014 Leonardo Vidal Batista - 226 
Amostrar gaussiana de -3 dp a 3 dp 
 
 
 
 
 
 
 ... G[-3]=0.0044, G[-2]= 0.0540, G[-1]=0.2420, G[0]=0.3989, 
G[1]=0.2420, G[2]=0.0540, G[3]= 0.0044... 
 
 
28/09/2014 Leonardo Vidal Batista - 227 
Amostrar de -3dp a 3dp (ou de -5dp a 5dp) 
• hp[n] = [0.0044, 0.0540, 0.2420, 0.3989, 0.2420, 
0.0540, 0.0044] 
Normalizar para soma = 1 
• sum(hp) = 0,9997 
• h[n] = hp[n]/ sum(hp) 
• h[n] =[ 0.0044, 0.0540, 0.2420, 0.3991, 0.2420, 0.0540 
0.0044] 
 
 
 28/09/2014 Leonardo Vidal Batista - 228 
 Função gaussiana 2D, de média 0 
 
 
 
 
Amostrar de -3dp a 3dp (ou de -5dp a 5dp), 
em x e em y 
Normalizar para soma = 1 
 
28/09/2014 Leonardo Vidal Batista - 229 
2
22
2
22
1
),( 

yx
eyxG



 Função gaussiana 2D, de média 0 
 
 
 
 
 
28/09/2014 Leonardo Vidal Batista - 230 
28/09/2014 Leonardo Vidal Batista - 231 
 Função gaussiana: 
 
 
 
 
 Derivada: 
 
 
 
 
 Derivada segunda: 
 
 
 
 
28/09/2014 Leonardo Vidal Batista - 232 
 Gaussiana, derivada e derivada 
segunda 
 
 
 
 
Delta de Dirac ou impulso 
 unitário contínuo 
• Duração = 0 
• Área = 1 
 
 
Delta de Kronecker ou 
impulso unitário discreto 
 
 
28/09/2014 Leonardo Vidal Batista - 233 
 
1 
(t) 
0 t 
1 
[n] 
n 0 
Delta de Kronecker 
deslocado e com fator 
de escala 
 
 
 Exemplo: 
28/09/2014 Leonardo Vidal Batista - 234 
 
A 
A[n-n0] 
n0 0 n 
1 0, 6, 6, 3,][ ns
]4[1]3[0]2[6]1[6][3][  nnnnnns 
Delta de Kronecker 
deslocado e com fator 
de escala 
28/09/2014 Leonardo Vidal Batista - 235 
 
A 
A[n-n0] 
n0 0 n 
)]1([]1[....]1[]1[][]0[][  NnNsnsnsns 




1
0
][][][
N
nsns


 Resposta de um filtro a s[n]: 
 
 
 
 Resposta de um filtro ao impulso 
28/09/2014 Leonardo Vidal Batista - 236 




1
0
][][][
N
nhsng


 



1
0
][][][
N
nhng

 ][nh
 h[n]: 
• Resposta ao impulso 
• Máscara convolucional 
• Kernel do filtro 
• Vetor de coeficientes do filtro 
 
28/09/2014 Leonardo Vidal Batista
- 237 
 
28/09/2014 Leonardo Vidal Batista - 238 
 Finite Impulse Response 
 




1
0
][][
N
k
k knxany
][khak 
 
28/09/2014 Leonardo Vidal Batista - 239 
 Infinite Impulse Response 
 






1
1
1
0
][][][
M
k
k
N
k
k knybknxany
 Filtros recursivos 
 
 
28/09/2014 Leonardo Vidal Batista - 240 
 Encontre a resposta ao impulso do 
seguinte sistema recursivo. Supor que o 
sistema está originalmente relaxado (y[n] 
= 0 para n < 0) 
 
y[n] = x[n] - x[n-1] – 0,5y[n-1] 
 
 
 
 
28/09/2014 Leonardo Vidal Batista - 241 
 Exemplo: 
 y[n] = x[n] - x[n-1] – 0,5y[n-1] 
 y[0] = delta[0]–delta[-1]–0,5y[-1] = 1 
 y[1] = delta[1]–delta[0]–0,5y[0] = -1,5 
 y[2] = delta[2]–delta[1]–0,5y[1] = 0,75 
 y[3]= delta[3]–delta[2]–0,5y[2] = -0,325 
 y[n] = -0,5y[n-1], n > 1 
 
 
 
28/09/2014 Leonardo Vidal Batista - 242 
 Exemplo: encontre a resposta ao impulso 
do seguinte sistema recursivo. Supor que 
o sistema está originalmente relaxado 
(y[n] = 0 para n < 0) 
 
y[n] - y[n-1] = x[n] - x[n-4] 
 
 
 
 
28/09/2014 Leonardo Vidal Batista - 243 
 Exemplo (Solução) 
 y[n] = y[n-1] + x[n] - x[n-4] 
 y[0] = y[-1] + delta[0] - delta[-4] = 1 
 y[1] = y[0] + delta[1] - delta[-3] = 1 
 y[2] = y[1] + delta[2] - delta[-2] = 1 
 y[3] = y[2] + delta[3] - delta[-1] = 1 
 y[4] = y[3] + delta[4] - delta[0] = 0 
 y[5] = y[4] + delta[5] - delta[1] = 0 
 y[6] = y[7] = ... = 0 
 
 Sinais s[n] e h[n] com N0 e N1 amostras, 
respectivamente => extensão com zeros: 
28/09/2014 Leonardo Vidal Batista - 244 






NnN
Nnns
nse
0
0
 ,0
0 ],[
][






NnN
Nnnh
nhe
1
1
 ,0
0 ],[
][
 Extensão periódica: considera-se que 
se[n] e he[n] são períodos de sp[n] e hp[n] 
 Convolução circular: 




1
0
][][][][][
N
ppp nhsnhnsng


 Fazendo-se N = N0 + N1 – 1 
28/09/2014 Leonardo Vidal Batista - 245 
][*][][][ nhnsnhns 
 
28/09/2014 Leonardo Vidal Batista - 246 
 Transformada z de x[n]: 
n
n
znxzXnxZ 


 ][][]}[{
 z: variável complexa 
 
 
28/09/2014 Leonardo Vidal Batista - 247 
 Linearidade: Se x[n] = ax1[n] + bx2[n], 
(a e b: constantes arbitrárias), então: 
 
][][][ 21 zbXzaXzX 
 
28/09/2014 Leonardo Vidal Batista - 248 
 Deslocamento: 
 Z{x[n+k]} = zkX[z], k inteiro 
 Prova: 




n
nzknxknxZ ][]}[{
 Fazendo m = n+k: 






 
m
knk
m
kn zXzzmxzzmxknxZ ][][][]}[{ )(
 
28/09/2014 Leonardo Vidal Batista - 249 
 Convolução: 
 Se h[n] é a resposta ao impulso de 
um filtro, H[z] é a função de 
transferência do filtro 
][][][][][][*][][ zXzHzYknxkhnxnhny
k
 


 
28/09/2014 Leonardo Vidal Batista - 250 
 Convolução (Prova) 
 
 




 








n
n
k
zknxkhnxnhZ ][][]}[*][{
 






k
n
n
zknxkh ][][
 






k
n
n
k znxzkh ][][
][][ zXzH
 
28/09/2014 Leonardo Vidal Batista - 251 
 Equação de diferenças de um filtro 
1
][][
][][][
0
1
0
1
0
1
1
1
0













b
knxaknyb
knybknxany
N
k
k
M
k
k
M
k
k
N
k
k
 
28/09/2014 Leonardo Vidal Batista - 252 
 Transformada Z da Equação de 
diferenças 





































1
0
1
0
1
0
1
0
1
0
1
0
][][
}][{]}[{
][][
N
k
k
k
M
k
k
k
N
k
k
M
k
k
N
k
k
M
k
k
zXzazYzb
knxZaknyZb
knxaZknybZ
 
28/09/2014 Leonardo Vidal Batista - 253 
 Aplicando a transformada z em 
ambos os lados e simplificando: 
k
M
k
k
k
N
k
k
zb
za
zX
zY
zH










1
1
1
0
1
][
][
][
 Pólos: raízes do denominador 
 Zeros: raízes do numerador 
 Pólos e zeros: estabilidade 
 
 
28/09/2014 Leonardo Vidal Batista - 254 
 BIBO: Bounded-input, bounded-
output 
 Sistemas BIBO-estáveis: sistemas 
causais tais que: 


0
|][|
k
kh
 
28/09/2014 Leonardo Vidal Batista - 255 
 Resposta em freq. a partir de H[z] 





1
0
2
][
1
][
N
n
N
unj
ens
N
uF

 Comparar com 
 20 ,][][
][][










n
jnj
n
n
enheH
znhzH
 
28/09/2014 Leonardo Vidal Batista - 256 
 Exemplo: encontre a resposta em 
freqüência do filtro y[n] = (x[n] + x[n-1])/2 
utilizando a transformada Z 
 Y[z] = (X[z] + z-1X[z] )/2 = X[z](1+z-1)/2 
 H[z] = (1+z-1)/2 
 H[ejw] = (1+e-jw)/2 = e-jw/2 (ejw/2 + e-jw/2)/2 = 
e-jw/2cos(w/2) 
 |H[ejw]| = cos(w/2), -pi< w < pi 
 
28/09/2014 Leonardo Vidal Batista - 257 
 Exemplo: encontre a resposta em 
freqüência do filtro y[n] = (x[n] - x[n-1])/2 
utilizando a transformada Z 
 Y[z] = (X[z] - z-1X[z] )/2 = X[z](1-z-1)/2 
 H[z] = (1-z-1)/2 
 H[ejw] = (1-e-jw)/2 = e-jw/2 (ejw/2 - e-jw/2)/2 = 
je-jw/2sen(w/2) 
 |H[ejw]| = |sen(w/2)|, -pi< w < pi 
Convolução: 
 
 
Correlação: 
 
 
 
28/09/2014 Leonardo Vidal Batista - 258 





 ][][][*][][ nhsnhnsng





 ][][][][][ nhsnhnsng 
 Exemplo 
• h[-1] = 3; h[0] = 7; h[1] = 5; 
• s[0..15] = {3, 2, 4, 1, 3, 8, 4, 0, 3, 8, 0, 7, 7, 7, 1, 2} 
 
 Extensão com zeros 
 
 
28/09/2014 Leonardo Vidal Batista - 259 
 Exemplo: 
 
28/09/2014 Leonardo Vidal Batista - 260 
 
...
39]1[]3[]0[]2[]1[]1[]2[][]2[
43]1[]2[]0[]1[]1[]0[]1[][]1[
31]1[]1[]0[]0[][][]0[
15]1[]0[]1[
3
1
2
0
1
0










hshshshsg
hshshshsg
hshshsg
hsg






 Exemplo (cont.) 
 g[0..15] = 31, 43, 39, 34, 64, 85, 52, 27, 61, 65, 
59, 84, 105, 75, 38, 27 
Observe que g[5] é elevado, pois é obtido 
centrando h em s[5] e calculando a correlação 
entre (3, 7, 5) e (3, 8, 4) 
Mas g[12] é ainda maior, devido aos valores 
elevados de s[11], s[12], s[13] 
 
 28/09/2014 Leonardo Vidal Batista - 261 
A correlação normalizada elimina a 
dependência dos valores absolutos dos sinais 
 
 
 
 
 s[n]: imagem; “sn barra” é a média da imagem 
na região sob a máscara; h é o kernel e “h 
barra” é a média do kernel. 
 
28/09/2014 Leonardo Vidal Batista - 262 
 
 




 



22 )][()][(
)][)(][(
][][][
hnhss
hnhss
nhnsng
n
n
 
28/09/2014 Leonardo Vidal Batista - 263 
Fonte: 
http://www.dspguide.com/ch7/3.htm 
Gaivota, “filtro casado” (olho) e imagem de 
correlação normalizada (máximo no olho) 
 
28/09/2014 Leonardo Vidal Batista - 264 
Fonte: http://www.dca.fee.unicamp.br/dipcourse/html-dip/c6/s5/front-page.html 
O cálculo direto do espectro de amplitudes e 
fases não é fidedigno 
28/09/2014 Leonardo Vidal Batista - 265 
 O espectro pode variar muito em 
diferentes seções de um mesmo sinal. 
 O problema pode ser causado por ruído, 
escassez de dados, comportamento não 
estacionário etc. 
 Variância é um indicador de qualidade
O quadrado do módulo do espectro de 
amplitudes: densidade espectral de potência 
(PSD), ou espectro de potência 
28/09/2014 Leonardo Vidal Batista - 266 
 Resolução espectral diminui 
 Variância se reduz por fator K1/2 
 Periodograma: dividir sinal em K seções 
adjacentes (com ou sem intersecção) de 
mesmo tamanho; obter PSD de cada 
seção; obter média das PSDs 
 Todo sinal discreto obtido a partir de um sinal 
analógico é resultado da multiplicação de um 
sinal discreto de duração infinita por um pulso, 
ou janela, retangular: 
28/09/2014 Leonardo Vidal Batista - 267 


 

contrário caso 0
0 1 Nn
wn
A janela retangular pode gerar grandes 
descontinuidades na forma de onda original 
28/09/2014 Leonardo Vidal Batista - 268 
Multiplicação no tempo equivale a convolução 
na freqüência (Fourier) 
28/09/2014 Leonardo Vidal Batista - 269 
 DFT da janela retangular: função sinc 
(sine cardinal, kernel de Dirichlet, função 
de amostragem): 




 

contrário caso 
sen
0 1
)(sinc
x
x
x
x
A convolução com um sinc introduz distorções 
no espectro 
28/09/2014 Leonardo Vidal Batista - 270 
 Janelas mais “suaves” reduzem estas 
distorções, mas distorcem mais as 
amostras centrais-> Compromisso 
 Dezenas dessas janelas tem sido 
avaliadas e utilizadas em diversas 
aplicações 
 
28/09/2014 Leonardo Vidal Batista - 271 














contrário caso 0
Nn0 
1
2
cos46,054,0
N
n
wn

 Seno multiplicado por janela retangular e de 
Hamming 
28/09/2014 Leonardo Vidal Batista - 272 
DFT de seno multiplicado por janela 
retangular e de Hamming 
28/09/2014 Leonardo Vidal Batista - 273 
 Blackman-Harris, Dolph-Chebyshev, Kaiser-
Bessel (superiores?) 
28/09/2014 Leonardo Vidal Batista - 274 
 Tukey, Poisson, Hanning etc 
 ht(i, j)= (1 - t) f(i, j) + t g(i, j) 
 t é um escalar no intervalo [0, 1] 
28/09/2014 Leonardo Vidal Batista - 275 
 
28/09/2014 Leonardo Vidal Batista - 276 
 t = 0,3 t = 0,5 t = 0,7 
 
 ht(i, j)= [1 - t(i, j)] f(i, j) + t(i, j) g(i, j) 
 t é uma matriz com as mesmas dimensões de f 
e g cujos elementos assumem valores no 
intervalo [0, 1] 
28/09/2014 Leonardo Vidal Batista - 277 
 t(i,j)=(i+j)/(R+C-2) t(i,j)=j/(C-1) t(i,j)=i/(R-1) 
28/09/2014 Leonardo Vidal Batista - 278 
 
28/09/2014 Leonardo Vidal Batista - 279 


 

contrario caso ,0
|| se ,1 21 tLffL
g
 f1 f2 g 
 f[i, j] imagem sem ruído 
 nk(i, j) ruído de média m 
 gk[i,j] = f[i,j] + nk(i,j) 
28/09/2014 Leonardo Vidal Batista - 280 



M
k
k jig
M
jig
1
],[
1
],[
 Para M grande: 
28/09/2014 Leonardo Vidal Batista - 281 
)),(],[(
1
],[
1
jinjif
M
jig k
M
k
 




M
k
k jin
M
jifjig
1
),(
1
],[],[
mjifjig  ],[],[
 Rígidas 
• Translação 
• Rebatimento 
• Rotação 
• Mudança de Escala 
Não rígidas (Warping) 
28/09/2014 Leonardo Vidal Batista - 282 
 Rotação em torno de (ic, jc) 
28/09/2014 Leonardo Vidal Batista - 283 
ccc
ccc
jjjiij
ijjiii




cos)(sen)('
sen)(cos)('
 Rotação de -30o 
28/09/2014 Leonardo Vidal Batista - 284 
 
28/09/2014 Leonardo Vidal Batista - 285 
Imagem original Rebatimento pela 
diagonal 
Rotação de -90o 
em torno de 
(R/2,C/2) 
 Por replicação de pixels 
 
28/09/2014 Leonardo Vidal Batista - 286 
10 10 
20 30 
10 10 
20 30 
Original Ampliação por fator 3 
 
 Por replicação de pixels 
 
28/09/2014 Leonardo Vidal Batista - 287 
10 10 
20 30 
10 10 10 10 10 10 
10 10 10 10 10 10 
10 10 10 10 10 10 
20 20 20 30 30 30 
20 20 20 30 30 30 
20 20 20 30 30 30 
Original Ampliação por fator 3 
 
 Por interpolação bilinear 
 
28/09/2014 Leonardo Vidal Batista - 288 
10 10 
20 30 
10 10 
20 30 
Original Ampliação por fator 3 
 
Interpolação nas linhas 
Passos de níveis de cinza: 
10 a 10: 0 
20 a 30: (30-20)/3 = 3,3 
 
 
 Por interpolação bilinear 
 
28/09/2014 Leonardo Vidal Batista - 289 
10 10 
20 30 
10 10 10 10 10 10 
20 23 27 30 33 37 
Original Ampliação por fator 3 
 
Interpolação nas linhas 
Passos de níveis de cinza: 
10 a 10: 0 
20 a 30: (30-20)/3 = 3,3 
 
 
 Por interpolação bilinear 
 
28/09/2014 Leonardo Vidal Batista - 290 
10 10 
20 30 
10 10 10 10 10 10 
20 23 27 30 33 37 
Original Ampliação por fator 3 
 
Interpolação nas colunas 
Passos de níveis de cinza: 
10 a 20: (20-10)/3 = 3,3 
10 a 23: (23-10)/3 = 4,3 
10 a 27: (27-10)/3 = 5,7 
... 
 
 
13 
17 
 
23 
27 
 
14 
19 
 
27 
32 
 
16 
21 
 
33 
38 
 
17 
23 
 
37 
43 
 
18 
25 
 
41 
48 
 
19 
28 
 
46 
55 
 Exemplo: Ampliação por fator 10 
 
28/09/2014 Leonardo Vidal Batista - 291 
 Original Replicação Interpolação 
 
 Por eliminação de pixel 
 Por Média 
 
28/09/2014 Leonardo Vidal Batista - 292 
14 18 
28 41 
10 10 10 10 10 10 
13 16 14 17 18 19 
17 19 21 23 25 28 
20 23 27 30 33 37 
23 27 33 37 41 46 
27 32 38 43 48 55 
Original Redução por fator 3 
 
 Zoom por fatores não inteiros 
 Ex: F = 3,75432 
Operações elásticas, etc. 
 Técnicas mais avançadas devem ser utilizadas 
Uma dessas técnicas é a reconstrução de 
imagens 
 
28/09/2014 Leonardo Vidal Batista - 293 
Dados f(i0,j0), f(i0,j0+1), f(i0+1,j0), f(i0+1,j0+1) 
 Reconstrução: 
Encontrar f(x,y), 
x em [i0, i0+1] 
y em [j0, j0+1] 
 
28/09/2014 Leonardo Vidal Batista - 294 
 
(i0, j0) 
(x,y) 
(i0, j0+1) 
(i0+1, j0) (i0+1, j0+1) 
(i0, y) 
(i0+1, y) 
y 
f(i0,y) 
j1 
f(i0,j1) 
j0 
f(i0,j0) 
y0 
f(i0,y0) 
 f(i0, y) = f(i0, j0)+(y–j0)[f(i0, j0 +1)-f(i0, j0)] 
 f(i0+1,y)=f(i0+1, j0)+(y–j0)[f(i0+1, j0 +1)-f(i0+1, j0)] 
 f(x, y) = f(i0, y) + (x – i0) [f(i0+1, y) - f(i0, y)] 
 
 
28/09/2014 Leonardo Vidal Batista - 295 
 
(i0, j0) 
(x,y) 
(i0, j0+1) 
(i0+1, j0) (i0+1, j0+1) 
(i0, y) 
(i0+1, y) 
 Ex: f(10.5, 15.2)=? 
 f(10, 15) = 10; f(10, 16) = 20; 
f(11,15) = 30; f(11, 16) = 30 
 Simplificar notação: omitir índice 0 em i0, j0 
 f(i, y) = f(i, j)+(y–j)[f(i, j+1)-f(i, j)] 
 f(i+1,y)=f(i+1,j)+(y–j)[f(i+1,j+1)-f(i+1, j)] 
 f(x, y) = f(i, y) + (x – i) [f(i+1, y) - f(i, y)] 
 
 
 
28/09/2014 Leonardo Vidal Batista - 296 
 x = 10.5; y = 15.2 => i = 10; j = 15 
 f(i, y) = f(i, j)+(y–j)[f(i, j+1)-f(i, j)] 
 f(10, 15.2)=f(10,15)+(15.2-15)*[f(10,16)-f(10,15) = 
10 + 0.2*[20 – 10] = 12 
 f(i+1,y)=f(i+1,j)+(y–j)[f(i+1,j+1)-f(i+1, j)] 
 f(11, 15.2)=f(11,15)+(15.2-15)*[f(11,16)-f(11,15) 
=30 + 0.2*[30 – 30] = 30 
 f(x, y) = f(i, y) + (x–i) [f(i+1, y) - f(i, y)] 
 f(10.5, 15.2)=12+(10.5-10)*[30-12] =21 
 
 28/09/2014 Leonardo Vidal Batista - 297 
 Por interpolação bilinear 
 
28/09/2014 Leonardo Vidal Batista - 298 
10 10 
20 30 
10 10 10 10 10 10 
20 23 27 30 33 37 
Original Ampliação por fator 3 
 
Interpolação nas colunas 
Passos de níveis de cinza: 
10 a 20: (20-10)/3 = 3,3 
10 a 23: (23-10)/3 = 4,3 
10 a 27: (27-10)/3 = 5,7 
... 
 
 
13 
17 
 
23 
27 
 
14 
19
27 
32 
 
16 
21 
 
33 
38 
 
17 
23 
 
37 
43 
 
18 
25 
 
41 
48 
 
19 
28 
 
46 
55 
 Por interpolação bilinear 
 
28/09/2014 Leonardo Vidal Batista - 299 
10 10 
20 30 
10 10 10 10 10 10 
20 23 27 30 33 37 
Original Ampliação por fator 3 
 
Interpolação nas colunas 
Passos de níveis de cinza: 
10 a 20: (20-10)/3 = 3,3 
10 a 23: (23-10)/3 = 4,3 
10 a 27: (27-10)/3 = 5,7 
... 
 
 
13 
17 
 
23 
27 
 
14 
19 
 
27 
32 
 
16 
21 
 
33 
38 
 
17 
23 
 
37 
43 
 
18 
25 
 
41 
48 
 
19 
28 
 
46 
55 
Original Ampliação por fator 3 
 
 
 
Aplicar equações 
de reconstrução 
 
28/09/2014 Leonardo Vidal Batista - 300 
10 10 
20 30 
10 
13 
17 
20 
23 
27 
10 
14 
19 
23 
27 
32 
10 
16 
21 
27 
33 
38 
10 
18 
25 
33 
41 
48 
10 
19 
28 
37 
46 
55 
0 1 0 1 
0
 
1 
0 
1 
0,33 0,67 1,33 1,67 
0,33 
0,67 
1,33 
1,67 
10 
17 
23 
30 
37 
43 
 Ex: Ampliação por fator 2.3 
 Passo para as coordenadas: 1/2.3 = 0.43 
 x = 0, 0.43, 0. 87, 1.30, 1.74, 2.17, 2.61, 3.04... 
 y = 0, 0.43, 0. 87, 1.30, 1.74, 2.17, 2.61, 3.04... 
28/09/2014 Leonardo Vidal Batista - 301 
 Ex: Ampliação por fator 2.3 
 Passo para as coordenadas: 1/2.3 = 0.43 
 
28/09/2014 Leonardo Vidal Batista - 302 
 
 
 
 
 
? 
 
 
 
 
 
 
 ? 
 
 
 
 
 
 
 ? 
 
 
 
 
 
? 
 
 
 
 
 
 ? 
0 1,3 
0 
1,3 
0,43 0,87 1,74 2,17 
0,43 
0,87 
1,74 
2,17 
10 20 0 
30 30 25 
30 30 90 
0 1 2 
0
 
1 
 
3 
? 
? 
? 
? 
? 
? 
Ex: Redução por fator 2.3 
x = 0, 2.3, 4.6, 6.9, 9.2, 11.5, 13.8... 
 y = 0, 2.3, 4.6, 6.9, 9.2, 11.5, 13.8... 
 
28/09/2014 Leonardo Vidal Batista - 303 
Warping = distorção 
 Zoom por fator F(i, j) 
 Rotação por ângulo teta(i,j) 
 Translação com deslocamento d(i,j) 
Warping especificado pelo usuário 
28/09/2014 Leonardo Vidal Batista - 304 
 Entretenimento, estética 
 Efeitos especiais, morphing 
Correção de distorções óticas 
28/09/2014 Leonardo Vidal Batista - 305 
28/09/2014 Leonardo Vidal Batista - 306 
28/09/2014 Leonardo Vidal Batista - 307 
 Entretenimento, estética 
 Efeitos especiais, morphing 
Correção de distorções óticas 
Alinhamento de elementos correspondentes 
em duas ou mais imagens (registro) 
28/09/2014 Leonardo Vidal Batista - 308 
Da esquerda para a direita: 
• Imagem fonte 
• Imagem destino 
• Imagem fonte registrada 
 
 
 
28/09/2014 Leonardo Vidal Batista - 309 
Fonte: 
http://www.cs.dartmouth.edu/farid/Hany_Farid/Research/
Entries/2011/5/17_Image_Registration.html 
 Entretenimento, estética 
 Efeitos especiais, morphing 
Correção de distorções óticas 
Alinhamento de elementos correspondentes 
em duas ou mais imagens (registro) 
Modelagem e visualização de deformações 
físicas 
28/09/2014 Leonardo Vidal Batista - 310 
1. Características importantes da imagem são 
marcados por segmentos de reta orientados 
(vetores de referência) 
28/09/2014 Leonardo Vidal Batista - 311 
1. Características importantes da imagem são 
marcados por segmentos de reta orientados 
(vetores de referência) 
2. Para cada vetor de referência, um vetor alvo 
é especificado, indicando a transformação 
que se pretende realizar 
 
28/09/2014 Leonardo Vidal Batista - 312 
3. Para cada par de vetores referência-alvo, 
encontra-se o ponto X’ para onde um ponto 
X da imagem deve migrar, de forma que as 
relações espaciais entre X’ e o vetor alvo 
sejam idênticas àquelas entre X e o vetor de 
referência 
4. Parâmetros para as relações espaciais : u e v 
28/09/2014 Leonardo Vidal Batista - 313 
 
28/09/2014 Leonardo Vidal Batista - 314 
 u: representa o deslocamento normalizado de 
P até O no sentido do vetor PQ (normalizado: 
dividido pela norma de PQ) 
 |v|: distância de X à reta suporte de PQ 
28/09/2014 Leonardo Vidal Batista - 315 
 Se O=P, u = 0 
 Se O=Q, u = 1 
 Se O entre P e Q, 0<u<1; 
 Se O após Q, u>1 
 Se O antes de P, u<0 
28/09/2014 Leonardo Vidal Batista - 316 
 Encontrar u e v: norma, produto interno, 
vetores perpendiculares, projeção de um 
vetor sobre outro. 
Vetores a = (x1, y1) e b = (x2, y2) 
Norma de a: 
 
 
 Produto interno: 
 a.b = x1x2 +y1y2 
28/09/2014 Leonardo Vidal Batista - 317 
2
1
2
1|||| yx  a
 Projeção de a sobre b (o sinal indica o sentido 
em relação a b) 
28/09/2014 Leonardo Vidal Batista - 318 
 
a 
b 
c 
|||| b
a.b
 c 
Vetor b = (x2, y2) perpendicular a a = (x1, y1) e 
de norma igual à de a: 
 
 
 
 Perpendicularidade: x1x2 +y1y2 = 0 
Mesma norma: x2
2+ y2
2 = x1
2 + y1
2 
 
28/09/2014 Leonardo Vidal Batista - 319 
a b 
 Soluções: 
 x2 = y1, y2 = -x1 
 x2 = -y1, y2 = x1 
28/09/2014 Leonardo Vidal Batista - 320 
a b1 
b2 
 Parâmetro u: 
• projeção de PX sobre PQ, dividido pela norma de 
PQ 
28/09/2014 Leonardo Vidal Batista - 321 
2|||| PQ
PQPX
u
.
 
 P = (xp,yp), Q = (xq, yq), X = (x,y) 
 
28/09/2014 Leonardo Vidal Batista - 322 
u = (x - xp).(xq - xp) + (y -yp)(yq – yp) 
 (xq-xp)
2 + (yq-yp)
2 
2|||| PQ
PQPX
u
.
 
 Parâmetro v: |v| é a distância de X à reta 
suporte de PQ. 
 Sinal de v indica o posicionamento de X em 
relação a PQ 
 
 
 
 v : vetor perpendicular a v e 
de mesma norma que este. 
 
28/09/2014 Leonardo Vidal Batista - 323 
|||| PQ
PQPX
v


.
 
 PQ = (Xq-Xp, Yq-Yp) 
 PQ1 = (Yq–Yp, Xp-Xq) 
 PQ2 = (Yp–Yq, Xq-Xp) 
Vamos usar PQ1 
28/09/2014 Leonardo Vidal Batista - 324 
 Parâmetro v: 
28/09/2014 Leonardo Vidal Batista - 325 
|||| PQ
PQPX
v


.
 
v = (x-xp)(yq-yp) + (y-yp)(xp–xq) 
 [(xq-xp)
2 + (yq-yp)
2]1/2 
Cálculo de X’: 
28/09/2014 Leonardo Vidal Batista - 326 
||''||
''
''.''
QP
QPv
QPuPX


.
 
2|||| PQ
PQPX
u
.
 
28/09/2014 Leonardo Vidal Batista - 327 
|||| PQ
PQPX
v


.
 
||''||
''
''.''
QP
QPv
QPuPX


.
 
Quando há mais de um par de vetores 
referência-alvo, cada pixel sofre a influência 
de todos os pares de vetores 
 Será encontrado um ponto Xi’ diferente para 
cada par de vetores referência-alvo. 
Os diferentes pontos para os quais o ponto X 
da imagem original seria levado por cada par 
de vetores referência-alvo são combinados 
por intermédio de uma média ponderada, 
produzindo o ponto X’ para onde X será 
efetivamente levado. 
28/09/2014 Leonardo Vidal Batista - 328 
 
28/09/2014 Leonardo Vidal Batista - 329 
 Peso da coordenada definida pelo i-ésimo par 
de vetores de referência-alvo: 
28/09/2014 Leonardo Vidal Batista - 330 
di: Distância entre X e o segmento PiQi 
li: ||Pi Qi|| 
a, b e p : Parâmetros não negativos 
 Relação inversa com a distância entre a reta e 
o ponto X 
 Parâmetro a : Aderência ao segmento 
• a = 0 (Peso infinito ou aderência máxima) 
28/09/2014 Leonardo Vidal Batista - 331 
 Parâmetro p controla a importância do 
tamanho do segmento 
 p = 0: independe do tamanho do segmento
28/09/2014 Leonardo Vidal Batista - 332 
 Parâmetro b controla a forma como a 
influência decresce em função da distância 
 b = 0: peso independe da distância 
28/09/2014 Leonardo Vidal Batista - 333 
 Bons resultados são obtidos com: 
 a entre 0 e 1 
 b = 2 
 p = 0 ou p = 1. 
28/09/2014 Leonardo Vidal Batista - 334 
 Exemplo: 
 
P0 = (40, 10); Q0 = (20, 5) 
P0’ = (35, 15); Q0’ = (25, 20) 
P1 = (20, 30); Q1 = (10, 35) 
P1’ = (25, 50); Q1’ = (5, 40) 
X = (20, 25) 
 
u0 = [(20-40) (20-40) + (25-10)(5-10)] / [(20-40)2+ (5-10)2] = 0.76 
v0 = [(20-40) (5-10) + (25-10)(40-20)] / [(20-40)2+ (5-10)2]1/2 = 19.40 
X0’ = (35, 10) + 0.76 (25-35, 20-15) + 19.4 (20-15, 35-25) / [(25-35)2 + (20-15)2]1/2 
X0’ = (36.03, 31.17) 
28/09/2014 Leonardo Vidal Batista - 335 
0 5 10 15 20 25 30 35 40 45 50 60 55 
 0 
 5 
 10 
 15 
 20 
 25 
 30 
 35 
 40 
 45 
 50 
 Q0 
 P0 
 P0’ 
 Q0’ 
 P1 
 P1’ 
 Q1’ 
 Q1 
 X 
 X0’ 
 Exemplo (cont): 
 
 
 
 
 
 
 
 
 
 
u1 = [(20-20) (10-20) + (25-30)(35-30)] / [(10-20)2+ (35-30)2] = - 0.2 
v1 = [(20-20) (35-30) + (25-30)(20-10)] / [(10-20)2+ (35-30)2]1/2 = - 4,47 
X1’ = (25, 50) - 0.2 (5-25, 40-50) -4,47 (40-50, 25-5) / [(25-5)2 + (40-50)2]1/2 
X1’ = (25, 50) + (4.6, 2) + (2, -3.99) = (31.6, 48,01) 
28/09/2014 Leonardo Vidal Batista - 336 
0 5 10 15 20 25 30 35 40 45 50 60 55 
 0 
 5 
 10 
 15 
 20 
 25 
 30 
 35 
 40 
 45 
 50 
 Q0 
 P0 
 P0’ 
 Q0’ 
 P1 
 P1’ 
 Q1’ 
 Q1 
 X 
 X0’ 
 X1’ 
 Exemplo (cont): 
 
 
 
 
 
 
Dados a = 0.1; b = 2; p= 0 
wi = 1/[0.1+di]
2 
d0 = v0 = 19.4 => w0 = 0.0026 
d1 = distância de X a P1 = [(20-20)
2 + (25-30)2]1/2 = 5 =>: w1 = 0.0384 
X’ = [0.0026* (36.03, 31.17) + 0.0384*(31.6, 48,01)]/( 0.0026+ 0.0384) 
X’ = (31.88, 46,94) 
28/09/2014 Leonardo Vidal Batista - 337 
0 5 10 15 20 25 30 35 40 45 50 60 55 
 0 
 5 
 10 
 15 
 20 
 25 
 30 
 35 
 40 
 45 
 50 
 Q0 
 P0 
 P0’ 
 Q0’ 
 P1 
 P1’ 
 Q1’ 
 Q1 
 X 
 X0’ 
 X1’ 
 X’ 
 Interpolação de formas e cores entre duas 
imagens distintas 
(f0 e fN-1) 
 Encontrar imagens f1, f2, ..., fN-2: transição 
gradual de f0 a fN-1 
 Efeitos especiais na publicidade e na indústria 
cinematográfica; realidade virtual; 
compressão de vídeo; etc. 
28/09/2014 Leonardo Vidal Batista - 338 
 
28/09/2014 Leonardo Vidal Batista - 339 
 
28/09/2014 Leonardo Vidal Batista - 340 
 
 
 
ai bi 
 
cki 
 
 
 
cki 
 
Warping de f0 
f0 fN-1 
Warping de fN-1 
“+” 
 
 
28/09/2014 Leonardo Vidal Batista - 341 
 
ai 
bi 
 
c1i 
 
c2i 
 
c3i 
 
c4i 
 
c5i 
 
c6i 
 
c7i 
 
c8i 
 
c9i 
 
 
28/09/2014 Leonardo Vidal Batista - 342 
Conversão ao domínio da freqüência: 
transformadas 
 Processamento e análise no domínio da 
freqüência 
 Fourier, Cosseno Discreta, Wavelets, etc. 
28/09/2014 Leonardo Vidal Batista - 343 
 
 f: freqüência 
 T=1/f: período 
 : fase 
A: amplitude 
D: descolamento vertical 
Gráfico para = 0 e A>0 
 f = 1/T 
 28/09/2014 Leonardo Vidal Batista - 344 
   ftADtx 2cos)(
 
 T 
 A 
 D 
 (0,0) 


 
 
 fk: freqüência do k-ésimo cosseno 
 Tk =1/fk: período do k-ésimo cosseno 
 : fase do k-ésimo cosseno 
Ak: amplitude do k-ésimo cosseno 
28/09/2014 Leonardo Vidal Batista - 345 
  1..., ,1 ,0 ,2cos)(  NktfAtx kkkk 
k
 
 
 k = 0,1,...N-1 
28/09/2014 Leonardo Vidal Batista - 346 
  110 ,2cos][  ,...,N,nnfAnx kkkk 
 
28/09/2014 Leonardo Vidal Batista - 347 
 






1-... 2, 1, para 1
0para 1/2
1/2
Nk
 k
ck
N
k
fk
2

k
N
Tk
2

N
k
k
2

 
110 ,
22
2cos
2
][
2/1












 ,...,N,n
N
k
n
N
k
Xc
N
nx kkk

kkk Xc
N
A
2/1
2







v. Amostragem de senóides 
 
 
 
 
(meio-período em N amostras) 
28/09/2014 Leonardo Vidal Batista - 348 
110 ,
2
12
][ 0
2/12/1
0 











 ,...,N,nX
N
nx
 







0
0
0
0
0

f
k
 
NT
N
fk 2
2
1
1 11 
1
2
2
1
1 11



 
N
N
T
N
N
fNk NN
110 ,
22
2cos
2
][
2/1












 ,...,N,n
N
k
n
N
k
Xc
N
nx kkk

 xk[n] (N = 64, Xk = 10) 
28/09/2014 Leonardo Vidal Batista - 349 
 
0 10 20 30 40 50 60 70
-2
-1
0
1
2
k=1 
Meio-ciclo 
 
 
28/09/2014 Leonardo Vidal Batista - 350 
 
k=2 
1 ciclo 
 
0 10 20 30 40 50 60 70
-2
-1
0
1
2
 
0 10 20 30 40 50 60 70 
-2 
-1 
0 
1 
2 
k=3 
1,5 ciclo 
 
 
28/09/2014 Leonardo Vidal Batista - 351 
 
k=32 
16 ciclos 
 
Para 
visualização 
 
0 10 20 30 40 50 60 70
-2
-1
0
1
2
0 10 20 30 40 50 60 70
-2
-1
0
1
2
 
28/09/2014 Leonardo Vidal Batista - 352 
 
k=63 
31,5 ciclos 
 
Para 
visualização 
 
0 10 20 30 40 50 60 70
-2
-1
0
1
2
0 10 20 30 40 50 60 70
-2
-1
0
1
2
Amostragem de um sinal periódico não 
necessariamente produz um sinal de mesmo 
período (ou mesmo periódico). 
28/09/2014 Leonardo Vidal Batista - 353 
 
Criar um sinal x[n] somando-se os sinais xk[n], 
k = 0...N-1, amostra a amostra: 
28/09/2014 Leonardo Vidal Batista - 354 
 
110 ],[][
1
0
 


,...,N,nnxnx
N
k
k
110 ,
22
2cos
2
][
1
0
2/1












 


,...,N,n
N
k
n
N
k
Xc
N
nx
N
k
kk

 Exemplo: 
N = 8; X0 = 10; X1 = 5; X2 = 8,5; X3 = 2; X4 = 1; X5 
= 1,5; X6 = 0; X7 = 0,1. 
28/09/2014 Leonardo Vidal Batista - 355 
 
 
0 2 4 6 8 
2 
3 
4 
5 
10
2
1
2
1
][
2/1
0 





nx
 =3.5355 
 
 X1 = 5 
28/09/2014 Leonardo Vidal Batista - 356 
 
=2.4520; 2.0787; 1.3889; 
0.4877; -0.4877; -1.3889; 
-2.0787; -2.4520 
 
 
0 2 4 6 8 
-4 
-2 
0 
2 
4 





 

16
)12(
cos
2
5
][1
n
nx
 
0 2 4 6 8 
0 
2 
4 
6 
x0[n]+x1[n] 
 X2 = 8,5 
28/09/2014 Leonardo Vidal Batista - 357 
 
= 3.9265; 1.6264; -1.6264; 
-3.9265; -3.9265; -1.626; 
1.6264; 3.9265 
 
x0[n]+x1[n] +x2[n] 
 
 
0 2 4 6 8 
-4 
-2 
0 
2 
4 





 

16
2)12(
cos
2
5.8
][2
n
nx
 
0 2 4 6 8 
-5 
0 
5 
10 
 X3 = 2 
28/09/2014 Leonardo Vidal Batista - 358 
 
= 0.8315; -0.1951; -0.9808; 
-0.5556; 0.5556; 0.9808; 
0.1951; -0.8315 
 
x0[n]+x1[n]+x2[n]+x3[n] 
 
 
 
0 2 4 6 8 
-1 
-0.5 
0 
0.5 
1 





 

16
3)12(
cos
2
2
][3
n
nx
 
0 2 4 6 8 
-5 
0 
5 
10 
15 
 X4 = 1 
28/09/2014 Leonardo Vidal Batista - 359 
 
= 0.3536; -0.3536; -0.3536; 
0.3536; 0.3536; -0.3536; 
-0.3536; 0.3536 
 
x0[n]+x1[n]+x2[n]+x3[n] 
+x4[n]

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais