Post on 07-Apr-2016
Parte 1. Convolução e Correlação
Bruno Barufaldi
Processamento Digital de Imagens
Convolução Operação de filtragem no domínio espacial Local (não pontual)
vizinhança Muito utilizada em SLIT (Sistemas Lineares
Invariantes no Tempo) Em processamento de imagens digitais, é
possível realizar operações de filtragem de maneira simples.
Convolução A convolução entre duas funções s(t) e h(t),
representada por s(t)*h(t) gera uma função g(t) dada por:
Não é trivial.
Convolução Representação gráfica:
Convolução Primeiro passo:
Rebatimento de h(t) em relação a origem e deslocamento da função resultante por t
Convolução
Sinal original
Sinal rebatido Sinal deslocado
Convolução Integração:
O resultado do produto será nulo para qualquer valor de t onde não houver interseção entre os intervalos
Convolução A convolução discreta é a extensão direta da
convolução contínua:
Em situações mais comuns, temos sequências de entradas finitas, ou seja:
Convolução Se s[n] e h[n] têm N0 e N1 amostras, temos:
N = N0 + N1 – 1 (extensão por zeros).
Convolução Exemplo:
Convolução
s = [1,2,3,4,5,2,1]; h = [3,2,1,0,1,2]; N =12.
g[0] = s[0]*h[0-0] = 3g[1] = s[0]*h[1-0] + s[1]*h[1-1] = 8g[2] = s[0]*h[2-0] + s[1]*h[2-1] + s[2]*h[2-2] =
14…Não esqueçam de extender com 0s!
Convolução Resultado:
Convolução
Outro exemplo:
s = [5,4,2,3,1,0,2]; h = [1,0,3,2,4,1];
Convolução
s = [5,4,2,3,1,0,2]; h = [1,0,3,2,4,1]; N = 12.
g[0] = s[0]*h[0-0] = 5g[1] = s[0]*h[1-0] + s[1]*h[1-1] = 4g[2] = s[0]*h[2-0] + s[1]*h[2-1] + s[2]*h[2-2] = 17g[3] = 10+12+0+3 = 25 g[9]
=0+0+0+0+0+2+0+0+0 = 2g[4] = 20+8+6+0+1 = 35 g[10] =
0+0+0+0+0+2+0+0+0+0 = 2g[5] = 5+16+4+9+0+0 = 34 g[11] = 0g[6] = 0+4+8+6+3+0+2 = 23g[7] = 0+0+2+12+2+0+0+0 = 16g[8] = 0+0+0+3+4+0+0 +0 = 7
Convolução)()()( knhkxny
k
0 0
0
k
k
k
x(k) y(k)
h(-2-k)
Convolução)()()( knhkxny
k
0 0
0
k
k
k
x(k) y(k)
h(-1-k)
Convolução)()()( knhkxny
k
0 0
0
k
k
k
x(k) y(k)
h(0-k)
Convolução)()()( knhkxny
k
0 0
0
k
k
k
x(k) y(k)
h(1-k)
Convolução)()()( knhkxny
k
0 0
0
k
k
k
x(k) y(k)
h(2-k)
Convolução)()()( knhkxny
k
0 0
0
k
k
k
x(k) y(k)
h(3-k)
Convolução)()()( knhkxny
k
0 0
0
k
k
k
x(k) y(k)
h(4-k)
Convolução)()()( knhkxny
k
0 0
0
k
k
k
x(k) y(k)
h(5-k)
Convolução)()()( knhkxny
k
0 0
0
k
k
k
x(k) y(k)
h(6-k)
Convolução Sinal Bidimensional
Máscaras convolucionais
h h’h-1,-1 h-1,0 h-1,1
h0,-1 h0,0 h0, 1
h1,-1 h1,0 h1,1
h1,1 h1,0 h1,-1
h0,1 h0,0 h0,-1
h-1,1 h-1,0 h-1,-1
Convolução Fórmula:
Em que:i = 0, 1,..., R-1, j = 0, 1,..., C-1.f = imagem original
1
0
1
0,,, '
R
a
C
bbjaibaji hfg
Convolução Exemplos de máscaras convolucionais
Aguçamento
0 -c 0
-c 4c+d -c
0 -c 0
-c -c -c
-c 8c+d -c
-c -c -c
Convolução Exemplos de máscaras convolucionais
Detecção de bordas
-1/8 -1/8 -1/8
-1/8 1 -1/8
-1/8 -1/8 -1/8
-1 -1 -1
0 0 0
1 1 1
Convolução Exemplos de máscaras convolucionais
Detecção de bordas
-1 0 1
-1 0 1
-1 0 1
-1 -1 0
-1 0 1
0 1 1
Convolução Exemplos de máscaras convolucionais
Relevo
0 0 0
0 1 0
0 0 -1
0 0 -1
0 1 0
0 0 0
0 0 2
0 -1 0
-1 0 0
Convolução Exemplos de máscaras convolucionais
Gaussiano
1/16 2/16 1/16
2/16 4/16 2/16
1/16 2/16 1/16
Convolução Exemplos de máscaras convolucionais
Média
1/(MN) 1/(MN) ...
1/(MN) 1/(MN) ...
... ... ...
Correlação Convolução
Correlação