Operações Algébricas
Operações Topológicas
> Computação Gráfica
Operações algébricas
> Produzem
uma imagem de saída aplicando-se
diferentes operações algébricas pixel a pixel das
imagens de entrada, com possível envolvimento de
escalares
2
Operações Algébricas
> n-árias
> Algébricas
•
Dissolve Cruzado
> Uniforme
> Não-uniforme
•
Redução de Ruído por média de imagens
3
Dissolve Cruzado
> Nova imagem ht
ht (i, j)= (1 - t) f(i, j) + t g(i, j)
> t é um escalar no intervalo [0, 1]
4
Dissolve Cruzado
> Cada ponto -> média ponderada
t = 0,3
t = 0,5
t = 0,7
5
Dissolve Cruzado Não-Uniforme
> Nova imagem ht
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]
6
Dissolve Cruzado Não-Uniforme
t(i,j)=(i+j)/(R+C-2)
t(i,j)=j/(C-1)
t(i,j)=i/(R-1)
7
Redução de Ruído por Média
“DE” Imagens
> gk [i,j] = f[i,j] + nk(i,j)
> f[i, j] imagem sem ruído
> nk(i, j) ruído de média
> A imagem obtida fazendo a média dessas
imagens ruidosas é:
>
1
g[i, j ] 
M
M
 g [i, j]
k
k 1
onde M é o n° de imagens ruidosas
8
Redução de Ruído por Média de
Imagens
> Para M grande:
g[i, j ]  f [i, j ]  n
9
Operações Topológicas
> Efetuam mapeamento das coordenadas (i,j) dos pixels da
imagem de entrada para uma coordenada (i’, j’) na
imagem de saída.
> Exemplo: (Rebatimento)
i’ = j
, j’ = i
10
Rotação
> Rotação -90° de uma imagem R x C
> j’ = R-1-i , i’ = j
(i,j) = (i’, j’)
(0,0) = ( , )
(1,0) = ( , )
(2,0) = ( , )
(i,j) = (i’, j’)
(0,1) = ( , )
(1,1) = ( , )
(2,1) = ( , )
(i,j) = (i’, j’)
(0,2) = ( , )
(1,2) = ( , )
(2,2) = ( , )
(i,j) = (i’, j’)
(0,3) = ( , )
(1,3) = ( , )
(2,3) = ( , )
Rotação
> Rotação -90° de uma imagem R x C
> j’ = R-1-i , i’ = j
(i,j) = (i’, j’)
(0,0) = (0,2)
(1,0) = (0,1)
(2,0) = (0,0)
(i,j) = (i’, j’)
(0,1) = (1,2)
(1,1) = (1,1)
(2,1) = (1,0)
(i,j) = (i’, j’)
(0,2) = (2,2)
(1,2) = (2,1)
(2,2) = (2,0)
(i,j) = (i’, j’)
(0,3) = (3,2)
(1,3) = (3,1)
(2,3) = (3,0)
Rotação e Rebatimento
Imagem original
Rebatimento pela
diagonal
Rotação de -90 graus
em torno de
(R/2,C/2)
13
Rotação
> Rotação em torno de (ic, jc)
i'  (i  ic ) cos  ( j  jc ) sen  ic
j '  (i  ic ) sen  ( j  jc ) cos  jc
> θ=45° e (ic, jc)=(255,0)
> θ=-45° e (ic, jc)=(255,0)
Ampliação (Zoom in)
> Por replicação de pixels
> Original
10 10
20 30
> Ampliação por fator de 3
10
10
10
20
20
20
10
10
10
20
20
20
10
10
10
20
20
20
10
10
10
30
30
30
10
10
10
30
30
30
10
10
10
30
30
30
15
Ampliação (Zoom in)
> Por interpolação bilinear
> Original
10 10
> Ampliação por fator de 3
10
10
20
30
20 30
Interpolação nas linhas
Passos de níveis de cinza:
10 a 10: 0
20 a 30: (30-20)/3 = 3,3
16
Ampliação (Zoom in)
> Por interpolação bilinear
> Original
10 10
> Ampliação por fator de 3
10 10 10 10 10 10
20 30
Interpolação nas linhas
Passos de níveis de cinza:
10 a 10: 0
20 a 30: (30-20)/3 = 3,3
20 23 27 30 33 37
17
Ampliação (Zoom in)
> Por interpolação bilinear
> Original
10 10
20 30
Interpolação nas colunas
Passos de níveis de cinza:
10 a 20:
10 a 23:
10 a 27:
10 a 30:
10 a 33:
10 a 37:
> Ampliação por fator de 3
10 10 10 10 10 10
20 23 27 30 33 37
18
Ampliação (Zoom in)
> Por interpolação bilinear
> Original
10 10
20 30
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
10 a 30: (30-10)/3 = 6,7
10 a 33: (33-10)/3 = 7,7
10 a 37: (37-10)/3 = 9
> Ampliação por fator de 3
10
13
17
20
23
27
10
14
19
23
27
32
10
16
21
27
33
38
10
17
23
30
37
43
10
18
25
33
41
48
10
19
28
37
46
55
19
Ampliação (Zoom in)
> Exemplo: Ampliação por fator de 10
Original
Replicação
Interpolação
20
Redução (Zoom out)
> Por eliminação de pixel
> Por média
Original
10
13
17
20
23
27
10
14
19
23
27
32
10
16
21
27
33
38
10
17
23
30
37
43
Redução por fator 3
10
18
25
33
41
48
10
19
28
37
46
55
14 18
28 41
21
Reconstrução de imagens
> Dados f(i,j), f(i,j+1), f(i+1,j),
f(i+1,j+1)
(i, j)
(i, y) 1°
(i, j+1)
> Reconstrução:
Encontrar f(x,y),
x no intervalo [i, i+1]
Y no intervalo [j, j+1]
(i+1, j)
(x,y) 3°
(i+1, y)
2°
(i+1, j+1)
22
Reconstrução de imagens por
interpolação bilinear
> 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)]
=
+
p.a.
(i, j)
dist. ao pixel
anterior
(i, y)
(
p.p.
p.a.
)
(i, j+1)
(x,y)
(i+1, j)
(i+1, y)
(i+1, j+1)
23
Reconstrução
> Ex: f(10.5, 15.2)=?
> f(10, 15) = 10 ;
f(11,15) = 30
;
f(10, 16) = 20;
f(11, 16) = 30
24
Reconstrução de imagens
Solução:
x = 10.5; y = 15.2
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] =
= 10
+ 0.2 *(20 – 10) = 10 + 0.2*10 = 10 + 2 = 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
+ 0.2 *(30 - 30) = 30 + 0 = 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] =
=12 + 0.5 * 18 = 12 + 9 = 21
25
Download

Dissolve Cruzado