Análise de técnicas de reconstrução tridimensionais de objetos em tempo real

Análise de técnicas de reconstrução tridimensionais de objetos em tempo real

(Parte 1 de 2)

Congresso Norte Nordeste de Pesquisa e Inovação, 2013 1

F. A. VAZ1, J. L. S. SILVA2, M. C. MELO3, C. G. ARAUJO4 ¹ Centro de Informática – Universidade Federal de Pernambuco (CIn-UFPE)

¹ ² ³ Departamento de Engenharia Elétrica – Instituto Federal da Bahia (DEE-IFBA)

4 Departamento de Informática – Faculdade Sete de Setembro (DTI-FASETE)

E-mail:¹fav2@cin.ufpe.br, ²jlucas.silva@ifba.edu.br, ³michellemelo.c@ifba.edu.br e 4 cmilaaraujo@gmail.com

Com bastante destaque na indústria e academia, a reconstrução automática de modelos tridimensionais (3D), a partir de imagens bidimensionais (modelagem baseada em imagens) consiste na criação de uma superfície, representada por uma malha poligonal obtida através da interpolação de pontos amostrados, procurando capturar de forma mais fiel possível às informações contidas nas imagens. A construção dessas malhas poligonais tem despertado muito interesse nas últimas décadas da comunidade acadêmica envolvida, em parte, o interesse é devido ao seu amplo campo de aplicação. Logo, o presente trabalho tem como propósito realizar uma análise na literatura de técnicas de reconstrução tridimensionais e, posteriormente, realizar testes e verificar a possibilidade de reconstrução tridimensional observando elementos importantes. Neste trabalho, foi realizada uma análise com mais atenção do Kinect Fusion, onde temos evidências que indicam que a reconstrução do modelo está coerente com o real, porém a qualidade do resultado está diretamente relacionada com o hardware.

PALAVRAS-CHAVE: Análise de Técnicas; Reconstrução 3D; Kinect Fusion.

Rather prominently in industry and academia, the automatic reconstruction of three-dimensional models (3D), from two-dimensional images (imagebased modeling) is the creation of a surface represented by a polygonal mesh obtained by interpolation of the sampled points, trying to capture accurately as possible the information contained in the images. The construction of polygonal meshes has aroused much interest in the last decades of the academic community involved, the interest is due to its wide field of application. Therefore, this study aims to conduct a literature review of reconstruction techniques in three dimensions and then perform tests and verify the possibility of three-dimensional reconstruction noting important elements. In this work, we performed an analysis with more attention Kinect Fusion, where we have evidence to indicate that the reconstruction of the model is consistent with reality, but the quality of the result directly related to the hardware.

KEYWORDS: Analysis Techniques; 3D reconstruction; Kinect Fusion.

Congresso Norte Nordeste de Pesquisa e Inovação, 2013 2

No decorrer do desenvolvimento da humanidade, o homem sempre procurou por formas mais claras de expressão. A pintura em cavernas na pré-história era uma forma de relatar acontecimentos decorrentes da caça e do cotidiano da vida daquela sociedade. Logo, em busca de melhoria na comunicação e com o advento da comunicação usuário-computador, avançou-se no campo da Interação Homem-Máquina (IHM) com interfaces que podem oferecer a possibilidade de representação da informação de um modo realista.

Neste ensejo, atualmente, a Realidade Aumentada (RA) mostra-se como um ramo de pesquisa na vanguarda da Ciência da Computação (HALLER, 2007). Associando conhecimentos de áreas afins como Computação Gráfica, Processamento de Imagens e Visão Computacional, a RA se propõe a realizar a inserção de elementos virtuais em cenas reais em tempo real, como forma de expandir as possibilidades e experiências dos usuários (ZHOU, 2008).

