Estudo e Configuração de uma Aplicação de Realidade Aumentada

Embed Size (px)

DESCRIPTION

O que é realidade aumentada , instalação, configuração jogo da memoria em realidade aumentada

Citation preview

Instituto de Cincias Exatas e Tecnologia Cincia da Computao

Rhenan Ferreira Dinardi Roberto Matias Pereira

Estudo e Configurao de uma aplicao de Realidade Aumentada

BauruDezembro/2010

Instituto de Cincias Exatas e Tecnologia Cincia da Computao

Rhenan Ferreira Dinardi RA: 426755-9 Roberto Matias Pereira RA: 271188-5

Estudo e Configurao de uma aplicao de Realidade Aumentada

Trabalho de Curso apresentado como parte dos requisitos para obteno do grau de Bacharel em Cincia da Computao da Universidade Paulista UNIP.

Professor Orientador: MS. Alex Mauricio Mazo

BauruDezembro/2010

Sumrio 1 INTRODUO ............................................................................................................ 6 1.1 Objetivos ............................................................................................................... 7 1.1.1 Objetivo Geral ............................................................................................... 7 1.1.2 Objetivo Especifico ...................................................................................... 7 1.2 Justificativa ........................................................................................................... 8 1.3 Formulao do Problema de Pesquisa ........................................................... 8 1.3.1 Problemas ..................................................................................................... 8 1.3.2 Hipteses ...................................................................................................... 8 2 REALIDADE AUMENTADA ...................................................................................... 9 2.1 Conceitos de Realidade Aumentada ............................................................... 9 2.2 Tipos Especficos de Realidade Aumentada ................................................ 10 2.3 Aplicaes de Realidade Aumentada ............................................................ 11 2.3.1 Medicina ...................................................................................................... 11 2.3.2 Entretenimento ........................................................................................... 11 2.3.3 Comunicao .............................................................................................. 12 2.3.4 Treinamento ................................................................................................ 13 2.3.5 Educao .................................................................................................... 14 2.3.6 Visualizao de Dados.............................................................................. 14 2.4 Ferramenta de Aplicao : ARToolKit............................................................ 15 3 MATERIAIS E MTODOS ...................................................................................... 17 3.1 Instalao do Visual Studio 2010 Professional ........................................ 17 3.2 Instalao do OpenGL.................................................................................. 17 3.3 Instalao e Configurao do ARToolKit .................................................. 19 3.4 Instalao do OpenVRML ............................................................................ 21 4 RESULTADO ............................................................................................................ 25

4.1 SimpleVRML ...................................................................................................... 25 4.1.1 Arquivos de Configurao ........................................................................ 25 4.1.2 Gerao dos Bitmaps dos Cartes ......................................................... 26 4.1.3 Funes ....................................................................................................... 30 4.1.4 Atribuindo Novos Cartes e Objetos ao SimpleVMRL ........................ 30 5 CONCLUSO............................................................................................................ 35 6 REFERNCIAS ........................................................................................................ 36

LISTA DE FIGURAS Figura 1: Diagrama adaptado de Realidade/Virtualidade contnua .................. 10 Figura 2: Aplicao de Realidade Aumentada em vascularidade. ................... 11 Figura 3: Simulao do Kinect com sensor de movimento. ............................. 12 Figura 4: Propaganda de Doritos com Realidade Aumentada. ........................ 13 Figura 5: Simulador de Treinamento Militar. .................................................... 13 Figura 6: Peas e o ambiente do quebra-cabea com palavras. ..................... 14 Figura 7: Exemplo da Aplicao Looking Glass para visualizao de dados. .. 15 Figura 8: Diagrama de Funcionamento do ARToolKit. .................................... 16 Figura 9: Biblioteca OpenGL descompactada ................................................. 18 Figura 10: Executando Build Solution ............................................................. 20 Figura 11: Alterando local da gerao do executvel ...................................... 21 Figura 12: Alterao do modo Debug para Release ........................................ 23 Figura 13: Selecionando libARvrml e simpleVRML ......................................... 23 Figura 14: Exemplo de cdigo do arquivo telepone.dat, associando a placa ao objeto virtual o qual dever ficar localizado em C:\ARToolKit\examples\simpleVRML\Wrl. ...................................... 26 Figura 15: Exemplo de cdigo do arquivo Object_data_vrml.dat, o qual descreve uma aplicao que dever ficar localizado em C:\ARToolKit\examples\simpleVRML\Data ..................................... 26 Figura 16: Arquivos necessrios para execuo do mk_patt........................... 27 Figura 17: Passo para execuo do mk_patt .................................................. 27 Figura 18: Tela requerimento do arquivo de parmetro de cmera. ................ 28 Figura 19: Tela para configurao do vdeo .................................................... 28 Figura 20: Tela de cadastro de carto ............................................................. 29 Figura 21: Tela para salvar o carto. ............................................................... 29 Figura 22: Novos cartes cadastrados ............................................................ 31

Figura 23: Novos objetos adicionados na pasta Wrl ........................................ 31 Figura 24: Arquivos avt.dat, flor.dat, galleon.dat e rose.dat. ............................ 32 Figura 25: Contedo do object_data_vrml.dat ................................................. 33 Figura 26: Demonstrativo dos cartes sobrepostos ........................................ 34

6

