Edição Tridimensional de Fotografias Arquitetônicas

Documentos relacionados
6. Geometria, Primitivas e Transformações 3D

TIPOS DE REFLEXÃO Regular Difusa

Objetivos. Apresentar as superfícies regradas e superfícies de revolução. Analisar as propriedades que caracterizam as superfícies regradas e

Ponto, reta e plano no espaço tridimensional, cont.

REFLEXÃO DA LUZ: ESPELHOS 412EE TEORIA

O ESPAÇO NULO DE A: RESOLVENDO AX = 0 3.2

Resolução de sistemas lineares

4.2 Produto Vetorial. Orientação sobre uma reta r

Departamento de Matemática - UEL Ulysses Sodré. Arquivo: minimaxi.tex - Londrina-PR, 29 de Junho de 2010.

GAAL /1 - Simulado - 1 Vetores e Produto Escalar

a 1 x a n x n = b,

PROPRIEDADES DOS DETERMINANTES E O CÁLCULO DA ÁREA DE TRIÂN- GULOS: EXEMPLOS SIGNIFICATIVOS

Imagem e Gráficos. vetorial ou raster?

EXPERIMENTO N o 6 LENTES CONVERGENTES INTRODUÇÃO

Refração da Luz Índice de refração absoluto Índice de refração relativo Leis da refração Reflexão total da luz Lentes Esféricas Vergência de uma lente

Conceitos Fundamentais

Compreendendo os Efeitos da Projeção nas Imagens Aéreas

Nosso objetivo será mostrar como obter informações qualitativas sobre a refração da luz em um sistema óptico cilíndrico.

Nesta aula iremos continuar com os exemplos de revisão.

9. Derivadas de ordem superior

Exercícios resolvidos P2

MAT Cálculo Diferencial e Integral para Engenharia II

Os caracteres de escrita

GDC I AULA TEÓRICA 09

Ivan Guilhon Mitoso Rocha. As grandezas fundamentais que serão adotadas por nós daqui em frente:

Só Matemática O seu portal matemático FUNÇÕES

Capítulo 1. x > y ou x < y ou x = y

IBM1018 Física Básica II FFCLRP USP Prof. Antônio Roque Aula 6. O trabalho feito pela força para deslocar o corpo de a para b é dado por: = =

Exercícios Teóricos Resolvidos

Notas de Cálculo Numérico

Entendendo o Astigmatismo. Introdução. Lentes especiais sem astigmatismo MAS450/ de março de 2003

O mundo à nossa volta é povoado de formas as mais variadas tanto nos elementos da natureza como nos de objetos construídos pelo homem.

APLICAÇÕES DA DERIVADA

Copiright de todos artigos, textos, desenhos e lições. A reprodução parcial ou total desta aula só é permitida através de autorização por escrito de

Capítulo 5: Aplicações da Derivada

ESCOLA DR. ALFREDO JOSÉ BALBI UNITAU APOSTILA PROF. CARLINHOS NOME: N O :

LENTES E ESPELHOS. O tipo e a posição da imagem de um objeto, formada por um espelho esférico de pequena abertura, é determinada pela equação

Conceitos e fórmulas

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO PROGRAMA DE EDUCAÇÃO TUTORIAL - MATEMÁTICA PROJETO FUNDAMENTOS DE MATEMÁTICA ELEMENTAR


Por que o quadrado de terminados em 5 e ta o fa cil? Ex.: 15²=225, 75²=5625,...

Reflexão. A reflexão ocorre quando a luz incide sobre a superfície de separação entre dois meios com propriedades distintas.

Forças internas. Objetivos da aula: Mostrar como usar o método de seções para determinar as cargas internas em um membro.

Álgebra Linear I Solução da 5ª Lista de Exercícios

Projeção ortográfica da figura plana

2. Representação Numérica

Espelhos Esféricos Gauss 2013

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