Com bastante destaque na indústria e academia, a reconstrução automática de modelos tridimensionais (3D), a partir de imagens bidimensionais (modelagem baseada em imagens) consiste na criação de uma superfície, representada por uma malha poligonal obtida através da interpolação de pontos amostrados, procurando capturar de forma mais fiel possível às informações contidas nas imagens. A construção dessas malhas poligonais tem despertado muito interesse nas últimas décadas da comunidade acadêmica envolvida, em parte, o interesse é devido ao seu amplo campo de aplicação.

Em vários cenários de aplicação de RA, a modelagem baseada em imagens é mandatória ou desejável, principalmente quanto o objetivo é a reconstrução automática do modelo 3D. Um exemplo de tal aplicação é um sistema de RA para representação de artefatos arqueológicos (VAZ, 2011). Onde usar técnicas de modelagem tradicionais apresenta alguns problemas: Uma das limitações da abordagem atual é a dificuldade de lidar com concavidades profundas para ser representada na reconstrução gráfica (NISTÉR, 2001). Como os alguns sítios arqueológicos são amplos, a construção das cenas tridimensionais é um processo complexo e demorado, algumas vezes não representando fielmente os detalhes dos artefatos reais; A reconstrução plena do modelo pode falhar devido a oclusões parciais; O método é vulnerável a erros cometidos na etapa de identificação (VAZ, 2011); Outra questão é que a aquisição de forma 3D a partir de imagens bidimensionais (2D), requer uma transformação do espaço bidimensional para o espaço tridimensional. A dificuldade básica nesta transformação consiste no fato da imagem 2D ser uma projeção de uma cena 3D e a transformação geométrica 2D→3D ser indeterminada. Logo, as estruturas tridimensionais perdidas na aquisição dos dados podem ser parcialmente ou totalmente desprezadas no processo de reconstrução.

A escolha de ferramentas que ofereçam uma maior abstração na implementação deste tipo de software torna-se um fator decisivo para a obtenção de resultados satisfatórios em curto prazo. Além disso, as ferramentas devem ser capazes de facilitar a interação com o usuário final, possibilitando navegação dentro da cena, permitindo a simulação de situações reais. Neste contexto, o trabalho proposto neste artigo pretende investigar técnicas de reconstrução 3D,

Congresso Norte Nordeste de Pesquisa e Inovação, 2013 3 principalmente as baseadas em imagens, a serem utilizadas no desenvolvimento de aplicações de RA.

1. RECONSTRUÇÃO TRIDIMENSIONAL AUTOMÁTICA

História, Geografia, Medicina, Arquitetura e Engenharia são algumas das áreas em que a

Realidade Aumentada vem sendo largamente utilizada. Na Computação Gráfica, os modelos sintéticos ainda são construídos utilizando técnicas complexas. Observado que a criação de objetos específicos constitui uma atividade relativamente custosa, o processo de modelagem de um simples objeto pode levar horas ou até mesmo dias. A reconstrução digital de objetos em 3D pode ser feita, atualmente, utilizando-se das mais diversas técnicas e softwares, com diferentes níveis de precisão e de custo computacional. Dentre as mais utilizadas pode-se destacar a reconstrução de objetos por uso de imagem com a utilização de softwares (VAZ, 2012).

Conceitualmente, o tema reconstrução automática de superfície pode ser dividido em dois enfoques, dependendo dos dados iniciais e da aplicação final. O primeiro consistindo na criação de um modelo geométrico representando pelas propriedades geométricas intrínsecas da superfície amostrada em imagens bidimensionais, tais como orientação, profundidade e curvatura, obtendo assim o que é conhecido como a forma da superfície, ou simplesmente a forma 3D. De acordo com a característica que uma imagem representa, ela é denominada de mapa ou imagem de orientações, de profundidade e de contornos (LIMA, 2008). O segundo enfoque concentra-se na construção de um modelo 3D, convertendo informações extraídas de imagens tridimensionais em uma malha poligonal, estabelecendo uma estrutura combinatória consistente com o objeto amostrado nas imagens iniciais (TEICHRIEB, 2010).

