Baixe o app para aproveitar ainda mais
Prévia do material em texto
Comparação Entre Ferramentas de Realiade Virtual e Aumentada: ARToolkit e NyARToolkit Ariel R. Machado1, Crischarles D. Arruda1, Kelvyn Yago S. Zanato1, Vinícius Fernandes M. Leão1 Luciana P. Nedel1, Rafael H. Bordini, Flávio Rech Wagner1, Jomi F. Hübner3 1Instituto de Computação – Universidade Federal de Mato Grosso (UFMT) Cuiabá – MT – Brasil ariel.r.machado@gmail.com, crischarles.ad03@gmail.com, kelvynzanatoo@gmail.com,leaomt.19@gmail.com Resumo. Com objetivo de fazer um comparativo entre ferramentas de desenvolvimento para aplicações de Realidade Virtual e Aumentada, afim de encontrar a melhor ferramenta para aprendizagem, direcionado a docentes e discentes. Foram escolhidas duas entre as mais populares, o ARToolkit e o NyARToolkit, além de ambas serem open source. Neste artigo são demonstradas suas principais características, particularidades, vantagens e desvantagens de cada utilização. Para chegar à conclusão foram realizados testes operacionais cotidianos na área de desenvolvimento, além de explorar os recursos disponíveis de cada aplicação. 1. Introdução Nos últimos anos, as aplicações de Realidade Virtual e Aumenta vêm ganhado espaço no mercado e crescendo constantemente, utilizado principalmente em áreas como educação ou em campanhas de marketing, seja em rótulos de produtos ou panfletos. Embora haja um grande crescimento, ainda há uma dificuldade de encontrar recursos no desenvolvimento de aplicações, principalmente na aprendizagem de utilização. O objetivo deste artigo é orientar sobre os recursos de cada ferramenta, também ajudar na escolha de qual utilizar para quem está iniciando na área de desenvolvimento e docentes possam avaliar qual a melhor escolha de recomendação para seus alunos. Foram escolhidas ferramentas open source para os testes, por possuírem fácil acesso aos usuários e com a finalidade de que ao ler o artigo se interessar ao leitor, poder testa-los na prática então tirar suas próprias conclusões, a partir da apresentação destas ferramentas e características. 2. ARToolKit O ARToolKit é uma biblioteca de desenvolvimento de aplicações de Realidade Aumentada (RA), bastante popular na comunidade de RA. Isto acontece pelo fato da biblioteca fornecer soluções de rastreamento 3D, em tempo real, com baixo custo computacional. Além disso, o ARToolKit é amplamente utilizado por ser distribuído livremente para fins não comerciais, incentivando a liberdade para os usuários executarem, estudarem e modificarem os códigos disponíveis na biblioteca de acordo com as suas necessidades O rastreamento óptico oferecido pelo ARToolkit possibilita extrair de forma rápida a posição e orientação de padrões marcadores, apenas com o uso de um computador e uma web câmera simples. Nesse caso, a interação não sofre restrições de cabos utilizados nos diversos tipos de dispositivos de rastreamento. Por esses motivos e o baixo custo do hardware necessário para a sua implementação, o ARToolKit tem sido utilizado para o desenvolvimento de várias aplicações de Realidade Aumentada, sendo o software mais popular na sua categoria. 2.1 Fundamentos do ARToolKit A biblioteca ARToolKit implementada em C e C++ oferece suporte a programadores para o desenvolvimento de aplicações de RA. Essa biblioteca utiliza o rastreamento óptico, que implementa técnicas de visão computacional para identificar e estimar em tempo real a posição e a orientação de um marcador (moldura quadrada desenhada em papel) em relação ao dispositivo de captura de vídeo. Assim, o cálculo da correlação entre os dados estimados do marcador real e a sua imagem, possibilita posicionar objetos virtuais alinhados à imagem do marcador. A saída de aplicações desenvolvidas com ARTooKit pode ser visualizada através de dispositivos de visão indireta, não imersivos, ou visão direta, imersivos. A diferença de imersão entre as duas formas de visão, está relacionada à autenticidade impelida ao sentido visual do usuário. Os dispositivos de visão indireta, como os monitores, não imersivos, promovem a visualização conjugada das cenas virtual e real fora do espaço alvo de atuação. Já a visualização direta, imersiva, pode ser obtida por meio dos dispositivos como os HMDs, que fornecem a visualização combinada das cenas diretamente no espaço alvo de atuação da aplicação. Os objetos virtuais visualizados em aplicações desenvolvidas com o ARToolKit podem ser implementados com OPENGL ou com VRML. A visualização dos objetos virtuais é realizada no momento da inserção de seus respectivos marcadores no campo de captura da câmera de vídeo. 2.2 Funcionamento do ARToolKit A biblioteca de programação ARToolKit disponibiliza um conjunto de funções que oferecem suporte ao desenvolvimento de aplicações de Realidade Aumentada. Para implementar uma aplicação simples de RA, o programador necessita conhecer as funcionalidades de algumas funções dessa biblioteca e seguir os seguintes passos: • Iniciar a configuração do vídeo; ler o arquivo de cadastramento dos marcadores; ler os parâmetros da câmera; • Capturar um quadro do vídeo; • Detectar e identificar os marcadores; • Calcular a transformação do marcador relativa à câmera; • Desenhar o objeto virtual referente ao marcador; • Encerrar a captura de vídeo; Figure 1. Funcionamento de uma de RA 2.2.1 Exemplo de Aplicação de RA (simpleVRML) O “simpleVRML” é um programa que possibilita visualizar objetos virtuais, escritos na linguagem VRML, sobrepostos aos marcadores. No exemplo utiliza-se a biblioteca OpenVRML para a renderização dos objetos VRML. Figure 2. Resultado da execução do simpleVRML Essa aplicação utiliza o arquivo de configuração “object_data_vrml” para atrelar um marcador a um objeto virtual. Localizado em “{ARToolKit}\bin\Data”, esse arquivo armazena o relacionamento entre o arquivo bitmap do marcador, disposto no diretório “Data”, e o arquivo de referência ao objeto VRML, localizado em “{ARToolKit}\bin\wrl”. A Figura 4 mostra o arquivo “object_data_vrml”, que contém dois marcadores cadastrados: o “patt.hiro” e o “patt.kanji”. O marcador “patt.hiro” está associado a um arquivo de referência VRML, denominado “bud_B.dat”, enquanto o marcador “patt.kanji” encontra-se associado ao arquivo “snoman.dat”. Em virtude dessa associação de arquivos, é possível adicionar objetos virtuais de maneira muito simples, bastando editar o arquivo “object_data_vrml”. Os demais exemplos disponibilizados no ARToolKit possuem os objetos virtuais implementados diretamente em seu código, de forma que, para adicionar novos elementos virtuais, é necessário incluir o código do objeto virtual em openGL na aplicação e a compilar novamente. Figure 2. Referência de marcadores e objetos virtuais VRML 3. NyARToolkit NyARToolkit é um projeto desenvolvido em uma biblioteca baseada em ARToolKit, este projeto (também conhecido por versão) foi criado para maquinas virtuais Java, C#, C++, ActionScript3 e Android. Como ARToolKit, NyARToolkit fornece rastreamento baseado marcador e Recurso Natural. No entanto, o software foi otimizado para facilidade de portabilidade entre diferentes linguagens de programação. NyARToolkit é uma ótima opção para quem quer desenvolver aplicações AR que podem ser executadas em diferentes plataformas e sistemas operacionais. 3.1 Principais características do NyARToolkit: Marcador de rastreamento baseado AR; Recurso Natural de Seguimento (disponível apenas na versão Professional); Suporte para plataformas de desktop e móveis; Reconhecimento marcador otimizado e melhorado; Extensões para Unidade e de processamento disponível para C #e Java, respectivamente. NyARToolkit Professional (com o acompanhamento de Recurso Natural de Seguimento) está disponível apenas sob licença comercial. Porém, a porta aberta fonte original foi atualizado para a versão 4.x do ARToolKit e pode ser baixado gratuitamente e utilizado sob a licença GPLv2 a partir de: nyatla.jp/nyartoolkit/wiki/index.php?FrontPage.en Uma desvantagem é a falta de informações técnicas e também pela documentação base estar em Japonês torna-se difícil o entendimento de como usá-lo. 3.2 NyARToolkit para Android: Um exemplo de programa de NyARToolkit aplicativo no Google Android Emulator. Parte de detecção do marcador é o mesmo de NyARToolkit originais (apenas algumas mudanças são aplicadas). A Imagem de vídeo é enviada pelo programa em Java que usa a conexão de soquete para o emulador porque a emulação de dispositivo de câmera não foi implementada no Android SDK. O arquivo inclui o arquivo de projeto Eclipse e um programa de demonstração para enviar imagens que são tomadas pela câmara para o emulador. São necessários Android SDK e o plugin Eclipse para experimentá-lo no Eclipse. 4. Comparação entre ARToolKit e NyARToolkit Neste artigo aplicamos testes em duas ferramentas(toolkits) de Realidade Virtual e Aumentada com objetivo de auxiliar professores e acadêmicos na escolha da melhor ferramenta para se aplicar no ensino e aprendizagem de RV e RA. Foram escolhidas as ferramentas ARToolkit e a NyARToolkit por serem bastantes populares e possuírem versões livres e de código aberto. Tabela 1. Quadro comparativo entre características das ferramentas A seguir, seguem algumas considerações identificadas na análise das ferramentas. 4.1 Comparação - ARToolkit 4.1.1 Vantagens: Os diversos documentos, exemplos e tutoriais de instalação, manipulação e desenvolvimento disponíveis para os interessados na Realidade Virtual e Aumentada; Facilidade em encontrar exemplos compilados da ferramenta para realizar testes e demonstrações; Possui uma rápida renderização dos objetos virtuais. 4.1.2 Desvantagens: Suportar apenas dois formatos de modelos 3D; Não haver novas atualizações disponíveis; Complexidade da própria linguagem C e C++; Não é portável a implementação de nós de sons e texturas. 4.2 Comparação - NyARToolkit 4.2.1 Vantagens: Ter disponibilidade para diversas plataformas e linguagens; Melhor abstração através da liguagem java, C# e outras; Renderizar diversos formatos de modelos 3D; Interações com áudio e vídeo; Portabilidade. 4.2.2 Desvantagens: Documentação apenas em japonês; Lenta na renderização de objetos virtuais; Apresentar mais lags e fantasmas que outras versões de aplicações RA. Outro ponto relevante a ser citado é a correta instalação dos pré-requisitos necessários para o funcionamento das ferramentas, conforme citado no quadro anterior. 6. Conclusão Pelas análises realizadas nas ferramentas ARToolkit e NyARToolkit concluímos que a melhor escolha depende muito do público e finalidade. Pois, a ferramenta ARToolkit é amplamente utilizada em meios acadêmicos, por apresentar resultados satisfatório para ensino e aprendizado, e também, nas demonstrações dos recursos da RA em aplicações já compiladas, porém para área comercial deixa à desejar pelo fato de apresentar algumas restrições conforme já citado "suportar poucos formatos de modelo 3D e a não implementação de nós de áudio e vídeo". Por outro lado, ou seja, para fins comerciais se recomenda a ferramenta NyARToolkit por ser uma ferramenta com suporte para diversas linguagem, e apresentar recursos de portabilidade entre plataformas. E também, pela abstração da ferramenta que a torna mais intuitiva no desenvolvimento de sistemas RVA tanto na área acadêmica como na comercial onde os sistemas orientados objetos tem ganhado espaço dos sistemas estruturados, por apresentarem diversas vantagens, não necessário citar nesse artigo. 6. Referências Santin, Rafael, e Cláudio Kirner. ARToolKit: Biblioteca para Desenvolvimento de Aplicações de Realidade Aumentada. Vol. 1, em Tecnologia para o Desenvolvimento de Sistemas de Realidade Virtual e Aumentada, por A. Cardoso, C. Kirner, E. Lamounier e j. Kelner, 91-109. Recife - PE: Universitária da UFPE, 2007. Braga, Robson F., Silva, Uellisson L. da, Iwano, Thiciany M. , Scherer, Daniel. Estudo comparativo de toolkits de Realidade Virtual e Aumentada visando aplicação educacional. Centro de Ciências e Tecnologia – Universidade Estadual da Paraiba (UEPB) - Campina Grande – PB – Brasil, 2012. Santin, R. Kirner, C.” Artoolkit: Conceitos e Ferramenta de Autoria Colaborativa”, http://www.ckirner.com/sacra/ARTK-tutor-CK-final.pdf, Fevereiro. Souza, Camila M. de, Cheung, Edgar W. C., Mello, Patricia B. de. O uso da realidade aumentada como guia virtual para exploração de ambientes reais. Universidade Anhembi Morumbi. São Paulo, 2011. NyAtla. “NyARToolkit: ARToolKit Class Library for Java/C#/Android” http://nyatla.jp/nyartoolkit/wiki2/index.php?FrontPage.en,fevereiro. Google.”Google Developers”, http://code.google.com/android/,fevereiro WENDER, A. Silva et al. Aplicações de Realidade Aumentada na Criação de Interfaces Distribuídas. Aplicações de Realidade Virtual e Aumentada. Anais do XI Simpósio de Realidade Virtual e Aumentada. Porto Alegre: Sociedade Brasileira de Computação (SBC), 2009, p. 108-127. Lamb, P. “ARToollkit”, http://www.hitl.washington.edu/artoolkit, Fevereiro. ARToollWorks. “NyARTOOLkit” http://www.artoolworks.com/products/open-source-software/nyartoolkit/, Fevereiro.
Compartilhar