Your SlideShare is downloading. ×
Monografia - Representação de Ambientes com recursos de Realidade Aumentada
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Monografia - Representação de Ambientes com recursos de Realidade Aumentada

850
views

Published on

Monografia sobre Representação de ambientes de imóveis, como cômodos de uma casa em 3D usando recursos da realidade aumentada.

Monografia sobre Representação de ambientes de imóveis, como cômodos de uma casa em 3D usando recursos da realidade aumentada.

Published in: Technology

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
850
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
43
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. UNIVERSIDADE PRESIDENTE ANTÔNIO CARLOS-UNIPAC FACULDADE DE TECNOLOGIA E CIÊNCIAS DE CONSELHEIRO LAFAIETE - FATEC ENGENHARIA DA COMPUTAÇÃO GIL AMBRÓSIO LOPES JÚNIORREPRESENTAÇÃO DE AMBIENTES COM RECURSOS DE REALIDADE AUMENTADA CONSELHEIRO LAFAIETE 2011
  • 2. GIL AMBRÓSIO LOPES JÚNIORREPRESENTAÇÃO DE AMBIENTES COM RECURSOS DE REALIDADE AUMENTADA Trabalho de Conclusão de Curso sobre Representações de Ambientes com Recursos de Realidade Aumentada, apresentado ao curso de Engenharia da Computação da Universidade Presidente Antônio Carlos – UNIPAC, como requisito parcial para obtenção do título de Bacharel em Engenharia da Computação. ORIENTADOR: JEAN CARLO MENDES CONSELHEIRO LAFAIETE 2011
  • 3. Gil Ambrósio Lopes Júnior REPRESENTAÇÃO DE AMBIENTES COM RECURSOS DE REALIDADE AUMENTADATrabalho de Conclusão de curso apresentado à Universidade Presidente Antônio Carlos – UNIPAC, como requisito parcial para obtenção do título de Bacharel em Engenharia da Computação. BANCA EXAMINADORA Prof. Jean Carlo Mendes (Orientador) Universidade Presidente Antônio Carlos - UNIPAC Prof. Kléber Netto Fonseca Universidade Presidente Antônio Carlos - UNIPAC Aprovada em: 26/12/2011
  • 4. Este trabalho é dedicado à minha família, minha mãe Cláudia, que sempre me apoioue acreditou em meu potencial, meu pai Gil Lopes, minha irmã Jéssica, aos meus avós e tios, ea todos profissionais que utilizam os fantásticos recursos da tecnologia para o bem social ehumano.
  • 5. AGRADECIMENTOS Agradeço a Deus por me dar coragem e forças para seguir em frente e nãodesistir, às pessoas que me apoiaram e acreditaram em mim, meus pais, minha irmãJéssica e minha tia Elisa. Ao amigo Leonardo, parceiro na elaboração do projeto. Agradeço aos professores que ministram aulas no curso de Engenharia daComputação em especial à Daniella Barros (Rosinha), Alfredo Ganime e WesleyLuciano, que além de professores são também amigos. E aos professores que não estãomais presentes na Instituição, mas que tiveram uma importante participação em minhaformação, Luciana Carla e Rone Ilídio. Agradeço ao professor Jean, por ter aceitado ser o orientador do projeto e que,sem ele não seria possível a sua conclusão, agradeço pela paciência, interesse ededicação.
  • 6. “Os progressos obtidos por meio do ensino são lentos; já os obtidos por meio deexemplos são mais imediatos e eficazes.” Séneca “Apesar dos nossos defeitos, precisamos enxergar que somos pérolas únicas noteatro da vida e entender que não existem pessoas de sucesso e pessoas fracassadas. O queexistem são pessoas que lutam pelos seus sonhos ou desistem deles.” Augusto Cury
  • 7. RESUMO A monografia consiste em um sistema de imobiliária virtual usando os recursos deRealidade Aumentada, tais recursos incluem: capacidade de reconhecimento angular docódigo/marcadores da Realidade Aumentada para demonstração de um ambientetridimensional do imóvel modelado em ferramentas de modelagem 3D. Os códigos/marcadores de Realidade Aumentada serão impressos em um cubo, cada umem uma face que representará um cômodo ou uma parte do imóvel, para a demonstração serácriado um ponto inicial com uma determinada visualização do ambiente do imóvel. Com amovimentação do cubo, será possível a visualização de praticamente todo o presente ambientedo imóvel. Palavras Chave: Realidade aumentada, virtual, ambientes.
  • 8. ABSTRACT The Monograph consists of a system of virtual real estate using the resources ofAugmented Reality, these features include: ability to recognize angular Code/Markers ofAugmented Reality for demonstration of a three-dimensional environment of the buildingmodeled in 3D modeling tools. The codes/markers of Augmented Reality will be printed on a cube, each face in a willrepresent a room or a portion of the property. With the movement of the cube, it is possible tosee practically the whole atmosphere of building. Keywords: Augmented reality, virtual, environments.
  • 9. LISTA DE FIGURASFigura 1 - Diagrama de realidade/virtualidade contínua .......................................................... 17Figura 2 – Diagrama adaptado do sistema de realidade aumentada óptico. ............................. 19Figura 3 – Diagrama adaptado de realidade aumentada por vídeo........................................... 19Figura 4 - Diagrama adaptado e dispositivo do sistema baseado em monitor ......................... 20Figura 5 – Marcadores no ARToolKit...................................................................................... 22Figura 6 – Resumo dos passos realizados pelo ARToolKit ..................................................... 22Figura 7 – Integração entre FLARToolKit e Papervision3D ................................................... 23Figura 8 – Problema de Oclusão .............................................................................................. 25Figura 9 –Exemplo de oclusão nos marcadores. (a) Padrão sendo reconhecido. (b)Escondendo uma parte da região do padrão do marcador ........................................................ 26Figura 10 – Problema de Iluminação. (a) Marcador com luz ambiente. (b) Marcador comexcesso de luz ........................................................................................................................... 27Figura 11 –Aplicativo de realidade aumentada que demonstra uma ação publicitária do carroMINI da Cabrio. ....................................................................................................................... 28Figura 12 – Jogo de boliche utilizando o Kinect ...................................................................... 29Figura 13 – Jogo da memória, com vários marcadores ............................................................ 29Figura 14 – Realidade aumentada na medicina: (a) Visualização da movimentação de um fetono útero; (b) Retirada de um tumor .......................................................................................... 30Figura 15 – Mostra uma visão do usuário usando a aplicação: (a) mostra o usuário olhando aimpressora e utilizando uns óculos translúcidos; (b) mostra a visão da aplicação, que mostra omodo correto de remover a bandeja de papéis ......................................................................... 31Figura 16 – Formas Primitivas ................................................................................................. 32Figura 17 –Manipulação e edição dos pontos da malha das geometrias .................................. 32Figura 18 – Operações booleanas ............................................................................................. 32Figura 19 – Exemplo de textura ............................................................................................... 34Figura 20 – Especificação do formato de objetos 3D COLLADA (.dae) ................................ 36Figura 21 – Fases de desenvolvimento do projeto. Desenvolvimento evolucionárioexploratório............................................................................................................................... 39
  • 10. Figura 22 – Cilindro com texturas. (a) Cilindro apresentado na ferramenta de modelagem. (b)Teste do Cilindro na aplicação. ................................................................................................ 42Figura 23 – Cubo com texturas. (a) Cubo apresentado na ferramenta de modelagem. (b) Testedo cubo na aplicação................................................................................................................. 42Figura 24 – Quarto com texturas. (a) Quarto apresentado na ferramenta de modelagem. (b)Teste do quarto criado na aplicação. ........................................................................................ 43Figura 25 –Fluxo de execução do sistema ................................................................................ 44Figura 26 – Códigos/Marcadores do cubo de representação dos ambientes ............................ 45Figura 27 – Exemplo de código/marcador para controle da movimentação dos ambientes .... 45Figura 28 – Caso de uso #1 ...................................................................................................... 48Figura 29 – Caso de uso #2 ...................................................................................................... 49Figura 30 – Caso de uso #3 ...................................................................................................... 49Figura 31 – Diagrama de estados ............................................................................................. 50Figura 32 – Cubo com um código/marcador por face para a interação com a aplicação ......... 53Figura 33 – Realidade aumentada do Estádio Olímpico João Havelange (Engenhão) ............ 53Figura 34 – Realidade aumentada do Estádio Governador Magalhães Pinto (Mineirão) ........ 54Figura 35 – Realidade aumentada da vista de cima de um quarto ........................................... 54Figura 36 –Realidade aumentada da vista de cima de um quarto ............................................ 54Figura 37 – Realidade aumentada da vista de um dos lados de uma sala ................................ 55
  • 11. SUMÁRIO1 Introdução ................................................................................................................... 14 1.1 Justificativa ........................................................................................................... 14 1.2 Objetivo .................................................................................................................. 15 1.2.1 Objetivo Geral ............................................................................................... 15 1.2.2 Objetivos Específicos ............................................................................... 152 REFERENCIAL TEÓRICO ............................................................................. 16 2.1 Realidade Misturada ..................................................................................... 16 2.2 Realidade Aumentada ................................................................................. 17 2.3 Virtualidade Aumentada ........................................................................... 18 2.4 Realidade Aumentada Tangível ........................................................... 18 2.5 Sistemas de Realidade Aumentada ...................................................... 18 2.5.1 Sistemas de Realidade Aumentada Ópticos ................................. 18 2.5.2 Sistemas de Realidade Aumentada por Vídeo ............................ 19 2.5.3 Sistemas de Realidade Aumentada por Monitores .................... 20 2.6 Hardware ............................................................................................................ 20 2.7 Software ............................................................................................................... 21 2.8 ARToolKit ......................................................................................................... 21 2.9 NyToolKit ........................................................................................................... 22 2.10 FLARToolKit ................................................................................................. 23 2.10.1 Funcionamento do FLARToolKit ........................................................ 23 2.11 Problemas presentes em aplicações de RealidadeAumentada ....................................................................................................................... 24 2.11.1 Problemas de Registro ................................................................................... 24
  • 12. 2.11.2 Problemas de Oclusão..................................................................................... 24 2.11.3 O Problema de Oclusão dos Marcadores ................................................... 25 2.11.4 O Problema de Iluminação ........................................................................... 26 2.12 Áreas de Utilização da Realidade Aumentada ........................... 27 2.12.1 Publicidade ....................................................................................................... 27 2.12.2 Jogos ................................................................................................................... 28 2.12.3 Educação ........................................................................................................... 29 2.12.4 Medicina ............................................................................................................ 30 2.12.5 Montagem e Manutenção ............................................................................. 30 2.13 Modelagem 3D .............................................................................................. 31 2.13.1 Formas Primitivas ........................................................................................... 31 2.13.2 Modelagem de Forma Livre ......................................................................... 32 2.13.3 Modelagem de Geometria Sólida Construtiva ........................................ 32 2.13.4 Modelagem por Procedimento .................................................................... 33 2.13.5 Modelagem por Derivação ........................................................................... 33 2.13.6 Renderização .................................................................................................... 33 2.13.7 Texturas ............................................................................................................. 34 2.13.8 Google SketchUp ............................................................................................ 35 2.13.9 Blender .............................................................................................................. 35 2.13.10 Collada (.dae) ................................................................................................ 35 2.14 Flash .................................................................................................................... 36 2.15 RIA (Rich Internet Application) ....................................................... 363 METODOLOGIA ................................................................................................... 384 DESENVOLVIMENTO ..................................................................................... 39 4.1 Ferramentas de Modelagem 3D ............................................................. 39 4.2 Linguagem de Programação: Action Script ................................... 40 4.3 Kits de Desenvolvimento ............................................................................. 40 4.4 PaperVision 3D ................................................................................................. 40
  • 13. 4.5 Descrição do Esboço ....................................................................................... 40 4.6 Diagrama de Atividades (Fluxo de Execução) .............................. .44 4.7 Códigos/Marcadores ..................................................................................... 45 4.8 Especificações (Engenharia de Software) ........................................ 46 4.8.1 Requisitos Funcionais ...................................................................................... 46 4.8.2 Requisitos não Funcionais .............................................................................. 47 4.8.3 Limitações do Sistema ...................................................................................... 47 4.8.4 Requisitos de Desempenho ............................................................................. 47 4.8.5 Diagrama de Casos de Uso ............................................................................. 48 4.8.6 Diagrama de Estados ........................................................................................ 50 4.9 Validação .............................................................................................................. 50 4.10 Problemas Enfrentados ............................................................................ 51 4.10.1 Instalação de Kits de Desenvolvimento ..................................................... 51 4.10.2 Criação do Modelo 3D dos Ambientes ...................................................... 51 4.11 Resultados ......................................................................................................... 535 CONCLUSÃO ........................................................................................................... 566 TRABALHOS FUTUROS ................................................................................. 577 REFERÊNCIAS BIBILIOGRÁFICAS .................................................... 58
  • 14. 14 1 INTRODUÇÃO A Realidade Aumentada é uma tecnologia que permite uma interação com o usuário, oque é obtido através do uso de computação gráfica e de realidade virtual, que resulta nasobreposição de objetos virtuais com o mundo real. Além de permitir objetos virtuais em ambientes reais, permite também o manuseio comas mãos. Entretanto, para que objetos virtuais façam parte do ambiente real e sejammanuseados, utiliza-se um software capaz de captar o ambiente real e o posicionamento dosobjetos virtuais. Segundo KIRNER e SISCOUTO (2007), com o crescente uso de webcans e o avançotecnológico da visão computacional e o crescente avanço em processamentos computacionaise de imagens, o rastreamento ótico passou a ser uma realidade em função da disponibilidadedo equipamento de hardware utilizado e seu baixo custo. O hardware de realidade aumentada pode usar dispositivos de realidade virtual, mas tende a não obstruir as mãos, que devem atuar naturalmente no ambiente misturado. Técnicas de rastreamento visual, usando visão computacional e processamentos de imagens são importantes neste caso. (TORI, 2006) Com o uso da Realidade Aumentada para a criação de ambientes virtuais, torna-sepossível a utilização desses ambientes por diversos campos do mercado, como por empresasresponsáveis por publicidade e propaganda, imobiliárias, em arquitetura, construção civil,dentre outros. 1.1 Justificativa Com a demanda e exigências do mercado atual é necessário o desenvolvimento denovas tecnologias, uma delas é a realidade aumentada que se apresenta em diversos camposde atuação. No presente projeto, é proposto o uso de recursos de realidade aumentada erepresentações em 3D, voltadas para o mercado imobiliário. Com a conclusão e funcionamento do projeto, ele poderá ser apresentado como umproduto a ser comercializado através de imobiliárias que estiverem interessadas em apresentar
  • 15. 15seus imóveis de uma forma inovadora, prática e cômoda. Também serão abertas novaspossibilidades para uso em novos projetos, em que é indicado o desenvolvimento de novosambientes de apresentação em 3D. 1.2 Objetivos 1.2.1 Objetivo Geral Desenvolver um sistema para apresentação de interiores de imóveis, onde o ambienteé representado através de recursos de realidade aumentada, facilitando a visualização doproduto à venda para um possível cliente, que mesmo próximo ou distante do imóvel já possater uma ideia de como é o imóvel que está interessado em adquirir. A apresentação dosrecursos propostos poderá ser demonstrada em diversos ambientes como ambiente web epossibilitará também amostra em outros ambientes computacionais. 1.2.2 Objetivos Específicos → Estudar as novas linguagens utilizadas em criações de softwares, as linguagens deprogramação, os recursos de criação de objetos gráficos através do uso de recursoscomputacionais, as novas tecnologias de representações gráficas bem como a realidadeaumentada e o seu funcionamento, e as técnicas de programação de interfaces ricas parainternet (RIA). → Analisar e elaborar objetos e ambientes em três dimensões.
  • 16. 16 2 REFERENCIAL TEÓRICO A ideia de realidade aumentada surgiu com o cientista americano Thomas Caudell quetrabalhava na Boing, empresa de montagem de aviões. Os funcionários da empresa se perdiamem meio a inúmeros cabos, com isso Caudell teve a ideia de equipar esses operários comóculos que projetavam etiquetas virtuais diferenciando cada cabo. As etiquetas que eramcompostas por códigos de barra já não realizavam sua função adequadamente, carregar muitase todas as informações necessárias. Para resolver esse problema foram criados os códigos deduas dimensões, que permitiam o armazenamento de uma maior quantidade de informações.Esses códigos bidimensionais são responsáveis por projetar os objetos virtuais em umafilmagem do mundo real. Com isso criou-se apenas o protótipo, mas foi a partir daí que surgiuo conceito de realidade aumentada, ou seja, a realidade que é vista todos os dias incrementadacom elementos virtuais projetados em um visor ou monitor. As aplicações de realidade aumentada são possíveis graças à combinação dos códigosde duas dimensões presentes em marcadores e um programa de computador. Os códigos deduas dimensões permitem a projeção de objetos virtuais no mundo real, com melhorasignificativa das informações mostradas, permitindo, assim, uma maior interatividade e aindaque novas tecnologias sejam utilizadas com maior praticidade. A realidade aumentada tem como definição a sobreposição de objetos gerados porcomputador em um ambiente real. Essa definição deve ser aplicada juntamente com o uso daRealidade Misturada, que também é uma sobreposição de objetos virtuais em um ambientefísico, que se tata da mistura do real com o virtual. A realidade misturada permite duaspossibilidades, a virtualidade aumentada que se trata de o ambiente dominante ser o mundovirtual e a realidade aumentada que tem como ambiente predominante o mundo real. 2.1 Realidade Misturada A Realidade misturada é a sobreposição de objetos virtuais gerados por computador como ambiente físico, mostrada ao usuário, em tempo real, com o apoio de algum dispositivotecnológico. A realidade misturada apresenta duas modalidades: realidade aumentada evirtualidade aumentada. [traduzido de KIRNER, C.; TORÍ, R (2004)].
  • 17. 17 Figura 1 – Diagrama de realidade/virtualidade contínua. Fonte: KIRNER, C.; KIRNER, C.; TORÍ, R (2004). 2.2 Realidade Aumentada Segundo KIRNER e TORI (2004) a realidade aumentada pode ser definida de váriasmaneiras: a) É uma particularização de realidade misturada, quando o ambiente principal é real ou há predominância do real; b) É o enriquecimento do ambiente real com objetos virtuais, usando algum dispositivo tecnológico, funcionado em tempo real. c) É uma melhoria do mundo real com textos, imagens e objetos virtuais, gerados por computador [Insley, 2003 apud KIRNER, C.; TORÍ]; d) É a mistura de mundos reais e virtuais em algum ponto da realidade/virtualidade contínua que conecta ambientes completamente reais a ambientes completamente virtuais [Milgran, 1994 apud KIRNER, C.; TORÍ, R (2004).]; e) É um sistema que suplementa o mundo real com objetos virtuais gerados por computador, parecendo coexistir no mesmo espaço e apresentando as seguintes propriedades: - Combina objetos reais e virtuais no ambiente real; - Executa interativamente em tempo real; - Alinha objetos reais e virtuais entre si; - Aplica-se a todos os sentidos, incluindo audição, tato e força e cheiro [AZUMA, 2001 apud KIRNER, C.; TORÍ, R (2004).]
  • 18. 18 2.3 Virtualidade Aumentada De acordo com KIRNER e TORI (2004) a virtualidade aumentada pode ser definidacomo uma particularização da realidade misturada, quando o ambiente principal é o virtual ouhá predominância do virtual. É o enriquecimento do ambiente virtual com elementos reaispré-capturados ou capturados em tempo real. 2.4 Realidade Aumentada Tangível Segundo SANTOS FILHO (2005), a realidade aumentada tangível utiliza interfacestangíveis, que têm por objetivo utilizar objetos reais como dispositivos de entrada e saída parasuas interações. Suas interfaces utilizam objetos físicos que podem ser controlados, o que faz com que seuuso seja bem fácil. Nessas interfaces o uso dos dispositivos físicos pode ser combinado comas alternativas de exibição melhoradas e oferecidas pela sobreposição da imagem virtual. O projeto apresentado se trata de uma aplicação de realidade aumentada tangível porfuncionar com o uso de um objeto físico, que se trata de um cubo, onde é usado para asinterações de entrada da aplicação proposta. 2.5 Sistemas de Realidade Aumentada Há três métodos de construção de sistemas de realidade aumentada: óptico, por vídeo epor monitores. Todos têm como finalidade a combinação dos ambientes reais com osambientes virtuais. 2.5.1 Sistemas de Realidade Aumentada Ópticos Sistemas de realidade aumentada ópticos permitem a visualização de um ambiente real,de forma direta e também permite a visualização de imagens ou objetos virtuais geradosatravés de aplicações.
  • 19. 19 Figura 2 – Diagrama adaptado do sistema de realidade aumentada óptico. Fonte: AZUMA, 97 2.5.2 Sistemas de Realidade Aumentada por Vídeo Em sistemas de realidade aumentada por vídeo é possível se visualizar o ambiente realpor câmeras fixas a um capacete, onde têm como papel representar a função dos olhos dousuário. A cena real, captada pelas câmeras se mistura com elementos virtuais que devem serapresentado diretamente nos olhos do usuário do sistema por mini monitores de vídeoacoplados ao capacete. Figura 3 – Diagrama adaptado de realidade aumentada por vídeo. Fonte: AZUMA, 97
  • 20. 20 2.5.3 Sistemas de Realidade Aumentada por Monitores O funcionamento dos sistemas de realidade aumentada por monitores se trata de umsistema muito parecido com os sistemas de realidade aumentada por vídeo, mas sua diferençaé de que o combinador de cenas envia a combinação dos mundos reais e virtuais para ascâmeras fixadas ao capacete apresentado no sistema por vídeo que irá ser transmitidodiretamente para um monitor ou projetor. Figura 4 – Diagrama adaptado e dispositivo do sistema baseado em monitor. Fonte: AZUMA, 97 2.6 Hardware Os sistemas de realidade aumentada podem usar dispositivos de hardware de realidadevirtual, porém não obstrui as mãos. A tecnologia de realidade virtual envolve todo o hardware utilizado pelo usuário paraparticipar do ambiente virtual. Estão incluídos ai os rastreadores, os capacetes, osnavegadores, luvas, fones de ouvido, as câmeras os dispositivos de reação e outrosdispositivos específicos. (VINCE, 1995, 2004, SHERMAN, 2003 APUD KIRNER, C. ;TORI, R., 2004).
  • 21. 21 2.7 Software A realidade aumentada também demanda softwares mais potentes de acordo com quevão surgindo novas aplicações mais complexas e poderosas. O software atua na fase de preparação do sistema, como software de autoria deambientes 3D, e na fase de execução. (TORI R., KIRNER C., SISCOUTO R., 2006). Os softwares de autoria podem envolver linguagens, toolkits implementados sob aforma de bibliotecas, toolkits gráficos e até mesmo game engines. 2.8 ARToolKit De acordo com SILVA(2006), o ARToolKit foi desenvolvido pelo Dr. Hirokazu Katoda Universidade de Osaka, Japão e é apoiado pelo Human Interface Technology Laboratory(HITLab) da Universidade de Washington e pelo HITLab NZ da Universidade de Canterbury,Nova Zêlandia. O ARToolKit já foi modificado diversas vezes, conforme a necessidade dosprogramadores. O ARToolKit é uma biblioteca para desenvolvimento de aplicações que utilizamrecursos de realidade aumentada, escrito nas linguagens de programação C e C++. Utiliza avisão computacional para realizar os cálculos referentes à posição e orientação da câmera deacordo com o marcador em tempo real. SANTOS FILHO (2005), descreve o funcionamento do ARToolKit da seguintemaneira, primeiramente, o marcador é capturado em tempo real (Figura 5a) por uma câmera,onde seu padrão é transformado em binário (preto ou branco) a partir do valor do limiar(Figura 5b). Na imagem obtida é encontrada uma região quadrada, onde para cada uma delasexiste um padrão já armazenado na base de dados do ARToolKit, caso a região quadradarepresente um marcador que se encontra armazenado, é calculada a posição da imagemcapturada pela câmera. Uma matriz é preenchida com as coordenadas do mundo real que sereferem ao objeto virtual a ser posicionado sobre o marcador e então a imagem virtual éinserida no dispositivo de reprodução relacionada ao marcador (Figura 5c).
  • 22. 22 (A) (B) (C) Figura 5: Marcadores no ARToolKit Fonte: SANTOS FILHO (2005). Figura 6: Resumo dos passos realizados pelo ARToolKit (HITLab,2004). Fonte: SILVA, 2006.2.9 NyARToolKit. O NyARToolKit é uma biblioteca para desenvolvimento de aplicativos de realidadeaumentada para dispositivos móveis como celulares, baseado no ARToolKit. Foidesenvolvido para uso em diversas linguagens de programação como JAVA, C++, C# eActionScript3. Funciona no sistemas operacionais Windows e Linux. Junto com o ARToolKit o NyARToolKit em sua versão portátil em JAVA serviucomo base para o desenvolvimento da ferramenta FLARToolKit.
  • 23. 232.10 FLARToolKit. O FLARToolKit se trata da versão para desenvolvimento de aplicativos em realidadeaumentada na linguagem de programação ActionScript 3 para Flash e é baseado nasbibliotecas ARToolKit e em NyARToolKit na sua versão portátil desenvolvida em JAVA.Reconhece os marcadores da imagem de entrada calculando sua orientação e posição nomundo real. Desenvolvido por Saqoosha, o FLARToolKit é passível de juntar animações eimagens em três dimensões, como no ARToolKit, bem como animações e aplicaçõesdesenvolvidas com a tecnologia Papervision3D(SAQOOSHA,2010 apud MATOS,2010). Figura 7: Integração entre FLARToolKit e Papervision3D. Fonte: PAPERVISION 3D, 2009 apud MATOS, 2010.2.10.1 Funcionamento do FLARToolKit. Por ser uma versão do ARToolKit, os princípios básicos de funcionamento doFLARToolKit são os mesmos, ou seja, é detectada uma imagem pré-cadastrada no sistemapela webcam e é calculada sua posição através de algoritmos de rastreamento no espaço 3D,exibindo a aplicação também cadastrada previamente no sistema (PAPERVISION3D,2009apud MATOS, 2010).
  • 24. 242.11 Problemas presentes em aplicações de Realidade Aumentada Como praticamente todas as aplicações e ferramentas voltadas para a computaçãocostumam apresentar alguns problemas comuns, a realidade aumentada também tem os seus.O que deve ser feito é buscar soluções cabíveis para os problemas ou até mesmo tentarcontorná-los, através do correto uso dos marcadores, que são onde as maiorias dos problemasocorrem. Conforme descrito por Kato (ARTOOLKIT, 2010 apud MATOS, 2010) uma dasprincipais dificuldades encontradas no desenvolvimento de aplicações em realidadeaumentada é o problema do rastreamento do ponto de vista do usuário. Ou seja, para saber emqual ponto de vista deve ser desenhada a imagem virtual, a aplicação deve saber de onde ousuário está olhando no mundo real. (MATOS, 2010).2.11.1 Problemas de Registro De acordo com AZUMA (1994 apud MATOS, 2010), para o correto funcionamentodas aplicações que utilizam realidade aumentada é necessário que os objetos reais e virtuaisestejam corretamente alinhados para que se tenha uma perfeita ilusão de existências dosambientes real e virtual misturados. O alinhamento resultante dos objetos reais e virtuais temcomo definição o nome de registro que possui como função informar ao sistema a posição eas dimensões dos objetos reais que irão fazer parte do cenário a ser visualizado. (COMPORT,MARCHAND e CHAUMETTE, 2003 apud MATOS, 2010).2.11.2 Problemas de Oclusão Os problemas de oclusão são bastante comuns em aplicações de realidade aumentada,ocorrem com os marcadores e também com os objetos no mundo real. Oclusão refere-se ao ato de ocultar (mascarar) porções dos objetos reais ou virtuais na cena 3D tornando sua coexistência o mais real possível. (GROHS e MAESTRI, 2002, p. 41 apud MATOS, 2010).
  • 25. 25 Na figura 8 pode-se observar uma cena contendo dois objetos virtuais, um tabuleiro dexadrez e uma mulher. O Tabuleiro de xadrez fica oculto parcialmente por um gabinete decomputador real e a mulher oculta parte do ambiente real. Figura 8: Problema de Oclusão Fonte: (BALCISOY et al, 2000, p.3 apud MATOS,2010). A aplicação deveria apresentar a imagem real e, sobre ela, a virtual, que deveriaaparecer sobre o gabinete, caso não existisse a oclusão em parte do tabuleiro.2.11.3 O Problema da Oclusão nos Marcadores Ao utilizar os marcadores de uma aplicação em realidade aumentada, o usuário deveter o cuidado de não colocar os dedos ou obstruir de forma alguma parte do marcador, poisquando uma parte do marcador é escondida, a aplicação perde o padrão do marcador e comoresultado o objeto virtual não é mostrado. SANTOS FILHO (2005) explica que a oclusão não apresenta somente desvantagens,seu efeito pode ser explorado com o uso de diversos marcadores, como o usuário desejar queos objetos virtuais de um determinado marcador não sejam mais exibidos.
  • 26. 26 (a) (b) Figura 9: Exemplo de oclusão nos marcadores. (a) Padrão sendo reconhecido. (b) Escondendo uma parte da região do padrão do marcador. Fonte: SANTOS FILHO (2005).2.11.4 O Problema de Iluminação Em aplicações desenvolvidas para o uso de técnicas de realidade aumentada existeuma grande preocupação com a iluminação do ambiente em que a aplicação será usada. Essapreocupação vem do fato de que pouca iluminação pode interferir no processo dereconhecimento dos padrões existentes nos marcadores, da mesma forma, marcadores muitoiluminados pode acarretar o surgimento de sombras que devem ser evitadas. O uso adequado das aplicações quanto à iluminação, deve ser realizado emiluminações naturais do ambiente. Segundo SANTOS FILHO (2005), o problema de iluminação deve ser tratado commuito cuidado, pois a não resolução dele acarreta no não funcionamento adequado daaplicação. Deve-se utilizar uma luz próximo da luz ambiente. Ambientes com muitailuminação fazem com que o padrão dos marcadores desapareça, não sendo possível para aaplicação identificar qual marcador está sendo utilizado. (SANTOS FILHO, 2005).
  • 27. 27 (a) (b) Figura 10: Problema de iluminação. (a) Marcador com luz ambiente. (b) Marcador com excesso de luz. Fonte: SANTOS FILHO (2005).2.12 Áreas de Utilização de Realidade Aumentada A realidade aumentada se apresenta em diversos campos como, por exemplo,publicidade, jogos, educação, medicina, montagem e manutenção dentre outros. A seguir é apresentada uma especificação e explicação da realidade aumentadafuncionando sobre os campos de atuação apresentados. 2.12.1 Publicidade A cada dia as empresas buscam diferentes formas de atrair clientes para seus negócios,a maneira que elas buscam para realizar essa tarefa é através do uso de publicidade epropaganda e uma nova tecnologia que vem ganhando cada vez mais espaço nessas áreas é arealidade aumentada, que é utilizada para a produção de anúncios com baixo custo. Ações publicitárias que usam a tecnologia estão cada vez mais, ganhando espaço euma que pode ser citada é, a ação publicitária do carro MINI Cabrio.
  • 28. 28 Figura 11 – Aplicativo de realidade aumentada que demonstra uma ação publicitária do carro MINI da Cabrio. Fonte: Cadeia Criativa. 2010. (http://cadeiacriativa.wordpress.com) 2.12.2 Jogos Para SANTOS FILHO (2005), uma das áreas mais rentáveis da realidade aumentada éo setor de entretenimento, onde podem ser criados jogos com técnicas de imersão, onde ousuário pode utilizar a área de sua casa para se “transportar” ao ambiente de jogo. Vários jogos que utilizam os recursos de realidade aumentada já foram criados eexistem jogos que vão dos mais complicados ao mais simples, que podem ou não fazer autilização de marcadores. Tem-se como o meio mais interessante para jogos com realidade aumentada, o Kinect,lançado em 2010 pela Microsoft® como periférico para o console XBOX 360. O Kinectpermite ao usuário jogar sem o controle, usando apenas o seu próprio corpo e movimentos. O Kinect se trata de um grande exemplo de funcionamento da realidade aumentada.Nele, tanto o mundo real quanto o virtual, se misturam e interagem com perfeição, com isso ojogador tem a sensação de estar dentro do jogo.
  • 29. 29 Figura 12: Jogo de boliche utilizando o Kinect. Fonte: Blog logganinformatica. 2010. (http://logganinformatica.blogspot.com) 2.12.3 Educação O uso da realidade aumentada na educação se encaixa muito bem e vai desde aossistemas de ensino para crianças deficientes até ao ensino superior. A utilização da realidade aumentada auxilia no entendimento de gráficos, métodos evários outros objetos de estudo, tendo como exemplos adicionais, aplicações de matemática eum jogo de memória onde as crianças devem associar animais a partir de imagens projetadas. Com o uso da realidade aumentada o aprendizado é mais bem aproveitado devido àinteratividade que oferece. Figura 13: Jogo da memória, com vários marcadores. Fonte: SANTOS FILHO (2005).
  • 30. 30 2.12.4 Medicina Hoje em dia já existem cirurgias que são realizadas com o uso da realidade aumentada.Nessas cirurgias o médico tem uma melhor visualização do corpo do paciente, que sãorepresentadas por modelos 3D onde ajudam o médico ao fazer cortes no corpo e reduz osriscos de prejudicar o paciente. (a) (b) Figura 14: Realidade aumentada na medicina: (a) Visualização da movimentação de um feto no útero; (b) Retirada de um tumor. Fonte: SANTOS FILHO (2005). 2.12.5 Montagem e Manutenção Com a utilização de técnicas de realidade aumentada o uso de manuais torna-se nãonecessário, pois o usuário terá uma representação em 3D de seu equipamento que mostra ospassos a serem realizados para uma determinada tarefa de manutenção ou montagem. Esserecurso também pode ser aproveitado em cursos técnicos, onde o aluno deve seguir os passosapresentados pela iteração 3D e assim, desta forma aprender como realizar determinadastarefas de manutenção e montagem de equipamentos. SANTOS FILHO (2005) descreve uma aplicação interessante que foi desenvolvidapor pesquisadores da Universidade de Columbia, onde ela ajuda usuários no processo demanutenção de uma impressora a laser.
  • 31. 31 (a) (b) Figura 15: Mostra uma visão do usuário usando a aplicação: (a) mostra o usuário olhando para a impressora e utilizando uns óculos translúcidos, (b) mostra a visão da aplicação, que mostra o modo correto de remover a bandeja de papéis. Fonte: SANTOS FILHO (2005). 2.13 Modelagem 3D Os métodos de modelagem em três dimensões oferecidos pela maior parte dossoftwares de modelagem tridimensional, de acordo com Lucena (2002, apud NETO, MELO,Revista da Pesquisa, AGO/2004 – JUL/2005), podem ser divididos em cinco categorias: • Formas primitivas; • Modelagem de Forma Livre; • Geometria Sólida Construtiva; • Modelagem por procedimento; • Modelagem por derivação. (NETO, MELO, Revista da Pesquisa, AGO/2004 – JUL/2005) 2.13.1 Formas Primitivas As formas primitivas constituem uma coleção de formas geométricas pré-construídas.As geometrias mais comuns de acordo com NETO, MELO (AGO/2004 – JUL/2005) são: aesfera, o cubo, o cilindro e o cone.
  • 32. 32 Figura 16: Formas Primitivas Fonte: NETO, MELO (Revista da Pesquisa, AGO/2004 – JUL/2005) 2.13.2 Modelagem de Forma Livre A modelagem de forma livre é caracterizada de acordo com as possibilidades demanipulação das geometrias, através de suas curvas. Permite ao usuário trabalhar com pontosisolados da malha ou em conjunto desses pontos. (NETO, MELO, Revista da Pesquisa,AGO/2004 – JUL/2005). Figura 17: Manipulação e edição dos pontos da malha das geometrias Fonte: NETO, MELO (Revista da Pesquisa,AGO/2004 – JUL/2005). 2.13.3 Modelagem de Geometria Sólida Construtiva NETO, MELO(Revista da Pesquisa, AGO/2004 – JUL/2005) dizem que a forma demodelagem de Geometria Sólida Construtiva, faz uso de operações de união, intersecção ediferença entre duas geometrias, para a geração de novas formas tridimensionais, chamadasde operações booleanas. Figura 18: Operações booleanas Fonte: NETO, MELO (Revista da Pesquisa, AGO/2004 – JUL/2005)
  • 33. 33 2.13.4 Modelagem por Procedimento De acordo com NETO, MELO (Revista da Pesquisa, AGO/2004 – JUL/2005) amodelagem por procedimento, utiliza um algoritmo para atribuir um tipo de procedimento ouação, responsável pela definição de um objeto a ser gerado. Para isso, tem-se diversos tipos deparâmetros a serem configurados que possibilitam a facilidade de modificação dos atributosque formam o objeto. 2.13.5 Modelagem por Derivação Ainda para NETO, MELO (Revista da Pesquisa, AGO/2004 – JUL/2005) o método demodelagem por derivação, é dividido em três formas de geração de modelos tridimensionais,mas todas têm relações entre duas ou mais formas bidimensionais para a criação de um objetode três dimensões: • Extrusão: permite que uma cópia da forma bidimensional seja estendida ao longo de um eixo selecionado. • Secção transversal serial: permite a conexão de diversas secções bidimensionais que podem possuir diversas formas e tamanhos. • Revolução: Dentro da modelagem por derivação, a técnica de revolução utiliza um giro completo em torno do próprio eixo de uma forma bidimensional. 2.13.6 Renderização A renderização se trata de uma técnica necessária para que todos os parâmetros dosobjetos criados sejam calculados e transferidos para uma imagem final. É importante relatarque, a tridimensionalidade de uma imagem é ilusória, uma vez que tanto o processo decriação, quanto a imagem final, estão fixadas à um plano bidimensional. (NETO, MELO,Revista da Pesquisa, AGO/2004 – JUL/2005).Para que a imagem final seja criada, de acordo com Kerlon (2000 apud NETO, MELORevista da Pesquisa, AGO/2004 – JUL/2005), há três métodos de renderização: • Z-Buffer: Os objetos são espalhados de acordo com seus parâmetros de profundidade na cena, que devem ser guardados em um meio de armazenagem
  • 34. 34 temporário usado para compensar as diferenças nas taxas de dados e o fluxo de dados entre dois dispositivos (por exemplo, um computador e uma impressora), para verificar se determinado ponto de cada objeto criado está visível. • Ray Tracing: Realiza cálculos dos caminhos, no ambiente 3D, dos raios emitidos por uma fonte de luz, desta forma é possível visualizar o efeito de fontes de luz, uma vez que o método de Z-Buffer não tem atenção ao trajeto dos raios luminosos que estiveram sendo transmitidos do interior de um material transparente. • Radiosity: É o método responsável por calcular a transferência da quantidade de luz entre as superfícies de todos os objetos na renderização até que a energia da luz seja absorvida pelas superfícies, ou dissipada no espaço. Esse método também é responsável pelo cálculo da direção da luz para todo o ambiente relacionado com o objeto criado. 2.13.7 Texturas As texturas são as características de uma superfície, onde se torna possível aidentificação e diferenciação de objetos e formas, portanto, uma textura se trata de umasensação visual e/ou tátil. Existem dois tipos de texturas, as naturais, que são aquelas que caracterizam osaspectos do exterior de formas e coisas existentes na natureza, como por exemplo, as pedras,folhas, peles, solo, madeira, etc. Também existem as texturas artificiais, que são resultantes da intervenção do serhumano, são criadas a partir da manipulação de materiais e de técnicas utilizadas naslinguagens plásticas. As texturas artificiais podem ser criadas com características ornamentaisou funcionais. Em objetos virtuais, as texturas que os compõe, retratam exatamente as texturasnaturais e artificiais existentes, que são usadas para criar um melhor visual e representação domodelo computacional criado. Figura 19: Exemplo de textura artificial. Fonte: ensinarEVT, 2011. (http://ensinarevt.com)
  • 35. 35 2.13.8 Google SketchUp O Google SketchUp é um sistema simples, fácil de aprender e intuitivo de usar, usadacomo ferramenta para criar, explorar, exportar e importar modelos em 3D. É um sistema em que se podem criar modelos em três dimensões partindo do zero ouusando dados existentes, importando desenhos, plantas, fotos, imagens aéreas e outrasinformações que podem ser usadas como ferramentas para modelagem. Com o SketchUp épossível ser exportados os objetos modelados para o formato COLLADA (.dae). 2.13.9 Blender O Blender se trata de um conjunto de ferramentas para a criação de conteúdos em trêsdimensões. Permite executar tarefas completas para modelagem como, renderização,animação, pós-produção, criação e visualização de conteúdo 3D interativo, com os benefíciosde portabilidade. (Blender Org.). É também utilizado para visualizar espaços tridimensionais, imagens estáticas, assimcomo vídeos em alta definição, possui um motor 3D em tempo real, que permite a criação deconteúdos 3D interativos. (Blender Org.). Foi desenvolvido pela empresa Not a Number, eagora é desenvolvido como software livre pela Blender Foundation. (Blender Org.). Com oBlender é possível ser exportados os objetos modelados para o formato COLLADA (.dae). 2.13.10 Collada (.dae) Formato utilizado por ferramentas de modelagem 3D e utilizado em aplicações comrecursos de realidade aumentada que oferecem visualizações em três dimensões. COLLADA são atividades colaborativas de design para definir um padrão deesquemas de recursos digitais interativos para aplicações 3D. Tem por definição um esquemade banco de dados que permite que aplicações de criação 3D troquem de forma livre, ativosdigitais sem perda de informação. O formato COLLADA é capaz de suportar todos osrecursos que aplicações interativas 3D necessitam, como efeitos de sombreamento.(Collada.org).
  • 36. 36 Figura 20: Especificação do formato de objetos 3D COLLADA (.dae) Fonte: Figura adaptada de KHRONOSTM, COLLADATM. (2008). 2.14 Flash Flash é uma tecnologia usada na Web que possibilita a criação de animações vetoriais.O uso de gráficos vetoriais permite realizar animações de pouco peso, ou seja, que demorampouco para ser carregadas. (ALVAREZ, 2004). Segundo o site CriarWeb e ALVAREZ(2004) o flash utiliza a linguagem deprogramação ActionScript, que permite executar diferentes partes de uma animação ouaplicação em função de eventos produzidos pelo usuário. 2.15 RIA (Rich Internet Application) Dando início à próxima inovação no lado dos clientes na internet, foi construída, pelaAdobe®, uma interface para internet que irá melhorar a qualidade dos aplicativos de usuáriofinal, tornando a internet mais relevante e útil para empresas e consumidores. Trata-se de um avanço na prestação de experiências efetivas para usuários finais,permitindo que aplicações de Internet, que mistura conteúdos de aplicações, de lógica e decomunicações, seja um mecanismo mais agradável e útil para os clientes, essa é umaalternativa bastante interessante que fornece uma arquitetura sólida e dinâmica. Aplicações para uso da Realidade Aumentada são sistemas que possuem umainteratividade com o usuário, por esse motivo são criadas dando maior importância ao
  • 37. 37usuário, por isso são consideradas como aplicação RIA, essas são sistemas independentes quegarantem flexibilidade e são executados a partir de navegadores de internet.
  • 38. 38 3 METODOLOGIA Para o desenvolvimento do projeto foram feitos estudos de materiais como aplicativos,imagens e vídeos que utilizam e exemplificam o uso da realidade aumentada para diversosfins. Depois disso, foram realizados ainda, estudos mais aprofundados para levantamento derequisitos e o desenvolvimento da engenharia de software que trata o sistema do projeto.Posteriormente foram feitos novos estudos e desenvolvimento dos ambientes e objetos em3D, que serão utilizados para a execução do projeto e assim foi realizada a integração e ofuncionamento com os ambientes e objetos tridimensionais.
  • 39. 39 4 DESENVOLVIMENTO O projeto foi desenvolvido através do uso de ferramentas de modelagem 3D como oGoogle Sketchup e Blender. A implementação dos códigos (Marcadores) e interpretação darealidade aumentada foi feita na linguagem de programação ActionScript usando o kit dedesenvolvimento FLARToolKit em sua versão 2.5.4 e também com o uso da bibliotecagráfica PaperVision3D. Outras linguagens e kits de desenvolvimento mais conhecidos quepermitem a criação de aplicativos que utilizam a realidade aumentada são, JAVA e C++ queusam os ToolKits, JARToolKit e ARToolKit respectivamente. A figura 21 especifica as fases do projeto: Figura 21: Fases de desenvolvimento do projeto. Desenvolvimento evolucionário exploratório. Fonte: Imagem adaptada de (SOMMERVILLE, 2007 apud MATOS, 2010). Segue uma breve descrição das ferramentas citadas: 4.1 Ferramentas de Modelagem 3D • Google Sketchup: Ferramenta utilizada para criar modelos de objetos e ambientes em3D. Foi o software utilizado para modelagem dos objetos 3D no presente projeto. • Blender: Software de código aberto, desenvolvido pela Blender Foundation, paramodelagem, animação, texturização, composição, renderização, edição de vídeo e criação deaplicações interativas em 3D. Também foi utilizado para modelagem dos objetos 3D dotrabalho.
  • 40. 40 4.2 Linguagem de Programação: ActionScript A linguagem de programação utilizada no projeto foi a ActionScript, que se trata deuma linguagem de programação usada para criar aplicações em Flash. Possibilita a criação deprojetos interativos ou aplicações complexas que envolvam base de dados e serviços web. 4.3 Kits de Desenvolvimento O ARToolKit se trata de uma biblioteca de software utilizada para desenvolvimento deaplicações em realidade aumentada, baseada nas linguagens C e C++. Possui código abertoque possibilita alteração e ajustes para aplicações especificas. Não foi utilizado no projetodevido a existência de vários problemas na ferramenta. O JARToolKit se trata de uma biblioteca criada na linguagem de programação JAVA,feita dos princípios da biblioteca ARToolKit. Possibilita desenvolver aplicações sobrerealidade aumentada, utilizando comandos gerados pelo vídeo capturado, possibilitando o usoem várias aplicações no assunto. O Kit de desenvolvimento utilizado para a implementação do projeto, se trata doFLARToolKit que é uma ferramenta de código aberto, portanto livre e gratuita, que junto àbiblioteca PaperVision3D, possibilita desenvolver aplicativos para web que utilizam arealidade aumentada, usando a linguagem de programação ActionScript. 4.4 PaperVision3D A Biblioteca PaperVision3D possui código aberto e é utilizada para criar e modelarobjetos virtuais em três dimensões. A PaperVision3D foi utilizada para o desenvolvimento dotrabalho, integrando-a junto ao kit de desenvolvimento FLARToolKit. 4.5 Descrição do Esboço O projeto se trata do desenvolvimento de uma aplicação que utiliza recursos derealidade aumentada para visualização de ambientes de casas e outros imóveis, podendo
  • 41. 41também possibilitar visualizações de outros tipos de ambientes. Portanto refere-se a umsistema de imobiliária virtual. Com o uso dos recursos de realidade aumentada, a aplicação irá possibilitar também acapacidade de reconhecimento angular do código de realidade aumentada para amovimentação em um ambiente tridimensional do imóvel apresentado para a visualização dousuário. Para a utilização da aplicação, os códigos/marcadores de realidade aumentada foramimpressos em um cubo, onde cada face possui um código/marcador que representa umcômodo ou uma parte do imóvel, onde é apresentado um ponto inicial com determinadavisualização do ambiente. Outro código/marcador é utilizado para a visualização depraticamente todo o ambiente, para um movimento de zoom, a face do cubo com ocódigo/marcador referente ao ambiente que o usuário deseja visualizar deve ser aproximadada câmera para efeito de zoom (aumentar) ou afastada da câmera para ver o ambiente comotodo (diminuir). Ao se inclinar a o código/marcador adicional são realizadas mais algumasações: • Código/Marcador, quando inclinado para frente, é realizada a ação de “olharpara baixo”, sendo mostrado assim o chão do ambiente. • Código/Marcador sendo inclinado para trás, realiza a ação de “olhar para cima”,assim possibilitando a visualização do teto do ambiente. • Ao se tombar o código/marcador para qualquer um dos lados (esquerda oudireita) irá ser realizada a ação de “olhar para” o lado que o código/marcador foi tombado,mostrando assim as partes da esquerda e da direita do ambiente. • Para uma mudança de cômodos ou ambientes, simplesmente muda-se a face docubo. Para o uso da aplicação foram modeladas algumas formas geométricas em 3D, e umapequena sala com uma mesa no centro que foram utilizadas em testes.
  • 42. 42 (a) (b) Figura 22: Cilindro com texturas. (a) Cilindro apresentado na ferramenta de modelagem. (b) Teste do Cilindro na aplicação. Fonte: do Autor (a) (b)Figura 23: Cubo com texturas. (a) Cubo apresentado na ferramenta de modelagem. (b) Teste do cubo na aplicação. Fonte: do Autor
  • 43. 43 (a) (b)Figura 24: Quarto com texturas. (a) Quarto apresentado na ferramenta de modelagem. (b) Teste do quarto criado na aplicação. Fonte: do Autor
  • 44. 444.6 Diagrama de Atividades (Fluxo de Execução) Figura 25: Diagrama de Atividades do sistema (Fluxo de execução). Fonte: do Autor.
  • 45. 454.7 Códigos/Marcadores Figura 26: Códigos/Marcadores do cubo de representação de ambientes. Fonte: do Autor. Figura 27: Exemplo de Código/Marcador para controle da movimentação dos ambientes. Fonte: do Autor.
  • 46. 46 4.8 Especificações (Engenharia de Software) A Engenharia de Software se trata de um estudo e aplicação para o desenvolvimento,operações e manutenção de softwares, usada para dar uma maior qualidade e produtividade aosoftware, relacionada aos aspectos de produção, desde os estágios iniciais de especificação dosistema até sua manutenção. Devido ao projeto ser um tipo de software e possuir dificuldades para sua criação, seránecessária a implementação da Engenharia de Software, visando demonstrar asfuncionalidades e recursos do sistema, como pode ser visto a seguir. 4.8.1 Requisitos FuncionaisRF #1: Os marcadores deverão ser impressos no formato de um cubo, ou outra formageométrica que possibilite a impressão de um marcador em cada face e que seja uma peça queofereça a possibilidade de ser montada a partir de uma matriz de papel.RF #2: Cada face do cubo deverá possuir um marcador diferente que represente um ambientediferente.RF #3: O controle do ambiente virtual deverá ser realizado por um marcador específico paracontrole.RF #4: A impressão deverá ser feita em papel fosco, para evitar falhas no reconhecimento domarcador.RF #5: O computador do usuário deve possuir webcam instalada e em perfeito funcionamentopara o reconhecimento das imagens.RF #6: As matrizes de montagem do cubo deverão ser disponibilizadas pela divulgadora pormeio de folders com a matriz para recortar e montar e as instruções de montagem, e por meiodo site, através do download de um arquivo PDF (Portable Document Format) contendo amatriz e as instruções de montagem além do marcador de controle.
  • 47. 47RF #7: Durante a simulação o usuário poderá definir o ângulo de visão, ampliar a visão(aplicar ou retirar o zoom) e rotacionar a sua visão, por meio de movimentos com o marcadorde controle.RF #8: O sistema deve apresentar a interface e as instruções de uso em português. 4.8.2 Requisitos não FuncionaisRNF #1: O sistema deve ser implementado na linguagem FLASH, visando a construção deum sistema flexível quanto a plataforma a ser utilizada. O sistema pode rodar em diferentessistemas operacionais, por exemplo: Windows ou Linux, e ter versões para dispositivosmóveis.RNF #2: O sistema deve fornecer ao usuário uma interface amigável e intuitiva, que obedeçaaos princípios básicos da Realidade Aumentada. 4.8.3 Limitações do SistemaLS #1: O sistema requer o sistema Operacional Windows XP ou Linux equivalente, comAdobe Flash Player 9 ou superior instalado e navegadores Microsoft Internet Explorer 8,Mozilla Firefox 3 e Google Chrome 4 ou suas respectivas versões superiores.LS #2: O sistema requer uma câmera com qualidade VGA (640X480 pixels) ou superior.LS #3: O sistema requer uma conexão banda larga de no mínimo 256Kbps. 4.8.4 Requisitos de Desempenho • RD #1 – O sistema deverá ser executado em tempo real.
  • 48. 48 4.8.5 Diagramas de Caso de Uso Em práticas de UML, o desenvolvimento dos diagramas de Caso de Uso tem comoobjetivo a modelagem do sistema.No sistema em questão, foi identificado apenas um ator: o Usuário. • UC #1 – Caso de uso 1. Figura 28: Caso de uso #1. Fonte: do Autor O usuário deverá escolher o lado correspondente ao ambiente que deseja exibir atravésdo uso do cubo de marcadores de ambientes, então irá ser definido o modo de visão desejado,aplicando movimentação e rotação ao ambiente. É composto pelos casos de uso Escolhe_Lado e Define_modo_visao. Descrição: • Escolhe_Ambiente →Ator: Usuário →Pré-Condições: A aplicação deve ter sido iniciada →Curso Normal: O usuário acessa o site da aplicação ou ambiente e exibe à câmera a face do cubo que contém o ambiente desejado.
  • 49. 49 →Curso de Execução: Se não houver um marcador válido, o ambiente não será exibido. • UC #2 – Caso de Uso 2. Figura 29: Caso de uso #2 Fonte: do Autor • UC #3 – Caso de Uso 3. Figura 30: Caso de uso #3 Fonte: do AutorDescrição:• Define_Modo_Visao →Ator: Usuário
  • 50. 50 →Pré-Condições: A aplicação deve ter sido iniciada e o ambiente escolhido. →Curso Normal: Após a escolha do ambiente, o usuário define o modo de visão de acordo com a rotação e a inclinação aplicada. →Curso de Execução: Se não houver um marcador válido, o ambiente não será exibido. 4.8.6 Diagrama de Estados Figura 31: Diagrama de estados Fonte: do Autor 4.9 Validação Com a aplicação já funcionando, então o modelo do ambiente, modelado em trêsdimensões que resultou em um arquivo de extensão COLLADA(.dae) é importado eassociado ao código/marcador que irá ser responsável por sua demonstração na aplicação. Depois de ser realizada essa tarefa, é exportado o arquivo .fla, que executa o códigoActionScript feito anteriormente. Depois de realizadas essas tarefas, o projeto descrito seencontra pronto para a realização de testes de suas funcionalidades.
  • 51. 51 4.10 Problemas Enfrentados Assim como em todo trabalho e projeto, neste também foram enfrentadas algumasdificuldades tais como, a escolha do kit de desenvolvimento e a criação do modelo 3D dosambientes. 4.10.1 Instalação de Kits de Desenvolvimento Na primeira tentativa de instalação do kit de desenvolvimento para a linguagem deprogramação JAVA, o JARToolKit, houveram dificuldades de instalação e integração com aIDE de desenvolvimento gratuita ECLIPSE e, consequentemente, com a utilização daferramenta. A outra dificuldade foi que, uma vez que não foi possível a instalação do JARToolKitcom sucesso, houve nova tentativa de instalação e integração com o software dedesenvolvimento Visual Studio em suas versões 2010 e 2008, o ARToolKit, nesse casotambém não foi obtido êxito. Diante das tentativas fracassadas, finalmente obteve-se sucesso com a instalação eintegração de outro kit de desenvolvimento encontrado, o FLARToolKit, sendo utilizada suaIDE de desenvolvimento FLASHDEVELOP na versão 3.3.1. 4.10.2 Criação do Modelo 3D dos Ambientes Na criação do modelo 3D a dificuldade enfrentada foi a de integração das texturas quecompõem e colorem o modelo a ser apresentado pela aplicação. Foi realizada tentativas com modelos feitos nos ambientes de modelagem GoogleSketchUp e Blender, associando-se aos modelos criados suas texturas e, logo após deconcluído, o modelo gerado foi exportado pelas próprias ferramentas de modelagem 3D parao formado .dae compatível com a aplicação. Após realização dessas tarefas, o modelo foiintegrado ao sistema, colocando-se o nome do modelo e associando-o ao código emActionScript 3 criado para a aplicação e, também, acrescentando-se o modelo a serapresentado pela aplicação no diretório bin do projeto.
  • 52. 52 Depois de inúmeros testes observou-se que, deveriam ser colocadas na pasta bin doprojeto, a pasta “images” gerada na conversão do modelo para .dae, que contém as texturas,criando-se um arquivo de texto em bloco de notas com o nome de “textures”, para que assimfosse sendo indicado o caminho de cada textura, como mostra o exemplo a seguir: <../images/texture0.jpg> <../images/texture0.jpg><../images/texture0.png> Com esses passos realizados, foi obtida satisfatoriamente a apresentação correta domodelo 3D do ambiente a ser apresentado pela aplicação. Porém, surgiu nova dificuldadequanto à implementação do tamanho de exibição do modelo, onde deveriam ser configuradosno código da aplicação, acessando-se a classe “ProjetoPapervision3D.as”, sendo possívelsolucioná-la a partir da configuração do padrão, “modeloDAE.scale”, para um valor semprepositivo que faz com que o modelo tenha um tamanho adequado para sua apresentação.Também houve um problema de posição inicial do objeto 3D, que foi resolvido, setando-secorretamente o parâmetro “modeloDAE.rotationX”, também presente na classe“modeloDAE.scale”. A seguir é mostrado o código da classe citada: private function configurarPapervision3D():void { baseModelo = new FLARBaseNode(); cena3D = new Scene3D(); camera3D = new FLARCamera3D(parametrosCamera); viewport3D = new Viewport3D(larguraTela, alturaTela); renderizador = new LazyRenderEngine(cena3D, camera3D, viewport3D); modeloDAE = new DAE(); modeloDAE.load(arquivoModelo); modeloDAE.rotationX = 90; modeloDAE.scale += 2 baseModelo.addChild(modeloDAE, "modelo"); Cena3D.addChild(baseModelo); }
  • 53. 53 4.11 Resultados Após a resolução dos problemas, foram obtidos resultados satisfatórios para aapresentação adequada do projeto. Foi conseguida a integração das texturas ao modelo 3D do ambiente a ser apresentadopelo projeto, onde o primeiro teste feito obteve um bom resultado com o uso de um modelodo Estádio Governador Magalhães Pinto (Mineirão), antes de sua reforma para a Copa doMundo de 2014 e o Estádio Olímpico João Havelange (Engenhão) obtidos no site doArmazém 3D do Google para SketchUp. Figura 32: Cubo com um código/marcador por face para interação com a aplicação. Fonte: do Autor. Figura 33: Realidade Aumentada do Estádio Olímpico João Havelange (Engenhão). Fonte: do Autor.
  • 54. 54Figura 34: Realidade Aumentada do Estádio Governador Magalhães Pinto (Mineirão). Fonte: do Autor. Figura 35: Realidade Aumentada da vista de cima de um quarto. Fonte: do Autor. Figura 36: Realidade Aumentada da vista de cima de um quarto. Fonte: do Autor.
  • 55. 55 Figura 37: Realidade Aumentada da vista de um dos lados de uma sala. Fonte: do Autor. Os resultados foram obtidos devido às soluções dos problemas apresentados e pelo usodo sistema, onde é mostrado para a câmera do computador um dos marcadores utilizados pelaaplicação, onde é reconhecido o padrão do marcador utilizado, e assim mostrado no vídeo omodelo 3D do ambiente associado àquele marcador.
  • 56. 56 5 CONCLUSÃO O uso do projeto concluído implicará na praticidade que o mundo moderno exige, comrapidez, qualidade do produto oferecido bem como do serviço prestado. No caso desse projetoem si, observa-se o pouco investimento e os preços acessíveis dos equipamentos para autilização do software. Quanto à proposta do projeto, viabiliza-se seu uso em diversas áreas como emempresas de publicidade e propaganda, construtoras, imobiliárias, e também por váriosprofissionais como arquitetos, paisagistas e engenheiros, que poderão apresentar seus projetosde forma fácil, prática, rápida e inovadora. Com relação às dificuldades encontradas durante a execução desse trabalho, destaca-seque, uma vez tratando-se de um conteúdo novo e ainda em fase de expansão, não existemferramentas completas e estáveis que auxiliem a implementação dos aplicativos; observa-se anecessidade de maiores esforços para a criação de ferramentas mais eficientes. Sugere-se que, diante de uma proposta tão atual e dinâmica, mais estudos sejamrealizados para a construção de novas ideias e projetos no ramo da Realidade Aumentada, eque esse trabalho sirva como referencial e que possa ser utilizado por outras pessoasinteressadas em criar novos projetos com aplicações de mesma capacidade.
  • 57. 57 6 TRABALHOS FUTUROS Com a conclusão e funcionamento do projeto, ele poderá ser apresentado como umproduto a ser comercializado através de imobiliárias que estiverem interessadas em apresentarseus imóveis de uma forma inovadora, prática e cômoda. Também serão abertas novaspossibilidades para uso em novos projetos, onde são indicados o desenvolvimento de novosambientes de apresentação em 3D usando os recursos da realidade aumentada, para taisindicações, é apresentado a implementação e melhoria em ambientes web e móvel. Deverá ser criado também um ambiente computacional onde o usuário poderáimportar modelos 3D dos interiores de residências, lojas, ambientes externos e outros espaços,feitos em softwares como AutoCad, Google SketchUp, Blender e outros, onde o sistemadeverá gerar à partir desses modelos a realidade aumentada do ambiente correspondente. Essaaplicação poderá ser usada em lojas de vendas de acabamentos e para projetistas de imóveis.
  • 58. 58 7 REFERÊNCIAS BIBILIOGRÁFICAS•ActionScript. Disponível em: <http://www.unaerp.br/comunicacao/professor/andrea/arquivos/action_script_pd.pdf>. Acesso em 05 de Maio. 2011.• Afinal o que é Engenharia de Software? Disponível em: <http://www.portalarquiteto.com.br/afinal-o-que-e-engenharia-de-software>. Acesso em 23 de Mar. 2011.• AZUMA, R.T. A Survery of Augmented Reality. UNC Chapel Hill, In Presence:Teleoperators and Visual Environments, 1997.• Blender Org. Manual-Introduction. Disponível em: <http://wiki.blender.org/index.php/Doc:PT/Manual/Introduction>. Acesso em 05 de Maio. 2011.• Blender. Disponível em: < http://www.blender.org/>. Acesso em 05 de Maio de 2011.• Blog Logganinformatica. Game Kinect. Disponível em:<http://logganinformatica.blogspot.com/2011/02/games-kinect.html>.Acesso em 05 de Maio de 2011.• Cadeia Criativa. O que é Realidade Aumentada. Disponível em: <http://cadeiacriativa.wordpress.com/2010/11/08/como-funciona-realidade-aumentada>. Acesso em 05 de Maio de2011.• Collada.org. COLLADA. Disponível em: <https://collada.org/mediawiki/index.php/COLLADA>. Acesso em 19 de Maio. 2011.• ensinarEVT. A Textura. Disponível em:< http://ensinarevt.com/conteudos/textura/index.html>. Acesso em 17 de Nov. 2011.• Google Armazém 3D. Disponível em: <http://sketchup.google.com/3dwarehouse/?hl=pt-BR>. Acesso em 18 de Out. 2011.
  • 59. 59• Google Sketchup. Disponível em: <http://sketchup.google.com/ >.Acesso em 4 de Dez. de2010.• KHRONOStm, COLLADAtm. COLLADA OVERVIEW. 2008. 29 f.• KIRNER, C. ; TORI, R. (2004) - Introdução à Realidade Virtual, Realidade Misturada eHiper-realidade. In: Kirner, C.; Tori, R. (Org.). Realidade Virtual: Conceitos, Tecnologia eTendências. 1 ed. São Paulo: Editora SENAC, 2004, v. 1, p. 3-20. Disponívelem: <http://www.realidadevirtual.com.br/cmsimple-rv>. Acesso em 9 de Maio. 2011.• MATOS, Raul César do Carmo. Projeto de um Protótipo de Aplicação Web comRealidade aumentada. 2010. 78 f. (Graduação em Informática para Gestão de Negócios) –Faculdade de Tecnologia da Zona Leste, Centro Paula Souza. Disponível em: <http://fateczl.edu.br/TCC/2010-2/TCC-010.pdf>. Acesso em 9 de Maio. 2011.• NETO, Walter Dutra da Silveira., MELLO, Andrei Krepsky. Técnicas de animação em 3D.Revista da Pesquisa, Florianópolis,1,2, Ago/2004 – Jul/2005. Disponível em:<http://www.ceart.udesc.br/revista_dapesquisa/volume1/numero2/design/animacao_ambientes_3D.pdf> Acesso em 13 de Maio. 2011.• NyARToolKit. Disponível em: <http://nyatla.jp/nyartoolkit/wiki/index.php>.Acesso em11 de Maio. 2011.• O que é FLARToolKit. Disponível em: < http://www.libspark.org/wiki/saqoosha/FLARToolKit/en >. Acesso em 11 de Maio. 2011.• O que é Flash. Disponível em: < http://www.criarweb.com/artigos/282.php>. Acesso em 19de Maio. De 2011.• Realidade Aumentada. Disponível em: <http://www.realidadeaumentada.com.br>. Acessoem 13 de Set. 2010.
  • 60. 60• Realidade Virtual e Aumentada: Definições. Disponível em: <http://www.ckirner.com/realidadevirtual/?DEFINI%C7%D5ES>. Acesso em 20 de Mar. 2011.• RIA. Rich Internet applications. Disponível em: <http://www.adobe.com/resources/business/rich_internet_apps/>. Acesso em 19 de Out. 2011.• SANTOS FILHO, Clovis de Oliveira. Estudo e aplicações da Realidade Aumentada.2000. 70 f. (Bacharelado de Engenharia da Computação) – Departamento de SistemasComputacionais, Escola Politécnica de Pernambuco. Disponível em:<http://dsc.upe.br/~tcc/20052/ClovisSantos.pdf>. Acesso em 20 de Mar. 2011.• SILVA, Réryka Rubia P.C.L. Ambiente Colaborativo com Realidade Aumentada. 2006.93 f. (Mestrado em Ciência da Computação) – Faculdade de Ciências Exatas e da Natureza,Universidade Metodista de Piracicaba. Disponível em: <http://www.unimep.br/phpg/bibdig/pdfs/2006/CDSMFSPRWSTN.pdf >. Acesso em 11 deMaio. 2011.• TORI R., Kirner C., SISCOUTO., R. Livro do Pré-Simpósio: Fundamentos Tecnologia deRealidade Virtual e Aumentada. Belém: Editora SBC, VIII Symposium on Virtual Reality.2006. Disponível em: <http://143.54.31.10/ce-rv/documentos/introd-conceitos-rv-ra%5B1%5D.pdf>. Acesso em 9 de Maio. 2011.