[a11 a12 a1n 4. SISTEMAS LINEARES 4.1. CONCEITO. Um sistema de equações lineares é um conjunto de equações do tipo

Disciplina: Introdução à Álgebra Linear

Åaxwell Mariano de Barros

IBM1018 Física Básica II FFCLRP USP Prof. Antônio Roque Aula 3

Lista 1: Vetores -Turma L

Universidade Federal de Alagoas Instituto de Matemática. Câmera Virtual. Prof. Thales Vieira

O degrau de potencial. Caso II: energia maior que o degrau

Projeção e Anaglifos

Programa de Retomada de Conteúdo 1º Bimestre

Lista de Revisão Óptica na UECE e na Unifor Professor Vasco Vasconcelos

O Problema da Projecção. Antonio L. Bajuelos Departamento de Matemática Universidade de Aveiro

CAP. I ERROS EM CÁLCULO NUMÉRICO

Rotação de Espelhos Planos

RESUMO 2 - FÍSICA III

Projeção ortográfica de modelos com elementos paralelos e oblíquos

(x, y) = (a, b) + t*(c-a, d-b) ou: x = a + t*(c-a) y = b + t*(d-b)

Simulado OBM Nível 2

MÓDULO 9. A luz branca, que é a luz emitida pelo Sol, pode ser decomposta em sete cores principais:

O tornado de projeto é admitido, para fins quantitativos, com as seguintes características [15]:

4 Experimentos Computacionais

Gráficos estatísticos: histograma. Série Software ferramenta

PROFº. LUIS HENRIQUE MATEMÁTICA

Computação Gráfica Interativa

ÓPTICA GEOMÉTRICA PREGOLINI

2 A Derivada. 2.1 Velocidade Média e Velocidade Instantânea

Integrais Duplas e Coordenadas Polares. 3.1 Coordenadas Polares: Revisão

MÓDULO DE RECUPERAÇÃO

3.3 Espaço Tridimensional - R 3 - versão α 1 1

Dadas a base e a altura de um triangulo, determinar sua área.

UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA 5 0 Encontro da RPM TRANSFORMAÇÕES NO PLANO

Unidade: Vetores e Forças. Unidade I:

Álgebra Linear. Mauri C. Nascimento Departamento de Matemática UNESP/Bauru. 19 de fevereiro de 2013

ITA º DIA MATEMÁTICA BERNOULLI COLÉGIO E PRÉ-VESTIBULAR


A função do primeiro grau

Cálculo de volume de objetos utilizando câmeras RGB-D

Vetores. Definição geométrica de vetores

PARTE 2 FUNÇÕES VETORIAIS DE UMA VARIÁVEL REAL

CorelDRAW UM PROGRAMA DE DESIGN

OBJETIVO Verificar as leis da Reflexão Verificar qualitativamente e quantitativamente a lei de Snell. Observar a dispersão da luz em um prisma.

Curso de Computação Gráfica (CG) 2014/2- Unidade 1- Modelagem de objetos. Exercício 1 (individual) - Entrega: quarta 13/08

O que é uma lente esférica?

4. Curvas planas. T = κn, N = κt, B = 0.

1 COMO ESTUDAR GEOMETRIA

DESENVOLVIMENTO DE PROGRAMA MULTIMIDIA PARA O ENSINO DEDINÂMICA DE MÚLTIPLOS CORPOS

IBM1018 Física Básica II FFCLRP USP Prof. Antônio Roque Aula 4

Material Teórico - Módulo de Divisibilidade. MDC e MMC - Parte 1. Sexto Ano. Prof. Angelo Papa Neto

Resolução da Prova da Escola Naval Matemática Prova Azul

Aula 18 Elipse. Objetivos

Colégio Paula Frassinetti Atividade de Física 3º ano do Ensino Médio - / /2012 Prof. Luciano Soares Pedroso

Questão 1. Questão 3. Questão 2. alternativa E. alternativa B. alternativa E. A figura exibe um mapa representando 13 países.

Formação de imagens por superfícies esféricas

Transcrição:

Universidade Federal de Alagoas Edição Tridimensional de Fotografias Arquitetônicas Allyson Ney Teodosio Cabral allyson.cabral@gmail.com Instituto de Computação Orientador: Adelailson Peixoto adelailsos@pos.mat.ufal.br Instituto de Matemática Maceió, Setembro de 2008.

Resumo Este trabalho implementa uma operação de edição que explora informações tridimensionais em fotograas envolvendo elementos arquitetônicos, permitindo alterá-las inserindo novos elementos em determinados planos da cena. Com esse intuito, foi implementada uma técnica de calibração de câmera que obtém todas as informações necessárias a partir de uma única fotograa. Uma vez realizada a calibração é possível estabeler relações entre objetos tridimensionais e suas projeções no plano da imagem que são fundamentais para a edição. i

Abstract This work implements an edition operation that explores tridimensional information in architectonic photographs to change then inserting new elements in the scene. For that, a camera calibration technique has been implemented wich obtains all necessary information from a single image. Once the calibration is calculated, it's possible to stablish relations between tridimensional objects and their projection on the image that is important to the edition. ii

Sumário 1 Introdução 1 1.1 Objetivo..................................... 1 1.2 Motivação.................................... 1 1.3 Trabalhos Relacionados............................. 3 1.4 Esquema Geral................................. 3 1.5 Estrutura do Trabalho............................. 4 2 Geometria Projetiva 5 2.1 Espaço Projetivo................................ 5 2.2 Transformações Projetivas........................... 7 2.3 Transformação entre Quadriláteros...................... 10 2.4 Transformação Perspectiva........................... 12 3 Modelo e Calibração de Câmera 15 3.1 Modelo de Câmera............................... 15 3.2 Transformações de Câmera........................... 16 3.2.1 Mudança do SCM para o SCC..................... 17 3.2.2 Mudança do SCC para o SCI..................... 18 3.2.3 Distorção das Lentes.......................... 19 3.2.4 Mudança do SCI para o SCP..................... 20 3.2.5 Composição das Transformações.................... 20 3.3 Calibração de Câmera............................. 21 4 Edição de Imagens 26 4.1 Etapas da Edição................................ 26 4.2 O Método de Edição.............................. 27 4.3 Resultados.................................... 31 5 Conclusões e Trabalhos Futuros 34 iii

Lista de Figuras 1.1 Exemplo da poluição visual em áreas de grande concentração urbana... 2 1.2 Processo de calibração de câmera aplicado no controle de braços mecânicos 2 1.3 Esquema geral do trabalho........................... 3 2.1 Estrada fotografada em ângulos diferentes.................. 5 2.2 Projeção Cônica................................. 6 2.3 Plano Projetivo................................. 6 2.4 Retas paralelas no plano projetivo....................... 7 2.5 Ponto no innito tranformado em ponto real................. 9 2.6 Transformação com dois pontos de fuga.................... 10 2.7 Ilustração da transformação entre os quadriláteros Q e P.......... 11 2.8 Determinação da projeção perspectiva..................... 12 2.9 Interseção de retas paralelas no innito.................... 13 2.10 Retas são preservadas na projeção perspectiva................ 13 2.11 A projeção perspectiva não preserva dimensões................ 14 3.1 Câmera pinhole................................. 15 3.2 Câmera pinhole e a projeção perspectiva................... 16 3.3 Distorção radial................................. 16 3.4 Sistemas de coordenadas envolvidos na transformação perspectiva..... 17 3.5 Transformação do SCM para o SCC...................... 18 3.6 Transformação do SCC para o SCI...................... 19 3.7 Esquema ilustrando os sistemas da câmera e do mundo........... 22 3.8 Correspondência entre pontos 3D e 2D para calibração de câmera utilizando padrão xadrez.................................. 22 3.9 Coordenadas da imagem e pontos de fuga................... 23 3.10 Pontos de fuga e centro ótico.......................... 24 3.11 Esquema geral da recuperação dos pontos tridimensionais equivalentes aos pontos da imagem................................ 25 4.1 Esquema geral do trabalho........................... 27 4.2 Posicionamento dos segmentos para calibração................ 28 4.3 Seleção da face para edição........................... 28 4.4 Esquema ilustrando a transformação T.................... 30 4.5 Esquema ilustrando a edição.......................... 31 4.6 Resultado da Calibração............................ 32 4.7 Resultado da aplicação de um poster à fachada de um prédio........ 32 4.8 Aplicação de uma imagem à fachada de um hotel.............. 33 iv

Capítulo 1 Introdução A captura da imagem de objetos tridimensionais a partir de câmeras fotográcas envolve uma série de elementos sicos e matemáticos importantes que, sendo bem conhecidos e explorados, podem proporcionar uma série de resultados interessantes a partir de operações aplicadas sobre eles. Daremos enfoque a dois desses elementos: a transformação projetiva e a calibração de câmera. Ambos são fundamentais para a edição de fotograas, que é o foco do nosso trabalho. 1.1 Objetivo O objetivo desse trabalho é explorar informações tridimensionais de fotograas que contenham objetos em formas de caixas, como alguns elementos arquitetônicos, permintindo assim sua alteração para a inserção de novos objetos em determinados planos da cena. De modo mais especíco os objetivos são: Descrever um método de calibração de câmera baseado nas informações 3D projetadas em uma fotograa. Apresentar uma operação especíca que é a alteração da imagem através da inserção de novos objetos em determinados planos da cena. 1.2 Motivação A edição de imagens fotográcas é utilizada por diversos prossionais para analisar e mensurar a interferência que novos objetos inseridos ou omitidos em determinados ambientes causarão nas estruturas já existentes e no cotidiano das pessoas. Além da aplicação natural nas áreas de arquitetura e urbanismo, técnicas semelhantes têm sido utilizadas na indústria do entretenimento e da publicidade para inserir elementos virtuais (banners, bandeiras, outdoors, etc.) em estádios de futebol, edifícios e avenidas. 1

1.2. MOTIVAÇÃO 2 Figura 1.1: Exemplo da poluição visual em áreas de grande concentração urbana As imagens acima das cidades de Hong Kong e São Paulo exemplicam o fenômeno da poluição visual. Acabar com esse tipo de poluição tem sido um grande desao para grandes centros urbanos. Um bom planejamento paisagístico auxiliado por ferramentas como a proposta neste trabalho contribuiria para a solução deste problema. A calibração de câmera constitui uma etapa de grande importância, tanto para realizar operações como as descritas acima, quanto em diversas áreas como Visão Computacional, Reconhecimento de Objetos, Robótica (gura 1.2), dentre outras. Figura 1.2: Processo de calibração de câmera aplicado no controle de braços mecânicos

1.3. TRABALHOS RELACIONADOS 3 1.3 Trabalhos Relacionados Métodos de calibração mais sosticados, como [11] e [13], utilizam imagens de padrões previamente conhecidos para calibrar câmera. Em [7] é proposta uma arquitetura genérica para o desenvolvimento de diversos métodos de calibração. Algumas aplicações, como [1][2], utilizam os dados da calibração para analisar, editar e inserir novos elementos na própria fotograa. Assim como nos dois últimos trabalhos, em [8] uma única imagem é fornecida como entrada e o usuário é contemplado com um conjunto de ferramentas de edição que permite dividir a imagem em camadas com informações de profundidade possibilitando a modicação da forma, cor e iluminação dos objetos. Um material mais completo de todo processo de calibração e edição pode ser encontrado em [9] e [5]. 1.4 Esquema Geral Uma fotograa com elementos que já contenham alguma informação da topologia e geometria dos objetos pode ser bastante útil para determinados métodos de calibração de câmera. Os parâmetros da câmera calibrada servem então de entrada para as operações aplicadas sobre a imagem. Assim sendo, um esquema geral deve receber como entrada uma ou várias fotograas. A partir de relações dos elementos contidos nas fotograas, a calibração da câmera é então realizada. (gura 1.3). Figura 1.3: Esquema geral do trabalho A partir dos dados de calibração, aplicam-se as operações. O modelo conceitual desse esquema sugere que as operações possam ser implementadas como um modelo de classe abstrata, logo cada operação especíca é especializada (sub-classe) e tem seus dados de saída de acodo com cada objetivo. A gura 1.3 mostra um esquema geral deste processo

1.5. ESTRUTURA DO TRABALHO 4 com algumas operações que exploram as informações tridimensionais da imagem. Mais especicamente o esquema mostra a operação de edição de imagem. Esta operação gera uma nova imagem com a inserção de novos elementos na cena e será discutida no capítulo 4. 1.5 Estrutura do Trabalho Este trabalho está dividido da seguinte forma: No Capítulo 2 são abordados conceitos que constituem a base para o método de edição proposto nesse trabalho. Dentre esses conceitos estão os de geometria projetiva e a transformação perspectiva. No Capítulo 3 deniremos calibração de câmera. Será feita uma descrição do modelo de câmera utilizado, bem como algumas transformações espaciais importantes, chamadas de transformações de câmera. No Capítulo 4 é exposto um esquema geral da ferramenta construida bem como uma abordagem dos passos que levam ao resultado nal, a fotograa devidamente editada. No Capítulo 5 são apresentadas conclusões e alguns trabalhos futuros.

Capítulo 2 Geometria Projetiva Este capítulo explora conceitos sobre a geometria projetiva, mais especicamente sobre o espaço projetivo necessário à construção da relação entre pares de pontos (2D, 3D). Nossa exposição está baseada em [4]. Analisando geometricamente a gura abaixo, a imagem a direita (2.1a) corresponde a uma transformação dos pontos da imagem a esquerda (2.1b). A transformação que ocorre durante o processo de fotografar uma cena preserva a linearidade dos objetos, entretanto, como pode ser visto na imagem, as retas paralelas da estrada não são paralelas na fotograa, ou seja, a relação de paralelismo não é preservada. (a) Figura 2.1: Estrada fotografada em ângulos diferentes Esse fato nos leva ao conceito de Geometria Projetiva, um dos mais importantes em computação gráca, que possibilita o estabelecimento de relações entre objetos tridimensionais e os elementos bidimensionais correspondentes a captura desses objetos em uma fotograa. (b) 2.1 Espaço Projetivo A transformação do processo fotográco mencionado acima é denida matematicamente por uma projeção cônica. Considere o ponto O do espaço euclidiano R n e um hiperplano Π R n+1 tal que O / Π [6]. A projeção cônica de um ponto P R 3, P O no plano Π é o ponto P onde a reta r que passa por O e por P intersecta o plano Π ( gura 2.2). 5

2.1. ESPAÇO PROJETIVO 6 Figura 2.2: Projeção Cônica Observe que todos os pontos da reta r denida por O e P, com exceção do próprio ponto O, são projetados no ponto P. Isso siginica que, com relação à projeção cônica, todos os pontos da reta r são iguais. A reta r sem o ponto O é chamada de ponto projetivo. Generalizando esse fato, temos a denição de retas projetivas como os planos que passam pela origem. Tomando o ponto O como sendo a origem de R n+1, deniremos o espaço projetivo de dimensão n como o conjunto das retas passando por O (sem o próprio O) e o indicamos com RP n. Assim, RP n = {(x, 1) (x, 0)}, onde x R n é um ponto do espaço euclidiano e (x, x n+1 ) é a representação de um ponto no espaço projetivo. Os pontos (x, 1) são chamados de pontos ans do plano projetivo e os do tipo (x, 0) de pontos ideais ou pontos do innito denidos nos próximos parágrafos. Figura 2.3: Plano Projetivo

2.2. TRANSFORMAÇÕES PROJETIVAS 7 Uma reta no plano projetivo é representada por um plano de origem no R n+1, logo dois desses planos, e consequentemente as duas retas projetivas correspondentes, sempre se intersectam (gura 2.4). Figura 2.4: Retas paralelas no plano projetivo Chegamos, portanto, à denição de retas paralelas no plano projetivo, representadas na gura por r 1 e r 2 no plano am z = 1. Essas retas são denidas no espaço projetivo pelos planos Π 1 e Π 2 que se intersectam na reta r do R n denindo assim um ponto do innito do plano projetivo. Logo, para cada feixe de retas paralelas do plano am existe um ponto no innito onde elas se encontram. Denido o modelo de espaço projetivo podemos falar em coordenadas projetivas. Dado um ponto p R n, tomamos um ponto p R n+1 na reta r que representa o ponto p. Se p = (X 1,..., X n ) são as coordenadas desse ponto no espaço euclidiano, suas cordenadas projetivas são dadas por (x 1,..., x n, x n+1 ) RP n+1, onde X i = x i /x n+1, i = 1, 2,..., n. A n+1-upla [x 1,..., x n, x n+1 ] que acabamos de mencionar damos o nome de coordenadas homogêneas do ponto p. Para mais informações sobre espaço projetivo e coordenadas homogêneas, consultar [3]. 2.2 Transformações Projetivas Consideremos o espaço projetivo que acabamos de descrever, onde os pontos de RP n são retas passando pela origem de R n+1 {0}. Assim, dados dois espaços projetivos de dimensões n e m, uma transformação projetiva T : RP n RP m, do ponto de vista euclidiano, equivale a uma transformação T : R n+1 R m+1 do espaço euclidiano [4]. Para simplicar, tomemos m = n = 2. A transformação projetiva T : R 3 R 3 é representada pela matriz M de ordem 3 que pode ser dividida em 4 blocos.

2.2. TRANSFORMAÇÕES PROJETIVAS 8 M = a c t 1 b d t 2 p 1 p 2 s ( = A T P S ) Suponha que ( P = 0 0 ( ), T = 0 0 ) e S = (1). Ou seja, M = a c 0 b d 0 0 0 1. Aplicando a transformação acima em um ponto no innito (x, y, 0), temos a c 0 b d 0 0 0 1 x y 0 = ax + cy by + dy Portanto, o resultado da trasformação é também um ponto no innito, indicando assim que a reta do innito se mantém invariante. Tomando agora um ponto am (x, y, 1) do plano projetivo. Temos a c 0 b d 0 0 0 1 x y 1 = 0 ax + cy by + dy Logo, o ponto resultante também é um ponto am. Assim, o plano am que representa o plano projetivo também se mantém invariante. É importante observar que ( a b c d ) ( x y ) = ( 1 ax + cy by + dy O que mostra que a transformação projetiva constitui uma transformação linear do plano euclidiano. Portanto, o grupo das transformações projetivas contém o grupo das transformações lineares do plano euclidiano. )...

2.2. TRANSFORMAÇÕES PROJETIVAS 9 Tomemos agora A = ( 1 0 0 1 ), P = ( 0 0 ) e S = (1) e o ponto (x, y, 1). Dessa forma, temos 1 0 t 1 0 1 t 2 0 0 1 x y 1 = x + t 1 y + t 2 1 que constitui uma translação. Por último, analisemos o que acontece a seguir: 1 0 0 0 1 0 p 1 p 2 1 x y 1 = x y p 1 x + p 2 y + 1. Se p 1 0 e p 2 0, equação p 1 x + p 2 y + 1 = 0 possui uma innidade de soluções, isso mostra que pontos ans são levados em pontos do innito do espaço projetivo. Tomando-se um ponto ideal (x, y, 0) obtem-se M(x, y, 0) = (x, y, p 1 x + p 2 y). Assim, tomando pontos (x, y) tal que p 1 x + p 2 y 0, podemos concluir que pontos do innito do plano projetivo são transformados em pontos do plano am. Transformar um ponto do innito em um ponto am P 0 equivale a fazer com que as retas paralelas, que se intersectam nesse ponto ideal, sejam transformadas em uma família de retas que incidem no ponto P 0 chamado de ponto de fuga da transformação (gura 2.5). Figura 2.5: Ponto no innito tranformado em ponto real Um ponto de fuga correspondendo a uma direção paralela a um dos eixos coordenados de R n é chamado de ponto de fuga principal. Como no plano am existem no máximo duas direções ortogonais, podem-se ter transformações projetivas com no máximo dois pontos

2.3. TRANSFORMAÇÃO ENTRE QUADRILÁTEROS 10 de fuga principais. Cada um desses pontos de fuga é a imagem do ponto do innito correspondente às direções (x, 0, 0) (0, y, 0). Figura 2.6: Transformação com dois pontos de fuga Na matriz de transformação projetiva M que acabamos de denir, p 1 e p 2 indicam a existência ou não de pontos de fuga. Se p 1 0 e p 2 = 0, tem-se apenas o ponto de fuga correspondente ao eixo-x; se o inverso ocorre, ou seja,p 1 = 0 e p 2 0, tem-se apenas o ponto de fuga correspondente ao eixo-y; se ambos p 1 e p 2 são não nulos temos dois pontos de fuga principais. A gura 2.6 mostra a transformação projetiva aplicada a um quadrilátero com dois pontos de fuga. 2.3 Transformação entre Quadriláteros Uma aplicação interessante da transformação projetiva é o estabelecimento de relações entre quadriláteros [4]. A matriz resultante dessa aplicação foi utilizada no método de edição de imagens descrito no capítulo 4 deste trabalho. Antes de chegarmos ao nosso objetivo nesta seção, consideremos a transformação projetiva T : RP 2 RP 2 denida pela matriz a b c d e f g h i. Aplicando T a um ponto z = (x, y, 1) do espaço euclidiano, temos a b c x T (x, y, 1) = d e f y = (ax + by + c, dx + ey + f, gx + hy + i). g h i 1 Se T (z) não é um ponto no innito, temos gx + hy + i 0, logo podemos escrever T (x, y) = T (x, y, 1) = ( ) ax + by + c dx + ey + f,. (2.1) gx + hy + i gx + hy + i

2.3. TRANSFORMAÇÃO ENTRE QUADRILÁTEROS 11 Partindo deste fato, construamos agora nossa transformação. Considerando dois quadriláteros do plano com vértices P k = (u k, v k ) e Q k = (x k, y k ), k = 0, 1, 2, 3. Para determinar a transformação projetiva T que satisfaz T (P k ) = Q k, devemos resolver a equação matricial T (u k, v k ) = (x k, y k ), k = 0, 1, 2, 3. Usando a equação 2.1 dada, com i = 1, podemos escrever x k = au k + bv k + c gu k + hv k + 1 u ka + v k b + c u k x k g v k x k h = x k ; y k = du k + ev k + f gu k + hv k + 1 u kd + v k e + f u k y k g v k y k h = y k. Fazendo variar k = 0, 1, 2, 3 na equação acima, obtemos um sistema linear com oito equações: u 0 v 0 1 0 0 0 u 0 x 0 v 0 x 0 a u 1 v 1 1 0 0 0 u 1 x 1 v 1 x 1 b u 2 v 2 1 0 0 0 u 2 x 2 v 2 x 2 c u 3 v 3 1 0 0 0 u 3 x 3 v 3 x 3 d 0 0 0 u 0 v 0 1 u 0 y 0 v 0 y 0 e = 0 0 0 u 1 v 1 1 u 1 y 1 v 1 y 1 f 0 0 0 u 2 v 2 1 u 2 y 2 v 2 y 2 g 0 0 0 u 3 v 3 1 u 3 y 3 v 3 y 3 h x 0 x 1 x 2 x 3 y 0 y 1 y 2 y 3 (2.2) A solução desse sistema é única e fornece os coecientes a, b, c, d, e, f, g, h da transformação projetiva desejada. A gura 2.7 ilustra tal transformação Figura 2.7: Ilustração da transformação entre os quadriláteros Q e P

2.4. TRANSFORMAÇÃO PERSPECTIVA 12 2.4 Transformação Perspectiva Antes de falarmos em calibração de câmera, é importante que o leitor esteja familiarizado com o conceito de transformação perspectiva. Esse tipo de transformação é utilizado para projetar pontos tridimensionais em planos bidimensionais. A maioria dos métodos utilizados para projetar dados grácos são voltados para mídias bidimensionais, por esse motivo, a projeção perspectiva é muito difundida, especialmente na computação gráca, engenharia e arquitetura [12]. Valendo lembrar também a capacidade que esse tipo de transformação tem de simular profundidade em uma cena, sendo utilizado para descrever modelos de câmeras fotográcas e o modelo de visão humana. Primeiramente, denamos um espaço com um sistema de coordenadas de origem no centro ótico O e que tenha um dos eixos perpendicular a um plano de projeção Π, situado a uma distância f de O conforme a gura abaixo. Figura 2.8: Determinação da projeção perspectiva. Tomando por base esse referencial, vemos que a reta que passa por O e por P = (X, Y, Z) é formada por todos os pontos da forma α(x, Y, Z), dentre os quais, o que tem a última coordenada igual à f está sobre o plano Π. Neste caso, α = f/z e as coordenadas do ponto no plano de projeção são dadas por x = fx/z e y = fy/z. Para simplicar, consideremos f = 1 e observemos alguns fatos importantes. O primeiro é que a transformação em questão, que recebe o nome de transformação perspectiva, não está denida para o raio de projeção formado pelos pontos tais que Z = 0, ou seja, que estão no plano paralelo a Π e que passam por O. Estes não intersectam o plano Π. O segundo ponto é saber o que ocorre com retas paralelas do espaço. Tomemos

2.4. TRANSFORMAÇÃO PERSPECTIVA 13 como exemplo as retas paralelas ao eixo Z que têm a forma {(X 0, Y 0, Z); Z R}. A projeção dos pontos pertencentes a essas retas no plano Π é dada por (X 0 /Z, Y 0 /Z) onde, obviamente, Z 0 pelo fato anterior. O conjunto de todos esses pontos formam uma reta que passa por (0, 0) com esse ponto excluído. Assim, na projeção perspectiva, retas que são paralelas no espaço são vistas como concorrentes. Isso ocorre pois, como pode ser visto, suas imagens formam um feixe de retas concorrentes passando pelo ponto (0, 0) que representa a imagem de um "ponto no innito" comum a todas essas retas. Figura 2.9: Interseção de retas paralelas no innito Figura 2.10: Retas são preservadas na projeção perspectiva O último fato importante a ser observado é que, apesar de preservar retas como visto na gura 2.10, na projeção perspectiva as dimensões relativas não são preservadas (2.11). Existem outros tipos interessantes de projeções grácas, todas elas com o objetivo de propiciar a visualização de dados tridimensionais em duas dimensões. Dentre estas podem ser citadas a projeção ortogonal, a projeção isométrica e a estereoscopia que cria a ilusão de profundidade em imagens [12].

2.4. TRANSFORMAÇÃO PERSPECTIVA 14 Figura 2.11: A projeção perspectiva não preserva dimensões

Capítulo 3 Modelo e Calibração de Câmera Neste capítulo descreveremos o modelo de câmera utilizado e algumas transformações simples que podem ser denidas entre sistemas de coordenadas cuja composição possibilita a transformação de câmera [4]. Também serão abordados aspectos importantes da calibração de câmera, que consiste no processo de determinar dados geométricos digitais e óticos da câmera, considerando-se conhecidos pares de pontos bidimensionais na imagem e seus respectivos pontos tridimensionais [7]. 3.1 Modelo de Câmera O modelo de câmera utilizado nesse trabalho, conhecido como modelo pinhole, é o mais simples, baseado numa caixa com um orifício muito pequeno, mas suciente para permitir que raios luminosos o atravessem, a interseção desses raios, emitidos ou reetidos pelos objetos da cena, com o fundo da caixa formam a imagem (gura 3.1). Figura 3.1: Câmera pinhole A imagem resultante é invertida, por esse motivo, em nossos estudos consideraremos a interseção desses raios com o plano situado a mesma distância do orifício, mas colocado à sua frente (3.2). O funcionamento geométrico da câmera que associa os pontos tridimensionais da cena com pontos bidimensionais no plano da imagem é o mesmo da projeção perspectiva explicitado nos parágrafos anteriores. Entrentanto, o funcionamento do modelo pinhole, 15

3.2. TRANSFORMAÇÕES DE CÂMERA 16 Figura 3.2: Câmera pinhole e a projeção perspectiva mesmo fornecendo uma boa aproximação em determinadas situações, não é el ao que acontece com câmeras fotográcas reais que se utilizam de lentes e orifícios maiores onde os raios luminosos incidem. O uso de lentes traz uma série de inconvenientes como distorções na forma e na nitidez da imagem provocadas pelas alterações de trajetória que os raios luminosos sofrem ao ultrapassá-las. Dentre essas distorções está a distorção radial que provoca curvatura em retas situadas na borda da imagem (gura 3.3). Figura 3.3: Distorção radial 3.2 Transformações de Câmera Baseado no modelo de câmera que acabamos de denir podemos descrever quatro sistemas de coordenadas e um grupo de transformações entre eles que possibilitarão o estabelecimento de uma correspondência entre pontos do espaço e a sua projeção no plano da imagem (gura 3.4). O Sistema de Coordenadas do Mundo (SCM) é um sistema de coordenadas tridimensionais, escolhido de modo a ser conveniente para descrição da cena. A gura 3.4 ilustra o SCM com origem no ponto O onde as coordenadas de um ponto P w são dadas por (x w, y w, z w ). O Sistema de Coordenadas da Câmera (SCC) consiste em um sistema de coordenadas com origem no centro óptico da câmera. Os eixos X e Y são escolhidos paralelos ao plano da imagem e o eixo Z é perpendicular a esse plano. Chamaremos de f a distância focal que é dada pela medida da distância entre o plano de projeção e o centro óptico, e representaremos por (x, y, z) as coordenadas do ponto P nesse sistema. Assim denido, tem-se Z = f como a equação do plano de projeção. O Sistema de Coordenadas da Imagem (SCI) é um sistema de coordenadas bidimensionais situado no plano da imagem. A origem desse sistema corresponde à projeção

3.2. TRANSFORMAÇÕES DE CÂMERA 17 Figura 3.4: Sistemas de coordenadas envolvidos na transformação perspectiva ortogonal do centro óptico no plano de projeção. Iremos denotar as coordenadas de um ponto nesse sistema por (x, y). Denotaremos por (X u, Y u ) as coordenadas de um ponto na imagem quando usamos uma câmera do tipo pinhole, isto é, sem as distorções da lente, e (X d, Y d ) as coordenadas do ponto com as distorções existentes. Por último, denimos o Sistema de Coordenadas em Pixels (SCP), também constituído de um sistema de coordenadas bidimensionais. As coordenadas de um ponto nesses sistema são expressas em pixels. Usualmente, toma-se como centro desse sistema o canto superior esquerdo da imagem. As coordenadas de um ponto nesse referencial serão expressas por (X f, Y f ). As transformações associadas a esses sistemas de modo a levar cada ponto do SCM ao seu coorrespondente no SCP serão detalhadas nas subseções a seguir. Inicialmente consideraremos o modelo de câmera pinhole para posteriormente tratarmos as distorções da câmera. 3.2.1 Mudança do SCM para o SCC Esta é a primeira etapa obtenção da posição correspondente a um ponto do espaço no plano da imagem. Para tanto, é suciente realizar uma mudança de coordenadas entre sistemas ortogonais (gura 3.5). Sejam T o vetor com coordenadas da origem do SCM e R a matriz cujas colunas r 1, r 2, r 3 sejam as coordenadas dos vetores i, j, k no sistema de coordenadas da câmera. Dado um ponto P w no SCM, suas coordenadas no SCC podem ser denidas da seguinte forma: p = (x, y, z) = T + x w r 1 + y w r 2 + z w r 3. (3.1)

3.2. TRANSFORMAÇÕES DE CÂMERA 18 Figura 3.5: Transformação do SCM para o SCC Reescrevendo a equação em forma matricial temos ou ainda, x y z = R x w y w z w + T p = RP w + T, (3.2) onde T = T x T y e R = r 1 r 2 r 3 r 4 r 5 r 6 T z r 7 r 8 r 9 Os parâmetros R e T denem a posição e orientação da câmera e correspondem aos seus parâmetros extrínsecos denidos na próxima seção. Vale salientar ainda que uma transformação de corpo rígido como a que acabamos de mostrar, denida entre dois sistemas de coordenadas cartesianas, é única se a transformação é denida como uma rotação 3D em torno de sua origem seguida de uma translação 3D. 3.2.2 Mudança do SCC para o SCI Essa é a segunda etapa que é constituída de uma projeção perspectiva que descreve o ponto com coordenadas do SCC em cordenadas da SCI, desconsiderando as distorções provocada pelas lentes da câmera. As coordenadas do resultado da projeção podem ser denidas como abaixo: X u = f x z e Y u = f y z. (3.3)

3.2. TRANSFORMAÇÕES DE CÂMERA 19 Figura 3.6: Transformação do SCC para o SCI Podemos, ainda, escrever a equação acima na forma matricial para obtermos: x X u f 0 0 0 Y u 0 f 0 0 y ( ) z = fx fy z 1 0 0 1 0 1 (3.4) A transformação projetiva que acabamos de descrever não é inversível. Cada ponto do espaço corresponde a um único ponto na imagem, entretanto um ponto da imagem corresponde a uma innidade de pontos do espaço. Isto signica que o ponto (x, y) da imagem é a projeção de todos os pontos do espaço SCC da forma λ(x, y, f), onde λ 0. 3.2.3 Distorção das Lentes Até o momento estavamos levando em consideração apenas câmeras do tipo pinhole. Apesar de ser suciente para muitas aplicações, esse modelo não leva em consideração o desvio dos raios luminosos causados pelas lentes, podendo levar a imperfeições não desejáveis. Entretanto, a modelagem exata do comportamento das lentes não se mostra viável devido à sua complexidade. Por esse motivo, o modelo comumente utilizado leva em consideração apenas as distorções radiais. A distorção radial, como sugere o nome, afeta todos os pontos da imagem que estão situados a uma mesma distância do centro óptico no plano da imagem. Devido a esta distorção, o ponto p = (x, y, z) que, na etapa anterior, foi projetado no ponto P d = (X u, Y u, 1), correspondente ao ponto sem distorção, será projetado no ponto P d = (X d, Y d, 1). A relação entre os pontos P d e P u acontece da seguinte maneira: P u = P d + D, (3.5)

3.2. TRANSFORMAÇÕES DE CÂMERA 20 com D = (D x, D y ), onde D x = X d (k 1 r 2 + k 2 r 4 ), D y = X d (k 1 r 2 + k 2 r 4 ), r = Xd 2 + Y d 2. Os coecientes k 1 e k 2 são chamados de coecientes de distorção radial. Em geral, considera-se apenas o coeciente k 1, a menos que o ângulo de visão da lente seja muito grande. 3.2.4 Mudança do SCI para o SCP Em uma câmera digital, quando o raio luminoso atinge o plano de formação da imagem, ele é registrado por sensores, os quais geralmente estão dispostos segundo uma matriz retangular. Nem sempre as linhas e colunas desta matriz estão uniformemente alinhadas, devido ás imperfeições em sua construção, provocando espaçamentos diferentes entre linhas e colunas. Além disso, pode ocorrer de as linhas verticais e horizontais não estarem dispostas ortogonalmente. Levando em consideração estas pequenas distorções geométricas, a transformação que descreve um ponto no SCI para o SCP, pode ser descrita como abaixo: X f Y f 1 = s x τ C x 0 s y C y 0 0 1 X u Y u 1 (3.6) onde s x e s y correspondem ao número de pixels por unidade de comprimento nas direções horizontal e vertical, respectivamente; τ é dada pela tangente do ângulo que as colunas da matriz de pixels formam com a perpendicular às linhas; C x e C y representam as coordenadas da projeção ortogonal do centro óptico no plano de projeção. 3.2.5 Composição das Transformações A transformação que associa um ponto do sistema de coordenadas do mundo ao sistema de coordenadas em pixels pode ser representado fazendo uma composição das transformações descritas nas seções anteriores. Representando as coordenadas homogêneas do ponto no SCM como [P ] e da imagem no SCP como [p], temos: X f s x τ C x f 0 0 0 ( ) x w R T Y f 0 s y C y 0 f 0 0 y w 0 1 1 0 0 1 0 0 1 0 z w

3.3. CALIBRAÇÃO DE CÂMERA 21 [p] fs x fτ C x [ 0 fs y C y 0 0 1 R T ] [P ]. (3.7) fs x fτ C x é chamada de matriz de calibração e reúne os parâ- A matriz k = 0 fs y C y 0 0 1 metros intrínsecos da câmera, equanto [R T ] representa os extrínsecos. Tais parâmetros são descritos na seção seguinte. A transformação dada pela equação (3.7) não é inversível. De fato, p = K 1 [p] [R T ][P ]. O ponto p = (x, y, 1) corresponde à imagem do ponto P tomando a matriz de calibração como a identidade. Os pontos que possuem p como projeção seriam da forma λ(x, y, 1), onde λ R. As coordenadas do ponto p são conhecidas como coordenadas normalizadas do ponto p na imagem. 3.3 Calibração de Câmera Voltando nossa atenção aos tópicos discutidos anteriormente, percebe-se que a calibração de câmera [9] tem por objetivo o oposto do que foi estudado na transformação projetiva, estabelecer uma transformação que recupere, a partir de dados 2D de fotograas, informações tridimensionais que nos darão a posição e orientação da câmera que fotografou a cena. Os dados resultantes da calibração fazem parte dos parâmetros da câmera que são classicados como extrínsecos e intrínsecos. O primeiro grupo de parâmetros fornece informações de posição e orientação da câmera em relação ao sistema de coordenadas do mundo, também chamado de sistema de coordenadas global. O segundo grupo, o dos parâmetros intrínsecos, constituem as características ópticas e geométricas internas à câmera. Exemplos desses últimos são a distância focal e a distorção das lentes. A posição e orientação da câmera são denidas por uma tranformação am formada por uma rotação R(x) e uma translação T(x). A rotação R(x) indica a orientação do sistema referencial da câmera {O C, X, Y, Z} em relação ao referencial global do mundo {O M, U, V, W}. A translação indica a posição da câmera (origem O C do sistema da câmera) em relação à origem O M do sistema do mundo. A matriz que representa esta transformação am permite que as coordenadas de um ponto do espaço sejam convertidas do sistema do mundo para o sistema da câmera. A distância focal f indica o posicionamento do plano de projeção ao longo da direção para onde a câmera está apontando (direção do eixo W da câmera). Este plano de projeção

3.3. CALIBRAÇÃO DE CÂMERA 22 Figura 3.7: Esquema ilustrando os sistemas da câmera e do mundo é paralelo aos outros dois eixos (U e V ) da câmera. A projeção dos objetos 3D é feita sobre o plano de projeção. Em geral os dados de entrada necessários para uma calibração são um conjunto de pontos, no sistema de coordenadas da câmera, e as respectivas projeções desses pontos no sistema da imagem adquirida pela câmera [7]. A gura 3.8 mostra um processo de calibração muito comum: uma câmera fotografa um padrão xadrez do mundo real cujas dimensões são conhecidas e, portanto, é possível estabelecer um sitema de coordenadas do mundo no próprio padrão onde se conheça precisamente as coordenadas de cada vértice do reticulado que o padrão xadrez dene. Assim ca fácil fazer a correspondência entre as coordenadas (x,y,0) de um ponto 3D do padrão xadrez e seu piexel correspondente (i, j) situado no sistema de coordenadas da imagem fotografada. Este conjunto de pontos correspondentes (x,y,0) (i, j) é então utilizado como entrada na solução de um problema inverso que resulta na matriz de calibração da câmera. Alguns métodos de calibração como [11] [13] utilizam esquemas semelhantes a este. Figura 3.8: Correspondência entre pontos 3D e 2D para calibração de câmera utilizando padrão xadrez

3.3. CALIBRAÇÃO DE CÂMERA 23 Existem métodos, como o aqui descrito, que em vez de usarem uma correspondência direta entre as coordenadas dos pontos 3D do mundo e os pixels da imagem, utilizam apenas uma relação entre as coordenadas desses pontos, como veremos a seguir. Por simplicidade, o método que iremos descrever não trata a distorção radial das lentes da câmera e é baseado nos trabalhos [10], [1] e é o mesmo de [2]. Os parâmetros da câmera são calculados a partir de uma única imagem contendo objetos cujos lados sejam paralelos aos três eixos principais do sistema de coordenadas do mundo. As imagens arquitetônicas, em geral, contêm prédios com essas características. Assim, dada uma imagem, denimos um sistema de coordenadas U, V e W conforme mostra a gura 3.9 esquerda. Por convenção, o plano da imagem é paralelo ao plano UV do sistema da câmera, conforme mostra a gura. Como o único dado de entrada é uma imagem, não temos informação de medida dos objetos da imagem. Portanto, as coordenadas dos pontos neste sistema são expressas em pixels. Figura 3.9: Coordenadas da imagem e pontos de fuga. Como a imagem é o único dado de entrada, não conhecemos nenhuma correspondência entre os pontos da imagem e os pontos do objeto no mundo. Porém, se considerarmos os requisitos requeridos dos objetos presentes na imagem, podemos estabelecer relações entre os pontos da imagem e assim temos condições de calcular a posição e orientação da câmera em relação ao referencial do mundo. Levando em conta que os objetos projetados na imagem têm lados paralelos no sistema do mundo (como é o caso dos prédios arquitetônicos padrões) e que a projeção de retas paralelas se encontra nos pontos de fuga da imagem, podemos encontrar os pontos F x, F y e F z. Estes três pontos de fuga representam a projeção dos eixos ortogonais do sistema de coordenadas do mundo no qual o objeto se encontra. A gura 3.10 à direita mostra esses pontos de fuga. É importante destacar que os três pontos de fuga podem ser especicados diretamente na imagem a partir de pares de linhas paralelas em cada uma das direções principais. Agora, a partir de F x, F y e F z, podemos encontrar a posição da câmera (origem do sistema da câmera) da seguinte forma: estes pontos determinam um triângulo cujo ortocentro corresponde à projeção H do centro ótico C da câmera (gura 3.10). O ponto H pode ser calculado pela expressão [1]:

3.3. CALIBRAÇÃO DE CÂMERA 24 H = (cotθ y cotθ z )F x + (cotθ x cotθ z )F y + (cotθ x cotθ y )F z Figura 3.10: Pontos de fuga e centro ótico Calculada a projeção H = (u c, v c,0), precisamos encontrar o centro ótico C = (u c, v c, w c ), ou seja, temos que encontrar o valor de w c. Para tal vamos admitir duas condições: (1) que esta projeção do centro ótico seja perpendicular à imagem e que os (2) eixos do sistema do mundo sejam ortogonais entre si, onde o sistema do mundo tem origem em C e base de vetores X = CF x, Y = CF y e Z = CF z. Para satisfazer a estas condições, conjunto C, F x, F y e F z contém os vértices de uma pirâmide de forma que CF x, CF y e CF z são mutuamente ortogonais entre sí (gura 3.10). Assim calculamos w c como: wc 2 F x F y 2 HF x 2 HF y 2 = 2 É importante destacar que, neste método de calibração, o ponto C tanto é a origem do sistema de coordenadas do mundo, quanto o centro ótico da câmera, ou seja, é também a origem do sistema da câmera. A coordenada w c do centro ótico C é, portanto, a distância focal da câmera. Como a posição dos sistemas do mundo e da câmera é a mesma, então a transformação am se restringe a uma tranfosmação linear, já que não há translação. Já os vetores U, V e W indicam a rotação dos vetores CF x, CF y e CF z, ou seja, são a orientação da câmera em relação as mundo. Outra observação importante é a forma como os eixos do mundo X, Y e Z foram denidos: eles são paralelos aos lados do objeto do mundo, conforme mostra a gura 3.11. Este fato será de grande importância para a operação de edição que será descrita mais adiante. Agora que já foram denidas a posição e orientação do sistema da câmera em relação ao mundo, é possível determinar a matriz de calibração da câmera. A equação que realiza a projeção de um ponto com coordenadas (X,Y,Z ) do mundo é obtida pelas matrizes P e M, onde M converte as coordenadas do sistema do mundo para o da câmera, e P projeta do sistema da câmera para o da imagem:

3.3. CALIBRAÇÃO DE CÂMERA 25 Figura 3.11: Esquema geral da recuperação dos pontos tridimensionais equivalentes aos pontos da imagem P = w c 0 u c 0 w c v c 0 0 1 M = Xu Y u Zu Xv Y v Zv Xw Y w Zw tu tv t = w c 0 u c 0 w c v c 0 0 1 Xu Y u Zu Xv Y v Zv Xw Y w Zw X Y Z (3.8) (Xu,Xv,Xw), (Yu,Yv,Yw), (Zu,Zv,Zw) são respectivamente as coordenadas de CF x, CF y e CF z.

Capítulo 4 Edição de Imagens Neste capítulo descreveremos como é feita e inserção de novas imagens em determinados planos da fotograa. Nosso método de edição de imagens foi baseado em [1] e permite, a partir da fotograa de elementos arquitetônicos, criar simulações de alterações visuais em ambientes. O resultado desse estudo é uma ferramenta que possibilita a análise das interferências que novos elementos provocarão em determinadas paisagens. Um modelo de edição de fotograas recente e interessante é descrito em [8]. A exemplo do nosso trabalho, uma única imagem é utilizada como entrada para o sistema e, previamente, o usuário seleciona objetos na cena preparando a fotograa para a edição. No nosso caso, apenas planos são selecionados. Colhidas essas informaçoes iniciais, a imagem é dividida em camadas que guardam informação de cor e profundidade dos elementos contidos em cada uma delas. Por m, são aplicadas na fotograa uma série de operações que permite alterações nas cores e na iluminação da cena, assim como modicar o ponto de vista da câmera. Uma diferença importante do método aqui descrito em relação ao trabalho que acabamos de mencionar está na etapa de calibração da câmera. No modelo desenvolvido por eles, informações como posição e orientação da câmera são fornecidos pelo usuário, assim como a distância focal que pode ser arbitrada. No nosso trabalho, tais parâmetros são calculados a partir de segmentos de retas posicionados na imagem, explorando o fato de que os objetos arquitetônicos contidos nela possuem três direções bem denidas. 4.1 Etapas da Edição Os passos principais para o processo de edição de fotograas são mencionados no esquema da gura 4.1. Dentre estes itens, apenas a edição de fotograas não foi detalhada, faremos isso nas próximas seções. As etapas do processo de edição são as seguintes: escolha da fotograa - no nosso método são consideradas apenas imagens de objetos 26

4.2. O MÉTODO DE EDIÇÃO 27 com características arquitetônicas (i.e. prédios) que possuem três direções principais bem denidas; calibração da câmera - este é o momento em que são determinados os parâmetros da câmera, três deles são particurlamente importantes para o nosso método, sua posição, orientação e distância focal; edição de fotograas - calibrada a câmera, é possível recuperar informações tridimensionais dos objetos contidos na fotograa. Essas medidas são dadas em pixels pois apenas a fotograa do objeto não é sucente para obtermos suas dimensões reais; resultado - aplicadas as operações de edição, obtem-se a imagem devidadmente modicada. Figura 4.1: Esquema geral do trabalho 4.2 O Método de Edição Descreveremos nesta seção as etapas do processo de edição de fotograas o dividindo em diversos passos. Em um primeiro momento é a escolhida a fotograa que, no nosso caso, contém objetos arquitetônicos com três direções principais bem denidas. Partindo deste fato, é simples a tarefa do usuário de especicar segmentos de reta na imagem paralelos a estas direções (gura 4.2), fazemos uso desses segmentos para obter a equação de projeção abaixo que estabelece uma correspondência entre os pontos contidos na imagem e suas coordenadas no sistema do mundo. Esta etapa constitui a calibração da câmera.

4.2. O MÉTODO DE EDIÇÃO 28 tu tv t = w c 0 u c 0 w c v c 0 0 1 Xu Y u Zu Xv Y v Zv Xw Y w Zw X Y Z (4.1) Figura 4.2: Posicionamento dos segmentos para calibração Seguidos esses passos, é possível projetar paralelogramos na fotograa. Cada paralelogramo, que chamaremos de face, corresponde à projeção de um retângulo paralelo a dois eixos (X e Y, por exemplo) pertencentes ao sistema de coordenadas do mundo. A gura 4.3 traz uma ilustração do processo de seleção da face para edição. Figura 4.3: Seleção da face para edição Em geral, o trecho da imagem a ser editado corresponde a uma face retangular de um objeto tridimensional que foi fotografado. Assim sendo, ao se especicar um retângulo na imagem, pode haver uma innidade de valores para a profundidade Z onde a face do objeto porventura se encontre. Como não conhecemos as reais dimensões do objeto original, essa profundidade é tomada de maneira arbitrária em nossos cálculos, pois desejamos

4.2. O MÉTODO DE EDIÇÃO 29 manter apenas as proporções e não recuperar com exatidão os valores das dimensões do objeto. Sabendo disso, podemos dar continuidade ao nosso método encontrando os pontos tridimensionais P 1, P 2, Q 1, Q 2 correspondentes aos vértices p 1, p 2, q 1, q 2 da face selecionada (gura 4.4). Para nossos cálculos tomamos (u c, v c, w c ), que são as coordenadas do centro de projeção da câmera, e F x = (X u, X v, X w ), Fy = (Y u, Y v, Y w ), F z = (Z u, Z v, Z w ) os vetores que têm origem no centro de projeção e extremidades nos pontos de fuga calculados na etapa de calibração. Vamos tomar como exemplo um retângulo paralelo aos eixos X e Y, os outros casos são análogos. Sejam p 1 = (u 1, v 1 ), p 2 = (u 2, v 2 ), q 1 = (u 3, v 3 ), q 2 = (u 4, v 4 ) as coordenadas desse retângulo no sistema de coordenadas da imagem, obtemos os pontos correspondentes a estes no sistema da câmera através das seguintes equações: ( ) u P 1 = 1 u c w c, v 1 v c w c, 1 Q 1 = P 1 + tf ( x = W Q 2 = P 1 + sf ( y = W P 2 = P 1 + t F x + s F y ) w c, 1 ) u 4 u c w c, v 4 v c w c, 1 u 3 u c w c, v 3 v c As três primeiras expressões fornecem um sistema de equações que permite encontrar as constantes s e t e dessa maneira a correspondência está estabelecida. Como existe uma innidade de valores no espaço projetivo para a profundidade W onde o ponto P 1 pode ter ido parar, tomamos arbitrariamente W = 1 nesse primeiro momento. Para facilitar os cálculos de correspondência com a textura, projetamos os pontos encontrados em um retângulo 2D com um dos vértices na origem (0, 0). Assim, obtemos: P 1 = (0, 0) P 2 = ( P 1 Q 2, P 1 Q 1 ) Q 1 = (0, P 1 Q 1 ) Q 2 = ( P 1 Q 2, 0) Feito isso, mapeamos os pontos restantes da face nesse retângulo. Para tanto, primeiro encontramos as coordenadas do ponto p = (u, v) no espaço da câmera através da seguite expressão: P = P 1 + tf x + sf ( ) u u y = W c w c, v vc w c, 1 A expressão acima nos fornece um sistema com três equações e três icógnitas. Resolvido esse sistema temos, além das coordenadas do ponto P, os valores das constantes t e

4.2. O MÉTODO DE EDIÇÃO 30 s que utilizaremos para mapear o ponto P no retângulo P 1 P 2 Q 1 Q 2 da seguinte forma: P = tp 1 Q 2 + sp 1 Q 1 De forma totalmente análoga, são encontradas as projeções de todos os pontos da face em P 1 P 2 Q 1 Q 2. A gura (4.4) ilustra todo o processo até o presente momento. Esta etapa corresponde a encontrar a transformação T que transforma pontos bidimensionais da imagem em pontos tridimensionais no espaço da câmera e posteriormente os mapeia no retângulo P 1 P 2 Q 1 Q 2 através de uma transformação que chamaremos de M. Na gura, os eixos X, Y e Z representam o sistema de coordenadas do mundo com origem igual ao sistema de coordenadas da câmera representado por U, V e W. Figura 4.4: Esquema ilustrando a transformação T Uma vez conhecido o retângulo do espaço 2D, é calculado, através de uma transformação am que chamaremos de A, um mapeamento 2D que associa pontos do retângulo aos pontos de uma imagem com a textura (no nosso caso, imagens publicitárias). Assim, sejam w e h, respectivamente, largura e altura da textura e (X, Y ) um ponto no retângulo P 1 P 2 Q 1 Q 2, suas coordenadas (u T, v T ) na textura são dadas pór: u T = wx P 1 Q 2 e v T = hy P 1 Q 1. Após este passo teremos conseguido estabelecer uma correspondência entre pontos da face selecionada e os pontos da textura. Dessa maneira, o mapeamento da textura na face

4.3. RESULTADOS 31 do objeto está estabelecida. A gura 4.5 mostra a idéia geral do processo de edição discutido aqui. Figura 4.5: Esquema ilustrando a edição 4.3 Resultados A seguir, alguns resultados obtidos com a ferramenta resultante deste trabalho. A gura 4.6 traz o resultado da ação do usuário durante o processo de calibração de câmera. Os segmentos de reta vermelho representam o eixo X, o segmentos verdes o eixo Y, e os azuis o Z. Como vimos, esses feixes de retas paralelos se intersectam no innito num ponto chamado de ponto de fuga. Esses pontos são utlizados no processo de calibração. O alvo que aparece na gura representa a projeção do centro ótico da câmera na imagem e correspondem ao ortocentro do triângulo formado pelos pontos de fuga. A gura 4.7 mostra, inicialmente, a imagem de um prédio com uma face selecionada e uma textura que será inserida em sua fachada. O cálculo para a projeção da textura na fachada do edfício equivale à obtenção transformação projetiva T que acabamos de descrever. O mapeamento entre cada ponto da face selecionada e as coordenadas de textura pode ser facilmente obtido através de uma transformação A, conforme mostra a gura 4.5. Usando a transformação inversa T 1 podemos mapear estas coordenadas de textura de volta ao plano da imagem. A gura 4.7 traz mais um resultado semelhante.

4.3. RESULTADOS 32 Figura 4.6: Resultado da Calibração Figura 4.7: Resultado da aplicação de um poster à fachada de um prédio.

4.3. RESULTADOS 33 Figura 4.8: Aplicação de uma imagem à fachada de um hotel

Capítulo 5 Conclusões e Trabalhos Futuros Este trabalho denvolveu um sistema de edição de fotograas que permite a inserção de novos elementos em determinados planos da cena capturada. Para tanto, foi implementada uma técnica de calibração de câmera baseada na especicação de pontos de fuga na fotograa. A calibração permite calcular a transformação perspectiva que as três direções principais do mundo sofrem na geraçào da imagem. Assim, é possível recuperar informações tridimensionais que permite a edição de planos do objeto. Como trabalhos futuros temos: Estudar e desenvolver ferramentas de interface mais interativas para ajudar no processo de edição; Aplicar retoque automático de alguns elementos da imagem após a inserção de elementos na cena; Desenvolver ltros que permitam separar informações de textura e iluminação para obter resultados mais realísticos; Implementar novas operações, como cálculos e estimativas de medidas reais dos objetos presentes nas fotograas; Análise qualitativa e comparação dos resultados obtidos com outros métodos. 34

Referências Bibliográcas [1] Alvarez, B. (2001), Edição tridimensional de fotograas arquitetônicas, Master's thesis, Pontifícea Universidade Católica do Rio de Janeiro. [2] Cabral, A. N. T., Lira, P. H. M. & Peixoto, A. (2007), `Reconstrução de modelos 3d e edição de imagens a partir de fotograas arquitetôncias', Workshop of Undergraduate Work - SIBGRAPI 2007 pp. 1 4. [3] de Rezende, P. J. & Stol, J. (1994), Fundamentos de Geometria Computacional, Departamento de Ciência da Computação - UNICAMP. [4] Gomes, J. & Velho, L. (2003), Fundamentos da Computação Gráca, Associação Instituto Nacional de Matemática Pura e Aplicada. [5] Harley, R. I. & Zisserman, A. (2204), Multiple View Geometry in Computer Vision, ISBN: 0521540518, 2 ed., Cambrige University Press. [6] Lima, E. L. (2008), Curso de Análise, Vol. 2, Associação Instituto Nacional de Matemática Pura e Aplicada. [7] Marques, C. C. S. C. (2007), Um sistema de calibração de câmera, Master's thesis, Universidade Federal de Alagoas. [8] Oh, B. M., Chen, M., Dorsey, J. & Durand, F. (2001), `Image-based modeling and photo editing', ACM SIGGRAPH pp. 433 442. [9] Peixoto, A., Montenegro, A. A., Sá, A. & Soares, E. (2005), Fotograa 3D, Associação Instituto Nacional de Matemática Pura e Aplicada. [10] Photo3D (1999), `Photo 3d'. URL http://www.photo3d.com. [11] Tsai, R. Y. (1987), `A versatile camera calibration technique for high-accuracy 3d machine vision metrology using o-the-shelf tv cameras and lenses', IEEE Journal of Robotics and Automation RA-3(4), 323344. [12] Wikipedia (2008), `3d projection'. URL http://en.wikipedia.org/wiki/3d_ projection. 35