1 INTRODUO A computao grfica uma rea de estudo da cincia da computao voltada para construo de objetos 2D e 3D. Este campo de estudo abrange a transmisso de informaes com o uso de elementos grficos. Em sua maioria, so necessrios elementos conversores capazes de ler e interpretar dados transmitidos e aplic-los em uma imagem, projeo ou ambiente. A Realidade Virtual (RV) uma rea da computao grfica que permite simular o mundo real ou criar ambientes virtuais tridimensionais, os quais estimulam a viso, audio, e tato atravs de uma imerso de modo interativo, gerando um envolvimento com o usurio e o ambiente criado. Porm, a RV est longe de ser comparada com o mundo real. Neste sentido, algumas aplicaes buscam aumentar a RV mesclando objetos virtuais e ambientes reais. Essa rea denominada Realidade Misturada (RM), e possui como principal caracterstica a sobreposio de ambientes reais e virtuais (SANTOS FILHO, 2005). A RM consiste basicamente de uma Realidade Aumentada (RA), onde o ambiente real alimentado com elementos virtuais, atravs de algum dispositivo, por exemplo, culos de viso tica direta. A diferena principal entre uma RM e uma RA o domnio gerado por elas, ou seja, o que se predomina no ambiente. Quando h uma mistura de elementos virtuais em ambientes reais, onde se predomina o ambiente real, dado o nome de RA. Quando ocorre o contrrio, ou seja, quando h mistura de elementos reais em ambientes virtuais e se predomina o ambiente virtual, dado o nome de RM (TORI et al. 2006). A principal vantagem da RA o contato que o usurio pode manter com o ambiente alimentado virtualmente. Este contato pode acontecer atravs de cdigos inseridos em cartes, cmeras e at mesmo com as mos, sem necessidade de um conhecimento primrio sobre um aplicativo ou ferramenta. Isto possibilita uma infinidade de reas para sua utilizao, tais como: educao, medicina, comunicao, visualizao de dados e principalmente entretenimento (KIRNER, (2004) apud BUCCIOLI et al, (2005)). Na educao utilizam a RA atravs de livros interativos, onde o usurio pode utilizar o contedo do livro com animaes e imagens virtuais que ajudam a

7

assimilar a informao, facilitando a absoro de conhecimento na educao infantil e auxiliando no aprendizado de pessoas com necessidades especiais (CARDOSO et al., 2006). No entretenimento utilizam a tecnologia de RA em consoles de vdeo game, para melhorar a interatividade com o jogo. Na comunicao, esta tecnologia pode ser usada em noticirios ou programas de esporte para realizar graficamente acompanhamentos de jogadas, medidas e distncias percorridas ao mesmo tempo da transmisso ou em eventos gravados previamente (GATASS, 2005). Na medicina, a RA pode ser usada para auxiliar em tratamentos mdicos. Como a visualizao virtual de partes do corpo humano para estudos ou tratamentos mais geis (AMIRA, 2009). 1.1 Objetivos Os objetivos para confeco deste trabalho esto divididos em duas partes: Objetivo Geral e Objetivo Especfico, como descrito abaixo. 1.1.1 Objetivo Geral Apresentar os fundamentos da RA, assim como um estudo do desenvolvimento de uma aplicao em uma ferramenta de desenvolvimento de interface de RA, visando rea de entretenimento. 1.1.2 Objetivo Especifico Estudar os fundamentos da RA e suas aplicaes em vrias reas de especializao; Estudar o sistema de RA que ser utilizado; Desenvolver um aplicativo de teste de RA para ser utilizado no estudo de caso (Neste caso, um jogo da memria interativo).

8

1.2 Justificativa Estudar as aplicaes de RA contribui para vrias aplicaes, tais como: educao, comunicao, medicina e entretenimento alm de melhorias que esta tecnologia pode trazer para processos humanos j existentes hoje em dia. Atravs de uma aplicao de RA em entretenimento, podemos melhorar a relao jogador-game em jogos de plataformas, celulares e aplicativos em browser. Criando uma maior interao e apreciao do jogo utilizado.

O jogo permite que seu usurio estabelea oportunidades de encontrar solues e interagir com outros usurios, permitindo ento o processo de atividades colaborativas e ampliando as estratgias coletivas de uma maneira estimulante e ldica (KIRNER e ZORZAL, 2005).

Esta tecnologia est sendo aplicada vagarosamente. Porm, o estudo de seu desenvolvimento ajudar no entendimento de possveis melhorias para aplicaes futuras. 1.3 Formulao do Problema de Pesquisa Para a formulao do problema de pesquisa deste trabalho, dividiremos o assunto em duas pautas: Problemas e Hipteses, que sero descritos abaixo. 1.3.1 Problemas Desenvolver um sistema interativo de RA com a ferramenta ARToolKit. 1.3.2 Hipteses Para avaliar a ferramenta ser criado um jogo da memria utilizando um sistema de RA interativo.

9

