View
215
Download
0
Category
Preview:
Citation preview
Universidade Estadual de Maringá Centro de Tecnologia - Departamento de Informática Especialização em Desenvolvimento de Sistemas para Web
Uma abordagem de desenvolvimento baseada em Realidade
Aumentada para Web
Renan Ribeiro Honorato
Prof. Dr. Renato Balancieri Orientador
Maringá, 2011
Universidade Estadual de Maringá Centro de Tecnologia - Departamento de Informática Especialização em Desenvolvimento de Sistemas para Web
Renan Ribeiro Honorato
Uma abordagem de desenvolvimento baseada em Realidade
Aumentada para Web
Trabalho submetido à Universidade Estadual de Maringá
como requisito para obtenção do título de Especialista
em Desenvolvimento de Sistemas para Web.
Orientador: Prof. Dr. Renato Balancieri
Maringá, 2011
RESUMO
Para se manterem ativas, as aplicações web precisam estar em constante evolução,
acompanhando o aumento do conhecimento dos usuários que se tornam cada dia mais
exigentes. Isso estabelece que os desenvolvedores estejam sempre em busca do
aperfeiçoamento de suas aplicações, com a realização de pesquisas que permitam a inclusão
de novos recursos e funcionalidades para manter e obter novos usuários. Com base neste
ambiente, pode-se aplicar a tecnologia de realidade aumentada, possibilitando ao usuário
melhor compreensão das informações, maior interação com a aplicação e novas possibilidades
de expansão de negócios. Neste trabalho, a realização da pesquisa exploratória permitiu uma
melhor compreensão da tecnologia de realidade aumentada, possibilitando, dessa forma, a
efetivação da pesquisa aplicada e descritiva, com o objetivo de desenvolver e apresentar uma
abordagem de desenvolvimento baseada em realidade aumentada para a web, identificando as
principais ferramentas que apoiam o desenvolvimento nessa área. Para uma melhor
experiência da abordagem, apresenta-se a execução das etapas para a aplicação de realidade
aumentada em um site fictício de comércio eletrônico, além de identificar as principais
dificuldades durante o desenvolvimento e vantagens em sua utilização. A apresentação da
abordagem de desenvolvimento baseada em realidade aumentada para a web à comunidade
cientifica possibilita que novos estudos sejam realizados a fim de aperfeiçoar a abordagem
inicial proposta com a inclusão de novos recursos e tecnologias.
Palavras-Chave: Realidade Aumentada, Desenvolvimento Web, Abordagem de
Desenvolvimento.
ABSTRACT
To remain active, web applications need to be constantly evolving, following the increased
knowledge of the users who become even more demanding. This establishes that developers
are always looking for improvement of their applications, with doing research that allows the
inclusion of new features and functionalities to keep and get new users. Based on this
ambient, in can be applied to augmented reality technology, enabling the user to better
understand the information, greater interaction with the application and new opportunities for
business expansion. In this work, the exploratory research allowed a better understanding of
augmented reality technology, thus enabling the realization of applied and descriptive
research, with the objective to develop and present a development approach based on
augmented reality for web, identifying the main tools which support development in this area.
For the best experience to use of the model, it is presented the execution of the steps to the
application of augmented reality in an e-commerce fictitious site, identify the principal
difficulties during the development and benefits in its use. The presentation of the a
development approach based on augmented reality for web to the scientific community
enables new studies to be conducted in order to improve the initial model proposed with the
inclusion of new features and technologies.
Keywords: Augmented Reality, Web Development, Development Approach.
LISTA DE FIGURAS
Figura 2.1 – Sensorama de Morton Heilig (Fonte: CRAMER, 2004). ...................................... 9
Figura 2.2 – Demonstração com o Ultimate Display (Fonte: CRAMER, 2004)...................... 10
Figura 2.3 – Piloto utilizando capacete com o simulador VCASS e demonstração da visão do
usuário (Fonte: PIMENTEL, 1995 apud NETTO, MACHADO e OLIVEIRA, 2002). .......... 11
Figura 2.4 – Diagrama de aplicação de realidade aumentada e demonstração de utilização
(Fonte: BARFIELD e CAUDELL, 2001). ............................................................................... 12
Figura 2.5 – Demonstração de ambiente com realidade aumentada espacial (Fonte: BIMBER
et al., 2005 apud BIMBER e RASKAR, 2005). ...................................................................... 13
Figura 2.6 – Demonstração de ambiente com ARToolKit (Fonte: KIRNER e TORI, 2006). .. 13
Figura 2.7 – Demonstração de ambiente com FLARToolKit (Fonte: VELOSO et al., 2011). . 14
Figura 2.8 – Evolução Histórica de Realidade Aumentada (Fonte: Autor).............................. 15
Figura 2.9 – Demonstração de sistema de visão por vídeo baseado em monitor (Fonte: Autor).
18
Figura 2.10 – Diagrama adaptado e modelo de dispositivo de visão ótica direta (Fonte:
BIMBER e RASKAR, 2005). .................................................................................................. 18
Figura 2.11 – Modelo de dispositivo de visão ótica direta por vídeo (Fonte: BIMBER e
RASKAR, 2005). ...................................................................................................................... 19
Figura 2.12 – Ambiente de projeção (Fonte: BIMBER e RASKAR, 2005). ........................... 20
Figura 2.13 – Demonstração de aplicação web com FLARToolKit (Fonte: VELOSO et al,
2011). ........................................................................................................................................ 21
Figura 2.14 – Demonstração da utilização do ARToolKit Marker Generator (Fonte: Autor). 23
Figura 3.1 – Etapas da abordagem de desenvolvimento baseada em realidade aumentada à
web (Fonte: Autor). .................................................................................................................. 27
Figura 3.2 – Demonstração de marcadores para reconhecimento pela aplicação. (Fonte:
Autor). ...................................................................................................................................... 29
Figura 3.3 – Demonstração de realidade aumentada com utilização de webcam e marcador.
(Fonte: KIRNER e KIRNER, 2011). ........................................................................................ 30
Figura 3.4 – Demonstração real da execução da aplicação de realidade aumentada. (Fonte:
KIRNER e KIRNER, 2011). .................................................................................................... 31
Figura 3.5 – Demonstração dos três eixos cartesianos X, Y, Z. (Fonte: KIRNER e TORI,
2006). ........................................................................................................................................ 32
Figura 3.6 – Demonstração de objetos 3D em ambiente real com a utilização de realidade
aumentada. (Fonte: KIRNER e TORI, 2006). .......................................................................... 33
Figura 3.7 – Demonstração de realidade aumentada em dispositivo móvel. (Fonte: GARBIN;
DAINESE; KIRNER, 2006). .................................................................................................... 36
Figura 4.1 – Etapas da abordagem de realidade aumentada para o comércio eletrônico (Fonte:
Autor). ...................................................................................................................................... 39
Figura 4.2 – Demonstração do ambiente de interação entre o usuário e o produto fictício
(Fonte: Autor). .......................................................................................................................... 40
Figura 4.3 – Instruções para utilização de realidade aumentada apresentada no site fictício
(Fonte: Autor). .......................................................................................................................... 42
Figura 4.4 – Demonstração do produto comercializado no site fictício de comércio eletrônico
(Fonte: Autor). .......................................................................................................................... 43
Figura 4.5 – Exemplo de marcador que será utilizado pelo usuário e reconhecido pela
aplicação web (Fonte: Autor). .................................................................................................. 44
Figura 4.6 – Demonstração da execução do aplicativo ARToolKit Marker Generator com
reconhecimento da webcam conectada ao computador (Fonte: Autor). ................................... 45
Figura 4.7 – Demonstração da utilização do ARToolKit Marker Generator (Fonte: Autor). .. 46
Figura 4.8 – Demonstração da modelagem do objeto 3D com o aplicativo Swift 3D (Fonte:
Autor). ...................................................................................................................................... 47
Figura 4.9 – Demonstração da execução do Adobe Flash Player (Fonte: Autor). ................... 48
Figura 4.10 – Ilustração do ambiente que contém os arquivos da abordagem (Fonte: Autor). 51
Figura 4.11 – Ilustração da visualização inicial do usuário ao acessar o site fictício de
comercio eletrônico (Fonte: Autor). ......................................................................................... 52
Figura 4.12 – Demonstração da visualização de imagens estáticas do produto (Fonte: Autor).
53
Figura 4.13 – Instruções para visualização do produto com utilização de realidade aumentada
(Fonte: Autor). .......................................................................................................................... 53
Figura 4.14 – Visualização do marcado para impressão em folha de tamanho A4 (Fonte:
Autor). ...................................................................................................................................... 54
Figura 4.15 – Demonstração da execução do Adobe Flash Player (Fonte: Autor). ................. 55
Figura 4.16 – Demonstração do momento em que o usuário aponta o marcador a frente da
webcam (Fonte: Autor). ............................................................................................................ 55
Figura 4.17 – Demonstração da interação do usuário com o produto fornecido no site fictício
de comercio eletrônico (Fonte: Autor). .................................................................................... 56
Figura 4.18 – Demonstração do objeto 3D acompanhando a movimentação do marcador pelo
usuário (Fonte: Autor). ............................................................................................................. 57
Figura 4.19 – Demonstração do objeto 3D em diferentes ângulos acompanhando a
movimentação do marcador (Fonte: Autor). ............................................................................ 58
LISTA DE ABREVIATURAS E SIGLAS
3D – Three Dimensions.
ARToolKit – Augmented Reality Toolkit.
C++ – Programming language.
Collada – Colaborative Design Activity.
CSS – Cascading Style Sheets.
FLARManeger – Flash Augmented Reality Maneger.
FLARToolKit – Flash Augmented Reality Toolkit.
GPS – Global Positioning System.
HTML – HyperText Markup Language.
KARMA – Knowledge-based Augmented Reality for Maintenance
Assistance.
LCD – Liquid Crystal Display.
PHP – Hypertext Preprocessor.
RA – Realidade Aumentada.
TIC – Tecnologia da Informação e Comunicação.
VCASS – Visually Coupled Airborne Systems Simulator.
VIVED – Virtual Visual Environment Display.
SUMÁRIO
1. INTRODUÇÃO ................................................................................................................. 1 1.1 – Definição do Problema ......................................................................................................... 2
1.2 – Motivação ............................................................................................................................. 3
1.3 – Objetivo Geral ...................................................................................................................... 4
1.4 – Objetivos Específicos ............................................................................................................ 4
1.5 – Justificativa ........................................................................................................................... 4
1.6 – Procedimentos Metodológicos ............................................................................................ 5
1.7 – Limitações da Pesquisa ......................................................................................................... 6
1.8 – Estrutura do Trabalho .......................................................................................................... 7
2. FUNDAMENTAÇÃO TEÓRICA ................................................................................... 9 2.1 – Histórico da Realidade Aumentada ...................................................................................... 9
2.2 – Definição Conceitual de Realidade Aumentada ................................................................. 15
2.3 – Tipos de Sistemas de Realidade Aumentada ..................................................................... 17
2.3.1 Sistema de visão por vídeo baseado em monitor (Monitor-Based Augmented Reality)
17
2.3.2 Sistema de visão ótica direta (Optical see-through HMD) ............................................ 18
2.3.3 Sistema de visão direta por vídeo (Video see-through HMD) ....................................... 19
2.3.4 Sistema de visão ótica por projeção (Projector-based Augmented Reality) ................. 19
2.4 – Principais Ferramentas ....................................................................................................... 20
2.4.1 FLARToolKit ................................................................................................................... 20
2.4.2 FLARManager ................................................................................................................ 21
2.4.3 ARToolKit Marker Generator ......................................................................................... 22
2.4.4 Blender .......................................................................................................................... 23
2.4.5 Google SketchUp ........................................................................................................... 24
2.4.6 Swift 3D ......................................................................................................................... 24
2.4.7 Adobe Flash ................................................................................................................... 24
2.5 – Vantagens do uso de Realidade Aumentada ..................................................................... 25
2.6 – Considerações Finais .......................................................................................................... 26
3. ABORDAGEM DE DESENVOLVIMENTO BASEADA EM REALIDADE
AUMENTADA PARA WEB .................................................................................................. 27 3.1 – Ambiente de Realidade Aumentada Aplicada a Web ........................................................ 27
3.1.1 Etapa 1 – Desenvolvimento de Aplicação Web ............................................................. 28
3.1.2 Etapa 2 – Desenvolvimento do Marcador ..................................................................... 29
3.1.3 Etapa 3 – Modelagem do Objeto 3D ............................................................................. 31
3.1.4 Etapa 4 – Criação do Ambiente de Realidade Aumentada ........................................... 33
3.1.5 Etapa 5 – Utilização de Dispositivos de Hardware ........................................................ 35
3.1.6 Etapa 6 – Execução da Aplicação Web .......................................................................... 36
3.2 – Considerações Finais .......................................................................................................... 37
4. APLICAÇÃO DE REALIDADE AUMENTADA PARA UM SITE DE COMÉRCO
ELETRÔNICO ....................................................................................................................... 39 4.1 – Ambiente de Realidade Aumentada Aplicada a um Site de Comércio Eletrônico ............. 39
4.1.1 Etapa 1 – Desenvolvimento do Site de Comércio Eletrônico ........................................ 40
4.1.2 Etapa 2 – Desenvolvimento do Marcador ..................................................................... 43
4.1.3 Etapa 3 – Modelagem do Objeto 3D ............................................................................. 46
4.1.4 Etapa 4 – Criação do Ambiente de Realidade Aumentada ........................................... 47
4.1.5 Etapa 5 – Execução do Site de Comércio Eletrônico ..................................................... 51
4.2 – Considerações Finais .......................................................................................................... 58
5. CONCLUSÕES E TRABALHOS FUTUROS ............................................................. 59 5.1 – Dificuldades Encontradas ................................................................................................... 60
5.2 – Limitações da Pesquisa ....................................................................................................... 61
5.3 – Contribuições ..................................................................................................................... 61
5.4 – Trabalhos Futuros ............................................................................................................... 62
REFERÊNCIAS BIBLIOGRAFICAS ................................................................................. 63
1
1. INTRODUÇÃO
Atualmente o uso de recursos para uma melhor visualização de informações por meio
de tecnologias computacionais, possibilita ao usuário uma melhor interpretação dos dados.
Por esse motivo é possível afirmar que a utilização da internet como um importante canal de
entretenimento, além de comercialização de produtos e serviços, apresenta ao usuário novas
possibilidades, mais opções e melhor compreensão das informações.
O conceito de realidade aumentada surgiu com o objetivo de enriquecer o ambiente
físico com objetos virtuais por meio de dispositivos que permitam a utilização desse recurso
como, computadores e aparelhos móveis, diferente de realidade virtual onde o ambiente
predominante é o oposto, ou seja, o virtual, formando assim os dois extremos da realidade
misturada que permite a combinação do ambiente real com o ambiente virtual.
Para Vicentini (2006 apud ZORZAL, 2009) os sistemas de realidade aumentada
permitem que o usuário decida sobre os ambientes, compondo cenas de imagens
tridimensionais geradas por computador misturadas com imagens reais, aumentando as
informações do cenário a fim de produzir uma sensação de que tais informações se façam
presentes em um único ambiente.
A realidade aumentada é muito utilizada em projetos educacionais, jogos, aparelhos de
localização tais como o GPS (Global Positioning System) e outros tipos de dispositivos,
porque amplia a percepção do usuário e de interação com o mundo real (AZUMA, 1997). No
Brasil essa tecnologia também está começando a ser implementada na internet com os
seguintes objetivos: fornecer maior interação entre o usuário e a aplicação; conquistar o
interesse do usuário; disponibilizar novos meios de apresentação de um determinado produto
ou serviço e com isso aumentar o número de usuários possibilitando expansão de negócios.
A internet é um meio de comunicação que vive em constante expansão e isso exige
que as empresas estejam sempre em busca de novas tecnologias com o intuito de tornar as
aplicações web cada vez mais interativas e de fácil utilização para o usuário. O crescimento da
internet é acompanhado pelo aumento de conhecimento dos usuários que se tornam cada dia
mais exigentes.
Com base neste ambiente, este trabalho propõe uma abordagem de desenvolvimento
baseada em realidade aumentada para web, identificando as principais ferramentas de apoio
ao desenvolvimento de um site com a utilização de recursos de realidade aumentada. Para
uma melhor experiência da utilização da abordagem proposta, este trabalho apresenta a
aplicação de realidade aumentada em um site fictício de comércio eletrônico, com base nas
2
etapas demonstradas para execução do processo descrito na abordagem, além de identificar as
principais dificuldades durante o desenvolvimento e vantagens em sua utilização.
1.1 – Definição do Problema
A expansão da internet no Brasil se deve pelo aumento constante de novos recursos
tecnológicos, melhoria da infraestrutura de telecomunicações e o aumento de usuários que
passaram a possuir maior poder aquisitivo para adquirir os equipamentos necessários para o
acesso à internet, isso fez com que as empresas aplicassem parte de seus lucros em pesquisa
de tecnologias que permitam uma maior interação para o usuário, além de novos meios de
comercializar e divulgar seus produtos e serviços.
Essa busca por novos recursos também está vinculada a grande concorrência entre as
empresas para manter e obter novos usuários, pois a apresentação de informações, produtos e
serviços em um site permite que o usuário possa tomar decisões com mais comodidade, além
da possibilidade de troca de informações com outros usuários. Isso exige com que os
desenvolvedores estejam sempre em busca do aperfeiçoamento de suas aplicações, com a
realização de pesquisas que permitam a inclusão de novos recursos e funcionalidades para
manter e obter novos usuários.
Quando uma empresa consegue apresentar de forma diferenciada a informação de um
produto ou serviço para o usuário pode influenciar diretamente em suas decisões mesmo que a
outra empresa possua o mesmo produto ou serviço, porém sem a mesma forma de
apresentação. É por meio desse diferencial que se aplicam as novas tecnologias da informação
e comunicação (TICs), que podem ser utilizadas para influenciar nas decisões do usuário.
Dentre as TICs, pode-se citar o uso da realidade aumentada, objeto principal dessa pesquisa
aplicada a web.
Com relação ao referencial bibliográfico consultado, cabe ressaltar nesta subseção
alguns trabalhos semelhantes, mas que não tem o mesmo propósito desta monografia, por
exemplo, Veloso et al. (2011) descreve o uso do FLARToolKit1 no comércio eletrônico, onde
o principal objetivo é promover um produto de comércio eletrônico com a utilização do
FLARToolKit, apresentando os meios necessários para o seu desenvolvimento. Já Kirner e
1 Segundo Kirner e Kirner (2011) o FLARToolKit uma versão em linguagem de programação ActionScript 3.0,
baseada na biblioteca ARToolKit, permitindo dessa forma a utilização de realidade aumentada em aplicações web
em conjunto com a biblioteca PaperVision3D para modelagem de objetos 3D.
3
Tori (2006) apresentam informações sobre a utilização de realidade aumentada com o apoio
de redes de computadores, além da interação nesse ambiente, seus aspectos, dispositivos e
aplicações de maneira geral.
Outros trabalhos apresentam de forma mais abrangente áreas especificas que apoiam o
desenvolvimento de aplicações de realidade aumentada como, por exemplo, a pesquisa de
Ferreira e Pellegrino (2006) que demonstra a modelagem 3D e os tipos de elementos gráficos
que podem ser utilizados para essa aplicação.
Portanto, durante a pesquisa houve dificuldade em encontrar uma abordagem
específica de desenvolvimento que apoiasse os desenvolvedores na construção de uma
aplicação de realidade aumentada para web, sendo esse o objetivo principal deste trabalho,
buscando identificar como é possível desenvolver este tipo de aplicação, quais etapas são
necessárias para sua realização, e quais são as principais ferramentas e os respectivos recursos
que apoiam o seu desenvolvimento.
1.2 – Motivação
O fato de atualmente a tecnologia de realidade aumentada ainda ser considerada uma
novidade aplicada a sites de comércio eletrônico, entretenimento e outros tipos de segmento
no Brasil, faz dessa pesquisa uma fonte de informações para uma perspectiva de evolução
significativa da aplicação de realidade aumentada para a web.
Junto a isso está a constante expansão dos meios de comunicação incluindo a internet,
podendo ser considerada hoje uma das formas mais práticas de localização de informações e
entretenimento, bem como aquisição de produtos ou serviços. Os usuários acompanham essa
evolução e se tornam cada vez mais exigentes, acarretando em uma disputa acirrada entre as
empresas, que publicam suas informações na internet para manter e obter novos usuários além
de expandir seus negócios.
É possível observar que tanto a tecnologia de realidade aumentada quanto a internet,
são considerados dois processos em crescente evolução, isso motiva a pesquisa e o
desenvolvimento de aplicações com realidade aumentada para a web.
Atualmente existem poucas pesquisas relacionadas a essa área, que buscam instruir os
desenvolvedores, das etapas básicas necessárias para a aplicação de realidade aumentada para
web, apresentando desde o início de sua implementação, até o momento da utilização da
aplicação. Além da identificação das principais ferramentas que apoiam o seu
4
desenvolvimento, sendo esse um dos principais objetivos deste trabalho, demonstrando uma
abordagem de desenvolvimento baseada em realidade aumentada para web como forma de
contribuição e auxílio à comunidade científica.
1.3 – Objetivo Geral
Este trabalho tem por objetivo geral investigar e desenvolver uma abordagem de
desenvolvimento baseada em realidade aumentada para web.
1.4 – Objetivos Específicos
Para alcançar o objetivo geral deste trabalho, foram considerados os seguintes
objetivos específicos:
Investigar e apresentar um levantamento histórico da tecnologia de realidade
aumentada;
Realizar uma análise das principais ferramentas que podem ser utilizadas para
o desenvolvimento de uma página web em conjunto com realidade aumentada;
Definir as etapas e as principais ferramentas que constituirão a abordagem de
desenvolvimento baseada em realidade aumentada para web;
Validar teoricamente a abordagem de desenvolvimento baseada em realidade
aumentada para web em um site de comércio eletrônico;
Apresentar as dificuldades encontradas durante a execução das etapas da
abordagem proposta e as vantagens de sua utilização.
1.5 – Justificativa
Segundo Kirner e Kirner (2011) o termo realidade aumentada surgiu em meados de
1990 em trabalhos realizados por Thomas Caudell, porém sua utilização na época estava
5
vinculada a projetos que ainda não tinham um grande objetivo de expandir o uso de realidade
aumentada em segmentos diversificados.
Pode-se considerar que essa expansão teve início há pouco tempo, considerando o
avanço do uso de tecnologias por meio de ferramentas como o ARToolKit2 ou FLARToolkit
para desenvolvimento de realidade aumentada.
A realidade aumentada vem sendo considerada uma possibilidade concreta de se
tornar a próxima geração de interface popular, a ser usada nas mais variadas aplicações em
espaços internos e externos (KIRNER e SISCOUTTO 2007).
Essa tecnologia vinculada à necessidade de manutenção de usuários e expansão de
negócios faz da realidade aumentada um grande recurso para auxiliar na apresentação de
informações contidas em sites de comércio eletrônico, entretenimento, marketing de produtos
e um forte diferencial dentro da concorrência entre empresas que aplicam seus recursos na
internet.
1.6 – Procedimentos Metodológicos
Com relação à natureza, a pesquisa pode ser classificada como aplicada. Esse tipo de
classificação é descrito por Silva e Menezes (2000) como uma pesquisa cujo objetivo é gerar
conhecimentos para aplicação prática dirigidos à solução de problemas específicos,
envolvendo verdades e interesses locais. Considerando-se o objetivo proposto neste trabalho,
pressupõe-se o enquadramento nesse tipo de pesquisa.
A metodologia proposta, conforme citado anteriormente, visa abordar as etapas
essenciais a fim de possibilitar uma sequência de procedimentos que poderão ser seguidos,
para a concepção de uma abordagem de desenvolvimento baseada em realidade aumentada
para web. Com isso, no tocante à forma de abordagem do problema, pode-se enquadrar a
pesquisa como pesquisa descritiva, classificada também como pesquisa qualitativa. Silva e
Menezes (2000) definem que nesse tipo de pesquisa o processo e os seus significados são os
focos principais da abordagem.
No que diz respeito aos objetivos, a pesquisa pode ser classificada como exploratória.
Segundo Richardson (1999), nesse tipo de pesquisa o objetivo é conhecer as características de
um determinado fenômeno para que, posteriormente, seja possível obter explicações das
2 Segundo Kirner e Tori (2006) o ARToolKit é uma biblioteca de software baseada nas linguagens C e C++,
usada para o desenvolvimento de aplicações de realidade aumentada para ambiente desktop.
6
causas e consequências de tal fenômeno. Esse tipo de pesquisa visa também proporcionar
maior familiaridade com o problema, com vistas a torná-lo explícito ou a construir hipóteses.
A pesquisa exploratória assume, em geral, as formas de pesquisa bibliográfica e estudo
de caso (GIL, 2000 apud SILVA; MENEZES, 2000, p. 21). No presente trabalho, a pesquisa
bibliográfica permitiu identificar os principais conceitos envolvidos na área de realidade
aumentada.
Do ponto de vista dos procedimentos técnicos, a pesquisa pode ser classificada como
uma pesquisa bibliográfica e também como um estudo de viabilidade (GIL apud SILVA;
MENEZES, 2000).
Definidos os tipos de pesquisa nos quais o presente trabalho se enquadra, citam-se as
etapas que o fundamentam a fim de que sejam efetivados os objetivos propostos:
Estudo da área de realidade aumentada;
Estudo da área de comércio eletrônico;
Construção da abordagem de desenvolvimento baseada em realidade aumentada
para web;
o Desenvolver um aplicação web;
o Desenvolver um marcador;
o Modelar o objeto 3D;
o Criar o ambiente de realidade aumentada;
o Demonstrar a utilização de dispositivos de hardware;
o Apresentar a execução da aplicação web.
Validação teórica da abordagem de desenvolvimento baseada em realidade
aumentada para web em um site fictício de comércio eletrônico.
1.7 – Limitações da Pesquisa
Algumas limitações foram impostas ao trabalho proposto, dentre elas pode-se citar:
A demonstração das etapas de aplicação de realidade aumentada estará voltada
apenas a sua utilização para web;
A apresentação das ferramentas para desenvolvimento de realidade aumentada
conterá apenas informações dos principais recursos inclusos nas respectivas
ferramentas que apoiam o desenvolvimento nessa área;
7
O desenvolvimento da modelagem para interação entre os ambientes virtual e
real demonstrará apenas um objeto 3D;
A abordagem de desenvolvimento baseada em realidade aumentada para web
utilizará a webcam como dispositivo de entrada de dados.
1.8 – Estrutura do Trabalho
O presente trabalho divide-se em cinco capítulos, os quais visam à abordagem de
questões relacionadas à investigação e desenvolvimento de uma aplicação de realidade
aumentada para comércio eletrônico. Assim, os capítulos seguintes estão estruturados como se
segue.
Capítulo 1: Introdução – No presente capítulo é apresentada a introdução do
trabalho, incluindo a apresentação, a definição do problema de pesquisa, o
objetivo geral e os específicos, a justificativa, a metodologia, a delimitação do
trabalho e a estrutura do trabalho.
Capítulo 2: Revisão Bibliográfica – Este capítulo tem como objetivo
apresentar os principais acontecimentos vinculados à evolução histórica da
realidade aumentada, as definições conceituais, suas principais características e
as vantagens e desvantagens do uso dessa tecnologia. O capítulo também
apresenta os tipos de sistemas de realidade aumentada, perspectivas de
evolução e as variáveis que contribuem para que isso aconteça além de
algumas ferramentas que apoiam o desenvolvimento de realidade aumentada
para web.
Capítulo 3: Abordagem de Desenvolvimento Baseada em Realidade
Aumentada para Web – Neste capítulo serão apresentadas as etapas para
utilização de realidade aumentada em conjunto com uma aplicação web e a
demonstração dos processos que permitem a criação desse ambiente.
Capítulo 4: Aplicação de Realidade Aumentada para um Site de Comércio
Eletrônico – Neste capitulo é apresentado o processo de desenvolvimento de
8
um site fictício de comércio eletrônico com a utilização de realidade
aumentada para permitir a interação entre o ambiente real e virtual. O
desenvolvimento foi baseado na abordagem de desenvolvimento baseada em
realidade aumentada para web proposta no capítulo 3.
Capítulo 5: Conclusões e Trabalhos Futuros – No último capítulo apresentam-
se as conclusões da monografia e descrevem-se algumas sugestões de possíveis
trabalhos futuros.
9
2. FUNDAMENTAÇÃO TEÓRICA
Este capítulo busca apresentar os principais acontecimentos (evolução histórica)
envolvendo realidade aumentada ao longo dos anos, as definições conceituais e as principais
características, além dos tipos de sistemas de realidade aumentada, algumas ferramentas que
apoiam o desenvolvimento de realidade aumentada para web e as vantagens do uso da
tecnologia.
2.1 – Histórico da Realidade Aumentada
O Sensorama foi uma das primeiras máquinas com tecnologia multissensorial imersiva
e é considerado o invento mais famoso de Morton Heilig motivo ao qual o aponta como
pioneiro da realidade virtual.
Conforme Cramer (2004) em 1962 Heilig construiu um protótipo de sua ideia,
batizando-o de Sensorama, junto com cinco curtas a serem exibidos. O Sensorama
representava um teatro de uma pessoa que incluía três dimensões, o filme em cores
juntamente com sons, cheiros e a sensação de movimento bem como a sensação do vento no
rosto do espectador, fornecendo a ilusão de realidade por meio de imagens em 3D.
Figura 2.1 – Sensorama de Morton Heilig (Fonte: CRAMER, 2004).
10
Para Kirner e Tori (2006) Heiling não conseguiu transformar sua invenção em um
sucesso comercial, mas certamente semeou as ideias que levaram ao desenvolvimento do que
hoje conhecemos como realidade virtual.
Sutherland (1965) por meio do projeto The Ultimate Display desenvolveu um vídeo
capacete totalmente funcional para gráficos de computador. O uso desse aparelho permitia o
usuário ver por meio de movimentos com a cabeça diferentes imagens.
Figura 2.2 – Demonstração com o Ultimate Display (Fonte: CRAMER, 2004).
Conforme Jaynes e Welch (2006) em 1974 Krueger apresentou o Videoplace onde
eram capturadas imagens do usuário e misturadas com objetos e atividades virtuais com
objetivo de segundo Wu e Balakrishnan (2003) fornecer a interação por meio de uma câmera
de vídeo e uma tela de projeção em salas diferentes, permitindo que um usuário remoto
pudesse visualizar os movimentos do outro usuário, transmitindo a sensação de como se as
duas pessoas estivessem em uma mesma sala.
Para Burt (1995) o termo realidade virtual é creditado a Jaron Lanier, um dos maiores
conhecedores de realidade virtual no mundo, por ser um dos primeiros a estudar o tema e
construir produtos de realidade virtual desde o início dos anos 80. Fundou a VPL Research, a
primeira empresa a vender produtos de realidade virtual. Na década de 1980 ele liderou a
equipe que desenvolveu as primeiras implementações tanto para redes locais e remotas, bem
como os primeiros "avatares", ou representações dos usuários dentro de tais sistemas.
Conforme Chesher (2003) em 1982 Thomas Furness realizou a demonstração do
VCASS (Visually Coupled Airborne Systems Simulator) para a Força Aérea Americana.
Mesmo com a importância da pesquisa o seu desenvolvimento não atraiu muita publicidade, o
11
projeto VCASS reduzia a complexidade do mundo real permitindo uma maior concentração
na simulação de voos. O VCASS era um capacete de realidade virtual que permitia o usuário
visualizar imagens sintéticas do mundo exterior de forma semelhante a um mapa.
Figura 2.3 – Piloto utilizando capacete com o simulador VCASS e demonstração da visão do usuário (Fonte:
PIMENTEL, 1995 apud NETTO, MACHADO e OLIVEIRA, 2002).
Segundo Pimentel (1995 apud MACHADO 1995) em 1984 Michael McGreevy
começou a trabalhar no projeto VIVED (Virtual Visual Environment Display), utilizando uma
nova tecnologia de visores de cristal líquido (LCD) na NASA. Para McGreevy apesar de
apresentar imagens de forma limitada em comparação ao VCASS o objetivo era criar um
projeto acessível onde seu custo era considerado bastante atrativo. A parte de áudio e vídeo
foi então montada sobre uma máscara de mergulho utilizando dois visores de cristal líquido
com pequenos autofalantes acoplados. Scott Fisher se ajunta a esse projeto no ano de 1985
com o objetivo de incluir nele: luvas de dados, reconhecimento de voz, síntese de som 3D, e
dispositivos de feedback tátil.
De acordo com Jacobson (1994 apud MACHADO 1995) em 1989 a empresa
AutoDesk popularizou a ideologia da realidade virtual por meio da mídia ao anunciar o
primeiro sistema de realidade virtual para desktop.
Para Kirner e Kirner (2011) Thomas Caudell cunhou o termo “Realidade Aumentada”
durante sua passagem à empresa Boeing, em referência a um dispositivo de Realidade Virtual
que apoiava funcionários na montagem de equipamentos eletrônicos de aeronave. Conforme
relatos de Barfield e Caudell (2001) eles pretendiam saber como as técnicas da realidade
virtual poderiam ser usadas na construção de aviões para melhorar a conexão dos complexos
sistemas de cabos que conectam as partes das aeronaves.
12
No ambiente de trabalho o usuário possuía acesso a uma placa de fiação com uma
ampla gama de operação, utilizando o computador para execução dos gráficos e
gerenciamento das funções dos dados, possuindo dessa forma uma visão do caminho do fio
corrente como um polígono de cor pintado na placa. A Figura 2.4 apresenta o diagrama do
projeto para aplicação do sistema proposto por Barfield e Caudell e uma demonstração de um
sistema similar por David Mizell.
Figura 2.4 – Diagrama de aplicação de realidade aumentada e demonstração de utilização (Fonte: BARFIELD e
CAUDELL, 2001).
Em 1991, Howard Rheingold publicou o livro Virtual Reality apresentando o tema
para um público mais amplo (CHESHER, 2003). Já em 1992 foi demonstrado um protótipo
de sistema em realidade aumentada por Steven Feiner, Blair MacIntyre e Doree Seligmann
em uma conferência de Interface Gráfica sendo denominado como KARMA (Knowledge-
based Augmented Reality for Maintenance Assistance) (FEINER et al., 1993a apud FEINER,
et al., 1993b).
Foi apresentado em 1998 o conceito de realidade aumentada espacial demonstrando as
possibilidades de utilização de diferentes tecnologias de displays móveis e não móveis para
interação entre objetos ou moldes reais com displays que apresentam ao usuário a junção
desses dois ambientes (FUNCHS, RASKAR e WELCH, 1998; BIMBER e RASKAR, 2005).
A Figura 2.5 demonstra um ambiente que realiza a interação entre objetos e dispositivos de
transmissão de imagem, permitindo informar ao usuário, por exemplo, informações sobre a
produção da obra de arte, interação entre o display e o quadro, sons, etc.
13
Figura 2.5 – Demonstração de ambiente com realidade aumentada espacial (Fonte: BIMBER et al., 2005 apud
BIMBER e RASKAR, 2005).
Em 1999 foi apresentada a biblioteca de software ARToolKit que para Kirner e Tori
(2006) é considerado um dos recursos mais populares da realidade aumentada. ARToolKit é
uma biblioteca de software baseada nas linguagens C e C++, usada para o desenvolvimento
de aplicações de realidade aumentada. A Figura 2.6 demonstra ambiente com a utilização da
biblioteca ARToolKit, onde por meio de um marcador apontado para um dispositivo que
transmita a imagem para a aplicação, permite fazer com que o mesmo reconheça o marcador
para apresentar os objetos em um display demonstrando a visualização final para o usuário.
Figura 2.6 – Demonstração de ambiente com ARToolKit (Fonte: KIRNER e TORI, 2006).
Este ambiente de desenvolvimento baseia-se no uso de marcadores (cartões com uma
moldura retangular e com um símbolo marcado em seu interior, funcionando como um código
de barra), permitindo o uso de técnicas de visão computacional para calcular a posição da
câmera real e sua orientação em relação aos marcadores, de forma a fazer com que o sistema
14
possa sobrepor objetos virtuais sobre os marcadores. ARToolKit é um código aberto que
possibilita alteração e ajustes para aplicações específicas.
Bruce H. Thomas e sua equipe desenvolvem em 2000 o ARQuake, primeiro jogo para
celular utilizando realidade aumentada em conjunto com GPS e sensores de orientação
(THOMAS, et al.,2000).
Segundo Madden (2011), em 2008 é apresentado o Wikitude, aplicativo para a
plataforma Android permitindo a utilização do telefone e GPS junto a Realidade Aumentada
podendo, por exemplo, determinar rotas para determinados destinos.
De acordo com Kirner e Kirner (2011), baseando-se na biblioteca ARToolKit Saqoosha
desenvolveu o FLARToolKit em código aberto permitindo a utilização de realidade aumentada
com Adobe Flash possibilitando sua utilização por meio de navegadores para internet. A
Figura 2.7 apresenta uma página de internet com aplicação baseada na biblioteca
FLARToolKit, com o apoio de software em Flash o usuário final pode apresentar o marcador
a frente de dispositivo que transmita imagem para o aplicativo para que o mesmo possa
converter os dados do marcador na animação contida na aplicação.
Figura 2.7 – Demonstração de ambiente com FLARToolKit (Fonte: VELOSO et al., 2011).
A seguir é apresentada a Figura 2.8 que ilustra de forma sintética a evolução histórica
de realidade aumentada, conforme descrito anteriormente.
15
Figura 2.8 – Evolução Histórica de Realidade Aumentada (Fonte: Autor).
2.2 – Definição Conceitual de Realidade Aumentada
Azuma (1997) define realidade aumentada como uma variação de ambientes virtuais,
ou realidade virtual como é mais comumente chamado. A realidade aumentada permite ao
usuário ver o mundo real, com a sobreposição de objetos virtuais ou compostos com o mundo
real. O uso de técnicas de realidade aumentada permite a exploração de todos os sentidos
humanos (AZUMA et al., 2001).
16
Para Billinghurst e Kato (1999) Realidade Virtual imersiva separa o usuário do mundo
real e suas ferramentas tradicionais. Uma abordagem alternativa é por meio de realidade
misturada, que é a sobreposição de objetos virtuais no mundo real. Isso permite aos usuários
ver uns aos outros ao mesmo tempo de imagens virtuais, facilitando a comunicação entre
usuários por meio de utilização de banda larga e intuitiva manipulação da informação virtual.
Conforme Milgram et al. (1994) a realidade misturada, misturando o real com o
virtual, abrange duas possibilidades: a realidade aumentada, cujo ambiente predominante é o
mundo real, e a virtualidade aumentada, cujo ambiente predominante é o mundo virtual.
Realidade aumentada está sendo usado em vários domínios e, portanto, precisa se
adaptar as necessidades específicas desses domínios (LOOSER et al., 2006).
De acordo com Kirner e Tori (2006) o hardware para realidade aumentada pode usar
dispositivos de realidade virtual, mas tende a não obstruir as mãos, que devem atuar
naturalmente no ambiente misturado.
A realidade aumentada também pode ser definida como a inserção de objetos virtuais
no ambiente físico, mostrada ao usuário, em tempo real, com o apoio de algum dispositivo
tecnológico, usando a interface do ambiente real, adaptada para visualizar e manipular os
objetos reais e virtuais (KIRNER e SISCOUTTO, 2007).
Segundo Billinghurst (2005 apud SILVA et al. 2008) os sistemas de realidade
aumentada permitem que o usuário decida sobre os ambientes, compondo cenas de imagens
tridimensionais geradas por computador misturadas com imagens reais, aumentando as
informações do cenário a fim de produzir uma sensação de que tais informações se façam
presentes em um único ambiente.
Já para Kirner (1997 apud ZORZAL 2009), pode-se definir realidade virtual como
uma forma das pessoas visualizarem, manipularem e interagirem com computadores e dados
extremamente complexos, na qual ideias como imersão, interação e envolvimento com o
ambiente virtual são consideradas básicas e fundamentais.
A realidade aumentada vem sendo considerada uma possibilidade concreta de se
tornar a próxima geração de interface popular, a ser usada nas mais variadas aplicações em
espaços internos e externos (KIRNER e SISCOUTTO, 2007).
Para este trabalho será adotado o conceito de Kirner e Siscoutto (2007) que define a
realidade aumentada como a inserção de objetos virtuais no ambiente físico, mostrada ao
usuário, em tempo real, com o apoio de algum dispositivo tecnológico, usando a interface do
ambiente real, adaptada para visualizar e manipular os objetos reais e virtuais.
17
A escolha se deve pelo fato de que o conceito definido por Kirner e Siscoutto é o mais
adotado atualmente na área de realidade aumentada. Além disso, os conceitos definidos pelos
demais autores se baseiam no mesmo princípio, definindo a realidade aumentada como a
inserção de objetos virtuais no ambiente físico.
2.3 – Tipos de Sistemas de Realidade Aumentada
Segundo Azuma et al. (2001) os sistemas de realidade aumentada podem ser
classificados conforme o tipo de display que é utilizado junto à aplicação. Conforme Zorzal
(2009) os sistemas de realidade aumentada são classificados em quatro tipos: sistema de visão
por vídeo baseado em monitor, sistema de visão ótica direta, sistema de visão direta por vídeo
e sistema de visão ótica por projeção. A seguir são apresentadas as características de cada um
dos sistemas.
2.3.1 Sistema de visão por vídeo baseado em monitor (Monitor-Based Augmented Reality)
O sistema de visão por vídeo baseado em monitor requer a utilização de uma webcam
para realizar a captura da cena em tempo real. Por meio desse tipo de sistema a imagem da
cena real é capturada pela webcam e enviada para a aplicação de realidade aumentada para
que a mesma possa processar os dados recebidos e realizar a inclusão dos objetos virtuais
contidos na aplicação de realidade aumentada, e em tempo real, apresentar a junção desses
dois ambientes por meio do monitor. O desenvolvimento da aplicação de realidade aumentada
deste trabalho é baseado em sistemas de visão por vídeo (Monitor-Based Augmented Reality).
A Figura 2.9 demonstra um exemplo da utilização de um sistema de visão por vídeo baseado
em monitor.
18
Figura 2.9 – Demonstração de sistema de visão por vídeo baseado em monitor (Fonte: Autor).
2.3.2 Sistema de visão ótica direta (Optical see-through HMD)
Sistemas de visão ótica direta são baseados principalmente em capacetes acoplados a
recursos que permitem a visão de vídeo montado no capacete, permitindo recebimento direto
da imagem do ambiente real para posteriormente realizar a projeção de imagens virtuais junto
às imagens reais recebidas.
Segundo Zorzal (2009) uma das maneiras mais comuns de se conseguir tais
características é por meio da utilização de uma lente inclinada que permita a visão direta e
reflita a projeção de imagens geradas por computador diretamente nos olhos do usuário. A
Figura 2.10 apresenta um diagrama adaptado e modelos de dispositivo de visão ótica direta.
Figura 2.10 – Diagrama adaptado e modelo de dispositivo de visão ótica direta (Fonte: BIMBER e RASKAR,
2005).
19
2.3.3 Sistema de visão direta por vídeo (Video see-through HMD)
Os sistemas de visão ótica direta por vídeo trabalham com uma estrutura semelhante
aos sistemas de visão de ótica direta, a diferença é que os sistemas de visão por vídeo utilizam
a câmera para a captura das imagens do ambiente real, para posteriormente misturar as
imagens recebidas com os elementos virtuais e por fim realizar a apresentação diretamente ao
usuário.
Para Kirner e Tori (2006) a utilização de vídeo see-through juntamente com o
ambiente de realidade aumentada ARToolKit permite de maneira simples a implementação de
interfaces tangíveis, onde a presença de um cartão marcador em frente a câmera faz com que
o objeto virtual associado a ele seja colocado sobre ele, permitindo a manipulação com as
mãos para movimentar o objeto virtual. A Figura 2.11 demonstra um modelo de dispositivo
que permite realizar a visualização de imagens por meio de sistema de visão ótica direta por
vídeo.
Figura 2.11 – Modelo de dispositivo de visão ótica direta por vídeo (Fonte: BIMBER e RASKAR, 2005).
2.3.4 Sistema de visão ótica por projeção (Projector-based Augmented Reality)
Sistemas de visão ótica por projeção utilizam superfícies de um ambiente real para
realização de projeção de imagens dos objetos virtuais apresentando todo o conjunto ao
usuário sem a necessidade de uso de equipamento auxiliar. Conforme Kirner e Tori (2006)
sistemas de projeção por visão ótica podem ser considerados sistemas que utilizam realidade
20
aumentada com visão direta onde as imagens podem ser vistas a olho nu ou trazidas, por meio
de vídeo, enquanto os objetos virtuais gerados pelo sistema de visão ótica por projeção podem
ser apresentados nos olhos do usuário.
Para Zorzal (2009) embora seja interessante a utilização desse tipo de sistema, seu uso
é restrito as condições de espaço real pelo fato de o mesmo exigir superfícies reais para
realizar suas projeções. A Figura 2.12 demonstra um ambiente com a utilização de sistema de
visão ótica por projeção utilizando a superfície de um ambiente real.
Figura 2.12 – Ambiente de projeção (Fonte: BIMBER e RASKAR, 2005).
2.4 – Principais Ferramentas
Esta seção tem como objetivo apresentar algumas ferramentas que podem ser
utilizadas para o desenvolvimento de uma página web em conjunto com realidade aumentada.
Há certa dificuldade em encontrar ferramentas que englobem todos os recursos necessários
para a utilização de realidade aumentada, uma vez que cada ferramenta normalmente é
desenvolvida para atender uma área de aplicação específica, por esse motivo esta seção
apresentará apenas as principais funções de cada ferramenta que apoiam o desenvolvimento
de realidade aumentada para web.
2.4.1 FLARToolKit
Segundo Kirner e Kirner (2011), baseando-se na biblioteca ARToolKit Saqoosha
desenvolveu o FLARToolKit em código aberto, que permite a utilização de realidade
aumentada com Adobe Flash, possibilitando sua utilização por meio de navegadores para
internet. O desenvolvimento da biblioteca FLARToolKit foi realizado em linguagem de
21
programação Action Stript 3 (AS) proporcionando dessa forma o desenvolvimento de
aplicações de realidade aumentada.
Atualmente o FLARToolKit é considerado a ferramenta mais popular para o
desenvolvimento de realidade aumentada aplicada a web, trabalha em conjunto com a
biblioteca PaperVision3D, permitindo a utilização de arquivos criados com modelagem de
objeto 3D, no qual por meio da interpretação de dados pela biblioteca de realidade aumentada
é possível reconhecer o marcador impresso e apontado à frente da webcam. O FLARToolKit
calcula a orientação e a posição do mundo 3D baseado na posição do marcador impresso,
permitindo com que seja apresentado ao usuário em tempo real o objeto 3D.
O FLARToolKit permite que o desenvolvedor possa modelar um objeto 3D utilizando
qualquer aplicação que permita o desenvolvimento desses objetos e a exportação do arquivo
desenvolvido para o formado Collada (.dae) para que possa ser reconhecido pela biblioteca
PaperVision3D, que está incorporada na biblioteca FLARToolKit. Em projetos onde o
desenvolvedor crie aplicações que não disponibilize publicamente o código fonte do projeto
que utilizou o FLARToolKit pode fazer com que haja custos para sua utilização.
A Figura 3.8 demonstra o marcador impresso e o resultado da sua interpretação pela
biblioteca de realidade aumentada FLARToolKit implementada na aplicação web, no exemplo
dessa aplicação o usuário final pode por meio de comandos do teclado solicitar que o objeto
mude de cor de acordo com as opções inclusas na aplicação.
Figura 2.13 – Demonstração de aplicação web com FLARToolKit (Fonte: VELOSO et al, 2011).
2.4.2 FLARManager
Assim como o FLARToolKit, o FLARManager (Flash Augmented Reality Maneger) é
uma variação da biblioteca ARToolKit para linguagem de programação Action Script 3.0,
22
permitindo o desenvolvimento de realidade aumentada para aplicações Flash. O
FLARManager é compatível com uma variedade de bibliotecas de rastreamento de objetos 3D
incluindo o PaperVision3D realizando dessa forma o reconhecimento de arquivos no formato
Collada (.dae).
Sua utilização é semelhante a do FLARToolKit sendo necessário a execução de Flash
Player na aplicação web para detecção do marcador impresso e o seu reconhecimento pelo
FLARManager para demonstrar a mistura de imagens entre o ambiente real e virtual.
2.4.3 ARToolKit Marker Generator
O funcionamento da aplicação web depende da existência de um objeto padrão no
mundo real para que a webcam possa enviar os dados para a aplicação, permitindo dessa
forma identificar e mostrar o produto atrelado ao objeto apontado à frente da webcam. No
ambiente de desenvolvimento, esse objeto é comumente conhecido como um marcador que
pode ser modificado e codificado de acordo com o desenvolvedor, porém obedecendo aos
padrões estabelecidos pela biblioteca FLARToolKit.
Assim como a biblioteca de realidade aumentada FLARToolKit o ARToolKit Marker
Generator também é uma aplicação desenvolvida em código aberto, permitindo dessa forma,
que qualquer usuário final possa utilizá-lo para criar o marcador e permitir seu
reconhecimento com a biblioteca FLARToolKit ou ARToolKit. Para execução do ARToolKit
Marker Generator é necessário que o computador possua instalado o Adobe AIR que permite
a utilização de aplicações desktop com as tecnologias de desenvolvimento de páginas web.
Ele é distribuído gratuitamente e seu download pode ser realizado por meio do site oficial da
empresa Adobe3.
Com o Adobe AIR instalado no computador é possível executar o aplicativo ARToolKit
Marker Generator para que possa ser criado o arquivo que possuirá os dados da interpretação
do marcador impresso criado. O marcador pode ser criado por meio de qualquer aplicação de
edição de imagens, porém deve obedecer as regras de reconhecimento do FLARToolKit. Por
padrão o marcador deve possuir segundo Kirner e Tori (2006) uma moldura retangular e com
um símbolo marcado em seu interior funcionando de forma semelhante a um código de barra,
permitindo dessa forma o uso de técnicas de visão computacional para calcular a posição da
câmera real e sua orientação em relação aos marcadores.
3 Maiores informações podem ser encontradas em: <http://www.adobe.com/>
23
O símbolo contido no interior da moldura retangular deve ser criado permitindo uma
fácil interpretação pela biblioteca FLARToolKit, apresentando-se de forma diferente a cada
movimentação realizada pelo usuário final para que o FLARToolKit possa interpretar
corretamente a direção em tempo real para onde o objeto 3D deverá ser apresentado. A Figura
3.9 demonstra a utilização do aplicativo ARToolKit Marker Generator, que ao apontar o
marcador criado e impresso à frente da webcam a aplicação reconhecerá a moldura marcando
seu contorno em vermelho.
Figura 2.14 – Demonstração da utilização do ARToolKit Marker Generator (Fonte: Autor).
No momento em que o aplicativo determina o contorno vermelho, significa que o
marcador foi reconhecido e com isso é possível utilizar o recurso “Save Pattern” para salvar
o arquivo com os dados de reconhecimento do marcador. Após salvar o reconhecimento da
marcação deve ser localizado o arquivo criado pelo aplicativo ARToolKit Marker Generator e
salvá-lo dentro da pasta DATA contida na biblioteca de realidade aumentada FLARToolKit.
2.4.4 Blender
Segundo Guimarães et al. (2007) o Blender é um software de edição gráfica que
permite a modelagem e animação 3D, oferecendo uma série de recursos e funcionalidades
para criação de objetos 3D e disponível para utilização em várias plataformas como, por
exemplo, Windows, Linux, MAC OS X, etc.
Para a modelagem de objetos 3D, o Blender é uma das soluções livre mais comumente
usada oferecendo além dos serviços de modelagem, recursos de interação via linguagem de
24
programação Python, disponibilizando também ferramentas para criação de aplicativos
simples sem o uso de programação. O aplicativo Blender também permite exportar o objeto
3D modelado para arquivo em formato Collada (.dae), permitindo dessa forma o
reconhecimento do objeto 3D pela biblioteca PaperVision3D.
2.4.5 Google SketchUp
O Google SketchUp é uma ferramenta desenvolvida voltada para profissionais da área
de design e engenharia, permitindo criar modelos 3D, documentos e apresentações em 2D
bem como de estilos de exibição personalizados com aparência de desenhos feitos a mão
livre. Além de permitir o download desse aplicativo para uso desktop, o Google também
possui disponível uma página web que permite realizar download de objetos 3D prontos,
podendo exportá-los para o formato Collada (.dae), permitindo dessa forma a utilização dos
objetos 3D disponíveis com aplicação de realidade aumentada.
O aplicativo é disponibilizado de forma gratuita ou paga pela empresa Google, a
aplicação em versão gratuita já permite a modelagem de objetos 3D e a realização de sua
exportação para o formato Collada (.dae).
2.4.6 Swift 3D
O Swift 3D é um software desenvolvido para modelagem de objetos 3D desde os
modelos mais simples aos mais complexos, incluindo recursos multimídia e comandos que
permitem maior interação. Permite exportar os arquivos criados para utilização com Adobe
Flash e PaperVision3D, disponibilizando dessa forma recurso para geração dos arquivos
modelados no formato Collada (.dae).
2.4.7 Adobe Flash
Como o FLARToolKit é baseado na utilização de Flash, o aplicativo Adobe Flash é
uma ferramenta importante para desenvolvedores que desejam criar um ambiente de realidade
aumentada mais interativo, utilizando, por exemplo, recursos multimídia, funções de teclado,
mouse e outros dispositivos além do objeto 3D. O Adobe Flash permite o desenvolvimento
em Flash com o apoio de linguagem de programação Action Script para ambiente desktop ou
internet.
25
2.5 – Vantagens do uso de Realidade Aumentada
Nesta seção são apresentadas as principais vantagens da utilização de realidade
aumentada nos diferentes ambientes e tipos de aplicações.
Não exige treinamento específico do usuário final para utilização de aplicações com
recursos de realidade aumentada;
Permite que o usuário final utilize as habilidades e o conhecimento intuitivo para
manipulação dos objetos virtuais;
Permite a formalização de ideias por meio de maneiras de visualização, comunicação e
interação com pessoas e informações.
Avanço na utilização de recursos alternativos para interação, tais como rastreamento
óptico de pessoas ou mãos;
A utilização de aplicações de realidade aumentada não exige necessariamente conexão
com a internet;
As principais ferramentas para desenvolvimento de aplicações em realidade aumentada
são distribuídas em código aberto;
O uso de realidade aumentada não é obrigatoriamente aplicado a um ambiente
específico, pode ser utilizado para educação, meios de localização, jogos, apresentações,
comércio eletrônico, entre outros;
Além de computadores aplicações de realidade aumentada podem ser utilizadas em
aparelhos móveis ou qualquer dispositivo que permita transmissão de imagens e possua
tecnologia para execução do aplicativo;
26
2.6 – Considerações Finais
O objetivo principal deste capítulo foi proporcionar uma visão conceitual da
tecnologia de realidade aumentada. Inicialmente buscou-se apresentar a evolução histórica da
área de realidade aumentada, onde foram abordados os principais acontecimentos, explicar as
definições conceituais de realidade aumentada e os tipos de sistemas, além de abordar suas
vantagens com base no estudo desta tecnologia.
No capítulo 3 será apresentado uma abordagem de desenvolvimento baseada em
realidade aumentada para web onde serão relacionadas as etapas desse processo e as
principais ferramentas para desenvolvimento de realidade aumentada em uma aplicação web.
27
3. ABORDAGEM DE DESENVOLVIMENTO BASEADA EM REALIDADE AUMENTADA PARA WEB
Este capítulo apresenta os meios básicos necessários para a implementação de
realidade aumentada em uma aplicação web, demonstrando em etapas a realização desse
processo para uma melhor compreensão dos meios necessários para permitir a interação entre
o ambiente real e virtual.
3.1 – Ambiente de Realidade Aumentada Aplicada a Web
Nesta seção o processo de implementação de realidade aumentada em uma aplicação
web foi dividido em etapas para uma melhor compreensão dos meios necessários para
permitir a interação entre o usuário final e a aplicação.
A Figura 3.1 ilustra a proposição de um modelo geral de aplicação de realidade
aumentada à web e suas respectivas etapas para a visualização da mistura de imagens entre o
ambiente real e o virtual.
Figura 3.1 – Etapas da abordagem de desenvolvimento baseada em realidade aumentada à web (Fonte: Autor).
28
A abordagem apresentada na Figura 3.1 está dividida em seis etapas: 1)
Desenvolvimento de Aplicação Web, 2) Desenvolvimento do Marcador, 3) Modelagem do
Objeto 3D, 4) Criação do Ambiente de Realidade Aumentada, 5) Utilização de Dispositivos
de Hardware e 6) Execução da Aplicação Web.
Durante o processo de desenvolvimento para que seja possível atingir o resultado final
da interação do usuário final com os objetos virtuais existem três importantes etapas a serem
realizadas que apoiam a correta execução da aplicação web. A primeira delas é o
desenvolvimento do marcador que será reconhecido pela aplicação, a segunda é a modelagem
do objeto 3D e a terceira é a criação do ambiente de realidade aumentada que depende do
objeto 3D e da utilização do marcador desenvolvido para realizar a projeção em tempo real ao
usuário final.
Para que seja possível efetuar a ação conjunta das três etapas mencionadas
anteriormente é necessário que primeiro se realize o desenvolvimento da aplicação web que é
considerado como a base de todo o processo. A seguir será realizado um detalhamento de
cada uma das etapas.
3.1.1 Etapa 1 – Desenvolvimento de Aplicação Web
A aplicação web deve ser desenvolvida em uma linguagem de programação que
permita a utilização de Flash Player como, por exemplo, PHP, ou até mesmo utilizando
apenas HTML e realizando a execução do Flash Player por meio de comandos em JavaScript
para que a webcam possa ser utilizada com aplicação web. A pasta raiz onde estiver contidos
os arquivos da aplicação web também deverá conter:
Arquivo gerado com a realização da modelagem do objeto 3D apresentado na
Etapa 3;
Arquivos referentes à biblioteca de realidade aumentada FLARToolKit
apresentado na Etapa 4;
Arquivo de leitura do marcador apresentado na Etapa 2 para que no momento
em que o usuário final apontar o marcador impresso a frente da webcam a
aplicação web possa interpretar os dados recebidos.
29
Desse modo a aplicação web poderá reconhecer e interpretar as informações do
ambiente real com a ajuda da biblioteca de realidade aumentada e demonstrar ao usuário final
a mistura de imagens entre o ambiente real e virtual. A aplicação deverá também instruir ao
usuário final como realizar a execução do Flash Player e apresentar o recurso que permita
realizar a impressão do marcador criado na Etapa 2 para que o usuário final possa apontá-lo à
frente da webcam durante a utilização da aplicação.
3.1.2 Etapa 2 – Desenvolvimento do Marcador
Para que a aplicação de realidade aumentada possa reconhecer os dados obtidos
por meio de dispositivo de transmissão de imagem do ambiente real como, por exemplo, a
webcam, é necessária a criação de uma marca de detecção para que a aplicação possa
identificar os dados recebidos e realizar a mistura do ambiente virtual com o ambiente real.
As aplicações que trabalharem em conjunto com a biblioteca FLARToolKit podem ter sua
própria marca de detecção definida, porém é importante levar em consideração que a marca
de detecção criada deve ser de fácil interpretação para a aplicação.
O marcador deve se apresentar de forma diferente a cada movimentação realizada
pelo usuário final, dessa forma com o auxílio da biblioteca PaperVision3D o FLARToolKit
poderá interpretar corretamente a direção para apresentar o objeto 3D criado. A Figura 3.2
demonstra dois marcadores para interpretação da aplicação de realidade aumentada onde o
marcador A causaria problemas na detecção pela aplicação, já o marcador B seria mais
aconselhado pelo fato de que a aplicação consegue interpretar de uma melhor forma os
ângulos de movimentação do marcador pelo usuário final.
Figura 3.2 – Demonstração de marcadores para reconhecimento pela aplicação. (Fonte: Autor).
30
Segundo Consularo et al. (2007) por meio do rastreamento do marcador é possível
obter as coordenadas ao realizar a sua identificação verificando na imagem recebida pelo
dispositivo de entrada o objeto mais similar a um quadrado e então dessa forma seus quatro
cantos são extraídos e também sendo possível realizar a identificação do objeto interno do
marcador caso o mesmo possua um. A biblioteca de realidade aumentada utiliza o centro da
webcam como origem da projeção e as coordenadas são obtidas por meio do centro do
marcador, após realizar a interpretação do marcador por meio dos dados recebidos pela
webcam a aplicação de realidade aumentada transforma então os dados recebidos em uma
imagem binária (com valores em preto e branco).
A aplicação de realidade aumentada requisita informações de um arquivo que
possui os dados binários da geração do marcador impresso para que dessa forma, no momento
em que o usuário final apontar o marcador para a webcam a aplicação possa comparar os
dados recebidos com os dados previamente cadastrados no arquivo de reconhecimento do
marcador. Para uma correta interpretação do marcador é importante ressaltar que a
identificação pela aplicação de realidade aumentada pode encontrar dificuldades para realizar
o reconhecimento se estiver, por exemplo, em um ambiente com pouca luminosidade.
Em sistemas mais complexos também é possível aplicar a utilização de mais de
um marcador vinculado a uma mesma aplicação de realidade aumentada, o marcador não
precisa necessariamente ser movimentado pelo usuário final, basta que a webcam realize o
reconhecimento do mesmo. O usuário final pode, por exemplo, movimentar o marcador
impresso com a mão, fixar no corpo ou em algum objeto, fixá-lo na parede e apontar a
webcam para ele. A Figura 3.3 demonstra a execução de uma aplicação de realidade
aumentada realizando o reconhecimento dos marcadores impressos em um livro e o resultado
final sendo apresentado ao usuário final por meio de um monitor em conjunto com recursos
de som.
Figura 3.3 – Demonstração de realidade aumentada com utilização de webcam e marcador. (Fonte: KIRNER e
KIRNER, 2011).
31
A Figura 3.4 apresenta uma demonstração real do ambiente de execução da
aplicação de realidade aumentada demonstrado na Figura 3.6. Conforme o usuário final
muda a página a aplicação reconhece o novo marcador identificado e realiza a projeção do
objeto 3D, que segundo Kirner e Kirner (2011) gera uma sensação de realismo híbrido.
Figura 3.4 – Demonstração real da execução da aplicação de realidade aumentada. (Fonte: KIRNER e KIRNER,
2011).
3.1.3 Etapa 3 – Modelagem do Objeto 3D
Antes de criar o ambiente de realidade aumentada é necessário realizar a modelagem
do objeto 3D que será demonstrado ao usuário final misturado ao ambiente real, sem a criação
do objeto 3D a utilização de realidade aumentada na aplicação não apresentará resultado.
A biblioteca de realidade aumentada FLARToolKit trabalha em conjunto com a
biblioteca PaperVision3D, que, permite a projeção de objetos 3D baseado no reconhecimento
de arquivos com formato Collada4 (cuja extensão é DAE). Existem vários aplicativos que
permitem a modelagem de objetos 3D e a realização de sua exportação para o formato
Collada (.dae), até mesmo sites que já possuem objetos 3D prontos e permitem realização de
download nesse formato.
Para Kirner e Tori (2006) dependendo da capacidade de movimentação, os objetos
virtuais podem ser classificados como estáticos ou dinâmicos. Além disso, possuem restrições
físicas como, por exemplo, o limite de translação e rotação. A navegação no mundo virtual
depende de uma série de fatores uma vez que envolve dispositivos não convencionais de
entrada e saída e é realizada em tempo real.
4 Colaborative Design Activity – Tradução do autor: Atividade de Design Colaborativo
32
A combinação de movimentos de translação e rotação permite realizar a navegação no
espaço tridimensional que ocorre no ambiente real e virtual com o mesmo princípio,
reproduzindo, por exemplo, os movimentos de um avião. Permite-se dessa forma a deslocação
nos três eixos cartesianos X, Y, Z e também a realização da rotação em torno deles. Isto
resulta no que segundo Kirner e Tori (2006) é chamado de seis graus de liberdade, sendo três
de translação e três de rotação. A Figura 3.5 demonstra os movimentos de rotação e translação
nos três eixos cartesianos X, Y e Z.
Figura 3.5 – Demonstração dos três eixos cartesianos X, Y, Z. (Fonte: KIRNER e TORI, 2006).
Segundo Kirner e Tori (2006) as aplicações gráficas tridimensionais (3D) necessitam
esforço computacional considerável para processá-las. Dessa forma é necessário que o esforço
seja alocado entre as placas gráficas, na placa principal do computador ou dispositivo que
permite a projeção de objetos 3D.
Com base nesse princípio o desenvolvimento de aplicações ou objetos 3D que
exploram ao máximo o potencial computacional faz com que essas aplicações ou objetos
sejam dependentes do hardware para o qual foram desenvolvidas, dessa forma não é possível
considerar o mesmo desempenho de processamento em um computador ou dispositivo com
hardware inferior. Por esse motivo alguns cuidados na modelagem de aplicações ou objetos
3D devem ser tomados, levando-se em consideração os ambientes que possuem diferentes
tipos de hardware com diferentes configurações buscando garantir dessa forma a eficiência no
processamento e a qualidade da aplicação.
A Figura 3.6 demonstra um ambiente da utilização de objetos 3D em conjunto com a
realidade aumentada apresentando ao usuário final em tempo real a mistura entre o ambiente
real e virtual.
33
Figura 3.6 – Demonstração de objetos 3D em ambiente real com a utilização de realidade aumentada. (Fonte:
KIRNER e TORI, 2006).
Além de objetos 3D a realidade aumentada também permite a utilização de dados
multimídia com conteúdo de vídeo, texturas, sons, etc, por meio de softwares de autoria que
abrange desenvolvimento diferenciado para execução desses recursos assim como também
com a interação de diferentes tipos de dispositivos de entrada de dados.
3.1.4 Etapa 4 – Criação do Ambiente de Realidade Aumentada
Com o desenvolvimento do marcador e a modelagem do objeto 3D é possível realizar
a criação do ambiente de realidade aumentada para possibilitar o resultado da mistura de
imagens entre o ambiente real e virtual. Para que seja possível utilizar esses recursos é
necessário que exista conexão entre a aplicação web e uma biblioteca de programação que
possua as instruções necessárias para projetar o ambiente de realidade aumentada. Dessa
forma com a utilização de Flash Player, que suporta a linguagem ActionScript é possível
realizar a interação entre o usuário final e a aplicação com base na conexão da página web e a
biblioteca de realidade aumentada, permitindo assim a projeção das imagens processadas para
visualização do usuário final.
Para Kirner e Tori (2006) o software de realidade aumentada tem como principal
objetivo promover o rastreamento de objetos reais estáticos e móveis, e ajustar os objetos
virtuais no cenário se preocupando com pontos de vista fixos e em movimento. O software de
realidade aumentada deve garantir dessa forma o controle da simulação ou animação dos
objetos virtuais misturados no ambiente real permitindo a interação com o usuário final.
Um exemplo muito conhecido de biblioteca para a utilização de realidade aumentada
em aplicações web é o FLARToolKit que segundo Kirner e Kirner (2011) é uma versão em
linguagem de programação ActionScript 3.0 baseada na biblioteca ARToolKit, permitindo
34
dessa forma a utilização de realidade aumentada em aplicações web em conjunto com a
biblioteca PaperVision3D para modelagem de objetos 3D. O ARToolKit também é uma
biblioteca de realidade aumentada, porém não é baseada em ActionScript, dessa forma não é
possível utilizá-la em conjunto ao Flash para aplicações web.
Conforme Kirner e Kirner (2011) com a liberação para uso do FLARToolKit em 2008,
onde o ARToolKit foi portado para a plataforma Flash, os desenvolvedores profissionais de
publicidade passaram a utilizar essa ferramenta para agregar interação a aplicações web, o que
proporcionou grande visibilidade e popularidade à área de realidade aumentada.
Segundo Kirner e Tori (2006) a visualização de objetos virtuais em ambientes reais
pelo usuário final pode ser baseada em dois tipos:
Visão direta (imersiva): Quando um usuário final tem a possibilidade de
visualização do ambiente misturado, apontando os olhos diretamente para as
posições reais com cena óptica ou por vídeo a realidade aumentada pode ser então
considerada de visão direta. A visão direta está baseada na possibilidade de
visualização de imagens a olho nu ou trazidas por meio de vídeo, enquanto os
objetos virtuais podem ser projetados diretamente nos olhos sem que o usuário
final tenha que olhar para um monitor para visualizar as imagens do ambiente real.
Esse ambiente de interação pode ser utilizado com, por exemplo, óculos que
permite visão direta ao mundo real, dispositivos de mão como celulares, tablets,
etc.
Visão indireta (não-imersiva): Aplicação de realidade aumentada baseada em
visão indireta permite com que o usuário final possa interagir por meio de
dispositivos tais como a webcam, que transmitem imagens do mundo real para a
aplicação que possui realidade aumentada. Nesse ambiente o usuário final
visualiza as cenas do mundo real em algum monitor ou dispositivo de projeção não
sendo considerado dessa forma como um tipo de visualização direta alinhada a
posições reais, dessa forma os dados recebidos pelo dispositivo são interpretados
pela aplicação e em um display é demonstrado ao usuário o resultado final desse
processo. O desenvolvimento da aplicação de realidade aumentada deste trabalho
também é baseado no ambiente de visualização de forma indireta.
35
O trabalho do FLARToolKit está baseado na interseção de bitmaps entre a imagem
captada pela webcam e o marcador impresso. Após o reconhecimento do marcador o
FLARToolKit calcula a matriz que representa a deformação 3D da marca de detecção e a
partir desse cálculo é possível realizar a interação entre o mundo real e objetos 3D com a
ajuda da biblioteca de modelagem PaperVision3D.
3.1.5 Etapa 5 – Utilização de Dispositivos de Hardware
Para uma melhor interação entre o usuário final e a aplicação os recursos de hardware
não devem obstruir os movimentos do usuário final para que dessa forma ele possa, por
exemplo, interagir com as mãos livremente e manipular os objetos virtuais. Os recursos
computacionais para utilização de aplicações em realidade aumentada podem ser definidos
como:
Dispositivos de Entrada: Correspondem aos equipamentos que permitem captura
de informações do ambiente real ou fornecidas pela interação do usuário final com
o equipamento, sendo essenciais para a aplicação de realidade aumentada.
Dispositivos de Saída: Seu principal objetivo é demonstrar a apresentação do
resultado do processamento dos dados recebidos pelos dispositivos de entrada com
os dados contidos na aplicação de realidade aumentada.
Segundo Kirner e Tori (2006) o ambiente computacional deverá conseguir coordenar a
visualização e os sinais de entrada e saída em tempo real e todas as tarefas deverão funcionar
com velocidade suficiente para assegurar o processamento dos dados em tempo real.
Dessa forma a plataforma computacional para o ambiente de realidade aumentada
deverá conter as características apropriadas para multimídia e realidade virtual, como, por
exemplo: capacidade de processamento e transferência de mídia (imagem, som, etc.);
capacidade de processamento gráfico 3D; interação em tempo real; e suporte a dispositivos
não convencionais.
Existem vários dispositivos que permitem a utilização de realidade aumentada, como,
por exemplo, celulares, tablets, estações de trabalho, supercomputadores, computadores
pessoais, etc. Para Kirner e Tori (2006) embora os computadores pessoais sejam considerados
36
computadores mais lentos, é interessante notar que os computadores pessoais de hoje são mais
potentes que estações de trabalho de poucos anos atrás, além do custo acessível atualmente
das placas gráficas para melhor desempenho de processamento de imagens. A Figura 3.7
demonstra a execução de uma aplicação de realidade aumentada em um dispositivo móvel
Figura 3.7 – Demonstração de realidade aumentada em dispositivo móvel. (Fonte: GARBIN; DAINESE;
KIRNER, 2006).
A utilização de realidade aumentada em aplicações web também permite com que o
usuário final possa interagir com diferentes tipos de dispositivos tais como a webcam, teclado,
mouse, joystick, etc. Esta pesquisa está baseada na utilização de realidade aumentada em
aplicação web com o apoio de webcam para transmissão de imagens do ambiente real para o
computador para que dessa forma a aplicação com realidade aumentada possa interpretar os
dados recebidos pela webcam e realizar a mistura das imagens do ambiente real com os
objetos virtuais apresentando o resultado final ao usuário final por meio de um monitor.
3.1.6 Etapa 6 – Execução da Aplicação Web
Para que seja possível executar a aplicação web, que possui os recursos de realidade
aumentada de forma correta, o usuário final deverá ser instruído a realizar os seguintes
procedimentos:
37
Imprimir o marcador: Ao acessar a página web, o usuário final deverá possuir
acesso ao recurso na própria página, que permita a impressão do marcador que foi
desenvolvido na etapa 5.
Verificar dispositivos de hardware: O usuário final deverá ser instruído para
verificar se os dispositivos de hardwares necessários para a utilização dos recursos
de realidade aumentada como, por exemplo, a webcam, estão ligados e conectados
corretamente ao computador.
Execução do Flash Player: Caso o computador que o usuário final esteja
utilizando para acessar a aplicação web não possua os recursos do Flash Player,
instalados a aplicação deverá instruir o usuário final e apresentar os procedimentos
necessários para instalar o Flash Player.
Com a realização dos procedimentos mencionados anteriormente o usuário final
poderá apontar o marcador impresso com as mãos ou apoiando sobre alguma superfície fixa a
frente da webcam e visualizará, em tempo real, por meio da execução do Flash Player, a
mistura de imagens entre o ambiente real e virtual, realizada com os recursos de realidade
aumentada executados na aplicação web. Conforme o usuário final movimenta o marcador a
frente da webcam uma aplicação que projeta, por exemplo, um objeto 3D, consegue
identificar a posição onde o objeto deve ser apresentado no monitor em tempo real de acordo
com a movimentação do marcador impresso pelo usuário final.
O desenvolvimento de aplicações mais complexas pode permitir, por exemplo, além
da projeção do objeto 3D, realizar a chamada para um menu interativo, execução de sons ou
projeção de outros tipos de multimídia, permitindo também a utilização de outros dispositivos
de entrada de dados para que a aplicação possa identificar as funções que devem ser
realizadas.
3.2 – Considerações Finais
Este capítulo teve como objetivo principal apresentar os meios básicos necessários
para utilização de realidade aumentada em uma aplicação web, separando esse processo em
etapas para um melhor entendimento do desenvolvimento da aplicação. Baseando-se nessas
38
etapas, o capítulo apresentou as principais ferramentas que apoiam o desenvolvimento da
aplicação. No capítulo 4 será demonstrada uma abordagem de realidade aumentada para o
comércio eletrônico, tendo como base para o desenvolvimento, as principais ferramentas já
mencionadas e as etapas desse processo.
39
4. APLICAÇÃO DE REALIDADE AUMENTADA PARA UM SITE DE COMÉRCO ELETRÔNICO
Este capítulo apresenta os meios necessários para criação do ambiente de interação
entre o usuário final e um produto comercializado por meio de um site fictício de comércio
eletrônico, incorporando os recursos de realidade aumentada com base na abordagem descrita
no Capítulo 3.
4.1 – Ambiente de Realidade Aumentada Aplicada a um Site de Comércio Eletrônico
Nesta seção o processo é baseado no desenvolvimento de um site fictício de comércio
eletrônico, apresentando a comercialização de um produto e permitindo a interação entre o
usuário final e a aplicação por meio de recursos de realidade aumentada. O processo foi
dividido em etapas, seguindo a abordagem de desenvolvimento baseada em realidade
aumentada para web apresentada no Capítulo 3, possibilitando dessa forma uma melhor
compreensão das etapas necessárias para implementação de realidade aumentada no site de
comércio eletrônico.
Figura 4.1 – Etapas da abordagem de realidade aumentada para o comércio eletrônico (Fonte: Autor).
40
A Figura 4.1 ilustra a abordagem de aumentada para o comércio eletrônico e suas
respectivas etapas, relacionando as ferramentas utilizadas em cada uma delas com base na
abordagem de desenvolvimento baseada em realidade aumentada para web apresentada no
Capítulo 3. A execução das etapas da abordagem de realidade aumentada para o comércio
eletrônico tem como objetivo atingir o resultado final demonstrado na Figura 4.2, onde é
ilustrada a interação entre o usuário final e o produto fictício com a utilização de realidade
aumentada no site desenvolvido.
Figura 4.2 – Demonstração do ambiente de interação entre o usuário e o produto fictício (Fonte: Autor).
4.1.1 Etapa 1 – Desenvolvimento do Site de Comércio Eletrônico
A internet pode ser considerada um dos meios mais influentes para a difusão da
comunicação global entre pessoas e empresas. Para Tigre e Dedrick (2003), do ponto de vista
econômico, o potencial da internet é refletido principalmente por meio do comércio
eletrônico, permitindo o fortalecimento desse meio de comunicação com compartilhamento de
redes, arquivos e equipamentos além do conhecimento tecnológico e canais de distribuição.
A expansão do comércio eletrônico está diretamente ligada à melhoria da
infraestrutura de telecomunicações e ao aumento de consumidores que passaram a possuir
melhores condições para adquirir os equipamentos necessários para o acesso à internet.
41
Segundo Felipini (2006) os compradores antigos também estão comprando com mais
frequência indicando que o ato de comprar pela internet deixa de ser uma novidade para se
tornar um hábito.
A constante expansão do comércio eletrônico exige que as empresas estejam sempre
em busca de novas tecnologias com o intuito de manter e obter novos clientes. O crescimento
do comércio eletrônico é acompanhado pelo aumento de conhecimento dos usuários que se
tornam cada dia mais exigentes. Com base nesse ambiente, pode-se aplicar a utilização de
realidade aumentada permitindo ao usuário melhor compreensão das informações
apresentadas e maior interação, possibilitando a expansão de negócios por meio do comércio
eletrônico.
Para que o ambiente de realidade aumentada pudesse ser criado para fins de validação
teórica da abordagem apresentada no Capítulo 3, foi necessário primeiramente desenvolver o
site fictício de comércio eletrônico, considerado como a base para realização das demais
etapas do processo. Para o desenvolvimento do site foram realizados os seguintes
procedimentos:
Desenvolvimento da página HTML: O site fictício de comércio eletrônico foi
desenvolvido baseado em uma página HTML simples, possibilitando o usuário
final à visualização do produto comercializado. O site também apresenta os
recursos necessários para utilização de realidade aumentada e suas respectivas
instruções para utilização, que serão demonstradas no decorrer de cada etapa da
abordagem de realidade aumentada para o comércio eletrônico.
Utilização de CSS (Cascading Style Sheets): Para um melhor gerenciamento dos
dados contidos na página HTML foram utilizados os recursos de CSS para
definição das regras de formatação aplicadas aos elementos da marcação do site.
Com isso foi criado um arquivo denominado estilo.css que contém todos os dados
necessários para o controle dos elementos apresentados na página HTML.
Utilização de Lightbox: Para visualização das imagens do produto foram
utilizados os recursos de Lightbox, que é um script desenvolvido na linguagem
JavaScript e distribuído gratuitamente, permitindo a sobreposição de imagens na
página atual, com o objetivo de apresentar o produto ao usuário final quando o
mesmo não desejar utilizar realidade aumentada.
42
Conteúdo do site: O site deve disponibilizar ao usuário final informações para o
modo de uso da realidade aumentada com o produto fictício apresentado. Para isso
algumas instruções foram apresentadas na página como, por exemplo, verificação
do dispositivo de webcam para garantir que o mesmo esteja funcionando
corretamente antes de utilizar os recursos de realidade aumentada, além do modo
de ativação do Flash Player e instruções para impressão do marcador.
A Figura 4.3 ilustra campo que compõe o site fictício de comercio eletrônico com as
instruções para utilização de realidade aumentada com o produto comercializado.
Figura 4.3 – Instruções para utilização de realidade aumentada apresentada no site fictício (Fonte: Autor).
Para que os recursos de realidade aumentada possam ser utilizados pelo usuário final,
o site de comércio eletrônico demonstra a venda de um produto fictício definido para essa
abordagem, como um brinquedo infantil (Miniatura de um Tanque de Guerra). A Figura 4.4
apresenta o resultado final do desenvolvimento do site, com as informações do produto
comercializado e o conteúdo necessário para utilização de realidade aumentada, que será
incorporado na página HTML desenvolvida e será apresentado na etapa de criação do
ambiente de realidade aumentada.
43
Figura 4.4 – Demonstração do produto comercializado no site fictício de comércio eletrônico (Fonte: Autor).
4.1.2 Etapa 2 – Desenvolvimento do Marcador
Duas ferramentas foram necessárias para o desenvolvimento do marcador, sendo a
primeira o Corel Draw, que foi utilizado para criar a figura abstrata que será detectada pelos
recursos de realidade aumentada inclusos no site fictício de comércio eletrônico, obedecendo
às regras apresentadas na abordagem de desenvolvimento baseada em realidade aumentada
para web. Baseando-se na abordagem, a figura inclusa no marcador deve possuir forma
diferente a cada movimentação realizada pelo usuário final, para que os recursos de realidade
aumentada possam interpretar corretamente a direção real de onde o objeto 3D deve ser
apresentado.
A Figura 4.5 ilustra o exemplo de marcador criado com o aplicativo Corel Draw onde
segundo Kirner e Tori (2006) deve apresentar uma moldura retangular e com um símbolo
44
marcado em seu interior, permitindo dessa forma o uso de técnicas de visão computacional
para calcular a posição real da câmera e sua orientação em relação ao marcador.
Figura 4.5 – Exemplo de marcador que será utilizado pelo usuário e reconhecido pela aplicação web (Fonte:
Autor).
Com a criação do marcador, o segundo passo é possibilitar a sua detecção pelo site
fictício de comércio eletrônico, que contém os recursos de realidade aumentada. Para isso fez-
se necessária a utilização do aplicativo ARToolKit Marker Generator para criação do arquivo
que contém os dados necessários para o reconhecimento da biblioteca de realidade aumentada
FLARToolKit.
Para que o aplicativo possa ser utilizado, primeiramente é necessário que a figura
criada com auxílio do aplicativo Corel Draw seja impressa em uma folha de papel indicada
preferencialmente no tamanho A4. A impressão da figura na folha de papel deve apresentar
uma imagem nítida, facilitando o reconhecimento pelo aplicativo ARToolKit Marker
Generator, nada impede que a folha de papel seja recortada descartando a área branca ao
redor da figura impressa, porém alguns cuidados devem ser tomados para que não haja
obstrução de qualquer parte da figura, permitindo com que dessa forma o aplicativo possa
reconhecer os quatro cantos da moldura.
Com a impressão do marcador na folha de papel é possível executar o aplicativo
ARToolKit Marker Generator, que para sua correta utilização é necessário que o computador
possua instalado o Adobe AIR, que permite a utilização de aplicações desktop com as
tecnologias de desenvolvimento de páginas web, sua distribuição é gratuita e seu download
pode ser realizado por meio do site oficial da Adobe. Antes de executar o aplicativo
45
ARToolKit Marker Generator é necessária verificação da webcam conectada ao computador,
confirmando se a mesma está em correto funcionamento e disponível para utilização, com
isso o aplicativo consegue detectar a webcam da forma como é ilustrado na Figura 4.6.
Figura 4.6 – Demonstração da execução do aplicativo ARToolKit Marker Generator com reconhecimento da
webcam conectada ao computador (Fonte: Autor).
Com a detecção da webcam pelo aplicativo, o próximo passo é apontar o marcador
impresso para que seja possível o reconhecimento pela aplicação. Ao lado do menu que
apresenta as opções de webcam disponíveis, existe o recurso “Save Pattern”, que é
apresentado desabilitado enquanto o aplicativo não conseguir reconhecer o marcador
impresso para permitir salvar o arquivo padrão. Deve-se levar em consideração que para uma
correta interpretação do marcador pela aplicação, essa etapa do processo não deve ser
realizada em um ambiente com pouca luminosidade, reduzindo dessa forma qualquer
dificuldade do aplicativo para detecção do marcador.
A Figura 4.7 ilustra o momento em que é apontado o marcador impresso à frente da
webcam com a utilização do aplicativo ARToolKit Marker Generator, onde ao realizar o
reconhecimento da moldura, o aplicativo apresenta um contorno em vermelho indicando que
a figura foi reconhecida. Nesse momento o recurso “Save Pattern” é apresentado como
habilitado, permitindo salvar o arquivo padrão de reconhecimento do marcador.
46
Figura 4.7 – Demonstração da utilização do ARToolKit Marker Generator (Fonte: Autor).
No momento em que o recurso “Save Pattern” é utilizado, o aplicativo ARToolKit
Marker Generator congela a imagem detectada, permitindo dessa forma salvar os dados
reconhecidos em um arquivo com a extensão (.pat), que armazenará as informações
necessárias para detecção pela biblioteca FLARToolKit, implementada no site fictício de
comércio eletrônico. O arquivo criado foi salvo com a denominação “marcador.pat”, que
será utilizada em funções apresentadas na etapa de criação do ambiente de realidade
aumentada.
4.1.3 Etapa 3 – Modelagem do Objeto 3D
Para modelagem do objeto 3D foi utilizado o aplicativo Swift 3D, onde foi criado o
produto infantil definido para utilização no site fictício de comércio eletrônico. O aplicativo
Swift 3D possui a função que permite exportar o objeto 3D criado para o tipo de arquivo
Collada (.dae), denominado como “objeto.dae” para padronizar sua localização pelos demais
arquivos, que contém a configuração do ambiente de realidade aumentada no site de comércio
eletrônico.
A Figura 4.8 demonstra o ambiente de desenvolvimento do produto infantil fictício
utilizado no site de comercio eletrônico, após sua criação foi utilizado o recurso “Export
Scene To PaperVision3D” para exportar o objeto 3D criado para o formato collada (.dae).
47
Figura 4.8 – Demonstração da modelagem do objeto 3D com o aplicativo Swift 3D (Fonte: Autor).
Ao exportar o objeto 3D para o formato collada (.dae) o aplicativo Swift 3D também
cria os arquivos em Flash com extensão (.fla) e Action Script com extensão (.as) para permitir
a interação com a biblioteca PaperVision3D. Porém para este projeto faz-se necessário apenas
a utilização do arquivo collada (.dae) e as respectivas imagens criadas no formato (.jpg)
vinculadas ao conteúdo do objeto 3D, uma vez que o desenvolvimento dos arquivos Flash e
Action Script serão apresentados na etapa de criação do ambiente de realidade aumentada.
4.1.4 Etapa 4 – Criação do Ambiente de Realidade Aumentada
Após a conclusão das etapas anteriores juntamente com a realização do
desenvolvimento do site fictício de comércio eletrônico, do marcador e da modelagem do
objeto 3D, é possível então criar o ambiente de realidade aumentada para permitir a interação
entre o usuário final e o produto que será apresentado no site. Para criação desse ambiente
foram realizados os seguintes procedimentos:
Implementação das funções necessárias para execução do arquivo
AC_RunActiveContent.js na página HTML desenvolvida
O principal arquivo do site de comércio eletrônico que contém as funções
necessárias para apresentar o produto fictício ao usuário final com os recursos de
realidade aumentada é denominado como index.html. Este arquivo é apresentado no
Apêndice A, ele possui uma função para solicitar a execução de dados contidos no
arquivo AC_RunActiveContent.js, de propriedade da empresa Adobe Systems
Incorporated, e responsável pelo controle de execução de arquivos com a extensão
48
(.swf), que possuem suporte para o Adobe Flash Player e Adobe AIR, arquivos do tipo
(.swf) permitem utilizar gráficos vetoriais, texto, vídeo, webcam e som em ambiente
desktop e principalmente por meio de internet.
A Figura 4.9 ilustra o resultado da execução das funções responsáveis pela
conexão com o arquivo AC_RunActiveContent.js, que executa o aplicativo Adobe
Flash Player no site fictício de comércio eletrônico. É por meio dessa conexão que o
site consegue executar o arquivo Flash (.swf).
Figura 4.9 – Demonstração da execução do Adobe Flash Player (Fonte: Autor).
Download e configuração da biblioteca FLARToolKit
Após a realização do desenvolvimento do site fictício de comércio
eletrônico é então possível realizar o download da biblioteca FLARToolKit5. O
arquivo que contém os dados da biblioteca FLARToolKit também apresenta alguns
exemplos prontos para utilização de realidade aumentada com objetos 3D no
formato collada (.dae), além do marcador disponível para impressão.
Os dados contidos no arquivo Earth.as, que é um dos exemplos disponíveis
com a biblioteca FLARToolKit, serão utilizados como base para desenvolvimento
do arquivo RealidadeAumentada.as, que será utilizado no site fictício de comércio
eletrônico. As pastas DATA, ORG e os arquivos ARAppBase.as e PV3DARApp.as
também pertencentes à biblioteca FLARToolKit, devem ser salvos na raiz do local
5 Disponível para download em: <http://www.libspark.org/wiki/saqoosha/FLARToolKit/downloadlist>
49
onde está localizado o conteúdo criado na etapa de desenvolvimento do site de
comércio eletrônico.
Criação do arquivo RealidadeAumentada.fla
Para que seja possível criar arquivos com a extensão (.fla) é necessário
utilizar o Adobe Flash, que permite o desenvolvimento de aplicações em Flash
com o apoio de linguagem Action Script para ambiente desktop ou internet. Com a
utilização do Adobe Flash é possível criar um novo documento com o recurso
“New Document”, onde é criado um arquivo com extensão (.fla) denominado para
este projeto como RealidadeAumentada.fla. Após a criação do documento é
possível acessar o campo de propriedades e definir o nome da classe como
“RealidadeAumentada”, que será responsável por executar as funções para
utilização do ambiente de realidade aumentada contidas no arquivo
RealidadeAumentada.as.
Ainda em propriedades do documento, o campo “profile” possui a opção
“edit...” para definir os formatos de arquivos vinculados ao documento Flash
criado. Para este projeto foi definido o vínculo com o arquivo
RealidadeAumentada.swf que é criado automaticamente pelo aplicativo Adobe
Flash após utilizar a opção “Debug Movie”. Em ambientes onde não for possível
utilizar a ferramenta Adobe Flash para desenvolvimento do arquivo Flash, é
possível utilizar um dos arquivos de exemplo contidos na biblioteca FLARToolKit
e realizar apenas a edição do arquivo com o conteúdo em Action Script (.as).
Desenvolvimento do arquivo RealidadeAumentada.as
O arquivo RealidadeAumentada.as apresentado no Apêndice B contém as
funções necessárias para visualização do arquivo tipo collada (.dae), criado
durante a modelagem do objeto 3D. Para projetos mais complexos é possível
adicionar bibliotecas para executar funções como, por exemplo, execução de
música junto à apresentação do objeto 3D entre outros tipos de interação.
Este arquivo possui incorporada a função para definir relação de herança
com o arquivo PV3DARApp.as, que por sua vez possui função para relacionamento
com o arquivo ARAppBase.as, responsável pela definição dos parâmetros de
configuração e utilização da biblioteca FLARToolKit, gerenciando todos os seus
aspectos incluindo entrada de vídeo, detecção do marcador, etc. Essa é a forma
50
padrão como os arquivos responsáveis pela utilização da biblioteca FLARToolKit
são distribuídos, porém nada impede que o conteúdo dos três arquivos
mencionados sejam incorporados em um único arquivo definindo todas as funções
para utilização de realidade aumentada.
O arquivo RealidadeAumentada.as é baseado no desenvolvimento em
linguagem Action Script, da plataforma Adobe Flash, e disponível para edição por
meio de qualquer outro aplicativo que possua os recursos necessários para o
mesmo. Os arquivos RealidadeAumentada.as e RealidadeAumentada.fla devem ser
salvos no mesmo local onde está localizado o conteúdo criado na etapa de
desenvolvimento do site fictício de comércio eletrônico.
Configuração para reconhecimento do marcador
Com o arquivo RealidadeAumentada.as criado é então possível definir os
comandos para reconhecimento do marcador. No arquivo existe o comando
“this.init('Data/camera_para.dat', 'Data/marcador.pat');”, que define o caminho
onde estão localizados os arquivos camera_para.dat e marcador.pat. O arquivo
camera_para.dat contém as configurações de propriedade da webcam, definidas
para reconhecimento do FLARToolKit, sendo executadas a cada vez que a
aplicação de realidade aumentada é iniciada, o arquivo marcador.pat é o arquivo
que contém os dados criados na etapa de desenvolvimento do marcador, ambos os
arquivos estão localizados na pasta DATA mencionada na etapa de configuração da
biblioteca FLARToolKit.
Configuração para reconhecimento do objeto 3D
Assim como as configurações realizadas para detecção do marcador, o
reconhecimento do objeto 3D é definido no arquivo RealidadeAumentada.as, onde
por meio do comando “produto.load("objeto/objeto.dae");” define-se a
localização do objeto 3D denominado na etapa de modelagem do objeto 3D como
objeto.dae, reconhecido pela biblioteca PaperVision3D, e vincula sua execução
junto a variável de programação definida como “produto”. Assim como a
localização para todos os arquivos necessários para criar o ambiente de realidade
aumentada, o arquivo objeto.dae contido na pasta objeto, está localizado no mesmo
local onde está o conteúdo criado na etapa de desenvolvimento do site fictício de
comércio eletrônico.
51
Verificação dos procedimentos realizados
A Figura 4.10 ilustra o ambiente onde estão localizados todos os arquivos e
pastas apresentados nos procedimentos necessários para criação do ambiente de
realidade aumentada.
Figura 4.10 – Ilustração do ambiente que contém os arquivos da abordagem (Fonte: Autor).
Para que o site fictício de comércio eletrônico possa utilizar corretamente
os recursos de realidade aumentada, todos os arquivos necessários para sua correta
execução devem estar dispostos conforme apresentado na Figura 4.10. Dessa forma
no momento em que o usuário final realizar acesso ao site, o processo será
executado de forma correta, solicitando a execução de cada arquivo ou função
conforme descritos nos procedimentos da etapa de criação do ambiente de
realidade aumentada.
4.1.5 Etapa 5 – Execução do Site de Comércio Eletrônico
Com a execução correta de todas as etapas apresentadas, desde o desenvolvimento do
site fictício de comércio eletrônico até a criação do ambiente de realidade aumentada, o
52
usuário final pode então realizar a interação entre o ambiente real e virtual, com base nos
seguintes procedimentos:
Acessar o site
No momento em que o usuário final acessar o site poderá visualizar o conteúdo
completo da página incluindo os dados do produto e sua forma de visualização
conforme ilustrado na Figura 4.11.
Figura 4.11 – Ilustração da visualização inicial do usuário ao acessar o site fictício de comercio eletrônico
(Fonte: Autor).
Visualização de imagens do produto sem a utilização de realidade aumentada
Caso o usuário final não deseje visualizar o produto com os recursos de
realidade aumentada, o site disponibiliza acesso para visualização de imagens estáticas
do produto como é demonstrado na Figura 4.12, a única opção disponível para o
usuário final se desejar verificar o produto desse modo é a de avançar ou retroceder
com os respectivos recursos “Next” e “Prev” entre as três imagens disponíveis.
53
Figura 4.12 – Demonstração da visualização de imagens estáticas do produto (Fonte: Autor).
Verificação das instruções para utilização de realidade aumentada
Se o usuário final desejar visualizar o produto com os recursos de realidade
aumentada, o site apresenta instruções para seu modo de utilização conforme ilustrado
na Figura 4.13, onde o primeiro passo é verificar se a webcam está funcionando
corretamente e disponível para utilização no site.
Figura 4.13 – Instruções para visualização do produto com utilização de realidade aumentada (Fonte: Autor).
54
Impressão do marcador
O próximo passo é imprimir o marcador utilizando o recurso “Clique Aqui
Para Imprimir”, apresentado para usuário final no site, permitindo com que seja
realizada a impressão do marcador que será apontado pelo usuário final a frente da
webcam, conforme instruções do passo 3 ilustrado na Figura 4.13. A Figura 4.14
demonstra a visualização do marcador para impressão após utilizar o recurso de
impressão disponível no site de comércio eletrônico.
Figura 4.14 – Visualização do marcado para impressão em folha de tamanho A4 (Fonte: Autor).
Ativação do Flash Player
Com a impressão do marcador o usuário final pode então ativar o recurso de
Flash Player, disponível no site fictício de comercio eletrônico, onde ao clicar em
“Permitir”, o aplicativo realiza conexão com a webcam conforme ilustrado na Figura
4.15.
55
Figura 4.15 – Demonstração da execução do Adobe Flash Player (Fonte: Autor).
Apontando o marcador a frente da webcam
Com a impressão do marcador e a permissão para conectar com a webcam, o
usuário final pode então apontar o marcador impresso à frente da webcam conforme
demonstrado na Figura 4.16.
Figura 4.16 – Demonstração do momento em que o usuário aponta o marcador a frente da webcam (Fonte:
Autor).
56
Iniciando a interação com o produto
Após apontar o marcador à frente da webcam, o site reconhece os dados do
marcador com a utilização da biblioteca FLARToolKit, dessa forma com o apoio da
biblioteca PaperVision3D e dos recursos de Flash o site apresenta o resultado da
interação entre o ambiente real e virtual com a utilização de realidade aumentada
conforme demonstrado na Figura 4.17.
Figura 4.17 – Demonstração da interação do usuário com o produto fornecido no site fictício de comercio
eletrônico (Fonte: Autor).
Uma das vantagens comparada à visualização de imagens estáticas do produto
é que o usuário final pode movimentar o marcador para diferentes direções, com isso o
objeto 3D acompanha os movimentos do marcador e a cada alteração modifica a
posição do objeto 3D no ambiente em tempo real.
57
Figura 4.18 – Demonstração do objeto 3D acompanhando a movimentação do marcador pelo usuário (Fonte:
Autor).
Outra vantagem comparada à visualização estática das imagens do produto
apresentado no site de comércio eletrônico é a possibilidade de apontar o marcador à
frente da webcam em diferentes distâncias, permitindo com que o usuário final possa
dessa forma visualizar o produto por diferentes ângulos, como é demonstrado na
Figura 4.19. Girando o marcador em um ângulo de 180º, o objeto 3D também
acompanha o marcador e apresenta o produto infantil do site de comércio eletrônico na
mesma posição em que se encontra o marcador em tempo real, isso é possível pelo
fato de o desenvolvimento do marcador ter sido realizado com a precaução de fazer
com que a figura criada no marcador se apresente sempre diferente a cada
movimentação realizada pelo usuário final, permitindo dessa forma com que os
recursos de realidade aumentada possam interpretar corretamente a posição real para
apresentação do objeto 3D.
58
Figura 4.19 – Demonstração do objeto 3D em diferentes ângulos acompanhando a movimentação do marcador
(Fonte: Autor).
4.2 – Considerações Finais
Este capítulo teve como principal objetivo apresentar as etapas básicas necessárias
para realizar a aplicação de realidade aumentada em um site fictício de comércio eletrônico,
bem como a descrição de cada recurso utilizado nas ferramentas que apoiam este processo.
Para isso foi utilizado como base na abordagem de desenvolvimento baseada em realidade
aumentada para web, demonstrada no Capítulo 3, permitindo dessa forma demonstrar o
resultado final ilustrando a interação entre o usuário final e o produto fictício disponível no
site de comércio eletrônico desenvolvido.
59
5. CONCLUSÕES E TRABALHOS FUTUROS
Realidade aumentada é uma tecnologia que surgiu no inicio da década de 60, porém
apresentou uma evolução de maior expressão nos últimos anos com a liberação de novas
bibliotecas de realidade aumentada para desenvolvedores, além da evolução dos dispositivos
de entrada e saída de dados. Isso faz com que novas pesquisas sejam constantemente
apresentadas juntamente com inovações vinculadas a esta tecnologia, que possui uma
perspectiva de evolução significativa para os próximos anos pelo fato de abranger sua
utilização para vários recursos de hardwares e em diferentes ambientes e segmentos.
O fato da utilização de realidade aumentada permitir uma maior interação por meio da
mistura de imagens entre o ambiente real e virtual, em conjunto com sua distribuição em
diferentes tipos de áreas como, por exemplo, saúde, educação, jogos e entretenimento, faz
com que o uso dessa tecnologia possa ser mais bem aceito nos ambientes em que for aplicada.
Para que isso seja possível o desenvolvimento deve ser realizado sempre com a intenção de
permitir com que o usuário final utilize suas habilidades e conhecimento intuitivo para
manipulação dos objetos virtuais, possibilitando desse modo com que o usuário final se sinta
livre para tomar decisões, manipular e interagir com a aplicação.
Este trabalho teve como objetivo propor uma abordagem de desenvolvimento baseada
em realidade aumentada para web, possibilitando uma melhor compreensão das etapas
necessárias para realização desse processo, em conjunto com a descrição de cada recurso
necessário, disponível nas principais ferramentas que apoiam o seu desenvolvimento. Para
permitir uma melhor experiência da utilização da abordagem proposta, foi realizado o
desenvolvimento de um site fictício de comércio eletrônico, exibindo as etapas necessárias e
as ferramentas utilizadas para atingir o resultado final, onde foi possível demonstrar a
interação entre o usuário final e a aplicação, por meio da sobreposição de um objeto virtual no
ambiente real com a sua manipulação em tempo real pelo usuário final.
Durante a realização do desenvolvimento do site fictício de comércio eletrônico,
utilizando as principais ferramentas apresentadas e seguindo as etapas da abordagem de
desenvolvimento baseada em realidade aumentada para web proposta, foram possíveis
destacar as seguintes vantagens encontradas:
Disposição sequencial das etapas apresentadas na abordagem de desenvolvimento
baseada em realidade aumentada para web permite com que o desenvolvedor se
organize de uma melhor forma, tornando mais efetiva a utilização de tempo para o
desenvolvimento da aplicação;
60
Disponibilidade de bibliotecas de realidade aumentada em código aberto
possibilita uma maior apresentação de informações, facilitando a execução da
etapa de criação do ambiente de realidade aumentada;
Descrição das principais ferramentas e os respectivos recursos que apoiam o
desenvolvimento de aplicações de realidade aumentada para web permite com que
desenvolvedores iniciantes tenham maior facilidade para execução das etapas da
abordagem proposta;
Distribuição gratuita de ferramentas como, por exemplo, o Google SketchUp, torna
possível com que desenvolvedores iniciantes em modelagem de objeto 3D possam
adquirir arquivos prontos ou pré-moldados para utilização com a aplicação de
realidade aumentada;
A etapa de execução da aplicação web apresentada na abordagem proposta, auxilia
os desenvolvedores a uma melhor forma de instruir o usuário final para realizar a
utilização da aplicação web com os recursos de realidade aumentada;
5.1 – Dificuldades Encontradas
Durante o desenvolvimento do trabalho, em específico na criação e execução de
algumas etapas da abordagem de desenvolvimento baseada em realidade aumentada para web,
foram encontradas algumas dificuldades, que são elas:
Dificuldade em encontrar uma abordagem específica para apoio na construção de
realidade aumentada para web;
Necessidade de maior conhecimento para realização da modelagem do objeto 3D
em aplicações que exigem a criação de modelos específicos;
Dificuldade para dispor as etapas da abordagem de desenvolvimento baseada em
realidade aumentada para web de forma correta e de fácil compreensão, uma vez
que durante o estudo da pesquisa foram encontradas poucas publicações que
apresentam os meios e recursos necessários para realização desse processo;
Dependência da utilização de tecnologia Flash, da empresa Adobe, faz com que a
utilização de realidade aumentada em aplicações web possa ser questionada por
alguns desenvolvedores, uma vez que os recursos para o desenvolvimento de
aplicações mais robustas é disponibilizado apenas em ferramentas proprietárias;
61
Utilização de realidade aumentada com diferentes dispositivos de entrada e saída
de dados além da webcam como, por exemplo, teclado e mouse, exige
conhecimento avançado para o desenvolvimento das funções necessárias para sua
utilização.
5.2 – Limitações da Pesquisa
Algumas limitações foram impostas ao trabalho proposto, dentre elas pode-se citar:
A demonstração das etapas de aplicação de realidade aumentada esteve voltada
apenas a sua utilização para web;
A apresentação das ferramentas para desenvolvimento de realidade aumentada
apresentou apenas informações dos principais recursos inclusos nas respectivas
ferramentas que apoiam o desenvolvimento nessa área;
O desenvolvimento da modelagem para interação entre os ambientes virtual e
real demonstrou apenas um objeto 3D;
A abordagem de desenvolvimento baseada em realidade aumentada para web
utilizou a webcam como dispositivo de entrada de dados.
5.3 – Contribuições
O desenvolvimento deste trabalho de pesquisa buscou acrescentar conhecimento à
comunidade cientifica possibilitando destacar as seguintes contribuições:
Formalização de uma abordagem como um guia para os desenvolvedores que
desejam implementar uma aplicação web utilizando realidade aumentada;
Demonstração das etapas básicas necessárias para a utilização de realidade
aumentada em uma aplicação web, além da apresentação das principais
ferramentas que apoiam o seu desenvolvimento;
Apresentação deste trabalho para a comunidade cientifica possibilita realização de
aperfeiçoamento da abordagem de desenvolvimento baseada em realidade
aumentada para web proposta por desenvolvedores que possuam diferentes
conhecimentos relacionados à área.
62
5.4 – Trabalhos Futuros
Existem alguns pontos deste trabalho que podem ser estendidos com o objetivo de
acrescentar mais facilidades e inclusão de novos recursos e tecnologias, possibilitando
aperfeiçoamento da abordagem de desenvolvimento baseada em realidade aumentada para
web proposta, dentre as sugestões de trabalhos futuros é possível citar:
Desenvolvimento de aplicação de realidade aumentada para web utilizando novos
dispositivos de entrada e saída de dados além da webcam como, por exemplo,
utilização de teclado para disponibilizar ao usuário final diferentes funções para
maior interação;
Inclusão de novos recursos multimídia como, por exemplo, a adição de animações
e sons durante a interação entre o usuário final e a aplicação;
Desenvolvimento de aplicação web com a utilização de realidade aumentada para
o reconhecimento de mais de um marcador e diferentes objetos 3D;
Pesquisa para inclusão de tecnologias de inteligência artificial, para construção de
uma abordagem de desenvolvimento baseada em realidade aumentada para web
mais robusta, onde seria possível efetuar o reconhecimento de diferentes
movimentos realizados pelo usuário final e interpretá-los executando funções
especificas de interação.
63
REFERÊNCIAS BIBLIOGRAFICAS AZUMA, T. R. A Survey of Augmented Reality. In: Teleoperators and Virtual
Environments, v. 6, n. 4, Mabilu, CA, p. 355-385, 1997.
AZUMA, R.; BAILLOT, Y.; BEHRINGER, R.; FEINER, S.; JULIER, S.; MACINTYRE, B.
Recent Advances in Augmented Reality, IEEE Computer Graphics and Applications. p. 34-
47, 2001.
BARFIELD, W.; CAUDELL, T. Fundamentals of Wearable Computers and Augmented
Reality, L. Erlbaum Associates Inc. Hillsdale, NJ, USA, 2000.
BIMBER, O.; RASKAR, R. Spatial Augmented Reality - Merging Real and Virtual
Worlds, p. 472-480, 2005.
BURT, R. E. D. Virtual Reality in Anaesthesia. British Journal of Anaeshesia, v. 75, p. 472-
480, 1995.
CHESHER, C. Colonizing Virtual Reality - Construction of the Discourse of Virtual Reality,
1984-1992. Cultronix. v. 1, n. 1 2003.
CRAMER, H. S. M. Usability Evaluation And Context Analysis To Aid The Development
Of Virtual Reality Applications, Aplied to the Virtual Radiology Explorer, In partial
fulfilment of the requirements for the Master’s degree in Social Science Informatics, Faculty
of Science University of Amsterdam, The Netherlands, 2004.
CONSULARO, A. L.; COELHO, C. R.; JUNIOR, C. Rastreamento Óptico para Sistemas de
Realidade Virtual e Aumentada. In: KIRNER, C.; SISCOUTTO, R. Realidade Virtual e
Aumentada - Conceitos, Projeto e Aplicações. Petrópolis-RJ, cap. 2, p. 22-51, 2007.
DEDRICK J.; TIGRE, B. P. Mitos e Realidades sobre a Difusão do Comércio Eletrônico nas
Empresas Brasileiras, Revista Brasileira de Inovação. v. 2, n. 2, 2003.
FEINER, S.; MACINTYRE, B.; HAUPT, M.; SOLOMON, E. Windows on the World: 2D
Windows for 3D Augmented Reality. In: Proceedings UIST’93 (ACM Symp. on User
Interface Software and Technology), Atlanta GA, November 3-5, p. 145-155, 1993.
FELIPINI, D. ABC do E-commerce - Os quatro segredos de um negocio bem sucedido na
internet, 2006. E-book disponível em:
<http://www.abc-commerce.com.br/ebook_gratis.htm>. Acesso em: 10 set. 2011.
FERREIRA, V. G. A. M.; PELLEGRINO, M. R. S. Modelagem 3D. In: KIRNER, C; TORI,
R; SISCOUTTO, R. Fundamentos e Tecnologia de Realidade Virtual e Aumentada.
Belém-PA, cap. 14, p. 246-264, 2006.
FUNCHS, H.; RASKAR, R.; WELCH G. Spatially Augmented Reality, In: First
International Workshop on Augmented Reality. San Francisco, November 1, p. 1-7, 1998.
64
GARBIN, R. T.; DAINESE, A. C.; KIRNER, C. Sistemas de Realidade Aumentada para
Trabalho com Crianças Portadoras de Necessidades Especiais. In: Kirner, C.; Tori, R.
Realidade Virtual, Conceitos e Tendências. Pre-Simpósio SVR 2004, VII Symposium on
Virutal Reality, São Paulo, SP, cap. 17, p. 294, 2004.
GUIMARÃES, P. M; GNECCO, B. B.; DAMAZIO, R. Ferramentas para Desenvolvimento
de Realidade Virtual e Aumentada. In: KIRNER, C.; SISCOUTTO, R. Realidade Virtual e
Aumentada - Conceitos, Projeto e Aplicações. Petrópolis, RJ, cap. 6, p. 108-128, 2007.
JAYNES, C.; WELCH, G. History. In: JAYNES C.; WELCH G. ProCams 2006:
International Workshop on Projector-Camera Systems. New York, NY, p. 4, 2006.
KATO, H., BILLINGHURST, M. Marker Tracking and HMD Calibration for a Video-based
Augmented Reality Conferencing System. Proceedings of the 2nd IEEE and ACM
International Workshop on Augmented Reality ‘99, San Francisco, October 20-21, p. 85-
94, 1999.
KIRNER, C.; KIRNER, T. G. Evoluções e Tendências da Realidade Virtual e da Realidade
Aumentada. In: RIBEIRO, M. W. S.; ZORZAL, E. R. (Org.). Realidade Virtual e
Aumentada: Aplicações e Tendências. Uberlândia: Ed. SBC, cap. 1, p. 10-25, 2011.
KIRNER, C.; SISCOUTTO, R. Fundamentos de Realidade Virtual e Aumentada. In:
KIRNER, C.; SISCOUTTO, R. Realidade Virtual e Aumentada - Conceitos, Projeto e
Aplicações. Petrópolis-RJ, cap. 1, p. 2-21, 2007.
KIRNER, C.; TORI, R. Fundamentos de Realidade Virtual. In: KIRNER, C; TORI, R;
SISCOUTTO, R. Fundamentos e Tecnologia de Realidade Virtual e Aumentada. Belém,
PA, cap. 1, p. 2-21, 2006.
LOOSER, J.; GRASSET, R.; SEICHTER, H.; BILLINGHURST, M. (2006) OSGART - A
Pragmatic Approach to MR. Santa Barbara, CA, USA: 5th IEEE and ACM International
Symposium on Mixed and Augmented Reality (ISMAR 06): Industrial Workshop, Out., p.
22-25, 2006.
MACHADO, L. S. Conceitos Básicos da Realidade Virtual. Ministério Da Ciência e
Tecnologia, Instituto Nacional de Pesquisas espaciais - INPE-5975-PUD/025, 1995.
MADDEN, L. Professional Augmented Reality Browsers for Smartphones:
Programming for junaio, Layar and Wikitude, Wiley Publishing Inc, 2011.
MILGRAM, P.; TAKEMURA, H.; UTSUMI, A.; KISHINO, F. Augmented Reality: A class
of displays on the reality-virtuality continuum, SPIE Vol. 2351, Telemanipulator and
Telepresence Technologies, 1994.
NETTO, V. A.; MACHADO S. L.; OLIVEORA F. C. M. Realidade Virtual - Definições,
Dispositivos e Aplicações, Sociedade Brasileira de Computação. Revista Eletrônica de
Iniciação Cientifica. Tutorial. Simpósio de Realidade Virtual. Brasil.
Ano II, v. II, n. I, mar, 2002.
RICHARDSON, R. J. Pesquisa social: métodos e técnicas. São Paulo: Atlas, 1999.
65
SILVA A. W.; RIBEIRO S. W. M.; JÚNIOR L. E.; CARDOSO A. Uma Arquitetura Para
Distribuição de Ambientes Virtuais de Realidade Aumentada Aplicada à Educação, Revista
Brasileira de Informática na Educação, v. 16, n. 3, 2008.
SILVA, E. L.; MENEZES, E. M.. Metodologia da pesquisa e elaboração de dissertação.
Florianópolis: [S. n.], 2000.
SUTHERLAND, I. The Ultimate Display, Information Processing Techniques Office. In:
Proceedings of IFIP Congress, p. 506-508, 1965.
THOMAS, B.; CLOSE B.; DONOGHUE J.; SQUIRES J.; DE BONDI P.; MORRIS M.;
PIEKARSKI W. ARQuake: An Outdoor/Indoor Augmented Reality First Person
Application, Fourth International Symposium on Wearable Computers, 2000.
VELOSO, A. S. et al. Uso do FLARToolKit no E-commerce. In: RIBEIRO, M. W. S.;
ZORZAL, E. R. (Org.). Realidade Virtual e Aumentada: Aplicações e Tendências.
Uberlândia: Ed. SBC, cap. 4, p. 67, 2011.
WU, M.; BALAKRISHNAN, R. Multi-Finger and Whole Hand Gestural Interaction,
Techniques for Multi-User Tabletop Displays. In: Proceedings of the 16th annual ACM
symposium on User interface software and technology. ACM New York, NY, USA, 2003
ZORZAL, R. E. Estratégia para o Desenvolvimento de Aplicações Adaptativas de
Visualização de Informações com Realidade Aumentada, Tese de Doutorado em Ciências
– Universidade Federal de Uberlândia, Uberlândia, MG, 2009. 192 p.
66
APÊNCICE A – Código Fonte do arquivo index.html
Este apêndice apresenta apenas as principais funções inclusas no código fonte do
arquivo index.html, responsável pela execução do site fictício de comércio eletrônico.
<head>
<title>Comércio Eletrônico e Realidade Aumentada</title>
<meta name="keywords" content="" />
<meta name="description" content="" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="language" content="pt" />
<link href="estilo.css" rel="stylesheet" type="text/css" />
// Comando responsável por vincular o uso do arquivo estilo.css que contém todos os dados necessários
para o controle dos elementos apresentados na página.
<link rel="stylesheet" href="js/lightbox.css" type="text/css" media="screen" />
<script src="js/prototype.js" type="text/javascript"></script>
<script src="js/scriptaculous.js?load=effects,builder" type="text/javascript"></script>
<script src="js/lightbox.js" type="text/javascript"></script>
// Comandos responsáveis por vincular o uso do arquivo lightbox.css que contém todos os dados
necessários que permitem a sobreposição de imagens na página atual, com o objetivo de apresentar o
produto ao usuário quando o mesmo não desejar utilizar realidade aumentada.
<script src="js/AC_RunActiveContent.js" type="text/javascript"></script>
// Comando que requisita a execução de dados contidos no arquivo AC_RunActiveContent.js, de
propriedade da empresa Adobe Systems Incorporated, e responsável pelo controle de execução de
arquivos com a extensão (.swf)
</head>
<div id="realidade_aumentada">
<script language="JavaScript" type="text/javascript">
if (AC_FL_RunContent == 0) {
alert("This page requires AC_RunActiveContent.js.");
} else {
AC_FL_RunContent(
'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0','width','64
9','height','480','id',
'RealidadeAumentada','align','middle','src','RealidadeAumentada','quality','high','bgcolor','#000000','nam
e','RealidadeAumentada','allowscriptaccess',
'sameDomain','allowfullscreen','false','pluginspage','http://www.macromedia.com/go/getflashplayer','mo
vie','RealidadeAumentada' ); //end AC code
}
</script>
<noscript>
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase=
"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0"
width="649" height="480" id="RealidadeAumentada" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="allowFullScreen" value="false" />
<param name="movie" value="RealidadeAumentada.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#000000" />
67
<embed src="RealidadeAumentada.swf" quality="high" bgcolor="#000000" width="649"
height="480" name="RealidadeAumentada" align="middle" allowscriptaccess="sameDomain"
allowfullscreen="false" type="application/x-shockwave-flash"
pluginspage="http://www.macromedia.com/go/getflashplayer" />
</embed></embed>
</object>
</div>
// O corpo da div id="realidade_aumentada" possui as funções necessárias para execução do Adobe Flah
Player no site fictício de comércio eletrônico, onde ao confirmar permissão para execução são requisitados
os dados contidos no arquivo RealidadeAumentada.swf que possui vinculo com o arquivo
RealidadeAumentada.as, responsável pela execução de realidade aumentada no site.
68
APÊNCICE B – Código Fonte do arquivo RealidadeAumentada.as
Este apêndice contém todas as funções inclusas no código fonte do arquivo
RealidadeAumetnada.as, responsável pela execução do ambiente de realidade aumentada no
site fictício de comércio eletrônico.
package {
import flash.events.Event;
import flash.events.MouseEvent;
import org.papervision3d.objects.parsers.DAE;
import org.papervision3d.objects.DisplayObject3D;
// Conexões com as bibliotecas Flash e PaperVision3D.
[SWF(width=640,height=480,frameRate=30,backgroundColor=0x0)]
public class RealidadeAumentada extends PV3DARApp {
// Criação da classe RealidadeAumentada com extensão ao arquivo PV3DARApp.as que possui o conteúdo
da biblioteca FLARToolKit e PaperVision3D.
private var produto:DAE;
private var real_uem:DisplayObject3D;
public function RealidadeAumentada() {
this.init('Data/camera_para.dat', 'Data/marcador.pat');
// Função para solicitar inicialização do arquivo camera_para.dat, incluso no conteúdo da biblioteca
FLARToolKit e do arquivo marcador.pat, criado na etapa de desenvolvimento do marcador.
}
protected override function onInit():void {
super.onInit();
produto = new DAE();
produto.load("objeto/objeto.dae");
// Função responsável por localizar o arquivo objeto.dae que contém a modelagem do objeto 3D.
produto.scale = 3;
// Permite definir a escala de tamanho do objeto 3D utilizado no site fictício de comércio eletrônico.
produto.rotationX = 180;
this.real_uem = new DisplayObject3D();
this.real_uem.addChild(produto);
this.real_uem.rotationZ = -10;
this._baseNode.addChild(this.real_uem);
}
}
}
Recommended