Integrando Recursos de Realidade Aumentada e Código de Barras Bidimensionais no Desenvolvimento de um Guia de Turismo Pedro Clarindo da Silva Neto1, Clodoaldo Nunes1, Eunice P. dos Santos Nunes2 1 Departamento da Área de Informática – Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso (IFMT) Rua Prof. Zulmira Canavarros, no 95 – 78005-200 – Cuiabá-MT – fone: (65) 3314-3570 2 Instituto de Computação – Universidade Federal de Mato Grosso (UFMT) Av. Fernando C. da Costa, no 2367 – 78060-900 – Cuiabá-MT – fone: (65) 3615-8791 {pedro.neto, clodoaldo.nunes}@cba.ifmt.edu.br, [email protected] Abstract The popularization of the electronic computational equipments occurred in the beginning of the decade of 80s, the emergence of the first personal computers, confronted the users the need of innovating the form they interact with these equipments. The Augmented Reality is a kind of technology in which virtual objects are added to the real environment, increasing the field of the user’s vision and aiming at considering a new form of interaction between the man and the computer. This study is about the Augmented Reality Technology, its concepts and the main libraries that implement this technology. Based on this technology a case study was carried out, in order to have an application in the area of Tourism for the World Cup of 2014 which will take place in Cuiabá one of the cities that will host the event. 1. Introdução Registros de tentativas de misturar o real com o virtual já aparecem datadas milênios atrás, gravadas em abrigos ou cavernas, como em Lascaux na França (Figura 1), onde figuras do cotidiano aparecem nas paredes e tetos, ou também em superfícies rochosas ao ar livre [1]. Figura 1. Gravuras nas cavernas em Lascaux [1] Nessa época os desenhos e pinturas tinham cunho “mágico”, onde se pintava o animal que se desejava caçar e obter características como força, rapidez e faro aguçado. O crescente avanço das tecnologias e meios de comunicação proporcionou novas e enriquecedoras experiências para os seus usuários. Sendo a Realidade Aumentada (RA) uma forma de interface que permite combinar no ambiente real, objetos criados a partir de computação gráfica, é uma tecnologia que tem potencial para ser utilizada na área de Turismo, que é o propósito desse trabalho. Com esse intuito, a RA, vem ao encontro da necessidade de integrar objetos virtuais no ambiente real para gerar uma aplicação na área de Turismo. Como exemplo da utilização da tecnologia de RA na área de Turismo, pode-se citar o mTrip Travel Guide, um aplicativo para iPhone que permite visualizar os restaurantes ao redor de uma determinada área, as distâncias dos estabelecimentos em relação a posição do usuário, o tipo de culinária, faixas de preço, a classificação dada por outros usuários, entre outras informações [2]. O objetivo principal deste trabalho é apresentar o desenvolvimento de um guia de turismo para celular, usando as tecnologias de RA e QR Code (Quick Response Code), para a cidade de Cuiabá, visando à demanda turística da Copa do Mundo de Futebol em 2014, onde Cuiabá é uma das cidades-sede. Neste primeiro momento, o guia utiliza códigos de barra de duas dimensões para armazenar URLs de localizações geográficas e um sistema de Realidade Aumentada que, no protótipo, exibe ao usuário uma maquete 3D de um ponto turístico de interesse do usuário. Seguindo esta abordagem o presente trabalho apresenta as tecnologias de código de barras bidimensionais, a API Google Chart Tools utilizada para criar o gráfico QR Code, e a biblioteca FLARToolKit, utilizada no desenvolvimento do ambiente de RA proposto. Este trabalho está estruturado da seguinte maneira: a seção 2 apresenta as tecnologias utilizadas para criação do protótipo e suas características. A seção 3 apresenta o protótipo, e a seção 4 apresenta as conclusões deste trabalho. 2. Tecnologias utilizadas O desenvolvimento do protótipo está alicerçado nas tecnologias de RA e de código de barras bidimensionais que serão apresentadas nesta seção. A RA é definida por Azuma, Baillot e Behringer (2001) como sendo um sistema que complementa o mundo real com objetos virtuais, gerados computacionalmente, de tal forma que aparentem coexistir no mesmo espaço do mundo real [3]. Uma maneira de compreender a relação entre os ambientes reais e virtuais, a Realidade Aumentada e Realidade Virtual, associados aos conceitos de Realidade Misturada e Virtualidade Aumentada, é considerar o diagrama “reality-virtuality continuum”, desenvolvido por [4]. Figura 2. Virtuality Continuum de Milgram [4] Este diagrama é bastante preciso, principalmente por sugerir uma situação que se dá em diferentes níveis e graus, passando dos ambientes reais até os virtuais. A extremidade à esquerda é constituída exclusivamente de objetos reais, incluindo tudo o que pode ser observado na visualização de uma cena do mundo real, quer seja diretamente, pessoalmente ou por meio de algum vídeo. A extremidade à direita define ambientes constituídos apenas por objetos virtuais, podendo ser imersivo ou não imersivo. Neste trabalho o ambiente implementado envolve a tecnologia de RA, visto que o propósito do guia turístico móvel é inserir cenas reais no ambiente virtual. Para implementar o ambiente de RA, foi utilizada a biblioteca FLARToolKit. A FLARToolKit é baseada na NyARToolkit, uma versão da ARToolKit desenvolvida na linguagem Java. Mais precisamente, a FLARToolKit reconhece o marcador da imagem de entrada e calcula sua posição e direção no mundo 3D. As modelagens de gráficos 3D não estão contempladas nessa biblioteca, porém, possui suporte para as mais populares classes de engines 3D (Papervision3D, Away3D, Sandy, Alternativa3D) [5]. As aplicações de RA com a FLARToolKit baseiam-se em marcadores fiduciários (marcadores de detecção), que são identificados por um dispositivo de entrada de imagem, geralmente uma webcam, que inicializa um determinado evento, uma animação 3D, um vídeo, etc , e são projetados na tela do computador misturando os elementos da animação com o ambiente ao redor, aumentando a realidade. Na Figura 3 aparece um teste de uma aplicação de RA desenvolvida com a FLARToolKit. Como a FLARToolKit utiliza Action Script, é possível desenvolver aplicações com o software Adobe Flash, que através de seu plugin torna a aplicação portável para a web, fator esse que facilita a disseminação da aplicação uma vez que o usuário necessita somente do plugin instalado, não necessitando realizar outra instalação. Figura 3. Aplicação de Realidade Aumentada sendo executada na web através do plugin Flash Player: A – Página inicial da aplicação, B – Escolha do objeto 3D a ser exibido, C – Exibição do objeto 3D (roda gigante) no monitor, D – Ambiente puramente real, onde estão identificados a webcam e o marcador na caixa do Toddynho. Outra tecnologia utilizada foi o código de barras bidimensionais do tipo QR Code, por meio da API Google Chart Tools. Do inglês Quick Response Code, o QR Code (Figura 4) é um código de resposta rápida. Criado pela empresa Denso Wave em 1994, logo se tornou um código altamente utilizado, devido à eficiência na sua aplicação. O QR Code tem como objetivo armazenar informações em uma imagem bidimensional [6]. Tabela 1: Parâmetros obrigatórios do Google Chart Tools para geração de QR Code [7] Parâmetro Descrição cht=qr Define que o gráfico é do tipo QR Code. chl=<data> Os dados que serão enviados, nesse caso, a URL. chs=<largura>x<alt ura> Define a largura x altura (em pixels) do QR Code criado. Para gerar o QR Code é necessário inserir na barra de endereços de um navegador os parâmetros desejados junto ao endereço base do Google Chart Tools. O caracter “?” é utilizado para separar o endereço base do Google Chart Tools dos parâmetros “?”, e tem como separador de parâmetros o caracter “&”. A fim de exemplo, para gerar um QR Code que armazene a url “http://www.tuxcuiabano.com”, e que possua as dimensões de 300 pixels, os parâmetros serão os seguintes: Figura 4. Exemplo de QR Code Também conhecidos como hardlinks ou physical world hyperlinks. QR Codes podem armazenar até 4.296 caracteres alfanuméricos de texto como, por exemplo, um endereço de URL, que é o caso do protótipo apresentado neste trabalho. Desenvolvida pela empresa de tecnologia Google, a API Google Chart Tools é um conjunto de ferramentas que tem como objetivo principal transformar dados em gráficos. Como toda API, ela fornece rotinas e padrões para a sua utilização. As funções disponibilizadas por qualquer API têm o objetivo de prover funcionalidades que possam ser reutilizadas em outros projetos, evitando assim a reconstrução de uma solução. Para a criação de um QR Code são utilizados os parâmetros demonstrados na Tabela 1. • • • cht=qr, define que o tipo do gráfico é QR Code. chl= http://www.tuxcuiabano.com, define o dado a ser armazenado. chs=300x300, define as dimensões do gráfico (em pixels). Enviando os dados da url completa, conforme Figura 5, na barra de endereço do navegador é gerado o QR Code, que armazena a url desejada: Figura 5. URL completa para geração do QR Code 3. Proposta do Guia de Turismo A proposta do guia surgiu a partir de uma análise do “Roteiro City Tour – Um olhar cultural por Cuiabá”, distribuído pela Secretaria de Turismo de Cuiabá. Percebeu-se uma grande dificuldade de localizar os atrativos turísticos, uma vez que o tamanho do mapa da cidade bem como os números dos pontos turísticos é pequeno. Somado a isso, são apresentadas poucas informações sobre cada atrativo, sendo somente informações textuais. Para resolver esse problema, o guia oferece informações sobre a localização geográfica do ponto turístico por meio do Google Maps. Além de oferecer uma informação visual da atração turística utilizando um modelo de objeto 3D em um sistema de RA com a biblioteca FLARToolKit. A Figura 6 exibe o protótipo do guia. Essa seria uma das páginas do guia impresso que o usuário irá utilizar. O protótipo está baseado em um QR Code que aponta a localização geográfica da Igreja de Nossa Senhora do Rosário e São Benedito, e apresenta, por meio de um ambiente de Realidade Aumentada, um modelo em 3D da igreja. Figura 6. Protótipo do Guia de Turismo A Figura 7 exibe o teste realizado com o QR Code gerado. Para esse teste foi utilizado o celular Motorola Milestone e o aplicativo BarCode Scanner que é baseado na biblioteca de código fonte aberta ZXing. quando aberta via navegador, D – Saída exibida pelo Google Maps Para o desenvolvimento da aplicação de RA foi gerado um marcador personalizado através do software ARToolKit Marker Generator. O Marker Generator utiliza um dispositivo de vídeo conectado ao computador, neste caso uma webcam para reconhecer o desenho do marcador. Após reconhecer o desenho, é gerado um arquivo do marcador que dever ser salvo com a extensão “.pat” . Com o marcador de detecção criado, é necessário entender a aplicação que possibilita a implementação da Realidade Aumentada. Resumidamente, ela apresenta um objeto 3D a partir de um monitor com a captura, através de uma webcam, do marcador de detecção criado. Para a implementação do código são necessárias as bibliotecas FLARToolKit e Papervision3D, que é um motor de renderização 3D otimizado para Flash Image API que permite trabalhar com transformação de objetos complexos em 3D. Como a FLARToolKit utiliza Action Script como linguagem, foi utilizado para esse experimento uma versão de demonstração do software Adobe Flash Professional CS5, que pode ser obtido através do site da Adobe. Com essa versão é possível utilizar o Adobe Flash Professional CS5 pelo período de 30 dias. Para a criação do objeto 3D foi utilizado o software Google Sketchup, versão gratuita que após renderizado disponibiliza um arquivo com a extensão “.dae”. Em seguida, com o projeto aberto no Adobe Flash Professional CS5, é editado o arquivo Action Script para alterar os parâmetros onde são configurados os arquivos do marcador, e o arquivo do objeto 3D como mostra a Figura 8. Figura 8. Alterações do arquivo Action Script. A – Marcador de detecção, B – Objeto 3D Figura 7. Teste do QR Code gerado com o BarCode Scanner. A – Reconhecimento da URL, B – Tela que permite escolher abir a URL diretamente no navegador ou no Aplicativo Google Maps, C – Saída exibida Após configurado os parâmetros do marcador e do objeto 3D, é possível criar um arquivo “.swf” compatível com o plugin Adobe Flash. Também é possível criar uma aplicação portável para web, onde o Adobe Flash Professional CS5 cria um arquivo HTML onde é inserido o arquivo “.swf” através da tag <object>. Ao usuário final toda essa tecnologia é transparente, ficando a cargo do mesmo, somente apontar o marcador para a aplicação web referente à atração turística desejada. O resultado dessa página HTML é verificado na Figura 9, onde é exibido o modelo 3D da Igreja de Nossa Senhora do Rosário e Capela de São Benedito. 5. Referências [1] Filho, B. D. Pequena História da Arte. 3. ed. Campinas: Papirus, p. 17-19, 1989. [2] MTRIP. Augmented Reality on the iPhone: a new journey for travelers. Disponível em: http://blog.mtrip.com/2010/06/augmented-reality-travel/. Acesso em 22 dez. 2010. [3] Azuma, R.; Baillot, Y.; Behringer, R. Recent Advances in Augmented Reality. IEEE Computer Graphics and Applications, v. 21, n. 6, p. 34-47, 2001. [4] Milgram, P., Takemura, H., Utsumi, A., Kishino, F. Augmented Reality: A class of displays on the realityvirtuality continuum. Telemanipulator and Telepresence Technologies, v. 2351, p. 282-292, 1994. [5] Spark Project. What is Flartoolkit, 2010. http://www.libspark.org/wiki/saqoosha/FLARToolKit/en [6] Ominiplanar. QR Code 2D Bar Code Information, 2011. http://www.omniplanar.com/QR-Code-2D-BarCode.php [7] Google Code. Google Chart Tools: Infographics, 2010. http://Code.google.com/intl/ptBR/apis/chart/infographics/docs/qr_Codes.html Figura 9. Aplicação web em RA projetando o modelo 3D da igreja 4. Conclusões Aplicações com RA tem crescido em diversas áreas de atuação, como Educação, Entretenimento, Turismo, Medicina, entre outras e, consequentemente surgem novas tecnologias que permitem a integração com a RA, favorecendo interfaces mais ricas, proporcionando ao usuário novas experiências de interação. No caso da área de Turismo, especificamente, a RA pode ser amplamente utilizada, devido ao fato que essa área está diretamente ligada às informações que podem ser transmitidas por meio de vídeos, maquetes de monumentos, indicação de locais históricos, e que, atualmente, pouco se modificou na maneira de apresentar essas informações. Um fator de relevância foi conseguir propor uma solução tecnológica por meio de tecnologias já existentes, apenas integrando-as, além de prover serviços à sociedade através de uma demanda existente que é a Copa do Mundo de 2014. Atualmente o projeto encontra-se em fase de prototipação e testes para definição de qual deve ser o melhor formato de impressão dos guias e da possibilidade da criação de um cliente específico para outros dispositivos móveis (smartphones, tablets, etc).