2 REALIDADE AUMENTADA Neste capitulo, ser dissertados os elementos estudados de RA para o desenvolvimento deste projeto, como seus conceitos, os tipos especficos de RA, aplicaes atuais que utilizam RA e uma introduo a ferramenta usada para o desenvolvimento, o ARToolKit. 2.1 Conceitos de Realidade Aumentada Para entender a RA, devemos conceitualizar RV. Segundo Kirner (1997), realidade virtual uma forma das pessoas visualizarem, manipularem e interagirem com computadores e dados extremamente complexos. Logo, podemos concluir que a RV uma tcnica de integrao entre ambientes virtuais, onde se pode navegar e interagir com estes elementos virtuais atravs de vrios sentidos. A RA uma extenso da RV, desenvolvida com o avano progressivo nas tecnologias grficas. Esta tecnologia gerada sobrepondo elementos do mundo real com objetos virtuais gerados atravs de um software de computador (BUCCIOLI et al., 2005) . necessria uma ferramenta especifica para se trabalhar com RA, mas no necessrio um treinamento ou um conhecimento especifico sobre uma linguagem para se interagir com elementos virtuais na RA. Os sistemas mais simples necessitam somente de um webcam e um software capaz de ler as informaes capturadas com ela. Com o avano das tecnologias, novos elementos como culos especiais, luvas e sensores de movimento melhoram a interao e a sensao de imerso com os elementos virtuais e nos permitem aplicar esta tecnologia em vrias reas especificas , fornecendo uma extenso de capacidade e de utilidade para o ser humano (BUCIIOLI et al., 2005).

10

2.2 Tipos Especficos de Realidade Aumentada A teoria de sobreposio de elementos pode gerar conceitos diferentes de realidades, figura 1. Um ambiente real sobreposto com elementos virtuais, onde a predominncia do ambiente o mundo real, recebe o nome de RA. Porm, outra tcnica semelhante pode ser aplicada. Pegamos elementos reais e aplica-se sobre um ambiente virtual, onde a predominncia do ambiente o virtual. Neste caso, a tcnica recebe o nome de RM (KIRNER, 1997). A RM consiste dos mesmos elementos da RV, e dos mesmos conceitos da RA. Segundo Kirner e Zorzal, (2005) o objetivo ao se utilizar uma RM projetar um ambiente mais perfeito possvel, onde no seja possvel distinguir os elementos reais dos virtuais. Sendo assim, a captura de sentidos aguados dos seres humanos como o tato e viso, ajudam a projetar o ambiente da RM com preciso, normalmente feito atravs de luvas e culos especiais para manuseio da ferramenta onde esta sendo aplicada. Ainda dentro deste conceito, a RA pode gerar outro tipo de ambiente alternativo chamado de Virtualidade Aumentada. A Virtualidade Aumentada constitui principalmente de um ambiente virtual alimentado tambm por elementos virtuais. Desta forma, possvel incluir elementos virtuais de elementos reais em ambientes virtuais atravs de alguma ferramenta que estabelea esta interao com o usurio. Tambm possvel transportar pessoas e objetos mais dinmicos para um ambiente de Virtualidade Aumentada. Neste caso a imagem da pessoa ou do objeto capturada previamente e projetada no ambiente mantendo todas as suas caractersticas para que possam ser interagidas (BUCCIOLI ET al, 2005; CARDOSO ET al, 2006).

Figura 1: Diagrama adaptado de Realidade/Virtualidade contnua Fonte: BUCCIOLI, A. A. B et., 2005.

11

2.3 Aplicaes de Realidade Aumentada Neste tpico, sero abordadas algumas aplicaes onde a RA utilizada atualmente. 2.3.1 Medicina J existem programas com aplicaes de RA que permitem a um mdico ou a um profissional da rea de medicina aplicar suas funes com muito mais facilidade e segurana, como incises aplicadas sobre um modelo virtual em 3D para diversas operaes e procedimentos mdicos. Como exemplo, a figura 2 ilustra um tratamento vascular, onde se pode desde visualizar a corrente sangunea do paciente com softwares que detectam e criam as veias virtualmente sobre a pele atravs do calor do corpo, at realizar perfeitas cirurgias e autpsias em um paciente atravs de uma simulao virtual interativa onde partes internas ou afetadas do paciente podem ser visualizadas e integradas as funes do profissional da medicina (SANTOS FILHO, 2005).

Figura 2: Aplicao de Realidade Aumentada em vascularidade. Fonte: ALEXANDRE BATTIBUGLI, 2009.

2.3.2 Entretenimento Segundo Cardoso et al., (2006), a interao com jogos pode ser potencializada atravs do uso de RA, pois com ela possvel explorar os sentidos do ser humano e aumentar a interatividade do jogador com o jogo atravs do

12

contato direto com elementos virtuais, criando a maior iluso possvel do universo do jogo para quem o esta jogando. Um exemplo desde tipo de aplicao hoje em dia o sistema Kinect do console Xbox 360 desenvolvido pela Microsoft. A funo deste sistema detectar os movimentos do jogador atravs de sensores, figura 3. Com isso o jogador pode vivenciar vrias aplicaes de jogos com movimentos corporais como dana, esportes, corrida e lutas virtuais sem nenhum uso de fios e controles (Portal Xbox, 2010).

Figura 3: Simulao do Kinect com sensor de movimento. Fonte: Portal Xbox, 2010.

2.3.3 Comunicao Exemplos prticos de RA podem ser vistos atualmente atravs da televiso. Muitos programas de jogos esportivos utilizam esta tecnologia para acompanhar e exemplificar jogadas e lances dos jogos transmitidos. Elementos virtuais so aplicados sobre a transmisso da partida do jogo com elementos de propaganda ou de analise esportiva (GATASS, 2005). Mais recentemente, a empresa Chips da Elma Chips, fez uma propaganda de seu produto Doritos, onde o cliente podia pegar a embalagem do produto e, acessando o site oficial, visualizar uma criatura que ganhava vida na frente da cmera com o uso da RA, figura 4 (CARLOS MERINGO, 2010).