Então, um esforço substancial deve ser feito para ajustar a informação na cena de forma transparente, de acordo com os objetivos do sistema. Idealmente, RA propõe que o usuário não deveria ser capaz de distinguir objetos reais e informações virtuais, demandando que os elementos virtuais sejam consistentes tanto geometricamente (posicionamento correto, tamanho correto, identificação de oclusões) como fotometricamente (sombreamento, reflexões mútuas, adaptação cromática à iluminação da cena). Até mesmo sob condições simplificadas estes problemas não podem ser resolvidos trivialmente.

Trata-se de um problema de localização e mapeamento simultâneos, ou SLAM

(Simultaneous Localization and Mapping), que consiste na estimação da localização de marcos em um ambiente a partir de leituras de um sensor em movimento, que também precisa ser localizado (TEICHRIEB, 2010). No SLAM visual são utilizadas uma ou mais câmeras como sensor, permitindo o uso de técnicas de SFM (Shape from Motion), mais especificamente de bundle adjustment (VACCHETTI, 2004), além de reconstrução 3D a partir de uma única imagem (TEICHRIEB, 2010). Estrutura do movimento (SFM) é o principal conceito que está atrás de uma abordagem totalmente automatizada de modelagem 3D a partir de conjunto de imagens sem marcas (FARENZENA, 2009). Recentemente, algumas ferramentas estão disponíveis para estes fins.

2. REVISÃO DA LITERATURA

Em 2006, Maarten Vergauwen e Luc Van Gool lançaram um serviço na Web de reconstrução 3D baseado em imagem (VERGAUWEN, 2006). Consistindo em um processo automático, executado em um servidor remoto que calcula a calibração da câmara, juntamente com os mapas de profundidade das imagens carregadas para o servidor. O resultado do processo

Congresso Norte Nordeste de Pesquisa e Inovação, 2013 4 é então retornado para o computador do usuário. Seguindo o mesmo conceito do trabalho de Vergauwen e Van Gool, a Microsoft e a AutodeskLab, lançaram em 2010 o Photosynth e o Photofly, respectivamente.

O Photosynth analisa fotografias digitais e a partir delas gera uma imagem 3D de uma cena e uma nuvem de pontos. Os componentes de reconhecimento comparam partes das imagens para criar pontos, que são analisados para transformar a imagem em um modelo navegável. Os usuários podem ver e criar seus próprios modelos. Atualmente, existe versões para dispositivos móveis onde o usuário pode recriar cenas a partir da câmera do dispositivo.

2.1. Projeto Photofly

O Photofly é uma ferramenta que permite a produção de conteúdo digital em 3D baseado em um conjunto de imagens 2D, capaz de criar rapidamente modelos de objetos, mas mostra problemas para reconstruir espaços complexos e quando a cena inclui elementos como espelho.

Photofly foi um projeto desenvolvido pela AutoDesk que permite a criação de um modelo 3D a partir de várias fotografias. Quanto mais fotos utilizadas no programa, maior será a qualidade da reconstrução tridimensional. Para um melhor aproveitamento, o fabricante recomenda utilizar a mesma câmera para uma determinada cena. É recomendável uma câmera com lentes de 20mm ou mais.

O sistema utiliza uma nuvem de pontos (pixels) que é analisada de forma a obter os melhores pontos e juntá-los para uma melhor reconstrução com base em cálculos matriciais. Pode-se dizer que é basicamente uma "costura" realizada pelo servidor (a reconstrução é feita de forma on-line) do Photofly nos pontos da imagem.

Segundo Abate (2010), uma vez que a cena é criada o usuário pode: • Adicionar pontos de referência para melhorar o processo de "costura" de pontos;

• Somar pontos suplementares em 3D;

• Adicionar medições reais adquiridos em campo;

• Definir a origem e os eixos das coordenadas globais do sistema;

