Processamento de Imagens CPS755 aula 03 - visualizando a planar Antonio Oliveira Ricardo Marroquim 1 / 40
laboratório de processamento de imagens tópicos visualizando a planar discussão dos primeiros 2 trabalhos 2 / 40
questões para refletir porque estudamos? como ela está associada à visão computacional? o que representa os espaços (projetivo, afim, similaridade e Euclideano)? 3 / 40
modelo de câmera pinhole 4 / 40
modelo de câmera pinhole todos os raios de luz que refletem no mundo e passam pelo buraco (centro da câmera) e são projetados no fundo da caixa (plano da imagem) note que a relação entre pontos da imagem e raios é um-para-um cada raio define apenas um ponto na imagem um ponto da imagem é definido por um raio logo, todos os pontos em um raio, são projetados no mesmo ponto na imagem em coordenadas homogêneas: (a, b, 1) = k(a, b, 1) = (ka, kb, k) 5 / 40
projeção central o centro da câmera define o conjunto de raios que formam a imagem todas imagens tiradas de uma câmera com mesmo centro são projetivamente equivalentes ou seja, uma pode ser mapeada na outra sem informações sobre os pontos 3D ou posição do centro 6 / 40
projeção central 7 / 40
modelo projetivo x 2 ideal point l O x π x 3 x 1 8 / 40
modelo projetivo reta no infinito (0, 0, 1) define o plano no infinito z = 0 contém todos pontos ideais (a, b, 0) definem todas retas que estão no plano no infinito atenção com a representação do (0, 0, 0) 9 / 40
modelo projetivo - pontos e retas elementos geradores e elementos no plano z = 1 z=1 z=1 z=0 z=0 10 / 40
modelo projetivo - pontos e retas a interseção com o plano z = 0 define a direção da reta z=1 z=0 11 / 40
modelo projetivo - pontos e retas planos geradores das retas se intersectam em uma reta em R 3 que passa pela origem (0, 0, 0) z=1 z=0 12 / 40
modelo projetivo - pontos e retas z=1 (0,0,0) z=0 13 / 40
modelo projetivo - pontos e retas retas paralelas definem a mesma direção a interseção dos planos geradores é uma reta em z = 0 (reta no infinito) z=1 z=0 14 / 40
modelo projetivo - pontos e retas z=1 z=0 (0,0,0) 15 / 40
invariantes Euclideana comprimento, área similaridade razão entre comprimentos, ângulos, pontos circulares afim paralelismo, razão entre áreas, razão ente comprimentos entre retas paralelas (ponto médio), combinação linear de vetores (centroide), reta no infinito (l ) projetiva colinearidade, razão entre razão de comprimentos 16 / 40
decomposição decomposição de uma transformação projetiva podemos decompor a transformação projetiva em uma cadeia de transformações hierárquicas H = H S H A H P H = [ sr t 0 T 1 ] [ K 0 0 T 1 ] [ I 0 v T v ] [ A t = v T v ] 17 / 40
decomposição decomposição passa ideia de acertos para voltar à geometria Euclideana qual as transformações necessárias para levar um sistema de coordenadas a outro? 18 / 40
decomposição decomposição retificação projetiva: encontra o alinhamento do plano da imagem retificação afim: encontra a correspondência entre os eixos do plano retificação de similaridade: encontra a rotação, translação e escala dos eixos 19 / 40
retificação projetiva - afim vimos que podemos remover a distorção perspectiva identificando a reta no infinito na imagem l = (l 1, l 2, l 3 ) e descobrindo qual transformação leva l em l = (0, 0, 1) o que estamos fazendo exatamente? 20 / 40
retificação projetiva - afim podemos pensar na foto como uma projeção central 21 / 40
retificação projetiva - afim no caso do exemplo 22 / 40
retificação projetiva - afim no exercício encontrávamos dois pontos de fuga, que definiam a reta l 23 / 40
retificação projetiva - afim a reta l é gerada por um plano que passa pela origem 24 / 40
retificação projetiva - afim o plano gerador encontrado é paralelo ao plano que contém o retângulo ou seja, estamos encontrando a normal do plano! 25 / 40
cônicas 26 / 40
cônicas z=1 z=1 z=0 z=0 27 / 40
cônica no infinito (degenerada) o dual de uma cônica formada por duas retas é uma cônica formada por dois pontos C é a cônica dual no infinito 28 / 40
cônicas cônica dual note como é a matriz C = 1 0 0 0 1 0 0 0 0 ideia dos eixos x e y no plano z = 0 ou seja, na sua forma canônica, C é formada pelo dual dos eixos x e y no plano no infinito 29 / 40
cônicas ângulos no plano projetivo forma invariante à transformação projetiva cos θ = l T C m (l T C l)(m T C m) ou seja, encontrando C no plano projetivo, podemos realizar medidas Euclideanas de ângulos conceito mas o que significa o produto de uma reta por uma cônica, seguido pelo produto com outra reta?? 30 / 40
cônicas ângulos no espaço de similaridade sabemos fazer isso no espaço de similaridade cos θ = l T m = l 1 m 1 + l 2 m 2 (l 2 1 + l 2 2 )(m2 1 + m2 2 ) então se queremos calcular o ângulo entre duas retas no espaço projetivo uma solução é trazer as retas para o espaço de similaridade e calcular o ângulo neste espaço 31 / 40
cônicas ângulos no espaço de similaridade lembrando l = H T l e consequentemente l = H T l então a expressão l T m fica cos θ = [H T l ] T H T m cos θ = l HH T m 32 / 40
cônicas ângulos no plano projetivo podemos pensar na cônica degenerada como transformações disfarçadas ou como uma representação compacta de dois pontos ou duas retas; ou, ainda melhor, dois eixos fazendo: C = HH T chegamos a cos θ = l T C m (l T C l )(m T C m ) e quando C está na forma canônica : cos θ = l T C m = l T m 33 / 40
cônicas ângulos no plano projetivo identificando a cônica dual no infinito C na imagem, descobrimos qual transformação leva ela para sua forma canônica C essa transformação, por consequência, é a retificação para o espaço de similaridade 34 / 40
cônicas ângulos no plano projetivo a remoção da distorção perspectiva encontra o plano paralelo ao plano da imagem que passa pela origem linha no infinito na imagem inverte a divisão perspectiva, eixo z na decomposição, encontra a matriz H P [ ] [ sr t K 0 H = H S H A H P = 0 T 1 0 T 1 ] [ I 0 v T 1 ] 35 / 40
cônicas ângulos no plano projetivo a remoção da distorção afim encontra a transformação que leva os eixos x e y em uma posição canônica a cônica C é uma forma compacta de representar esses dois pontos na decomposição, encontra a matriz H A [ ] [ sr t K 0 H = H S H A H P = 0 T 1 0 T 1 ] [ I 0 v T 1 ] 36 / 40
cônicas cônica dual aos pontos circulares lembrando que a cônica C é invariante a transformações de similaridade (assim como os pontos circulares) [ I 0 C = v T 1 C = H S C H T S = C ] [ ] [ K 0 0 T C K T 0 1 0 T 1 fazendo os produtos acima [ KK C = T v T KK T KK T ] v v T KK T v ] [ I v 0 T 1 ] 37 / 40
cônicas cônica dual aos pontos circulares no sentido inverso, de descobrirmos quem é C [ KK C = T KK T ] v v T KK T v T KK T v podemos encontrar as matrizes [ ] K 0 H A = 0 T 1 e H P = [ I 0 v T 1 o produto dessas duas matrizes é a transformação que leva do espaço projetivo para o espaço de similaridade ] 38 / 40
cônicas cônica dual aos pontos circulares na aula passada vimos como encontrar C marcando ângulos retos na imagem e montando o sistema linear [ KK C = T KK T ] v v T KK T v T KK T v o último passo daquele trabalho é justamente extrair H A e H P 39 / 40
cônicas cônica dual aos pontos circulares encontrando H = H A H P e podemos gerar a imagem retificada essas transformações estão alinhando os planos: remoção da distorção perspectiva colocando os eixos na forma canônica: remoção da distorção afim mas não está alinhando os eixos: encontrando a rotação e transladando para origem por isso não se preocupe se sua imagem final estiver torta 40 / 40