13

Figura 4: Propaganda de Doritos com Realidade Aumentada. Fonte: CARLOS MERINGO, 2010.

2.3.4 Treinamento Devido interao do ser humano com objetos virtuais criados por um software de RA, possvel criar simulaes de exerccios variados para treinamento e preparao do individuo para a aplicao pratica. Simulaes de vo de aeronaves, treinamentos espaciais e militares so alguns exemplos de onde esta tecnologia pode ser aplicada para este fim, figura 5 (KIRNER, 1997).

Figura 5: Simulador de Treinamento Militar. Fonte: SEMENTILLE, 2007.

14

2.3.5 Educao Tcnicas de aplicao de RA podem ser muito bem utilizadas para educao de crianas com deficincias fsicas, ao gerar uma interao maior entre o aluno e o estudo, atravs de aplicaes bsicas e jogos educacionais, figura 6. Tambm podem ser usadas para exemplificao de ambientes tridimensionais, geogrficos e elementos qumicos no auxilio da educao de alunos mais velhos em cursos como engenharia, qumica e biologia (CARDOSO et al., 2006).

Figura 6: Peas e o ambiente do quebra-cabea com palavras. Fonte: CARDOSO et al., 2006.

2.3.6 Visualizao de Dados Hoje em dia, aplicaes de RA so utilizadas constantemente para visualizao de dados, tanto em duas como trs dimenses, auxiliando na interao do ser humano com o computador. Principalmente na visualizao de dados e melhor capacidade de aproveitamento de projetos, figura 7. Podemos citar alguns exemplos deste tipo de aplicao: identificao de campos e peas de modo interativo em uma montagem, visualizao de dados atravs de um browser de navegao, explorao de ambientes de difcil acesso ao ser humano por virtualizao do ambiente e acompanhamento de construes de grande escala e a longa distncia como plataformas petrolferas (TORI, R. et al., 2006).

15

Figura 7: Exemplo da Aplicao Looking Glass para visualizao de dados. Fonte: Frederick van Amstel, 2008.

2.4 Ferramenta de Aplicao : ARToolKit A ferramenta ARToolKit uma ferramenta OpenSource para

desenvolvimento de aplicaes em RA que utiliza a linguagem de programao C e C++. Ele utiliza o campo de viso do computador, fornecido por uma cmera para calcular e reproduzir objetos virtuais exibidos atravs de cdigos inseridos em cartes. Estes cdigos possuem imagens semelhantes a cdigos de barra, figura 8. uma ferramenta considerada de fcil manuseio devido a sua funcionalidade e aplicao simples, e sua ampla biblioteca de dados permite ao usurio programar sobre qualquer plataforma desejada. O ARToolKit pode ser utilizado em Linux, MAC, SGI e em mltiplas verses do Windows, sendo sua ultima verso a mais atualizada (Portal hitLAB, 2010).

16

Figura 8: Diagrama de Funcionamento do ARToolKit. Fonte: BUCCIOLI, A. A. B. et al., 2005.

17

3 MATERIAIS E MTODOS Neste capitulo, discutiremos sobre as ferramentas utilizadas para o desenvolvimento do aplicativo de estudo deste trabalho, assim como as configuraes e detalhes de suas instalaes. 3.1 Instalao do Visual Studio 2010 Professional A instalao do Visual Studio 2010 Professional pode ser realizada por qualquer pessoa com conhecimentos mnimos em informtica. Sua instalao segue os mesmos padres de qualquer outra instalao de aplicativos para computador. Este produto desenvolvido pela Microsoft um software pago, com preo mdio de US$ 800,00 a licensa original, tambm sendo disponivel em verses trials de 90 dias no seguinte link: http://www.microsoft.com/visualstudio/enus/download. 3.2 Instalao do OpenGL O OpenGL uma interface de computao grfica utilizada para criao e desenvolvimento de aplicativos grficos em geral. Ele oferece acesso a todos os recursos de vdeo do hardware do computador atravs de funes. Primeiramente, realizar o download do OpenGL, descompacta-lo no diretrio C:\, feito isso os arquivos ficaram dispostos como ilustra a figura 9. O OpenGL pode ser encontrado no seguinte link: http://sites.google.com/a/maxwella nderson.com.br/www/espa%C3%A7oacad%C3AAmico/arquivos/BibliotecasOpen GL.rar?attredirects=0.

18

Figura 9: Biblioteca OpenGL descompactada

Segundo o PORTAL MAXWELL ANDERSON (2010), aps descompact-lo deve-se copiar as dlls descriminadas a baixo para o diretrio

C:\Windows\System32 no caso de Windows 32bits ou no caso de Windows 64bits no diretrio C:\Windows\SysWow64: glu32.dll glut32.dll opengl32.dll

Em seguida Copiar as libs descriminadas a baixo do diretrio C:\Bibliotecas_OpenGL\Visual Studio .Net\lib para o diretrio C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib: opengl32.lib glut32.lib glu32.lib

