Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real.
Transcript of Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real.
![Page 1: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real.](https://reader036.fdocumentos.tips/reader036/viewer/2022062418/552fc10b497959413d8c2623/html5/thumbnails/1.jpg)
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.](https://reader036.fdocumentos.tips/reader036/viewer/2022062418/552fc10b497959413d8c2623/html5/thumbnails/2.jpg)
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.](https://reader036.fdocumentos.tips/reader036/viewer/2022062418/552fc10b497959413d8c2623/html5/thumbnails/3.jpg)
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.](https://reader036.fdocumentos.tips/reader036/viewer/2022062418/552fc10b497959413d8c2623/html5/thumbnails/4.jpg)
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.](https://reader036.fdocumentos.tips/reader036/viewer/2022062418/552fc10b497959413d8c2623/html5/thumbnails/5.jpg)
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.](https://reader036.fdocumentos.tips/reader036/viewer/2022062418/552fc10b497959413d8c2623/html5/thumbnails/6.jpg)
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.](https://reader036.fdocumentos.tips/reader036/viewer/2022062418/552fc10b497959413d8c2623/html5/thumbnails/7.jpg)
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.](https://reader036.fdocumentos.tips/reader036/viewer/2022062418/552fc10b497959413d8c2623/html5/thumbnails/8.jpg)
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.](https://reader036.fdocumentos.tips/reader036/viewer/2022062418/552fc10b497959413d8c2623/html5/thumbnails/9.jpg)
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.](https://reader036.fdocumentos.tips/reader036/viewer/2022062418/552fc10b497959413d8c2623/html5/thumbnails/10.jpg)
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.](https://reader036.fdocumentos.tips/reader036/viewer/2022062418/552fc10b497959413d8c2623/html5/thumbnails/11.jpg)
Resultados
![Page 12: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real.](https://reader036.fdocumentos.tips/reader036/viewer/2022062418/552fc10b497959413d8c2623/html5/thumbnails/12.jpg)
Resultados
![Page 13: Pablo C.Elias e Thiago Bastos, Dezembro de 2006 Reconstrução de Ruínas em Tempo Real.](https://reader036.fdocumentos.tips/reader036/viewer/2022062418/552fc10b497959413d8c2623/html5/thumbnails/13.jpg)
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 :-)