Figura 1 - Modelo do Photofly (ABATE et al, 2010).

Congresso Norte Nordeste de Pesquisa e Inovação, 2013 5

A Figura 1 ilustra o processo de reconstrução do Photofly, onde o usuário seleciona as fotografias que representam as faces (ou ângulos) da cena a ser reconstruída e então essas imagens são enviadas para o servidor do projeto que por consequência realizar o casamento dos pixels e, por fim, retorna para a aplicação do cliente já com o modelo tridimensional reconstruído.

No estudo de caso de Abate (2010), a reconstrução apresentou um melhor resultado quando foi utilizada uma câmera de qualidade, que foi a Canon EOS 550D. Com as imagens obtidas por essa câmera foi realizado a tentativa de reconstrução relativa a um palácio no centro da cidade de Bologna (o Palazzo d'Accursiois).

O conjunto de dados de fotografias é composto por 36 fotografias e o processo de fusão foi satisfatório, produzindo uma nuvem de pontos (34789 pontos), conforme a Figura 2.

Figura 2 - Reconstrução Tridimensional do Palazzo d'Accursiois.

Contudo, Abate percebeu que o Photofly funcionou melhor quando utilizado para objetos isolados, enquanto que em espaços abertos, contendo a presença de várias estruturas, os resultados foram insuficientes, devido à existência de outros pontos comuns e desta forma, seria necessária a intervenção humana.

2.2. Criação de modelo com base em superfícies densas

A reconstrução é obtida com um conjunto esparso de pontos tridimensionais (3D).

Portanto, existe uma combinação de todos os pixels da imagem em relação à imagem vizinha, de modo que estes pontos possam também ser reconstruídos.

Segundo Repko (2005), um modelo 3D da superfície completa é obtido por fusão dos resultados de todas as imagens de profundidade em conjunto. As imagens utilizadas para a reconstrução também pode ser utilizado para o mapeamento de textura de modo que um resultado fotorealista final seja alcançado. As diferentes etapas do processo são ilustradas na Figura 3.

Congresso Norte Nordeste de Pesquisa e Inovação, 2013 6

Figura 3 - Modelo de Reconstrução Tridimensional.

Usando conceitos da geometria, o autor elaborou um algoritmo e conseguiu reconstruir elementos com base em seu modelo, a imagem pode ser vista na Figura 4, onde obteve a reconstrução com sucesso.

Figura 4 - Reconstrução com Algoritmo feito por Repko.

3. KINECT FUSION

O Kinect Fusion é a aposta da Microsoft para se tornar competitivo no mercado da interação virtual, isto é, sem o modelo virtual o usuário não teria o que manipular ou interagir. O dispositivo é composto por um emissor infravermelho e como já dito, a câmera RGB e sensor de profundidade (infravermelho). A câmera e o sensor funcionam na frequência de 30 Hz, ambas com resolução de 640 x 480. São mapeados os pontos cuja distância em relação ao Kinect está entre aproximadamente 70 centímetros e 6 metros. Pontos fora dessa faixa não são reconhecidos.

O algoritmo utilizado para o alinhamento de pontos foi o Iterative Closest Point (ICP), que toma por entrada duas nuvens que representa dois pontos de vista distintos de um mesmo

Congresso Norte Nordeste de Pesquisa e Inovação, 2013 7 objeto. Para cada ponto da nuvem, localiza-se o ponto mais próximo na outra e o adiciona em um novo conjunto. Esta etapa é um problema que busca pontos próximos e realiza a “costura” entre estes.

Desde 2011, quando foram publicados os primeiros resultados do Kinect Fusion a comunidade de desenvolvedores vem dedicando-se a pesquisar e produzir trabalhos explorando a potencialidade proporcionada pelo Kinect. Esta funcionalidade permite digitalizar objetos reais e recriá-los, automaticamente, em modelos virtuais 3D.

(Parte 1 de 2)

Comentários