Necessita-se tambm copiar os arquivos descriminados abaixo do diretrio C:\Bibliotecas_OpenGL\Visual Studio .Net\include\GL para o diretrio

C:\Program Files\Microsoft Visual Studio 10.0\VC\Include\GL GL.H GLU.H Glut.H

Concludo estes passos, a biblioteca OpenGL poder ser utilizada com Visual Studio 2010.

19

3.3 Instalao e Configurao do ARToolKit Primeiramente, realizar o download dos arquivos abaixo descriminados dos seus respectivos link. ARToolKit link:

Link: http://sourceforge.net/project/downloading.php?group_id=116280&file name=ARToolKit-2.72.1-bin-win32.zip&a=21206765. DSVideo Library Link: http://sourceforge.net/project/downloading.php?group_id=116 280&filename=DSVL-0.0.8b.zip&a=98368761 Bibliotecas Microsoft C e C++ RunTime (msvcp71d.dll msvcr71d.dll) Link:http://www.dll-files.com/dllindex/dll-files.shtml?msvcp71d http://www.dll-files.com/dllindex/dll-files.shtml?msvcr71d. Segundo o PORTAL MAXWELL ANDERSON (2010), Aps realizar todos os downloads descritos acima, descompactar e copiar os arquivos para seus devidos diretrios conforme descriminados abaixo: ARToolKit-2.72.1-bin-win32 descompactar no diretrio C:\ Copiar msvcp71d.dll e msvcr71d.dll para o diretrio C:\ARToolKit\bin DSVL-0.0.8b descompactar na pasta do ARToolKit C:\ARToolKit Copiar DSVL.dll e DSVLd.dll do diretrio C:\ARToolKit\DSVL\bin para o diretrio C:\ARToolKit\bin Feito isso necessita-se executar o arquivo Comfigure.win32.bat, em seguida deve-se abrir o projeto ARToolKit.sln ambos localizado no diretrio C:\ARToolKit, ao abrir o projeto aparecera um assistente para converso da solution. Prossiga com o assistente at a sua concluso. Em Gerenciador de solues, deve-se clicar com o boto direito do mouse na solution e clicar em Build solution, figura 10. A soluo devera ser construda com sucesso, caso ocorra algum erros deve-se reiniciar todo o processo.

20

Figura 10: Executando Build Solution

Para ter certeza de que tudo esta funcionando perfeitamente deve-se executar o exemplo SimpleLite, para isso necessita-se copiar a pasta e as bibliotecas descriminadas a baixo encontradas em C:\ARToolKit\bin para a

pasta do projeto localizada em C:\ARToolKit\examples\simpleLite\ Pasta Data msvcp71d.dll msvcr71d.dll libARvideo.dll DSVL.dll

Aps todos os arquivos terem sido copiados, voltar para Visual Studio e no Gerenciador de Solues, clicar com o boto direito do mouse em SimpleLite. Logo aps clicar em Propriedades. Na janela de propriedades clicar em Propriedades de configurao > Linker > General. V ate o campo Output File, selecione a opo e confirma-se clicando em OK, figura 11. Esta alterao far com que a gerao do arquivo executvel seja feita na pasta do projeto e no na pasta bin do ARToolKit, como esta programado naturalmente (PORTAL MAXWELL ANDERSON, 2010).

21

Figura 11: Alterando local da gerao do executvel

No Gerenciador de Solues, clicar com o boto direito do mouse em SimpleLite, clicar em debug start new instance. O programa dever ser executado sem nenhum erro. Nesse instante o carto hiro deve ser posicionado em frente a webcam para que o mesmo seja sobreposto por um cubo colorido. 3.4 Instalao do OpenVRML Semelhante ao OpenGL, o OpenVRML tambm uma interface de computao grfica, utilizada para permitir a visualizao de imagens 3D e formatos semelhantes em outras aplicaes. Inicialmente, realizar o download dos arquivos necessrios para a instalao desta biblioteca relacionados abaixo de seus respectivos links. OpenVRML0.14.3win32 Link: http://sourceforge.net/projects/artoolkit/files/artoolkit/2.72.1/Op enVRML0.14.3win32.zip/download. Bibliotecas libjpeg.lib e libpng.lib Link: http://www.maxwellanderson.com.br/downloads/libs.zip. Descompactar e copiar os arquivos para seus devidos diretrios conforme descriminados abaixo: Openvrml0.14.3win32.zip descompactar dentro da pasta do

ARToolKit no seguinte diretrio C:\ARToolKit\bin Libs.zip descompactar na pasta raiz do seu computador C:\

22

Copiar a biblioteca js32.dll localizada em C:\ARToolKit\Open VRML\bin para c:\ARToolKit\bin Copiar as bibliotecas libjpeg.lib e libpng.lib localizadas em C:\libs para o diretrio C:\ARToolKit\OpenVRML\dependencies\lib

Segundo o PORTAL MAXWELL ANDERSON (2010), neste momento devese abrir o projeto disponvel em C:\Artoolkit\OpenVRML\src\openvrml-0.14.3\idl e-projects\Windows\VisualC7\OpenVRML\OpenVRML.sln, e prosseguir com o assistente para converso da solution que aparecera, at sua concluso. Logo aps, na janela Gerenciador de Solues, deve-se abrir os cdigos fonte descriminados a baixo para que sejam realizadas algumas alteraes. regerror.c, localizado em regexSourceFilesregerror.c AST.hpp localizado em antlrHeaderFilesAST.hpp

