pablo c.elias e thiago bastos, dezembro de 2006 reconstrução de ruínas em tempo real

13
Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real

Upload: internet

Post on 17-Apr-2015

109 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real

Pablo C.Elias e Thiago Bastos, Dezembro de 2006

Reconstrução de Ruínas em Tempo Real

Page 2: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real

Problema: Reconstrução de Ruínas

- Imagens do projeto Archeoguide

Page 3: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real

Abordagem

• Calibração de câmera através de rastreamento de pontos detectados na ruína.

• Pré-requisitos:– Definição do modelo da ruína (pontos 3D);– Rastreamento dos pontos do modelo na

imagem da câmera;

Page 4: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real

Definição da Ruína

• Um modelo de ruína é definido por:– Modelo virtual da ruína;– Modelo virtual da ruína reconstruída;– Amostras de pontos 3D da ruína;

• Uma visão da ruína é definida por:– Um conjunto de pontos 2D associados a

pontos 3D do modelo da ruína.

Page 5: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real

Processo de Reconstrução

• Passo 1: posicionar a câmera próxima a uma das “visões” definidas para a ruína.

• Passo 2: detectar pontos na imagem da câmera e associar com os pontos de uma visão.

• Passo 3: detectar e rastrear os pontos a cada quadro.

• Passo 4: calibrar a câmera usando os pontos 2D rastreados e os pontos 3D do modelo.

• Passo 5: reconstruir a ruína.

Page 6: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real

Workflow

Posicionamento Inicial da Câmera

Reconstrução da Ruína

Calibração de Câmera

Mapeamento de Pontos

Acompanhamento de Pontos

Escolha de uma “visão” para ser usada

Page 7: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real

Detecção de Pontos

• FAST Corner Detector:– Baseado em aprendizado de máquina;– Extremamente rápido (30fps, 50% CPU);– Não rastreia pontos (mas a detecção é

razoavelmente estável).

• Kanade-Lucas-Tomasi Feature Tracker:– Detecta pontos através do gradiente da luminância;– Rastreia pontos pela minimização da diferença entre

janelas usando Newton-Rhapson.– Bem mais lento (10fps);

• Também é possível entrar com os pontos com o mouse.

Page 8: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real

Acompanhamento de Pontos

• Busca pelos pontos detectados que melhor representem a posição de um ponto sendo rastreado.

• Método simples:– Descarte dos pontos detectados que estão muito

longe do ponto sendo rastreado.– Classificação da confiabilidade do ponto:

• Grandes ocilações resultam em redução da qualidade;• Estabilidade do ponto resulta em aumento da qualidade;• Ponto é descartado caso tenha qualidade reduzida abaixo

de um certo limite;– Possível evolução: usar os pontos com boa

confiabilidade para estimar a posição dos pontos com baixa confiabilidade.

Page 9: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real

Calibração de Câmera

• Primeira versão: Tsai3D– Precisava de muitos pontos para ficar bom.

• Segunda versão: método do Juiz Virtual– Com 8 pontos já apresenta resultados bons.

Page 10: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real

Reconstrução da Ruína

• Oclusão entre a ruína real e o modelo virtual utilizando depth-buffer:

1. Desabilita color buffer;

2. Desenha ruína;

3. Habilita color buffer;

4. Desenha a ruína reconstruída com depth-test ligado;

Page 11: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real

Resultados

Page 12: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real

Resultados

Page 13: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real

Trabalhos Futuros

• Utilizar linhas para explorar assertivas geométricas de paralelismo, direção e pontos de fuga.

• Ampliar campo de ação fazendo transição entre “visões” da ruína.

• Testar filtro de Kalman…

• Pintar a ruína :-)