Parte 2. Operações Topológicas
date post
23-Feb-2016Category
Documents
view
44download
0
Embed Size (px)
description
Transcript of Parte 2. Operações Topológicas
Apresentao do PowerPoint
Parte 2. Operaes TopolgicasBruno BarufaldiProcessamento Digital de ImagensContedo (parte 2)Dissolve CruzadoDeteco de MovimentoReduo de RudoZoomReconstruo de ImagensRebatimento (flip)Rotao
WarpingMorphing
2Dissolve CruzadoO dissolve cruzado uniforme de duas imagens f e g uma nova imagem h dada por:h(i,j) = (1-t) f(i,j) + t g(i,j)
Dissolve Cruzado
ABCABCImagem resultante com t = 0,3Imagem resultante com t = 0,5Imagem resultante com t = 0,7h(i,j) = (1-t) f(i,j) + t g(i,j)Dissolve CruzadoO dissolve cruzado no uniforme, t uma matriz com mesmas dimenses de f e g h2(i,j) = [1 t(i,j)] f(i,j) + t(i,j) g(i,j)
ABC(A) t(i,j) = (i+j)/(R+C-2) (B) t(i,j) = j/(C-1) (C) t(i,j) = i/(R-1)Dissolve diagonalDissolve verticalDissolve horizontal5Deteco de MovimentoVideos (frames/seg)Subtrao de Imagens
f1 f2 gDeteco de Movimento
Reduo de Rudo por Mdia das ImagensImagens estacionrias
f(i, j) imagem sem rudonk(i, j) rudo de mdia mgk(i,j) = f(i,j) + nk(i,j)
Multiplas imagens estacionrias com ruido aleatorio8Reduo de Rudo por Mdia das Imagens
Para M grande:Multiplas imagens estacionrias com ruido aleatorioA medida que M aumenta,nM (i, j) se aproxima de n em todos os pontos da imagem, de forma que o rudo, neste exemplocaracterizado como uma alterao aleatria da intensidade de cada pixel, substitudo por umacrscimo quase constante na intensidade dos pixels. Fazendo-se uma mdia de muitas imagensobtm-se uma imagem praticamente limpa (sem rudos), que talvez necessite apenas de uma simplesreduo no brilho.9Zoom inPor replicao de pixels1010203010102030Original Ampliao por fator 3
10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 20 20 20 20 20 20 20 20 30 30 30 30 30 30 30 30Zoom inPor interpolao bilinear1010203010102030Original Ampliao por fator 3
Interpolao nas linhasPassos de nveis de cinza:10 a 10: 020 a 30: (30-20)/3 = 3,3
1010101023273337Zoom inPor interpolao bilinear10102030101010101010202327303337 Original Ampliao por fator 3
Interpolao nas colunasPassos de nveis de cinza:10 a 20: (20-10)/3 = 3,310 a 23: (23-10)/3 = 4,310 a 27: (27-10)/3 = 5,7...
131723271419273216213338172337431825414819284655Zoom inExemplo: ampliao fator 10
Original Replicao InterpolaoZoom outPor eliminao de pixelsMdia14182841101010101010131416171819171921232528202327303337232733374146273238434855Original Reduo por fator 3
(10 + 10 + 10 + 13 + 14 + 16 + 17 +19 + 21) / 9(10 + 10 + 10 + 17 + 18 + 19 + 23 + 25 + 28) / 9(20 + 23 + 27 + 23 + 27 + 33 + 27 + 32 + 38) / 9(30 + 33 + 37 + 37 + 41 + 46 + 43 + 48 + 55) / 9Reconstruo de ImagensQuando queremos ampliar a imagem (zoom in) por um fator no inteiro?Ex.: F = 3,75
Reconstruir a imagemReconstruo de ImagensDados f(i,j), f(i,j+1), f(i+1,j), f(i+1,j+1)
Reconstruo:Encontrar f(x,y),x em [i, i+1]y em [j, j+1]Reconstruo de ImagensInterpolao bilinear
f(i, y) = f(i, j)+(yj)[f(i, j+1)-f(i, j)]f(i+1,y)=f(i+1,j)+(yj)[f(i+1,j+1)-f(i+1, j)] f(x, y) = f(i, y) + (x i) [f(i+1, y) - f(i, y)]
Reconstruo de imagensEx: f(10.5, 15.2)=?
f(10, 15) = 10f(10, 16) = 20f(11,15) = 30f(11, 16) = 30
(10,15.2)(11,15.2)f(10, 15.2)=f(10,15)+(15.2-15)*[f(10,16)-f(10,15) = 10 + 0.2*[20 10] = 12f(11, 15.2)=f(11,15)+(15.2-15)*[f(11,16)-f(11,15) =30 + 0.2*[30 30] = 30f(10.5, 15.2)=12+(10.5-10)*[30-12] = 21Reconstruo de imagensEx: f(10.5, 15.2)=?
f(10, 15) = 20f(10, 16) = 15f(11,15) = 13f(11, 16) = 20
(10,15.2)(11,15.2)f(10, 15.2)=f(10,15)+(15.2-15)*[f(10,16)-f(10,15)] = 20 + 0.2*[15 20] = 19f(11, 15.2)=f(11,15)+(15.2-15)*[f(11,16)-f(11,15)] = 13 + 0.2*[20 13] = 14f(10.5, 15.2)=19+(10.5-10)*[14-19] = 17Zoom com Reconstruo de ImagemEx: Ampliao por fator 2.3Passo para as coordenadas: 1/2.3 = 0.43x = 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... g(0,0) = f(0,0); g(0,1) = f(0, 0.43);g(0,2) = f(0, 0.87); g(0,3) = f(0, 1.30);...
Ex: Reduo por fator 2.3x = 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...g(0,0) = f(0,0); g(0,1) = f(0, 2.3);g(0,2) = f(0, 4.6); g(0,3) = f(0,6.9);...RotaoRotao de um ngulo em torno de um ponto C(ic, jc)
Para cada ponto X(i, j) da imagem original, calculam-se as coordenadas do ponto X(i, j) correspondente.
C(ic, jc)X(i, j)C(ic, jc)X(i, j)X(i, j)RotaoC(ic, jc)X(i, j)X(i, j)j - jci - ic
i - icj - jcRotao
C(ic, jc)X(i, j)X(i, j)
j - jci - ici - icj - jcRotaoDesenvolvendo as equaes:
onde
logo
Rotao de um ngulo em torno de um ponto C(ic, jc)
RotaoRotaoExemplos
Rotao constante com ngulo de 45 grausRotao com decrescimento linear, um centro de rotaoImagem OriginalRotao com crescimento quadrtico e um centro de rotaoRotao com decrescimento quadrtico e multiplicao senoidal, e um centro de rotao
Rotao com crescimento linear e um centro de rotao
Rebatimento horizontal
Rebatimento vertical
Rebatimento
RebatimentoImagem originalRebatimento verticalRebatimento horizontal
Rebatimento diagonal principal
Rebatimento diagonal secundria
RebatimentoRebatimento
Imagem originalRebatimento pela diagonal principalRebatimento pela diagonal secundariaWarping = DeformaoTransformao geomtrica genrica que modifica a relao espacial dos pontos da imagemVrias tcnicas de warping so definidas na literaturaMesh warping, Field Morphing, Multilevel free-form deformation, etc.MorphingMetamorfose gradual entre 2 ou mais imagens envolvendo a deformao (warping)
Vdeo
Aplicao Prtica
Aplicao Prtica #fail199132Warping baseado em camposDeterminar caractersticas relevantes na imagem (nariz, boca, contorno da face, etc.)Definir vetores referncia e vetores alvos
Warping baseado em campos
Parmetros u e v estabelecem as relaes que devem ser preservadasv: distncia do ponto X ao ponto que corta (Q-P) atravs de uma linha perpendicular ao vetoru: distancia medida pelo ponto P at a linha que passa perpendicular a X.Quanto maior a distncia de X, menos influente ser o ponto ao segmento34Representa um vetor perpendicular a V de mesmo mdulo que este
Warping baseado em campos
35Warping baseado em campos
36Quando h mais de um par de vetores referncia-alvo, cada ponto da imagem sofrer a influncia de todos os pares de vetores. Neste caso, ser em geral encontrado um ponto diferente para cada par de vetores referncia-alvo. A combinao dos vetores referencia e alvo efetuada por uma mdia ponderada produzindo o ponto XWarping baseado em campos
37peso:quando mais de um vetor definido, um pixel pode ser influenciado por ambos os segmentos. O segmento de maior peso, influenciar mais o valor de Xtamanho: mdulo do vetorp: importancia do comprimento do vetor (Se p = 0, comprimento ignorado)b: concentrao de fora da caractersticaa: aderncia ao vetor (para valores prximos a 0, os pontos mais prximos ao vetor sero mapeados exatamente como o vetor determina)
Experimentos com os parmetros mostram que bons resultados, em termos de qualidade visual e tempo de processamento, so obtidos com a = 0 ou a = 1, b = 2 e p = 0 ou p = 1.
Warping baseado em campos
38MorphingInterpolao de formas e cores entre duas imagens distintas (f0 e fN-1) Encontrar imagens f1, f2, ..., fN-2: transio gradual de f0 a fN1Efeitos especiais na publicidade e na indstria cinematogrfica; realidade virtual; compresso de vdeo; etc. Warping + dissolve cruzado MorphingSo marcados v vetores de referncia (caractersticas relevantes) em f0 e v vetores de referncia em fN-1ai, i = 1, 2,..., v (f0) e bi, i = 1, 2,..., v (fN-1) Para cada imagem interpolada e para cada par de vetores ai bi , um novo vetor alvo ci criado.Se temos k imagens interpoladas, teremos cki vetores alvoMorphing
Morphing
Morphing
Imagem Inicialai, i = 1, 2,..., v (f0)Imagem finalbi, i = 1, 2,..., v (fN-1)Morphing
Morphing
45
(i, j)
(x,y)
(i+1, j+1)
(i, j+1)
(i+1, j)
(i, j)
(x,y)
(i, y)
(i+1, j+1)
(i+1, y)
(i, j+1)
(i+1, j)
(10,15)
(10.5, 15.2)
(11,16)
(10,16)
(11,15)
(10,15)
(10.5, 15.2)
(11,16)
(10,16)
(11,15)