Token.hpp localizado em antlrHeaderFilesToken.hpp

Para o cdigo regerror.c deve-se alterar as linhas do cdigo entre as linhas 116 a 120 da seguinte forma: 116 regerror(int errcode, regex_t *preg,char *errbuf,size_t errbuf_size) 117 //int errcode; 118 //const regex_t *preg; 119 //char *errbuf; 120 //; Para o cdigo AST.hpp, alterar a linha 151 da seguinte forma: 151 int inline operador General. Em Output File, seleciona-se a opo . Isto evitar a gerao do executvel na pasta bin do ARToolKit. Clique em OK; No Gerenciador de Solues, clica-se com o boto direito do mouse em SimpleVRML, em seguida clicar em debug start new instance. O exemplo dever executar sem nenhum erro. Neste momento, deve-se posicionar o carto hiro em frente a cmera, ele ser sobreposto por uma abelha sobrevoando uma flor.Com isso, o OpenVRML estar pronto para uso em sua mquina.

25

4 RESULTADO Para o desenvolvimento do jogo da memria, utilizou-se como base o exemplo SimpleVRML. Apesar de o exemplo citado fornecer quase todas as funcionalidades para o desenvolvimento do jogo proposto nesse trabalho, foi necessrio referenciar outros objetos 3D atravs da adio de cartes. 4.1 SimpleVRML Neste captulo, ser descrito os passos para a adio de novos cartes e imagens, alm das configuraes dos arquivos .dat. Estas implementaes tornaram o exemplo SimpleVRML na aplicao referente ao jogo da memria proposto neste trabalho.

4.1.1 Arquivos de Configurao O simpleVRML possui dois arquivos de configurao localizados na pasta bin/Data, sendo eles: camara_para.dat: contem parmetros de cmara; object_data_vrml.dat: especifica o numero de padres que sero utilizados e associa objetos virtuais aos padres dos marcadores. O arquivo object_data_vrml.dat contm referencia dos os arquivos *.dat de cada arquivos VRML, dos arquivo bitmaps (mapa de bits) dos cartes , alm dos parmetros que configuram o tamanho da carto e a posio do centro do carto, figura 15. Para cada arquivo VRML devera ser criado um arquivo *.dat com o mesmo nome do arquivo VRML. Ele armazenara o local onde se encontra este arquivo VRML, bem como parmetros de translao , rotao e escala do objeto, figura 14. Esses arquivos e seus objetos devem ficar localizados na pasta bin\wrl.

26

Figura 14: Exemplo de cdigo do arquivo telepone.dat, associando a placa ao objeto virtual o qual dever ficar localizado em C:\ARToolKit\examples\simpleVRML\Wrl.

Figura 15: Exemplo de cdigo do arquivo Object_data_vrml.dat, o qual descreve uma aplicao que dever ficar localizado em C:\ARToolKit\examples\simpleVRML\Data

4.1.2 Gerao dos Bitmaps dos Cartes Os arquivos bitmaps so representaes binarias (em P&B) baseadas no valor do limiar de intensidade dos cartes, as quais relacionam os marcadores aos objetos virtuais. O utilitrio mk_patt do ARToolKIt responsvel por gerar essas representaes (SANTIN, R; KIRNER, C. , 2007). Para executarmos o mk_patt deveremos copiar a pasta Data e as bibliotecas msvcp71.dll, msvcr71.dll, libARvideo.dll, msvcp71d.dll,

msvcr71d.dll, DSVL.dll, DSVL.d.dll, figura 16, da pasta do projeto simpleVRML, localizada no endereo C:\ARToolKit\examples\ simpleVRML\ para a pasta do projeto mk_patt, localizada no endereo C:\ARToolKit\util\mk_patt\.

27

Figura 16: Arquivos necessrios para execuo do mk_patt

Aps copiar os arquivos, deve-se clicar com o boto direito do mouse em mk_patt, depois clica-se em Propriedades. Na janela de propriedades, clicar em Propriedades de configurao > Linker > General. No lado direito da aba aberta, v at o campo Output File, selecione a opo . O que fara com que a gerao do executvel seja feita na pasta do projeto e no na pasta bin do ARToolKit como configurada naturalmente. Em seguida deve-se clicar com o boto direito do mouse em mk_patt, depois clicar em debug start new instance, figura 17. A execuo dever ser realizada sem nenhum erro.

:Figura 17: Passo para execuo do mk_patt

28

Logo aps aparecer uma tela conforme ilustra a figura 18. Nesta etapa o usurio dever entrar com arquivo que contenha os parmetros da cmera. Simplesmente pressionado a tecla Enter do teclado, ser atribudo

automaticamente o padro Data/cmera_para. Em seguida aparecer uma tela para configurao da cmera conforme ilustra a figura 19. Clicando em ok, automaticamente ser aberta uma janela com a imagem do vdeo para enquadramento do carto. Exibindo um carto em frente cmera, dever ser exibido um retngulo com lados vermelhos, no canto superior esquerdo, e verdes no canto inferior direito das bordas do carto, conforme ilustra a figura 20. Agora clique no vdeo com o boto direito do mouse para inserir o nome do carto, conforme ilustra a figura 21. Digite o nome e pressione a tecla Enter.

Figura 18: Tela requerimento do arquivo de parmetro de cmera.

Figura 19: Tela para configurao do vdeo

29

Figura 20: Tela de cadastro de carto

Figura 21: Tela para salvar o carto.

Ao executar esses passos o arquivo binrio representando o carto ser gerado na pasta C:\ARToolKit\util\mk_patt\. Para finalizar o cadastramento necessrio copiar o arquivo gerado para a pasta do projeto que desejamos utilizar. Neste caso, utilizaremos o projeto simpleVMRL, ento o destino ser a pasta do projeto C:\ARToolKit\examples\ simpleVRML\.

30

4.1.3 Funes

Para construir uma aplicao em RA com ARTooKIt, necessrio a implementao de algumas funes tais como: Funo para inicializar a aplicao; Capturar um quadro de vdeo; Detectar os marcadores; Calcular as transformaes da cmera; Desenhar os objetos virtuais; Fechar o dispositivo de vdeo. O simpleVRML possui todas estas funes conforme mostrado abaixo. As funes de captura de quadro de vdeo, deteco dos marcadores, calculo de transformao da cmera e desenho de objetos virtuais so chamadas dentro da funo Idle( ). A funo responsvel para fechar o dispositivo de vdeo a quit( ), a de inicializao e configurao dos parmetros da cmera a setupCamera( ). (SANTIN, R; KIRNER, C. , 2007). 4.1.4 Atribuindo Novos Cartes e Objetos ao SimpleVMRL Utilizaremos o utilitrio do ARToolKit mk_patt para cadastrar 8 novos cartes, figura 22, com os passos j dissertados no capitulo 4.1.2. Os objetos que sero atribudos aos cartes sero objetos baixados do site

http://www.buddycom.com/vrml/ junto com objetos j existentes no SimpleVRML, localizados na pasta wrl do projeto no seguinte endereo:

C:\ARToolKit\examples\simpleVRML\Wrl. Alguns arquivos desta pasta no sero utilizados nesta aplicao, que so os arquivos snowman.wrl e snowman.dat. Estes arquivos sero apagados. Outros arquivos j existentes sero renomeados para serem utilizados na aplicao, que so os arquivos bud_b.wrl e bud_b.wrl, que sero renomeados para flor.wrl e flor.dat respectivamente. Os arquivos ficaram dispostos conforme ilustra a figura 23. Foi criado tambm um arquivo *.dat para cada novo objeto adicionado na aplicao.

31

Estes arquivos .dat ficam responsveis em fazer a referncia a seus respectivos objetos e configurar suas rotaes, transaes e escalas, conforme ilustra a figura 24.

Figura 22: Novos cartes cadastrados

Figura 23: Novos objetos adicionados na pasta Wrl

32

Figura 24: Arquivos avt.dat, flor.dat, galleon.dat e rose.dat.

Apos cadastrar os novos cartes, adicionar novos objetos e efetuar suas configuraes de rotao, escala e translao, necessrio alterar o arquivo object_data_vrml.dat, para atender as expectativas dos novos cartes adicionados e referenci-los com os arquivos *dat de cada objeto, o qual ira referenci-los com a imagem que ser sobreposta nos cartes. Neste arquivo necessrio informar o nmero de padres a serem reconhecidos. Para cada padro deve-se informar o locar do arquivo *.dat o qual ele faz referncia, bem como o local do bitmap do carto e parmetros que configuram o tamanho do carto e a posio do centro do carto. O arquivo object_data_vrml.dat alterado ficar como ilustra a figura 25. Concluindo todas estas alteraes, o jogo da memria em RA est concludo. Sendo assim, se apresentado os cartes cadastrados conforme ilustra a figura 21, eles sero sobrepostos pelos objetos ao quais eles fazem referncia conforme demonstrado na figura 26.

33

Figura 25: Contedo do object_data_vrml.dat

34

Figura 26: Demonstrativo dos cartes sobrepostos

35

5 CONCLUSO Neste trabalho, vimos os conceitos de funcionamento de RA, assim como vrias de suas utilizaes existentes e, atravs do auxilio de uma ferramenta prpria, o ARToolKit, e outros componentes necessrios, foi possvel desenvolver um aplicativo para simular uma aplicao de RA atravs de cdigos inseridos em cartes para um jogo da memria. Atravs do desenvolvimento desta aplicao, foi possvel perceber vrios pontos importantes para o andamento do aplicativo, como a necessidade de uma cmera fixa e de alta qualidade para reconhecimento e visualizao das imagens, assim como um local com iluminao adequada para permitir a alta resoluo dos cartes para a cmera. Tambm foi possvel perceber que a ferramenta ARToolKit e openVRML, apesar de serem bem vistas no mercado como ferramentas de alta qualidade para o trabalho deste tipo de aplicao, devemos ser cautelosos, principalmente na instalao e configurao das mesmas. Muitos problemas encontrados durante o desenvolvimento do aplicativo foram gerados pelo fato de utilizarmos o Visual Studio 2010, quando se necessitava do Microsoft Visual Studio. NET 2003 ou Visual Studio 6 para realizao de alteraes no ARToolKit. Com isso foi preciso realizar a converso do projeto para a verso mais nova do Visual Studio e tambm foi preciso alterar local da gerao dos executveis dos exemplos para seu prprio diretrio, o qual antes era gerado na pasta bim do ARToolKit. Com isso, foi necessrio copiar algumas bibliotecas e pastas para o diretrio do exemplo que se deseja executar. Porm, isto no invalidou o desenvolvimento do projeto. O aplicativo foi terminado com xito, atendendo as expectativas iniciais do projeto, tornando possvel demonstrar o uso da RA para uma aplicao em comum, neste caso, entretenimento atravs do jogo interativo da memria.

36

6 REFERNCIAS SANTOS FILHO, C. O. Estudo da aplicao de Tecnologia de Realidade Aumentada. Recife: Escola Politcnica de Pernambuco, 2005. Disponvel em: http://dsc.upe.br/~tcc/20052/ClovisSantos.pdf Acessado em: Fevereiro/2010

CARDOSO, A. et al. Realidade Aumentada aplicada em Jogos Educacionais. Minas Gerais: V Workshop de Educao em Computao e Informtica do Estado de Minas Gerais, 2006. Disponvel em:

http://www.inf.pucpcaldas.br/~joao/weimig2006/pdf/WEIMIG2006ArtigoEzequiel.p df Acessado em: Maio/2010.

GATTASS, M. Introduo a CG. Rio de Janeiro: Pontificia Universidade Catlica do Rio de Janeiro (PUC-Rio), 2005. Disponvel em: http://www.tecgraf.pucrio.br/~mgattass/cg/pdf/01_Introducao.pdf Acessado em: Maio/2010

TORI, R. et al. Fundamentos e Tecnologia de Realidade Virtual e Aumentada. Belm Par: VIII Symposium on Virtual Reality , 2006. Disponvel

em:http://www.sbc.org.br/cerv/documentos/Fundamentos_Tecnologia_Realidade_ Virtual_e_Aumentada.pdf Acessado em: Maio/2010

BUCCIOLI, A. A. B. et al. Desenvolvimento de jogos em Ambiente de Realidade Aumentada. computador e So Paulo: Simpsio Brasileiro de jogos para Digital, 2005. Disponvel Acessado em: em:

Entretenimento

http://www.realidadeaumentada.com.br/artigos/14534.pdf Maio/2010

ZORZAL, Ezequiel Roberto; KIRNER, Claudio. Jogos educacionais em Ambiente de Realidade aumentada. Jogos e Entretenimento So Paulo: IV Workshop Brasileiro de 2005. Disponvel em:

Digital,

http://www.realidadeaumentada.com.br/artigos/WRA2005_ZORZAL-KIRNER.pdf Acessado em: Maio/2010

37

KIRNER, C. Sistemas de Realidade Virtual. UFSC - UEM - UFSM: Sociedade Brasileira de Computao Regional Sul, 1997. Disponvel em:

http://www2.dc.ufscar.br/~grv/tutrv/tutrv.htm Acessado em Fevereiro/2010

ARIMA, F. Bem Vindo a Realidade Aumentada. Portal Editora Abril Disponvel em: http://info.abril.com.br/professional/desenvolvimento/bem-vindo-a-realidade-

aumentada.shtml?4 Acessado em: Maio/2010.

PORTAL

HITLAB

(2010)

Introduction

to

ARToolKit.

Disponvel

em:

http://www.hitl.washington.edu/artoolkit/documentation/userintro.htm em: Abril/2010

Acessado

PORTAL

XBOX

(2010).

Disponvel

em:

http://www.xbox.com/pt-BR/kinect

Acessado em: Setembro/2010

PORTAL BRAINSTORM. Doritos Sweer Chilli cria a maior realidade aumentada do mundo. Disponvel em:

http://www.brainstorm9.com.br/trends/doritos-sweet-chilli-cria-a-maior-realidadeaumentada-do-mundo/ Acessado em: Setembro/2010

PORTAL FABER LUDENS. Aplicaes Comerciais de Realidade Aumentada. Disponvel em: http://www.faberludens.com.br/pt-br/node/187 Setembro/2010 Acessado em:

PORTAL MAXWELL ANDERSON. Configurando a OpenGL e a GLUT no Microsoft Visual Studio 2008. Disponvel em:

http://maxwellanderson.wordpress.com/2009/03/22/configurando-a-opengl-e-oglut-no-microsoft-visual-studio-2008/ Acessado em: novembro/2010

38

PORTAL MAXWELL ANDERSON. Configurando o ARToolKit e a OpenVRML no Microsoft Visual Studio 2008 / 2010 Parte 1/2 Disponvel em: http://maxwellanderson.wordpress.com/2009/05/28/configurando-o-artoolkit-e-aopenvrml-no-microsoft-visual-studio-2008-parte-12/ novembro/2010 Acessado em:

PORTAL MAXWELL ANDERSON. Configurando o ARToolKit e a OpenVRML no Microsoft Visual Studio 2008 / 2010 Parte 2/2 Disponvel em: http://maxwellanderson.wordpress.com/2009/08/31/configurando-o-artoolkit-e-aopenvrml-no-microsoft-visual-studio-2008-parte-22/ novembro/2010 Acessado em:

SANTIN, R; KIRNER, C. ARToolKIT: Biblioteca para Desenvolvimento de Aplicaes de Realidade Aumentada. Piracicaba - So Paulo, 2007. Disponvel em: http://www.ckirner.com/download/capitulos/Cap-5-ARToolKit-LivroTecno.pdf

Acessado em Setembro/2010