Itumbiara, GO, Brasil. Realização

Transcription

Itumbiara, GO, Brasil. Realização
Itumbiara, GO, Brasil.
http://wrva07.ulbraitumbiara.com.br
http://grvg.ulbraitumbiara.com.br
http://www.ulbraitumbiara.com.br
Realização:
Anais
WRVA’07
Workshop de Realidade Virtual e Aumentada
Itumbiara, 20 – 23 de Novembro de 2007
Comissão Organizadora
Coordenação do Evento
Prof. Dr. Marcos Wagner de Souza Ribeiro - Coordenador Geral
Prof. PhD. Edgard Afonso Lamounier Jr. - Vice Coordenador Geral
Comissão Organizadora
José Carlos da Silva Jr.
Jucélio Costa de Araújo
Hugo Xavier Rocha
Roger Amândio Luz
Wender Antônio da Silva
Edição
Marcos Wagner de Souza Ribeiro
Wender Antônio da Silva
Apoio:
Workshop de Realidade Virtual e Aumentada (2007: Itumbiara, Goiás)
Anais WRVA’07 / editado por Marcos Wagner de Souza Ribeiro e Wender
Antônio da Silva –
Itumbiara, 2007
184 p.
ISBN
1. Realidade Virtual
2. Realidade Aumentada
WRVA 2007
Comitê do Programa
WRVA’07
Presidente: Edgard Afonso Lamounier Júnior - UFU
Vice-Presidente: Marcos Wagner de Souza Ribeiro - ULBRA/UFU
Membros:
Alexandre Cardoso - UFU
Arquimedes Lopes da Silva - CEFET/GO
Claudio Kirner - UNIMEP
Eduardo Simões Albuquerque - UFG
Fátima L.S. Nunes - UNIVEM
Hugo Alexandre Dantas Nascimento - UFG
Ildelberto Aparecido Rodello - UNIVEM
José Remo Ferreira Brega - UNESP
Jucélio Costa de Araújo - CEFET/GO
Judith Kelner -UFPE
Luciana Porcher Nedel - UFRGS
Romero Tori - USP/Senac-SP
Rosa Costa - UERJ
Veronica Teichrieb - UFPE
Apresentação
O WRVA (Workshop de Realidade Virtual e Aumentada) é um workshop
promovido pela CERV (Comissão Especial de Realidade Virtual), que visa reunir
pesquisadores, desenvolvedores, estudantes e demais profissionais dos meios
acadêmicos, industriais e comerciais, interessados nos avanços e nas aplicações de
realidade virtual.
O WRVA'07 é a consolidação de dois grandes eventos da área de
Realidade Virtual, o WARV (Workshop de Aplicações de Realidade Virtual) e o
WRA (Workshop de Realidade Aumentada).
O WRA com três edições anteriores, realizadas em Piracicaba (2004 e
2005) e no Rio de Janeiro (2006); O WARV com duas edições anteriores, realizadas
em Uberlândia (2005) e em Recife (2006). Em 2007 o Workshop de Realidade
Virtual e Aumentada será realizado na cidade de Itumbiara, no estado de Goiás.
O evento tem como premissa estreitar os laços entre pesquisadores,
promover a troca de experiências e facilitar a interação entre grupos de pesquisa,
melhorar as condições de surgimento de novos grupos, motivar novos pesquisadores
para atuar na área e mostrar aos participantes os avanços da Realidade Virtual na
região do Centro-Oeste e Triângulo Mineiro.
Sessões Técnicas
SUMÁRIO – SESSÕES TÉCNICAS
APLICAÇÃO DA REALIDADE AUMENTADA PARA A VISUALIZAÇÃO DE ACESSÓRIOS
DA LINHA DE VESTUÁRIO NO E-COMMERCE
Diego Fernandes Medeiros, Wender Antônio da Silva, Edgard Afonso Lamounier Júnior, Marcos
Wagner de Souza Ribeiro, Alexandre Cardoso e Luciano Vieira de Lima - 10
ARBIOMED – SISTEMA EM REALIDADE AUMENTADA PARA VISUALIZAÇÃO E
SIMULAÇÃO DE SINAIS ELETROCARDIOGRÁFICOS
Arthur Augusto Bastos Bucioli, Edgard Afonso Lamounier Júnior, Alexandre Cardoso e Cláudio
Kirner - 14
CLASSIFICANDO AS INTERAÇÕES EM AMBIENTES DE REALIDADE AUMENTADA
Rafael Santin e Cláudio Kirner - 18
COLABORAÇÃO EM AMBIENTES VIRTUAIS TELECOMANDÁVEIS USANDO X3D
Bruno Rafael de Araújo Sales e Liliane dos Santos Machado - 22
DESENVOLVIMENTO DE UM AMBIENTE DE REALIDADE VIRTUAL PARA ANÁLISE DE
SOLOS AGRÍCOLAS
Leonardo Castro Botega e Paulo Estevão Cruvinel - 26
DESENVOLVIMENTO DE UMA ARQUITETURA DE DISTRIBUIÇÃO PARA AMBIENTES
VIRTUAIS
Regislaine de Carvalho, Luciano Ferreira Silva, Edgard Afonso Lamounier Júnior e Alexandre
Cardoso - 30
DESENVOLVIMENTO DE UMA INTERFACE GRÁFICA PARA O ARTOOLKIT COM
APLICAÇÃO NA ÁREA EDUCACIONAL
Kelma Kerly de Carvalho Cunha e Marcelo de Paiva Guimarães - 34
DETECÇÃO DE COLISÕES EM AMBIENTES VIRTUAIS PARA TREINAMENTO MÉDICO
Helio Pedrini, Marcello Kera e Fatima L. S. Nunes - 38
EFEITOS DE ILUMINAÇÃO REALISTAS EM REALIDADE AUMENTADA UTILIZANDO
IMAGENS HDR
Guilherme de Sousa Moura, João Marcelo Xavier Natário Teixeira, Veronica Teichrieb e Judith
Kelner - 42
EFICIÊNCIA ENERGÉTICA EM SISTEMAS INDUSTRIAIS SOB A ÓPTICA DA
REALIDADE VIRTUAL
Eduardo de Souza Santos, Edgard Afonso Lamounier Júnior, Alexandre Cardoso e Antônio C.
Delaiba - 46
FIRT: UMA IMPLEMENTAÇÃO EM FPGA DA TÉCNICA DE TRAÇADO DE RAIOS
Bernardo Reis, João Marcelo Xavier Natário Teixeira, Veronica Teichrieb e Judith Kelner - 50
F-LIBRAS - AMBIENTE INTEGRADO PARA LÍNGUA BRASILEIRA DE SINAIS
Fabrício Baptista e José Remo F. Brega - 54
FLIGHT INSTRUCTOR, UM INSTRUTOR DE VÔO VIRTUAL PARA O MICROSOFT
FLIGHT SIMULATOR X
Rodrigo Carvalho de Farias, Gabriel F. de Almeida, Veronica Teichrieb e Judith Kelner -58
IMPLEMENTAÇÃO DE REALISMO NA INTERAÇÃO EM UM FRAMEWORK PARA
TREINAMENTO VIRTUAL
Cléber Gimenez Corrêa, Adriano Bezerra, Ana C. T. M. G. de Oliveira e Fátima L. S. Nunes - 62
INCORPORANDO COLABORAÇÃO COM REALIDADE VIRTUAL E AUMENTADA EM
AMBIENTES DE EDUCAÇÃO À DISTÂNCIA
Clodonil Honorio Trigo e Cláudio Kirner - 66
INTEGRAÇÃO DE TÉCNICAS DE MODELAGEM COM VRML E JAVA PARA CRIAÇÃO DE
AMBIENTES VIRTUAIS EM REALIDADE AUMENTADA
Rogério Gonçalves da Costa, João Arthur Gabriel Silva Diniz, Wender Antônio da Silva, Marcos
Wagner de Souza Ribeiro, Edgard Afonso Lamounier Júnior e Alexandre Cardoso - 70
O USO DA REALIDADE VIRTUAL NÃO-IMERSIVA COMO INSTRUMENTO DE AUXILIO
NO TRATAMENTO DA AVIOFOBIA
Danielly Cristine de Medeiros, Wender Antônio da Silva, Marcos Wagner de Souza Ribeiro,
Edgard Afonso Lamounier Júnior, Alexandre Cardoso e Luciano Vieira de Lima - 74
ODE4PPC: APLICAÇÕES GRÁFICAS COM SIMULAÇÃO FÍSICA NA PLATAFORMA
POCKET PC
Daliton da Silva , João Marcelo Xavier Natário Teixeira, Veronica Teichrieb e Judith Kelner -78
REALIDADE VIRTUAL APLICADA À EDUCAÇÃO: REFLEXÕES SOBRE O ESTADO DA
ARTE E O FUTURO
Andréia Cristina Rizzato e Fatima L. S. Nunes - 92
REALIDADE VIRTUAL APLICADA AO E-COMMERCE: PROPOSTA DE PLATAFORMA
BASEADA EM VRML E PHP
Leandro Silva Campos e Marcos Wagner de Souza Ribeiro - 96
REALIDADE VIRTUAL APLICADA AO ENSINO DE HISTÓRIA POR MEIO DA
RECONSTITUIÇÃO DE AMBIENTES HISTÓRICOS
Rodrigo Vasconcelos Arruda, Wender Antônio da Silva, Edgard Afonso Lamounier Júnior, Marcos
Wagner de Souza Ribeiro, Alexandre Cardoso, Nadabe Cardoso de Oliveira Alves Fortes e
Luciano Vieira Lima - 100
REALIDADE VIRTUAL AUXILIANDO O APRENDIZADO EM LINHAS DE TRANSMISSÃO
DE ENERGIA ELÉTRICA
Gleisson Pereira dos Santos, Alexandre Cardoso e Edgard Afonso Lamounier Júnior - 104
SIMULAÇÃO FÍSICA DE OBJETOS DEFORMÁVEIS ATRAVÉS DE UM ALGORITMO
BASEADO EM POSIÇÃO
Mozart William Santos Almeida, Judith Kelner, Gabriel Fernandes de Almeida e Veronica
Teichrieb - 108
SISTEMA DE REALIDADE VIRTUAL PORTÁTIL DE APOIO A EDUCAÇÃO DE CRIANÇAS
SURDAS – ERLENEN
Mônica Rocha Ferreira de Oliveira, Alexandre Cardoso e Edgard A. Lamounier Júnior - 112
UM COMPONENTE PARA IMPLEMENTAÇÃO DE PROFUNDIDADE EM AMBIENTES DE
REALIDADE MISTURADA
Silvio Ricardo Rodrigues Sanches, Antônio Carlos Sementille, Ildeberto Aparecido Rodello e José
Remo F. Brega - 116
UM MÉTODO PARA SIMULAÇÃO DE ILUMINAÇÃO VOLUMÉTRICA EM APLICATIVOS
INTERATIVOS
Saulo Andrade Pessoa, Sílvio de Barros Melo, João Paulo S. do M. Lima, Veronica Teichrieb e
Judith Kelner - 120
UMA EXPERIÊNCIA DE IMPLEMENTAÇÃO DE UMA APLICAÇÃO INTERATIVA COM
REALIDADE VIRTUAL E AUMENTADA
Everton Francisco Pires Dantas e Cláudio Kirner - 124
USO DA REALIDADE VIRTUAL NA MELHORIA DO PROCESSO DE ENSINO DA FÍSICA
(Movimento Harmônico Simples)
Jucélio Costa de Araújo, Alexandre Cardoso e Edgard Afonso Lamounier Júnior - 128
USO DO LIVRO INTERATIVO COM REALIDADE AUMENTADA EM APLICAÇÕES
EDUCACIONAIS
Cláudio Kirner e Francisco César de Oliveira e Rafael Santin - 132
UTILIZANDO MAPAS CONCEITUAIS PARA A GERAÇÃO AUTOMÁTICA DE AMBIENTES
VIRTUAIS DE ENSINO/APRENDIZAGEM
José Remo Ferreira Brega, Guilherme Fernando de Oliveira, Bruno Marques Panccioni e
Ildeberto Aparecido Rodello - 136
VISUALIZAÇÃO DE INFORMAÇÕES EM AMBIENTES DE REALIDADE VIRTUAL E
AUMENTADA
Ezequiel Roberto Zorzal, Edgard Afonso Lamounier Júnior, Luciano Ferreira Silva, João Paulo
Vieira Bonifácio, Alexandre Cardoso e Cláudio Kirner - 140
VISUALIZAÇÃO DE METADADOS DE SENSORES UTILIZANDO REALIDADE
AUMENTADA EM TELEFONES CELULARES
Juan Carlos Zuñiga e Sergio Takeo Kofuji - 144
APLICAÇÃO DA REALIDADE AUMENTADA PARA A VISUALIZAÇÃO DE
ACESSÓRIOS DA LINHA DE VESTUÁRIO NO E-COMMERCE
Diego Fernandes Medeiros1, Wender Antônio da Silva1, Edgard Afonso Lamounier Júnior1, Alexandre
Cardoso2, Luciano Vieira Lima2 e Marcos Wagner de Souza Ribeiro1
1 - Grupo de Realidade Virtual de Goiás – GRVG - Instituto Luterano de Ensino Superior de Itumbiara, GO
2 - Grupo de Realidade Virtual – GRV – Laboratório de Computação Gráfica – Universidade Federal de Uberlândia, MG
diegonline_si@yahoo.com.br, wender_silva@yahoo.com.br, lamounier@ufu.br, alexandre@ufu.br,
luciano.vieira.lima@terra.com.br, marcos_wagner@yahoo.com.br
Resumo – o presente artigo constitui objetivo de determinar
uma melhor abordagem no e-commerce diante da
visualização de acessórios da linha de vestuário.
Apresentando, deste modo, um sistema de realidade
aumentada com implantação às transações do comércio
eletrônico, a fim de corroborar com a satisfação de
consumidores determinando a visualização dos mesmos
junto aos itens ou produtos escolhido, concretizando assim
um modo mais atrativo para tais processos.
Palavras-Chave – E-commerce, Realidade Aumentada,
Linha de Vestuário.
Abstract – the present article constitutes objective to ahead
determine one better boarding in e-commerce of the
visualization of accessories of the clothes line. Presenting, in
this way, a system of augmented reality with implantation to
the transactions of the electronic commerce, in order to
corroborate with the satisfaction of consumers being
determined the visualization of same next to itens or the
products chosen, thus materialize a more attractive way for
such processes.
Keywords – E-commerce, Augmented Reality, Clothes Line.
1. INTRODUÇÃO
O e-commerce dispõe de uma enorme gama de produtos
que podem ser postos a venda, dentre estes, especificamente
para os itens da linha de vestuário identifica-se que para a
compra dos mesmos alguns fatores a fim de garantir melhor
satisfação do cliente não são abordados e devem ser
ressaltados. Nas transações do comércio eletrônico é
instituída somente a opção de visualização da foto. Por ser
um meio de vendas on-line e pelo fato da presença não física
neste tipo de comercialização, o consumidor não contém a
oportunidade de experimentar-se com o item desejado.
Este trabalho aplica a utilização da Realidade Aumentada
(RA) que se agrega dentro do contexto de Realidade Virtual
(RV) enfatizando tal oportunidade.
Diferentemente da realidade virtual, que transporta o
usuário para o ambiente virtual, a realidade aumentada
mantém o usuário no seu ambiente físico e transporta o
ambiente virtual para o espaço do usuário, permitindo a
interação com o mundo virtual, de maneira mais natural e
sem necessidades de treinamento ou adaptação. [1]
Denota-se que o objeto de estudo abordado é uma
tecnologia cujo faturamento emana extraordinários índices, o
trabalho engloba-se então num meio do qual vem sendo bem
visado, e que cresce de modo surpreendente.
O processo estipulado tem como vantagem auxiliar o
consumidor na escolha do produto, determina-lhe maior
satisfação para a compra tornando o processo mais atrativo e
agradável.
1.1.Realidade Aumentada
A Realidade Aumentada é o enriquecimento do ambiente
real com os objetos virtuais, usando algum dispositivo
tecnológico, funcionando em tempo real. [6]
A RA é uma particularização de realidade misturada,
quando o ambiente principal é real ou há predominância do
real. [1]
2. TRABALHOS RELACIONADOS
Diante de pesquisas, vários trabalhos realizados
implantam a aplicação da Realidade Aumentada no comércio
em geral.
O trabalho de Zorzal[2] demonstra a utilização de
sistemas de RV e RA na simulação de sistemas de automação
industrial, como meio para treinamento e melhor
aprendizagem. Sendo assim são desenvolvidos os sistemas
ditos à simulação de uma máquina automatizada para envasar
leite.
Fig. 1. Visualização da simulação utilizando RV.
A visualização da simulação no ambiente de Realidade
Virtual determina ao usuário a possibilidade em observar de
diversos ângulos todo o processo de envasamento.
3. MÉTODOS APLICADOS
3.1 Linguagem de Modelagem
Fig. 2. Visualização da simulação utilizando RA.
Diante do sistema de Realidade Aumentada a participação
do usuário se torna mais intensa e plena, são utilizados 2
marcadores, sendo um para o maquinário e outro móvel para
ser manipulado pelo usuário.
O trabalho de Fernandes[3] enfatiza a criação de uma
interface para a interação onde seja possível comparar e
avaliar durante a execução no próprio canteiro de obras
através da tecnologia de RA construções arquitetônicas,
sendo utilizado um tablet PC. O ponto positivo esclarecido
no trabalho se baseia na possibilidade de realizar alterações
em alguns aspectos da planta durante a visualização,
permitindo que um profissional possa resolver problemas de
projeto no local, ou simplesmente, experimentar outros
modos técnicos.
O início do trabalho partiu-se com desenvolvimento a
modelagem dos objetos virtuais necessários para estabelecer
a visualização em tempo real do consumidor juntamente ao
objeto escolhido. Com intuito a dar praticidade ao
desenvolvimento do projeto e pelo fato no que o sistema de
realidade aumentada pode proporcionar foram escolhidos
somente os acessórios da linha de vestuário.
Dentre outros, alguns acessórios foram desenvolvidos,
assim como a figura 4 ilustrada abaixo.
Fig. 4. Óculos 3D.
A linguagem utilizada foi o VRML, pois o objeto de
estudo está estabelecido na internet, e a modelagem dos
objetos foi realizada no software Flux Studio versão 2.0.
3.2 Sistema de Realidade Aumentada
O sistema de Realidade Aumentada desenvolvido foi o
Sistema de Visão por Vídeo baseado em Monitor, neste a
imagem é capturada pela webcam que por sua vez transmite
ao monitor a cena real com a agregação de objetos virtuais.
Rastreador
Monitor
Fig. 3. Esquema de visualização do aplicativo
Do mesmo modo que o presente projeto, os trabalhos
mencionados designam se ao desenvolvimento de RA com
finalidade de aplicação ao comércio. Porém estes não
abordam o e-commerce, ou seja, a tecnologia que dentro do
setor da economia incríveis taxas de crescimento.
Já o artigo Realidade Virtual em aplicações do
comércio eletrônico[4], enfatiza a idéia do uso da RV as
transações do comércio eletrônico, demonstrando que a
introdução de um novo paradigma de interfaces de
comunicação com o usuário pode tornar mais atrativo o ato
da compra.
A idéia reflete-se de modo semelhante ao presente projeto,
entretanto, este não apresenta nenhum desenvolvimento de
software ou protótipo.
Dados
obtidos
pelo
rastreador
Gerador
de cenas
Câmera
de vídeo
Vídeo do
mundo real
Imagens
gráficas
Combinador
Fig. 5. Sistema de Visão por Vídeo baseado em Monitor
Para um sistema de realidade aumentada faz se necessário
o uso do software ARToolKit ou similar (sabe-se que
existem vários softwares de projeção de realidade
aumentada, optou-se pelo ARToolKit por ser uma aplicação
grátis), sendo utilizado neste estudo a versão 2.72.1.
O ARToolkit usa técnicas de visão computacional para
calcular a posição no espaço real da câmera e sua orientação
em relação aos cartões marcadores, permitindo ao
programador sobrepor objetos virtuais aos cartões.[5]
Na figura seguinte, é estabelecido o produto “chapéu”
com os respectivos botões para interação com o usuário.
3. 3 Página de Internet
Para aplicar a idéia abordada faz-se necessário a
simulação de uma transação do comércio eletrônico, ou seja,
foi desenvolvida uma página de internet da qual destaca a
venda de alguns acessórios da linha de vestuário. Foi
realizado algo do qual contém os produtos postos à venda,
sendo descrito juntamente com suas características a
informação da possibilidade de visualizar-se com o item,
destacando o sistema de realidade aumentada. No momento
em que o consumidor clica em sua escolha e opta para tal,
aparecem instruções indicando os processos dos quais se
deve realizar, assim como um link para que possa baixar o
software ARToolkit, e um ícone para imprimir o marcador.
O programa para realização da página de internet é o
Dreamweaver MX, editor de HTML, juntamente com a
programação ASP, e banco de dados SQLSERVER, e ainda
os servidores IIS. Este conjunto de ferramentas permite a
criação de páginas de modo rápido de acordo com a opção do
desenvolvedor. São ferramentas simples e objetivas, que
satisfazem a necessidade de implementação deste projeto.
Assim, é criado uma integração entre banco de dados, com os
dados dos produtos a serem vendidos, fotos dos produtos,
Realidade Virtual e Realidade Aumentada.
Fig. 7. Página de internet utilizando RA
A finalidade do trabalho visa estabelecer a compra de
produtos do site sendo determinado além da opção de
visualização de fotos dos determinados produtos, um link
para a visualização em realidade aumentada, porém antes
disto, o consumidor deve baixar o software ARToolkit do
qual é determinado na página de instruções e de downloads,
ou seja, como visto na figura anterior, estes links são
disponibilizados de forma a guiar o usuário do qual acessa o
site e opta por desfrutar de tal oportunidade.
4. IMPLEMENTAÇÃO DO SISTEMA
Para o desenvolvimento do protótipo do qual visa
estabelecer um sistema de RA aplicado no e-commerce e
baseado nos acessórios da linha de vestuário, foram
escolhidos três itens que se adéquam ao que o sistema de RA
utilizado pode proporcionar. Deste modo, os produtos
requisitados foram: óculos; chapéu; cartola. Como o sistema
de Realidade Aumentada é baseado no ARToolkit versão
2.72.1, necessitou-se que cada objeto virtual modelado:
óculos, chapéu e a cartola de extensão .wrl fossem salvos no
diretório ARToolKit\bin\Wrl. Ainda neste diretório precisouse também criar os arquivos com extensão .dat que faz
associação da placa com o objeto virtual. Com relação aos
marcadores foi feito seus cadastramentos executando o
programa “mk_patt.exe” encontrado na pasta “bin”. Os
marcadores foram gravados na pasta “bin”com os respectivos
nomes de cada produto e transportados para o diretório
ARToolKit\bin\Data.
Após a conclusão do sistema de Realidade Aumentada, foi
iniciada a etapa da elaboração de uma página de internet,
tendo nesta uma tarefa com vários processos. O site obtém
várias páginas, e dentre outras se tem a página da qual
demonstra os acessórios postos á venda que podem ser
vislumbrados pelo sistema de RA.
Fig. 7. Página de internet utilizando RA
Cabe ressaltar que o ARToolkit para download sempre
será atualizado conforme a entrada de novos produtos. Neste
caso, para a visualização de novos produtos cadastrados, o
consumidor deverá atualizar seu software.
A programação no Dreamweaver MX foi baseada na
linguagem ASP, e os links foram implementados de modo
simples, sendo destacados a estes o determinado endereço.
O banco de dados utilizado foi o SQLSERVER, neste é
catalogado informações referentes a transação de compras.
Para sua conexão com o site estabeleceu um vinculo nos
conectores ADODB.
Finalizando, foi criado o Servidor de Internet IIS (Internet
Information Services). O IIS é um conjunto integrado de
serviços de rede para plataforma Windows de 32 bits que
permite publicar conteúdos e disponibilizar arquivos e
aplicações em um ambiente Internet/Intranet. Totalmente
integrado ao sistema operacional e dotado de uma interface
administrativa 100% gráfica, o IIS é uma das melhores
opções disponíveis para hospedagem de web sites, site FTP e
grupos de noticias, bem como o desenvolvimento de
aplicações. A configuração do IIS foi realizada no sistema
operacional Windows XP. Após este passo, foi executado no
Dreamweaver MX a criação do site, determinando “ASP VB
Script” como escolha da tecnologia de servidor.
5. CONCLUSÕES
Diante das pesquisas feitas nota-se que há poucos
trabalhos relacionando RA voltado ao e-commerce, e em
módulo comercial, não há registro desta integração, deste
modo, sua aplicação se torna inédita tendo de início bons
resultados, ou seja, a idéia adotada foi concretizada de modo
satisfatório, tendo em vista as opiniões geradas.
O Protótipo foi apresentado aos alunos dos cursos de
Sistemas de Informação e Ciências da Computação do
Iles/Ulbra. Os alunos navegaram na página de internet criada
como simulação as transações do comércio eletrônico e
desfrutaram da idéia abordada sem nenhum tipo de
dificuldade. O software teve ótimo grau de aceitação por
parte dos alunos de informática, cabe ressaltar que o mesmo
não foi demonstrado à alunos de outras áreas.
Trabalhos Futuros
Como prosseguimento ao trabalho identifica-se que:
- A abordagem aos objetos virtuais pode ser expandida,
sendo estabelecida toda a linha de vestuário e não somente os
acessórios, englobando se assim mais de 1 marcador.
- Pode também ser trabalhado a utilização da Realidade
Virtual juntamente com a Realidade Aumentada.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] TORY, Romero. KIRNER, Claudio. SISCOUTTO,
Robson. Fundamentos e Tecnologia de Realidade Virtual
e Aumentada, 2006, VII Symposium on Virtual Reality.
[2] BUCCOOLI, A. B. Arthur. ZORZAL, R. Ezequiel.
KIRNER, Claudio. Usando Realidade Virtual e
Aumentada na Visualização da Simulação de Sistemas
de Automação industrial. In: SVR2006 – VIII
Symposium on Virtual Reality, Belém, 2006.
[3]
FERNANDES, A. Gabriel. CUNHA, Gerson.
Visualização auxiliada por Realidade Aumentada voltada
para o acompanhamento de construções arquitetônicas.
In: WRA2006 - III Wokshop de Realidade Aumentada,
Rio de Janeiro, 2006.
[4] KINIZ, Mauricio; KNEASEL, Frank Juergen. Realidade
Virtual em Aplicações do Comércio Eletrônico
Dissertação 2003. Instituto Catarinense de Pós
Graduação.
Disponível
em:
<http://www.icpg.com.br/artigos/rev02-14.pdf> Acesso
em: 03.08.2007.
[5] CARDOSO, Alexandre; LAMONIER JR, Edgard.
Realidade Virtual – Uma Abordagem Prática.
Minicursos – VII Symposium on Virtual Reality – São
Paulo, 2004.
[6] KIRNER, Claudio. SISCOUTTO, Robson. Realidade
Virtual e Aumentada: Conceitos, Projetos e Aplicações.
2007, IX Symposium on Virtual and Augmented
Reality.
ARBIOMED – SISTEMA EM REALIDADE AUMENTADA PARA
VISUALIZAÇÃO E SIMULAÇÃO DE SINAIS ELETROCARDIOGRÁFICOS
¹Arthur A.B. Bucioli; ¹Edgard A.Lamounier Jr.; ¹Alexandre Cardoso; ²Cláudio Kirner
¹UFU Universidade Federal de Uberlândia, Av. Engenheiro Diniz, 1178 CEP 38400902 - Uberlândia - MG, UNIMEP
²Universidade Metodista de Piracicaba, Rua Rangel Pestana, 762 CEP 13400901 - Piracicaba - SP
Resumo – Este trabalho tem como objetivo apresentar uma
ferramenta em Realidade Aumentada para Visualização de
Sinais Eletrocardiográficos
Palavras-Chave – Eletrocardiograma, Realidade Aumentada,
Visualização, Simulação.
Abstract – This work have as goal to present a Augmented
Reality1tool for Visualization of Electrocardiographic
Signals
Keywords – Electrocardiogram,
Visualization, Simulation.
Augmented
Reality,
2. INTRODUÇÃO
O desenvolvimento da Realidade Virtual foi muito intenso
nas últimas décadas, tanto nos dispositivos como placas de
vídeo e processadores como nas técnicas e inovações visuais,
como sombras, efeitos de texturas, traçado de raios, entre
outras.
Apesar de todos os avanços conseguidos ao longo dos
anos, os dispositivos de interação com os ambientes ainda
são um desafio real para os desenvolvedores. Os dispositivos
utilizados atualmente como base da interação, estão na
maioria dos casos longe de serem naturais ao ser humano,
requerendo treinamento por parte dos usuários para que haja
o bom aproveitamento das aplicações. Nem sempre o usuário
está disposto ou disponível para realizar os treinamentos com
os dispositivos. Essas deficiências acabam por isolar grupos
de usuários do acesso à Realidade Virtual.
Para contornar os problemas com os dispositivos de
interação, diversas propostas têm surgido ao longo dos anos,
e a Realidade Aumentada já apresenta resultados muito
promissores.
Utilizando como formas de interação as mãos e
dispositivos simples, a Realidade Aumentada se vale de
técnicas de Realidade Virtual para inserir no mundo real
objetos virtuais gerados pelo computador. Esse caminho é
inverso ao que ocorre com a Realidade Virtual, onde o
usuário é totalmente inserido no mundo virtual, tendo que se
adaptar às regras e comportamentos desse mundo. No mundo
real o usuário se sente muito mais seguro, pois conhece as
reações ocasionadas a cada ação sua. Por isso, a inserção de
objetos virtuais no mundo real traz muito mais conforto aos
usuários que o caminho inverso.
Através das técnicas de Realidade Aumentada é possível
simular equipamentos e objetos diversos, podendo o usuário
manipula-los, inspeciona-los e aprender sobre suas
características e comportamentos.
Diversas áreas do conhecimento humano têm se
beneficiado com as melhorias proporcionadas pela Realidade
Aumentada, entre elas a Medicina[1]. A possibilidade de
simular órgãos vitais estáticos e animados é muito atraente,
principalmente
porque
existem
características
e
comportamentos dos órgãos que são impossíveis de serem
visualizadas em partes dissecadas ou mesmo intervenções
cirúrgicas. O bom uso da Realidade Aumentada pode servir
como mais um recurso de apoio ao aprendizado em
faculdades relacionadas com a área da Saúde e mesmo em
escolas de nível fundamental e Médio.
A proposta do presente trabalho é fornecer uma
ferramenta completa e funcional para visualização de sinais
eletrocardiográficos e simulação desses sinais em um
coração virtual animado por Realidade Aumentada. Assim, a
seção 2 apresenta alguns trabalhos relacionados com o tema
proposto, a seção 3 apresenta o desenvolvimento e
características do sistema ARBioMed.
2.
TRABALHOS RELACIONADOS
Existem diversos estudos envolvendo Realidade Aumentada
e Medicina. A seguir foram destacados 3 dos principais
trabalhos relacionados com o tema proposto.
2.1. MIT – Remoção de Tumores Cerebrais[2]
O MIT (Massachusetts_Institute_of_Technology) em
conjunto com o Laboratório de Planejamento Cirúrgico do
Hospital Brigham desenvolveu uma série de ferramentas
destinadas a auxiliar processos cirúrgicos em remoção de
tumores cerebrais utilizando técnicas de Realidade
aumentada. Para tanto, cada paciente passa por 4 etapas
significativas, que são a construção de um modelo 3d preciso
do crânio e cérebro do paciente através de ressonância
magnética e tomografia axial computadorizada, a
determinação da posição exata do paciente na mesa de
operações utilizando um sistema de rastreamento em tempo
real por laser de baixa potência e câmeras de vídeo,o
alinhamento do modelo virtual do crânio sobre o paciente
real utilizando algoritmos de otimização e os dados coletados
pelo laser no processo anterior e, finalmente, a visualização
do modelo sobreposto ao paciente real em um display
presente na sala de operações.
Após a realização de todas as etapas, o cirurgião consegue
visualizar dados geométricos precisos das características
fisiológicas do paciente, auxiliando-o na tomada de decisões
sobre as melhores opções de intervenção cirúrgica para cada
caso.
O sistema construído tem reduzido o custo de cada
cirurgia entre $1000,00 e $5.000,00 segundo estimativas
feitas e está em plena utilização atualmente.
2.2.
Eurodoc: Telemedicina[3]
O objetivo deste projeto a visualização remota de dados
médicos para diagnóstico terapia e intervenções cirúrgicas. O
projeto baseia-se em Internet para a transmissão dos dados e
pressupõe que a sobreposição gráfica dos objetos virtuais
será feita no computador local, sendo transmitidas via
Internet apenas as coordenadas tridimensionais das
transformações dos objetos captadas pos sensores 3D. o
sistema não pretende implementar Realidade Aumentada,
mas sim proporcionar a transmissão em tempo real de dados
que permitam a reconstrução remota de órgãos a serem
estudados e mesmo operados, bem como seus
comportamentos. É importante salientar que os órgãos são
mapeados
por
tomografia
axial
computadorizada
previamente e enviados por Internet ao computador onde será
feita a visualização. Os órgãos virtuais também possuem
capacidade de deformação, tornando a visualização muito
mais realística.
Este sistema está sendo utilizado atualmente por diversos
serviços clínicos na Universidade de Viena.
2.3. Projeto VIDA (Visualizador Interactivo de Dados
biomecânicos Animados[3]
O objetivo deste projeto é fornecer uma aplicação para
visualizar dados biomecânicos de atividade muscular
executada por atletas, utilizando para isso modelos
tridimensionais colorizados de acordo com dados de esforço
muscular que se desejar monitorar. O programa trabalha com
dados previamente capturados para fazer as simulações,
permitindo ao usuário escolher entre as simulações gravadas
a que ele desejar simular. Foram definidos pontos para
captura dos sinais nas juntas ósseas do ser humano, o que
possibilita a sincronia com um modelo ósseo/muscular
virtual. quando o usuário seleciona uma simulação
previamente gravada, o programa mostra um esqueleto
virtual contendo também a parte muscular e mostra uma
animação do movimento físico realizado bem como a
deformação muscular e a colorização do músculo
correspondente de acordo com o esforço feito. O sistema do
projeto Vida utiliza técnicas de Realidade Virtual não
Imersiva nas suas visualizações.
3. SISTEMA PROPOSTO - ARBIOMED
Existem diversas plataformas para desenvolvimento de
aplicação em Realidade Aumentada. O que varia de uma
plataforma para outra é a facilidade no desenvolvimento de
aplicações, a portabilidade, a forma como serão inseridos os
objetos virtuais na apresentação, entre outras.
Uma das plataformas mais populares de desenvolvimento
é o ARToolKit[4], um conjunto de bibliotecas em código
aberto para o desenvolvimento de aplicações em Realidade
Aumentada.
O ARToolKit[4] conta com exemplos prontos de
aplicação e uma documentação consistente que ajuda os
usuários a se familiarizarem com a biblioteca. O
ARToolKit[4] permite a utilização de objetos virtuais tanto
em VRML[6] como em OpenGl[5], duas linguagens distintas
de Realidade Virtual.
Para utilizar modelos feitos em VRML[6], o
ARToolKit[4] faz um pré-carregamento dos modelos quando
a aplicação é iniciada, guardando todas as suas características
na memória para serem utilizadas posteriormente, quando o
marcador correspondente for detectado. Ao fazer isso, são
desconsiderados algumas definições dos modelos como
script, luzes, câmeras e sensores.Alguns desses recursos são
realmente desnecessários para aplicações de Realidade
Aumentada, como por exemplo as câmeras, pois em
Realidade Aumentada a posição da câmera virtual é
calculada em tempo de execução, de acordo com a posição
da câmera real. Porém, recursos importantes como scripts
acabam fazendo falta, pois para se ter um bom controle das
animações nos objetos é necessário ter uma forma de acionar
as animações somente no momento adequado. Algumas das
limitações são inerentes ao leitor de objetos VRML[6] do
ARToolKit[4], o OpenVRML[7].
Até o momento, o suporte a scripts não está presente no
ARToolKit[4]. Então, para ter controle das animações, cada
autor utiliza uma abordagem própria, tornando a aplicação
mais ou menos dinâmica, dependendo das características das
soluções implementadas.
A proposta do presente trabalho é a utilização de modelos
em VRML[6] estáticos em sua forma inicial em conjunto
com as transformações básicas de rotação, translação e
escala, suportadas pelo ARToolKit[4]. Assim, é possível
controlar com estruturas de programação as animações dos
objetos nos marcadores, tornando as aplicações mais
dinâmicas e interessantes.
Como estudo de caso, foram implementadas animações
dinâmicas em um coração humano. O modelo utilizado está
em VRML[6] e é estático em sua natureza, sendo
inteiramente animado com funções
internas do
ARToolKit[4].
O Sistema ARBioMed destina-se à visualização e
simulação de sinais de eletrocardiograma. Esses sinais
podem ser capturados por diversos meios, como arquivos
texto, imagens e sensores. A proposta do sistema prevê os
seguintes tipos de dados de entrada:
• Valor de batimentos cardíaco fixo digitado pelo
usuário
• Arquivos texto com vetores de gráficos de
Eletrocardioramas Reais
• Arquivos de Imagens de eletrocardiogramas
reais
nos
formatos
mais
populares
(jpg/bmp/png/gif)
• Entrada de dados em tempo real via sensor
lógico
A seguir veremos alguns dos aspectos considerados no
desenvolvimento do sistema.
3.1.
Interface com o Usuário
O ARToolKit[4] não provê naturalmente uma interface de
interação com o usuário, sendo todos os parâmetros
originalmente definidos em arquivos texto e lidos em tempo
de execução pelo sistema. Essa característica não é
interessante para um usuário que não tenha conhecimento das
características e comportamentos internos do ARToolKit[4].
Por esse motivo, foi criada uma interface de operação com
objetivo de ser auto-explicativa, simples e limpa. A figura 1
mostra a interface inicial do aplicativo.
a animação às capacidades gráficas de cada computador,
conseguindo manter na maioria dos casos a velocidade de
exibição com boa precisão em relação à velocidade
selecionada. A figura 3 ilustra 2 quadros da animação do
coração virtual.
Fig. 3. quadros do Coração virtual sendo animado.
A qualquer momento o usuário pode voltar à interface,
digitar um novo valor e pressionar o botão simular, para
visualizar interativamente a mudança ocorrida na animação.
3.3.
Fig. 1. Interface Inicial do ARBioMed.
Como pode ser visto, a interface contém apenas 5 botões
iniciais, sendo 4 deles opções de utilização e o quinto uma
opção de simulação. No canto inferior esquerdo existe um
local de texto onde são passadas ao usuário informações úteis
ao longo da utilização. Cada elemento da interface também
foi projetado com dicas de utilização que aparecem quando o
usuário permanece com o mouse por um determinado
período sobre o local. Elementos cuja utilização estiver
restringida temporariamente são desabilitados pelo programa,
de forma a conduzir o usuário na utilização o máximo
possível.
3.2.
Esta opção permite ao usuário capturar dados de
eletrocardiogramas reais em arquivos texto previamente
gravados. O usuário pode navegar pelo computador e
selecionar o arquivo desejado. Também pode definir quantas
amostras por segundo foram utilizadas na captação do sinal
ou simplesmente aceitar o valor padrão.O programa lê o
arquivo, captura os valores numéricos e os normaliza
segundo um fator de escala que posteriormente é enviado à
simulação. Além disso é exibido para o usuário um gráfico
de pré-visualização do sinal. A figura 4 mostra a utilização
desta opção.
Fig. 4. Utilização da Opção 2 – Buscar ECG em Arquivo
Opção 1 – Simular Batimento Cardíaco Constante
Nesta opção o usuário visualiza um campo de texto onde
pode inserir um valor de batimento cardíaco entre 20 e 200
batidas por minuto, sendo que o programa detecta possíveis
inconsistências nos valores informados e informa ao usuário
os erros encontrados. A figura 2 mostra um erro sendo
tratado pelo programa.
Ao pressionar o botão Simular, o usuário pode visualizar o
mesmo coração da opção anterior sendo animado de acordo
com as características do gráfico selecionado, respeitando a
velocidade e mostrando possíveis anomalias de forma
aproximada, uma vez que as placas gráficas não conseguem
gerar uma quantidade de quadros que se equipare às taxas de
amostragem dos
sinais
eletrocardiográficos. Essa
aproximação é calculada pelo programa a cada frame gerado
pela placa gráfica.
3.4.
Fig. 2. Opção 1 - Pulso Constante (Erro)
Quando o valor está errado o programa desabilita o botão
de simulação, evitando possíveis erros na visualização final.
Esse comportamento está presente em todas as outras opções
do programa. Se o valor digitado estiver correto o botão se
ativa e ao pressionar o usuário obtém acesso à simulação em
Realidade aumentada da animação, na velocidade escolhida.
O programa implementa uma função de predição que adapta
Opção 2 – Buscar ECG em Arquivo
Opção 3 – Capturar ECG de Imagem
Nem sempre é possível contar com arquivos-texto de
eletrocardiogramas, principalmente por limitações técnicas
de dispositivos mais antigos. Em alguns casos, existem
somente as imagens impressas do eletrocardiograma, então é
interessante haver uma forma de recuperar os dados de
eletrocardiograma nessas imagens. A opção 3 foi
desenvolvida com esse propósito, e devido às limitações de
espaço na interface padrão, foi desenvolvida uma janela
especialmente para esta opção. Nessa janela o usuário pode
acessar uma imagem no disco num dos formatos mais
populares de imagem, como bmp, jpg, png e gif. O programa
abre a imagem e gera uma versão miniaturizada dela. A
seguir, o usuário escolhe uma cor para ser usada como base
de captura do sinal, geralmente a própria cor do sinal. O
programa então processa a imagem pixel a pixel por um
processo de comparação de cor e gera uma versão em preto e
branco da imagem, sendo o branco as áreas selecionadas
como sinal e o preto as áreas descartadas. O usuário pode
definir um fator de tolerância de cor para eliminar erros e
também pode definir manualmente a cor do sinal se desejar.
Também pode apagar na imagem em preto e branco as áreas
de erros que persistirem, melhorando a fidelidade do sinal
capturado. A figura 5 mostra a utilização da opção 3
.
4.
Fig. 5. Utilização da Opção 3 – Capturar ECG de Imagem
Após o processamento inicial, o programa realiza ainda
cálculos para corrigir eventuais falhas na captura do gráfico,
criando por interpolação os pontos faltantes. Esses pontos
são normalizados como um fator de escala e armazenados em
um vetor que é posteriormente enviado à simulação do
coração virtual para animação similar à da opção 2.
3.5.
Opção 4 – Captar Dados do Sensor
Como complemento às opções de captura de dados prégravados de sinais cardíacos, o ARBioMed tem uma função
implementada que lê dados em tempo real através de um
sensor lógico ou seja, um sensor que envia um bit a cada
pulso recebido. Partindo desse bit o programa calcula a
velocidade média do coração e informa ao usuário. Esse
cálculo é uma média das 5 últimas amostras recebidas do
sensor. Ao pressionar o botão simular nessa opção, o usuário
visualiza o mesmo coração virtual das opções anteriores,
porém batendo de acordo com a velocidade de seu próprio
coração. O sensor foi adaptado a partir de um dispositivo de
esteira elétrica e interfaceado por um acoplador ótico com a
porta paralela do computador. Na interface um ícone de
pulso aparece a cada pulso recebido fornecendo uma
indicação visual relativamente precisa do momento em que
acontecem os pulsos. As figuras 6 e t mostram,
respectivamente, a utilização da opção 4 e o sensor utilizado.
Fig. 6. Utilização da Opção 4 – Capturar Dados do Sensor
Fig. 7. Sensor Utilizado na Opção 4
CONCLUSÕES
O sistema ARBioMed traz funções de fácil utilização
para visualizar e simular sinais eletrocardiográficos
capturados por meios diversos fornecendo flexibilidade aos
diversos perfis de usuários.
O sistema se encontra em fase final de desenvolvimento,
como trabalhos futuros prevê-se a migração da animação
para a plataforma OpenGl[5], o que permitirá deformações
na malha poligonal melhorando grandemente o nível de
realismo, bem como a texturização com imagens obtidas de
corações reais. Também está prevista a adição de som
característico do coração, tanto na interface com no ambiente
da simulação. O sensor utilizado para demonstrar a
integração com Realidade Aumentada, pode ser facilmente
trocado por uma versão mais profissional, melhorando assim
a fidelidade do sistema. Está prevista uma opção para salvar
os vetores de eletrocardiogramas capturados das imagens na
opção 3.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] J.H. Shuhaiber , “Augmented Reality in Surgery ” Arch
Surg:2004;139:170-174;
Disponível
em:
http://archsurg.amaassn.org/cgi/content/full/139/2/170#ACK
[2] Project on Image Guided Surgery: A collaboration
between the MIT AI Lab and Brigham and Women's
Surgical Planning Laboratory. Disponível em:
http://groups.csail.mit.edu/vision/medicalvision/surgery/surgical_navigation.html
[3] J. B. Pereira, “VIDA: Visualizador Interactivo de Dados
biomecânicos Animados – Relatório Técnico”;
http://planeta.clix.pt/jbraz_home/docs/Projectos/vida.
[4] ARToolKit
Home
Page.
Disponível
em
http://www.hitl.washington.edu/ARToolKit/.
[5] OpenGl – “The Industry Standard for High Performance
Graphics.”; Disponível em: http://www.OpenGl.org/.
[6] VRML
–
“Vrml”.
Disponível
em:
http://en.wikipedia.org/wiki/VRML.
[7] OpenVRML - “OpenVRML”. Disponível em:
http://www.openvrml.org/.
CLASSIFICANDO AS INTERAÇÕES EM AMBIENTES DE REALIDADE
AUMENTADA
Rafael Santin, Claudio Kirner
Universidade Metodista de Piracicaba – UNIMEP
Faculdade de Ciências Exatas e da Natureza – FACEN
Programa de Pós Graduação em Ciência da Computação.
{rafael,ckirner }@unimep.br
Resumo - O presente trabalho propõe uma classificação
de interações no ambiente de Realidade Aumentada baseada
no uso de marcadores em aplicações com ARToolKit. A
classificação elaborada permitiu analisar o funcionamento
de uma aplicação desenvolvida com técnicas diferenciadas
de interação, demonstrando ser capaz de auxiliar o
desenvolvimento recursos avançado de interação em
ambientes de Realidade Aumentada.
Palavras-Chave – interação, realidade aumentada, realidade
virtual
Abstract – This paper aims to classify interactions in
Augmented Reality Environment based on the use of
markers in applications using ARToolKit. This work
allowed the analysis of interactions used in a specific
application, giving the guidance to new interaction
techniques and motivating the implementation of advanced
Augmented Reality applications.
Keywords – interaction, augmented reality, virtual reality.
1. INTRODUÇÃO
A Realidade Aumentada (RA) realiza a sobreposição de
imagens sintetizadas por computador sobre a imagem de uma
cena, capturada e exibida em tempo real. As imagens
sintéticas são elementos computacionais, como informações
multimídia ou objetos virtuais, que expandem a capacidade
do ambiente do usuário.
A atuação desses elementos computacionais na imagem
conjugada possibilita explorar novas formas de interação,
fornecendo elementos estimulantes à percepção do usuário.
Assim, a RA oferece um ambiente capaz de promover
técnicas avançadas na interação homem-computador, através
da exploração de recursos interativos altamente atrativos e
intuitivos [1].
Uma forma de interação bastante utilizada em ambientes
de RA consiste em utilizar cartões marcadores, como
recursos de manipulação dos elementos computacionais.
Nesses ambientes, os usuários manipulam marcas impressas
em papel para articularem as operações oferecidas pelas
aplicações de RA. Essa forma de interação é utilizada pela
biblioteca de programação ARToolKit [2], que é uma
ferramenta para desenvolvimento de aplicações de realidade
aumentada. A Figura 1 demonstra um exemplo do marcador,
que consiste num quadrilátero com símbolos de identificação
em seu interior.
Fig. 1. Exemplo do marcador utilizado pelo ARToolKit.
O marcador é o padrão reconhecido pelo módulo de visão
computacional do ARToolKit, para orientar e posicionar
objetos virtuais na cena. Dessa forma, o marcador passa a ser
o meio de interação entre o usuário e o sistema, viabilizando
a manipulação do objeto virtual através da articulação direta
de seu marcador. Para o objeto virtual ser mostrado sobre o
marcador, é necessário realizar, previamente à execução da
aplicação, o cadastro do marcador e, posteriormente, a sua
associação ao objeto virtual.
A funcionalidade do marcador em representar apenas um
objeto virtual é característica marcante de alguns exemplos
distribuídos junto com o ARToolKit. Um exemplo bastante
utilizado é a aplicação simpleVRML, que permite associar a
cada marcador um objeto virtual construídos na linguagem
VRML.
As aplicações exemplos, como o simpleVMRL,
distribuídas junto com o ARToolKit auxiliam o
desenvolvimento de novas aplicações de RA, permitindo que
os desenvolvedores de novas aplicações tenham um modelo
que elucide o funcionamento do sistema.
O presente trabalho propõe a modificação da aplicação
simpleVRML, visando implementar a classificação das
novas interações desenvolvidas, e descrever as
funcionalidades atreladas a determinados marcadores.
2. AMBIENTES DE REALIDADE AUMENTADA COM
ARTOOLKIT.
O ARToolKit é uma biblioteca de programação escrita
nas linguagens C/C++ que oferece suporte ao
desenvolvimento de aplicações de RA.
Disponível em código aberto, o ARToolKit emprega
métodos de visão computacional para calcular a posição e a
orientação da câmera em relação aos marcadores contidos na
imagem capturada em tempo real por este dispositivo.
Como esse rastreamento é realizado de maneira rápida e
precisa, o usuário tem a impressão de que os objetos virtuais
estarem atrelados aos marcadores visualizados no campo de
captura da câmera.
Além de ser distribuído gratuitamente e realizar em tempo
real, a conjugação das imagens dos objetos virtuais na
imagem do mundo, o ARToolKit necessita de recursos
mínimos para a sua execução. Um ambiente para a execução
desse sistema pode ser formado pelos seguintes dispositivos:
computador com monitor, web-câmera e marcadores. A
Figura 2.a mostra a execução de uma aplicação de RA,
enquanto que a Figura 2.b mostra os dispositivos utilizados
para a execução da aplicação.
A presença do objeto virtual é o mecanismo de interação que
permite ao usuário controlar a existência do objeto na cena.
Por exemplo, o objeto pode ser inserido, copiado, trocado,
retirado e até mesmo apagado da cena. A seguir, serão
apresentados os conceitos dos mecanismos de controle da
presença dos objetos.
Inserção – A inserção representa as possibilidades de o
usuário introduzir um objeto virtual na cena. Dessa maneira,
a inserção abrange as formas de interações que tenham a
função de realizar a exibição dos objetos na imagem do
ambiente.
Cópia – A cópia consiste no recurso que oferece a
possibilidade do usuário replicar os objetos existentes na
cena. Esse mecanismo permite a possibilidade de estruturar
um mundo virtual, a partir da disponibilização de alguns
elementos virtuais.
a
b
Fig. 2. a) Objeto virtual sobrepondo o marcador, b) Ambiente de
execução da aplicação
As características do ARToolKit motivam o
desenvolvimento de novas aplicações de RA, que busquem
explorar os recursos visuais com forte apelo interativo.
3. INTERAÇÕES DO USUÁRIO COM OBJETOS
VIRTUAIS EM AMBIENTES DE REALIDADE
AUMENTADA
Os marcadores são um meio de interação utilizado em
alguns ambientes de RA, como os que são desenvolvidos
com o ARToolKit. O usuário manipula o marcador com a
finalidade de promover a execução de ações sobre os objetos
virtuais exibidos na cena. Por exemplo, na aplicação
simpleVRML o marcador tem a funcionalidade de alterar
determinados atributos dos objetos virtuais que o sobrepõe,
como a sua visibilidade, translação, rotação e escala. As
funcionalidades do marcador podem ser alteradas, de modo a
possibilitar a execução de outras formas de atuação do
usuário sobre os objetos virtuais.
O esclarecimento dessas outras formas de atuação no
ambiente de RA aponta para a elaboração de uma definição
geral sobre os tipos de interação existente entre o usuário e
os objetos virtuais. Nesse sentido, a experiência de alguns
anos em trabalhos com realidade aumentada, aliada com os
conceitos do Bowman [3] sobre a interação em ambientes de
realidade virtual, possibilitou uma adequação dos conceitos
para o ambiente de RA, culminando numa definição que
envolve de maneira geral esses tipos de interações.
A definição das possíveis formas de interação do usuário
no ambiente de realidade aumentada envolve os aspectos
relacionados à presença dos objetos, mudança de
características, manipulação e comportamento.
3.1. Presença dos objetos
Troca – A troca permite ao usuário alterar um objeto
visualizado por outro. Esse mecanismo possibilita minimizar
a quantidade dos dispositivos de rastreamento, como os
marcadores, uma vez que a realização da troca busca
promover o agrupamento das referências entre os objetos
virtuais sobre o mesmo marcador.
Retirada – O mecanismo de retirada possibilita controlar a
quantidade de objetos existentes na cena, através da exibição
ou não de determinados objetos. Assim, é possível adotar
esse mecanismo para impor determinados limites durante a
visualização do objeto, de modo que a cena não se torne
saturada com a exibição de uma grande quantidade de
objetos.
Apagamento – O apagamento permite ao usuário desalocar
determinados objetos carregados no ambiente, promovendo
sua eliminação. Esse mecanismo libera os recursos
computacionais, possibilitando que novos objetos possam ser
carregados e exibidos.
3.2. Mudanças de características
A mudança de características dos objetos virtuais consiste
na modificação dos atributos relacionados à aparência desses
objetos, como o tamanho, cor, luminosidade, transparência,
etc. Nesse caso, além de ser possível oferecer a possibilidade
do usuário interferir diretamente na aparência dos objetos
virtuais, torna-se viável utilizar esse recurso como um
recurso de feedback a aplicação. Por exemplo, o objeto pode
alterar suas propriedades para chamar a atenção do usuário.
A flexibilidade da modificação nesse tipo de interação
permite explorar operações dinâmicas capazes de oferecer
mecanismos potencialmente atrativos a aplicação.
3.3. Manipulação
A manipulação consiste no recurso de interação que
permite ao usuário transladar ou rotacionar partes ou até
mesmo a cena toda, utilizando os dispositivos de interação do
ambiente.
A manipulação possibilita ao usuário explorar outros
pontos de vista e articular a distribuição dos objetos na cena,
reorganizando-os. A facilidade e objetividade no uso desse
recurso são aspectos fundamentais para a motivação da
interação do usuário com o ambiente de RA.
3.4. Comportamento
O comportamento consiste numa forma do usuário atuar
na dinâmica do objeto virtual. Nesse caso, os objetos podem
oferecer respostas diferenciadas, tendo em vista os as ações
executadas pelo usuário.
4. IMPLEMENTAÇÃO
A função dos recursos de interação é detectar as ações do
usuário, a fim de permitir a realização de determinados
eventos associados a cada ação. Por essa razão, foram
utilizados marcadores com o objetivo de operar as formas
diferenciadas de interações, que são oferecidas para a
atuação do usuário sobre os objetos virtuais exibidos no
ambiente.
Os marcadores permitem a execução de eventos durante a
sua manipulação no ambiente de RA. Assim, torna-se
necessário detectar o disparo de um evento no ambiente. No
caso desse trabalho, utiliza-se o comportamento do marcador
para realizar a interação com os objetos virtuais.
O comportamento dos marcadores está associado aos
possíveis estados que o sistema de rastreamento permite
identificar. Por exemplo, é possível identificar a presença do
marcador na cena; a distância do marcador em relação a
outros marcadores ou objetos virtuais; a orientação do
marcador e o seu ângulo de rotação. Esses comportamentos
do marcador podem ser utilizados em conjunto para expandir
o tipo de interação, como aliar a detecção da distância e
rotação. Outro recurso interessante a ser utilizado em
conjunto com os estados do marcador consiste no uso do
tempo.
O monitoramento do tempo torna possível potencializar os
recursos identificados sobre os marcadores. Por exemplo,
caso o usuário esteja manipulando determinado marcador e
este tenha a sua captura obstruída, pode-se disparar um
temporizador que detecte um tempo limite para a imagem de
o marcador reaparecer e posteriormente executar algum
evento, caso contrário se o temporizador superar esse limite a
determinada ação poderá não ser executada.
As variações e possivelmente a combinação dos estados
referentes ao comportamento dos marcadores permitiram a
criação de uma nova categoria de marcadores, que foram
denominados marcadores de ações.
Os marcadores de ações viabilizam o acesso a formas de
interação dos objetos virtuais, pois são capazes de exercer
meios fundamentais para a execução das operações sobre os
elementos virtuais. Essas operações são conhecidas como
seleção, ação e liberação.
Um marcador pode ter a funcionalidade elaborada para
explorar as três operações em conjunto, ou essas operações
podem ser executadas por diferentes tipos de marcadores de
ações, dependendo da necessidade da sua atuação. Por
exemplo, a copiar de um objeto exibido na cena poderia ser
realizada por um marcador que selecione, copie e libere o
objeto na cena. Outra forma seria a utilização de um
marcador para cada uma das três etapas, ou seja, um
marcador seria responsável pela seleção, outro pela cópia e o
terceiro teria a função de liberar o objeto.
Para o desenvolvimento do marcador de ação, foram
realizadas modificações no exemplo simpleVRML, a fim de
expandir as formas de interação. Assim, torna-se possível
oferecer novos recursos que possibilitam a criação de novas
aplicações.
Uma das aplicações desenvolvidas a partir das
modificações implementadas consiste na montagem de um
helicóptero, utilizando uma placa de ação. Essa aplicação
oferece em uma base retangular as peças segregadas de um
helicóptero, como a hélice, cockpit, trem de pouso,
estabilizadores e a carcaça. O objetivo dessa aplicação é
possibilitar que o usuário monte o helicóptero, encaixando as
peças no seu devido lugar. No final da montagem o
helicóptero torna-se animado e sobrevoa a cena, emitindo o
seu som. A Figura 3 mostra as partes do helicóptero.
Fig. 3. Base da aplicação de montagem, contendo as peça do
helicóptero.
As formas de interação na aplicação de montagem de
helicóptero são executadas por apenas um marcador de ação.
Nesse caso, esse marcador de ação é responsável pelas
operações de seleção, ação e liberação. A seguir serão
apresentadas as descrições de alguns exemplos das técnicas
de interação utilizadas nessa aplicação.
4.1 Seleção
Para realizar alguma interação com o objeto virtual,
primeiramente, o usuário necessita selecionar qual será o
objeto alvo da ação. Uma forma para selecionar o objeto
virtual consiste na verificação da proximidade entre o
marcador de ação e os objetos disponíveis na cena.
Na aplicação de montagem do helicóptero, a seleção
ocorre quando a esfera associada ao marcador de ação se
aproxima de uma distância limite da esfera representante das
peças do helicóptero. Nesse caso, a distância limite ocorre
quando a esfera do marcador de ação colide com a esfera do
objeto virtual. A Figura 4 demonstra o marcador de ação
sobre a base de montagem. Este marcador movimenta a
esfera maior em azul, possibilitando o usuário selecionar o
objeto desejado através de seu posicionamento sobre
algumas das esferas menores em vermelho.
Realizado o encaixe da peça no seu devido lugar a peça é fixada
nesse local e a cor é alterada para a sua cor original.
4.3 Liberação
Fig. 4. Marcador de ação sobrepondo a base de montagem.
A seleção da peça do helicóptero é visualizada pelo
usuário através da modificação da cor do objeto. Assim, esse
mecanismo de interação modifica a característica do objeto
virtual, que funciona como um recurso de feedback,
indicando a execução da operação de seleção. Esse recurso,
também, é utilizado para indicar ao usuário o lugar correto
do posicionamento do objeto. A Figura 5 mostra a
modificação da cor da peça selecionada, nesse caso, o
cockpit tornou-se branco após a seleção, e o destino da peça
na carcaça do helicóptero tornou-se vermelho.
A liberação realiza as atividades inversas a seleção. Esse
mecanismo finaliza uma determinada atuação do usuário
sobre o objeto virtual, possibilitando que o usuário execute
novas tarefas no ambiente.
A aplicação utilizada como exemplo libera o marcador de
ação e retorna a cor normal do objeto no momento da
inserção em seu local correto. A Figura 7 mostra o cockpit já
não mais selecionado e inserido no helicóptero.
Fig. 7. Inserção do cockpit no helicóptero e a liberação do
marcador de ação.
Inserida a peça no seu devido local, o usuário poderá
partir para a manipulação de outra. A montagem completa do
helicóptero aciona o seu funcionamento e esse inicia um vôo
sobre a cena.
Fig. 5. Modificação da cor da peça selecionada e a indicação do
lugar para o transporte.
Selecionada a peça do helicóptero torna-se atrelada ao
marcador, realizando os seus movimentos. Essa fase consiste
no próximo passo a ser executado ação atribuída pelo
marcador de ação.
4.2 Ação
A ação a ser efetuada sobre o objeto virtual é
desempenhada através dos marcadores de ação. A função
desses marcadores consiste em oferecer os recursos
necessários para o usuário realizar a tarefa desejada.
No exemplo demonstrado o objetivo do usuário é
posicionar as partes segregadas do helicóptero nos seus
locais corretos.
Nesse caso, é utilizada a técnica de
interação para a manipulação de objeto virtual.
O recurso de interação oferecido pelo marcador de ação
permite que o usuário translade a peça do helicóptero. A
Figura 6 mostra a translação aplicada ao cockpit para ser
adicionada ao helicóptero.
Fig. 6. Manipulação do cokpit do helicóptero.
5. CONCLUSÃO
Este artigo abordou as formas de interações em um
ambiente de Realidade aumentada, através da classificação
dos possíveis tipos de ações (interações) que o usuário de
um sistema de RA pode exercer sobre os objetos virtuais.
Para isso foi traçado um paralelo entre as definições sobre
algumas técnicas de interação em realidade virtual com o
conhecimento das técnicas de interação utilizadas em
ambientes de RA.
A utilização de algumas dessas classificações definidas
nesse trabalho, foram utilizadas para elucidar o
funcionamento de uma aplicação desenvolvida para a
montagem de um helicóptero, possibilitando utilizar, de
forma prática, as definições discorridas no presente
trabalho.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] KIRNER, C.; TORI, R. Introdução à Realidade Virtual,
Realidade Misturada e Hiper-realidade. In: Claudio
Kirner; Romero Tori. (Ed.). Realidade Virtual: Conceitos,
Tecnologia e Tendências. 1ed. São Paulo, 2004, v. 1, p.
3-20.
[2] ARToolKit. Human Interface Technology Laboratory <
http://www.hitl.washington.edu/artoolkit/> acesso em
fev, 2007
[3] BOWMAN, D. et al. An Introduction to 3-D User
Interface Design. PRESENCE: Teleoperators and
Virtual Environments, 10(1):96-108, February 2001.
COLABORAÇÃO EM AMBIENTES TELECOMANDÁVEIS USANDO X3D
Bruno Rafael de Araújo Sales e Liliane dos Santos Machado
Laboratório de Tecnologias para o Ensino Virtual e Estatística
Universidade Federal da Paraíba – CCEN
brunorasales@gmail.com, liliane@di.ufpb.br
Resumo – Este trabalho apresenta a proposta da concepção
de ambientes virtuais colaborativos voltados à área
educacional. Os ambientes virtuais são vistos como espaços
tridimensionais, compostos por estruturas e objetos
correspondentes ou não a espaços reais, que podem estar
interligados à componentes do mundo real. Com isto,
alterações ocorridas no AV podem ser repassadas para o
ambiente real. As tecnologias e os requisitos necessários ao
desenvolvimento são apresentados. Pretende-se com este
trabalho prover acesso remoto à laboratórios reais e a
ferramentas de ensino à distância.
Palavras-Chave – ambiente virtual, telecomando, X3D.
Abstract – This paper presents the design of collaborative
virtual environments for educational purposes. The virtual
environments are three-dimensional worlds composed by
objects that can correspond or not to real structures. Then,
objects of the virtual world could be related to real
structures and actions performed by user can really affect
the real world. The technologies and requirements necessary
to develop the project are presented in order to allow remote
access to real laboratories and educational tools through
virtual environments.
Keywords – virtual environment, telecommand, X3D.
1. INTRODUÇÃO
A capacidade de unir pessoas geograficamente
distribuídas que a Internet oferece serve como base para o
desenvolvimento de aplicações e serviços colaborativos em
diversos campos de atuação. Neste contexto estão inseridos
os Ambientes Virtuais Colaborativos (AVC), de maneira a
possibilitar aos seus participantes a interagirem através da
simulação de um mundo real ou imaginário ou até mesmo da
manipulação de objetos virtuais no mundo real [3].
Os sistemas de RV colaborativos existem há décadas,
porém só nos últimos anos esses sistemas começaram a sair
das áreas acadêmica e militar e ganharam espaço nos mais
diversos campos tais como medicina [10], educação [6],
entretenimento [11] entre outros. Em sistemas deste tipo
usuários podem auxiliar uns aos outros na execução de
tarefas de acordo com princípios de trabalho cooperativo
baseado em computador (CSCW – Computer Supported
Cooperative Work) [4].
O que diferencia um AVC de um Ambiente Virtual (AV)
de uso local é que no primeiro caso existe a possibilidade de
interação e cooperação entre usuários distantes no decorrer
da execução de uma determinada tarefa. Propriedades como:
espaço, presença e tempos compartilhados; comunicação
entre os participantes e; interação com o ambiente são
características marcantes em ambientes desse tipo [4].
A interligação de AVs com ambientes reais permite o
acesso remoto a recursos e dispositivos fisicamente
existentes. Por meio desse acesso, pessoas situadas em locais
distantes podem manter controle sobre um ambiente real
somente manipulando o AV relacionado. Dessa maneira,
professores e estudantes podem fazer uso de estruturas
laboratoriais nos chamados laboratórios remotos [9].
Um laboratório remoto é um tipo de laboratório virtual
que consiste em um lugar real que pode ser modificado pelos
usuários. Os usuários, no caso estudantes, podem alterar
componentes reais através da manipulação de elementos
gráficos e observar os resultados de seus experimentos
através de câmeras por exemplo. A oportunidade oferecida
por esses laboratórios pode ter reflexo positivo no processo
de aprendizado, visto que possibilita aos estudantes terem
acesso a dispositivos e informações que só existem
remotamente [9].
O que este artigo propõe é o desenvolvimento de um AVC
que esteja diretamente ligado a um ambiente real, permitindo
que vários usuários possam colaborar no controle de
componentes
fisicamente
existentes,
através
de
telecomandos, executando tarefas e realizando experimentos.
Outra possibilidade é a de professores ministrarem suas aulas
fazendo uso de um ambiente como esse para demonstrações
em tempo-real.
2. AMBIENTES VIRTUAIS COLABORATIVOS
O uso de AVCs está relacionado a dois conceitos
aparentemente semelhantes: colaborar e cooperar. Colaborar
remete à ação de trabalhar em conjunto ou ao trabalho em
comum entre duas ou mais pessoas. Para que haja
colaboração é necessário que exista comunicação,
organização e operação em conjunto num espaço
compartilhado [3]. Por sua vez, cooperar significa operar
simultaneamente na produção, modificação e utilização de
um conjunto de informações e artefatos reais ou virtuais de
maneira compartilhada [3,4]. Na literatura, entretanto, os
termos colaboração e cooperação são muitas vezes utilizados
como sinônimo. Neste caso, o AVC engloba além da
visualização e navegação em uma cena 3D, a característica
de os usuários poderem colaborar na execução de tarefas.
2.1. Desenvolvimento de AVC
No desenvolvimento de um AVC deve-se observar
aspectos como a quantidade de usuários, a complexidade da
cena, a capacidade da rede utilizada e como será feita a
interação entre usuário e AV e usuários entre si [4]. Um
número elevado de usuários exige um alto poder
computacional. Observando também o número de tarefas que
poderão ser realizadas por cada usuário. Além disso, é
necessário que haja um gerenciamento desses usuários
(login, senha, segurança, etc) [3,4]. A complexidade do
mundo está relacionada ao número de objetos presentes na
cena e também do nível de detalhamento do ambiente.
Objetos que podem ser modificados ou ajustados pelo
usuário devem possuir um nível de detalhes maior quando
comparados com aqueles que o usuário pode apenas
observar. A capacidade da rede influencia o funcionamento
de um AVC, pois a comunicação e a troca de informações
entre os usuários é intensa. Redes de baixa velocidade podem
comprometer a sensação de tempo real da aplicação.
Sob o ponto de vista da interação, os usuários podem
interagir por meio de ações ou mensagens de texto ou voz,
sendo que uma abordagem muito comum é utilização de
avatares (representações do usuário através de entidades
virtuais) para fazer a representação visual dos usuários no
AV [11].
3. COLABORAÇÃO PARA ENSINO E APRENDIZADO
O processo de ensino e aprendizado é tido como complexo
sob a abordagem da colaboração [6] uma vez que a troca de
informações é a principal fonte de construção de
conhecimento. Tendo em vista que a colaboração promove
não só a troca de informações, mas também a capacidade dos
membros se ajudarem em tarefas, os benefícios que sistemas
colaborativos acarretam são bastante relevantes [6,9].
Há algum tempo existem espaços de colaboração na
Internet onde usuários podem trocar informações e se
auxiliarem. Apesar do fato de não serem ambientes
tridimensionais, os fóruns são exemplos de sistemas
colaborativos. Porém, ultimamente o surgimento de
ambientes de colaboração 3D têm chamado a atenção de
estudantes e professores [6,10].
Em ambientes virtuais ou ambientes 3D a sensação de
presença é bem maior do que em aplicações que utilizam
tecnologias 2D. O sentimento de “estar junto” ou “trabalhar
junto” com outros membros aparece com maior afinco em
ambientes 3D pois permite as pessoas identificarem-se
visualmente tornando a interação remota e a colaboração
mais natural [6].
Entretanto, o que realmente promove a colaboração e o
envolvimento em um ambiente 3D é a seqüência de
atividades que requer participação e interação entre
estudantes de diferentes localidades. A competição amigável,
discussões sobre temas propostos e o conhecimento prévio de
cada estudante, faz com que a colaboração traga benefícios
no aprendizado de todos. Cada participante do ambiente,
contribui com os seus conhecimentos, acrescentando novas
idéias e informações a outros estudantes [6]. Através de
mundos virtuais estudantes de diversos países podem se
encontrar, comunicar-se em tempo real, discutir e trocar
perspectivas. Interação com pessoas de lugares diversos e
diferentes culturas cria interesse e curiosidade por parte dos
estudantes, motivando-os a serem membros de ambientes
como estes [6,7].
4. X3D
Desenvolvido pelo grupo Web3D, o X3D é “um padrão
aberto para distribuir conteúdos de realidade virtual em 3D,
em especial pela Internet.” [1]. Um arquivo X3D contém
não só dados geométricos, mas também descrições de
comportamentos dos objetos e da cena. O X3D surgiu com o
intuito de substituir o padrão existente (VRML – Virtual
Reality Modeling Language), corrigindo alguns aspectos
indesejáveis que este contém e incorporando avanços de
dispositivos e técnicas. As idéias de eventos de entrada e
saída e também das rotas (ROUTES) do X3D são bastante
semelhantes às do VRML [1,8].
Por ser uma linguagem bastante conhecida e atual
dominante na Web, o XML (Extensible Markup Language)
foi adotado como sintaxe principal para o X3D [1]. Além
disso esta sintaxe torna mais simples a integração de
descrições de ambientes 3D com páginas Web.
O X3D oferece suporte à uma série de dispositivos,
métodos e técnicas, sendo possível adicionar funcionalidades
às suas aplicações. Essa extensibilidade (adição de
funcionalidades) e o conjunto de serviços (funcionalidades já
disponíveis) do X3D são definidos por Profiles e
components. Um componente (component) é um conjunto ou
coleção de nós que possuem funcionalidades em comum.
Componentes existem em vários níveis de suporte, onde cada
nível possui suas particularidades. Níveis menores contam
com uma coleção restrita de nós, à medida que o nível
aumenta, mais nós são disponibilizados no componente. Um
Perfil (profile) é uma coleção de componentes em
determinado nível de suporte. Cenas simples não necessitam
de um Perfil que suporte níveis altos dos nós, já cenas mais
elaboradas, sim [1,8].
4.1. Scene Access Interface (SAI)
Apesar de suas diversas características, o X3D não é uma
linguagem de propósito geral. Entretanto ela pode ser
integrada a aplicações desenvolvidas em outras linguagens,
como Java, C ou linguagens de script. A SAI é uma API que
nos possibilita acessar uma cena X3D através de uma
aplicação externa. Assim, é possível inserir objetos, removêlos, notificar eventos e realizar modificações que afetam a
cena e, conseqüentemente , elementos relacionados e
externos a ela. Ou seja, a cena pode ser totalmente controlada
de forma indireta através de um programa escrito em
linguagens de programação ou script [8].
Além das características da cena, pode-se também
manipular configurações do browser a partir de aplicações
externas utilizando SAI. Notificações são enviadas para a
aplicação sempre que alguma modificação é feita. Para se
obter uma ligação da aplicação com o browser basta que seja
criado um componente X3D utilizando a classe
BrowserFactory da SAI. Logo em seguida deve-se adicionar
o componente no painel principal da aplicação. Feito isso,
uma instância do browser pode ser criada através do método
getBrowser() da classe X3DComponent. Neste ponto o
arquivo da cena a ser exibida é escolhido e substitui-se a
cena principal utilizando: o método createX3DFromURL(),
que recebe o caminho do arquivo como parâmetro, e o
método
replaceWorld(),
ambos
da
classe
ExternalBrowser [5,8].
No VRML é possível se ter acesso da cena através de
aplicações externas também. Porém, para cada linguagem
específica existe um modelo de programação diferente. Isso é
solucionado no X3D com a SAI. A especificação de uma
coleção unificada de serviços abstratos que podem ser
mapeados para qualquer linguagem de programação ou script
que se queira trata de eliminar essa divergência entre as
formas de acesso externo.
5. COMUNICAÇÃO
A troca de informações entre participantes de um AVC é
essencial para que seja consolidada a colaboração. Mas não
se trata apenas de trocar informações, trata-se de trocar
informações da maneira mais rápida possível, sem que haja o
comprometimento da sensação de tempo real da aplicação.
Apesar do surgimento e uso do Internet e Internet2,
sistemas de RV colaborativos exigem tráfego intenso. Isto
ocorre devido ao fato de alterações feitas por cada usuário
terem de ser repassadas para todos os demais, de forma que
seja garantida a consistência do AVC, isto é, os usuários
devem estar em uma cena com as mesmas configurações.
Uma das maneiras de evitar essa sobrecarga da rede é
obrigar que todos os clientes tenham o AVC armazenado
localmente. Isso faz com que seja necessário apenas o tráfego
de mensagens referentes às alterações ocorridas no AV de
cada usuário. A Figura 1 mostra como isso poderia ocorrer.
Todavia, ambientes complexos ou cheios de detalhes podem
deixar a navegação lenta caso estejam totalmente carregados
na memória do computador do cliente. Então é possível que
cada usuário possua localmente armazenada apenas as partes
do AV relacionadas à atual posição onde ele se encontra. À
medida que o cliente vai mudando de ambiente, as novas
partes da cena completa são recebidas [4].
Fig. 1: Esquema de repasse de alterações, realizadas por um
usuário, para usuários conectados ao AVC.
A comunicação em um AVC pode ocorrer de maneiras
diferentes. No modelo atual de comunicação da Internet
existem dois protocolos da camada de transporte que são
bem conhecidos, o TCP (Transmission Control Protocol) e o
UDP (User Datagram Protocol). As diferenças entre os dois
estão relacionadas com a forma de envio e confirmação ou
não do recebimento de mensagens, dentre outras coisas. O
que determina o protocolo a ser usado em uma aplicação é a
maneira como se quer que os dados sejam enviados e/ou a
necessidade da garantia de que os dados chegaram realmente
ao seus destinos [2].
O TCP é um protocolo orientado a conexões, ou seja,
antes do envio dos dados é necessário que se realize um
acordo entre os computadores que irão se comunicar. Este
protocolo tende a ser pouco ágil, se comparado a outros
protocolos, por ser confiável, isto é, por garantir que os
dados cheguem de fato ao destino desejado e de que serão
reenviados caso não cheguem. O protocolo UDP não possui
tal característica de confiança , portanto, não confirma se
dados chegaram ou não ao seu destino. Os dados
simplesmente são enviados sem a preocupação com falhas ou
perdas. Além disso, este protocolo não é orientado a
conexões, ou seja, aplicações podem enviar dados sem que
seja necessário estabelecer uma conexão exclusiva [2].
Outro ponto importante que observa-se na comunicação
através da Internet é a possibilidade de mensagens serem
destinadas a vários usuários ao mesmo tempo como uma
tentativa de evitar tráfego desnecessário de dados. Esse
método é denominado de multicast. Nesse tipo de
comunicação, os dados são enviados sem que precise de uma
conexão exclusiva origem-destino. Uma mesma mensagem é
enviada a um grupo de usuários que possuam o mesmo
endereço Multicast [4]. Em contrapartida, uma comunicação
unicast cada conjunto de dados é enviado a apenas um
destinatário, ou seja, caso se queira enviar a mesma
mensagem a cinco usuários diferentes serão criadas cinco
cópias dessa mensagem e cada cópia será direcionada para
cada um desses usuários.
6. DESENVOLVIMENTO
Neste trabalho, os AVCs são tratados como espaços de
cooperação, pois não são abordados aspectos de
comunicação verbal ou organização. Pretende-se deste modo,
integrar AVs a ambientes reais, oferecendo meios de se
gerenciar recursos e dispositivos reais através da
manipulação de objetos modelados em computador. Tais
objetos virtuais poderão ainda representar equipamentos reais
localizados remotamente de modo que seja viabilizada a
cooperação entre estudantes situados em locais distantes na
realização de experimentos em laboratórios remotos.
O X3D se insere no desenvolvimento do sistema proposto
como padrão para modelagem do AV. As vantagens do X3D
sobre o VRML influenciaram essa decisão, visto que há
necessidade de integrar dispositivos específicos ao AV e
permitir seu controle. Neste caso, a SAI permite esta
integração no X3D.
Para exibir a cena descrita por um arquivo X3D
necessita-se de um browser que dê suporte ao padrão. Este
browser estará ligado a uma aplicação de modo que seja
possível gerenciar o armazenamento de dados e o repasse de
informações para o ambiente real por meio de circuitos,
sensores ou atuadores. Na Figura 2
é feita uma
demonstração de como pode funcionar a visualização e
manipulação de um equipamento real através de um objeto
virtual [9]. Observa-se, entretanto, que a interação é realizada
por um único usuário em um ambiente bidimensional, o que
difere do modelo proposto neste artigo. É necessário que tais
mecanismos sejam transparentes para o usuário, ou seja, a
aplicação deve estar em execução sem que ele perceba suas
ramificações. Assim, o usuário apenas terá a visualização do
seu browser e poderá navegar e modificar a cena como se
apenas o browser estivesse em execução. Inclusa nessa
aplicação ter-se-á a camada de comunicação. Esta será
responsável por toda troca de mensagens do sistema. Uma
ilustração de como as ações executadas no ambiente virtual
chegam ao ambiente real é mostrada na Figura 3.
de modo que ações no AV podem afetar ambientes reais. O
artigo apresentou também as possibilidades de integração dos
AVs com os ambientes reais através de tecnologias recentes,
como o X3D e o SAI. Os protocolos de comunicação foram
rapidamente abordados para expor as possibilidade de
conexão entre os ambientes.
Este projeto encontra-se em fase de implementação. Os
resultados esperados devem beneficiar alunos através do uso
à distância de recursos laboratoriais. De forma
complementar, serão integrados ao AVC ferramentas
diversas voltadas ao ensino à distância.
Fig. 2. Demonstração da manipulação de um equipamento por meio
de um objeto virtual a partir de uma interface bidimensional. A
Área 3 apresenta a visualização em tempo real do dispositivo.
Fonte: [9].
Fig. 4. Esquema de distribuição das mensagens.
REFERÊNCIAS BIBLIOGRÁFICAS
Fig. 3. Esquema de como ações executadas na aplicação cliente
chegam na aplicação servidor, são interpretadas e repassadas para
os demais clientes e para o ambiente real.
O modelo de comunicação adotado foi o cliente/servidor.
Nesse modelo os dados são armazenados em computadores
denominados servidores. Além disso, toda informação
trocada por clientes passa antes pelo servidor. Este gerencia
para quem irá reenviar as mensagens que chegaram a ele [2],
verificando para cada usuário (cliente) se o ambiente
modificado corresponde ao visualizado (Figura 4).
Um único servidor tem condições de cuidar de um grande
número de clientes, porém é relevante observar a
possibilidade da formação de um gargalo devido às
mensagens de todos os clientes serem direcionadas para um
único local.
7. CONCLUSÃO
Este artigo apresentou a proposta de desenvolvimento de
um AVC para aplicação em educação. No sistema proposto a
colaboração acontece em espaços de cooperação, pois não
aborda aspectos de comunicação verbal ou organização. O
sistema prevê o uso de AVs interligados a dispositivos reais
[1] Cardoso, C. Kirner, E. Lamounier, J. Kelner,
“Tecnologias para o Desenvolvimento de Sistemas de
RVA”. Ed. Universitária, Recife, 2007.
[2] A. S. Tanenbaum, “Redes de Computadores”. Campus. 4ª
edição, 2003.
[3] D. Fillippo, A. Raposo, M. Endler, H. Fuks, “Ambientes
Colaborativos de RV e Aumentada”. In: “RV e
Aumentada: Conceitos, Proj. e Aplicações”, cap. 9. 2007.
[4] L. C. A. Rinaldi et al., “AVs Distribuídos e
Compartilhados”. In: “Fund. e Tec.de RVA”, cap. 5. 2006.
[5] Web3D, “SAI Tutorial”. Online: Acesso em
outubro/2007: www.xj3d.org/tutorials/general_sai.html.
[6] N. D. Blas, C. Poggi, “European virtual classrooms:
building effective “virtual” educational experiences”.
Virtual Reality, v.11, n.2-3, pp. 129-143. Springer. 2007.
[7] B. Lok, R. E. Ferdig, A. Raij, K. Johnsen, R. Dickerson,
J. Coutts, A. Stevens, D. S. Lind, “Applying VR in
medical communication education”. Virtual Reality, v.10,
n.3-4, pp. 185-195 . Springer. 2006.
[8] Web3D, “X3D Public Specifications”. Online:
www.web3d.org. Acesso em: outubro/2007.
[9] L. S. Machado, et al. “Improving Interaction in Remote
Laboratories Using Haptic Devices”. In: Proc. of REV
International Conference, Porto/Portugal. 2007.
[10] D. F. L. Souza et al. “Development of a VR Simulator
for Medical Training Using Free Tools: A Case Study”.
In: Proc. Symp.Virtual and AR, pp.100-105. 2007.
[11] Linden Labs. “Second Life”. Online:
http://lindenlab.com/ Acesso em: outubro/2007.
DESENVOLVIMENTO DE UM AMBIENTE DE REALIDADE VIRTUAL PARA
ANÁLISE DE SOLOS AGRÍCOLAS
Botega, L.C.¹, Cruvinel, P.E.²
¹ Departamento de Computação - Universidade Federal de São Carlos
² Embrapa Instrumentação Agropecuária - Empresa Brasileira de Pesquisa Agropecuária
leonardo_botega@dc.ufscar.br, cruvinel@cnpdia.embrapa.br
Resumo – Este trabalho apresenta o desenvolvimento de um
ambiente de Realidade Virtual (RV) dedicado à análise de
amostras tridimensionais (3-D) de solos agrícolas. Desta
maneira, modelos provenientes de um algoritmo de
reconstrução 3-D são submetidos a diversos processos
gráficos de visualização e manipulação, a fim de contribuir
com a imersão e interação de usuários com a cena virtual.
Como validação, é abordada a questão referente à
porosidade das amostras, bem como a formação de
caminhos preferenciais de fluxo de água e solutos
(fingering), verificando as contribuições do ambiente de RV
para o seu estudo.
Palavras-Chave - Realidade Virtual, Modelagem,
Tomografia Computadorizada, Porosidade de Solos.
Abstract – This work presents the development of a Virtual
Reality (VR) environment dedicated to the three-dimensional
(3-D) analysis of agricultural samples. Hence, models
proceeding from a 3-D reconstruction algorithm are
submitted to several graphic processes of visualization and
manipulation, in order to contribute with user’s immersion
and interaction with the virtual scene. As validation, it’s
approached the question referring to the samples porosity, as
well the formation of preferential ways of water and solute
flow (fingering), verifying the contributions of the VR
environment for its study.
Keywords - Virtual Reality, Modeling, Computerized
Tomography, Soil Porosity.
1. INTRODUÇÃO
Avaliando a evolução que vem ocorrendo na área de física
de solos, é possível perceber o aumento do interesse da
comunidade científica pelo desenvolvimento e aplicação de
técnicas não invasivas, como a tomografia computadorizada
(TC), para o estudo das características do solo. Em relação às
técnicas mais conhecidas, como a gravimetria, o uso da
tomografia computadorizada de raios-x para análise das
características de solos, apresenta considerável vantagem
quanto à precisão dos atributos obtidos [6]. Outra vantagem
da TC atribui-se à possibilidade da aplicação de técnicas
computacionais após a aquisição dos dados da amostras.
Desta maneira, após processos de reconstrução
bidimensional (2-D) das amostras, é possível verificar
fenômenos físicos que ocorrem no solo, tais como o fluxo de
água e solutos, formação de poros, texturas e distribuição de
raízes. Para avaliar essas características, diversos tomógrafos
dedicados ao estudo de física de solos foram desenvolvidos
por pesquisadores da Embrapa Instrumentação Agropecuária
[1] [8].
Aliados ao desenvolvimento dos tomógrafos agrícolas,
desenvolveram-se métodos de reconstrução 3-D e técnicas de
visualização de imagens reconstruídas em três dimensões,
devido à insuficiência de informação de imagens 2-D para
um diagnóstico preciso, em estudos que necessitem de
informações volumétricas. Desta maneira, tais métodos
propõem a composição de superfícies e volumes de objetos,
contribuindo para o aumento da precisão em processos de
análise e extração da informação.
O objetivo deste estudo é desenvolver um ambiente
completo de RV [5], destinado a realizar análise não invasiva
de amostras volumétricas, obtidas a partir de um algoritmo
paralelo de reconstrução. Assim, busca-se aliar tais amostras
com técnicas e ferramentas convencionais e não
convencionais de manipulação e visualização, buscando
interação e imersão com os usuários, de forma a promover a
total exploração dos modelos. Estudos de caso em
porosidade de solos e fingering serão considerados para
validação.
2. MATERIAIS E MÉTODOS
Em um primeiro momento, para a obtenção dos dados
tomográficos, foi utilizado um minitomógrafo de raios-x e γ
da Embrapa Instrumentação Agropecuária, tornando possível
gerar mapas de coeficientes de atenuação com resolução
espacial igual a 1mm [1]. Como primeira abordagem, foi
utilizada uma amostra agrícola, submetida ao processo de
aquisição sob energia de 58 KeV durante 10 segundos de
exposição à radiação. Desta maneira, a organização do
sistema e suas respectivas funcionalidades são descritas a
seguir e representadas pelo diagrama de classes da Figura 1.
Fig 1. Diagrama das classes do sistema de análise implementado
com base em RV
Posteriormente, foram utilizados os algoritmos descritos
por Pereira e Cruvinel [7], responsáveis por reconstruir os
dados obtidos pelo tomógrafo. Tais algoritmos foram
implementados sob a linguagem C++ utilizando-se de
programação paralela e processadores DSP.
Para a reconstrução 2-D, foi adotado o algoritmo de
retroprojeção filtrada, utilizando-se de filtragens frequenciais
com janelas de Hamming. Posteriormente, com as imagens já
reconstruídas, foi utilizada uma técnica de filtragem não
linear, a fim de aperfeiçoar a filtragem a priori. Tal técnica
utilizou-se da Transformada Wavelet Daubechies [4], a qual
suaviza a imagem e preserva os detalhes e bordas
simultaneamente. As Figuras 2(a) e 2(b) ilustram o resultado
do processo.
Para a reconstrução 3-D, foi adotada a mais difundida
técnica para geração de volumes e superfícies: a
sobreposição de fatias 2-D interpoladas, através da técnica BWavelets (B-Splines), a qual determina valores
intermediários a partir de uma seqüência de pontos conhecida
[7]. Ao final do processo, o modelo tridimensional é
armazenado sob o formato Wavefront File Format (.obj). A
escolha desse formato justifica-se pelo alto desempenho e
flexibilidade ao importar tais modelos para ambientes
virtuais, onde todos seus atributos podem ser customizados
por API’s gráficas.
(a)
(b)
Fig 2. (a) Imagem agrícola reconstruída com retroprojeção filtrada e
janelas de Hamming; (b) Imagem filtrada com a Transformada
Wavelet Daubechies.
Para o desenvolvimento do ambiente de RV, foi utilizada a
linguagem de programação Java sob versão 1.6.0 e a API
Java3D sob versão 1.5.0., possibilitando a construção do
grafo de cena do sistema, organizado sob estrutura
hierárquica [9].
Inicialmente, é preciso desenvolver uma classe capaz de
importar as amostras, providas pelo algoritmo de
reconstrução 3-D, para o futuro tratamento pelo ambiente de
RV, onde, a partir desta etapa, os modelos serão
disponibilizados para visualização e análise de forma
interativa. Para este propósito foi criada uma classe Loader,
derivada de ObjectFile, permitindo aos usuários aplicar todos
os recursos descritos a seguir sobre os modelos armazenados
em formato Wavefront.
Neste estudo, a utilização de técnicas de RV sobre o
produto do algoritmo de reconstrução é baseada em uma
interface para usuários, desenvolvida para ser o principal
controle do ambiente, provendo acesso intuitivo às funções
de RV. Esta interface principal é capaz de acessar visões
diferenciadas da amostra importada, permitindo a separação
dos componentes formadores de uma amostra, para uma
análise individual, possibilitadas por operações de threshold
com diversas escalas de cor, aplicadas sobre o algoritmo de
reconstrução. Na interface, tais operações determinam a
visão completa (sem threshold) e componentes (com
threshold). Desta maneira, o usuário é habilitado a visualizar
apenas uma região de interesse da amostra, representando
níveis específicos de coeficientes de atenuação, onde tons
mais claros (ou cores quentes, no caso de pseudocores)
representam altos índices de absorção de fótons emitidos
pelo tomógrafo.
Transformações físicas lineares, consideradas como
recursos interativos básicos de um sistema de RV, foram
escolhidas para serem inicialmente incorporadas ao sistema.
Assim, operações como rotação, translação, escala e
reflexões estão disponíveis através de entradas por teclado
para todo o conjunto de dados da amostra agrícola, realizadas
através de instâncias de Transform3D, utilizando os métodos
setRotation, setTranslation e setScale, além de nodos de
conteúdo TransformGroup, responsáveis por atrelar as
transformações ao grafo de cena do sistema.
Também inserido no ambiente de visualização em RV,
objetos Behavior foram atribuídos para traduzir ações de
usuários, por entradas de mouse, em transformações de
rotação e translação, também disponíveis para todo o
conjunto de dados da amostra agrícola. Assim, a classe
Behavior realiza a conexão entre interações e reações,
provendo mudanças de nodos localizados no subgrafo de
conteúdo.
Outro recurso inserido no ambiente de RV é a obtenção de
dados de voxels da amostra, que fornece para usuários
informação sobre um ponto específico por seleção através de
mouse ou luva digital (picking). Utilizando instâncias
PickCanvas e PickResult, o usuário seleciona a região de
interesse e extrai os atributos desejados, onde a coordenada z
é estabilizada no display, permitindo a seleção através de
uma viewport 2-D de maneira intuitiva. Os dados disponíveis
para operações de picking estão divididos em dois aspectos:
relativos à cena virtual e aspecto tomográfico. A respeito da
cena virtual, usuários podem obter informações tais como: a
distância entre o modelo e o usuário, as coordenadas do
modelo e a atual matriz de transformação. No aspecto
tomográfico, os dados disponíveis são as escalas de níveis de
cinza, cores RGBA, cores HSL e o coeficiente de atenuação
linear do ponto específico.
A manipulação dos modelos e a obtenção de informação
podem também ser obtidas utilizando uma P5Glove, uma
luva digital do fabricante Essential Reality [3]. Este
dispositivo não convencional tem seis graus de liberdade e
permite que os usuários transladem e rotacionem a
plataforma de visualização da cena, bem como manipulem as
representações 3-D por toda a cena.
Para este propósito, um driver/API específico nominado
Dualmode foi adotado, de forma a fornecer subsídios para a
implementação do comportamento da luva [2]. Comparado
ao software original, o Dualmode oferece melhor filtragem
de dados, maior precisão e melhor acesso a informações dos
dedos e LEDs.
Dentre os recursos disponibilizados pela API estão:
tratamento do sinal em alto nível, rastreamento personalizado
de movimentos e acesso direto às matrizes de transformação.
Paralelamente, o driver Dualmode permite a indexação de
diversos tipos de filtros digitais, destinados a suavizar
possíveis problemas de rastreamento ruidoso. Tais filtros são
a média, mediana e deadband. Como primeira abordagem,
neste estudo foi adotado o filtro de médias com janela 3x3.
Entretanto, o uso do filtro de médias leva a um outro
problema: a atenuação do sinal da luva, o que provoca uma
imprecisão de movimentação dos modelos no ambiente de
RV, uma vez que os dados tornam-se insuficientes.
Para corrigir este problema, foi implementado um método
para calcular a variância dos valores de leitura, tomando-se
algumas amostras à medida que o usuário movimenta a luva.
Desta maneira, os valores lidos são organizados em um vetor
de forma que o mesmo armazene as leituras mais recentes.
Posteriormente é calculada sua média, a qual é utilizada para
o cálculo da variância.
O valor da variância indica o quão distante os valores
encontram-se da média; assim, o valor de leitura que mais se
aproxima da média e que obedeça ao intervalo de confiança
estabelecido pela variância, é adotado e substituído ao objeto
que armazena o valor correspondente, corrigindo eventuais
inconstâncias de leitura.
Para obtenção de informações, a luva é ajustada para
funcionar como um mouse, permitindo aos usuários
selecionar um voxel como em processos 2-D, utilizando-se
da flag booleana setMouseMode, disponível no Dualmode.
Subseqüentemente, um sistema de luzes dinâmicas foi
inserido em todo contexto tridimensional, permitindo aos
usuários escolher entre quatro tipos de fonte de luz, tais
como Ambiente, Direcional, Pontual e Pontual Angular.
Cada fonte de luz leva diversos parâmetros, com influência
direta sobre a direção da luz, posição, atenuação, ângulos e
cores. Seus efeitos podem ser vistos sobre todos os conjuntos
de dados da amostra agrícola, contribuindo para o realismo
da cena.
Visando maior interatividade, um sistema de cores
dinâmicas foi implementado. Através deste recurso,
independente da escala de threshold adotada, toda
representação tridimensional pode ter seus coeficientes de
material alterados para uma melhor análise. Também por
operações de picking, os usuários podem selecionar a região
de interesse e alterar o material através de uma paleta de 256
cores. Estes recursos são providos pelos métodos setMaterial
de instâncias Appearance, cujos parâmetros podem ser
obtidos por objetos PickCanvas e PickResult.
3. RESULTADOS
Considerando o processo de importação, destinado a trazer
os resultados do algoritmo de reconstrução para o ambiente
de RV, os modelos reconstruídos puderam ser tratados
mediante todos os conceitos citados. Desta maneira, o
modelo armazenado, sob o formato Wavefront (.obj), pode
ser levado ao sistema pela classe Loader, preservando suas
características originais. A Figura 3 demonstra a amostra
agrícola reconstruída em 3-D e visualizada com pseudocores,
após a aplicação de threshold inferior de 40 unidades e
superior de 255, onde se pode notar a presença de regiões
com maior grau de atenuação (vermelho), regiões com menor
atenuação (azul) e regiões porosas, fora da escala
determinada (menor que 40 unidades).
Visando a completa interatividade com os objetos, as
transformações físicas e os processos de manipulação
demonstraram-se recursos satisfatórios, transformando
entradas de mouse e teclado em feedbacks visuais sucintos.
Desta maneira, fornecendo novos parâmetros, os usuários
podem esticar, mover e girar a amostra agrícola, bem como
uma completa exploração da cena e das amostras utilizandose de movimentos de mouse. Conforme o usuário seleciona o
objeto na cena, a matriz de transformação é atualizada e
exibida em tempo real, dentre os outros dados disponíveis.
Quanto à obtenção de informações pelo uso do mouse, os
resultados demonstraram-se precisos e práticos, uma vez que
são alcançadas através de instâncias PickCanvas,
informações exatas sobre um voxel específico escolhido, sob
os dois aspectos descritos. Tais aspectos poderiam ser
obtidos a partir de uma representação 2-D ou mesmo
unidimensionais (1-D), entretanto, não de forma volumétrica,
interativa e intuitiva. A Figura 4 demonstra um exemplo de
informações obtidas de um voxel da amostra agrícola.
Fig 3. Amostra reconstruída em 3-D após operação de threshold.
Fig 4. Exemplo de extração de informações da amostra agrícola.
A utilização da luva digital P5Glove demonstrou feedbacks
satisfatórios, proporcionando aos usuários informações
precisas a respeito do posicionamento e orientação do
dispositivo. Através dessas informações, as amostras podem
ser movidas por toda a cena, alterando as matrizes de
transformação em tempo real. À medida que o receptor
óptico lê os dados da luva, o filtro implementado suaviza o
sinal, tomando a média das divergências de leitura e
aumentando a precisão de rastreamento. Paralelamente,
usuários podem facilmente navegar na cena através de
simples movimentos da mão, alterando o subgrafo de
visualização em tempo de execução, e posteriormente
analisar a formação de fingering sob os mesmos processos
descritos anteriormente para o mouse. A Figura 5(a)
apresenta um pseudocódigo que representa o filtro
implementado e a Figura 5(b) ilustra a exploração de poros
(fingering) da amostra agrícola utilizando a P5Glove.
Através do sistema de iluminação, todas as luzes da
viewport atual podem ser alteradas em tempo real, obtendo
respostas visuais concisas. Dependendo da capacidade de
reflexão da superfície dos objetos, os efeitos dos parâmetros
das fontes de luz podem variar e conseqüentemente o
produto final. Paralelamente, a disponibilidade desses
parâmetros pode também mudar, condicionada à fonte de luz
escolhida. Como exemplo, buscou-se iluminar a amostra
agrícola uniformemente todos os voxels, fazendo uso dos
seguintes parâmetros: tipo: luz ambiente, atenuação: 1,
intensidade: 1, cor: rgb branca (255, 255, 255).
Posteriormente, pretendeu-se iluminar a mesma amostra com
uma fonte vindo do infinito sob uma direção específica, o
que simula a iluminação solar com os seguintes parâmetros:
tipo: luz direcional, atenuação: 5, intensidade: 5, cor: rgb
branca (255, 255, 255), direção: face frontal da amostra (0, 0,
5). As Figuras 6(a) e 6(b) ilustram o resultado dos processos.
y
Método atualiza_posições( )
{ Para cada 1 dos 8 leds
{ Enquanto amostras < 50
{posição_x = leitura_x;
posição_y = leitura_y ;
posição_z = leitura_z;
amostras ++; }
calcula_media();
calcula_variancia();
substitui_novo_valor_leitura();
}
z
x
(a)
(b)
Fig 5. (a) Pseudo-código que representa o filtro que atualiza o
posicionamento da luva; (b) Navegação por dentre os poros da
amostra agrícola através de movimentos do dispositivo
(a)
(b)
Fig 6. Resultado da utilização do sistema de iluminação: (a) Luz
ambiente; (b) Luz direcional .
O sistema de cores também contribuiu para a
interatividade do sistema, uma vez que trouxe a possibilidade
de alterar a aparência dos modelos em tempo real, retornando
convincentes repostas visuais. A interface principal forneceu
acesso rápido e pratico à paleta de cores, permitindo que o
usuário escolha a cor desejada de maneira funcional.
4. CONCLUSÕES
A respeito do desenvolvimento do ambiente de RV, os
resultados utilizando a amostra agrícola apresentaram-se
satisfatórios. Considerando os processos de manipulação, a
amostra e a cena podem ser movimentadas com o uso da luva
ou mouse sob 6 graus de liberdade, permitindo que os
usuários explorem a amostra por completo. Com a
iluminação e colorização, os usuários podem examinar sob
novas condições, regiões de interesse outrora não iluminadas
ou devidamente coloridas com as fontes e cores definidas
como padrão na inicialização do sistema, como o interior dos
poros. O próximo passo configura-se com a visualização de
todo o processo utilizando-se de Head Mounted Displays,
com telas LCD, visando alcançar a imersão e um maior
envolvimento.
No contexto de física de solos, um ambiente de Realidade
Virtual apresenta uma série de vantagens sobre outras
técnicas de análise das estruturas, uma vez que permite de
forma interativa, imersiva e não invasiva a completa
visualização de amostras tridimensionais, permitindo que
superfícies e volumes sejam explorados sob diversos
paradigmas. Paralelamente, regiões internas e externas das
amostras podem ser manipuladas e customizadas, de acordo
com o interesse do usuário, permitindo estudos e análises
específicos, como os caminhos preferenciais do fluxo de
água e solutos (fingering), o qual configura-se como estudo
de caso do presente estudo.
A partir do algoritmo de reconstrução tridimensional, o
modelo Wavefront, através das operações de threshold pode
apresentar apenas as regiões determinadas por um limiar de
tons de cinza, onde as mesmas, com tom de cinza próximo de
zero, com baixo coeficiente de atenuação, configura-se como
os vazios das estruturas, ou seja, as regiões porosas. Tais
vazios interligados formam os caminhos preferenciais, os
quais podem ser customizados, manipulados e visualizados
por ferramentas de RV, onde o usuário imerso pode percorrer
tais caminhos que descrevem e qualificam a estrutura de
poros de amostras agrícolas.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] Á. Macedo. Construção e uso de um tomógrafo com
resolução micrométrica para aplicações em ciências do
solo e do ambiente. Tese de doutorado, Universidade de
São Paulo, São Carlos, 1997.
[2] C. Kenner. Essential Reality P5glove sumary.Disponível
em: <http://www.geocities.com/carl_a_kenner/p5.html>,
2007.
[3] E. Reality. P5glove specification. Disponível em
<http://www.inition.com>, 2007
[4] I. Daubechies. Tem Lectures on Wavelets. Philadelphia.
SIAM, (1992).
[5] J. Lanier. “Virtual Reality: the promise of the future”,
Interactive Learning International, 8(4): 275-9, 1992.
[6] L. Aylmore and J. M. Hainsworth. “The use of the
computedassisted tomography to determine spatial
distribution of soil water content”. Australian .Journal
Soil Res, 21(4):435–443, 1983.
[7] M. F. L. Pereira, P. E. Cruvinel. “Parallel DSP
Architecture for Reconstruction of Tomographic Images
Using Wavelets Techniques”. Proceedings of XIV
SIBGRAPI, p. 384-384. Florianopolis, 2001.
[8] P. E. Cruvinel, R. Cesareo, S. Crestana, and S.
Mascarenhas.
“X-and
γ-rays
computerized
minitomograph scanner for soil science”. IEEE Transactions on Instrumentation and Measurement,
39(5):745–750, 1990.
[9] Sun Microsystems. Java 3D 1.5.1 API Documentation.
Disponível em <https://java3d.dev.java.net/>, 2007.
DESENVOLVIMENTO DE UMA ARQUITETURA DE DISTRIBUIÇÃO PARA
AMBIENTES VIRTUAIS
Regislaine de Carvalho1, Alexandre Cardoso2, Edgard Afonso Lamounier Junior3, Luciano Ferreira Silva4.
1 – Grupo de Realidade Virtual – GRV – Universidade Federal de Uberlândia
regislaine.carvalho@gmail.com, alexandre@ufu.br, lamounier@ufu.br, luciano@mat.ufu.br
Resumo - O objetivo deste artigo é apresentar um sistema,
ainda em desenvolvimento, capaz de realizar a distribuição
de ambientes virtuais. O intuito desta arquitetura é
possibilitar uma simultaneidade nas ações realizadas entre
os participantes, sem que a transmissão de dados ou
conexão seja prejudicada.
Utiliza-se para este trabalho a linguagem Java,
principalmente seus pacotes e métodos que permitem a
distribuição do sistema (Sockets e RMI), e a linguagem
gráfica VRML, que será utilizada para a realização de testes
com o sistema.
Palavras Chave - Ambientes virtuais, Java, Sistemas
Distribuídos, VRML.
Abstract - The objective of this article is to present a system,
still in development, capable to realize the virtual
environment distribution. The intention of this architecture is
to make possible a concurrence in the actions realized
between the participants, without whom the transmission of
data or connection is harmed.
The Java language is used for this work, mainly its packages
and methods that allow the distribution of system (Sockets
and RMI), and graphical language VRML, that will be used
for the accomplishment of tests with the system.
Keywords – Distributed
Environments, VRML
Systems,
Java,
Virtual
1. INTRODUÇÃO
O ato de colaborar é entendido por trabalhar em conjunto,
em um mesmo espaço compartilhado[1]. Trabalhado assim,
os agentes deste espaço obtém melhores resultado do que se
trabalhassem individualmente. Colaborando, suas idéias são
somadas, erros identificados mais rapidamente, debates e
argumentações levantados, dando assim, maior abertura para
a solução do problema. Em um grupo pode ocorrer a
complementação de capacidades, de conhecimentos e de
esforços individuais, e a interação entre pessoas com
entendimentos,
pontos
de
vista
e
habilidades
complementares[1]. Daí surge a importância da colaboração,
já que os membros do grupo terão retorno para identificar
precocemente inconsistências e falhas em seu raciocínio e,
juntos, podem buscar idéias, informações e referências [2].
Tem-se como Realidade Virtual (RV) uma combinação de
técnicas avançadas de interface entre o usuário e o sistema
computacional. A intenção destas técnicas é dar ao usuário a
sensação de realidade quando este interage com o
computador. As interações são realizadas em tempo real,
contando para isso com o auxilio de ferramentas como luvas
e capacetes, juntamente com softwares, oferecendo assim
maior veracidade a interação. Segundo Kirner [3], RV trata-
se de uma forma em que pessoas visualizam, manipulam e
interagem com computadores e dados extremamente
complexos, na qual idéias como imersão, interação e
envolvimento com o ambiente virtual são considerados
básicos e fundamentais.
Uma área de pesquisa em que existem grandes
expectativas para o suporte à colaboração é designada
Ambientes
Virtuais
Colaborativos
(AVC).
O
desenvolvimento de AVC utiliza o conceito de RV
distribuída, juntamente com teorias de colaboração para dar
suporte ao trabalho em grupo. Duas condições devem ser
obedecidas para que o sistema seja considerado um AVC: a
existência de um acesso simultâneo a um sistema de RV e o
suporte explícito das necessidades dos utilizadores que
pretendam trabalhar em conjunto [4].
A velocidade com que os dados são transmitidos é um
fator importante, já que se espera deste tipo de sistema
respostas em tempo real. Sendo assim, é de suma
importância a pesquisa e o desenvolvimento de arquiteturas
de distribuição que contemplem os diversos tipos de
ambientes em RV com eficácia.
Neste contexto, este trabalho tem como objetivo
desenvolver uma arquitetura de distribuição que ofereça
suporte a ambientes virtuais. Como estudo de casos optou-se
em focalizar a pesquisa em sistemas desenvolvidos na
linguagem VRML (Virtual Reality Modelating Language).
Para realizar a distribuição, optou-se pela linguagem Java,
que vem se destacando nos últimos anos, devido a sua lógica,
portabilidade e versatilidade.
Os próximos tópicos deste artigo refletem o estado atual
desta pesquisa, descrevendo os seus trabalhos correlatos,
suas tecnologias de apoio e, por fim, a arquitetura proposta.
2. TRABALHOS RELACIONADOS
Os projetos descritos nesta pesquisa possuem resultados
satisfatórios quanto a colaboração via RV distribuída. Os
quais são:
• NICE [5] (Narrative-based, Immersive, Construtivist/
Collaborative Environment). Foi desenvolvido pela
University of Illinois e tem como função principal
possibilitar que crianças interajam com um ecossistema
virtual, colaborando com outras crianças, que podem estar
remotamente localizadas. Esta prática estimula a
curiosidade e criatividade dos participantes, através de
uma interação de mundo real e virtual, podendo-se até
mesmo criar historias.
• ARCA[6], desenvolvido pela UFRGS, foi direcionado
primeiramente aos alunos do curso de Engenharia de
Alimentos e técnicos do EMATER/RS, já que o projeto a
principio abordara a área de alimentos. Teve como
proposta, auxiliar estes alunos a dominar tanto
conhecimentos de Engenharia de Alimentos como outras
áreas que possam ser desenvolvidas a partir de objetos
projetados e aplicados no desenvolvimento do sistema. O
sistema abrange três áreas de ensino: Psicologia, Educação
e Informática. Este projeto visa o auxílio na prática
pedagógica da educação diferenciada, construindo
ambientes de ensino e aprendizagem com suporte na Web.
enviando informações ao mesmo tempo, automaticamente
será criado um servidor – escravo, capaz de suprir as
necessidades dos clientes.
4. ARQUITETURA DO SISTEMA
A Figura 1 representa um diagrama básico da arquitetura
do sistema que mostra a lógica de fluxo de informações.
3. FUNDAMENTOS TEÓRICOS E TECNOLÓGICOS
3.1 VRML
A linguagem VRML, criada por Mark Pesce e Tony
Parisi, é uma linguagem que permite, a partir de suas
modelagens, baseadas em formatos geométricos, a criação de
mundos virtuais em três dimensões. Fora desenvolvida para
descrever simulações interativas, ser utilizada em sistema de
cliente local, internet e intranets. Em suas versões mais
recentes, atualizações foram feitas, possibilitando que
características como som, animação e movimento fossem
agregados aos seus gráficos.
Pode ser escrita em qualquer editor de texto, pois, uma
vez editados, os arquivos são gravados em formato ASCII,
com extensão .wrl. É necessário um browser e um plug-in
para visualização dos objetos criados[7]
Esta linguagem é bastante empregada nas áreas de
engenharia, entretenimento, educacional, e cientifica.
3.2 JAVA
Java é uma linguagem de programação orientada a objeto,
para código interpretativo, portátil, e que suporta interação
entre objetos remotos. Sua aplicação neste projeto justifica-se
pelo seu suporte a consolidação e verificação dos aspectos
propostos na arquitetura de distribuição de ambientes
virtuais. Outro fator importante a se considerar na linguagem
Java é a sua compatibilidade com a linguagem VRML uma
vez que pode ser usa, através do nó Script, dentro de um
arquivo .wrl. O nó Script recebe uma indexação de um
arquivo cuja extensão é .class, que será criado após a
compilação 1 do código desenvolvido em Java.
Com intuito de testar a viabilidade da linguagem Java para
o presente trabalho, em termos de distribuição, realizou-se a
construção de um sistema cliente-servidor, capaz de enviar e
receber mensagens, arquivos, e numerais inteiros, bastando
para isso que seja indicada em suas linhas de código o
endereço do computador que será o servidor. Todo este
processo inicial de distribuição baseou-se em um framework
construído por alunos do curso de Ciência da Computação da
Universidade Federal do Rio Grande do Norte [8].
A estrutura Java do sistema se baseia no uso de bibliotecas
e pacotes, que são requisitados de acordo com a execução do
programa, esse é o fato que torna todo o sistema leve e
acessível para seus usuários. Classes foram criadas, cada qual
para o tipo de arquivo que é responsável por enviar ou
receber (inteiro, string, arquivos). A classe Servidor se
conecta e aguarda até que algum cliente, que se encontra em
outra classe, se conecte. Caso haja algum problema na
conexão, como por exemplo, muitos clientes se conectando e
1
processo de transformação de um código fonte, de linguagem de
programação, para um código objeto compreensível pelo computador
Figura 1 – Arquitetura do Sistema – Fluxo de Informações.
Nesta figura estão representados os computadores do servidor e
dos clientes que fazem parte do sistema. Basicamente, as três
entidades possuem as mesmas características, que são: ambientes
criados com as linhas de código na linguagem VRML e o programa
feito com as linhas de código na linguagem Java, que efetua a
distribuição destes ambientes.
O computador do servidor inicia as atividades. O usuário
conecta-se ao sistema, através das linhas de código em Java. Em
relação ao código em VRML, este terá em seu nó Script a indicação
ao arquivo desenvolvido na linguagem Java. Este arquivo fora
gerado no ato da compilação do arquivo (.class). A partir destas
ações, ocorre o trânsito de informações, onde serão enviadas apenas
as atualizações de ambiente, e não o arquivo todo novamente.
5. DETALHES DE DESENVOLVIMENTO
Optou-se por distribuir um ambiente virtual desenvolvido
em um trabalho de mestrado [8]. Este trabalho consiste na
construção de um laboratório de física virtual, onde serão
simulados experimentos de Física como, por exemplo, queda
livre, lançamento obliquo, entre outras. A Figura 1 ilustra o
experimento de lançamento oblíquo.
[2] Turoff, M., Hiltz, S.R. (1982), “Computer
Support for Group versus Individual Decisions”,
IEEE Transactions on Communications, USA, 30,
(1), p. 82-91.
[3] Kirner, C., et al. “Sistemas de Realidade
Virtual, Apostila do I Ciclo de Palestras de
Realidade Virtual”, UFSCar. Disponível em
http://www.dc.ufscar.br/~grv/tutrv.htm, Outubro
1997, 54p.
[4] Benford, S. e Greenhalgh, C. (1997b).
Introducing Third Party Objects into the Spatial
Model of Interaction. Hughes, John et al. Eds., 5th
ECSCW Conference : Kluwer Academic
Publishers, pp 189-204.
Figura 2 - Experimento de lançamento obliquo
Fonte [Silva, L.F.: “Associando realidade virtual não - imersiva e
ferramentas cognitivas para o ensino de Física”, Uberlândia, 2006.]
Estes ambientes foram criados para fins acadêmicos, e a
aplicação da arquitetura de distribuição ajudaria na didática,
possibilitando que vários usuários interajam e que haja a
realização de um mesmo experimento, coletando dados e
observando o seu comportamento.
6. CONCLUSÃO E TRABALHOS FUTUROS
Como foi visto nos tópicos anteriores, para que houvesse a
interligação entre os ambientes virtuais e o programa
desenvolvido em Java, utiliza-se o nó Script, e dentro deste
nó coloca-se o nome do arquivo e extensão. Porém, existem
algumas incompatibilidades quanto aos pacotes utilizados na
programação em Java e o sistema operacional (o pacote JDK
1.1.8 não é compatível para Windows XP). Este detalhe
impossibilita a execução correta do programa. Caso o pacote
seja alterado para um mais atual (JDK 1.6.2), ocorrem
diversos erros de compilação. As bibliotecas destinadas ao
VRML não existem neste pacote mais atual, o que
impossibilita a execução do mesmo.
Diante a arquitetura montada e os resultados apresentados,
o próximo passo a ser realizado é efetuar mais testes e
observar como o sistema se comporta, inclusive quanto a sua
capacidade de conexão e escalabilidade.
7. REFERÊNCIAS BIBLIOGRÁFICAS
[1] Fuks, H., Gerosa, M.A. & Lucena, C.J.P. (2002a), “The
Development and Application of Distance Learning on the
Internet”, The Journal of Open and Distance Learning, Vol.
17, N. 1, ISSN 0268-0513, February 2002, pp. 23-38
[5] Kawamoto, André L. S., et al. “AVC-MV: Um
Ambiente Colaborativo para Aplicações Educacionais”.
Proceedings of the 4o
SBC Symposium on Virtual Reality (2001),
Florianópolis,226-237. [6]
[6] http://penta.ufrgs.br/pgie/arca/arca.htm
[7] Silva, Luciano Ferreira, “Associando realidade
virtual não - imersiva e ferramentas
cognitivas para o ensino de Física”, Uberlândia,
2006.
[8] http://www.ppgsc.ufrn.br/html/Producao/Disse
tacões/AquilesMedeirosFilgueira.pdf
DESENVOLVIMENTO DE UMA INTERFACE GRÁFICA PARA O ARTOOLKIT
COM APLICAÇÃO NA ÁREA EDUCACIONAL
Kelma Kerly de Carvalho Cunha1, Marcelo de Paiva Guimarães1,2
1
Centro Universitário Adventista de São Paulo - UNASP
Estrada de Itapecerica, 5859 – Jardim IAE
CEP: 05858-001 – São Paulo – SP – Brasil
2
Faculdade de Campo Limpo Paulista - FACCAMP
Rua Guatemala, nº 167
CEP 13231-230 -Campo Limpo Paulista - SP - Brasil
{kelma.jubileu,marcelodepaiva}@gmail.com
Resumo – Este artigo mostra uma ferramenta gráfica para o
desenvolvimento de aplicações de Realidade Aumentada.
Esta ferramenta, através de uma interface visual,
disponibiliza as funcionalidades mais importantes do
ARToolKit, como a mistura das cenas do mundo real com os
objetos virtuais em tempo real e a associação de objetos
virtuais com os marcadores do mundo real. Esta ferramenta
é voltada para o desenvolvimento de aplicações
educacionais. No final, é apresentado um estudo de caso
desenvolvido utilizando esta ferramenta.
Palavras-Chave – ARToolKit, Interface Gráfica, Realidade
Aumentada, Virtual.
Abstract – This article presents a graphic tool for the
development of Augmented Reality software. This tool offers
the more important Artoolkit functionalities, as the insertion
of virtual objects over a real world and association of virtual
objects with marks. This tool aims the development of
application for education. At the end of this article is
presented a case study which was developed using this tool.
Keywords – ARToolKit, Augmented Reality, Graphic
Interface, Virtual.
1.
INTRODUÇÃO
Atualmente está aumentando o interesse em se utilizar os
recursos fornecidos pelos sistemas computacionais para
aprendizagem. Isto tem acontecido, principalmente, devido
aos avanços tecnológicos de diversas áreas, dentre elas da
Realidade Aumentada (RA). As novas tecnologias têm
proporcionado avanços nos métodos tradicionais de ensino,
tornando mais fácil o aprendizado por parte dos alunos e
também a forma do professor ensinar.
A RA é ainda uma tecnologia que é pouco utilizada. A
maioria das aplicações de RA são jogos, mesmo as da área
educacional. A quantidade de aplicações de RA quando
comparada com a de áreas correlatas, como a de RV, é
pouca. Isto ocorre, principalmente, devido a dificuldade no
processo de desenvolvimento.
Para se desenvolver aplicações de RA, existem várias
ferramentas, sendo o ARToolKit a mais utilizada. Este
software apresenta algumas vantagens como: código-aberto,
gratuito, multiplataforma e de fácil uso para usuários da área
de computação. Se o usuário for leigo, este tem dificuldades
no seu uso, pois o ARToolKit não fornece facilidades para a
criação de aplicações como as disponíveis em ambientes
visuais de desenvolvimento.
O objetivo deste trabalho é apresentar uma ferramenta
gráfica para o desenvolvimento de aplicações de RA. Ela tem
como público alvo professores com poucos conhecimentos
de informática, mas que desejam ter autonomia para
desenvolver as próprias aplicações conforme o seu próprio
planejamento. Esta ferramenta tem como base as principais
funcionalidades do ARToolkit. Nesta ferramenta o professor
pode misturar cenas do mundo real com os objetos virtuais
em tempo real sem o conhecimento de programação.
Assim, este artigo busca, principalmente, atender o
requisito de facilidade de desenvolvimento de novas
aplicações de RA, principalmente as educacionais, no qual os
usuários não possuem conhecimento de programação.
Este artigo foi organizado da seguinte forma: a seção 2
aborda os conceitos mais relevantes sobre a RA, a seção 3
apresenta o ARToolKit, suas características principais e o
seu funcionamento, a seção 4 descreve a ferramenta
desenvolvida, a seção 5 mostra um estudo de caso, e por fim,
a seção 6 mostra as considerações finais.
2.
REALIDADE AUMENTADA
A RA é uma tecnologia recente advinda da Realidade
Virtual. O funcionamento desta tecnologia envolve a
sobreposição de objetos virtuais no mundo real,
proporcionando desta forma o enriquecimento do ambiente
real com objetos virtuais em tempo real [1].
Segundo [2] existem três características principais nos
sistemas de RA:
● Combinação do mundo real com os objetos virtuais
dentro do ambiente real
● Interatividade em tempo real ; e
● Alinhamento exato dos objetos virtuais no ambiente
real.
Um ambiente de RA é formado quando o cenário real é
predominante, ou seja, quando objetos virtuais são inseridos
no mundo real [3]. Para interagir com o ambiente de RA, o
usuário pode utilizar desde capacetes de visão direta para
visualizar o mundo misturado até as próprias mãos para
manipular os objetos virtuais no mundo real. A interação é
sempre em tempo real, não importa o meio utilizado para
interagir [4]
A RA possui grande potencial e apresenta uma grande
gama de aplicações em diversas áreas como: medicina,
jogos, arquitetura, indústria, entre outras. A RA também
pode ser aplicada de maneira intensa na área educacional. A
grande parte das aplicações educacionais existentes hoje é
baseada no desenvolvimento de jogos. A seguir são
apresentados dois exemplos de aplicações educacionais [6]:
●Quebra-Cabeça Baseado em Jogo de Palavras – esta
aplicação consiste em um jogo de palavras, que na
verdade é um quebra-cabeça, onde o usuário forma as
palavras e, se essa palavra estiver registrada no banco
de dados da aplicação, aparecerá o objeto
correspondente a ela.
●Livro Interativo com Realidade Aumentada (LIRA) – O
LIRA é um livro virtual criado utilizando o ARToolKit,
o livro ensina sobre poliedros. Em cada página do livro
tem um marcador, sobre este marcador é sobreposto o
objeto virtual. À medida que as páginas são folheadas, o
objeto vai mudando de acordo com o marcador que está
na página.
As duas aplicações utilizam o ARToolKit da mesma
forma, ou seja, toda vez que um marcador é apresentado um
determinado objeto virtual é adicionado na cena. O propósito
destas aplicações e da que podem ser desenvolvidas
utilizando a ferramenta aqui mostrada é o mesmo, ou seja,
fim educacional. Porém, o processo de desenvolvimento é
diferente. Tanto o Quebra-cabeça quanto o projeto LIRA
foram desenvolvidas por usuários da área de computação. As
aplicações resultantes da ferramenta, aqui apresentada, serão
desenvolvidas por usuários leigos, ou seja, sem
conhecimento profundo de computação.
Conforme observado na Figura 1, o marcador consiste de
uma imagem com uma moldura na cor preta e um símbolo
qualquer em seu interior, neste caso a letra K.
O marcador é usado da seguinte maneira: com a câmera
conectada, o usuário deverá executar algum dos arquivos de
teste do ARToolKit como, por exemplo, o arquivo
SimpleVrml.exe contido na pasta bin, assim que o arquivo é
executado, uma tela contendo informações da câmera é
aberta e, após confirmar clicando em “OK” aparecerá uma
janela de vídeo, é neste momento que o marcador deve ser
apontado para a câmera e o objeto associado ao padrão deste
marcador será projetado sobre [5]. A Figura 2 ilustra um
objeto virtual sobre o marcador.
Nota-se então que o ambiente de desenvolvimento do
ARToolKit exige que o usuário tenha um conhecimento
mínimo de computação, caso contrário, terá dificuldades no
desenvolvimento de novas aplicações.
3.
Ferramentas de alto nível evitam a necessidade de
conhecimento profundo de material de base (como
computação gráfica, interface com o sistema operacional
etc.), permitindo que o desenvolvedor foque apenas no seu
aplicativo em si. Além disso, promovem o reuso de
estruturas e algoritmos comuns para gerência dos recursos
utilizados.
Existem fatores desejáveis nas ferramentas de
desenvolvimento de aplicações de RA, como: facilidade de
uso, confiabilidade, desempenho, legibilidade, robusteza,
escalabilidade,
expansibilidade,
compatibilidade,
reusabilidade e documentação. Esses fatores serviram como
requisitos e preocupações do projeto da ferramenta
apresentada neste artigo.
A ferramenta gráfica desenvolvida foi criada utilizando o
software Microsoft Visual Basic 6.0. Os objetos virtuais
usados nos testes foram modelados no software Media
Machines Flux Studio 2.0.
Esta ferramenta permite a associação de objetos virtuais a
marcadores e configuração destes, como por exemplo, a
adição de sons. A aplicação final é gerada automaticamente e
de maneira completamente transparente para o professor.
Além disso, esta ferramenta fornece recursos como a
impressão dos marcadores e a execução das aplicações
criadas. Assim, procurou-se fazer a junção da RA com as
facilidades de utilização da interface gráfica a fim de
SOFTWARE ARTOOLKIT
O ARToolKit é a base de RA da ferramenta desenvolvida.
Ela é um conjunto de bibliotecas criadas em linguagem
C/C++ pelo Dr. Hirokazu Kato da Universidade de Osaka e
apoiada pelo Human Interface Technology Laboratory
(HITL) da Universidade de Washington [6].
Este software trás versões para várias plataformas,
incluindo Linux e Windows. As versões possuem as mesmas
funcionalidades, entretanto, as configurações de hardware
poderão implicar no desempenho das aplicações [4].
O único recurso de hardware exigido para iniciar um
trabalho no ARToolKit é uma câmera conectada no
computador. Como o funcionamento do ARToolKit baseiase na utilização de cartões marcadores, é necessário que estes
sejam impressos. A Figura 1 ilustra um marcador [5].
Fig. 1. Marcador utilizado no ARToolKit
Fig. 2. Objeto virtual sobreposto ao marcador
4.
A FERRAMENTA DESENVOLVIDA
produzir um ambiente fácil de ser utilizado para desenvolver
aplicações educacionais.
A Figura 3 mostra a tela principal desta ferramenta. Ela é
composta por uma área de trabalho e por diversos botões.
nas associações e configurações de objetos (sem
conhecimento de programação). Como trabalho futuro,
planeja-se incluir nas interfaces o suporte para dados
multimídia, como animações e vídeos.
5.
Fig. 3. Tela principal da ferramenta desenvolvida
Fazem parte desta ferramenta os seguintes módulos:
●Execução da Aplicação – nele está contida as principais
funcionalidades do ARToolKit, que é a mistura do
mundo real com os objetos virtuais, ou seja, ela executa
a aplicação final. Para execução, é necessário que uma
câmera esteja conectada. Quando o usuário apontar o
marcador para a webcam, o marcador é detectado e o
objeto virtual associado a este marcador é adicionado
no mundo real.
●Impressão de Marcadores – este módulo permite a
impressão de marcadores. Ao ser acionado, o sistema
lista a imagem de todos os marcadores disponíveis em
uma interface gráfica. Então, o usuário escolhe o
marcador e imprime através do botão de impressão.
●Configuração dos Objetos Virtuais – este é o módulo
mais interessante do sistema, pois possibilita o usuário
escolher os objetos virtuais que farão fazer parte da
aplicação de RA e determinar os eventos que ocorrerão
quando este for detectado pela câmera, como por
exemplo, a adição do objeto virtual ou a execução de
um determinado som. Nele, o professor pode fazer a
associação dos objetos virtuais com os conteúdos que
estão sendo estudados. Esta ferramenta já disponibiliza
alguns marcadores e objetos virtuais, porém novos
podem ser incorporados. Quando um objeto virtual é
associado com um marcador, o objeto pode ser exibido
no navegador Flux Player, que está incorporado na
própria
ferramenta,
para
fazer
ajustes
de
posicionamento do objeto.
●Ajuda do Sistema – este módulo exibe informações de
como utilizar o sistema. Essas informações estão
divididas por módulo.
Esta ferramenta facilita o desenvolvimento de novas
aplicações, pois exige pouco conhecimento sobre objetos
gráficos e configuração do sistema. Além disso, torna fáceis
as mudanças nas aplicações, pois não são necessárias
alterações ou recompilação da aplicação, apenas mudanças
ESTUDO DE CASO
A RA possibilita diversos tipos de aplicações em diversas
áreas. Neste trabalho esta tecnologia foi explorada na área
educacional, com o objetivo de auxiliar no aprendizado de
qualquer disciplina em qualquer nível acadêmico.
Por exemplo, no estudo da história do Egito Antigo, o
professor poderá usar o sistema para mostrar aos alunos o
que é uma pirâmide, que será mostrada no ambiente real.
Assim, o interesse dos alunos será despertado com muito
mais facilidade, uma vez que eles estarão vendo ali, no
ambiente real, um objeto virtual relacionado ao conteúdo que
está sendo estudado naquele momento. Desta forma, o
ambiente educacional se tornará mais atrativo e motivador.
Para demonstrar o funcionamento do sistema, foi
desenvolvida uma aplicação para auxiliar no ensino de
geometria. Para qualquer aplicação, sempre será necessário
inicialmente a criação de um plano de ensino para que o
assunto seja abordado de maneira adequada. Logo após a
impressão dos marcadores.
Então, utilizando o recurso de configuração de objetos
virtuais o professor realizará a associação dos marcadores
com os objetos virtuais e a configuração dos eventos que
ocorrerão, sempre na interface gráfica. Ele deverá selecionar
o módulo de configuração de objetos virtuais e acessar o
botão Abrir Arquivo. Desta maneira, as informações contidas
no arquivo que faz a associação dos objetos virtuais com os
marcadores reais serão importadas, ou seja, este arquivo já
trás como padrão alguns marcadores e os objetos virtuais
associados. A lista destes marcadores cadastrados pode ser
vista no módulo de impressão de marcadores.
Quando as informações desse arquivo são importadas,
aparece para cada marcador cadastrado um botão como está
destacado mostra a Figura 4. Toda a atualização dos arquivos
do ARToolKit é realizada de maneira transparente para o
professor. Na parte esquerda desta figura é apresentado o
marcador e à direita o objeto virtual que será substituído.
Fig. 4. O círculo vermelho destaca os botões que indicam quais
marcadores estão cadastrados.
Através do botão Abrir do módulo de configuração de
objetos virtuais, o professor pode alterar o objeto virtual
padrão pelo objeto que ele quiser, ou que esteja relacionado à
disciplina que ele está ministrando.
Assim que o objeto é escolhido, é necessário que ele seja
visualizado para que a alteração seja realizada com sucesso.
Para salvar a alteração no arquivo, basta clicar no botão
Salvar. Então, o sistema atualiza, de maneira transparente
para o professor, os arquivos de associação do ARToolKit.
Assim que as mudanças são salvas o antigo objeto é
substituído pelo novo, como mostra a Figura 5. Nesta figura
está sendo exibido um triângulo, que faz parte do ensino de
geometria.
Também foi demonstrado que o sistema pode auxiliar no
ensino de qualquer disciplina, tornando o ambiente
educacional mais interativo e interessante, pois os alunos
poderão visualizar os objetos virtuais no ambiente real.
6. CONSIDERAÇÕES FINAIS
As aplicações de RA demandam de objetos gráficos,
marcadores, capacidade de processamento e de uma
metodologia apropriada de utilização. Este trabalho
apresentou um esforço no sentido de projetar e implementar
uma ferramenta para facilitar o desenvolvimento de
aplicações de RA por usuários leigos, visando,
principalmente, aplicações educacionais.
Então, criou-se uma interface gráfica para o ARToolKit.
A interface disponibiliza as principais funcionalidades do
ARToolKit em um ambiente de fácil uso. No futuro, esta
ferramenta será testada com professores do ensino médio.
REFERÊNCIAS BIBLIOGRÁFICAS
Fig. 5. Novo objeto sendo visualizado
Finalmente, o professor poderá exibir o objeto virtual no
ambiente real para os alunos, isso deverá ser feito através do
módulo que executa a aplicação. Quando o módulo for
acessado, a janela da câmera é inicializada e o professor
poderá apontar para a câmera o marcador que está associado
ao objeto que ele escolheu.
Quando o marcador é apresentado para a câmera,
automaticamente o objeto virtual é adicionado no mundo
real. A Figura 6 mostra a figura geométrica adicionada no
mundo real.
Fig. 6. Objeto virtual exibido no ambiente real
Esse estudo mostrou que a interface visual desenvolvida
neste trabalho facilita a utilização do software ARToolKit e
que é possível qualquer pessoa utilizá-lo sem complicações.
[1] Billinghurst, M.; et. al. “Real World Teleconferencing.
IEEE Computer Graphics and Applications”, Vol 22, No
6, pp. 11-13, Nov/Dec 2002,.
[2] Azuma, R.; et. al. “Recents Advences in Augmented
Reality”: IEEE Computer Graphics and Applications, v.
21, n. 6, p. 34-47. 2001.
[3] KIRNER,C.; et. al. “Fundamentos de Realidade Virtual
Aumentada”. In: Kirner, C.;Tori,R.;Siscoutto,R. editores.
Fundamentos e Tecnologia de Realidade Virtual
Aumentada. Livro do pré-simpósio, VIII Symposium on
Virtual Reality, SBC p. 29-45, Porto Alegre, 2006.
[4] KIRNER, C.;TORI, R. “Introdução à Realidade Virtual,
Realidade Aumentada e Hiper-Realidade”. In: Kirner,
C.;Tori, R. editores. Realidade Virtual: Conceitos,
Tecnologias e Tendências. 1ª edição. São Paulo,
2004,v1,p. 3-20.
[5] CONSULARO, L.A.;et. al: “Aspectos Práticos e
Aplicações Educacionais”. In: Cardoso, A.; Lamounier
Jr, E. editores. Realidade Virtual: Uma Abordagem
Prática. Livro dos Minicursos do SVR2004, SBC, São
Paulo, 2004, p. 141-183
[6] ARToolKit Documentation (How does ARToolKit
Works?).
Disponível
em:
http://www.hitl.washington.edu/artoolkit/documentation/
ARToolKit Documentation/userarwork.htm. Acesso em
01 de março de 2007.
DETECÇÃO DE COLISÕES EM AMBIENTES VIRTUAIS
PARA TREINAMENTO MÉDICO
1
2
Marcello Kera1, Hélio Pedrini1 , Fátima L. S. Nunes2
Universidade Federal do Paraná - Departamento de Informática - Curitiba-PR 81531-990
Centro Universitário Eurípides de Marília – Programa de Pós-Graduação em Ciência da Computação - Marília-SP, 17525-901
Resumo - Detecção de colisão é um requisito fundamental
para que uma aplicação de Realidade Virtual possa simular
o mundo real com alto grau de fidelidade. Precisão e
desempenho são duas características importantes em
algoritmos de detecção de colisão. Este artigo apresenta um
conjunto de métodos para detecção de colisão em objetos
rígidos e deformáveis e, a partir dessa análise, descreve um
algoritmo para auxílio ao treinamento médico em ambientes
virtuais.
de colisões que possa atender aos requisitos de robustez e
desempenho requeridos em ambientes virtuais para fins de
treinamento médico.
Este artigo está organizado como segue. A seção 2
descreve os principais conceitos e métodos relacionados à
detecção de colisão. A seção 3 apresenta a proposta de um
método para detecção de colisões. A seção 4 ilustra alguns
resultados experimentais obtidos a partir do método
proposto. A seção 5 apresenta as conclusões do artigo.
Palavras-Chave – Realidade Virtual, Detecção de Colisões,
Treinamento Médico.
2.
Abstract – Collision detection is a fundamental requirement
for a Virtual Reality application to simulate the real world
with high degree of fidelity. Precision and performance are
two main characteristics on collision detection algorithms.
This paper presents a number of collision detection methods
for rigid and deformable objects and, from such analysis,
describes an algorithm for supporting medical training in
virtual environments.
Keywords – Virtual Reality, Collision Detection, Medical
Training.
1.
INTRODUÇÃO
A Realidade Virtual (RV) é um conjunto de tecnologias
para construção de aplicações que requerem interação
computacional avançada, permitindo a simulação de
ambientes com alto grau de realismo a partir de dados
extremamente complexos.
A detecção de colisão [3] é um dos componentes mais
importantes e dependentes das informações de interação
monitoradas em um Ambiente Virtual (AV), permitindo
responder às interações entre objetos no mundo virtual, fator
importante para obtenção do realismo.
Este requisito requer programas específicos para
gerenciar as informações de interação, envolvendo rotinas de
controle e computação gráfica [7]. No instante da detecção
de colisão, a aplicação deve emitir uma resposta automática
quando houver um contato entre objetos, como a
deformação, um salto, restrição ao movimento ou mesmo
produzir forças e vibrações.
O problema da detecção de colisão entre objetos é
fundamental em qualquer simulação do mundo físico, sendo
estudado em diversos domínios de conhecimento, tais como
robótica, computação gráfica e geometria computacional.
Os principais objetivos deste artigo são apresentar
conceitos relativos ao problema de detecção de colisões,
descrever os principais métodos existentes, suas vantagens e
desvantagens, bem como propor um algoritmo de detecção
DETECÇÃO DE COLISÃO
Detectar uma colisão é verificar a aproximação entre
objetos em um AV, sendo que essa aproximação deve ser
suficientemente pequena a ponto de possibilitar a ocorrência
de uma sobreposição entre objetos, fornecendo, assim, um
maior realismo às aplicações de RV. A sua percepção exige a
presença de, no mínimo, dois objetos em um AV, em que
pelo menos um deles deve estar em movimento.
Trata-se de um problema complexo, visto que objetos
virtuais podem ter formas, tamanhos e movimentos variados,
dependendo de suas naturezas e da finalidade da aplicação.
Além disso, os objetos em cena podem ser rígidos ou
deformáveis.
Devido ao fato de que a detecção de colisão depende
extremamente das informações provenientes das interações
do usuário com o AV, algoritmos eficientes devem ser
desenvolvidos para alcançar precisão dentro de tempos de
respostas aceitáveis. Este requisito pode demandar
programas específicos para gerenciar as informações de
interação, envolvendo rotinas de controle e computação
gráfica [7]. As seções a seguir descrevem sucintamente um
conjunto de abordagens relacionadas à detecção de objetos
rígidos e deformáveis existentes na literatura.
2.1. Volumes Limitantes
A detecção de colisão por volumes limitantes são
algoritmos que utilizam primitivas simples para delimitação
do espaço de colisão do objeto, tais como esferas, caixas
alinhadas aos eixos (Axis-Aligned Bounding Boxes - AABB)
e caixa orientada (Oriented Bounding Box – OBB). A
principal idéia desse tipo de abordagem é verificar os pontos
mais afastados do objeto e inserir nesse espaço a primitiva.
2.2. Subdivisão Hierárquica do Espaço
Na subdivisão hierárquica do espaço, o ambiente é
subdividido em um espaço hierárquico. Objetos no ambiente
são agrupados de acordo com a região em que se encontram.
Quando um objeto no ambiente se movimenta e troca de
posição, movendo-se para uma outra região do espaço,
apenas os objetos do novo espaço precisam ser verificados se
colidem ou não com o objeto em movimento.
Há várias formas de subdividir o AV utilizando alguns
métodos conhecidos tais como octree, K-d trees e BSP trees,
descritos a seguir.
trees. Há outros algoritmos conhecidos, além desses
descritos a seguir, entretanto, tratam-se de variações dos
métodos fundamentais para detecção de colisão.
2.2.1. Octrees
O objeto é envolvido por uma esfera e, recursivamente,
há uma união sucessiva de mais esferas fazendo com que
estas se aproximem ao máximo da resolução do objeto.
O método de sphere-trees é um dos mais simples, sendo
esse um motivo por ter-se tornado muito popular em
aplicações de RV. Considerando que as esferas são
invariantes quanto à rotação, então, para um objeto rígido a
hierarquia é construída por um pré-processamento e as
transformações da hierarquia são as mesmas transformações
lineares aplicada ao objeto.
Octrees são estruturas de árvores hierárquicas em que
cada nó interno possui até oito filhos e é organizada para que
cada nó corresponda a uma região do espaço tridimensional.
O esquema de codificação divide regiões de espaços
tridimensionais, normalmente cubos, em octantes e guarda
elementos em cada nó da árvore.
Cada nó da octree armazena um ponto tridimensional,
que é o centro do octante que foi dividido. O ponto define
um dos cantos para cada um dos oito filhos. O ponto de
subdivisão é implicitamente o ponto central do espaço que o
nó representa.
2.2.2. K-d trees
Árvores k-dimensionais, em que k é o número de
dimensões, são estruturas de árvores multidimensionais
balanceadas para partição do espaço. Essas árvores são
estruturas de dados úteis em várias aplicações, tais como as
buscas que envolvem chaves multidimensionais (busca em
escala e busca do vizinho mais próximo).
Uma k-d tree utiliza apenas planos de divisão que são
perpendiculares a um dos eixos de coordenadas do sistema.
Como conseqüência, cada plano de divisão deve atravessar
um dos outros pontos da árvore [11].
2.3.1. Spheres-trees
2.3.2. AABB-trees
Similarmente à sphere-trees, o objeto é envolvido por
uma caixa e, recursivamente, outras caixas são inseridas até
que esses cubos cheguem bem próximos aos limites reais do
objeto.
2.3.3. OBB-trees
Variação do método AABB-trees, em que a caixa inserida
é orientada ao eixo do objeto, tal que a área de colisão segue
as direções do objeto.
2.4. Computação Incremental da Distância
Uma BSP tree representa uma divisão recursiva
hierárquica ou a subdivisão de um espaço n-dimensional em
subespaços convexos. A construção da BSP tree é um
processo que considera um subespaço e o particiona por
qualquer hiperplano que intersecta o interior do subespaço.
Como resultado, dois novos espaços são criados que podem
ser novamente particionados por um método recursivo.
A distância mínima é verificada incrementalmente entre
um par de objetos, ou seja, a cada iteração do ambiente é
feita uma verificação da distância entre os objetos [6,8].
Quando essa distância se torna tão pequena a ponto de que os
objetos possam se colidir, há uma notificação ao ambiente
sobre a detecção de colisão [1].
Há vários métodos propostos para a computação
incremental da distância, assim como para a computação
hierárquica da distância para corpos convexos em
movimento e para detecção de colisão entre polígonos.
2.3. Subdivisão Hierárquica do Objeto
2.5. Objetos Rígidos e Deformáveis
Nesta abordagem, o objeto é subdividido em regiões, e a
detecção de colisão é feita quando uma dessas regiões é
interceptada por um outro objeto. Uma forma de se
implementar a subdivisão hierárquica do objeto é utilizar o
método de árvores de volume limite (AVL) [4], onde cada nó
n corresponde a um subconjunto Cn pertencente a C, com o
nó raiz sendo associado a um volume limite com o total do
conjunto C. Cada nó interno possui dois ou mais filhos. O
número máximo de filhos para cada nó interno é chamado de
grau da árvore. A união de todos os subconjuntos associados
com o filho do conjunto n é igual a Cn. Cada nó é associado
também a um volume limite v(C), que é uma aproximação do
espaço ocupado por Cn, usando formas mínimas de
representação como caixas e esferas.
Os métodos mais conhecidos e que utilizam AVL e
mostrados a seguir são: spheres-trees, AABB-trees e OBB-
Algoritmos de detecção de colisão podem ser
classificados em duas categorias, para objetos rígidos e para
objetos deformáveis [5]. A grande diferença entre esses dois
tipos de abordagens é que os algoritmos para objetos rígidos
normalmente são pré-computados e os para objetos
deformáveis são processados em tempo de execução.
A detecção de colisão em objetos rígidos pode ser
definida quando os objetos em cena não têm alteração em sua
forma como uma característica do objeto. Há muitos métodos
desenvolvidos para objetos rígidos, uma vez que são de
implementação mais simples e não há necessidade de
verificação da intra-colisão (colisão com o objeto e ele
mesmo), pois não há deformação.
Como os métodos de colisão para objetos deformáveis
são computados em tempo de execução, há duas outras
abordagens específicas para esse tipo de colisão, métodos
2.2.3. BSP trees
que consideram ou não a intra-colisão (colisão do objeto com
ele mesmo). A maioria desses algoritmos utiliza a abordagem
da subdivisão hierárquica do objeto e que pode ser dividida
em dois grupos: objetos representados por malha poligonal e
por superfícies paramétricas.
2.5.1. Malhas Poligonais
Em objetos representados por malhas poligonais, sua
deformação é feita através da atualização da posição dos
vértices da malha do polígono. O algoritmo proposto em [10]
é um método hierárquico utilizando octree, onde cada nó da
árvore é uma caixa envoltória alinhada aos eixos globais
(eixos do ambiente). Trata-se de um método simples, mas, se
ocorrer uma deformação no objeto, toda a hierarquia precisa
ser recalculada novamente.
Van den Bergen [9] propõe um método no qual uma
árvore AABB é construída para cada objeto, que consiste em
uma árvore binária de caixas envoltórias alinhadas às
coordenadas locais do objeto. Ao invés de reconstruir a
árvore AABB, as caixas se realinham enquanto o objeto
deforma, o que simplifica a atualização das caixas. Esse
método também requer que todos os nós sejam atualizados
enquanto o objeto deforma. Volino e Thalmann [12] expõem
um método no qual uma hierarquia de polígonos é criada. O
vetor normal desse polígono e o contorno do polígono gerado
são analisados para determinar se ocorre uma intra-colisão.
2.5.2. Superfícies Paramétricas
Objetos representados por superfícies paramétricas
usualmente são deformados nos pontos de controle da
superfície e deformações desse tipo podem causar uma
divisão da superfície se for para manter a qualidade do
resultado da representação.
Hughes et al. [13] mostram um método de colisão para
superfícies baseadas em Bézier e B-spline. O método
constrói uma AABB-tree para cada superfície, utiliza uma
pseudonormal e um mapa Gaussiano para detectar intracolisão e o método sweep and prune para detectar outras
colisões. No entanto, a construção das pseudonormais, o
cálculo dos novos pontos da superfície e a atualização
completa da AABB-tree têm que ser realizada em cada
quadro durante a deformação do objeto, além de que esse
método requer um alto número de equações para determinar
se a superfície possui uma intra-colisão.
De modo geral, se um objeto é deformado baseado na
atualização do modelo poligonal, os correspondentes
métodos de detecção de colisão podem ser mais eficientes
porque apenas envolvem atualizar a hierarquia de limites
enquanto o objeto se deforma. Por outro lado, se o objeto é
deformado baseado na atualização das superfícies, pontos
precisam ser computados ou removidos dinamicamente.
Normalmente, algoritmos de detecção de colisão por
superfícies são menos eficientes porque a área de colisão
precisa ser reconstruída enquanto o objeto se deforma.
3.
MÉTODO PROPOSTO
Apesar do grande número de métodos existentes para
detecção de colisão de objetos, não há ainda um método que
combine satisfatoriamente dois aspectos importantes na
detecção de colisão, a precisão e o desempenho.
Com o objetivo de simular um ambiente de treinamento
médico em um AV, há a necessidade de se obter uma
precisão próxima à real, uma vez que a ferramenta tem como
objetivo treinar futuros profissionais da área da saúde.
O algoritmo proposto é baseado nos métodos de colisão
por primitivas, na computação incremental da distância e na
equação do plano. A idéia de utilizar métodos mais simples é
fazer com que o algoritmo resultante apresente um alto
desempenho de processamento e uma precisão
consideravelmente boa para uma ferramenta de treinamento
médico.
As principais etapas que compõem o algoritmo proposto
são descritas a seguir. Inicialmente, deve-se construir a
malha poligonal do objeto inserido na cena. Em seguida,
deve-se realizar a inserção de uma área de colisão ao redor
do objeto delimitado por uma primitiva (cubo, esfera, cone).
Nesta fase, a detecção de colisão é verificada por volumes
limites, a qual será posteriormente refinada.
Após a verificação da colisão pelos volumes limites, uma
nova etapa é iniciada, onde um subconjunto de vértices da
malha poligonal do objeto é utilizado para verificação da
distância. Esse subconjunto é formado por vértices que estão
próximos do ponto de colisão. A distância Euclidiana é
utilizada na computação incremental da distância.
Com o cálculo da distância é possível atingir uma
quantidade mínima de pontos para permitir a determinação
de um plano, o qual será novamente utilizado na detecção de
colisão. A figura 2 mostra um diagrama com as principais
etapas do método proposto.
Fig. 2. Diagrama com as principais etapas do método proposto.
4.
RESULTADOS EXPERIMENTAIS
O ViMeT [14] é um framework destinado a construir
aplicações de treinamento médico, estabelecendo como
domínio os exames de biópsia, que integra diversas técnicas
como detecção de colisão, estereoscopia, deformação de
objetos e inclusão de dispositivos convencionais e não
convencionais. Além dessas técnicas, a ferramenta também
implementa classes abstratas e subclasses para facilitar a
integração de novos módulos. Utilizando as classes
disponibilizadas pelo ViMeT, foi construída uma aplicação
para simulação do exame de biópsia mamária.
Figura 3 ilustra um exemplo da interface, destacando-se a
detecção de colisão por octree, implementada na ferramenta.
Fig. 3. Ilustração da detecção de colisão por octree.
Na aplicação, o objeto inserido como instrumento médico
recebe as propriedades de interação com o mouse, enquanto o
objeto inserido como órgão fica estático na cena.
A cena, por sua vez, pode ser movimentada com as setas
direcionais do teclado, trazendo assim uma melhor
visualização dos objetos e ações ocorridas na cena.
5.
CONCLUSÕES
Dentre as várias maneiras de se calcular detecção de
colisão entre objetos, os métodos para objetos rígidos são
mais eficientes em relação ao desempenho computacional e
mais simples do ponto de vista de implementação, entretanto,
em geral, não são tão eficientes quanto à precisão da colisão.
Em contrapartida, métodos para detecção de colisão em
objetos deformáveis tendem a ser mais custosos, porém,
apresentam maior grau de precisão.
Este artigo descreveu um conjunto de métodos para
detecção de colisão. A partir da análise desses métodos, a
proposta de um algoritmo para detecção de colisão que seja
robusto e, ao mesmo tempo, com bom desempenho
computacional, está sendo investigada para a construção de
um AV para auxílio ao treinamento médico.
A ferramenta para simulação cirúrgica poderá auxiliar o
planejamento e treinamento de procedimentos médicos a
custos baixos. Rotinas gráficas com recursos de resposta tátil
devem facilitar a interação do usuário e a visualização das
regiões de interesse. Os cirurgiões e estudantes poderão
explorar novas habilidades para manipulação de instrumentos
em procedimentos médicos, entretanto, sem a presença de
pacientes reais.
A abordagem utiliza um método hierárquico baseado em
malha poligonal, por requerer atualizações apenas nos
vértices da malha, e que considera intra-colisão, por tratar de
objetos que podem sofrer deformações. Pacotes gratuitos e
independentes de plataforma estão sendo utilizados no
desenvolvimento da ferramenta, favorecendo a redução de
custos e facilitando a distribuição dos programas.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] L.J. Guibas, D. Hsu, L. Zhang. H-Walk: Hierarchical
Distance Computation for Moving Convex Bodies.
Proceedings of the Fifteenth Annual Symposium on
Computational Geometry, pp. 265-273, New York, NY,
Estados Unidos, 1999. ACM Press.
[2] B.V. Herzen, A.H. Barr, H.R. Zatz. Geometric collisions
for time-dependent parametric surfaces. Proceedings of
the 17th Annual Conference on Computer Graphics and
Interactive Techniques, pp. 39-48, New York, NY,
Estados Unidos, 1990. ACM Press.
[3] P. Jimenez, F. Thomas, C. Torras. 3D Collision
Detection: A Survey. Computers and Graphics,
25(2):269-285, 2001.
[4] J.T. Klosowski, M. Held, J.S. Mitchell, H. Sowizral, K.
Zikan. Efficient Collision Detection Using Bounding
Volume Hierarchies of k-DOPs. IEEE Transactions on
Visualization and Computer Graphics, 4(1):21-36, 1998.
[5] R.W. Lau, O. Chan, M. Luk, F.W. Li. LARGE: A
Collision Detection Framework for Deformable Objects.
Proceedings of the ACM Symposium on Virtual Reality
Software and Technology, pp. 113-120, New York, NY,
Estados Unidos, 2002. ACM Press.
[6] M. Lin, J. Canny. Efficient Algorithms for Incremental
Distance Computation. IEEE Conf. on Robotics and
Automation, pp. 1008-1010, 1991.
[7] L. Machado, M. Zuffo, M. Moraes, R. Lopes.
Modelagem Tátil, Visualização Estereoscópica e
Aspectos de Avaliação em um Simulador de Coleta de
Medula Óssea. Simpósio de Realidade Virtual, pp. 2331, 2001.
[8] M.K. Ponamgi, D. Manocha, M.C. Lin. Incremental
Algorithms for Collision Detection Between Polygonal
Models. IEEE Transactions on Visualization and
Computer Graphics, 3(1):51-64, 1997.
[9] G. van den Bergen. Efficient Collision Detection of
Complex Deformable Models Using AABB Trees.
Journal of Graphical Tools, 2(4):1-13, 1997.
[10]Y. Yang, N. Thalmann. An Improved Algorithm for
Colision Detection in Cloth Animation with Human
Body. Proc. of Pacific Graphics Conference, pp. 237251, 1993.
[11]J.L. Bentley. Multidimensional Binary Search Trees
Used for Associative Searching. Communications of the
ACM, 18(9):509-517, 1975.
[12]P. Volino, N.M. Thalmann. Efficient self-collision
detection on smoothly discretized surface animations
using geometrical shape regularity. Computer Graphics
Forum, 13:155-166, 1994.
[13]M. Hughes, C. DiMattia, M.C. Lin, D. Manocha.
Efficient and accurate interference detection for
polynomial deformation. Proceedings of the Computer
Animation, Washington, DC, Estados Unidos, 1996.
[14] A.C.M.T.G. Oliveira; L. Pavarini; F.L.S. Nunes.; L. C.
Botega; D.J. Rossato; A. Bezerra. Virtual Reality
Framework for Medical Training: Implementation of a
deformation class using Java. ACM Siggraph
International Conference on Virtual-Reality Continuum
and its Applications in Industry, 2006, Hong Kong,
2006. p. 347-351.
EFEITOS DE ILUMINAÇÃO REALISTAS EM REALIDADE AUMENTADA
UTILIZANDO IMAGENS HDR
Guilherme de S. Moura, João Marcelo X. N. Teixeira, Veronica Teichrieb, Judith Kelner
Universidade Federal de Pernambuco, Centro de Informática
Grupo de Pesquisa em Realidade Virtual e Multimídia
Av. Professor Moraes Rego S/N, Prédio da Positiva, 1º Andar
Cidade Universitária, Recife - Pernambuco
CEP 50670-901
e-mail: {gsm, jmxnt, vt, jk}@cin.ufpe.br
Resumo – O objetivo deste artigo é propor uma aplicação
capaz de renderizar efeitos de iluminação realísticos. O
intuito do trabalho é utilizar estes efeitos em Realidade
Aumentada, de forma a auxiliar a inserção de objetos
virtuais em cenários reais de forma visualmente suave. O
documento descreve a implementação de alguns destes
efeitos. Os resultados obtidos mostram que a aplicação em
tempo real, através do uso da placa gráfica, é possível.
Palavras-Chave – Efeitos de iluminação, Foto-realismo,
HDR, Realidade Aumentada.
Abstract – This paper aims to propose an application
capable of rendering realistic lighting effects. The goal of
this work is to use these effects within Augmented Reality, in
order to assist the insertion of virtual objects into real scenes
seamlessly. This document describes the implementation of
some of these effects. The achieved results show that the real
time application, through the use of a graphics board, is
feasible.
Keywords – Augmented reality, HDR, Lighting effects,
Photo-realism.
1. INTRODUÇÃO
Em computação gráfica, existe uma vertente de estudos
que busca aprimorar as técnicas de renderização de forma a
reproduzir com máxima fidelidade cenas realistas. Esta
vertente é conhecida como renderização foto-realista, e
envolve vários elementos do processo de renderização
normal, como texturização, animação ou iluminação [1]. Tais
estudos possuem aplicações diretas em jogos, como ilustrado
na Figura 1, e soluções de Realidade Virtual (RV) e
Realidade Aumentada (RA).
Fig. 1. Exemplo de reflexão realista em um modelo 3D [6].
Exemplificando, em RA um dos grandes desafios é exibir
informações virtuais integradas em cenas reais de forma que
sejam indistinguíveis dos objetos reais contidos na cena.
Desta forma, o usuário poderia interagir mais naturalmente
com a interface. Uma maneira de alcançar este objetivo é
renderizar as informações virtuais explorando as técnicas de
foto-realismo, respeitando a iluminação do mundo real [2].
Além disto, nessas aplicações, o fator interatividade em
tempo real possui grande importância. Este artigo foca as
técnicas que simulam efeitos de iluminação realistas através
do uso de imagens em High Dynamic Range (HDR), em vez
de usar imagens em Low Dynamic Range (LDR), que são
comumente usadas nas aplicações.
A contribuição deste artigo está em apresentar uma
proposta de aplicação em tempo real que implementa um
conjunto de efeitos provocados pela iluminação, através do
uso de imagens HDR. Desta forma, pretende-se
disponibilizar um algoritmo capaz de renderizar cenas fotorealistas, a respeito de efeitos de iluminação, para serem
usadas em aplicações de RA.
Na seqüência, a Seção 2 apresenta alguns trabalhos
relacionados à renderização através de HDR. A Seção 3
introduz a solução adotada neste artigo. Na seção 4, a etapa
de aquisição da imagem HDR é descrita. Na Seção 5, são
apresentados os detalhes de implementação da aplicação
final. A Seção 6 detalha os efeitos de iluminação que serão
utilizados para criar o realismo desejado. A Seção 7
apresenta os resultados iniciais obtidos. E finalmente, na
Seção 8 são apresentadas as conclusões e as próximas
melhorias na solução.
2. TRABALHOS RELACIONADOS
Estudos sobre como melhorar a forma como a iluminação
das cenas é renderizada produziram vários resultados.
Debevec et al. foram pioneiros no tratamento de imagens que
possuem informações adicionais a respeito da iluminação do
ambiente [3]. O grupo de desenvolvedores da ATI
desenvolveu uma aplicação interativa que implementa a
técnica proposta por Debevec, de forma a comparar as cenas
renderizadas em LDR e em HDR [4] [5]. Kawase
implementou com sucesso uma série de efeitos causados por
iluminação direta, buscando uma aproximação visual do
efeito no mundo real [6]. Por outro lado, Spencer et al.
procuraram estudar o efeito físico dos raios luminosos no
olho humano, e Kakimoto et al. implementaram um shader
através do estudo físico dos raios luminosos [7] [8]. Huff et
al. realizaram um trabalho que busca o foto-realismo em
objetos virtuais para RA, através de imagens HDR [9].
Entretanto, em sua maioria, os trabalhos de pesquisa
possuem um esforço direcionado à renderização realista
offline, ou então, com efeitos diretos em soluções de RV ou
especificamente para Jogos.
3. CRIANDO EFEITOS DE ILUMINAÇÃO REALISTAS
A solução proposta por este artigo está sendo
implementada na placa gráfica (Graphics Processing Unit GPU), através de uma linguagem de shaders. Um requisito
essencial é que a aplicação rode em tempo real, de forma a
ser interativa, pois o intuito é que seja utilizada em soluções
de RA.
O trabalho foi dividido em três macro-etapas: a aquisição
da imagem HDR que vai compor o ambiente; a
implementação em High Level Shading Language (HLSL),
linguagem da Microsoft para DirectX [10]; e a integração do
shader no pipeline do engine de renderização gráfica
Ogre [11]. Estas etapas são descritas na seqüência.
4. AQUISIÇÃO DA IMAGEM HDR
O processo de criação da imagem HDR, através da
composição de imagens em variados níveis de exposição,
não foi contemplado por este trabalho, que irá utilizar os
mapas de radiância produzidos por Debevec [12].
A partir desta imagem, foi utilizada a equação para
mapeamento esférico de texturas bidimensionais, explorada
em Environment Maps [13]. Esta equação é mostrada na
Figura 2, onde o vetor correspondente a cada vértice (x, y, z)
é projetado no plano (xt, yt). A esfera que representará o
ambiente deve estar na origem do mundo virtual.
Futuramente, mapas cúbicos também serão suportados pela
aplicação.
Fig. 2. Equação de projeção de uma textura bidimensional em um
mapa esférico [13].
5. IMPLEMENTAÇÃO
Para a implementação do programa, a princípio a
linguagem Cg, desenvolvida pela NVIDIA, poderia ser
utilizada, pois sua proposta é ser compatível tanto com
OpenGL quanto DirectX [14]. Porém, como já vem sendo
utilizada há mais tempo pela comunidade, e devido a sua
estabilidade, a linguagem HLSL foi escolhida.
Posteriormente, pretende-se converter os projetos para Cg, já
que as duas linguagens são sintaticamente semelhantes.
Duas ferramentas de ambiente de desenvolvimento
(Integrated Development Environment - IDE) foram testadas
para analisar qual delas seria a mais adequada para o projeto:
FX Composer da NVIDIA, e RenderMonkey da ATI. Ambas
ainda estão em suas primeiras versões e não fornecem vários
recursos presentes em ferramentas de desenvolvimento para
C++ ou Java, mas auxiliam o desenvolvimento de shaders,
onde antes não existia qualquer IDE. Entre as duas, a
RenderMonkey foi selecionada por apresentar uma interface
mais intuitiva e mais estável, embora a FX Composer seja a
única a suportar Cg nativamente.
O programa em si está estruturado na forma de vários
passos, onde um ou mais passos implementam um efeito
desejado. Os passos de um mesmo efeito possuem
dependência direta do passo anterior, porém efeitos
diferentes, em geral, são independentes entre si.
Depois de compilado no formato de um arquivo de efeitos
HLSL (arquivo .fx), o shader será integrado em uma
aplicação Ogre, para facilitar o desenvolvimento de
aplicações interativas realistas.
6. EFEITOS DE ILUMINAÇÃO REALISTAS
Para alcançar o resultado desejado de realismo, alguns
efeitos foram considerados importantes, tais como Bloom,
Dazzling Reflection, Exposure Control e Glare. Nesta seção,
cada um deles será detalhado.
6.1. Bloom
No mundo real, quando um objeto é observado
diretamente contra uma fonte de luz, acontece um fenômeno
no qual a luz parece ultrapassar os limites da borda do objeto,
ofuscando o observador. A nomenclatura Bloom foi utilizada
para descrever este efeito.
Isso ocorre porque, ao entrar no olho humano, o raio
luminoso se espalha, atingindo a retina em vários pontos [7].
Esses pontos, que seriam estimulados pelo objeto, acabam
estimulados pelo raio luminoso, provocando o efeito Bloom.
A implementação exata do que ocorre no olho humano é
computacionalmente complexa, embora possível. Para uma
aplicação em tempo real, opta-se por um cálculo mais
simples, porém capaz de produzir um efeito semelhante.
Para simular este efeito, a técnica mais utilizada é a
aplicação de filtros gaussianos sucessivos nos pontos mais
luminosos da cena. Assim, a cada passo, um filtro gaussiano
é aplicado na horizontal e depois na vertical, para borrar o
ponto luminoso. Depois disso, a imagem borrada é composta
com a imagem original da cena. A Figura 3 mostra um
exemplo de aplicação do Bloom. Na Figura 3.b o suporte da
esfera é ofuscado pelos raios luminosos.
Em RA, esse efeito é importante para conferir realismo à
cena, pois um objeto virtual que não seja afetado pela
iluminação do ambiente no qual ele está inserido é notado
pelo observador como algo artificial. Em algumas aplicações,
é desejado que o usuário não perceba esta diferença.
Fig. 3. Exemplo de cena: a) sem Bloom; b) com Bloom [4].
6.2. Dazzling Reflection
Quando um objeto reflete o ambiente, parte da intensidade
luminosa que chega nele é atenuada, de acordo com o seu
coeficiente reflexivo. Utilizando uma imagem HDR para
simular fontes de luz, a informação de quão forte é o raio
luminoso que atinge o objeto é muito mais precisa. Assim, a
imagem refletida pode produzir o mesmo efeito de
ofuscamento mencionado na subseção anterior. Para este
efeito foi utilizada a nomenclatura Dazzling Reflection.
A tarefa consiste em implementar a reflexão em objetos,
de forma a preservar a informação HDR do ambiente
refletido por ele. Dessa forma, o objeto ganhará um
componente de realismo adicional, pois além de sofrer
efeitos de ofuscamento quando está contra a luz, também
poderá produzir um efeito semelhante quando a superfície for
reflexiva o suficiente. A Figura 1 ilustra esse efeito.
6.3. Exposure Control
O problema de mapear imagens sintetizadas por
algoritmos físicos em uma faixa de visualização limitada é
normalmente chamado de Tone Mapping [15]. Algoritmos
recentes procuram analisar a luminância localmente, de
forma a se aproximar ao máximo do fenômeno que ocorre no
olho humano, produzindo cenas realistas.
A técnica de Tone Mapping, proposta por Ashikhmin será
utilizada neste trabalho para delimitar uma faixa de
iluminação a ser mapeada nas cores que os dispositivos são
capazes de mostrar [15]. Esta técnica foi escolhida por ser
simples e de fácil implementação, além de poder ser
estendida para um resultado adaptativo.
Essa técnica será utilizada para simular um efeito
chamado Exposure Control, que regula a quantidade de luz
que é percebida pelo usuário, como ilustrado na Figura 4.
Esse efeito é produzido naturalmente pelo olho humano ao
dilatar ou contrair a pupila, ou por uma câmera ao variar a
abertura da lente e o tempo de exposição do filme.
conjunto de arestas radiais em torno da fonte luminosa [8]. É
de conhecimento geral que o efeito de Glare é causado pela
difração e espalhamento em obstáculos perto do olho. Os
raios luminosos são difratados primeiramente pelos cílios e
algumas vezes pela borda das pálpebras [16].
Vários tipos diferentes de Glare podem ser observados em
situações do mundo real. Dependendo do tipo da fonte de luz
e do objeto que está capturando a imagem (olho, lente da
câmera, etc.), os efeitos podem variar entre faixas
horizontais, faixas verticais, estelares de quatro, seis ou
várias pontas, entre outros.
A implementação de um dos efeitos de Glare observados
no olho humano faz parte do escopo deste trabalho. Esse
efeito será conseguido através da simulação da difração
ocorrida nos cílios, implementada por Kakimoto et al. [8].
Serão utilizadas duas imagens que servirão de filtro para
os raios luminosos que chegam ao observador. A primeira
delas consiste na simulação de cílios artificiais. A segunda
consiste em uma aproximação de uma pupila. A Figura 5
ilustra exemplos dessas imagens, as quais podem variar para
gerar efeitos ligeiramente diferentes. Utilizando freqüências
diferentes para cada componente luminoso é possível
reproduzir o Lenticular Halo [7].
Fig. 5. Imagens que servirão de obstáculos para o efeito Glare, e o
resultado obtido [8].
Este mesmo algoritmo pode ser usado para simular Glare
em lentes de câmeras, variando as imagens de obstáculos
para algo correspondente, presente nas lentes objetivas.
6.4.1. FFT em GPU
Para conseguir o efeito Glare citado acima, será
necessário analisar os raios luminosos incidentes no domínio
da freqüência. Ou seja, a Transformada Rápida de Fourier
(FFT) deverá ser utilizada para essa tarefa. O problema com
essa técnica é seu alto custo de processamento. A atividade
de transferência de dados da GPU para a CPU e o
processamento inviabilizaria a aplicação em tempo real.
Por isso, será necessária a implementação da FFT
diretamente na GPU, melhorando o desempenho. Uma
versão otimizada da transformada deve ser implementada de
forma a se adequar ao pipeline da placa gráfica [17].
7. RESULTADOS
Fig. 4. Diferentes níveis de exposição de uma cena [6].
6.4. Glare
Glare é um fenômeno onde fontes de luz ou reflexões
intensas causam um espalhamento dos raios luminosos,
principalmente nos olhos humanos. É percebido como um
O trabalho de implementar cada um dos efeitos descritos
na seção anterior ainda está em andamento, porém alguns
resultados iniciais já foram obtidos. O primeiro resultado foi
a transposição do mapa de radiância esférico de Debevec em
uma esfera virtual (ver seção 4). A qualidade da imagem
gerada depende do grau de interpolação gerado pelos vértices
da esfera. Foi observado que uma esfera com mais vértices
produz uma imagem mais nítida. Existe, porém, um
problema em relação à utilização de mapas esféricos.
Quando o mapeamento das bordas do mapa esférico é feito,
existe muita perda de informação, e por isso existe uma área
do mundo que apresenta fortes distorções, como mostra a
Figura 6. Tais distorções são relacionadas com a natureza da
representação do ambiente em um mapa esférico.
Como um trabalho futuro para a aplicação, existe a
proposta de integrar todos esses efeitos em um sistema de
RA. Para isso, é necessário implementar técnicas que sejam
capazes de extrair informações de iluminação do ambiente
real, para utilizá-las na renderização do modelo virtual.
Posteriormente, um estudo minucioso sobre o desempenho
do shader desenvolvido será realizado.
REFERÊNCIAS BIBLIOGRÁFICAS
Fig. 6. Ponto de distorção do mapeamento esférico.
Um filtro gaussiano inicial foi utilizado para simular o
efeito de Bloom. Através de 4 passos no shader, os pontos
mais luminosos da imagem são borrados para produzir uma
aproximação do efeito de ofuscamento. Entretanto, esta
implementação ainda não está no nível de precisão desejado,
como mostrado na Figura 7. O resultado final da aplicação
do filtro gaussiano nos pontos luminosos pode ser composto
com os resultados intermediários, para um resultado melhor.
Fig. 7. Efeito Bloom no mapa de radiância de Debevec.
Por fim, o efeito de Dazzling Reflection foi implementado,
mostrando pontos de iluminação refletidos no objeto e
causando o efeito de ofuscamento semelhante ao obtido no
mapa HDR original, como visto na Figura 8.
Fig. 8. Efeito de ofuscamento na reflexão.
8. CONCLUSÕES E TRABALHOS FUTUROS
Os resultados obtidos demonstraram a viabilidade da
aplicação proposta, já que a cena com efeitos foi renderizada
mantendo a interatividade do usuário. A implementação dos
outros efeitos de iluminação já foi iniciada, porém não
apresenta ainda resultados visíveis.
[1] J. A. Fewerda, “Three Varieties of Realism in Computer
Graphics”, in Proc. SPIE Human Vision and Electronic
Imaging, pp. 146-158, 2003.
[2] A. Fournier, A. S. Gunawn, and C. Romanzin,
“Common Illumination between Real and Computer
Generated Scenes”, in Proc. of GI, pp. 254-262, 1993.
[3] P. E. Debevec, and J. Malik, “Recovering High Dynamic
Range Radiance Maps from Photographs”, in Proc. of
SIGGRAPH, pp. 369-378, 1997.
[4] ATI Developer, disponível em http://ati.de/developer/
index.html, visitado em 13 de Setembro de 2007.
[5] P. E. Debevec, “Rendering with Natural Light”, in Proc.
of SIGGRAPH, pp. 166, 1998.
[6] M. Kawase, “Practical Implementation of High Dynamic
Range Rendering”, GDC 2004, disponível em
http://www.daionet.gr.jp/~masa/rthdribl/index.html,
visitado em 5 de Outubro de 2007.
[7] G. Spencer, P. Shirley, K. Zimmerman, and D. P.
Greenberg, “Physically-based Glare Effects for Digital
Images”, in Proc. of SIGGRAPH, pp. 325-334, 1995.
[8] M. Kakimoto, K. Matsuoka, T. Nishita, T. Naemura, H.
Harashima, “Glare Generation Based on Wave Optics”,
Computer Graphics Forum, vol. 24, no. 22, pp. 185-193,
June 2005.
[9] R. Huff, L. P. Nedel, M. M. Oliveira, C.M. D. S. Freitas,
“Usando Iluminação Baseada em Imagens na Geração de
Ambientes de Realidade Mista”, in Proc. of SVR, pp.
137-148, 2004.
[10] HLSL Shaders – Library Archive, disponível em
http://msdn.microsoft.com/archive/default.asp?url=/archi
ve/en-us/directx9_c_Dec_2005/HLSL_Shaders.asp,
visitado em 13 de Setembro de 2007.
[11] Ogre 3D, disponível em http://www.ogre3d.org/,
visitado em 13 de Setembro de 2007.
[12] Recovering High Dynamic Range Radiance Maps from
Photographs, disponível em http://www.debevec.org/
Research/HDR/, visitado em 14 de Setembro de 2007.
[13] P. Haeberli, and M. Segal, “Texture Mapping as a
Fundamental Drawing Primitive”, in Proc. of EG
Workshop in Rendering, pp. 259-266, 1993.
[14] Cg, disponível em http://developer.nvidia.com/page/
cg_main.html, visitado em 17 de Setembro de 2007.
[15] M. Ashikhmin, “A Tone Mapping Algorithm for High
Contrast Images”, in Proc. of EG Workshop on
Rendering, pp. 145-155, 2002.
[16] M. G. J. Minnaert (Translated and revised by Seymour
L.), Light and Color in the Outdoors, Springer-Verlag,
New York, 1993.
[17] K. Moreland, and E. Angel, “The FFT on a GPU”, in
Proc. of Graphics Hardware, pp. 112-119, 2003.
EFICIÊNCIA ENERGÉTICA EM SISTEMAS INDUSTRIAIS SOB A ÓPTICA DA
REALIDADE VIRTUAL
Eduardo de Souza Santos, Antônio C. Delaiba, Alexandre Cardoso, Edgard A. Lamounier Jr
Universidade Federal de Uberlândia - Faculdade de Engenharia Elétrica
CEP 38400-902, C.P. 593, Uberlândia - MG - Brasil
Resumo - Este trabalho apresenta um sistema de ventilação,
baseado em técnicas de Realidade Virtual, para aplicação
no estudo e análise da eficiência energética. A idéia básica é
permitir que estudantes e profissionais da área de
Engenharia Elétrica possam ter acesso a um ambiente
virtual de um sistema motor elétrico-ventilador, que simule
diferentes situações de funcionamento, visando a redução da
demanda e, conseqüentemente, do consumo de energia
elétrica.
Palavra-Chave - Eficiência Energética, Linguagem VRML,
Realidade Virtual, Ventilador Centrífugo.
Abstract - This paper presents a motor-fan system based on
Virtual Reality techniques in order to obtain energetic
efficiency at low cost. The main idea is to allow that students
and professionals of the electric engineering area may have
access to a virtual environment that simulates an electric
motor-fan system, with different functioning or design
alternatives, showing the possibilities to reduce costs when
electric energy is used.
Keywords - Centrifugal Fan, Energetic Efficiency, Virtual
Reality, VRML Language.
1. INTRODUÇÃO
Atualmente, a Realidade Virtual (RV) é considerada uma
forma bastante avançada de se interagir com computadores e
representa um novo paradigma de interface [1]. Tais técnicas
possuem aplicações nos mais diferentes segmentos, a saber:
processos industriais, psicologia, treinamento, educação,
desenvolvimento de projetos, entre outros [2]. Dentre estes
aspectos, a área de Educação tem merecido destaque nos
últimos anos.
Do ponto de vista educacional, a Realidade Virtual é uma
poderosa ferramenta, não só porque apresenta um enorme
potencial para o desenvolvimento de pesquisas, mas também
porque RV permite que usuários experimentem sensações
únicas com manipulação e análise do objeto de estudo [3].
Desta forma, esta pesquisa tem como objetivo a utilização
de RV na criação de experimentos virtuais que possam
proporcionar aos estudantes de professores um ambiente de
aprendizagem mais envolvente e intuitivo, que aborde o
estudo de motores trifásicos acoplados em sistemas de
ventilação, apresentando os respectivos princípios de
funcionamento, análise e simulação de seu comportamento
mecânico e elétrico.
Esta pesquisa é motivada pela crise da energia elétrica e a
escassez de recursos que vem despertando a consciência da
necessidade de conservação e racionalização do uso desta
energia, bem como o benefício financeiro desta atividade.
Neste cenário, destaca-se o setor industrial o qual é
responsável por aproximadamente 50% do consumo total de
energia elétrica do país. E, em particular, os motores de
indução trifásicos que respondem por 50% do consumo de
energia na indústria [4] e, especificamente, em algumas delas
o consumo pode chegar até 90% como fábricas de cimento e
indústrias químicas.
Desta maneira, esta pesquisa tem como objetivo realizar a
integração da Realidade Virtual aplicada ao sistema motorventilador, com o olhar voltado à eficiência energética,
tornando propícia a utilização por estudantes e professores
um ambiente de aprendizagem mais envolvente e intuitivo,
que simule o funcionamento e os aspectos construtivos do
sistema supracitado.
2. TRABALHOS RELACIONADOS
A Realidade Virtual tem sido intensamente explorada
como uma ferramenta que possa produzir ambientes
educacionais para o Ensino à Distância (que pode ser
definido como processo de ensino-aprendizagem, mediado
por tecnologias, onde professores e alunos estão separados
espacial e/ou temporalmente) de baixo custo. Um dos
principais objetivos desta investigação é a concepção de
laboratórios virtuais que proporcionam aos usuários um
ambiente de Realidade Virtual à distância para simulação de
sistemas, sem riscos de situações reais.
Segundo José Manuel Moran as tecnologias interativas,
sobretudo, vêm evidenciando, na educação à distância, o que
deveria ser o cerne de qualquer processo de educação: a
interação e a interlocução entre todos os que estão
envolvidos nesse processo.
Desta forma, este trabalho segue no sentido de aprimorar
os métodos de ensino e aprendizagem relacionando-os ao
desenvolvimento de ambientes virtuais e aplicá-los em
eficiência energética. Complementarmente os procedimentos
aqui utilizados propiciam a aplicação de Realidade Virtual
associada à Internet em soluções relacionadas com Educação
a Distância (EAD) [7,8, 9].
3. MODELAGEM DO SISTEMA
Após o estudo de cada parte do ambiente virtual que será
criado, bem como da linguagem VRML, tem-se o inicio da
fase de modelagem de cada equipamento. Dessa forma, esta
seção trata da criação do modelo virtual, em separado, de
cada parte do sistema.
3.1. Modelagem do Motor Trifásico
Inicialmente, foi determinado que a modelagem será
efetuada com base em um produto comercial, facilitando
assim, a visualização das formas desse motor, seja em
catálogos ou mesmo no mundo real. Observa-se que esse
aspecto é extremamente importante, pois deseja-se uma certa
riqueza de detalhes, visto que, este sistema se destina à
aplicação da realidade virtual no aprendizado. Desta forma, a
modelagem dessa parte do sistema deve valorizar os
componentes principais do motor, como o rotor, o estator,
entre outras partes.
Nessa ótica, foi escolhido um modelo de motor trifásico,
de rotor em gaiola de esquilo, de quatro pólos, freqüência
nominal de 60 Hz e tensão nominal de 220/380/440 V.
Para efetuar a modelagem, foram utilizadas as primitivas
da linguagem VRML, como cubos, esferas, cones e cilindros,
no entanto, devido à complexidade de algumas partes, foi
necessária a utilização de formas complexas, como cascas
cilíndricas, toróides, entre outros [10].
Desta forma, considerando as informações que foram
coletadas, tanto no catálogo do motor quanto na visualização
de motores similares, foram modelados o rotor, o estator, a
ventoinha de ventilação e outras partes construtivas que
podem ser visualizadas a seguir.
É importante informar que na criação das formas mais
complexas do ventilador foram utilizados além das formas
primitivas do VRML, formas complexas como extrusion e
indexedFaceSet, que fizeram com que a modelagem ficasse
mais real e visualmente agradável ao usuário.
Na criação do ventilador centrífugo, as partes mais
importantes são a carcaça, o rotor, e o damper (responsável
por atuar como a válvula que provê a diminuição da vazão na
saída do sistema).
A modelagem completa do ventilador pode ser visualizada
nas Figuras 6 e 7. É importante observar que a Figura 7 nada
mais é do que o ventilador com um material transparente na
construção da carcaça, possibilitando, por exemplo, que os
movimentos de abertura e fechamento do damper pudessem
ser percebidos.
Figura 04 - Carcaça Modelada
Figura 01 - Rotor modelado
Figura 05 - Rotor Modelado
Figura 02 - Estator modelado
Figura 06 - Ventilador (carcaça com preenchimento sólido)
Figura 03 - Vista do motor aberto com todos os
componentes
Como se pode observar nas Figuras anteriores, alguns
detalhes como as aletas da carcaça, não foram representados
de forma fiel ao motor real, visto que, essa parte construtiva
não é interessante para o público alvo desse projeto.
Figura 07 - Ventilador (carcaça com preenchimento transparente)
3.2. Modelagem do Ventilador Centrífugo
3.3 Modelagem do Comportamento Eletro-mecânico do
sistema Motor-ventilador
Assim como no caso do motor, o modelo virtual do
ventilador centrifugo foi baseado em um equipamento real,
neste caso, no equipamento de modelo VC310.
Para criar as animações e garantir a realização dos
cálculos necessários para a simulação do comportamento do
sistema motor-ventilador, foi utilizada a linguagem
JavaScript, que é voltada ao desenvolvimento de programas
de pequeno porte (scripts), que podem ser associados com
códigos VRML, propiciando assim uma forma simples para
conseguir o aumento da interatividade e funcionalidade de
um ambiente virtual [11].
Pode-se demonstrar as alterações da carga no eixo do
sistema do ventilador conforme ocorrem mudanças dos
valores das seguintes variáveis: potência mecânica; potência
elétrica, que se traduz em energia elétrica gasta, refletindo no
custo por ano e, obviamente, no tempo de retorno do
investimento; e rendimento do ventilador.
Logo, a modelagem integrada do conjunto motorventilador conta com os painéis de controle e de resultados
que são mostrados na figura 08. Observa-se que as colunas
contidas na tabela de resultados são respectivamente:
diferença de pressão em mcA, rendimento (η) do ventilador
em porcentagem, potência hidráulica em HP, potência
mecânica na entrada em HP, potência elétrica em kW,
energia elétrica consumida em MWh, o custo relativo ao uso
da energia elétrica durante um ano, e, por fim, tempo de
retorno do investimento (TRI) em anos.
Figura 08 - Sistema motor-ventilador centrifugo
Determina-se a diferença de pressão através do gráfico
pressão x vazão do ventilador, que é diferente em cada caso,
pois, dependendo da vazão e do seu controle, a curva do
sistema é alterada.
Através do gráfico pressão x vazão, também se obtém o
rendimento do ventilador, entretanto, para se obter esse
valor, deve-se localizar o ponto definido pela intersecção dos
valores citados anteriormente.
A potência hidráulica é calculada através de (1):
Ph = ∆pt . ܸሶ . 10-3
(1)
Onde:
• Ph [kW] - Potência hidráulica do ventilador;
• ∆pt [N/m2] - Diferença de pressão total do
ventilador;
• ܸሶ [m3/s] - Vazão volumétrica.
A potência mecânica na entrada do ventilador pode ser
calculada pela equação (2), como deseja-se este valor em HP,
basta multiplicar o valor da potência hidráulica, que está em
kW por 0,746:
Pmecânica = (Phidráulica . 0,746)/ηvent
(2)
Onde:
• ηvent - rendimento do ventilador.
A potência no eixo do motor é dada pela expressão (3):
Pem = Pmecânica/ηacoplamento
(3)
Onde:
• ηacoplamento - rendimento do acoplamento;
• Pem [HP] - potência no eixo do motor.
A potência elétrica é calculada pela expressão (4), como a
potência mecânica está em HP, é necessário converter para
kW, dessa forma, divide-se a expressão por 0.746:
(4)
Pelétrica = Pem/(ηmotor . 0,746)
Onde:
• ηmotor - rendimento do motor.
A energia elétrica pode ser obtida pela expressão (5),
como se deseja que a energia elétrica gasta seja expressa em
MWh, basta dividir a expressão por 1000. Logo, tem-se:
Eelétrica = Pelétrica . tempo/1000
(5)
Onde:
• tempo [h] - tempo de funcionamento do sistema.
Para calcular o custo da energia elétrica em reais, basta
multiplicar a uso da energia elétrica no ano pela tarifa (custo
da energia por MWh) da concessionária, assim como
mostrado pela equação (6):
(6)
Custo = Eelétrica . tarifa
Onde:
• tarifa [R$/MWh] - tarifa de energia elétrica.
E por último, calcula-se o tempo de retorno do
investimento que é dado pela diferença entre os preços dos
equipamentos divididos pelo produto entre variação da
energia elétrica e custo da energia elétrica por kWh [5].
(7)
TRI = ∆Preço / (∆Eelétrica . tarifa)
Onde:
• ∆Preço [R$] - diferença entre os preços dos
equipamentos de cada sistema.
Para ventiladores, é comum encontrar o valor para a
diferença de pressão em metros de coluna d’água (mcA) e
também a potência hidráulica expressa em HP, neste caso,
basta utilizar os fatores de conversão adequados.
4. RESULTADOS
Com base nas equações mostradas anteriormente,
apresenta-se a tabela de resultados da figura 08. A primeira
linha da tabela (caso 1) retrata a operação do sistema
admitindo que o motor é da linha padrão e que o controle de
vazão é realizado pelo método do estrangulamento de
válvula.
Já na segunda linha da tabela (caso 2), o motor standard é
substituído pelo de alto rendimento, com essa alteração o
consumo de energia elétrica e o custo associado com esta
energia decrescem de aproximadamente 10% em relação ao
caso 1.
O cenário abordado na terceira linha da tabela (caso 3) é
semelhante ao caso 1, porém o controle de vazão é realizado
pelo controle de velocidade, advindo da utilização de
inversores.
Na quarta linha da tabela (caso 4), foram usados o motor
de alto rendimento e o método utilizado foi o controle de
velocidade, e verificou-se que o consumo de energia e a
economia fica em torno de 60% em relação ao caso 1,
significando uma redução significativa no gasto anual. Dessa
maneira o usuário poderá comparar todos os casos em
diversos tipos de situações e assim verificar qual é o melhor
sistema a ser utilizado ou se é vantajoso realizar a
substituição de um sistema pelo outro.
Neste ambiente, o usuário pode ainda caminhar pelo
laboratório e explorar todos os componentes ali existentes,
por exemplo, o usuário pode tornar a carcaça do ventilador
transparente (Figura 07) para visualizar os detalhes internos,
navegar até o motor, observar seu funcionamento e até
arrastar partes deste para visualizar os detalhes (Figura 09).
Além disso, o sistema foi avaliado por alunos e
profissionais da área de Engenharia Elétrica a fim de
confirmar a aplicação do mesmo para os tópicos propostos.
Com a conclusão deste estudo, pretende-se disponibilizar
o ambiente virtual na internet, de modo a permitir o acesso a
estudantes, professores e interessados pela área.
Como continuação deste trabalho, pode-se efetuar a
modelagem de outros sistemas, como um compressor de ar,
por exemplo. E ainda, para maior detalhamento do sistema,
pode-se realizar o estudo pertinente, e efetuar a modelagem
dos transitórios da máquina de indução e equipamentos
acoplados a ela.
REFERÊNCIAS BIBLIOGRÁFICAS
Figura 09 - Arrastando partes do motor
Existe ainda, o botão “Abrir e Fechar” no painel de
comandos, que efetua a abertura do motor, estando ele em
funcionamento ou não (semelhante à Figura 03).
Dessa forma, percebe-se que o ambiente proporciona uma
interação direta entre o usuário e o ambiente virtual.
Permitindo assim, visualizar e interagir com os detalhes de
forma imersiva, ajudando a entender o funcionamento do
sistema e dos equipamentos ali presentes.
5. CONCLUSÕES E TRABALHOS FUTUROS
Este trabalho agregou duas áreas do conhecimento, quais
sejam: Realidade Virtual e Eficiência Energética.
Quanto à RV, pode-se apontar como principais vantagens
da sua utilização para fins educacionais os seguintes itens:
• Motivação de estudantes e usuários de forma geral,
baseada na experiência de visualizar o
funcionamento dos sistemas de ventilação,
virtualmente;
• Permite visualizações de detalhes dos elementos das
máquinas elétricas e ventiladores de forma imersiva;
• Provê a oportunidade de se realizar experimentos
virtuais, principalmente na falta de recursos, para
fins de educação virtual interativa;
• Permite ao aprendiz a partir da teoria dada em livros
entender o funcionamento interno de um aparelho
sem ter que desmontá-lo, ou causar alguma
danificação física em sua estrutura.
• Encoraja a criatividade do usuário, que estará mais
motivado por visualizar características internas de
uma peça.
Em relação ao estudo da conservação e eficiência do uso
da energia elétrica, conclui-se que o melhor cenário é aquele
em que se utilizam motores de alto rendimento associados à
utilização de inversores de freqüência para o controle de
velocidade.
[1] ELLIS, Stephen R. What are Virtual Environments?
IEEE Computer Graphics and Applications, v. 14, n. 1,
p. 17-22, jan. 1994.
[2] SHERMAN, R. William et al. Experiences with Virtual
Reality applications, In: SIGGRAPH '97. Proceedings of
the 24th annual conference on Computer graphics &
interactive techniques, p. 473-476, 1997.
[3] KIRIL, John T. Foley et al. WebTOP: 3D Interactive
Optics on the Web. ACM Proceedings of Web3D VRML 2000 - fifth Symposium on the Virtual Reality
Modeling Language, p. 125-131, Monterey, fev. 2000.
[4] FITZGERALD, E.; KINGSLEY, Charles; UMANS,
Stephen. Eletric Machinery. 5 ed. New York: McGraw
Hill, 1990.
[5] ELETROBRÁS-PROCEL. Guia Operacional de
Motores Elétricos. Rio de Janeiro: ELETROBRÁS,
2000.
[6] ELETROBRÁS-PROCEL. Programa de Eficientização
Industrial - Módulo Ventiladores. Rio de Janeiro:
ELETROBRÁS, 2000.
[7] BELL, John T.; FOGLER, H. Scott. The Investigation
and Application of Virtual Reality as an Educational
Tool. Proceedings of the American Society for
Engineering Education Annual Conference, Anaheim,
jun. 1995.
[8] CARDOSO, Alexandre; LAMOUNIER, Edgard; TORI,
Romero. Sistema de Criação de Experiências de Física
em Realidade Virtual para Educação a Distância. In: II
Workshop Brasileiro de Realidade Virtual, WRV´99, p.
174-181, Marília, 1999.
[9] CARDOSO, Alexandre; LAMOUNIER, Edgard; TORI,
Romero. A Virtual Physics Laboratory to Support
Interactive Distance Learning. In: International
Conference on Engineering and Computer Education ICECE´2000 - CD-ROM, São Paulo, ago. 2000.
[10]CARDOSO, Alexandre; MORETTI, Flávio; DAUD
JÚNIOR, Antônio; CAMPOS, Túlio. Motor Elétrico
Virtual. Proceedings of SVR 2003 - Symposium on
Virtual Reality. Sociedade Brasileira de Computação –
SBC, v. 01, p. 389-391, Ribeirão Preto, 2003.
[11]AMES, L. A.; NADEAU, R. D.; MORELAND D.
VRML Sourcebook. 2. ed. John Wisley & Sons, USA
1997.
FIRT: UMA IMPLEMENTAÇÃO EM FPGA DA TÉCNICA DE TRAÇADO DE
RAIOS
Bernardo F. Reis, João Marcelo X. N. Teixeira, Veronica Teichrieb, Judith Kelner
Universidade Federal de Pernambuco, Centro de Informática . Grupo de Pesquisa em Realidade Virtual e Multimídia
Av. Professor Moraes Rego S/N, Prédio da Positiva, 1º Andar
Cidade Universitária, Recife - Pernambuco
CEP 50670-901
e-mail: {bfrs, jmxnt, vt, jk}@cin.ufpe.br
Resumo - Com a evolução dos ambientes de realidade
aumentada, alto desempenho torna-se um requisito, uma vez
que as aplicações necessitam ser executadas em grandes
velocidades e eficientemente. Embarcar o pipeline de
realidade aumentada pode melhorar o quesito velocidade,
enquanto a técnica de traçado de raios auxilia a satisfazer a
demanda por qualidade. Este artigo descreve o FIRT, uma
implementação da técnica de traçado de raios em FPGA
para esferas e planos. A metodologia utilizada durante o
desenvolvimento do projeto, os resultados obtidos e uma
continuidade para o desenvolvimento do protótipo são
abordados ao longo do texto. Com os testes realizados podese perceber a viabilidade de implementação de módulos de
Computação Gráfica diretamente em FPGA, além da
importância da contribuição do processamento dedicado
para a área de renderização realista.
Palavras-Chave - circuito dedicado, realidade aumentada,
traçado de raios.
Abstract - Along the evolution of augmented reality
environments, high performance have become a necessity,
once most applications need to be qualitatively executed and
in high speed. To embed the augmented reality pipeline may
improve the speed, while raytracing technique helps to
satisfy the demand on quality. This paper describes FIRT, an
implementation of a raytracing technique on FPGA to
spheres and planes. The methodology used to develop the
project, the results obtained and future works are discussed
throughout the text. The tests performed have proven the
feasibility of implementation of computer graphics directly
on FPGA and have shown the importance of dedicated
processing to realistic rendering.
Keywords - augmented reality, dedicated circuit, raytracing.
1. INTRODUÇÃO
A técnica de traçado de raios [1] é conhecida por sua
capacidade de gerar imagens de alta qualidade, além de
permitir a adição de outras técnicas de renderização avançada
e vários efeitos de iluminação. Em aplicações de realidade
aumentada (RA), esta técnica pode ser usada na última etapa
de renderização dos objetos virtuais sobrepostos à imagem da
cena real, com o intuito de deixar o ambiente virtual o mais
próximo possível do real.
Ao longo dos anos, pode-se perceber a crescente
preocupação nas áreas de computação gráfica e RA acerca da
busca pela geração de imagens sintéticas altamente realistas.
As técnicas de rasterização convencionais não conseguem
refletir adequadamente o comportamento da luz e de outros
fenômenos físicos que ocorrem na realidade. A técnica de
traçado de raios, por sua vez, simula os efeitos luminosos da
maneira como eles ocorrem na realidade, no entanto
apresenta um alto custo computacional.
Com isso, o objetivo principal deste trabalho é unir as
áreas de desenvolvimento de circuitos (em sistemas
embarcados) e de renderização (em computação gráfica) em
um ambiente de RA, transformando o resultado dessa união
em um módulo embarcado capaz de realizar o mesmo
processo definido pela técnica de traçado de raios. Uma vez
implementado, o algoritmo será analisado comparativamente
à sua implementação em software para verificar a qualidade
visual das imagens geradas e o desempenho. Esse artigo visa
descrever o processo de desenvolvimento e a experiência
adquirida com a criação do FIRT (an FPGA Implementation
of a RayTracer), uma implementação em Field
Programmable Gate Array (FPGA) de um traçador de raios
[2].
A seção 2 introduz alguns dos trabalhos que motivaram a
construção do FIRT, além de apontar o que já é possível
realizar com as soluções existentes. A seção 3 descreve a
metodologia utilizada no desenvolvimento do projeto, suas
diversas etapas e ferramentas usadas. Os resultados obtidos
com o primeiro protótipo em funcionamento do FIRT são
mostrados na seção 4, e uma sucinta análise é feita sobre as
imagens criadas via software e pelo FIRT. Finalmente, a
seção 5 faz uma reflexão sobre os resultados alcançados com
o protótipo em FPGA e traça linhas para possíveis melhorias
e funcionalidades adicionais ao projeto.
2. TRABALHOS RELACIONADOS
O FIRT não é a primeira tentativa de embarcar o
processamento de traçado de raios em um circuito integrado.
Apesar de não existirem muitos trabalhos especificamente
acerca do tema abordado, alguns projetos já propuseram
soluções bem sucedidas de arquiteturas para uma
implementação de traçado de raios que evite a execução via
software, em PC de propósito geral. Um dos trabalhos
encontrados [3] foca a possibilidade de implementar a
técnica de traçado de raios em hardwares gráficos (placas de
vídeo) e realiza uma comparação que demonstra que a
implementação em hardware gráfico apresenta performance
superior à implementação em CPUs convencionais. Essa
confirmação de maior desempenho é um dos fatores que
levaram à posterior construção de módulos embarcados
voltados especificamente para a execução da técnica.
SaarCOR [4], uma arquitetura para implementação de
traçado de raios em tempo real, demonstrou ser escalável,
modular e bastante eficiente de forma a satisfazer o requisito
de tempo real. Todas as características listadas anteriormente
foram justificadas através de simulação com precisão de ciclo
de clock. Em uma continuação do trabalho desenvolvido com
a arquitetura SaarCOR é apresentada a implementação de um
protótipo de todo o pipeline da técnica de traçado de raios
em um único chip de FPGA [5]. O protótipo utiliza como
base uma freqüência de 90 MHz e chega a apresentar uma
taxa média de 20 a 60 quadros por segundo. A principal
característica desse último trabalho mencionado é a
possibilidade dele suportar cenas dinâmicas, além de permitir
o redesign da unidade de transformação, resultando no
suporte de cenas com texturas, múltiplas fontes de luz,
múltiplos níveis de reflexão e refração, além de
transparência. Contudo, sua arquitetura ainda não foi
disponibilizada e acredita-se que a mesma fará parte de uma
solução fechada.
3. METODOLOGIA
A metodologia adotada durante o desenvolvimento do
FIRT consistiu em quatro etapas: definição das
funcionalidades desejadas no módulo em hardware,
implementação de um protótipo em software para posterior
validação dos resultados obtidos com o protótipo em FPGA,
implementação em Very High Speed Integrated Circuit
Hardware Description Language (VHDL) usando uma
ferramenta específica de simulação e, por último, adaptações
e testes para verificar a corretude do circuito sintetizado [6].
O hardware disponível para a prototipação foi o kit de
desenvolvimento de DSP da Altera, com um FPGA da
família Stratix II, modelo EP2S60F1020C4. Dadas algumas
limitações de memória desse FPGA, decidiu-se adotar a
resolução de 320x240 pixels nos testes realizados. Cada uma
dessas etapas será descrita em mais detalhes a seguir.
naquela em sua superfície), além da técnica de Phong para
suavizar o gradiente de cor gerado pela iluminação [7].
3.2.Protótipo em Software
A linguagem C foi escolhida para a implementação do
FIRT em sofware e o Microsoft Visual Studio 2003 foi a IDE
utilizada para desenvolvimento. Durante a implementação da
aplicação, procurou-se organizar o código o mais próximo
possível da posterior implementação em VHDL, de forma a
abstrair chamadas de métodos, uso de classes e outras
peculiaridades da linguagem de alto nível. Foi realizada uma
tradução do código de traçado de raios recursivo para uma
abordagem iterativa, de forma que fosse possível sua
implementação também em VHDL [8]. Uma vez que a
aplicação realizava o processo de traçado de raios de forma
correta, deu-se início à tradução do código em C para VHDL,
conforme descrito na próxima seção.
3.3.Implementação em VHDL
Uma vez traduzido todo o código em C para VHDL,
utilizou-se a ferramenta ModelSim para verificação da
funcionalidade e possíveis otimizações, já que nesta fase era
possível executar explicitamente várias operações em um
único ciclo de clock, o que não acontecia com a versão do
código implementada anteriormente. Uma vantagem do uso
do ModelSim é a capacidade de ser realizado debug no
código em VHDL. Isso permite que seja analisado o
comportamento do código antes que o mesmo seja usado
como entrada da síntese do circuito.
Como o resultado do funcionamento do FIRT é uma
imagem por completo, é inviável testar os valores resultantes
de cor para cada pixel e compará-los com aqueles obtidos
com o protótipo em software. Dessa forma, algumas
ferramentas adicionais foram criadas usando a linguagem C
para permitir essa comparação dos valores obtidos com a
simulação do código em VHDL. Essas ferramentas, além de
comparar os valores dos pixels obtidos, realizavam a
conversão do formato binário adotado (ponto-fixo 32 bits em
VHDL para ponto-flutuante em C), além de gerar uma
imagem que pudesse ser comparada visualmente com a
produzida por software.
3.1.Definição das Funcionalidades
3.4.Ajustes e Testes do Circuito
O primeiro protótipo do FIRT visa trabalhar apenas com a
renderização de planos e esferas, apresentando níveis
variados de reflexão, refração e sombras simples (hard
shadows). Está prevista uma extensão futura do protótipo
para que o mesmo suporte malhas triangulares e
características de cenas mais complexas.
O comportamento da técnica de traçado de raios demanda
uma abordagem recursiva, de forma que novos raios sejam
gerados à medida que colisões são detectadas entre os raios
virtuais que partem do observador e das primitivas da cena
[1]. Esse foi o primeiro requisito do FIRT: ser capaz de
suportar vários níveis de recursividade. Resolveu-se adotar a
Lei de Beer de forma a tornar as refrações mais próximas do
real (por exemplo, o olho humano enxerga uma diferença
sutil na cor da água encontrada no fundo de uma piscina e
A passagem do código VHDL criado com a ferramenta
ModelSim para o Quartus (ferramenta de síntese do circuito)
ocorreu sem dificuldades aparentes. Algumas modificações
tiveram que ser realizadas no código para aproveitar alguns
componentes já fornecidos pela Altera, que são
implementados otimizadamente. A adaptação deveu-se ao
fato da utilização do formato ponto-fixo ao invés de número
inteiro diretamente. Algumas operações de deslocamento de
bits resolveram a tradução entre os formatos. O módulo de
exponenciação continuou fazendo parte do projeto, uma vez
que não era fornecido um módulo com tal funcionalidade
pela Altera. A compilação inicial do projeto resultou em um
circuito com cerca de 94.000 Adaptative Look-Up Tables
(ALUTS) de área. Uma vez que o FPGA utilizado só possui
aproximadamente 48.500 ALUTs, o circuito não pôde ser
sintetizado.
Depois de reestruturar o código, algumas modificações
tiveram que ser feitas para otimizar a área ocupada. Por
exemplo, criou-se um módulo capaz de calcular a interseção
entre um raio e uma primitiva geométrica em apenas um ciclo
de clock. Além disso, passou-se a utilizar explicitamente
apenas 7 multiplicadores em todo o circuito do "Raytracer",
em conjunto com 3 divisores. As otimizações realizadas
diminuíram a área final do circuito para 36.000 ALUTs,
espaço compatível com o disponível no FPGA. Por se tratar
de um código muito complexo, a ferramenta Quartus
conseguiu apenas sintetizar todo o circuito com uma
freqüência máxima garantida de funcionamento igual a 3.30
MHz. Resolveu-se adotar um "overclock" na freqüência para
4 MHz, o que não comprometeu a integridade dos cálculos
realizados pelo circuito. O esquemático do FIRT é ilustrado
pela Figura 2.
Fig. 2. Esquemático do FIRT.
O módulo principal do projeto é o salientado em azul,
responsável pelo cálculo do traçado de raios. Os outros
módulos compreendem a memória de armazenamento da
imagem gerada, um módulo VGA responsável por enviar o
conteúdo da memória para o dispositivo de visualização e um
Phase-Locked Loop (PLL) para gerar as freqüências
utilizadas no circuito.
Os módulos implementados neste protótipo foram os
seguintes:
• Raytracer: engloba todo o processamento da técnica de
traçado de raios.
• Intersect: calcula a interseção entre um objeto da cena
(esfera ou plano) e um raio lançado.
• Ray_camera: fornece a posição espacial da câmera
virtual (coordenadas x, y e z).
• Ray_memory: memória de tamanho 320 x 240 pixels que
a imagem resultante do processamento do raytracer.
• Alt_mult32: multiplica combinacionalmente dois
números de 32 bits no formato de ponto-fixo.
• Alt_div32: divide combinacionalmente dois números de
32 bits no formato de ponto-fixo.
• Sqrt: calcula a raiz quadrada de um número de 32 bits no
formato de ponto-fixo.
• Sqrt48: possui a mesma função que o módulo sqrt, só
que para números com precisão maior (48 bits).
• Expf: calcula o exponencial (ex) de um número de 32 bits
no formato de ponto-fixo.
4. RESULTADOS
Com a finalidade de avaliar o resultado do protótipo do
FIRT, quatro casos de teste foram realizados. Em cada um
deles, a imagem era gerada tanto por software quanto pelo
circuito rodando no FPGA, e dois aspectos foram analisados:
tempo de execução e qualidade da imagem gerada. A
Figura 3 ilustra as imagens escolhidas para os testes. À
esquerda são mostradas as imagens geradas por software, e à
direita aquelas geradas pelo FIRT.
Percebeu-se que apesar de pequenas diferenças de
precisão entre as implementações, o resultado visual
mostrou-se bastante satisfatório. Conforme ilustrado na
Figura 4, devido à precisão, um pixel da fonte luminosa não é
renderizado (imagem à direita), uma vez que o FIRT não
conseguiu detectar a colisão com o raio lançado, como na
diferente da imagem gerada por software.
Para as simulações via software foi utilizado um PC com
processador Athlon 64 X2 4800+, com 1 GB de RAM,
rodando a uma freqüência de 2,41 GHz. A versão final do
circuito levou cerca de 50 minutos para ser sintetizada.
5. CONCLUSÃO E TRABALHOS FUTUROS
Embora o FIRT tenha apresentado um resultado visual
correto nas imagens geradas, faz-se necessário um FPGA
com área maior, para se obter uma melhor performance com
o módulo. Com mais elementos lógicos seria possível
aumentar o desempenho proporcionalmente ao número de
módulos FIRT utilizados.
Além disto, outras técnicas de otimização de circuito
devem ser aplicadas ao módulo, de forma a aumentar sua
freqüência de operação. Algumas dessas técnicas, como a
aplicação de pipeline em operações custosas, já estão sendo
introduzidas no circuito previamente implementado.
Como trabalhos futuros, têm-se a inclusão no módulo de
outras funcionalidades, como sombras complexas (soft
shadows), colisão com malhas triangulares, uso de texturas e
kd-trees para otimizar o cálculo de interseção com as
primitivas da cena. Além disso, pretende-se criar uma
interface de comunicação com o PC, de forma que as cenas
renderizadas possam ser alteradas dinamicamente.
AGRADECIMENTOS
Fig. 3. Imagens geradas: (esquerda) protótipo em software; (direita)
FIRT.
Fig. 4. Diferença nas imagens devido à precisão.
Por restrições de memória do FPGA, não foi possível
armazenar os 8 bits relativos a cada componente de cor de
cada pixel gerado pelo FIRT. Dessa forma, apenas os 6 bits
mais significativos eram armazenados, o que resultou em
variações bruscas do gradiente de cor na imagem gerada pelo
FPGA. Além disso, conforme pode ser observado na
Tabela 1, o tempo necessário para a renderização em
hardware foi mais elevado do que em software, chegando a
até 25 vezes superior, no pior caso.
TABELA I
Tempo de Execução dos Testes
Teste 1
Teste 2
Teste 3
Teste 4
Software
0,422 s
0,235 s
9s
1s
FIRT
8,84 s
5s
221 s
21,2 s
Os autores gostariam de agradecer ao MCT e CNPq, por
financiarem esta pesquisa (processo 507194/2004-7).
REFERÊNCIAS BIBLIOGRÁFICAS
[1] T. Whitted, “An Improved Illumination Model for Shaded
Display”, ACM SIGGRAPH Computer Graphics, vol. 13,
no. 2, pp. 14, August 1979.
[2] B. Zeidman, Designing with FPGAs and CPLDs, C M P
Books, California, 2002.
[3] T. J. Purcell, I. Buck, W. R. Mark, P. Hanrahan, “Ray
Tracing on Programmable Graphics Hardware”, ACM
Transactions on Graphics, vol. 21, no. 3, pp. 703-712,
July 2002.
[4] J. Schmittler, I. Wald, and P. Slusallek, ”SaarCOR, a
Hardware Architecture for Realtime Ray-Tracing”, in
Proc. of EUROGRAPHICS Workshop on Graphics
Hardware, 2002.
[5] J. Schmittler, S. Woop, D. Wagner, W. J. Paul, and P.
Slusallek, “Realtime Ray Tracing of Dynamic Scenes on
an FPGA Chip”, in Proc. of the ACM
SIGGRAPH/EUROGRAPHICS Conference on Graphics
Hardware, pp. 95-106, 2004.
[6] V. A. Pedroni, Circuit Design with VHDL, MIT Press,
Cambridge, 2004.
[7] J. Bikker, “Raytracing: Theory & Implementation”,
http://www.devmaster.net/articles/raytracing_series/part1.
php
[8] Y. A. Liu, and S. D. Stoller. “From recursion to iteration:
what are the optimizations?”, Technical Report 527,
Computer Science Dept., Indiana University, 1999.
F-LIBRAS - AMBIENTE INTEGRADO PARA LÍNGUA BRASILEIRA DE SINAIS
Fabrício Baptista1, José Remo F. Brega2
1
Faculdade de Ibaiti
Av. Tertuliano de Moura Bueno, 232, Bairro Flamenguinho, Ibaiti-PR, Brasil
2
Centro Universitário Eurípides de Marília
Av. Hygino Muzzi Filho, 529, Campus Universitário, Cep 17525-901, Cx.Postal 2041, Marília-SP, Brasil
fabriciobri@gmail.com, remo@univem.edu.br
Resumo - Grande parte dos deficientes auditivos brasileiros
utiliza a Língua Brasileira de Sinais (LIBRAS) para a sua
comunicação. No entanto, alguns encontram dificuldade
para comunicar-se, pois o português não é a sua língua–
mãe, e possui uma ordem diferente da definida pela LIBRAS.
Para minimizar este problema criou-se o F-LIBRAS, um
Ambiente Virtual voltado para o domínio da LIBRAS. Este
ambiente deve proporcionar suporte para a integração de
pessoas, sistemas computacionais e conteúdos, podendo ser
utilizado tanto para aprendizagem como para treinamento.
As principais tarefas deste software são: a gravação,
editoração e visualização de gestos. Os gestos utilizados em
LIBRAS são tridimensionais, dessa forma as técnicas de
Realidade Virtual são apropriadas para a representação dos
movimentos que compõe a língua de sinais.
Palavras-Chave – Ambientes Virtuais, Deficiente Auditivo,
Realidade Virtual, LIBRAS.
Abstract – The most of Brazilians hearing deficient uses the
Signal Brazilian Language (LIBRAS) for their
communication. However, some of them find difficulty to
communicate each other, because Portuguese is not their
native language, and it has a different position than that
defined by LIBRAS. For reducing this problem, it was
created the F-LIBRAS, a Virtual Environment directed to
dominate of LIBRAS. This environment should provide
support for including people, computer systems and contents;
it can be used even for learning as training. The principal
tasks of this program are: recording, publishing and
visualizing of gestures and movements from Signal
Language. The gestures used in LIBRAS are threedimensional, this way the techniques of Virtual Reality are
appropriated to represents the movements that compose the
signal language
i
Keywords - Deficient Hearing, LIBRAS, Virtual Enviroment,
Virtual Reality.
1. INTRODUÇÃO
Segundo Moura [10], a educação e a inserção social dos
deficientes auditivos constituem um sério problema, e muitos
caminhos têm sido seguidos na busca de uma solução. A
oficialização da Língua Brasileira de Sinais (LIBRAS) em
abril de 2002 (Lei n. 10.436, de 24 de abril de 2002) começa
a abrir novos caminhos. Contudo, Capovilla [3] salienta que
existe uma certa carência de materiais de avaliação e ensino
desenvolvidos especialmente para o deficiente auditivo
brasileiro.
Neste contexto, surgiu a proposição de um Ambiente
Virtual para o domínio da LIBRAS e sua integração à
sociedade. Um dos fatores primordiais é o desenvolvimento
de uma interface capaz de apresentar a LIBRAS de forma
mais atraente, desta forma, uma das tecnologias a ser
utilizada para o desenvolvimento desta ferramenta é a
Realidade Virtual (RV). A RV proporciona uma interface
mais rica em detalhes, principalmente por proporcionar a
visualização e interação em três dimensões. Assim, esta
técnica seria apropriada para a apresentação dos movimentos
que compõe a língua de sinais.
2. LIBRAS – LÍNGUA BRASILEIRA DE SINAIS
As linguagens oral e escrita são as formas mais comuns de
comunicação, mas para os deficientes auditivos esta
comunicação se estabelece em termos gestual-visuais, em
que gestual significa o conjunto de elementos lingüísticos
manuais, corporais e faciais necessários para a articulação e a
significação cultural do sinal.
A linguagem de sinais deve ser considerada a língua
natural dos deficientes auditivos. Dizeu & Caporali[6]
explicam que a criança com esta deficiência, adquire esta
linguagem de forma espontânea sem que seja preciso um
treinamento específico, mas ainda é considerada por muitos
profissionais apenas como gestos simbólicos.
Segundo Quadros [12] a LIBRAS é uma língua
organizada espacialmente de forma altamente restringida.
Analisar alguns aspectos da sintaxe de uma língua requer
"enxergar" esse sistema que é visual-espacial não oralauditivo.
A comunicação em qualquer língua é dotada de regras,
surgindo a necessidade de se conhecer a estrutura de
formação das sentenças. Desta forma pode-se analisar o
sistema sintático e morfológico da língua de sinais.
Quanto as regras sintáticas, Quadros[12] considera que a
partir da intuição de falantes nativos da LIBRAS assume-se
que há três possíveis formas de ordenar as palavras na
LIBRAS: Sujeito-Verbo-Objeto(SVO), Objeto-SujeitoVerbo(OSV) e Sujeito-Objeto-Verbo (SOV). As outras
combinações são consideradas inaceitáveis.
Na língua de sinais, um sinal corresponde a uma palavra
nas línguas orais-auditivas. Segundo Brito[2] o sinal é
formado a partir da combinação do movimento das mãos,
com um determinado formato e em um determinado lugar,
podendo este lugar ser uma parte do corpo ou um espaço em
frente ao corpo.
Três parâmetros primários se combinam para a realização
de um movimento em LIBRAS: a Configuração das Mãos, o
Movimento e o Ponto de Articulação, e também apresenta
parâmetros secundários que são: a disposição das mãos, a
orientação das mãos e a região de contato, além de seus
componentes não manuais como a expressão facial.
A Datilologia, ou alfabeto manual, é a forma de soletrar
palavras com as mãos. Muito utilizado para nomes próprios
de pessoas, geográficos e palavras estrangeiras. No entanto,
nem todos os nomes de pessoas são soletrados.
Freqüentemente cria-se um sinal específico para se referir a
uma determinada pessoa. Não é universal. Países diferentes
possuem sinais datilológicos diferentes.
2.3. Informática na Socialização dos Deficientes Auditivos
como substitutos em avaliações ergonômicas, projeto de
produtos, linhas de montagem, entre outros, antes da
construção dos mesmos. Também podem ser representações
em tempo real dos próprios usuários ou de outros, em
Ambientes Virtuais.
Os HV podem ser implementados com diferentes
enfoques. Torres et al. [15] comentam que muitos projetos
propostos apresentam Humanos Virtuais com aparência e
funcionalidade bastante realistas, usando superfícies
deformáveis e mecanismos de animação baseados em Física,
mas não se importam com o comportamento do agente.
Outras abordagens propõem agentes cognitivos capazes
inclusive de apresentar reações emocionais e personalidade
própria, porém com representação gráfica pobre (textual em
alguns casos).
Assim verifica-se que a utilização de Humanos Virtuais
para recriar ambientes e avaliar as relações entre os seres
humanos nestes ambientes, é de grande importância na
criação de documentação e pesquisas que permitem avaliar o
impacto da presença humana nestes espaços.
O computador é utilizado nas diversas áreas do
conhecimento para auxiliar o ser humano nas tarefas de seu
cotidiano. Pode-se utilizá-lo na socialização dos deficientes
auditivos, desenvolvendo ferramentas e meios para a
comunicação entre eles e com indivíduos ouvintes.
Entretanto Dizeu & Caporali [6] ressaltam que deve haver
a conscientização de que toda esta tecnologia disponível não
é de acesso a toda a população com deficiência auditiva,
especialmente considerando-se nossa realidade social,
cultural e econômica.
Souza e Pinto[14] concluem que em nossa sociedade
informatizada, todos os educandos, inclusive os deficientes
auditivos, necessitam do computador presente em seu
processo de aprendizagem. Para a educação dos indivíduos
que se comunicam de forma visual, a utilização de
ferramentas computacionais passam a ser essenciais.
Os sistemas de RV proporcionam interações que
apresentam uma interface muito próxima à realidade. O
desenvolvimento de uma ferramenta que estimule o
aprendizado e compreensão da língua de sinais seria
apropriado, já que os sinais utilizam-se de gestos humanos.
Estes seriam melhor apresentados através de representações
em 3D. Trata-se de um complemento tecnológico para a
educação especial, que consiste em estimular através de
imagens computadorizadas, o processo de comunicação e
aprendizagem interativa. As principais tarefas deste software
são a gravação, editoração e visualização de gestos e
movimentos da Língua de Sinais.
3. AMBIENTES VIRTUAIS
4.1. Desenvolvimento do F-LIBRAS
Ambiente Virtual (AV) é um ambiente sintético composto
por um conjunto de elementos que estimulam os sentidos do
usuário, causando a presença virtual. Compreende uma
representação, que consiste na modelagem do ambiente e no
conjunto de agentes de efeito compostos de interfaces físicas
e lógicas que interagem com esta representação.
Lamar [8] comenta que a voz e os gestos são as formas
mais naturais de comunicação entre os seres humanos,
entretanto as interfaces ainda são muito primitivas forçando a
nos adaptar aos requisitos de hardware, como por exemplo, o
teclado. Porém muitos pesquisadores tem se dedicado a
criação de meios mais naturais de interface homem-máquina.
As técnicas de Realidade Virtual são apropriadas para atingir
estes objetivos. Pinho [11] destaca que a potencialidade da
Realidade Virtual está exatamente no fato de permitir que
sejam explicados alguns ambientes, processos ou objetos,
não através de livros, fotos, filmes ou aulas, mas através da
manipulação e análise virtual do próprio alvo do estudo.
Visando disponibilizar esta ferramenta sem custo aos
usuários, foram utilizadas tecnologias de livre distribuição,
como JAVA, utilizando-se da sua API (Application
Programming Interface) Java 3D e XML. A Figura 1
apresenta a interface inicial do F-LIBRAS.
4. DESCRIÇÃO DO F-LIBRAS
3.2. Humanos Virtuais
Badler [1] comenta que Humanos Virtuais (HV) são
modelos computacionais de pessoas, que podem ser usados
Figura 1: Interface inicial do F-LIBRAS
A ferramenta foi dividida em três módulos principais:
Editor de Sinais, Interpretador de Sinais e Módulo de
Datilologia.
O Módulo Editor possibilita ao usuário a geração e
gravação dos sinais em LIBRAS, através de movimentos nos
membros específicos do corpo humano, como braços,
antebraços, mãos, dedos, entre outros.
O Módulo Interpretador de sinais tem como função
receber requisições de movimentos, e caso existam no banco
de dados, recuperá-los e apresentá-los ao usuário. Estas
requisições poderiam ser feitas em formato de frases da
língua portuguesa. Cusin [4] apresentou uma arquitetura de
tratamento das frases para conversão separada em dois
módulos: Módulo de Análise e Módulo de RV. O Módulo de
Análise é responsável por receber a sentença em LIBRAS,
analisar e gerar as instruções de movimentos. Essas
instruções são enviadas para o Módulo de RV responsável
pela execução dos movimentos.
O terceiro módulo é o de Datilologia, que é responsável
pela representação das letras no alfabeto manual.
Apesar da descrição da independência das classes,
formando a idéia de modularização, esses módulos
compartilham de alguns pontos em comum entre eles. Para o
usuário da ferramenta, esta modularização torna-se
transparente, mantendo-se a impressão de um ambiente
único. A seguir são apresentados os Ambientes Virtuais que
compõe o F-LIBRAS e suas descrições.
4.2. Ambientes Virtuais do F-LIBRAS
Os módulos de edição, interpretação e datilologia agem
diretamente sobre os Ambientes Virtuais. São esses
ambientes que recebem os comandos e representam as
instruções enviadas pelo usuário do aplicativo.
A modelagem de uma cena virtual é pré-requisito básico
para a exibição do Avatar Humanóide onde serão executados
os movimentos e também para a exibição da datilologia. São
utilizados dois AVs, o primeiro para a representação e edição
dos gestos em LIBRAS e outro para a Datilologia.
Para implementação dos AVs, inicialmente foi necessário
definir o modelo de grafos de cada componente. Este modelo
é utilizado para gerar e demonstrar as relações entre os nós
do grafo (que representam os componentes responsáveis por
posição, escala, cores e forma do objeto).
A seguir serão apresentadas as classes que compõem cada
módulo, destacando as principais e a forma com que estão
relacionadas.
4.3. Classes do F-LIBRAS
Diversas classes estão integradas no F-LIBRAS. A
descrição das principais serve para elucidar os principais
pontos desta arquitetura.
A classe denominada Principal é a responsável pela
interface inicial do aplicativo, fornece a interface gráfica com
o usuário e acesso as funcionalidades. Ela instancia os
objetos da classe Tradutora, responsável pela datilologia e
também as classes responsáveis pela execução dos
movimentos em LIBRAS.
Uma vez que se tenha definido e implementado um
modelo de representação de corpos, a necessidade de aplicar
movimentos sobre este corpo acaba surgindo naturalmente.
Desta forma faz-se necessária a aplicação de movimentos
controlados sobre ele.
Para que os módulos que necessitam implementar
movimentos do ambiente possam agir sobre o Avatar, foi
desenvolvida uma classe para realizar esse trabalho. A classe
InterpoladorBD permite associar um conjunto de
movimentos a um corpo e controlar a execução desses
movimentos. Esta classe representa cada uma das ordens
individuais de movimentação, onde são indicados os
membros do corpo, os eixos e ângulos de rotação.
Para a apresentação dos Ambientes Virtuais de
movimento e datilologia são instanciadas duas classes. São
elas: Universo(datilologia) e Universo2, as quais são
subclasses de JInternalFrame que possibilitam que dois
Ambientes Virtuais possam estar contidos na interface
principal do aplicativo.
A classe Universo2 é responsável pela criação do
ambiente onde agem os módulos de edição e interpretação da
LIBRAS. Nesta implementação, a cena (ou modelo) é uma
instância da classe. Para formação da cena são utilizados
objetos gráficos, um conjunto de luzes e um conjunto de
câmeras virtuais. A classe Universo2 instancia a classe
Avatar, responsável por implementar a representação
humana.
As câmeras virtuais são usadas para simular o ponto de
vista de um observador dentro de uma cena virtual e obter
imagens correspondentes à sua visão. Para isso, foi
implementada a classe Camera(). Esta classe armazena os
parâmetros de diversas câmeras, com ângulos e posições
variadas. As mudanças de posicionamento e ponto de vista
são implementadas em métodos da própria classe Camera().
O Módulo Editor possui três principais classes que
implementam as funcionalidades necessárias para a criação e
gravação dos movimentos. São elas: Controles, KeyFramer e
GravaMovimento.
A classe Controles é a responsável pela seleção do
membro a ser movimentado. A partir desta seleção, são
escolhidos os ângulos desejados. A cada alteração da
movimentação de qualquer um dos eixos são acionadas as
classes Interpolador e KeyFramer.
A partir da classe KeyFramer são definidos os quadroschave (posição final), e a velocidade do movimento. O
movimento completo pode possuir um ou vários quadroschave, onde cada quadro deve representar um segmento do
movimento. Para definição das posições de cada movimento
(quadros-chaves), conforme pode ser observado na Figura 2.
Figura 2: Gerador de Movimentos
Para que as informações do movimento possam ser
reutilizadas é necessário armazenar todos os dados referentes
ao mesmo, como posição dos membros, ângulos de rotação e
quadros-chave. Estes dados são enviados para a classe
GravaMovimento que é responsável pela padronização de
armazenamento, possibilitando a recuperação do mesmo. A
descrição do movimento precisa ser gravada em um formato
tal que possa ser utilizado no interpretador, e também ser
importada para outros ambientes de animação e modelagem
desenvolvidos futuramente. A solução proposta para este
problema foi armazenar os movimentos em três formatos
diferentes: arquivos padrão XML, arquivos texto e banco de
dados relacional.
As classes AnalisadorBD e ExecutorBD são utilizadas na
interpretação dos movimentos, sendo invocadas a partir da
classe Principal, conforme já especificado, e são
responsáveis por realizar o tratamento das sentenças.
A classe AnalisadorBD tem a função de realizar o
tratamento das frases, enquanto a classe ExecutorBD realiza
a busca da palavra no banco de dados de todos os
movimentos correspondentes, para execução através da
classe InterpoladorBD.
5. CONCLUSÕES
Este trabalho apresentou o F-LIBRAS, uma ferramenta
que visa proporcionar aos usuários da LIBRAS um apoio
para a difusão desta linguagem. A idéia é proporcionar tal
melhoria com a utilização de tecnologias emergentes e que
possibilitam a integração das diversas ferramentas utilizadas
no desenvolvimento.
Os resultados obtidos em termos de geração de
movimentos foram satisfatórios, já que os objetos
responderam com rapidez e precisão às instruções enviadas
pelo usuário à ferramenta.
Muito além de simplesmente transformar as diversas
ferramentas em um único sistema, diversos desafios
envolveram esta implementação. Entre eles destacam-se a
integração das classes e o compartilhamento de algumas
funções essenciais para a concepção da ferramenta. Ao longo
desse processo, pôde-se observar as formas de integrar
ferramentas existentes e com implementações diferentes.
A utilização da linguagem Java, confere à biblioteca de
classes desenvolvida, grande portabilidade e versatilidade
para se adaptar a novas situações e novas plataformas.
Como trabalhos futuros, novas formas para captação de
movimentos poderiam ser adicionadas na criação dos
mesmos, utilizando-se de dispositivos não convencionais,
como rastreadores de movimentos. Para isso, os arquivos em
formato TXT seriam utilizados na implementação destes
rastreadores.
Existe também a possibilidade de criação de um serviço
de troca de mensagens em LIBRAS. Aidéia seria que o FLIBRAS possa servir como interface entre duas ou mais
pessoas ligadas em rede ou utilizando a internet, onde
mensagens seriam enviadas e representadas remotamente.
Assim, o formato de arquivo em XML poderia agir como
base e padrão de troca dessas mensagens.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] BADLER, Norman et al. Representing and
Parameterizing Agent Behaviors. University of
Pennsylvania, 2002.
[2] BRITO, Lucinda Ferreira. A Língua de Sinais Brasileira.
2003.
Disponível
em:
<http://www.ines.org.br/ines_livros/fasc7_principal.htm
>. Acesso em: 30 mar. 2006.
[3] CAPOVILLA, Fernando C., et al. Avaliando
Compreensão de Sinais da Libras em Escolares Surdos
do Ensino Fundamental. Revista Interação em
Psicologia, jul./dez. 2004, p. 159-169.
[4] CUSIN, Gislene Marengo. Ambiente Virtual
interpretador de sentenças em português para Língua
Brasileira de Sinais. Dissertação de Mestrado. UNIVEM.
Marília, 2004.
[5] DEUSDADO, Leonel Domingues. Ensino da Língua
Gestual Assistido por Personagens 3D Virtuais.
Dissertação de Mestrado. Universidade do Minho.
Braga, 2002.
[6] DIZEU, Liliane Correia Toscano de Brito; CAPORALI,
Sueli Aparecida. A língua de sinais constituindo o surdo
como sujeito. Educ. Soc. vol.26 n° 91 Campinas.
Mai/Ago 2005.
[7] FUSCO, Elvis. X-LIBRAS: Um Ambiente Virtual para a
Língua Brasileira de Sinais. Dissertação de Mestrado.
UNIVEM. Marília, 2004.
[8] LAMAR, Marcus Vinicius. Hand Gesture Recognition
using T-CombNET. Tese de Doutorado – Nagoya
Institute of Technology. Nagoya, Japan, January 2001.
[9] MARTINS, R. B.; MACIEL, A.; NEDEL, L. P.
SkelMod-3D: Um Sistema Livre e Multiplataforma para
Modelagem e Visualização de Corpos Articulados.
Workshop de Software Livre, 2001. Porto Alegre , 2001.
[10] MOURA, M.C. O surdo: caminhos para uma nova
identidade. Rio de Janeiro: Revinter, 2000.
[11] PINHO, Márcio Serolli. Realidade Virtual como
Ferramenta de Informática na Educação. VII Simpósio
Brasileiro de Informática na Educação, Belo Horizonte,
1996.
[12] QUADROS, Ronice Muller de. A estrutura da frase da
língua brasileira de sinais. II Congresso Nacional da
Abralin. Florianópolis, 2000.
[13] ROSA
JUNIOR,
Onivaldo.
LRVCHAT3D,
Desenvolvimento
de
um
Ambiente
Virtual
Tridimensional Multiusuário para Internet. UFSC Florianópolis, 2003.
[14] SOUZA, Vinícius Costa de; PINTO, Sérgio Crespo C.
da Silva. Sign WebMessage: uma ferramenta para
comunicação via web através da Língua Brasileira de
Sinais – Libras. XIV Simpósio Brasileiro de Informática
na Educação, UFRJ - Rio de Janeiro, novembro de 2003.
[15] TORRES, J. A. R.; MACIEL, A.; NEDEL, L. P. Uma
Arquitetura para Animação de Humanos Virtuais com
Raciocínio Cognitivo. SVR 2002 - SYMPOSIUM ON
VIRTUAL REALITY, 2002, Fortaleza - CE
Proceedings. Fortaleza: SBC, 2002
FLIGHT INSTRUCTOR, UM INSTRUTOR DE VÔO VIRTUAL PARA O
MICROSOFT FLIGHT SIMULATOR X
Rodrigo C. de Farias, Gabriel F. de Almeida, Veronica Teichrieb, Judith Kelner
Universidade Federal de Pernambuco, Centro de Informática
Grupo de Pesquisa em Realidade Virtual e Multimídia
Av. Professor Moraes Rego S/N, prédio da Positiva, 1º andar
Cidade Universitária, Recife, Pernambuco
CEP: 50670-901
E-mail: {rcf3, gfa, vt, jk}@cin.ufpe.br
Resumo – O curso de formação de pilotos, em sua etapa
prática, requer o uso de aeronaves de treinamento, cujo
custo operacional é alto, enquanto simuladores de vôo
permitem a prática de alguns cenários específicos a um
custo inferior. Este artigo apresenta o FlightInstructor, um
instrutor de vôo virtual para o Microsoft Flight Simulator X,
com foco no desenvolvimento dos módulos responsáveis pela
execução e descrição de alguns procedimentos aeronáuticos
abordados na etapa prática do curso.
Palavras-Chave – curso de formação de pilotos, Microsoft
Flight Simulator X, instrutor de vôo virtual, SimConnect.
Abstract – The pilot preparation course, on its practical
stage, requires the use of training aircrafts, whose
operational cost is high. Flight simulators, on the other
hand, allow the practice of some specific scenarios at a
lower cost. This article presents the FlightInstructor, a
virtual flight instructor for Microsoft Flight Simulator X. It
focuses on the development of the modules responsible for
the execution and description of some aeronautical
procedures taught in the practical stage of the course.
Keywords – pilot preparation course, Microsoft Flight
Simulator X, virtual flight instructor, SimConnect
1. INTRODUÇÃO
A aviação é uma área fascinante, que traz satisfação a
muitos dos seus profissionais e entusiastas. Porém, o custo
associado a essa atividade ainda é muito alto, tornando seu
mercado restrito. A etapa prática do curso de formação de
pilotos é uma barreira para muitos alunos devido ao alto
custo operacional das aeronaves de treinamento [1].
Um meio que as escolas de aviação e seus instrutores têm
empregado para reduzir parte desses custos é o uso de
simuladores de vôo, em algumas etapas do curso, que
oferecem ao aluno uma experiência de imersão virtual em
uma aeronave [2]. Além de ter um custo de operação muito
menor, os simuladores permitem a prática em cenários
específicos e são tolerantes às falhas do aluno.
Há simuladores que conseguem representar com muita
precisão o ambiente da cabine e o comportamento de uma
aeronave. Porém, são muito caros e só podem ser adquiridos
por grandes escolas de aviação. O Microsoft Flight Simulator
X (FSX) se encaixa nesse contexto como um simulador de
vôo barato, para PC, e que permite a conexão de diversos
dispositivos de interação para aumentar o grau de imersão do
usuário [3].
Este artigo apresenta o FlightInstructor e seu módulo
ProcedurePerformer. A proposta do FlightInstructor é criar
um instrutor de vôo virtual para o FSX, que servirá como
material complementar para a etapa prática do curso de
formação de pilotos. É uma solução de baixo custo que
permitirá ao aluno praticar alguns conceitos aprendidos no
curso sem a presença de um instrutor de vôo.
O ProcedurePerformer é o módulo responsável pela
execução de procedimentos aeronáuticos, e será o foco do
artigo. Cada tarefa executada pelo instrutor virtual será
exibida para o usuário pela interface da aplicação, como uma
forma de orientá-lo na execução do procedimento.
O FlightInstructor ainda terá outros módulos, como o
FlightAnalyzer, responsável pela análise de um
procedimento executado pelo aluno. Estes módulos serão
desenvolvidos após a conclusão do ProcedurePerformer.
Para torná-la uma ferramenta de ensino eficiente, os
assuntos abordados pelo FlightInstructor serão aqueles que o
FSX simula com mais precisão, como as particularidades do
vôo sob Instrument Flight Rules (IFR) e seus procedimentos,
descritos na publicação ICA 100-12, do Comando da
Aeronáutica do Brasil [4].
A seção 2 deste artigo relaciona alguns produtos
relacionados ao processo de ensino na aviação. A seção 3
descreve alguns conceitos relacionados ao FSX e às
ferramentas que oferece para a criação de uma aplicação. A
seção 4 mostra as etapas seguidas para o desenvolvimento do
módulo ProcedurePerformer. Finalmente, a seção 5 relaciona
os resultados alcançados até o momento e seus trabalhos
futuros.
2. TRABALHOS RELACIONADOS
Existem muitos trabalhos dedicados ao processo de ensino
na aviação, que vão de livros a softwares interativos para PC.
Os cursos de treinamento da Oxford Aviation Training são
exemplos de softwares interativos com recursos multimídia
para facilitar o ensino de diversos assuntos relacionados ao
curso de formação de pilotos [5].
Há ainda os softwares que simulam o comportamento de
certas interfaces de interação da aeronave, de maneira
isolada. Pode-se citar como exemplo o G1000 PC Trainer,
que simula o comportamento dos novos painéis de cristal
líquido que equipam muitas das aeronaves produzidas
atualmente [6].
O livro é uma das mídias mais acessíveis e usadas nas
escolas de aviação. Microsoft Flight Simulator X For Pilots e
Microsoft Flight Simulator as a Training Aid são as
principais referências teóricas usadas no desenvolvimento do
FlightInstructor [7] [8]. Esses livros abordam de forma
eficiente os recursos oferecidos pelo FSX, complementando
a parte prática do curso de formação de pilotos.
O próprio FSX, por exemplo, oferece o Learning Center,
que é uma seção destinada ao ensino dos conceitos básicos
da aviação, para diferentes etapas do curso. Além de material
escrito e ilustrado para a parte teórica, possui checkrides
(testes práticos) e missões, que analisam o comportamento
do aluno em situações específicas. Ainda há a possibilidade
de um instrutor se conectar remotamente ao PC do aluno e
interagir com a aeronave como se estivessem juntos.
Nos checkrides, o instrutor virtual do Learning Center
passa algumas instruções para o aluno e verifica se as
executou corretamente, aprovando-o ou não para a próxima
etapa do curso. Sua limitação é abordar apenas um único
procedimento para cada assunto. Além disso, o Software
Development Kit (SDK) do FSX não oferece recursos para a
modificação ou criação de novos checkrides.
O conceito de missão surgiu na versão X do Flight
Simulator. Basicamente, é um conjunto de objetivos que o
piloto precisa cumprir para ter sucesso. A SDK permite a
criação de novas missões, mas os recursos oferecidos são
limitados, dificultando uma análise precisa das ações
executadas pelo piloto.
O FSX ainda permite a criação de vídeos, que é um
instrumento interessante de ensino, quando se deseja apenas
ilustrar a execução de uma tarefa específica. Esse recurso é
oferecido como material complementar dos livros [7] e [8].
3. CONCEITOS RELACIONADOS
3.1. Microsoft Flight Simulator X
A Microsoft lançou a primeira versão do seu simulador
em 1982 [9]. Vinte e cinco anos depois, após várias versões e
melhorias, lançou a versão X. Uma interface das versões 1 e
X, respectivamente, está ilustrada na Figura 1.
O FSX pode ser utilizado com mouse e teclado, como
dispositivos de entrada. Segundo os autores citados, é o
suficiente para usá-lo de forma eficiente em muitos assuntos
do curso. Mas para aqueles que desejam aumentar a imersão
na simulação, pode-se adquirir mais alguns dispositivos
como yoke ou joystick, pedais e tracker (rastreador) dos
movimentos da cabeça do usuário.
A função do yoke ou joystick é controlar os movimentos
de pitch e roll da aeronave. Como exemplo de yoke, pode-se
citar o Flight Sim Yoke da CH Products, que ainda possui
mais três eixos para o controle dos principais manetes de um
monomotor [10].
A função dos pedais é controlar o movimento de yaw da
aeronave e freá-la em solo. Pode-se citar o Pro Pedals da CH
Products como exemplo [10].
A função do tracker citado é controlar, de forma intuitiva,
a visão do piloto dentro da cabine da aeronave. O TrackIR
4:Pro da NaturalPoint é um dos exemplos [11].
3.2. SimConnect
O SimConnect é um protocolo de comunicação baseado
na
arquitetura
cliente/servidor,
que
permite
o
desenvolvimento de aplicações para o FSX pelo acesso
assíncrono a dados e eventos do simulador [12].
O protocolo usado é o Transmission Control Protocol, e
permite que um cliente acesse várias instâncias do FSX em
computadores distintos, ou que um servidor seja acessado
por vários clientes, em computadores distintos ou não.
O padrão publish/subscriber é usado como base da
comunicação. Basicamente o cliente solicita um pacote de
dados ou envia um evento ao servidor, que o processa de
acordo com o nível de prioridade previamente estabelecido.
A linguagem de programação padrão utilizada pela
Application Programming Interface (API) é C++, mas
oferece um wrapper para C#, que foi a linguagem escolhida
para o desenvolvimento do FlightInstructor. O ambiente de
programação Microsoft Visual C# Express oferece
ferramentas que tornam o desenvolvimento de aplicações em
C# mais produtivo que em C++, em especial na construção
de interfaces gráficas [13].
O SDK do SimConnect só está disponível para os usuários
da versão Deluxe do FSX, mas as aplicações desenvolvidas
podem ser executadas na versão Standard.
4. O MÓDULO PROCEDURE PERFORMER
O desenvolvimento de ProcedurePerformer, bem como da
base do FlightInstructor, passa pelas seguintes etapas,
descritas na seqüência:
–
Fig. 1. Primeira versão do Flight Simulator (esquerda) e sua versão
X (direita).
Segundo os autores dos livros [7] e [8], que são instrutores
de vôo, o FSX simula com precisão diversos aspectos do vôo
real, e é usado como ferramenta de ensino em muitas escolas
de aviação.
–
–
–
–
Estudo dos conceitos básicos da linguagem
programação C#;
Estudo dos conceitos relacionados ao domínio
aplicação;
Estudo da SDK do SimConnect e as particularidades
seu wrapper para a linguagem C#;
Desenvolvimento do EasyConnect, uma camada
abstração para o SimConnect;
Desenvolvimento da lógica de aplicação
ProcedurePerformer.
de
da
do
de
do
4.1. Domínio da Aplicação
Os conceitos relacionados ao domínio da aplicação estão
sendo pesquisados nos livros [7] e [8] durante o seu
desenvolvimento. Porém, é importante ter em mãos outros
livros relacionados ao curso de Piloto Comercial e conceitos
do vôo sob IFR, bem como a legislação específica do tráfego
aéreo e os manuais de operação das aeronaves a serem
adicionadas na aplicação.
4.2. SimConnect para C#
A documentação da API é abrangente e traz vários
exemplos de aplicações simples para ilustrar seus principais
recursos. Porém, a compreensão do seu funcionamento não é
trivial e está focada no uso de C++.
A aplicação cliente e o servidor se comunicam através de
variáveis e eventos. Variáveis representam estados da
simulação, que podem ser lidos, e algumas vezes
modificados; eventos, as ações que o usuário pode executar
para modificar o estado da aplicação.
Há um número muito grande de variáveis e eventos
disponíveis na API, o que abre muitas possibilidades de
interação com o simulador. É um campo aberto para o
desenvolvimento de aplicações relacionadas à aviação.
Há alguns fóruns dedicados ao SimConnect na Internet,
como os da AVSIM e FsDeveloper [14][15]. São fontes de
pesquisa importantes para a compreensão dos detalhes,
limitações e problemas da API.
4.3. EasyConnect
A estrutura de programação oferecida pelo SimConnect
exige muitas linhas de código para a execução de tarefas
relativamente simples. Para se modificar a posição de um dos
manetes da aeronave, por exemplo, são necessárias mais de
20 linhas de código, distribuídas em diversas estruturas da
linguagem de programação usada.
O EasyConnect se encaixa nesse contexto, como uma
camada de abstração entre o FlightInstructor e o
SimConnect, para tornar o código da aplicação legível e
gerenciável. A idéia é tentar separar o código relativo ao
SimConnect da lógica da aplicação, permitindo que essa base
possa ser usada em outros módulos do FlightInstructor, bem
como em outros projetos. A arquitetura do EasyConnect é
apresentada na Figura 2.
A aeronave é representada como uma coleção de
componentes. Cada componente, por sua vez, representa um
ponto de interação com a aeronave, como botões,
mostradores, manetes, etc. Existem componentes que só
permitem a leitura de seus dados, como os mostradores; e
outros que também permitem sua modificação, como botões
e manetes.
A classe MainForm é o ponto de entrada da aplicação,
onde são tratados a abertura e fechamento da conexão com o
FSX, assim como exceções e eventos de sistema do
SimConnect. Um desses eventos é disparado a cada segundo,
e é usado como loop da aplicação.
Cada componente herda da classe Component e é
responsável pelo gerenciamento de um dos pontos de
interação da aeronave. A classe Throttle, por exemplo,
registra-se como listener dos eventos relacionados ao manete
de potência da aeronave. Possui ainda uma variável que
guarda o valor atual da sua posição. A função que modifica
esse valor apenas chama o método apropriado da API, para
sua atualização no servidor. Porém, como a comunicação
cliente/servidor é assíncrona, a função de leitura retorna o
último valor atribuído à variável. A freqüência de atualização
desse valor é determinada na inicialização do componente.
Cada aeronave disponível será carregada de arquivos de
configuração, com todos os seus componentes e
características. Parte do trabalho relacionado a esse módulo
será a definição de uma estrutura genérica para esse arquivo,
além da implementação de um parser para o seu
carregamento.
A classe EasyConnect guarda outros atributos e
métodos relacionados ao SimConnect e é responsável pelo
carregamento da aeronave e inicialização dos seus
componentes.
EasyConnect também tem alguns métodos específicos
para facilitar a execução de tarefas que exigem vários passos
para sua conclusão. Em alguns tipos de aeronave, por
exemplo, o controle da rotação de sua hélice, que é medido
em rotações por minuto (RPM), é feito pelo manete de
potência. Para se chegar a uma determinada rotação, são
necessários pequenos incrementos na posição do manete, até
que se chegue ao valor almejado. O método SetRPM(int
value) de EasyConnect tem um laço que faz os
incrementos necessários no componente Throttle
enquanto checa o componente RPM para verificar se o valor
já foi alcançado.
4.4. Lógica de Aplicação do ProcedurePerformer
Fig. 2. Arquitetura do EasyConnect.
O ProcedurePerformer é o módulo responsável pela
execução dos procedimentos IFR escolhidos pelo usuário e
utiliza o EasyConnect como base de comunicação com o
FSX. Sua arquitetura é ilustrada na Figura 3.
Um procedimento é representado como um conjunto de
estados (State). Cada estado tem uma lista de tarefas
(Task) e uma lista de condições de mudança de estado
(ChangeCondition). A tarefa representa uma ação, como
atingir uma determinada velocidade.
A classe ProcedurePerformer tem uma instância de
EasyConnect, do procedimento a ser executado e uma fila
de tarefas, que é alimentada pelos estados do procedimento.
aviação, ajudando alunos e entusiastas a colocar em prática e
aperfeiçoar os conhecimentos teóricos previamente
adquiridos.
AGRADECIMENTOS
Os autores agradecem ao CNPq, que parcialmente
financiou este projeto.
REFERÊNCIAS BIBLIOGRÁFICAS
Fig. 3. Arquitetura de ProcedurePerformer.
A cada loop da aplicação, se nenhuma tarefa estiver sendo
executada e não houve mudança de estado, a próxima tarefa
da fila é executada. Se houve mudança de estado, as tarefas
do novo estado são adicionadas à fila de tarefas. O seguinte
pseudocódigo ilustra o algoritmo descrito:
void loopEvent() {
if (!isPerformingTask) {
if (someChangeCondition) {
changeState;
enqueueStateTasks;
}
dequeueAndExecuteTask;
}
}
Os procedimentos também serão carregados de arquivos
de configuração para que a aplicação possa ser estendida.
Grande parte do trabalho relacionado a esse módulo será a
definição de uma estrutura genérica para esse arquivo, bem
como a implementação de um parser para o seu
carregamento, que terá como base o parser de carregamento
das aeronaves.
5. CONCLUSÕES E TRABALHOS FUTUROS
Após o estudo do SimConnect, a base da arquitetura do
EasyConnect foi implementada, e algumas tarefas isoladas
do ProcedurePerformer já estão sendo executadas com
sucesso, como a leitura e modificação dos principais
componentes de uma aeronave, de acordo com objetivos
isolados.
A comunicação assíncrona entre o SimConnect e o FSX
não atrapalhou a execução de tarefas críticas, e demonstrou
ser eficiente.
O lançamento do primeiro Service Pack do SimConnect
corrigiu alguns problemas e adicionou novos recursos à API.
Porém, ainda há variáveis e eventos que estão disponíveis na
interface, mas não foram devidamente implementados.
Como trabalhos futuros pode-se citar a conclusão do
módulo ProcedurePerformer, a ampliação do seu banco de
procedimentos e aeronaves, o desenvolvimento do módulo de
integração da interface gráfica do FlightInstructor à interface
do FSX, e do módulo FlightAnalyzer. A validação do
FlightInstructor por instrutores e pilotos também será
importante para torná-la uma ferramenta útil no meio da
[1] Aeroclube de Bauru. Disponível em: site do Aeroclube
de Bauru. URL:
http://www.aeroclubebauru.com.br/site/base.asp?pag=ta
belapreco.asp, visitado em setembro de 2007.
[2] The Art of Flight Simulation. Disponível em: site de
Jonathan Gabbai. URL: http://gabbai.com/academic/theart-of-flight-simulation/, visitado em setembro de 2007.
[3] Microsoft Flight Simulator X. Disponível em: FsInsider.
URL: http://www.fsinsider.com, visitado em setembro
de 2007.
[4] Comando da Aeronáutica do Brasil, Regras do Ar e
Serviços de Tráfego Aéreo, 2006.
[5] Computer based training. Disponível em: site da Oxford
Aviation Training. URL:
http://www.oxfordaviation.net/cbt.htm, visitado em
setembro de 2007.
[6] Garmin G1000. Disponível em: site da Garmin. URL:
https://buy.garmin.com/shop/shop.do?cID=153&pID=64
20, visitado em setembro de 2007
[7] J. V. West, K. Lane-Cummings, Microsoft Flight
Simulator X For Pilots, Wiley Publishing, Indianapolis,
2007.
[8] B. Williams, Microsoft Flight Simulator as a Training
Aid, Aviation Supplies & Academics, Newcastle, 2006.
[9] History of Microsoft Flight Simulator. Disponível em:
Wikipedia. URL:
http://en.wikipedia.org/wiki/History_of_Microsoft_Fligh
t_Simulator, visitado em setembro de 2007.
[10] Flight Sim Yoke e Pro Pedals. Disponível em: site da
CH Products. URL: http://www.chproducts.com/retail/,
visitado em setembro de 2007.
[11] TrackIR 4:Pro. Disponível em: site da NaturalPoint.
URL: http://www.naturalpoint.com/trackir/02products/product-TrackIR-4-PRO.html, visitado em
setembro de 2007.
[12] About SimConnect. Disponível em: FsInsider. URL:
http://www.fsinsider.com/developers/Pages/AboutSimC
onnect.aspx, visitado em setembro de 2007.
[13] Microsoft Visual C# Express. Disponível em: MSDN.
URL: http://msdn2.microsoft.com/enus/express/aa700756.aspx, visitado em setembro de
2007.
[14] MS FSX SimConnect Forum. Disponível em: The
AVSIM Forums. URL:
http://forums.avsim.net/dcboard.php?az=show_topics&f
orum=255, visitado em setembro de 2007.
[15] SimConnect portal. Disponível em: FsDeveloper.com.
URL: http://fsdeveloper.agerrius.nl/simconnect/, visitado
em setembro de 2007.
IMPLEMENTAÇÃO DE REALISMO NA INTERAÇÃO EM UM FRAMEWORK
PARA TREINAMENTO VIRTUAL
Cléber Gimenez Corrêa, Adriano Bezerra, Ana C. M. T. G. de Oliveira, Fátima L. S. Nunes
Centro Universitário Eurípides de Marília (UNIVEM)
Laboratório de Aplicações de Informática em Saúde (LApIS), Marília, Brasil
correacleber@yahoo.com.br, adrianobezerra1@yahoo.com.br, anatiessi@gmail.com,
fatima@univem.edu.br
Resumo – Este artigo apresenta um módulo de interação a
ser implementado em um framework de Realidade Virtual
(RV) para treinamento médico, visando a obter mais
realismo em aplicações para simular exames de biópsia. O
módulo suporta dispositivos convencionais (teclado e mouse)
e não-convencionais (equipamento háptico e luva de dados),
permitindo desenvolver aplicações de acordo com a
disponibilidade financeira e o grau de realismo desejado.
Com os dispositivos, é possível navegar no ambiente,
manipular objetos virtuais e controlar o sistema durante a
sessão de treinamento.
Palavras-Chave – Dispositivos convencionais, dispositivos
não-convencionais, interação.
Abstract – This paper presents a proposal of an interaction
module to be implemented in a Virtual Reality (VR)
framework for medical training, aiming at to obtain more
realism in applications to simulate biopsy examinations. The
module supports conventional (keyboard and mouse) and
non-conventional devices (haptic equipment and dataglove),
allowing to develop applications according to financial
availability and desired degree of realism. With the devices,
is possible to navigate on the environment, manipulate
virtual objects and control the system during the training
session.
Keywords – Conventional devices, non-conventional devices,
interaction.
1. INTRODUÇÃO
Diversas pesquisas estão sendo realizadas com o intuito de
tornar aplicações de RV mais realistas, principalmente
aquelas voltadas ao treinamento médico, permitindo aos
profissionais e estudantes de medicina, adquirir e aumentar
seus conhecimentos na execução de determinados
procedimentos.
Neste contexto, existem os Ambientes Virtuais (AVs), que
são construídos com técnicas de RV, e os dispositivos de
comunicação, como mouse, teclado, monitor, luva de dados,
dispositivo háptico, capacete, entre outros, que têm papel
importante, pois propiciam a interação entre ser humano e
computador. Os dispositivos chamados não-convencionais
podem elevar o nível de realismo de uma simulação, como
uma luva de dados mapeando os movimentos da mão do
usuário para o simulador, ou um dispositivo háptico
funcionando como um instrumento, que é manipulado por
um médico durante a execução de um determinado
procedimento.
A interação em AVs envolve navegação, que é a
movimentação do usuário pelo ambiente, observando suas
características; seleção, que consiste na escolha de um ou
mais objetos virtuais dentre um conjunto de objetos;
manipulação, que envolve a alteração das características de
objetos selecionados, tais como: rotação, posição, escala,
entre outras; e controle do sistema, que é a modificação do
estado do sistema ou modo de interação [3].
Quando trata-se de treinamento de procedimentos
médicos, os AVs oferecem diversas vantagens, a citar:
diversidade de casos, inexistência de riscos a pacientes,
médicos e estudantes da área, disponibilidade do Ambiente
Virtual (AV) [6].
Um recurso interessante a ser utilizado na construção de
aplicações, uma vez que aumenta a produtividade, são os
frameworks, que podem ser definidos como o projeto e
implementação abstratos com o objetivo de desenvolver
aplicações em um determinado domínio de problemas,
aproveitando códigos já implementados [4].
Este artigo apresenta o desenvolvimento de um módulo de
interação com suporte a diversos dispositivos dentro de um
framework de Realidade Virtual orientado a objetos,
denominado ViMeT (Virtual Medical Training), com ênfase
em um dispositivo háptico.
2. IMPLEMENTAÇÃO DA INTERAÇÃO
A implementação do módulo de interação considerou as
classes já existentes em um framework em construção. Por
isso, inicialmente é apresentado o framework e, em seguida,
as considerações sobre a interação em questão.
2.1 O ViMeT
O ViMeT é um framework de RV para gerar aplicações de
treinamento médico desenvolvido em linguagem de
programação Java, usando a API (Application Programming
Interface) Java3D. Fornece características e funcionalidades
básicas por meio de classes e métodos, como: deformação,
detecção de colisão, modelagem de objetos tridimensionais,
para facilitar a construção de aplicações desta natureza [2].
As aplicações geradas disponibilizam dois objetos
sintéticos que representam um órgão humano e um
instrumento médico. O usuário pode manipular o
instrumento médico até que a aplicação identifique que
houve uma colisão, realizando a deformação do local
selecionado no objeto que representa o órgão humano,
conforme pode ser verificado na Figura 1.
Fig. 1. Exemplo de aplicação gerada pelo ViMeT [2]
A Figura 2 apresenta o diagrama de classes do ViMeT,
sendo que as classes em cinza contêm as características e
funcionalidades dos dispositivos que compõem o módulo de
interação.
Fig. 2. Diagrama de classes do ViMeT
2.2 Módulo de interação
O módulo de interação deve proporcionar a navegação
pelo AV, a manipulação de objetos virtuais e o controle do
sistema. Não há a ocorrência da seleção, pois os objetos
virtuais estão associados aos dispositivos considerados. São
considerados atualmente quatro dispositivos: teclado, mouse,
luva de dados e equipamento háptico.
A Figura 3 mostra o funcionamento do módulo de
interação. O desenvolvedor pode optar pela combinação de
dispositivos de acordo com a disponibilidade financeira,
visto que os equipamentos não-convencionais possuem custo
maior quando comparados com os convencionais. No
entanto, grau de realismo maior é fornecido pelos
dispositivos não-convencionais, visto que sua manipulação é
semelhante ao procedimento executado no mundo real.
Neste módulo de interação é previsto que a luva e o
teclado sejam utilizados para simular o ato de segurar o
objeto que representa o órgão humano. O mouse e o
dispositivo háptico são usados para manipular o instrumento
médico. Uma mão virtual é disponibilizada para representar
os movimentos da mão e dos dedos do usuário em relação
aos atos de segurar e soltar o órgão humano.
As setas posicionadas na Figura 1 indicam a associação
entre os objetos virtuais e os dispositivos, sendo que a seta
bidirecional entre o equipamento háptico e o instrumento
médico indica que, além de enviar informações ao
computador, o dispositivo também recebe informações para
gerar o feedback tátil ou retorno de força.
2.3 Dispositivos
No desenvolvimento do módulo de interação foram
adotados os seguintes dispositivos: mouse comum, teclado,
uma luva de dados 5DT Data Glove 5 Ultra, fabricada pela
5DT (Fifth Dimension Technologies), e um equipamento
háptico, modelo PHANTOM Omni, desenvolvido pela
empresa SensAble Technologies.
O mouse, de acordo com as coordenadas x e z captadas do
usuário pelo dispositivo, e enviadas ao computador, realiza
movimentações no objeto virtual que representa o
instrumento médico nos eixos x e y na tela do computador.
Além disso, permite a navegação pelo AV em determinados
momentos durante a interação.
Com o teclado, teclas específicas ao serem pressionadas
indicam que a mão do usuário está sendo fechada para
segurar o objeto que representa o órgão humano. A liberação
destas indica que a mão está sendo aberta, e o órgão humano
virtual deve ser solto. O teclado também permite controlar o
sistema, alterando, por exemplo, o modo de interação, de
navegação pelo AV para manipulação da seringa virtual com
o uso do dispositivo mouse, conforme acionamento de teclas.
A luva de dados possui cinco sensores, que permitem a
captação de informações como a flexão dos dedos e a
orientação da mão real [1], que são transferidas ao
computador. Da mesma forma que o teclado, indicam o ato
de segurar e soltar o órgão pelo usuário.
Por último, o dispositivo háptico, que pode imitar um
instrumento médico, como seringa ou agulha, capta
movimentações e fornece um retorno de força. O termo
háptico consiste na ciência do toque, englobando força e
sensação propiciadas pelo toque [5].
Desta forma, informações de movimentação do
dispositivo, como rotação e translação são enviadas ao
computador, e o objeto virtual que representa o instrumento
médico é mapeado para as coordenadas da tela do
computador. Entretanto, o retorno de força deve ser
calculado pela aplicação por meio de fórmulas matemáticas,
de acordo com o tipo de objeto e a ação do usuário, e deve
ser enviado ao dispositivo para causar sensações táteis no
usuário. O dispositivo PHANTOM Omni, visualizado na
Figura 4, possui seis graus de liberdade de movimentação
Fig. 3. Funcionamento do módulo de interação
(translação e rotação nos eixos x, y e z), e três graus de
liberdade no retorno de força (x, y, e z) [7].
Fig. 5. Diagrama de camadas do OpenHaptics Toolkit [7]
Fig. 4. PHANTOM Omni [7]
A inclusão dos dispositivos convencionais foi
implementada em linguagem Java. Para a luva e o
dispositivo háptico está sendo adotada, além da linguagem
Java, e sua a API Java3D, a linguagem de programação C, a
fim de permitir o uso dos drivers nativos fornecidos pelos
fabricantes.
As funções destas bibliotecas que compõem o conjunto de
ferramentas OpenHaptics Toolkit, cujo diagrama é
visualizado na Figura 5, permitem a programação e o
controle do equipamento em alto e baixo nível, por meio de
utilitários; da HDAPI (Haptic Device API), que propicia um
controle direto do dispositivo; e da HLAPI (Haptic Library
API), que propicia a interação entre o equipamento e objetos
virtuais, modelados por exemplo, em OpenGL (Open
Graphics Library).
A integração das linguagens C e Java ocorre por meio do
recurso JNI (Java Native Interface), que compõe o JDK
(Java Development Kit), e permite que um programa em
Java, com a utilização de métodos nativos, chame funções
escritas em C, a linguagem nativa neste caso. Para isso, é
necessário a criação de bibliotecas de ligação, as chamadas
DLLs (Dynamic-Link Libraries) [8].
A Figura 6 mostra o fluxo de informações entre o usuário
e o sistema no computador por meio de dispositivos, e o
fluxo entre as partes do sistema envolvidas na integração das
linguagens, que é promovida pela biblioteca Haptic.dll.
Fig. 6 Diagrama de integração e interação
Desta forma, a aplicação criada por meio do ViMeT em
linguagem Java e Java3D, gera o AV com os objetos, detecta
colisões, realiza deformação, enviando informações para o
usuário via monitor (movimento dos objetos virtuais por
exemplo). Além disso, envia e recebe dados das funções em
C (feedback de força e coordenadas), implementadas com o
auxílio do OpenHaptics Toolkit, que oferece funções prédefinidas para captar e retornar parâmetros do dispositivo, o
qual recebe movimentos e envia sensações ao usuário.
3. AVALIAÇÃO
Em paralelo à implementação, está sendo preparada uma
avaliação, que deve ser realizada com o auxílio de
profissionais de medicina, onde aspectos computacionais e
humanos serão levados em consideração.
Por isso, para analisar o desempenho do sistema, durante a
execução da aplicação, o tempo de resposta do sistema a uma
ação do usuário deverá ser computado para cada combinação
de dispositivos (mouse e teclado, mouse e luva de dados,
equipamento háptico e teclado, equipamento háptico e luva
de dados).
O objetivo é verificar se a interação não está sendo
prejudicada com algum atraso na confecção da cena, ou no
retorno de força no caso do dispositivo háptico, pois há a
renderização gráfica e a renderização háptica, existe uma
combinação de dispositivos em cada de sessão de
treinamento, a integração entre Java e C, e a presença de
dispositivos não-convencionais. Por exemplo, para o
dispositivo háptico é necessário um processamento de
informações mais elevado se comparado com o mouse, uma
vez que possui seis graus de liberdade, retorno de força.
O tempo de execução do procedimento de cada usuário
deverá ser calculado para cada combinação de dispositivos,
verificando qual combinação adapta-se de forma satisfatória
aos usuários.
Um questionário dividido em duas partes deve ser usado
também: uma antes e outra após o uso da aplicação. A
primeira apresenta questões sobre o nível de experiência com
dispositivos de RV e aplicações desta natureza, nível de
experiência na realização de procedimentos de punção,
entendimento da tarefa e entendimento do modo de utilização
do sistema. A segunda apresenta questões sobre facilidade de
uso, intuição, combinação de dispositivo desejável, grau de
realismo, dificuldades encontradas e sugestões.
Uma análise dos dados será elaborada, demonstrando o
tempo de resposta, o tempo de execução, a comparação entre
dispositivos que manipulam o órgão (teclado e luva) e
dispositivos que manipulam o instrumento (mouse e
equipamento háptico), e a comparação entre combinações de
dispositivos.
4. CONCLUSÕES
Como resultados até o momento tem-se o funcionamento
pleno dos dispositivos convencionais (mouse e teclado) e o
funcionamento parcial da luva de dados e do equipamento
háptico. Verifica-se, como esperado, que os dispositivos
convencionais não produzem a sensação de realismo
necessária ao treinamento médico.
A avaliação deve apresentar dados interessantes, no
entanto, observações preliminares podem ser feitas, como: o
dispositivo háptico ser considerado mais intuitivo, e poder
atingir um maior grau de realismo que o mouse, além da
eficiência da combinação de dispositivos com grau de
realismo maio, pois às vezes, pode-se sacrificar desempenho,
de forma que não afete a interação, para refinar o envio e
recebimento de informações, tornando a aplicação mais
próxima do real.
Um sistema de RV para auxiliar profissionais de medicina
e estudantes da área, pode contribuir na aquisição e aumento
de conhecimento, trazendo diversos benefícios, como a
diminuição de riscos a saúde dos pacientes, causados pela
execução inadequada de procedimentos. As aplicações
geradas pelo framework ViMeT permitirá que o
desenvolvedor escolha os dispositivos para a aplicação de
acordo com a disponibilidade financeira dos usuários.
Entretanto, para aproximar-se do real, um retorno de força
mais preciso, calculado de acordo com os tipos de tecido do
órgão, diversidade de patologias, tratamento da inclinação da
agulha no ato da colisão e durante a perfuração do órgão,
devem ser implementados.
AGRADECIMENTOS
Os autores agradecem ao CNPq pelo apoio financeiro
(Processo n° 472348/2004-3).
REFERÊNCIAS
[1] 5DT Fifth Dimension Technologies, disponível em:
http://www.5dt.com/hardware.html,
acessado
em
06/03/2007.
[2] A. C. M. T. G. Oliveira, “ViMeT – Um Framework em
Java para Aplicações de Treinamento Médico usando
Realidade Virtual”, in Proc. 9th SVR Symposium on
Virual. and Augumented Reality, Petrópolis, RJ, Brasil,
p. 253-262, 2007.
[3] D. A. Bowman, LA J. J. la Viola Jr., E. Kruijiff, I.
Poupyrev, “An Introduction to 3-D User Interface
Design”, in Presence: Teleoperators and Virtual
Environments, p. 96-108, 2001.
[4] J. Bosch, M. Mattsson, “Framework problems and
Experiences”, in M. J. Fayad, R. Johnson, D. Schmidt:
Building Application Frameworks: Object-Oriented
Foundations of Framework Design, New York: John
Wiley and Sons., p. 55-82, 1999.
[5] J. M. Burns, A. G. Chila, D. C. Eland, J. N. Howell, JR,
R. R. C., M. Srivastava, R. I. Willians, “The Virtual
Haptic Back for Palpatory”, in Proc. 6th International
Conference on Multimodal. Interraction, p. 191-197,
2004.
[6] L. S. Machado, R. M. Moraes, D. F. L. Souza, M. C. O.
Valdeck, “SITEG – Sistema Interativo de Treinamento
em Exame Ginecológico”, in Proc. 8th SVR Symposium
on Virtual. and Augumented Reality, Belém, PA, Brasil,
CD-ROM, 2006.
[7] SensAble Technologies, Disponível em:
http://www.sensable.com, acessado em 06/03/2007.
[8] Sun, “Java Native Interface Specification”, Disponível
em:
http://java.sun.com/j2se/1.4.2/docs/guide/jni/spec/jniTO
C.html, acessado em 15/03/2007.
INCORPORANDO COLABORAÇÃO COM REALIDADE VIRTUAL E
AUMENTADA EM AMBIENTES DE EDUCAÇÃO À DISTÂNCIA
Clodonil H. Trigo1, Cláudio Kirner2.
1 – Centro Universitário Adventista de São Paulo
2 – Universidade Metodista de Piracicaba
clodonil@nisled.org, ckirner@gmail.com
Resumo - A Educação a Distância é uma estratégia de
ensino que ganhou novos espaços com o surgimento da
Internet. Nesse contexto, aplicações de Educação a
Distância são gerenciadas por Ambientes Virtuais de
Aprendizagem com predominância dos aspectos textuais. No
sentido de tornar esses ambientes mais potentes e naturais,
este artigo apresenta o desenvolvimento de um novo
Ambiente Virtual de Aprendizagem, denominado Avadpt, que
contém um conjunto de módulos ricos em colaboração e
manipulação, como módulo de realidade virtual, realidade
aumentada. Esse ambiente é adaptativo, de acordo com o
grau de familiaridade do professor com a tecnologia, e pode
ser usado separadamente ou em conjunto com outros
ambientes como o Moodle.
Palavras-Chave – Educação à Distância, Realidade Virtual,
Realidade Aumentada, Colaboração.
Abstract – As the Internet is growing, distance education
has gained newspace as a strategy of teaching. In this
context, distance education applications are managed by
virtual learning environments. In order to make these
environments more powerful and natural, this article
presents the development of a new Virtual Learning
Environment, named Avadpt, which contains a group of
collaboration modules, involving virtual reality, augmented
reality and media-center. This environment is adaptive,
according to the each teacher expertise in the technology
and can be used separately or together with other
environments like Moodle.
1
Keywords – E-larning, Virtual Reality, Augmented Reality,
Collaboration
1. INTRODUÇÃO
A Educação a Distância (EAD) é uma modalidade de
ensino que, desde o início do século XIX, tornou-se uma
oportunidade positiva para as novas abordagens da
aprendizagem [12]. Entretanto, com o surgimento da
Internet, uma nova abordagem integrada dos aspectos
deficitários dos modelos anteriores foram sanados, como por
exemplo, a interação do professor com o aluno. A EAD ideal
para alguns pesquisadores é aquela que faz uso das
potencialidades e características da Internet [4].
A Internet possibilitou o surgimento de novos cursos à
distância no Brasil. Esses cursos começaram a ser oferecidos,
através de lista de e-mail, websites de relacionamento,
software de mensagens instantâneas até chegar aos software
de gerenciamento de cursos, também conhecidos como LMS
(Learning Management System) ou AVA (Ambientes
Virtuais de Aprendizagem).
Os AVA têm que propiciar ferramentas e ambiente para a
comunicação síncrona e assíncrona entre aluno e professor.
Atualmente, há um grande número de AVA. O portal da
UNESCO na Internet relaciona 63 software gratuitos,
enquanto o sourceforge, que é o maior repositório de projetos
gratuitos em software livre, relaciona 53 projetos, além dos
software de empresas especializadas na área.
Entre todos os AVA, o Moodle (Modular Object-Oriented
Dynamic Learning Environment) [8], tornou-se um padrão
de fato, no Brasil, em âmbito federal (acadêmicos) e também
entre as universidades privadas.
O Moodle contém um conjunto muito amplo de módulos,
que na grande maioria é textual. E isso dificulta o
desenvolvimento colaborativo, por não possibilitar uma
cooperação mais profunda.
Para implementar colaboração de maneira eficiente,
Realidade Virtual e Realidade Aumentada são usadas como
ferramentas de visualização 3D e interação em tempo real.
Este artigo apresenta a construção de um novo modelo de
AVA que pode ser usado em separado ou complementar ao
Moodle, permitindo aos educadores e alunos interagirem e
colaborarem, utilizando realidade virtual e realidade
aumentada, de forma que o ambiente seja adaptativo de
acordo com o grau de familiaridade do professor com a
tecnologia.
O ambiente, denominado Avadpt, também tem como
proposta contribuir com os professores que estão começando
a trabalhar com EAD. Ao contrário do Moodle, que é
complexo e apresenta-se ao usuário como um todo, o
Avadpt, funcionando como um sistema adaptativo,
apresenta-se de forma simples ao usuário, expõe
gradualmente suas funcionalidades e possibilita o avanço do
professor até este estar apto a utilizar o todo. Além disso, o
usuário pode usá-lo para complementar o Moodle,
selecionando funcionalidades específicas como aquelas
voltadas para colaboração.
O fator que motivou este projeto é o número baixo ou
inexistente de AVA com possibilidade de implementar
laboratórios tangíveis com realidade aumentada. Além disso,
poucos ambientes virtuais são adaptativos de acordo com o
nível de familiaridade do professor com a tecnologia.
1. COLABORAÇÃO EM AMBIENTES DE EAD
Colaboração representa o ato de desenvolver ou cooperar
trabalhos em conjuntos. Na mesma linha [7], define
colaboração como sendo o trabalho conjunto entre duas ou
mais pessoas visando o mesmo objetivo.
Há algum tempo, percebeu-se que o trabalho em grupo
bem estruturado alcança resultados maiores que os obtidos
com a soma dos resultados individuais [7]. Além dessas
vantagens, a colaboração propicia, aos membros do grupo,
um rápido alinhamento dos pensamentos e objetivos,
eliminando a inconsistência de raciocínio uns dos outros [7].
Segundo o modelo 3C [7], para existir colaboração é
necessário estarem presentes: comunicação, coordenação e
cooperação, no mesmo contexto. O modelo 3C funciona
porque, com a comunicação, as pessoas compartilham o
mesmo problema ou tarefa, assumindo compromissos. Tais
compromissos precisam ser coordenados para garantir que
sejam cumpridos. Para cumprir os compromissos é
necessário resolver problemas e, para tanto, a cooperação
entre os participantes é necessária [7].
Após definir os conceitos de colaboração, é necessário
delimitar o local e as ferramentas utilizadas para facilitar a
colaboração. A colaboração suportada por computador, é
uma vertente da colaboração tradicional ou presencial.
Groupware ou Sistema de Trabalho Cooperativo Apoiado
por Computador (CSCW – Computer Supported Cooperative
Work) é o termo utilizado para determinar o suporte
tecnológico ao trabalho colaborativo [2]. É possível citar
como exemplo de Groupware, correio eletrônico, vídeoconferência, editor de texto colaborativo etc.
Na EAD, é possível citar um Ambiente Virtual de
Aprendizagem (AVA) como sendo um Groupware - desde
que o ambiente ofereça recursos que possibilitem a
comunicação, coordenação e cooperação entre usuários.
Para existir colaboração, é preciso transformar o acesso
dos usuários ao AVA em uma comunidade ativa.
Para isso, é necessário que o ambiente ofereça ferramentas
que possibilitem a comunicação entre os usuários. Apenas a
comunicação não constitui colaboração, conforme o modelo
3C.
Portanto, para um AVA ser considerada apta a contribuir
com a colaboração entre os usuários, deve conter módulos
com as propriedades de comunicação, coordenação e
cooperação tanto no modelo síncrona e assíncrona.
Com a análise de alguns AVA como: TelEduc, Moodle,
Atutor e Dokeos, procurou-se identificar os módulos que
cada um disponibiliza para a colaboração. A tabela 1 mostra
uma relação de módulos por ambiente.
Tabela 1 – Módula por ambiente
Os módulos apresentados na tabela 1 possuem nomes
genéricos. Alguns AVA apresentam ferramentas com as
mesmas funcionalidades, porém com nomes diferentes. Por
este fato é necessário definir a funcionalidade básica
analisada em cada módulo.
Fórum: Segunda [9] o fórum é um ambiente assíncrono
de envio de mensagens pela Internet. As mensagens são
enviadas para um grupo de pessoas com afinidades no
assunto tratado. O fórum é o ambiente perfeito para
aprofundamento reflexivo dos assuntos tratado.
Chat: Também conhecido de sala virtual de bate-papo, é
um módulo que permite a comunicação síncrona entre os
participantes. A grande vantagem deste módulo é a
possibilidade de um encontro em tempo real para discussão
de um assunto.
Wiki: Neste projeto, são considerados WIKI todos os
módulos
que
possibilitam
desenvolver
textos
colaborativamente. Vários usuários podem trabalhar em um
texto de forma harmoniosa e colaborando entre si. Existem
também outros módulos com a mesma tecnologia para
desenvolvimento de apresentação. A ferramenta controla a
versão e mostra quem alterou o trabalho.
Correio: Correio eletrônico possibilita a troca de
mensagens entre os usuários. A comunicação entre os
usuários é direcional e assíncrono.
Arquivos: Os módulos de arquivos devem ter a
capacidade de armazenar os arquivos como um disco virtual
e também de compartilhar estes arquivos entre os usuários.
Possibilitando que outros opinem sobre o arquivo.
Vídeo Conferência: A vídeo conferência possibilita uma
comunicação síncrona com áudio e vídeo entre os usuários,
possibilitando um contato interpessoal. A proposta deste
módulo é amenizar a falta de contato interpessoal, decorrente
da educação a distância.
Áudio Conferência: O módulo de áudio conferência
possibilita a comunicação síncrona entre duas pessoas
através do som. É possível fazer uma analogia deste módulo
com o uso do telefone. A grande vantagem do módulo áudio
conferência, em relação à vídeo conferência, está na menor
utilização de recursos computacionais.
Blog: Este módulo que permite que um texto seja
publicado e outros possam emitir opiniões. Em um processo
colaborativo, este módulo pode ser utilizado para socializar
uma parte do trabalho.
Álbum de Fotografia: Este módulo é importante para
socializar os membros de um grupo que estão separados.
2. COLABORAÇÃO COM REALIDADE VIRTUAL E
AUMENTADA
Um ambiente de realidade virtual (RV) é uma
representação do mundo real. Assim sendo, o ambiente de
realidade virtual multi-usuário representa um mundo mais
real comparado à realidade virtual mono-usuário. Isso torna
esse ambiente ideal para interações, compartilhamento e
cooperação em tempo real através da computação [1].
As habilidades sociais dentro do ambiente de realidade
virtual são inerentes ao ser humano, tornando o ambiente
propício à colaboração [1].
Os ambientes RV multi-usuários têm apresentado um
elevado nível de crescimento. Isso acontece, devido ao
grande potencial deste tipo de aplicação, principalmente nas
áreas de treinamento e educação.
Este tipo de sistema tem a característica de fazer a imersão
de usuários geograficamente separados para o mesmo espaço
virtual compartilhado. Utilizando a Internet é possível
melhorar o desempenho coletivo através da troca de
informações [6].
Os ambientes de RV colaborativos proporcionam:
sensação de espaço compartilhado, sensação de presença,
sensação de tempo, sensação de comunicação e modo de
compartilhamento.
O acesso multi-usuário simultâneo é uma condição
necessária, mas não suficiente para que um ambiente de RV
seja um ambiente de realidade virtual colaborativa [1].
Existem vários exemplos de aplicações de realidade
virtual colaborativa. Um exemplo é o AVICE (Ambiente
Virtual Colaborativo para o Ensino a Distância): Surgiu da
necessidade de prover maior interação síncrona entre
participantes de um curso a distância [10]. Uma das
características do AVICE foi a sua criação baseada na sala de
aula tradicional e nos trabalhos de colaboração inerente a ela
[10].
Além da realidade virtual, a realidade aumentada (RA) em
rede propicia que objetos virtuais sejam compartilhados no
espaço real, e que todos possam ter a mesma sensação de
espaço, presença e tempo [6]. Além de poder manter
comunicação entre o usuário.
Um ambiente de RA implementado em rede amplia
grandemente a potencialidade de aplicações educacionais.
Por proporcionar grande potencial de recursos aos
ambientes de aprendizagem, o estudo da RA em ambientes
colaborativos têm sido alvo da atenção de muitos trabalhos
[3]. Adiante alguns trabalhos para exemplificação dentro
desta abordagem:
Em [13], é proposto uma aplicação para treinamento
industrial colaborativo baseado em RA distribuída. Esta
aplicação permite a usuários remotos colaborarem numa
tarefa de treinamento por meio do compartilhamento do
mundo virtual, onde objetos reais são substituídos por
objetos virtuais.
Outro trabalho interessante é apresentado por [11], onde é
adotado um sistema de computação móvel, por participante,
para navegação colaborativa e pesquisa de informações em
ambientes urbanos, de forma que se permita maior
autonomia em relação ao ambiente compartilhado entre os
usuários.
O Construct3D [5], é apresentado como proposta para o
uso em ambientes colaborativos com RA para o ensino de
matemática e geometria. Trata-se de uma ferramenta
especificamente designada para estudos em geometria. Com
ele, é possível colaborativamente realizar construções
geométricas tridimensionais.
Também o projeto “Mãos colaborativas com realidade
misturada” [6] visa permitir que as mãos de várias pessoas
interajam diretamente em ambientes virtuais, construindo-os
e alterando-os, de forma que os participantes aprendam
fazendo, ao mesmo tempo em que geram resultados para
serem usados por outras pessoas que visitarem os ambientes
depois de terminando. O projeto consiste na elaboração de
um espaço remoto compartilhado, onde usuários podem
realizar tarefas colaborativas com suas mãos, interagindo
com objetos virtuais.
3.
INCORPORANDO COLABORAÇÃO COM
REALIDADE VIRTUAL E AUMENTADA EM
AMBIENTE DE EAD.
O protótipo do AVA desenvolvido com características de
ser adaptável ao professor e de possuir colaboração com RV
e RA recebeu o nome de Avadpt. O AVA pode ser usado de
modo completo, fazendo uso de todos os módulos, ou no
modo parcial, em conjunto com outros AVA.
O AVA torna-se adaptável ao professor, através de um
agente que monitora a freqüência e agilidade do professor no
módulo. O agente também utiliza recursos de formulários
(questionários) para identificar o nível de usabilidade do
professor.
Todos os módulos têm três níveis. O primeiro nível para
os professores iniciantes com informações e formulários
simples, o segundo para professores intermediários com
formulários e opções básicas e o terceiro para professores
avançados com todas as funcionalidades do módulo. O
professor pode optar por escolher o sistema adaptativo ou
não.
Além da característica de adaptação, o Avadpt conta com
os seguintes módulos:
Chat: Módulo que implementa um bate-papo entre os
participantes do curso. Professor e alunos poderão agendar
uma sessão de bate-papo. Poderão ocorrer sessões
simultâneas em salas separadas.
Chat p2p: Módulo que implementa um chat parecido
com as ferramentas de mensagem instantâneas. Apenas dois
(2) usuários participam da sessão aberta.
Média-Center: A função principal desde módulo é
transmissão de vídeo em stream dentro do AVA. Abaixo do
vídeo, o aluno terá a opção de registrar os pontos importantes
do vídeo e também compartilhar os registros com amigos e
professores como mostra a figura 1.
Figura 1 – Mídia-Center
Fórum: O módulo de fórum foi baseado no modelo do
TelEduc. O professor tem autonomia para criar e fechar os
fóruns, tornando-os apenas para acesso de leitura. O fórum
poderá ser moderado ou sem moderação. No modelo
moderado, o professor poderá alterar as mensagens postadas
ou apagar mensagens. Já no modelo sem moderação, o
professor não poderá alterar os textos e nem apagar
mensagens. Além disso, este módulo tem interligação com o
módulo do Faq. O Professor poderá escolher perguntas para
comporem a Faq.
Faq: Os AVA em sua grande maioria utilizam o Faq de
forma desinteressante. No Teleduc, por exemplo, o professor
tem que cadastrar as perguntas e as respostas no Faq.
Analisando a possibilidade de os Faq serem reutilizados, foi
proposto um modelo de Faq novo. Ele é construído a partir
do Fórum. Portanto, os questionamentos que surgem no
fórum corrente podem ser armazenados no Faq. Assim o Faq
é construído dinamicamente, dando sentido para a sua
existência. O professor poderá editar, no Faq, as respostas
dos alunos para ajuntá-las.
Realidade Virtual: Esse módulo implementa um
ambiente virtual em VRML para desenvolver trabalhos
colaborativos. O foco principal é construir ambientes e
mundos virtuais pela rede. Os mundos virtuais criados pelos
alunos são socializados e disponibilizados para todos os
alunos que tenham acesso ao ambiente, podendo incorporar
mundos criados em um novo mundo em criação. A figura 2
(a) mostra esse módulo
Figura 2 – Módulo de Realidade Virtual e Realidade Aumentada.
Realidade Aumentada: O módulo de realidade
aumentada possibilita colaboração entre os participantes de
um curso, utilizando marcadores em um ambiente
compartilhado. Após o término da atividade, o ambiente em
RA será salvo e enviado para o professor, para ser
visualizado no monitor. A figura 2 (b) mostra um exemplo de
aplicação em RA.
Também fazem parte do AVA os seguintes módulos:
Links, Atividades, Correio, Vídeo Conferência e Avaliação.
Os módulos foram escolhidos, levando em consideração o
efeito colaborativo que exercerão. Mesmo módulos que não
têm apelo colaborativo, foram desenvolvidos procurando
implementar métodos de compartilhamento para facilitar a
colaboração.
4.
CONCLUSÕES
Os ambientes virtuais de aprendizagem (AVA) tornaramse a principal ferramenta para a educação a distância pela
Internet. Os AVA, em sua grande maioria, foram concebidos
para o desenvolvimento de trabalhos textuais. Porém, o
desenvolvimento humano necessita de ferramentas
avançadas de comunicação interpessoal e ambientes
tangíveis para colaboração, visando aproximar pessoas e
potencializar a comunicação entre elas.
Assim, o Avadpt apresenta-se como uma alternativa
diferenciada, que pode ser usada isoladamente ou em
conjunto com outros AVA, oferecendo recursos de
colaboração, através de ambientes tangíveis com realidade
virtual e realidade aumentada.
Características como adaptabilidade ao usuário,
capacidade de uso conjunto com outros AVA e recursos
avançados de colaboração e comunicação interpessoal fazem
desta ferramenta uma opção interessante para aplicações
avançadas de educação a distância e para apoiar técnicas de
ensino presencial mais modernas, compatíveis com o avanço
da tecnologia e da Educação.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] ASSIS, G, A. Ambientes Virtuais Cooperativos E
Colaborativos. Instituto De Informática –UFRGS, Porto
Alegre, RS, Brasil,2003. Acessado em 2007 e disponivel
em
hTTP://WWW.INF.UFRGS.BR/~NEDEL/CMP513/12COOPERATIVE-VR-P.PDF
[2] COLEMAN, D. (Ed) (1992), Proceedings of Groupware
'92, San Mateo, CA: Morgan Kaufmann, pp. 84-90.
[3] CALONEGO, N. UMA APLICAÇÂO CLIENTESERVIDOR USANDO ARTOOLKIT. III Workshop
de Realidade Aumentada - WRA2006 Realizado na
UERJ, Rio de Janeiro, em 2006 (27 a 29 de setembro de
2006).
[4] FILATRO. Design Instrucional Contextualizado. Ed.
SENAC-São Paulo,,1ª edição. São Paulo, 2004
[5] KAUFMANNAND,H. Mathematics And Geometry
Education With Collaborative Augmented Reality.
Computers & Graphics, 27(3), 2003.
[6] KIRNER, C. Mãos Colaborativas em Ambientes de
Realidade
Misturada.
Anais
do
WRA2004.
Universidade Metodista de Piracicaba. 2005. Acessado
em
2004
e
disponível
em
http://WWW.CKIRNER.COM/DOWNLOAD/ANAIS/WRA2004ANAIS/WRA2004-1-36.PDF [7] MITCHELL, L.H. Gestão de Pessoas por
Competências no Ambiente AulaNet. Dissertação de
Mestrado, Pontifícia Universidade Católica do Rio de
Janeiro, 2004.
[8] MOODLE, Administrator documentation, 2007,
http://docs.moodle.org/en/Main_Page, Agosto de 2007.
[9] OLIVEIRA, G.P. O Fórum em um Ambiente Virtual
de Aprendizado Colaborativo. Revista Digital de
Tecnologia educacional e Educação a distância, Vol2-n1,
Outubro de 2005 ISSN 1808-1061
[10] PEIXOTO, M,V. ADVICE: Um Ambiente Virtual
Colaborativo Para O Ensino A Distância. Instituto
Militar De Engenharia (IME), Rio De Janeiro – RJ Brasil
, 2004
[11] REITMAYR,G. Collaborative Augmented Reality for
Outdoor Navigation and Information Browsing To
appear in Proc. Symposium Location Based Services
and TeleCartography 2004 Vienna, Austria, Jan. 2004.
[12] RODRIGUES, R. S. Modelo de avaliação para cursos
no ensino a distância: estrutura, aplicação e
avaliação. Engenharia de Produção, Florianópolis:
UFSC, 1998.
[13] ZHONG, X, W. Georganas: Collaborative Augmented
Reality: A Prototype For Industrial Training. Proc. Of
21st Biennial Symposium On Communications, Canada,
June 2002.
INTEGRAÇÃO DE TÉCNICAS DE MODELAGEM COM VRML E JAVA PARA
CRIAÇÃO DE AMBIENTES VIRTUAIS EM REALIDADE AUMENTADA
Rogério Gonçalves da Costa1, João Arthur Gabriel Silva Diniz1, Wender Antônio da Silva1, Marcos
Wagner de Souza Ribeiro1, Edgard Afonso Lamounier Júnior2 e Alexandre Cardoso2
1 - Grupo de Realidade Virtual de Goiás – GRVG - Instituto Luterano de Ensino Superior de Itumbiara, GO
2 - Grupo de Realidade Virtual – GRV – Laboratório de Computação Gráfica – Universidade Federal de Uberlândia, MG
rog_g7@yahoo.com.br, joaoagsdiniz@yahoo.com.br, wender_silva@yahoo.com.br, marcos_wagner@yahoo.com.br
lamounier@ufu.br, alexandre@ufu.br
Resumo – Este artigo apresenta a integração de técnicas de
modelagem utilizando VRML (Virtual Reality Modeling
Language) e Java para criação de ambientes virtuais em
Realidade Aumentada, tendo como estudo de caso a
utilização de um sistema desenvolvido em Java Applet, que
pode ser incorporado a documentos HTML (Hypertext
Markup Language) e VRML, gerando em back-end a
configuração e posterior apresentação em Realidade Virtual e
na Realidade Aumentada os objetos modelados em forma
2D.
Palavras-Chave – Computação Gráfica, Realidade Virtual,
Java, VRML.
Abstract – This article presents the integration of techniques
for modeling using VRML (Virtual Reality Modeling
Language) and Java to create virtual environments in Reality
Increased, and the case study using a system developed in
Java applets, which can be embedded in HTML documents
(Hypertext Markup Language) and VRML, generating in
back-end configuration and subsequent presentation in
Virtual Reality and Reality Increased objects modeled in the
form 2D.
Keywords - Graphic computation, Virtual Reality, Java,
VRML.
1. INTRODUÇÃO.
Um dos sentidos humanos mais ricos e diversificados é a
visão, cuja capacidade de percepção nos faz interagir com o
mundo real gerando ações que o mudam constantemente.
Atualmente, quando a proliferação da computação atinge
todos os setores humanos, a tendência metafórica é
justamente atingir o máximo de proximidade com a máquina
humana. Temos exemplos da área de inteligência artificial,
procurando imitar o cérebro, e de outra, mais atraente, a
computação gráfica que procura desenvolver a habilidade
visual da máquina. O forte apelo das imagens seduz o ser
humano mais do que as palavras, e quanto mais próximo da
realidade for o apelo visual, mais confortável e próximo a
sua própria realidade o homem se sentirá. Cada vez mais, a
computação gráfica tem sido utilizada para a criação de
imagens que representam modelos do mundo real. Neste
sentido, por meio da realidade virtual, tenta se criar um
ambiente no qual a pessoa possa sentir-se imersa total ou
parcialmente em um mundo virtual, onde objetos imaginários
podem ser sentidos e manipulados.
1.1 Realidade Virtual
A expressão Realidade Virtual foi construída sobre a
oposição do sentido usual dos seus termos. Segundo o
dicionário Aurélio[7], a expressão virtual significa: “Que
existe como faculdade, porém sem exercício ou efeito atual.
Suscetível de se realizar; potencial”. Portanto, a rigor, real e
virtual não são conceitos que se opõem, mas se
complementam. Para fechar com a questão das expressões,
assinala-se que esta expressão não foi a única que esteve em
debate. Assim, podemos encontrar outros termos como
realidade
artificial,
mundos
virtuais,
ambientes
multissensoriais interativos, cyberspace, entre outros. Por
meio da realidade virtual, tenta-se criar um ambiente
(tridimensional), no qual o usuário tem a ilusão de estar
imerso total (Full-imersive) ou parcialmente. Ela consiste de
uma combinação de software, computadores de alto
desempenho e periféricos especializados, que permitem criar
um ambiente gráfico de aparência realística, no qual o
usuário pode se locomover em três dimensões. Nele, objetos
imaginários, criados por software, podem ser sentidos e
manipulados. A realidade virtual é fundamentalmente uma
tecnologia de melhoria na interface homem-máquina, e como
tal, habilitou a criação de novas ferramentas de resolução de
problemas. É essencialmente, um novo meio de
comunicação. Ela é a simulação computacional de um
ambiente no qual o participante pode penetrar e interagir[4]
[5].
1.2 Java Applet
Applet – programas Java que podem ser incorporados
documentos Hypertext Markup Language (HTML), isto é,
páginas da Web. Quando um navegador carrega uma página
da Web contendo um applet, o applet é baixado no
navegador Web e executado. O navegador que executa um
applet é genericamente conhecido como contêiner de applets
. O JDK (Java Development Kit) inclui o contêiner de
applets appletviewer para testar applets à medida que eles
são desenvolvidos e antes de ser incorporados a paginas da
Web[1].
1.3 VRML
Característica básica de VRML são arquivos que
simulam mundos em 3D, na verdade é uma descrição textual,
na forma de textos ASCii. Assim por meio de qualquer
processador de texto, um desenvolvedor pode conceber tais
arquivos, salvá – los e visualizar resultados no navegador de
Internet associado a um plug-in. Estes arquivos definem
como estão as formas geométricas, as cores, as associações,
os movimentos, enfim, todos os aspectos relacionados com a
idéia do autor. Quando um dado navegador – browser – lê
um arquivo de extensão .wrl, o mesmo constrói o mundo
descrito, ativando um plug-in compatível. De forma
simplificada um arquivo VRML se caracteriza por quatro
elementos principais: - o cabeçalho, os protótipos, - as
formas, interpoladores, sensores, scriptes e as rotas. Assim
um arquivo pode conter 1 – Header; 2 – Prototypes; 3 –
Shapes, Interpolartors, Sensors, Scripts; 4 – Routes. Mas nem
todos os arquivos contêm todos estes componentes. Na
verdade o único item obrigatório em qualquer arquivo
VRML é o header. Porém, sem pelo menos uma figura, o
navegador não exibiria nada ao ler o arquivo.
visualização por meio da Realidade Aumentada em tempo
real.
2.2 Sweep
Sweep é definido por uma área 2D movida ao longo de
um caminho normal ao plano da área para criar um volume.
Este tipo é conhecido como sweep translacional, técnica de
varredura linear ou extrusão. Algumas extensões envolvem
escalar a outra face para fazer objetos de formato cônico. O
Sweep rotacional, também, chamado de superfície de
revolução ou torneada, é definido pela rotação de uma área
sobre um eixo. O sweep é uma maneira natural e intuitiva de
construir uma variedade de objetos. Por esta razão, muitos
sistemas de modelagem permitem ao usuário construir
objetos por sweep[5].
2.3 Representação de Limites
1.4 Realidade Aumentada
Realidade Aumentada é definida usualmente como a
sobreposição de objetos virtuais tridimensionais, gerados por
computador, com um ambiente real, por meio de algum
dispositivo tecnológico. Entretanto, esta conceituação é
muito geral e só fica clara com sua inserção em um contexto
mais amplo: o da Realidade Misturada. 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. Pode-se
dizer, então, que a Realidade Aumentada é uma
particularização da Realidade Misturada. A figura 4
apresenta o que é realidade Aumentada, mostrando as
possibilidades gradativas de sobreposição do real com o
virtual e vice-versa[6].
2. MÉTODOS APLICADOS
A metodologia usada para o desenvolvimento desta
pesquisa foi baseada em um sistema cujo seu papel principal
é por meio de técnicas e algoritmos transformar simples
pontos em uma imagem e formas na realidade virtual, tendo
como objetivo a implementação e melhoramento, tanto no
visual como na aplicação de objetos 3D[1],[5]. Um trabalho
motivador para esta pesquisa foi a monografia de Silva[5]
onde o mesmo trabalhou Java integrado com o VRML,
também podemos destacar a bibliografia de Deitel[1] que
trata também da incorporação Applet e da criação de
desenhos planos.
2.1 Estudo de Caso
O estudo de caso aborda uma melhoria na solução de
Silva[5] para a funcionalidade de uma aplicação, onde
utiliza-se de técnicas complexas para formações de objetos
2D para 3D, onde movendo-se um objeto ao longo de uma
trajetória do espaço pode – se definir um novo objeto por
meio de técnicas chamadas de representação de limites,
representação por decomposição volumétrica e sweep[5].
Assim, este artigo integrará ao mesmo a funcionalidade da
O modelo por representação de limites define um sólido
indiretamente por meio da representação das suas superfícies
limitantes. São baseados em uma visão orientada para
superfícies, em outras palavras, eles representam um objeto
sólido através da subdivisão deste objeto em faces. Um
modelo por representação de limites é considerado válido se
ele consegue definir os limites de um objeto sólido. Deste
modo, os critérios de validade de um modelo por
representação por limites incluem as seguintes condições: 1.
O conjunto de faces que compõem o modelo se fecham, ou
seja, formam um invólucro completo em torno do objeto a
ser representado e sem partes pendentes; 2. As faces do
modelo não interseccionam outras faces, exceto as faces que
possuem vértices e arestas em comum; 3. As faces são
superfícies simples que não se auto-interseccionam. A
primeira e a segundas condições excluem objetos que se
auto-interseccionam, e a terceira condição exclui objetos
abertos como, por exemplo, uma caixa aberta.
Computacionalmente é conveniente dividir uma superfície do
modelo em faces, sendo que cada face é limitada por um
conjunto de vértices e arestas. Os limites de um objeto
podem ser divididos em faces, vértices e arestas de forma
ilimitada, ou seja, não existe uma forma única de representar
os limites de um objeto. Modelos por representação de
limites são difíceis de se descrever diretamente, porém é
possível utilizar recursos gráficos e interativos para facilitar o
projeto de objetos por representação de limites[5].
2.4 Representação por decomposição volumétrica
Este é um modelo por decomposição (SpatialPartioning), ou seja, os sólidos são descritos através da união
de blocos básicos. Primitivas podem variar no tipo, tamanho,
posição, parametrização e orientação, e a maneira como os
blocos são combinados é que distingue cada variação deste
esquema de representação[5].
3. IMPLEMENTAÇÃO DO SISTEMA
Este trabalho tem por objetivo a integração de técnicas
de modelagem com a VRML, por meio da implementação
prática de um software. Após a escolha das técnicas de
modelagem, o passo seguinte foi à escolha da interface. Foi
decidida a criação de um sistema de modelagem com uma
interface simples de usar, onde o usuário “desenha” seus
próprios polígonos para gerar os objetos em realidade virtual
e aumentada. A linguagem de programação escolhida para
realizar a implementação de um sistema de modelagem que
crie objetos VRML, foi à linguagem Java da Sun
Microsystems, uma linguagem portátil independente de
plataforma ou Sistema Operacional onde pode ser agregado
em páginas da Web. Com essa integração de ferramenta é
possível que objetos planos feitos em 2D se transformem em
Objetos Virtuais 3D.
3.1 Aplicação
Para que se possa gerar objetos em RA (Realidade
Aumentada) é necessário utilizar o RAVWorks como
aplicação. A figura a seguir mostra a interface do programa
sendo utilizado como aplicação:
Fig.2. RAVWorks Objeto Polígono
A figura seguinte mostra como ficou o objeto polígono
desenhado anteriormente, que por meio da integração do
Java, VRML e as técnicas supracitadas[5], foi possível a
transformação de um objeto 2D para 3D modelado em
VRML, sendo que todo este processo é feito
automaticamente, bastando clicar no botão Gerar RA,
fazendo com que o sistema gere o objeto 3D e integre com a
ferramenta ARToolkit.
Fig.1. RAVWorks como aplicação.
A área em branco é o local onde são desenhados os
polígonos que gerarão os objetos. Para desenhar um
polígono, basta clicar com o mouse em pontos desta área,
marcando os pontos que definem os vértices deste. Quando
esta área estiver em branco, ao clicar o mouse sobre ela, a
posição inicial do polígono será marcada. E, arrastando o
mouse com o botão pressionado, resultará na criação de uma
aresta para o polígono. Para inserir um novo ponto, gerando
uma nova aresta ao polígono gerador para o sweep[5], basta
clicar com o mouse e mover até a localização desejada. As
coordenadas são mostradas na barra de status na medida em
que o mouse é arrastado, conforme demonstrado na figura 2.
Fig. 3. RAVWorks Objeto Gerado em 3D (VRML)
A figura 4 mostra como ficou o objeto gerado em 3D,
que com a integração da ferramenta ARToolkit, é feito e
projeção do Objeto em um marcador.
Estudos visando à implementação dos itens citados acima
estão em andamento.
5 REFERÊNCIAS BIBLIOGRÁFICAS
[1] JAVA COM PROGRAMAR 6º Edição, Harvey M.
Deitel e Paul J. Deitel <www.deitel.com >.
[2]
SITE
WIKIPEDIA,
A
enciclopédia
livre.
<http://pt.wikipedia.org>. Acesso em: 20 setembro 2007.
[3] PINHO, Márcio Serolli. Textos e artigos sobre RV
Disponível em:
<http://www.pgie.ufrgs.br/siterv/introducao.htm>.
Acesso
em: 21 setembro 07.
Fig.4. Objeto Gerado em RA (Realidade Aumentada)
4 CONCLUSÕES E TRABALHOS FUTUROS
4.1 Conclusões
A integração de sistemas de modelagem com a VRML
com a realidade aumentada é bastante natural, já que esta
linguagem permite a criação de objetos complexos por meio
da definição das faces destes objetos, como foi descrito neste
artigo. A interface do sistema de modelagem desenvolvido
junto a este artigo é bastante simples de usar, podendo o
software ser usado por qualquer pessoa que tenha uma certa
noção de RV (Realidade Virtual), não precisando recorrer a
grandes, pesados e complicados sistemas de computação
gráfica. No sistema de modelagem RAVWorks, o usuário
desenha seus próprios polígonos para gerar os objetos pelas
técnicas de modelagem descritas, transformando objetos 2D
em objetos 3D no formato VRML e em seguida projetando o
Objeto em um marcador e gerando uma imagem RA. O
RAVWorks, também é uma ferramenta valiosa para pessoas
que queiram examinar na prática a técnicas de modelagem e
a visualização de objetos em realidade aumentada, um
sistema bastante simples.
4.2 Trabalhos Futuros
Apesar deste sistema ser capaz de construir uma grande
variedade de objetos, existem algumas melhorias que
poderão ser feitas futuramente, visando aperfeiçoar o
trabalho desenvolvido até o presente. Algumas destas
melhorias são:
• Substituição da Interface de aplicação Java Applet
para Java 2D.
• Desenho de curvas e primitivas como círculo,
retângulo, elipse, entre outras;
• Definir cor, transparência, reflexão e textura dos
objetos gerados;
• Alterar a proporção pixels/m, fazendo uma
transformação de escala no objeto gerado;
• Permitir a operação com mais de um objeto, unindoos para formar um outro objeto qualquer.
• Fazer o editor gráfico com janela virtual,
possibilitando zoom e panning;
[4] Home Page Prof. Alexandre Cardoso, - Ano 2007
<http://www.alexandre.eletrica.ufu.br/ > Acesso em: 22
setembro 07.
[5] ATSWORLDS, Integração de Técnicas de Modelagem
com a VRML,
<http://www.inf.unisinos.br/~osorio/ATSWorlds.html>.
Acesso em: 24 setembro 07.
[6] SITE REALIDADE AUMENTADA,
<http://www.realidadeaumentada.com.br/home/>. Acesso
em: 24 setembro 07.
[7] DICIONÁRIO AURÉLIO, Dicionário da Língua
Portuguesa.
[8] SITE ARTOOLKIT,
<http://www.hitl.washington.edu/artoolkit/>. Acesso em: 25
setembro 07.
O USO DA REALIDADE VIRTUAL NÃO-IMERSIVA COMO INSTRUMENTO DE AUXILIO NO
TRATAMENTO DA AVIOFOBIA
Danielly Cristine de Medeiros1, Wender Antônio da Silva1, Edgard Afonso Lamounier Júnior2, Alexandre
Cardoso2, Luciano Vieira Lima2 e Marcos Wagner de Souza Ribeiro1
1 - Grupo de Realidade Virtual de Goiás – GRVG - Instituto Luterano de Ensino Superior de Itumbiara, GO
2 - Grupo de Realidade Virtual – GRV – Laboratório de Computação Gráfica – Universidade Federal de Uberlândia, MG
dc.medeiros@yahoo.com.br, wender_silva@yahoo.com.br, lamounier@ufu.br, alexandre@ufu.br,
luciano.vieira.lima@terra.com.br, marcos_wagner@yahoo.com.br
Resumo - A fobia é um sentimento de medo injustificável,
ansiedade persistente, intensa e irrealística, sentimento o
qual surge quando o fóbico se depara com a situação
causadora de sua fobia. Este artigo apresenta uma
aplicação em Realidade Virtual para auxiliar o tratamento
de superação de aviofobia, o ambiente em Realidade
Virtual possui três níveis de interação e de dificuldades
para o paciente fóbico.
Palavras-Chave – Aviofobia, Fobia, Realidade Virtual,
Computação Gráfica.
Abstract – Phobia is an unjustified fear, a constant
anxiety, an intense and unrealistic feeling that manifests
when a phobic person is faced with a situation that
triggers the phobia. This article presents the application
of Virtual Reality as a means to help overcome flight
phobia. The virtual reality environment has three levels of
interaction and challenges for the Phobic patient.
Keywords - Phobia of Airplane, Phobia, Virtual Reality,
Graphical Computation.
1.
INTRODUÇÃO
A fobia é um sentimento de medo, injustificado e
desproporcional, que se intromete persistentemente no
campo
da
consciência
e
se
mantém
ali,
independentemente do reconhecimento de seu caráter
absurdo. A característica essencial da Fobia consiste num
temor patológico que escapa à razão e resiste a qualquer
espécie de objeção, temor este dirigido a um objeto (ou
situação) específico [2].
A fobia não é causa de nada, mas sim
conseqüência; é o reflexo de alguma angústia interna, e
em princípio deve ser tratada como tal, ou seja, deve-se
tratar a angústia que causou e não a fobia em si. Tratandose e curando a angústia estará curada a fobia [5].
Por esse motivo a fobia não tem uma causa real
(trauma real) ela apenas existe simbolicamente. Se ela
tiver uma causa real como, por exemplo, medo de dirigir
por causa de um acidente de carro, ela deixa de ser uma
fobia e passa a ser considerada um “comportamento
evitativo”.
São várias as situações fóbicas freqüentes:
injeções ou pequenas cirurgias, viajar sozinho de carro ou
ônibus, viajar de avião, entre outros [6].
Assim, o presente estudo abrange o uso da
Realidade Virtual no tratamento de aviofobia, sendo que o
problema norteador basear-se-á na seguinte questão:
indivíduos podem superar aviofobia com o auxilio da
Realidade Virtual?
Este trabalho abrange o desenvolvimento de um
protótipo de um software como instrumento de auxilio no
tratamento de aviofobia por meio da Realidade Virtual
não-imersiva.
1.1 AVIOFOBIA
O medo de voar é muito freqüente. Algumas
pessoas têm medo de acidentes aéreos, mas mesmo assim,
não evitam o vôo. Outras desenvolvem uma fobia, porque
evitam o vôo. Não conseguem sequer entrar num avião
[10].
De acordo com o IBOPE1 – Instituto Brasileiro
de Opinião Pública e Estatística (1998), em torno de 42%
da população brasileira tem medo de viajar de avião.
O medo de avião não é exclusividade de quem
nunca viajou de avião. Ele afeta indiscriminadamente, os
passageiros novatos e veteranos. É um pânico muitas vezes
inexplicável que se manifesta de diferentes formas.
Para quem tem aviofobia (fobia de avião), não
adianta explicar que apenas um entre milhões de vôos
acabará em desastre, o fóbico sempre viverá na expectativa
de que o vôo fatídico será justamente o dele.
1.2 REALIDADE VIRTUAL
A Realidade Virtual pode empregar várias
técnicas para reproduzir o mundo real e imaginário e
possibilitar a manipulação e visualização de informações
no computador como se estivesse no mundo real.
Kirner e Siscoutto [9], afirmam que a Realidade
Virtual é uma “interface avançada do usuário” para acessar
aplicações executadas no computador, proporcionando a
1
Disponível em http://www.ibope.com.br/opp/pesquisa/opiniaopublica
visualização, movimentação e interação do usuário, em
tempo real em ambientes tridimensionais gerados por
computador.
Assim pode-se entender que Realidade Virtual
permite a criação de uma interface homem – maquina,
natural e poderosa, possibilitando ao usuário interação,
navegação e imersão em um ambiente tridimensional
sintético, gerado pelo computador por meio de canais
multisensoriais dos cinco sentidos (visão, audição, tato,
olfato e paladar).
2.
Outro interessante trabalho é o de Medeiros [6],
onde foram criados cinco cenários: Túnel, metro,
aeroporto/avião, elevador e ônibus, e em sua maioria,
foram feitos pensando em transtornos, agorafóbicos,
sendo útil para outras formas de fobias, como a aviofobia,
conforme podemos observar nas figuras 3 e 4, mas com
alguns acertos futuros, será possível abranger maior
número de fobias e com maior eficácia.
TRABALHOS REALCIONADOS
Já existem alguns trabalhos usando a Realidade
Virtual para o tratamento de fobias, e destacamos alguns,
onde se pode constatar a sua eficiência no tratamento de
várias formas de fobias.
No artigo denominado "Using Augmented
Reality to Treat Phobias - Usando a realidade aumentada
para o tratamento de fobias" [1], é demonstrada a criação
de um protótipo para o tratamento de desordens
psicológicas (fobias de aranhas e baratas). E conforme a
figura 1, abaixo, pode se notar que apresentaram
resultados positivos, sendo suas aplicações úteis como
uma ferramenta terapêutica para várias outras desordens
psicológicas.
Fig. 3 - Janela do Aeroporto- (Medeiros, 2006)
Fig. 4 – Guichês no Aeroporto - (Mauch, 2006)
Valério Neto [8] em seu artigo “Realidade
Virtual aplicada ao tratamento de fobias” apresenta um
estudo de caso utilizando a Realidade Virtual para o
tratamento de aviofobia, onde se constatou resultados
positivos no que diz respeito à diminuição da ansiedade.
A exposição dos pacientes a estes ambientes tem
se mostrado eficaz e apresenta vantagens em relação à
exposição ao ambiente real.
Fig. 1 – Realidade Aumentda (Alcañiz e Monzserrat, 2005)
No estudo de caso "Superação de fobias por
meio do uso da Realidade Virtual" [5], pode-se concluir
que a Realidade Virtual é mais uma forma válida e
bastante útil para ajudar tanto paciente quanto psicólogos
nos tratamentos de fobias. Em outro artigo “Realidade
Virtual aplicada ao tratamento de fobias” [8] é
apresentado um estudo de caso que se utiliza da Realidade
Virtual para o tratamento de fobia de altura, onde foi
modelado ambiente conforme as figura 2, o qual obteve
resultados positivos no que diz respeito à diminuição da
ansiedade.
3.
No desenvolvimento metodológico desse
trabalho, foram seguidos alguns procedimentos, como
levantamento bibliográfico do assunto aviofobia e do
ambiente desenvolvido. Para que desta forma, logo após
analisar esses dados, pudéssemos dar inicio ao
desenvolvimento, modelagem do ambiente proposto.
Como universo deste trabalho, contamos com o
tratamento de pessoas com transtornos fóbicos, desta
forma a população trata-se especificamente pessoas com
aviofobia. Onde nossa amostragem é composta de pessoas
que tem medo de viajar de avião do ILES-ULBRA.
Para o desenvolvimento do sistema, utilizamos de
conceitos de Realidade Virtual, ligados a percepção
sensorial, hardware, software, interface com o usuário,
fatores humanos e aplicações.
4.
Fig. 2 - Ambiente Virtual 1 - (Mauch, 2002)
DESENVOLVIMENTO METODOLÓGICO
IMPLEMENTAÇÃO DO SISTEMA
Foi desenvolvido um sistema em um ambiente
não-imersivo, o qual com auxílio de todo
desenvolvimento metodológico e de periféricos como,
mouse óptico, caixinhas de som e/ou fones de ouvido,
pudéssemos dar maior sensação real de imersão ao
paciente que estiver sendo exposto ao a este ambiente.
Para tal façanha contamos com sons como de
turbina do avião, som de decolagem e pouso, sons como se
estivesse ocorrendo turbulências no vôo, e um vídeo. E
como ferramenta de modelagem, utilizou o Flux Studio,
juntamente com o VRML, justifica-se a escolha desta
ferramenta de modelagem é o fato da mesma não gerar
códigos tão extensos e por possuir uma grande diversidade
de funcionalidades técnicas, e também pelo fato de nos
oferecer uma grande gama de recursos, assim facilitando o
processo de modelagem. Mas outro aspecto importante
para a escolha do Flux Studio, é que ele permite importar e
exportar objetos para
os principais formatos
tridimensionais existentes, onde um deles é o **. wrl, uma
extensão do VRML, o qual é a nossa linguagem de
programação. O VRML (Virtual Reality Modelating
Language) é uma linguagem de programação destinada à
criação de ambientes virtuais em 3D (3 dimensões), onde
permite a interação e imersão do usuário com o ambiente
desenvolvido.
Deve-se ressaltar que o VRML, é uma linguagem
que permite visualização em browser, onde é necessário
que se tenha ou realize apenas a instalação do plug-in
escolhido, sendo o nosso caso o “cortona”, a linguagem
também se trata se uma linguagem livre.
O ambiente virtual possui objetos como: a pista,
a escada para acesso a aeronave, visão frontal da parte
interna da mesma, e uma visão externa da aeronave por
meio de uma janela do avião.
4.1 FUNCIONAMENTO DO SISTEMA
O simulador desenvolvido é um sistema de
Realidade Virtual não-imersiva, que possibilita ao
profissional de psicologia e usuários, treinar e testar todos
os níveis de fobia, no tratamento da aviofobia. Existem
três, níveis: 1- O paciente é exposto até escada da
aeronave, 2- O paciente adentra a aeronave, 3- O paciente
decola na aeronave. Cada etapa da simulação é
responsável em auxiliar o psicólogo a medir o grau de
fobia do paciente, onde assim o mesmo a cada melhora
vai conseguir passar de nível até que finalize o último
nível e tendo a sua fobia superada.
- Nível 1: permite estudar e avaliar o paciente,
observando suas reações diante a aeronave. A avaliação é
realizada pelo profissional, o qual ao perceber a evolução
do paciente, permite que ele passe ou não para o próximo
nível.
- Nível 2: permite estudar e avaliar o paciente,
observando suas reações dentro da aeronave. Onde o
paciente sempre terá na sua visão frontal, um corredor
onde ele caminha para sua devida poltrona, com o auxilio
de uma rota pré-definida e/ou utilizando-se da interação
existente no VRML, onde se pode navegar com mouse ou
teclado.
- Nível 3: permite estudar e avaliar o paciente,
observando suas reações diante a aeronave. Neste nível o
paciente já fica sentado ao lado da janela e começa a ver
por meio da mesma um ambiente (vídeo), de forma que
ele perceba que o avião irá decolar. Desta forma o
profissional começa a observar as reações que o paciente
tem durante esse vôo, nessa viagem que ele faz pelo
mundo virtual.
Como já foi dito anteriormente, o paciente
conseguindo superar todos esses níveis de complexidades
fóbicas, o mesmo deverá acompanhado de um
profissional ficar em observação.
Dentro do ambiente no nível 1, o usuário navega
por meio do teclado, já no nível 2 como foi dito ele
navega por meio de rotas pré-definida ou ainda teclado e
mouse, e no nível 3 o avião somente irá decolar quando o
paciente ou psicólogo acionar o botão de decolagem.
Os níveis foram definidos de acordo com sua
funcionalidade, o mesmo obedece a uma seqüência de
realização do procedimento real. Uma vez que o objetivo
do simulador é oferecer um auxilio no tratamento de
aviofobia.
E importante destacar que a implementação do
sistema foi acompanhada por profissional da área de
psicologia, assim sendo, o mesmo foi validado e testado
pelo psicólogo.
As figuras abaixo 5,6 e 7 representam parte do
sistema em que o usuário navega. Na figura 5 temos toda
parte externa, onde o mesmo caminha até o avião, se o
paciente tiver um bom resultado ele ativa uma escada a
qual ele terá acesso a parte interna do avião que aqui é
representada pela figura 6 e 7, na figura 6 tem a janela do
avião, por meio deste ele observa um ambiente o qual é
um vídeo de uma decolagem e de uma aterrissagem para
que assim ele possa se sentir no ambiente mais real
possível, já a figura 7 é apenas uma demonstração da
parte interna.
Fig. 5 – Ambiente externo
Fig. 6 – Janela do avião - Visão da decolagem (vídeo)
com o ambiente virtual, mas também com os outros
usuários que estejam on-line.
É importante também criar ferramentas de comunicação
(chat) que permitam a comunicação entre os usuários.
Fig. 7 – Parte interna da aeronave
5.
AVALIAÇÃO E RESULTADOS
Durante a realização do procedimento de
avaliação dos fóbicos foi possível observar que o mesmo
sente o mesmo pânico (medo) como no ambiente real. O
simulador foi apresentado a dois profissionais de
psicologia e a um grupo de indivíduos fóbicos.
Os pacientes foram expostos aos mesmos
ambientes, com exposição virtual, onde foi apresentado
uma ambiente tri-dimensional, conforme as figuras 5 e 6
acima.
Os testes consistiam de sessões de uma hora de
duração cada, na freqüência de uma sessão por semana.
Todos os procedimentos foram realizados com o
acompanhamento de um dos profissionais (psicólogos). Os
pacientes expostos passaram por uma série de testes,
realizados antes do tratamento (para avaliar a intensidade
da fobia) esses testes foram analisados por profissionais da
área de psicologia e durante o tratamento (para avaliar a
ansiedade durante a exposição à condição do medo) e por
último depois do tratamento (para avaliar a permanência
dos ganhos obtidos com a terapia).
Foi possível observar que os resultados de uma
forma geral, os ganhos obtidos em ambos os métodos de
exposição foram semelhantes, e que a ansiedade dos
pacientes no grupo tratado com exposição virtual é menor
quando sé é realizada a sessão in vivo (no ambiente real).
6.
CONCLUSÃO
Pode-se concluir que a Realidade Virtual é mais
uma forma válida e bastante útil para ajudar tanto paciente
quanto psicólogos nos tratamentos de vários tipos de
fobias. Apesar de a terapia tradicional conseguir bons
resultados, mostra-se necessário o desenvolvimento de
novas ferramentas que encorajem estas pessoas a procurar
o tratamento, que possuam características que podem
ultrapassar os resultados obtidos pelos tratamentos
convencionais. Espera-se que o desenvolvimento do
protótipo possa auxiliar satisfatoriamente psicólogos no
tratamento de pacientes que sofram de aviofobia, lhes
proporcionado melhor qualidade de vida.
7.
TRABALHOS FUTUROS
Existem alguns pontos considerados essenciais, que
devem ser tratados na continuação deste trabalho.
Um ponto crucial é criar um sistema com arquitetura
distribuída, que permita ao usuário interagir não somente
REFERÊNCIAS BIBLIOGRÁFICAS
[1]
ALCAÑIZ, Mariano; MONSERRAT, Carlos,
Using Augmented Reality to Treat Phobias. Disponível
em: <http://www.computer.org/publications/dlib>. Acesso
em: 15 mai. 2007, 14h30min.
[2]
BALLONE, Geraldo J. Medos, fobias e outros
bichos.
Disponível
em:
<
http://gballone.sites.uol.com.br/voce/medos.html
>.
Acesso em: 10 mai. 2007, 14h00min.
[3]
CARDOSO, Alexandre. Realidade Virtual.
Disponível
em:
<http://www.compgraf.ufu.br/alexandre/rv.htm>. Acesso
em: 13 mai. 2007, 20h40min.
[4]
MAGALHÃES, Fernando Lima. Fobias e Medos.
Disponível em: <http://tvtel.pt/psicologia/page21.htm>.
Acesso em: 29 abr. 2007, 23h50min.
[5]
MAUCH, Gustavo Huff. Superação de fobias
através do uso de Realidade Virtual. Disponível em:
<www.inf.ufrgs.br/nedel/emp513/17.
phobiap.php>.
Acesso em: 21 mai. 2007, 13h30min.
[6]
MEDEIROS, Gustavo Adolfo de. Sistema de
Realidade Virtual para Tratamento de Fobia. Dissertação
de mestrado em Ciências da Computação, Universidade
Federal do Rio de Janeiro, setembro de 2006.
[7]
PRADO, Gilberto, et. al. Virtual Reality
Modeling
Language.
Disponível
em:
<http://ftp.unicamp.br/pub/apoio/treinamentos/vrml/>.
Acesso em: 07 jun. 2007, 17h03min.
[8]
VALÉRIO NETO, Antonio. Realidade Virtual
aplicada ao tratamento de fobias. Organizado por: TORI,
Romero; KIRNER, Cláudio; SISCOUTTO, Robson.
Fundamentos e tecnologia de Realidade Virtual e
aumentada. Belém, VIII Symposium on Virtual and
Augmented Reality, Maio de 2006.
[9]
CARDOSO, Alexandre. ET. al. Tecnologias para
o desenvolvimento de sistemas de Realidade Virtual e
aumentada. Recife: Ed. Universitária da UFPE, 2007.
[10]
CECILIA, Sandra. Fobias. Disponível em:
<http://www.spiner.com.br/modules. php>. Acesso em: 13
mai. 2007, 01h27min.
ODE4PPC: APLICAÇÕES GRÁFICAS COM SIMULAÇÃO FÍSICA NA
PLATAFORMA POCKET PC
Daliton da Silva1, João Marcelo Teixeira1, Veronica Teichrieb1, Judith Kelner1
1
Centro de Informática – Universidade Federal de Pernambuco (UFPE)
Av. Prof. Moraes Rego S/N, Prédio da Positiva, 1º Andar,
Cidade Universitária, 50670-901, Recife, Pernambuco
{ds2, jmxnt, vt, jk} @cin.ufpe.br
Resumo – Este artigo apresenta um porte para a plataforma
Pocket PC do Open Dynamics Engine, um motor de
simulação de física em tempo real, bastante utilizado para
desenvolvimento de aplicações 3D interativas. O código
original da biblioteca foi modificado para permitir a sua
execução na plataforma móvel. O porte, chamado
ODE4PPC, foi validado e avaliado em tempo de execução
através da realização de alguns testes. Novas otimizações
serão implementadas para melhorar o desempenho obtido,
em uma nova versão.
Palavras-Chave – Física, ODE, Pocket PC, Simulação.
Abstract – This paper presents a port of the Open Dynamics
Engine to the Pocket PC platform. This engine is a real time
physics simulation library, often used for interactive 3D
applications development. The original library source code
was modified in order to allow its execution in the mobile
platform. The port, named ODE4PPC, was analyzed and
evaluated in runtime by performing some tests. Future
optimizations will be implemented in order to improve the
obtained performance.
Keywords – Physics, ODE, Pocket PC, Simulation.
1. INTRODUÇÃO
O desenvolvimento de aplicações gráficas exige
conhecimento de diversas áreas das ciências exatas,
principalmente quando estas aplicações envolvem simulação
de comportamentos e fenômenos do mundo real [1]. Dentre
estes conhecimentos pode-se citar a álgebra linear, base
fundamental dos sistemas de renderização, e a física,
necessária quando se deseja que as entidades do ambiente
simulado se comportem de acordo com as leis físicas que
regem o mundo real.
A física tem despertado atenção especial no
desenvolvimento de aplicações 3D. Mais do que gráficos
com alto nível de detalhamento, existe atualmente um apelo
muito grande pela fidelidade em relação ao comportamento
físico dos objetos presentes nos jogos e aplicações 3D em
geral. Devido a este fato, nos últimos anos houve o
surgimento de novas bibliotecas, e até de hardware dedicado
voltado exclusivamente para processamento físico [2]. Estas
bibliotecas são responsáveis por prover uma interface de
programação que facilite e automatize até certo ponto os
cálculos de posição, rotação, velocidade, entre outros, dos
corpos envolvidos em uma simulação. Este suporte varia de
acordo com a biblioteca utilizada, podendo abranger desde
dinâmica de corpos rígidos até simulação de fluidos e objetos
deformáveis [1].
Este artigo descreve o desenvolvimento do ODE4PPC,
que é um porte de uma destas bibliotecas, a Open Dynamics
Engine (ODE) [3], para a plataforma Pocket PC. A biblioteca
ODE funciona como um simulador de corpos rígidos
articulados. Este porte abrirá espaço para o desenvolvimento
de aplicações, para Pocket PC, que envolvem conceitos de
simulação física.
Na seção 2 são apresentados alguns trabalhos relacionados
com a execução de algoritmos de física em dispositivos
móveis. A seção 3 traz uma descrição detalhada das
características e da arquitetura da biblioteca ODE. A seção 4
descreve o passo a passo do desenvolvimento realizado para
portar o ODE para a plataforma Pocket PC, enquanto a seção
5 lista os resultados obtidos. Por fim, a seção 6 faz algumas
considerações finais e direciona as próximas atividades a
serem realizadas.
2. TRABALHOS RELACIONADOS
Dentre as diversas bibliotecas de simulação física
existentes, uma tem se destacado entre os desenvolvedores: a
AGEIA PhysX [2]. Esse destaque ocorre devido a sua
facilidade de uso, estabilidade, robustez e amplo suporte, o
qual inclui simulação de sistemas de partículas e tecidos.
Além da biblioteca de física, a AGEIA desenvolveu um
hardware co-processador de física, ou Physics Processing
Unit (PPU).
Este novo tipo de hardware é responsável por executar a
maior parte dos numerosos cálculos envolvidos na simulação
física. É importante observar que o uso de um hardware
específico para o processamento físico tem como principal
conseqüência a possibilidade de simulações com maior
riqueza de detalhes. Não necessariamente busca-se um
incremento na velocidade da simulação.
Visando a demanda existente com os dispositivos móveis,
a AGEIA lançou uma versão deste hardware específica para
notebooks, a AGEIA PhysX 100M, que pode ser vista na
Figura 1. Ela foi otimizada focando dois objetivos principais:
redução de tamanho e consumo de energia, o qual gira em
torno de apenas 10W quando em pleno funcionamento.
Outra biblioteca que fornece suporte de física para
dispositivos móveis é a Mobiola 3D Engine [4]. Ela funciona
de forma similar a outras bibliotecas de física na plataforma
PC. A Mobiola suporta gráficos realistas, possui um sistema
de som eficiente, física de alto nível de precisão, entre outras
funcionalidades, mesmo em dispositivos com poder de
processamento limitado. Pode ser utilizada em telefones
celulares ou computadores de mão baseados nas plataformas
Symbian OS, Windows Mobile, Linux e Brew.
instante. Este mesmo conceito pode ser aplicado às ilhas,
onde também é possível desabilitar todo um grupo de objetos
cujo processamento não é relevante em um determinado
momento.
3.2. Juntas
Fig. 1. AGEIA 100M. PPU para Notebooks.
A desvantagem mais evidente dessa biblioteca encontra-se
no fato da mesma não possuir versões gratuitas, o que
impossibilitou a realização de testes comparativos de
desempenho com o trabalho desenvolvido pelos autores deste
artigo.
Seu motor de física suporta simulação de corpos rígidos,
diferentes métodos de detecção de colisão com precisão
adequada, dependendo da necessidade do usuário, simulação
de atmosfera, simulação de aeronaves baseada em elementos
aerodinâmicos, entre outras características.
Não foi encontrado pelos autores nenhum motor de física
para Pocket PC que apresentasse versões gratuitas ou código
aberto. Isso implica dizer que, quando finalizado, o
ODE4PPC se destacará na comunidade por ser um motor de
física, gratuito e de código aberto, para a plataforma Pocket
PC.
3. ODE: OPEN DYNAMICS ENGINE
O ODE foi desenvolvido para utilização em aplicações de
tempo real, que demandam o favorecimento da velocidade de
processamento em prol da precisão da simulação física.
Devido a esta característica, o ODE foi a biblioteca
considerada mais adequada ao porte para a plataforma Pocket
PC. As seções seguintes trazem uma descrição rápida das
principais características do ODE.
3.1. Corpos Rígidos
O ODE suporta apenas a simulação da dinâmica de corpos
rígidos, ou seja, não fornece suporte a objetos deformáveis,
sistemas de partículas ou fluidos. No ODE, um corpo rígido
reúne uma série de características que podem sofrer mudança
com o tempo (posição, velocidade, orientação, etc.) e outras
que não são alteradas, como massa e posição do centro de
massa do objeto.
Existe no ODE o conceito de ilha, uma otimização de
processamento que agrupa todos os objetos, de forma que
representa a unidade básica de processamento. O uso de ilhas
faz com que um objeto não seja processado individualmente,
o que diminui a complexidade do processamento para Θ(n)
(ordem de n), onde n é o número de ilhas. Adicionalmente,
existe a possibilidade de desabilitar objetos, o que reduz
ainda mais a carga do processamento. Essa característica é
interessante para objetos que estão localizados em um ponto
distante da cena, quando o seu processamento não influencia
de forma significativa na cena, em foco, em um dado
No mundo real, objetos são constituídos por articulações
que limitam o grau de movimentação de uns em relação aos
outros. No ODE, isso pode ser simulado com o uso das
juntas. Elas funcionam como relacionamentos que podem ser
instanciados entre dois corpos, de modo a restringir as
posições e rotações relativas entre eles. A Figura 2 ilustra
três exemplos de juntas suportadas pelo ODE, a saber balland-socket (e.g. ombro), hinge (e.g. dobradiça) e slider (e.g.
pistão), respectivamente. Cada uma delas define um conjunto
distinto de limitações entre os dois elementos envolvidos na
ligação.
Fig. 2. Exemplos de juntas do ODE.
3.3. Mundo
O mundo representa um container onde os corpos e juntas
são inseridos. Objetos de diferentes mundos não interagem
entre si, o que significa que dois objetos de mundos
diferentes não colidem um com o outro, por exemplo.
3.4. Detecção de Colisão
A detecção de colisão é um módulo isolado do restante da
biblioteca. É possível adicionar outro módulo de detecção de
colisão que não seja o módulo padrão fornecido, bastando
apenas que a interface predefinida pela biblioteca seja
seguida.
Para que se possa detectar colisão entre os objetos, o
usuário precisa atribuir formas a eles. Estas formas,
chamadas de geometrias, permitem que o ODE calcule se
ocorreu colisão entre dois ou mais corpos.
4. ODE4PPC
O ODE possui uma interface nativa em C, apesar de estar
escrito em C++. A versão utilizada para realizar o porte foi a
0.8. O objetivo inicial deste trabalho foi gerar uma
compilação do ODE capaz de ser executada no Pocket PC,
sem preocupações em relação a qualquer tipo de otimização.
As modificações necessárias contemplaram principalmente
alguns trechos de código que executavam chamadas
específicas da Application Programming Interface (API) do
Windows versão x86. Com o objetivo de preservar a
portabilidade do código com o compilador para x86, todas as
modificações realizadas foram incluídas através de diretivas
de pré-processamento, permitindo que o compilador escolha
qual versão do código deve ser compilada. As seções
seguintes descrevem as etapas do desenvolvimento deste
trabalho.
4.1. Ambiente de Desenvolvimento e Dependências
A ferramenta Microsoft Visual Studio 2005 foi a
escolhida para compilar a versão do ODE para Pocket PC,
uma vez que essa IDE (Integrated Development
Environment) possui um utilitário de configuração que
auxilia no processo de adaptação do ambiente de
desenvolvimento, para geração de código próprio de Pocket
PC. É possível escolher entre o SDK (Standard Development
Kit) do Windows CE versão 2003 ou 2005.
Algumas funções presentes na API padrão do Windows
não estão disponíveis na biblioteca padrão do Pocket PC.
Essas necessidades foram supridas fazendo-se uso da
biblioteca LibCE [5]. A LibCE é uma extensão da libc para
Windows CE, e implementa algumas funções de
temporização e manipulação de arquivos como
strftime(), gmtime(), localtime(), mktime() e
time().
5. RESULTADOS
Uma aplicação de teste foi utilizada para validação do
porte do ODE para a plataforma Pocket PC. O dispositivo
móvel utilizado foi o HP iPAQ H5500 (ver Figura 3). Ele
possui um processador Intel PXA255 XScale de 400MHz,
128MB de RAM, 48MB de ROM e um display LCD com 16
bits de color depth com resolução de 320x240 pixels. O seu
sistema operacional é o Microsoft Windows Mobile 2003
(versão 4.20.1081, compilação 13100).
dispositivos móveis não possuem suporte em hardware para
esse tipo de cálculo.
A implementação do OpenGL ES utilizada no ODE4PPC
foi a Vincent, a qual não possui aceleração em hardware [8].
Não foi necessário realizar nenhuma modificação no núcleo
do sistema de renderização para implementar a aplicação de
demonstração.
5.2. A Aplicação
A aplicação utilizada para a validação do porte foi
adaptada a partir de uma das aplicações de teste disponíveis
com o código fonte do ODE, a “test_chain1”. Chain (cadeia)
é uma expressão em inglês que significa uma série de links
conectados, tal qual uma corrente de bicicleta.
No exemplo, uma série de bolinhas estão conectadas
através das juntas do ODE, fazendo com que a
movimentação de uma bolinha cause impacto no
deslocamento de todo o conjunto. O número de bolinhas da
simulação foi parametrizado, podendo assumir qualquer
valor a partir de dois. A cada passo da renderização uma
força é aplicada no sentido positivo do eixo Z (para cima) em
uma das bolinhas na extremidade da corrente. A força da
gravidade atua no sentido contrário da força aplicada,
fazendo com que as bolinhas fiquem em um ciclo de subidas
e descidas sucessivas. Elas colidem entre si e também com o
plano criado para representar o piso. Dois screenshots da
execução da aplicação são mostrados na Figura 3.
5.1. Sistema de Renderização
Devido à característica 3D da aplicação de teste, foi
necessária a utilização de uma biblioteca gráfica para
renderização. Dentre as disponíveis, o OpenGL ES (OpenGL
for Embedded Systems) apresentou ser a melhor opção [6].
Essa biblioteca é uma versão resumida de OpenGL, e foi
concebida especificamente para dispositivos móveis como
Personal Data Assistants (PDAs), telefones celulares e
consoles de videogames.
Na concepção do OpenGL ES, muitas das funcionalidades
do OpenGL foram removidas, e poucas foram acrescentadas.
Pode-se citar duas destas mudanças como principais: a
remoção das primitivas glBegin-glEnd e a introdução de
tipos de dados de ponto fixo para as coordenadas de vértices
[7]. O uso das primitivas glBegin-glEnd é uma das
maneiras disponíveis em OpenGL para realizar a
renderização de polígonos, e foi removida do OpenGL ES
por questões de desempenho. Para renderizar, por exemplo,
uma malha de triângulos no OpenGL ES, são necessários três
passos: primeiro deve-se declarar um array com os vértices
de todos os triângulos a serem renderizados, em seguida é
preciso utilizar a instrução glVertexPointer para criar
um ponteiro para os vértices definidos no array, e por último
chamar a função glDrawArrays(GL_TRIANGLES) para
renderizar simultaneamente todos os triângulos.
O suporte a ponto fixo foi adicionado no OpenGL ES para
otimizar o processamento realizado nos processadores de
dispositivos embarcados. Apesar das operações de ponto
flutuante poderem ser executadas via software, geralmente os
Fig. 3. Screenshots da aplicação de teste do ODE4PPC.
5.3. Testes Comparativos
Quando realizando cálculos de física em tempo real, uma
característica importante que deve ser levada em
consideração é a quantidade de passos de simulação por
segundo que a aplicação é capaz de executar. Uma carga de
testes foi executada para obter a taxa média de passos de
simulação por segundo da aplicação utilizada nos testes do
ODE4PPC.
Dois conjuntos de teste foram realizados para validação:
no primeiro a aplicação foi executada de forma integral,
incluindo a renderização da parte gráfica, tarefa executada
pelo OpenGL ES; nos testes seguintes a parte gráfica foi
suprimida, de modo que a simulação física pudesse ser
realizada sem o fornecimento do retorno visual.
Este procedimento foi necessário para avaliar qual o
impacto causado pela renderização gráfica no desempenho
final da aplicação. Esta avaliação é importante, visto que a
versão do OpenGL ES adotada nos testes não possui
aceleração gráfica e portanto mascara o desempenho real do
porte implementado.
Testes com Retorno Visual
Os resultados dos testes realizados com retorno visual
foram compilados no Gráfico 1. Nele pode-se observar que a
taxa de atualização decresce de forma logarítmica à medida
que se aumenta o número de objetos na simulação.
Gráfico 1. Taxas de renderização obtidas nos testes com retorno
visual.
Testes sem Retorno Visual
Para realizar esse tipo de teste o código da aplicação foi
modificado para suprimir as linhas responsáveis pela
renderização das cenas. Um loop infinito era responsável por
realizar a simulação física, chamando a cada iteração o
método responsável por efetuar o passo de simulação.
Não se faz necessário calcular a quantidade de frames por
segundo (fps), pois a noção de frame está ligada diretamente
à renderização gráfica das cenas. Dessa forma, a grandeza
medida durante a execução da aplicação foi o tempo
decorrido entre o início e o fim de cada passo da simulação
física, representado em microssegundos. Os resultados
obtidos podem ser vistos no Gráfico 2.
Gráfico 2. Tempos médios gastos nos passos da simulação.
Para efeito de comparação com os resultados obtidos nos
testes realizados com o retorno visual, convertendo os
valores do Gráfico 2 para fps, ter-se-ia taxas variando de 903
fps, no caso da simulação com dois objetos, até 89 fps,
quando utiliza-se 10 objetos. Isto evidencia que a maior parte
do tempo de execução é gasta com a renderização dos
objetos e não com o cálculo da física. Este fato é uma
conseqüência direta da utilização da versão do OpenGL ES
sem aceleração por hardware.
6. CONCLUSÕES E TRABALHOS FUTUROS
O porte do ODE para a plataforma Pocket PC traz uma
grande contribuição para a comunidade de desenvolvimento
de jogos e aplicações de realidade virtual para dispositivos
móveis. Atende a necessidade destes desenvolvedores por ser
um motor de física gratuito e de código aberto. O
desenvolvimento deste porte abre espaço para o porte de
outras bibliotecas de física para Pocket PC, como também a
extensão deste porte para outras plataformas.
Um dos próximos trabalhos a serem realizados será a
conversão do código para utilização de aritmética de ponto
fixo. Essa conversão trará um ganho de desempenho
significativo, pois tornará o código do ODE4PPC mais
adaptado ao contexto do tipo de processamento que os
dispositivos móveis utilizam. Adicionalmente, outra extensão
será a utilização de uma versão do OpenGL ES com suporte
a aceleração por hardware nos testes. Isso trará a
possibilidade de testes mais precisos e eficientes, onde o
desempenho do porte poderá ser melhor avaliado.
Outro trabalho futuro será a integração deste porte com o
framework de realidade aumentada visto em [9]. O objetivo é
complementar a suíte de desenvolvimento de aplicações de
realidade aumentada para Pocket PC com o suporte à
simulação física fornecido pelo ODE4PPC.
AGRADECIMENTOS
Os autores agradecem ao CNPq, que parcialmente
financiou este projeto.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] D. H. Eberly, Game Physics (Interactive 3d Technology
Series), Morgan Kaufmann, Edição Bk&CD-Rom, San
Francisco, 2004.
[2] AGEIA,
“AGEIA
PhysX”,
disponível
em
http://www.ageia.com/physx/, visitado em Setembro de
2007.
[3] R. Smith, “Open Dynamics Engine (ODE)”, disponível
em http://ode.org/, visitado em Setembro de 2007.
[4] WARELEX, “Mobiola 3D engine”, disponível em
http://www.warelex.com/games/engine.php, visitado em
Setembro de 2007.
[5] Graz University of Technology, “Handheld Augmented
Reality”, disponível em http://studierstube.icg.tugraz.ac.at/handheld_ar, visitado em Setembro de 2007.
[6] Khronos Group, “OpenGL ES Overview”, disponível
em
http://www.khronos.org/opengles/index.html,
visitado em Setembro de 2007.
[7] D. Nadalutti, L. Chittaro, and F. Buttussi, “Rendering of
X3D Content on Mobile Devices with OpenGL ES”, in
Proc. of 3D Technologies for the World Wide Web, pp.
19-26, 2006.
[8] Vincent, the 3-D Rendering Library for Pocket PCs and
Smartphones based on the Published OpenGL,
disponível em http://ogl-es.sourceforge.net, visitado em
Junho de 2007.
[9] J. P. S. M. Lima: “Um framework de realidade
aumentada para o desenvolvimento de aplicações
portáveis para a plataforma pocket PC”, Trabalho de
Graduação, Universidade Federal de Pernambuco Centro de Informática, 2007.
REALIDADE VIRTUAL APLICADA À EDUCAÇÃO: REFLEXÕES SOBRE O
ESTADO DA ARTE E O FUTURO
Andréia C. Rizzato1 , Fátima L. S. Nunes2
1
Universidade Estadual Paulista – Faculdade de Ciências – Campus de Bauru – Bauru-SP
Centro Universitário Eurípides de Marília – Programa de Pós-Graduação em Ciência da Computação - Marília-SP
2
Resumo - Este artigo apresenta a Realidade Virtual aplicada
à Educação, incluindo suas características, vantagens e
limitações. Exemplos de aplicações são apresentados,
destacando-se sua eficiência e utilidade. Ao final, é
apresentada uma reflexão sobre as possibilidades reais de
aplicação desta tecnologia ainda inovadora na área
educacional.
Palavras-Chave – Ambiente Virtual, Educação, Realidade
Virtual, Ensino.
Abstract – This paper presents the Virtual Reality applied to
education area, including characteristics, advantages and
limitations. Some examples of applications are presented,
highlighting their efficiency and usefulness. Also a reflection
about the real possibilities for applying this still innovative
technology in the teaching area is presented in the paper.
1
Keywords - Virtual Environment, Education, Virtual Reality,
Teaching.
1. INTRODUÇÃO
A educação é um processo contínuo de aprendizado que
obtém melhores resultados quando a pessoa está motivada a
aprender e quando há ferramentas adequadas para este fim.
Alguns assuntos são de difícil compreensão devido à sua
natureza abstrata ou simplesmente por não ser possível o
contato físico com os mesmos.
No final da década de 80 e início da década de 90, a RV
surpreendeu a imaginação do público e da imprensa,
especialmente o estudo geral da ficção científica. A partir de
histórias na imprensa Americana a respeito do fracasso das
escolas na educação dos estudantes, as pessoas estavam
procurando por algo para curar todo o sistema educacional
ruim. Existiam pessoas na comunidade educacional que
defendiam a RV como a onda do futuro na educação, embora
o que era entendido como RV estava muito em discussão [1].
O crescimento geral da popularidade da RV, combinado
com a preocupação sobre o sistema educacional, resultou em
que quase qualquer programa que usava um computador para
fazer algo remotamente relacionado à educação foi
especulado como sendo uma aplicação de RV. Parte desta
confusão ocorreu porque algumas pessoas se referem a
qualquer simulação no computador como RV [1].
Hoje o contexto já sofreu algumas alterações. Já se tem
uma definição mais restrita de RV, de suas classificações e
aplicações. Ainda segundo [1], atualmente as experiências
com educação através de sistemas de RV indicam que a
aplicação não imersiva, baseada em Web, é uma boa
alternativa em relação às aplicações imersivas. Mesmo que o
nível de imersão possa ser menor, a possibilidade de usar
esta tecnologia na sala de aula ou em casa, sem a necessidade
de muitos investimentos e treinamento, supera as vantagens
de usar instalações de alto custo.
Atualmente, aplicações de Realidade Virtual (RV) podem
oferecer meios para tornar a educação mais cativante, ao
mesmo tempo em que facilita a compreensão do assunto.
Com base nestas premissas, este trabalho apresenta
algumas aplicações de RV, enfatizando seus benefícios e
dificuldades quando aplicada à educação.
A seção 2 apresenta os benefícios e limitações da RV na
educação e a seção 3 cita algumas aplicações desenvolvidas
nesta área. Na seção 4 é feita uma análise sobre a situação
atual e perspectivas futuras desta tecnologia quando aplicada
à educação. Por fim, na seção 5, é apresentada a conclusão e
sugestões de trabalhos futuros.
2. BENEFÍCIOS E LIMITAÇÕES
Entre as razões para utilizar a RV na educação estão:
motivação dos usuários, maior poder de ilustração,
possibilidade de análise do objeto de estudo a partir de
pontos de vista diversos e oportunidades para experiências
individuais - cada usuário pode seguir seu próprio ritmo de
aprendizagem e estímulo à participação do estudante. As
pessoas têm diferentes preferências para aprendizagem
(visual, verbal, exploratória ou por dedução) e as aplicações
podem ser direcionadas para cada estilo [2].
Durlach e Mavor [3] lembram que tecnologias da
informação como a RV podem ter importante função para
melhorar a educação, considerando que é um potencial
veículo através do qual o alcance das experiências em que os
estudantes são expostos consegue ser amplamente
aumentado; pode oferecer ambientes imersivos e interativos
que fornecem grande contexto no qual problemas intelectuais
interessantes
aparecem
naturalmente;
e
aumenta
potencialmente a possibilidade de experiências colaborativas.
A RV oferece aos professores e estudantes experiências
únicas que são consistentes com uma estratégia educacional
bem sucedida: participação na experiência, projetos e
discussão em grupo, simulações e o conceito de visualização.
Dentro dos limites das funcionalidades do sistema, é possível
criar qualquer coisa imaginável e fazer parte dela [4].
Bricken [4] afirma que com a RV o ambiente de estudo
pode ser experimental e intuitivo, fazendo parte de um
contexto de informação compartilhada que oferece
interatividade e pode ser configurada para o estilo de cada
indivíduo, conforme detalhado a seguir:
 estudo experimental: o ambiente de ensino com RV é um
contexto que inclui a natureza múltipla da inteligência
humana - verbal ou lingüística, lógica ou matemática,
espacial, cinestético e interpessoal;
 interação com a informação: a tecnologia é projetada para
se adequar à arquitetura humana. O mundo virtual autoriza
o usuário a se mover, conversar, gesticular e manipular
objetos e sistemas intuitivamente;
 experiência compartilhada: o computador pessoal é
projetado para operações individuais. O mundo virtual
pode ser utilizado no contexto individual e social. As
aplicações de RV em rede permitem vários participantes
interagindo simultaneamente no mesmo ambiente;
 novas capacidades: os participantes adquirem novas
capacidades, como a habilidade de voar através do mundo
virtual, segurar um objeto com o corpo virtual, observar o
ambiente através de muitas perspectivas.;
 características individuais: os professores podem
representar informações nas formas que são mais
compatíveis com o estilo particular de estudo do aluno.
Apesar do fato de que as aplicações de RV para educação
são bastante promissoras, várias limitações ainda são
observadas. De acordo com [5], a expectativa para adoção
em grande escala de soluções altamente imersivas como as
cavernas na educação, ainda são irreais para um futuro
próximo. Além disso, a adoção de dispositivos como
capacetes, luvas e dispositivos hápticos, é muito inferior ao
que inicialmente era esperado. Sem levar em consideração as
razões para esta lenta adoção, o fato é que a educação
baseada em RV, embora muito atraente, fica um assunto
particularmente de experiências em laboratório do que de
desenvolvimento em larga escala .
Ainda de acordo com [5], existem ainda dois problemas
principais na criação de conteúdo: eficiência do processo de
produção e alta qualidade do conteúdo produzido. O rápido
crescimento e mudança do conhecimento implicam na
necessidade de criação e atualização contínua de grande
quantidade de material de estudo para alcançar as
expectativas e necessidades dos estudantes. O processo de
produção de conteúdo precisa ser rápido, barato e não pode
necessitar de habilidades avançadas de computador por parte
dos autores de conteúdo. Com relação à qualidade do
conteúdo, ela é de importância crítica no caso de ambientes
de estudo, onde confiança e precisão visual das simulações é
particularmente importante.
Bricken [4] lembra que usar RV nas escolas introduz
mudanças técnicas e culturais [4]. Entre as dificuldades estão
o custo, utilidade e desconfiança:
 custo: os sistemas comerciais de RV sofisticados, que
oferecem modelos complexos e diversas funcionalidades
são relativamente caros.
 utilidade: é necessário verificar a utilidade do sistema para
estudantes de várias idades, professores e para o currículo
escolar. Como todos os estudantes estão engajados em
atividades virtuais, é necessário projetar muitos níveis,
considerando
a
apresentação
multisensorial
de
informação, múltiplos métodos de interação, contexto
virtual apropriado, e a escolha e estrutura do conteúdo a
ser investigado;
 desconfiança: existe uma ansiedade sobre o uso impróprio
da RV e medo que a tecnologia possa ter alguma
característica negativa. Alguns destes medos são: medo de
errar, medo de perder a identidade, medo de perder o
controle para outras formas de vida ou para outras
pessoas, medo de não ter acesso, medo de confusão entre
o mundo real e virtual, medo do abandono e da solidão. O
medo da tecnologia pode ser a mais sutil e mais
importante mudança para a aceitação da RV como sendo
adequada para as crianças.
3. APLICAÇÕES
Os benefícios citados anteriormente são motivos pelos
quais várias aplicações são desenvolvidas, apesar das
limitações ainda presentes. Algumas aplicações de RV
desenvolvidas com propósitos educacionais estão em fase de
experimentação, outras já são utilizadas efetivamente.
3.1 – Ensino de Informática
De acordo com [6], é difícil para os estudantes aprender a
projetar aplicações orientadas a objeto quando eles têm um
entendimento incompleto ou incorreto dos conceitos e
relacionamentos. O uso de três dimensões nos sistemas de
modelagem de aplicações pode ajudar os estudantes a
aprender os conceitos e se tornar melhores programadores. A
partir dessas afirmações, os autores propuseram uma
aplicação em RV chamada de Virtual Software Engineering
Environment (VIRSEE), a qual tem como objetivo ensinar
conceitos de engenharia de software. Os conceitos essenciais
que precisam ser representados neste tipo de aplicação
incluem classe, objeto, método e propriedade.
Da mesma forma, o ensino de redes de computadores nas
universidades poderia ser melhorado através de uma infraestrutura extra para que os alunos aplicassem as teorias
adquiridas. A partir dessas premissas, Godinho et al. [7]
criaram o protótipo de um Ambiente Virtual Colaborativo
que auxilia no ensino e aprendizagem de redes de
computadores. Trata-se de um ambiente tridimensional
compartilhado por vários usuários que podem interagir entre
si em tempo real e realizar tarefas em conjunto [7].
3.2 – Ensino de Medicina
O ensino da Medicina é feito em grande parte por meio
dos atlas de anatomia, que possuem informações gerais sobre
o corpo humano ou específicas sobre sistemas e órgãos. De
acordo com [8], o atlas digital apresenta vantagens
significativas sobre o de papel, como a possibilidade de
interagir com o objeto e um maior realismo das estruturas
anatômicas.
O atlas digital AnatomI 3D é um software de uso livre,
baseado em RV, que apresenta estruturas tridimensionais do
corpo humano e seus respectivos descritivos com
informações textuais a respeito de cada estrutura [8]. Dentro
deste contexto e com o objetivo de facilitar o estudo de
anatomia e fisiopatologia do câncer de mama, Ramos e
Nunes [14] apresentam um Atlas Virtual que permite o
acesso a uma base dados, fornecendo informações sobre as
estruturas durante a navegação, além de possibilitar a
visualização do crescimento de tumores malignos.
Além dos Atlas virtuais, o ensino de Medicina é
contemplado em RV por inúmeras pesquisas na área de
simulação e treinamento de procedimentos nas mais diversas
especialidades.
Suturas,
laparoscopia,
oftalmologia,
ortopedia e biópsias são as mais citadas na literatura.
3.3 – Ensino de Física e Química
Dentro do ensino de física, existe uma aplicação utilizada
para demonstrar que a projeção de um movimento circular
uniforme em qualquer diâmetro da trajetória produz um
movimento harmônico simples (MHS). O AV foi
desenvolvido na linguagem Virtual Reality Modeling
Language (VRML) e testado por cerca de 30 alunos de uma
escola pública e outra privada, sendo que 95% dos
envolvidos disseram que o aprendizado foi bem estimulado
com o uso do AV [9].
O AV Chemistry World permite que os participantes
formem átomos e moléculas a partir de blocos básicos de
elétrons, prótons e nêutrons. Provas realizadas com alunos do
ensino médio, antes e depois da utilização da ferramenta de
RV, mostraram que esta tecnologia é uma efetiva ferramenta
de educação. A melhora foi em média de 20% nos testes
escritos e 50% nos testes orais [2].
O projeto de RV Água Virtual é composto por um
conjunto de cenários para simulação molecular da água e
representação de órbitas moleculares e atômicas com
visualização tridimensional interativa. Pode ser utilizado
capacete para a visualização tridimensional e imersiva dos
cenários [10].
3.4 - Ensino de literatura
A RV também pode ajudar a engajar os estudantes com
relação à literatura. Pinho [2] relata a criação de um livro
virtual, no qual cenas sobre os principais personagens da
história eram disponibilizados tridimensionalmente. Os
alunos foram então imersos na cena e puderam caminhar pela
história. Como resultado, observou-se que os alunos que já
haviam lido o livro passaram a discutir o texto e analisar seus
detalhes, comparando o mundo virtual com a visão que eles
tinham do livro.
3.5 – Ensino do Meio-ambiente
Arns et al. [11] afirmam que as teorias ecológicas
descrevem sistemas complexos e dinâmicos, mas são
apresentados aos estudantes utilizando meios de visualização
estáticos que não comportam estas complexidades. Os
autores criaram uma simulação da ecologia dinâmica
modelando insetos e o ambiente que o inseto habita. Foram
selecionados vinte insetos em três ilhas. Para utilizar a
ferramenta os usuários podem selecionar uma das três ilhas e
mover a simulação no interior dela. Um contador grava a
população de cada espécie e fornece um número total de
espécies presentes na ilha.
O Virtual Reality Gorilla Exhibit tem o objetivo de
ensinar sobre a interação entre os gorilas, sua estrutura social
e habitat. O usuário utiliza um capacete, sistema de áudio e
um rastreador para fornecer informações sobre posição e
orientação. Este sistema foi testado por vários grupos de
estudantes e suas interações mostraram que eles estavam
aprendendo sobre o comportamento dos gorilas conforme
eles ficavam mais tempo interagindo com o sistema [1].
3.6 – Ensino em ambiente colaborativo
O Global Change World (GCW) é um AV educacional
que permite colaboração, ou seja, mais de um estudante
imerso e interagindo no AV ao mesmo tempo. Dentro do
AV, os estudantes são capazes de falar e ouvir uns aos outros
por meio de um sistema de comunicação interno. Através de
um conjunto de ferramentas virtuais, é possível executar
várias tarefas educacionais dentro do ambiente. Este AV
educacional foi aplicado inicialmente a 110 estudantes de
uma escola em Washington, que após a utilização
responderam a um questionário a respeito de sua experiência.
O resultado do questionário mostrou que a maioria dos
estudantes achou a experiência bastante agradável e que
gostaria de repeti-la [12].
Considerando o potencial das tecnologias da informação
como a RV, realidade aumentada, Internet e educação a
distância, Okada, Tarumi e Yoshimura [13], propuseram um
sistema de apoio ao ambiente educacional colaborativo
chamado DigitalEE. Este sistema é composto por funções
que são disponibilizadas via Internet, fornecendo experiência
por meio da RV, suplementando o universo real com a
realidade aumentada, e dando aos estudantes o conhecimento
dos especialistas através da educação a distância.
4- ANÁLISE CRÍTICA
Através dos benefícios, dificuldades e exemplos citados
anteriormente, percebe-se que a utilização de RV em
aplicações educacionais envolve muito mais que a tecnologia
para geração de ambientes virtuais (AVs). Em todo o mundo,
existe grande empenho no desenvolvimento de aplicações
para serem utilizadas nos mais diversos segmentos
educacionais, do ensino fundamental ao superior, passando
por áreas extracurriculares.
No entanto, a maior parte destas aplicações ainda é
utilizada de forma modesta ou como meio de avaliação do
potencial da RV, não sendo empregada em larga escala na
maioria das instituições. Isso se deve em grande parte à falta
de estrutura tecnológica das escolas, que geralmente não têm
recursos suficientes para aquisição de equipamentos de
informática, mesmo os mais simples. Outro fator importante
que contribui para este cenário é a falta de capacitação dos
professores para o uso destas aplicações, aliado ao medo com
relação às novas tecnologias. Muitos professores e pessoas
ligadas ao ensino desconhecem os benefícios que a RV pode
proporcionar ao aprendizado.
Para que a RV seja aplicada de forma efetiva na educação
e, em especial, à educação no Brasil, falta uma melhor
estrutura tecnológica nas instituições de ensino, bem como
em outros lugares que proporcionem aprendizado e
enriquecimento cultural, como museus, zoológicos e
bibliotecas. As aplicações devem ser construídas com bases
pedagógicas sólidas, levando em consideração a opinião de
professores, alunos e demais envolvidos no processo. Este
requisito
envolve,
obrigatoriamente,
equipes
multidisciplinares trabalhando nos projetos.
Além disso, é necessário que os educadores sejam
capacitados para a utilização das aplicações, de forma a tirar
o melhor proveito delas. É importante divulgar e mostrar
como a RV pode beneficiar a educação em seus diversos
aspectos, para que haja maior interesse por parte da
sociedade. De uma maneira geral, para que a educação possa
ser ainda mais beneficiada pela RV, são necessários
investimentos em infra-estrutura e treinamento.
Para resolver os problemas citados, é necessário
desenvolver sistemas que permitam a criação de conteúdo
interativo e dinâmico baseado em modelos de conteúdo e
bibliotecas de componentes reutilizáveis. Dessa forma, o
conteúdo educacional pode ser facilmente personalizado em
um tempo menor. O uso de modelos de conteúdo torna mais
rápido o processo de produção do conteúdo de ensino
enquanto mantém alta qualidade visual [5]. Além disso, os
computadores poderosos estão se tornando mais baratos e
estão sendo desenvolvidos sistemas de RV a preços mais
acessíveis [4];
As aplicações citadas mostram que a RV pode ser bastante
útil para auxiliar na educação, em especial para o ensino de
disciplinas que tratam de temas abstratos e que não dispõem
de meios físicos para demonstração. Os resultados obtidos
com o uso desta tecnologia são, em sua maioria, positivos. A
RV desperta interesse nos alunos, ajuda a fixar o
conhecimento e auxilia o professor na tarefa de ensinar. Sua
utilidade é estendida às mais diversas áreas do conhecimento,
podendo ser empregada para ensino em nível fundamental,
médio e superior.
Devido à natureza interdisciplinar da tecnologia de RV, é
necessária a interação de profissionais de várias áreas. No
caso específico da RV aplicada à educação, faz-se necessário
o envolvimento de pedagogos e de profissionais da área que
está sendo estudada na aplicação de RV. A participação
destes profissionais é importante para garantir que as
aplicações transmitam conhecimento correto e apropriado
para cada faixa etária.
A RV, assim como qualquer outra tecnologia, não
substitui o papel do professor na formação do aluno, mas se
mostra como uma poderosa ferramenta para aumentar a
motivação e melhorar o entendimento dos mais diversos
assuntos.
5 - CONCLUSÕES
A partir das considerações apresentadas, foi possível
verificar que a RV é bastante viável e vantajosa quando
aplicada à educação. Devido a sua natureza interativa, ela
desperta a curiosidade do aluno e ajuda a fixar melhor o
conhecimento adquirido. O aluno pode se sentir motivado a
navegar e interagir no mundo virtual, passando a ter mais
interesse sobre o assunto que está sendo estudado.
Mesmo com todos os benefícios oferecidos, a RV não
deve ser apontada como a solução para os problemas
educacionais, ou como algo que fará com que os métodos de
ensino sejam completamente alterados. As aplicações em RV
mostram-se mais úteis para ensinar disciplinas com conceitos
abstratos, como física e química, e também para disciplinas
onde o aluno não tem acesso ao meio físico, como no caso da
transmissão de energia elétrica. Aplicações relacionadas ao
meio-ambiente, como aquela em que o aluno estuda a
interação e habitat dos gorilas, também são bastante
beneficiadas com esta tecnologia, pois podem reproduzir
situações onde o estudante não pode participar no mundo
real.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] D. Allison, L. F. Hodges, “Virtual Reality for
Education?”, Seoul, Korea: ACM, 2000.
[2] M. S. Pinho, “Realidade Virtual como ferramenta de
informática na educação”, SBIE, Belo Horizonte,
1996.
[3] N. I. Durlach, A. S. Mavor, Virtual Reality – Scientific
and Technological Challenges, National Academy
Press, Washington, 1995.
[4] M. Bricken, “Virtual Reality Learning Environments:
Potentials and Challenges”, Computer Graphics,
Washington, vol. 25, no. 3, jul. 1991.
[5] K. Walczak, R. Wojciechowski, W. Cellary,
“Dynamic Interactive VR Network Services for
Education. Limassol”, Cyprus: ACM, 2006.
[6] B. J. Neubauer, J. D. Harris, “Immersive visual
modeling: potential use of virtual reality in teaching
software design”, Consortium for Computing Sciences
in Colleges, Pittsburg, 2003.
[7] P. I. A. Godinho, S. C. V. Pinheiro, G. R. Silva, B. S.
Meiguins, A. S. Gonçalves, “Realidade Virtual
aplicada ao Ensino e Aprendizado de Redes de
Computadores”, in Symposium on Virtual Reality, 8,
Belém, 2006.
[8] B. S. Monteiro, M. C. O. Valdek, I. L. L. Cunha, R.
M. Moraes, L.S. Machado, “AnatomI 3D: Um Atlas
Digital Baseado em Realidade Virtual para Ensino de
Medicina”, João Pessoa, 2006.
[9] J. C. Araújo, M. W. Ribeiro, W. Silva, R. A. Luz, E.
Raimann, A. Cardoso, E. Lamounier, “Realidade
Virtual como apoio ao ensino do movimento
harmônico simples na física”, In: Workshop de
Aplicações em Realidade Virtual, 2, Recife, 2006.
[10] J. A. Trindade, C. Fiolhais, V. Gif, J. C. Teixeira,
“Ambientes
Gráficos
Tridimensionais
como
Ferramentas Físico-Químicas no Ensino e na
Aprendizagem das Ciências”. Disponível em: <
http://nautilus.fis.uc.pt/personal/jtrindade/~jtrindade/p
ub/26.pdf>. Acesso em: 11 jul. 2007.
[11] L. Arns, M. Brisbin, D. Foldes, J. D. Holland, “Virtual
Reality for Ecosystem Dynamics Education”, Purdue,
1995.
[12] R. L. Jackson, W. Winn, “Collaboration and Learning
in Immersive Virtual Environments”, Washington,
1999.
[13] M. Okada, H. Tarumi, T. Yoshimura, “Collaborative
Environmental Education Using Distributed Virtual
Environment Accessible from Real and Virtual
Worlds”, Malaga.
[14] F. M. Ramos, F. L. S. Nunes, “Construção de Atlas de
Anatomia e Fisiopatologia do Câncer de Mama
utilizando Realidade Virtual”, XVIII Sibgrapi, 2005.
REALIDADE VIRTUAL APLICADA A E-COMMERCE: PROPOSTA DE
PLATAFORMA BASEADA EM VRML E PHP
Leandro Silva Campos1, Marcos Wagner de Souza Ribeiro1
1 - Grupo de Realidade Virtual de Goiás – GRVG - Instituto Luterano de Ensino Superior de Itumbiara
Av. Beira Rio, 1001 – Bairro Nova Aurora
CEP 75523-230, Itumbiara-GO
Brasil
leandrocamposbr@hotmail.com, sisinfo.itb@ulbra.br
Resumo - Este trabalho apresenta uma proposta de
arquitetura para o desenvolvimento de lojas virtuais 3D,
baseada em Realidade Virtual não-imersiva, a qual visa
oferecer interfaces mais realistas nas aplicações de ecommerce, colaborando para suplantar as dificuldades
impostas pelo cenário atual baseado em websites. A
apresentação da proposta de arquitetura é feita por meio de
um protótipo de loja virtual, a qual implementa a interação
entre um ambiente virtual 3D modelado em VRML e um
ambiente 2D construído em HTML e PHP.
Palavras-chave - E-commerce; PHP; Realidade Virtual;
VRML.
Abstract - This paper presents a proposal of an architecture
for virtual 3D shops development, based on Non-Immersive
Virtual Reality technologies, aiming to offer more realistics
interfaces for e-commerce applications, and collaborating to
supplant the difficulties imposed for the actual website based
scenario. The presentation of the proposed architecture is
made by a virtual shop prototype, which implements the
interaction between a 3D environment modeled in VRML and
a 2D environment built in HTML and PHP.
Keywords - E-commerce; PHP; Virtual Reality; VRML.
1. INTRODUÇÃO
Poucas revoluções contemporâneas causaram tanto
impacto na sociedade como o advento da Internet, a qual
vem revolucionando sistematicamente hábitos comuns do
cotidiano, como pagar contas, estudar, comunicar-se,
trabalhar e fazer compras.
O entendimento de que a Economia Digital baseada na
Internet será a base do desenvolvimento sustentável e a
principal fonte de geração de riqueza das nações no século
XXI [1], tem feito com que diversas organizações
governamentais e não-governamentais envidem esforços no
sentido de fortalecer e consolidar o comércio eletrônico (ecommerce) em todos os seus segmentos.
Esta pesquisa justifica-se devido ao fato de que o uso da
Realidade Virtual em e-commerce pode oferecer interfaces
mais realistas nas aplicações, colaborando para suplantar as
dificuldades impostas pelo cenário atual de lojas virtuais
baseadas em websites. Segundo [10], o modelo atual de ecommerce é uma mera adequação do modelo de website
comum, acrescido de alguns poucos recursos. O ambiente
resultante não lembra em nada o ambiente das lojas reais.
Segundo [3], esta distância no contexto visual não satisfaz as
necessidades emocionais e sociais das pessoas. Além disso,
devido ao fato de não ser um ambiente envolvente, torna-se
difícil manter o cliente na loja virtual por muito tempo.
Portanto, faze-se necessária uma nova proposta de
interface de comunicação com o usuário, de modo a tornar
mais atrativo o ato da compra.
Em aplicações de realidade virtual, o usuário não é
relegado ao papel de mero observador passivo, mas torna-se
um “participante” efetivo, um membro ativo ambiente
virtual, com o qual pode interagir e obter respostas
diferenciadas, em tempo real, conforme suas ações no
ambiente.
1.1. Realidade Virtual
Realidade virtual (RV) pode ser definida como sendo a
forma mais avançada de interface entre o usuário e o
computador até agora disponível, com aplicações na maioria
das áreas do conhecimento [8].
Para [9], a Realidade Virtual é uma interface avançada
para acessar aplicações executadas no computador, tendo
como características a visualização de, e movimentação em,
ambientes tridimensionais em tempo real e a interação com
elementos desse ambiente.
A Realidade Virtual é comumente classificada em
Imersiva e Não-imersiva. A primeira utiliza dispositivos não
convencionais, tais como capacete de visualização e luvas
especiais para interagir como ambiente virtual. Na segunda
são utilizados dispositivos convencionais, como mouse,
teclado e monitor de vídeo.
Apesar de proporcionar experiências distintas, para [9], o
importante é que haja por parte do usuário a impressão de
estar atuando dentro do ambiente virtual, apontando,
pegando, manipulando e executando outras ações sobre os
objetos virtuais, em tempo-real.
Esta pesquisa trata especificamente de Realidade Virtual
não-imersiva, devido, principalmente, ao fato de que a maior
parte da audiência de aplicações de e-commerce está
concentrada em usuários domésticos. Por essa razão, a
utilização de hardware especial não pode, a princípio, ser um
requisito para a utilização do ambiente virtual.
1.2. Comércio Eletrônico
O termo Comércio Eletrônico, ou e-commerce designa o
comércio de bens e serviços negociados por meio da internet
e está inserido em um contexto maior, designado e-business,
o qual contempla todos tipos de negócios realizados por meio
da internet. Assim, o e-commerce é considerado uma das
ferramentas do e-business.
Em países como os Estados Unidos, em que a Internet se
iniciou mais cedo, a explosão do e-commerce é mais
evidenciada. Em [1] verifica-se que já em 2003, o
faturamento das empresas com comércio eletrônico atingiu o
patamar de 55 bilhões de dólares. [1] cita também uma
estimativa de Jeff Bezos, CEO da Amazon, uma das mais
importantes lojas de e-commerce do mundo, o qual estima
que o e-commerce deve atingir entre 10% a 15% do comércio
americano nos próximos 10 anos, fato que, se confirmado,
elevará o faturamento anual do setor a um valor superior a
meio trilhão de dólares nos Estados Unidos.
O Brasil ocupa uma posição importante no ranking dos 10
países com maior número de usuários de internet [1], o que
demonstra o potencial do país para a exploração do ecommerce.
2. TRABALHOS RELACIONADOS
Estudos específicos sobre a aplicação de Realidade Virtual
Não-Imersiva em e-commerce foram realizados por vários
pesquisadores, dentre os quais, destacam-se:
- Mass (1999) [5], VRCommerce — electronic
commerce in virtual reality: Apresenta uma proposta
para a construção de shoppings virtuais 3D. Cada loja é
carregada e disponibilizada à medida que o usuário
navega pelo shopping.
- Chittaro (2000) [3], Adding Adaptive Features to
Virtual Reality Interfaces for E-commerce: Propõe a
construção de interfaces personalizadas para cada
consumidor, baseando-se na idade, sexo, itens
visualizados na loja e itens comprados. A partir destas
informações são mapeados os possíveis interesses
futuros do consumidor para criar uma interface
adaptada ao seu estilo de compra.
- Chittaro (2002) [4], New Directions for the Design of
Virtual Reality Interfaces to E-commerce Sites: Sugere
que seja explorado o potencial da RV utilizando-se
técnicas impossíveis de serem implementadas em lojas
2D convencionais, tais como: produtos 3D que
caminham pela loja; adaptação do ambiente da loja
conforme as preferências do usuário; exposição de
objetos usando massificação (vários objetos idênticos
agrupados).
- Nguyen (2003) [6], Virtual Reality for E-commerce.
Building as Interactive 3D Online Storefront: Propõe
uma arquitetura para a construção de lojas virtuais
usando a tecnologia proprietária denominada
WildTangent WebDriver em conjunto com Java. A
proposta contempla desde o modelo navegação no
ambiente até o processo de realização da compra.
As principais características observadas nas pesquisas
avaliadas foram sintetizadas na tabela I. Observa-se que a
maioria dos pesquisadores utilizou VRML como tecnologia
de RV e Java como tecnologia de apoio. Não foram
encontrados trabalhos relacionados que explorem a
integração de ambientes 3D e 2D utilizando-se PHP como
tecnologia de apoio ao conteúdo dinâmico 2D da loja virtual.
Trabalho
Mass (1999)
Chittaro (2000)
Chittaro (2002)
Nguyen (2003)
Esta pesquisa
Tecnologia
Visualização
RV
Apoio Ambiente Produtos
Compra
VRML
Java
3D
3D
3D
VRML
Java
3D
3D
n/a
VRML
Java
3D
3D
n/a
WildTangent Java
3D
3D
3D
VRML
PHP
3D
Fotografia
2D
Tabela I
Principais características dos trabalhados avaliados
3. ARQUITETURA
3.1. Tecnologias de Apoio
Para a escolha das tecnologias a serem usada no
desenvolvimento do protótipo desta pesquisa, foram
observados os seguintes critérios:
a) devido à natureza acadêmica e experimental desta
pesquisa, as tecnologias utilizadas deveriam: ser de
distribuição gratuita, de código aberto ou prover uma
versão para uso não-comercial; possuir ampla
referência em pesquisas acadêmicas; ser independente
de plataforma.
b) devido ao fato de tratar-se de um protótipo para ecommerce, o conjunto de tecnologias deveria:
possibilitar obter dinamicamente informações de um
banco de dados em tempo real; oferecer recursos para
que a o ambiente virtual possa ser visualizado em
browsers padrão de mercado; a exigência de largura
de banda de conexão com a Internet não deveria ser
restritiva para usuários residenciais.
A partir destes requisitos, as tecnologias escolhidas para a
construção do protótipo foram:
- HTML para apresentação do website;
- Linguagem PHP para os scripts server-side;
- Banco de dados MySQL;
- VRML como tecnologia de Realidade virtual.
3.1.1. HTML
As letras HTML são as iniciais de HyperText Markup
Language (Linguagem de Marcação de Hipertextos). Tratase de um padrão mundial, não-proprietário, para exibição de
documentos (páginas) na Internet.
Um documento HTML contém apenas informações sobre
a forma como devem ser exibidos textos e imagens na tela, o
que é feito por meio de tags (marcações), as quais contém os
atributos de cada elemento do documento, como cor do texto,
estilo, tipo de fonte, alinhamento etc.
Também é possível fazer com que trechos de um texto ou
uma imagem contenham hyperlinks que, ao serem clicados,
levem a outra página qualquer na Internet [2].
3.1.2. PHP
O PHP (Hypertext Preprocessor) é uma linguagem de
programação de scripts server-side (do lado do servidor),
projetada especificamente para a Web. O PHP é um produto
Open Source, ou seja, seu código fonte pode ser baixado,
utilizado, alterado e redistribuído, sem custo algum [11].
Desde que foi criado em 1994, o uso do PHP vem crescendo
sistematicamente. Em abril de 2007, o PHP era utilizado em
mais de 20 milhões de domínios em todo o mundo [7].
O código PHP pode ser mesclado ao código HTML, para
ser executado toda vez que a página for requisitada pelo
visitante. O código PHP é interpretado no Servidor Web e
gera o HTML ou outra saída que o visitante verá em seu
navegador [11]. Em websites de e-commerce, esta
característica é bastante importante porque, já que não há
necessidade de se criar uma página para cada produto, mas
sim uma única página, cujo conteúdo muda dinamicamente
conforme o produto selecionado pelo usuário. Os dados de
cada item (nome, descrição e preço, por exemplo) são
armazenados em um banco de dados. Ao receber a
solicitação da página, esses dados são carregados, a página é
montada no servidor e entregue ao cliente (navegador) de
forma personalizada.
3.1.3. MySQL
O MySQL é um sistema de gerenciamento de banco de
dados relacional (relational dabatase management system –
RDBMS) bastante rápido e poderoso. Ele utiliza SQL
(Structured Query Language), a linguagem de consulta
padrão de banco de dados em todo o mundo. O MySQL está
publicamente disponível desde 1996, mas tem uma história
de desenvolvimento que remonta a 1979 [11].
Segundo fabricante, o MySQL se tornou o mais popular
SGBD open source porque é consistente, rápido e fácil de
usar. Atualmente é usado em mais de 11 milhões de
instalações, incluindo grandes corporações.
3.1.4. VRML
A sigla VRML é o acrônimo de Virtual Reality Modelling
Language (Linguagem para Modelagem de Realidade
Virtual). Trata-se de um formato de arquivo para descrever
objetos e mundos virtuais em 3D, a qual tem sido
amplamente utilizada em diversas áreas do conhecimento. É
possível integrar ao VRML recursos multimídia como textos,
imagem, som e vídeo por meio de hyperlinks com as
respectivas fontes.
O modo mais comum de visualização de arquivos VRML
é por meio de browsers de Internet acoplados a um plug-in, o
qual lê arquivo VRML, monta a cena e a exibe ao usuário. A
área da página web que exibe a cena VRML é controlada
pelo plug-in, o qual responde a eventos de movimento ou
cliques do mouse, permitindo a navegação e a interação. O
usuário pode caminhar ou voar pelo ambiente de forma livre,
observando a cena de qualquer ângulo ou posição [4].
3.2. Arquitetura do Sistema
O propósito deste trabalho é a elaboração de uma
arquitetura para a construção de lojas virtuais baseadas na
interação entre o usuário e ambientes 3D e 2D integrados de
forma transparente ao usuário, conforme ilustra a figura 1.
GUI – Interface Gráfica com o Usuário
ação/visualização
Ambiente 3D
Ambiente 2D
Objeto 1
Objeto 2
.
.
.
Objeto n
atualização
Objeto
Database
arquivos
Servidor Web
Fig. 1. Arquitetura proposta para o sistema.
Resumidamente, destacam-se os seguintes pontos-chave:
- A interface gráfica com o usuário (GUI) é provida por
um web browser padrão de mercado.
- A visualização e interação do usuário com os ambientes
2D e 3D ocorrerá de forma integrada e simultânea.
- Os ambientes 2D e 3D não existem isoladamente, pois
cada um presume a existência do outro.
- A navegação no ambiente 3D é realizada utilizando-se
o mouse e o teclado para se locomover e selecionar
objetos. A navegação no ambiente 2D se dá como em
um website de comércio eletrônico convencional, uma
vez que é baseada em HTML.
- O ambiente 2D é atualizado dinamicamente,
apresentando com os dados de um único objeto de cada
vez, conforme a seleção do usuário no ambiente 3D.
- Todas as informações sobre o objeto selecionado são
carregadas de um banco de dados em tempo real.
- Um ou mais servidores web devem prover as
solicitações de arquivos para ambos os ambientes.
4. FUNCIONAMENTO
Assim que o usuário navega até a URL da loja, o web
browser carrega um frameset HTML, o qual contém as
instruções de composição dos três frames principais do
protótipo: “topo”, “VRML” e “produto”.
O frame “topo” contém a página “topo.html”, na qual são
exibidos o logotipo da loja e demais links de um site de ecommerce convencional.
O frame “VRML” carrega a página “vrml.html”, a qual
contém as instruções de carregamento do plugin-in e do
código VRML do ambiente 3D, cujo carregamento se dará
automaticamente.
No frame “produto” é carregada a página “produto.php”,
cujo conteúdo é construído dinamicamente, a medida que
ocorre a interação do usuário com o ambiente 3D. Ao clicar
em um objeto no cenário 3D, o mecanismo VRML se
encarregará de instruir o navegador a carregar a página PHP
correspondente ao produto selecionado. Os dados sobre o
produto são obtidos de um banco de dados MySQL.
A figura 2 representa o modelo de implementação do
website do protótipo:
vrshop.html
(frameset)
topo.html
(frame)
vrml.html
(frame)
produto.php
(frame)
executa
carrega dados
plug-in VRML
atualiza
carrega
vrshop
vrshop.wrl
Fig. 2. Modelo de implementação do website do protótipo.
Toda a interação do usuário com o ambiente virtual se dá
por meio do navegador web, no qual estão visíveis os
ambientes 3D e 2D da loja virtual. A visualização de ambos
os ambientes se dá simultaneamente, compartilhando a área
de visualização do navegador (Figura 3).
Fig. 3. Visualização dos ambientes 3D e 2D após o usuário clicar no
modelo 3D do televisor no ambiente virtual.
5. CONCLUSÕES E TRABALHOS FUTUROS
O protótipo resultante desta pesquisa demonstrou-se
eficaz considerando-se o objetivo para o qual foi criado.
Tanto os aspectos visuais quanto funcionais do protótipo
foram considerados satisfatórios na medida em que
satisfazem os requisitos de integração dos ambientes 3D e
2D em uma única interface, de modo transparente ao usuário.
A interface 3D mostrou-se atrativa o suficiente para
despertar o interesse do usuário e prender sua atenção
durante todo o processo de compra.
A utilização do módulo 2D para a continuidade do
processo de compra, baseado no modelo de lojas
convencionais de comércio eletrônico mostrou-se importante
por ser familiar ao usuário de Internet que já utiliza lojas
virtuais convencionais.
Entende-se que a implementação do conjunto VRML /
PHP é uma das maiores contribuições do trabalho, pois não
foram encontradas referências a este modelo de arquitetura
nas pesquisas realizadas.
Os seguintes trabalhos futuros são pretendidos como
continuidade desta pesquisa:
- Implementar na arquitetura um mecanismo de interação
que permita ao usuário pesquisar itens no ambiente 2D
e ser levado ao respectivo produto no ambiente 3D.
- Elaborar arquitetura que possibilite a montagem de
ambientes personalizáveis pelo próprio usuário a partir
dos objetos disponíveis na loja.
Também se pretende submeter o protótipo à apreciação de
um grupo usuários do sistema de e-commerce convencional,
visando comprovar sua eficácia como tecnologia de suporte
ao processo de compras pela Internet.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] CAMARA-E.NET. Câmara Brasileira de Comércio
Eletrônico. Disponível em <http://www.camara-e.net>.
Acesso em abr. 2007.
[2] CAMPOS, Leandro S. (2004). HTML Rápido e Prático.
Goiânia: Terra, 2004. 152p.
[3] CHITTARO, Luca; RANON, Roberto. (2000). Adding
Adaptive Features to Virtual Reality Interfaces for ECommerce. In: Proceedings of AH2000: International
Conference on Adaptive Hypermidia and Adaptive Webbased Systems, Lecture Notes in Computer Science
1892, Sprinces-Verlag, Berlin, 2000, p.85-96.
[4] CHITTARO, Luca; RANON, Roberto. (2002). New
Directions for the Design of Virtual Reality Interfaces to
E-Commerce Sites. In: AVI 2002: 5th International
Conference on Advanced Visual Interfaces, ACM Press.
p.308-305.
[5] MASS, Yosi; HERZBERG, Amir (1999). VRCommerce
- Electronic Commerce in Virtual Reality. In: ACM
Conference on Electronic Commerce 1999: 103-109.
[6] NGUYEN, Thanh Huu. (2003). Virtual Reality for ECommerce. Building as Interactive 3D Online
Storefront. Dissertação - Faculty of Art, Design and
Communication - RMIT University, Melbourne
Australia, 2003. 86f.
[7] PHP Usage (2007). Usage Stats for PHP. Disponível em
<http://www.php.net/usage.php>
Acesso em set. 2007.
[8] RIBEIRO, Marcos Wagner de Souza. (2005).
Arquitetura para Distribuição de Ambientes Virtuais
Multidisciplinares. Tese (Doutorado em Ciências) –
Faculdade de Engenharia Elétrica – UFU, Uberlândia,
2005. 176f.
[9] TORI, Romero; KIRNER, Cláudio (2006). Fundamentos
de Realidade Virtual. In: TORI, Romero; KIRNER,
Cláudio; SISCOUTO, Robson (Ed.). Fundamentos e
Tecnologia de Realidade Virtual e Aumentada. Livro do
pré-simpósio SVR 2006. Belém: Editora SBC, 2006,
cap.1-2, p.2-38.
[10] TROYER, Olga de. et al. (2006). Developing Semantic
VR-shops for e-commerce. Vrije Universiteit Brussel Belgium, 2006. 40p.
[11] WELLING, Luke; THOMSON, Laura (2002). PHP e
MySQL – Desenvolvimento Web. Rio de janeiro:
Campus, 2003. 676p.
REALIDADE VIRTUAL APLICADA AO ENSINO DE HISTÓRIA POR MEIO DA
RECONSTITUIÇÃO DE AMBIENTES HISTÓRICOS
Rodrigo Vasconcelos Arruda1, Wender Antônio da Silva1, Edgard Afonso Lamounier Júnior2, Alexandre
Cardoso2, Nadabe Cardoso de O. A. Fortes1, Luciano Vieira de Lima2, Marcos Wagner de Souza Ribeiro1
1 - Grupo de Realidade Virtual de Goiás – GRVG - Instituto Luterano de Ensino Superior de Itumbiara, GO
2 - Grupo de Realidade Virtual – GRV – Laboratório de Computação Gráfica – Universidade Federal de Uberlândia, MG
rodrigoitb@gmail.com, wender_silva@yahoo.com.br, lamounier@ufu.br, alexandre@ufu.br, nadabef@gmail.com,
luciano.vieira.lima@terra.com.br, marcos_wagner@yahoo.com.br,
Resumo - Este artigo apresenta o desenvolvimento de um
protótipo de software utilizando técnicas de Realidade
Virtual não imersiva, tendo como estudo de caso o centro
histórico da cidade de Itumbiara – Goiás. O objetivo é
reconstituir tridimensionalmente a Catedral Santa Rita de
Cássia e a Praça da República nos primórdios de sua
fundação, expondo as motivações e ferramentas utilizadas,
tendo como intuito a reconstituição de um ambiente
histórico, que já não existe mais. Deste modo espera-se
contribuir e constituir com um ambiente voltado para o
ensino de História e principalmente para o resgate históricocultural da cidade.
Palavras-chave – Ensino, História, Realidade Virtual,
Reconstituição Histórica.
Abstract - This article presents the development of a
prototype of software using techniques of Virtual Reality not
immersive, with the case study the historic center of the city
of Itumbiara - Goiás. The goal is to rebuild virtually the
Cathedral Santa Rita de Cássia and the Republic Square in
the beginning of its foundation, exposing the motivations and
tools used, with the aim to rebuild a historic environment,
which is no longer exists. Thus it is expected to contribute
and provide an environment geared to the teaching of history
and especially for the rescue of the historical and cultural
city.
Keywords – Education, History, Virtual Reality, Historical
Recovery.
1. INTRODUÇÃO
No mundo contemporâneo, onde a tecnologia se encontra
em basicamente todos os setores da sociedade, vê-se a
necessidade de impulsionar sua utilização como apoio aos
métodos tradicionais de ensino de modo atrativo e eficiente.
Nesse contexto, o uso da computação como ferramenta de
apoio à educação tem se tornado cada vez mais indispensável
para a melhoria da qualidade e dinamismo do processo de
ensino.
Dentre as mais variadas técnicas computacionais e suas
diversas possibilidades de aplicação, podemos destacar a
Realidade Virtual (RV), uma área que vem cada vez mais
conquistando espaço e adeptos.
Alguns são os fatores que tornam a RV uma técnica viável
e interessante de se utilizar no ensino e no resgate históricocultural, dentre as quais destacamos: pelos métodos
tradicionais de ensino, o leitor tem uma limitação visual dos
objetos em estudo por meio de imagens bidimensionais e
textos, enquanto utilizando-se de ambientes tridimensionais o
usuário tem a possibilidade de ter múltiplas visões dos
objetos que o compõe, permitindo-lhe uma análise mais
detalhada e melhor compreensão, além de poder interagir
com esse mundo.
Além disso, pesquisadores apontam como principais
vantagens na utilização de técnicas de RV para fins
educativos a motivação, poderio de ilustração de
características e processos, permite a visualização de detalhes
de objetos ou de objetos que estão a grandes distâncias, como
um planeta ou satélite ou ainda, como é o caso deste
trabalho, a visualização de ambientes que só existem nos
anais da história, permite experimentos virtuais, exige que
cada participante se torne ativo dentro de um processo de
visualização, encoraja a criatividade, provê igual
oportunidade de comunicação para estudantes de culturas
diferentes, ensina habilidades computacionais e de domínio
de periféricos [1].
O presente artigo tem como objetivo a apresentação de um
protótipo de software desenvolvido com técnicas de RV que
possa auxiliar professores e alunos no processo de abstração
dos conteúdos de história, onde basicamente será
reconstituído um ambiente regional, o qual muitas pessoas
desconhecem, pois não está nos livros de História
tradicionais usados nas escolas.
1.1. Realidade Virtual
Realidade virtual é uma interface avançada para
aplicações computacionais, que permite ao usuário navegar e
interagir, em tempo real, com um ambiente tridimensional
gerado por computador, usando dispositivos multisensoriais
[2].
A Realidade Virtual pode ser classificada, em função do
senso de presença de usuário, em imersiva e não imersiva.
A Realidade Virtual é imersiva, quando o usuário é
transportado predominantemente para o domínio da
aplicação, por meio de dispositivos multisensoriais, que
capturam seus movimentos e comportamento e reagem a eles
(capacete, caverna e seus dispositivos, por exemplo),
provocando uma sensação de presença dentro do mundo
virtual [3].
A Realidade Virtual é categorizada como não imersiva,
quando o usuário é transportado parcialmente ao mundo
virtual, por meio de uma janela (monitor ou projeção, por
exemplo), mas continua a sentir-se predominantemente no
mundo real [3].
2. TRABALHOS RELACIONADOS
Diversos são os trabalhos existentes que ressaltam a
importância da Realidade Virtual nas mais variadas áreas do
conhecimento, das quais cita-se o ensino de redes de
computadores [4], utilização da Realidade Aumentada em
museus para visualização e compreensão de coleções
artísticas, técnicas ou biológicas [5], o ensino da fotossíntese
usando da Realidade Aumentada [6], o uso da RV no ensino
de Matemática fundamental [7], um jogo RPG feito em
Realidade Virtual abordando conteúdos multidisciplinares
[8], a RV na reconstrução de ambientes históricos [9], dentre
outros.
Em todos os sistemas avaliados, conclui-se que a
Realidade Virtual é uma ferramenta de grande importância
para o auxílio na educação e principalmente na reconstituição
ou visualização de ambientes complexos, abstratos ou que
não existem mais, atuando em diversas áreas do saber,
motivando e tornando o aluno mais ativo nas aulas,
proporcionando uma melhor absorção do conteúdo
ministrado. Neste sentido é ideal também para demonstrar a
História de um determinado lugar ou construção.
3. O AMBIENTE HISTÓRICO
O ambiente histórico escolhido para a realização deste
trabalho é o centro histórico da cidade de Itumbiara nos
primórdios de sua fundação, motivado por fatores como:
pouco conhecimento dos cidadãos itumbiarenses com relação
à sua história, enorme riqueza cultural da cidade pouco
explorada, falta de uma ferramenta que possibilite alcançar
um maior número de pessoas.
O uso da Realidade Virtual na realização deste trabalho
visa estimular e motivar o usuário a conhecer toda essa
riqueza histórica e cultural descrita em poucos livros.
3.1. Breve História de Itumbiara
Itumbiara é um município brasileiro localizado no sul do
estado de Goiás, na divisa com o estado de Minas Gerais.
Sua população estimada pelo IBGE em 2005 era de 86.496
habitantes. Seus principais pontos turísticos são o Rio
Paranaíba, a Represa de Furnas e a Avenida Beira Rio.
Práticas náuticas são comuns na cidade devido ao Rio
Paranaíba. Itumbiara fica a uma distância de 206 quilômetros
de Goiânia e a 400 de Brasília.
A História de Itumbiara é contada [10] que, por volta de
1824 o Deputado Imperial Marechal Cunha Matos fez votar
uma lei autorizando a abertura de uma estrada variante
partindo do povoado de Uberaba, antiga Farinha Podre
dirigindo-se à Goiás, atravessando o Rio Paranaíba onde se
construiu um porto de passagem em balsa. Junto a esse porto
formou-se um povoado, nomeado Porto de Santa Rita. Por
decreto do Governo Provincial, em 02 de agosto de 1842, foi
criado o Distrito e Freguesia de Santa Rita do Paranaíba
pertencente ao município de Morrinhos.
Foi elevado a Município em 16 de julho de 1909 e
instalado em 12 de outubro de 1909. Por lei Estadual em 27
de julho de 1915, Santa Rita foi elevada a Categoria de
Cidade e à Comarca em 31 de julho de 1918 [10].
Por intermédio de um concurso, o Município de Santa
Rita do Paranaíba passou a denominar-se Itumbiara que, em
Tupi-Guarani significa “Caminho da Cachoeira” [10].
3.2. A praça da matriz
Conta-se [10] que o primeiro Jardim Público de Itumbiara
foi construído entre os anos de 1.934 e 1.935 por decreto do
prefeito municipal Cel. Sidney Pereira de Almeida.
O projeto deste jardim foi executado pelo Engenheiro Dr.
Eduardo Figueiredo Mendes, e foi entregue ao público com
grande festa em 23 de julho de 1.935.
Neste projeto constava a construção dos canteiros,
calçamentos e um coreto que ficava de frente à Catedral.
3.3. Catedral Santa Rita de Cássia
Conta-se ainda [10] que a Igreja Santa Rita de Cássia fora
elevada a Paróquia em 02 de agosto de 1.842, pelo Bispo de
Goiás Dom Prudêncio, sendo que o primeiro batizado foi
realizado pelo padre goiano Felip Fleury em 1.868, que na
ocasião batizou a filha de uma escrava de Manoel Teixeira de
Queiróz.
Dentre os principais nomes religiosos da cidade podemos
destacar o Padre Florentino Bermejo, que administrou a
Paróquia Santa Rita de Cássia de junho de 1.917 à 20 de
dezembro de 1.965, ano de seu falecimento.
Segundo fontes da Casa da Cultura de Itumbiara, em seu
projeto original a Catedral Santa Rita de Cássia ficava de
frente para o Rio Paranaíba, dando boas vindas aos visitantes
que chegavam. Posteriormente foi alterada ficando de frente
para a cidade.
3. MÉTODOS APLICADOS
Inicialmente foi realizado um levantamento bibliográfico
das características físicas do ambiente em questão, por meio
do material disponibilizado na Casa da Cultura de Itumbiara
que conta em seu acervo com fotografias e objetos originais
da época, obras de arte como quadros e uma maquete,
trabalhos produzidos por artistas plásticos da cidade que
vivenciaram a época.
Posteriormente foi realizada a modelagem dos objetos e a
implementação do protótipo, que são tratados a seguir.
3.1. Modelagem
A modelagem foi feita utilizando-se o 3ds Max [11]. A
escolha desta ferramenta deve-se a ela ser uma das mais
utilizadas na área de computação gráfica atualmente, graças à
sua diversidade de funcionalidades técnicas bem como apoio
didático de fácil acesso e que oferece uma grande gama de
recursos, facilitando o processo de modelagem. Outro fator
importante para a escolha do 3ds Max é que ele permite
importar e exportar objetos para os principais formatos
tridimensionais existentes.
A modelagem foi dividida em 3 fases: modelagem da
Catedral, a modelagem do Coreto e a modelagem dos demais
objetos que formam a praça (banco, canteiros, etc).
3.1.1. Catedral Santa Rita de Cássia
A catedral Santa Rita de Cássia era uma construção bela e
imponente que orgulhava a população itumbiarense.
Segundo conta-se, em seu primeiro projeto a Igreja era
voltada de frente para o Rio Paranaíba, onde hoje se encontra
a fonte luminosa na Praça da República e dava boas vindas
aos visitantes que chegavam do estado de Minas Gerais.
A figura 1 é uma foto original da época e demonstra toda
essa beleza.
apresentações de bandas marciais, discursos políticos, ou
simplesmente um ponto de encontro da população.
Na Praça da Matriz situava-se à frente da Catedral Santa
Rita de Cássia, que trazia uma elegância a mais para a Praça.
Possuía uma geometria em forma de hexágono e era
composto por entradas de ambos os lados, uma escada que
dava acesso ao andar superior onde havia bancos, a partir do
qual a população tinha uma vista privilegiada do centro da
cidade.
A figura 3 é uma representação em maquete do cenário da
Praça, confeccionada por um artista plástico da cidade.
Fig. 3. Maquete da Praça. (Disponível para visitação na Casa da
Cultura de Itumbiara).
Fig. 1. Foto da Catedral Santa Rita de Cássia. (Disponível para
visitação na Casa da Cultura de Itumbiara).
A figura 4 mostra a imagem do objeto tridimensional,
modelado no 3ds Max, que representa o Coreto.
De seu projeto original, praticamente nada sobrou da
Catedral. Hoje Itumbiara conta com uma igreja moderna,
mas não menos imponente e bela que sua antecessora.
A representação tridimensional da Catedral é mostrada
pela figura 2 a seguir.
Fig. 4. Representação tridimensional do Coreto.
3.2. Implementação
Fig. 2. Representação tridimensional da Catedral Santa Rita de
Cássia.
3.1.2. Coreto
O coreto era uma construção comum naquela época, em
praças e jardins das cidades, onde geralmente havia
Na implementação de um sistema em RV faz-se
necessário a integração entre várias ferramentas de
modelagem, linguagens e bibliotecas quando é o caso.
Feito a modelagem dos objetos utilizando o 3ds Max,
estes foram exportados para a linguagem VRML (Virtual
Reality Modeling Language), que é uma linguagem de
programação destinada a criação de ambientes virtuais 3D.
Arquivos que simulam ambientes tridimensionais em
VRML são, na verdade, uma descrição textual na forma de
textos ASCII, que são interpretados por um plug-in VRML e
visualizados diretamente no navegador de internet [1].
O fato de o código VRML ser interpretado por um plugin, merecendo destaque o Cortona e o Cosmo Player, lhe traz
vantagens em relação a outras linguagens e bibliotecas, como
o código funcionar independente de plataforma e navegador
utilizado, dependendo apenas da instalação do plug-in
adequado e a facilidade de sua disponibilização na Internet,
pois gera códigos muitos pequenos.
Uma maior complexidade na interação do usuário com os
objetos foi obtida por meio do uso do Javascript juntamente
com o VRML.
4. FUNCIONAMENTO DO SISTEMA
O protótipo é visualizado por meio do browser de
Internet. A página inicial possui algumas instruções sobre
como utilizar o protótipo e principalmente sobre a instalação
do Cortona para as pessoas que forem o utilizar pela primeira
vez, disponibilizando inclusive um link onde pode baixá-lo já
que, assim como o VRML, o Cortona é disponibilizado
gratuitamente no site do fabricante.
O conteúdo da página conta a história da cidade de
Itumbiara, no estado de Goiás, desde a época de sua
fundação até os tempos atuais, bem como a sua importância
no cenário goiano.
Dentro do ambiente virtual tridimensional, o usuário pode
navegar livremente pelo cenário, utilizando simplesmente as
setas do teclado (⇐,⇑, ⇓, ⇒).
No interior da Catedral ele tem a possibilidade visualizar
os detalhes arquitetônicos da época, as imagens sacras, o
altar entre outros. Da mesma forma, o lado exterior consta
com uma bela paisagem que era a praça, com seus jardins e
canteiros.
Dentro do coreto, no andar superior, o ponto de vista do
usuário fica ainda mais belo, vendo todos os cantos da praça
com uma visão mais elevada.
A figura 5 demonstra o diagrama de caso de uso do
sistema com as principais ações do usuário.
Fig. 5. Diagrama de caso de uso.
5. CONCLUSÕES
As pesquisas demonstraram que existe uma gama enorme
de aplicações de Realidade Virtual voltadas para a educação,
mas pouco se encontrou sobre trabalhos que tratam
estritamente do ensino e resgate histórico e cultural de
cidades.
Demonstrou também que a RV pode facilitar
consideravelmente o processo de abstração do conteúdo
pelos alunos de aplicação pelo professor, tornando-o mais
atrativo e eficiente. É importante frisar ainda que o trabalho
em questão será disponibilizado à população e às escolas
públicas da cidade, resgatando assim, parte da história de
Itumbiara.
5.1. Trabalhos futuros
Existem alguns pontos considerados essenciais, que
devem ser tratados na continuação deste trabalho.
Um ponto crucial é criar um sistema com arquitetura
distribuída, que permita ao usuário interagir não somente
com o ambiente virtual, mas também com os outros usuários
que estejam on-line.
Deve-se também, aumentar a interatividade do usuário
com os objetos do ambiente como por exemplo possibilitá-lo
mover objetos como bancos de um lugar para outro, pois
nesta fase de protótipo, as interações estão limitadas ao
caminhar pelo ambiente e a abertura de portas e janelas.
6. REFERÊNCIAS BIBLIOGRÁFICAS
[1] A. Cardoso, et. al, Tecnologias para o desenvolvimento
de sistemas de realidade virtual e aumentada, Ed.
Universitária da UFPE, Recife, 2007.
[2] C. Kirner, R. A. Siscoutto, “Fundamentos de Realidade
Virtual e Aumentada”, Realidade Virtual e Aumentada:
Conceitos, Projeto e Aplicações, pp. 9-21, maio 2007.
[3] R. Tori, C. Kirner, “Fundamentos de Realidade Virtual”,
Fundamentos e tecnologia de Realidade Virtual e
Aumentada, pp. 9-28, maio 2006.
[4] E. B. Hassan, “Laboratórios Virtuais 3D para Ensino de
Redes de Computadores”, XIV Simpósio Brasileiro de
Informática na Educação, novembro 2003.
[5] I. F. Braga, “Realidade Aumentada em Museus: As
Batalhas do Museu Nacional de Belas Artes”, fevereiro
2007.
[6] M. W. Ribeiro, W. A. Silva, “O ensino do fotossíntese
usando Realidade Aumentada”, IX Symposium on
Virtual and Augmented Reality, maio 2007.
[7] A. S. F. Sampaio, et. al, “Associando Realidade Virtual
ao Ensino de Matemática fundamental”, IX Symposium
on Virtual and Augmented Reality, maio 2007.
[8] M. A. Tobaldini, M. Martinelli, J. D. Brancher,
“Arquiteturas Históricas no Ambiente de um Jogo de
RPG Educacional Computadorizado”, novembro 2006.
[9] A. Gonçalves, “Reconstrução de Ambientes Históricos
Utilizando VRML: o caso do Fórum Flaviano de
Conimbriga”, maio 2004.
[10] S. P. Almeida, Itumbiara: um século e meio de história,
Itumbiara, 1997.
[11] A. B. Tavares, D. Lacerda, 3ds Max 8: guia autorizado
Autodesk, Ed. Campus, 2ª Reimpressão, Rio de Janeiro,
2006.
REALIDADE VIRTUAL AUXILIANDO O APRENDIZADO EM LINHAS DE
TRANSMISSÃO DE ENERGIA ELÉTRICA
Gleisson Pereira dos Santos, Alexandre Cardoso, Edgard Lamounier.
Faculdade de Engenharia Elétrica, Universidade Federal de Uberlândia, Uberlândia MG
(gleissonsantos@yahoo.com.br, alexandre@ufu.br, lamounier@ufu.br)
Resumo. O presente artigo tem como proposta demonstrar a
viabilidade de se utilizar modelos virtuais associados aos
métodos didáticos tradicionais de ensino da disciplina de
linhas aéreas de transmissão de energia elétrica.
Considerando que a aprendizagem deste conteúdo constitui
um grande desafio para professores, estudantes e
profissionais de engenharia, foi desenvolvido um sistema
que utiliza técnicas de realidade virtual para a
apresentação dos principais tipos de estruturas que
compõem as linhas e seus respectivos acessórios (tais como:
isoladores, engates, pára-raios e outros).
Palavras chaves. Realidade virtual, transmissão de energia
elétrica.
Abstract. Considering that the teaching and the learning of
airlines of electric power transmission constitute a great
challenge for professionals, teachers and engineering
students, the present article has as proposal to demonstrate
the viability of using virtual models in substitution to the
traditional methods in the teaching of this discipline. The
present article describes a system that is used of techniques
of virtual reality for the presentation of the main types of
structures that composes the lines and their respective
accessories (insulators and clamps, among other).
Fig. 1. Imagem bidimensional de uma estrutura de transmissão.
Na busca de soluções para as dificuldades descritas
anteriormente, esta pesquisa baseou-se na proposição de uma
modelagem para Linhas de Transmissão de Energia Elétrica
usando técnicas de realidade virtual (RV) não-imersiva.
2. ARQUITETURA DO SISTEMA
A arquitetura do sistema apresentado é formada por uma
interface gráfica do usuário e pelos subsistemas: “conjunto
de especificações das redes”, “conjunto de detalhes das
redes” e “biblioteca de objetos” (de acordo com a figura 2).
Keywords. Electric Power Transmission, Virtual Reality.
1. INTRODUÇÃO
A educação pode ser pensada como um processo de
descoberta, exploração, observação e construção de uma
visão do conhecimento [1]. Contudo, em muitos conteúdos,
estas características não são fáceis de serem obtidas. É o
caso, por exemplo, do ensino e aprendizagem de Linhas
Aéreas de Transmissão de Energia Elétrica.
Analisando os recursos tradicionais utilizados nas aulas de
linhas de transmissão, percebeu-se que vários fatores
dificultam o aprendizado. Dentre tais fatores, está a
dificuldade de obter material didático relacionado,
principalmente imagens das estruturas e de seus
componentes. Quando encontradas, as imagens fornecem
apenas uma visão bidimensional, que não permite entender o
comportamento das estruturas no espaço (conforme pode ser
comprovado na figura 1).
Por outro lado, sendo grande o número de estruturas, o
conhecimento real da maioria delas através de visitas
técnicas demanda grande quantidade de tempo, sem falar na
dificuldade de visualização dos detalhes no topo de uma
estrutura (devido à altura das linhas e da presença de altos
níveis de tensão).
Fig. 2. Arquitetura do sistema.
Inicialmente é apresentado um cenário ao usuário, onde
ele pode escolher o tipo de ambiente que deseja visitar. Ao
escolher um tipo específico de estrutura, o navegador ativa o
subsistema “conjunto de especificações das redes” que busca
e retorna ao ambiente gráfico, as características de cada
estrutura e quais objetos devem ser inseridos. Caso o
navegador deseje visualizar alguma peça em detalhe, um
simples clique sobre ela aciona o subsistema “conjunto de
detalhes das redes”. Este por sua vez, retorna a peça
solicitada à interface do usuário.
Os dois subsistemas, “conjunto de especificações das
redes” e “conjunto de detalhes das redes” estão em constante
relacionamento com o subsistema “biblioteca de objetos”,
inserindo ou retirando dos ambientes virtuais determinados
objetos, de acordo com a escolha do usuário.
3. DETALHES DA IMPLEMENTAÇÃO
Desenvolveu-se um software para ser uma ferramenta de
auxílio ao ensino da disciplina de Linhas Aéreas de
Transmissão de Energia Elétrica. O mesmo é constituído por
um conjunto de ambientes virtuais (modelados em VRML e
Java script) que conferem ao usuário o poder de imersão,
interação e envolvimento.
A tela inicial do sistema apresenta-se no formato de uma
página de internet (figura 3) e pode ser visualizada através de
qualquer navegador.
Fig. 5. Estrutura Estaiada do tipo delta.
Ao escolher um determinado ambiente, o estudante
visualiza uma estrutura de transmissão de energia elétrica,
porém ela é vista sem nenhum acessório. Para visualizar os
engates, os isoladores e pára-raios, o navegador precisa
escolher uma especificação elétrica para a estrutura em
questão. Um menu (figura 6) que aparece do lado da torre
oferece estas opções sob a forma de vários níveis de tensão
(que variam de 88 Kilo Volts (KV) a 700KV, dependendo do
tipo da torre).
Fig. 3. Tela inicial do sistema.
O sistema desenvolvido neste trabalho possui oito
ambientes virtuais, onde em cada um deles existe uma
estrutura de transmissão e seus acessórios típicos (conforme
figuras 4 e 5). Estes ambientes são divididos em duas
categorias: Auto Portantes e Estaiadas (definidas de acordo
com as características construtivas das torres).
Fig. 6. Menu com as possíveis especificações elétricas do torre
(canto direito da imagem).
Fig. 4. Estrutura Estaiada do tipo estrela.
Ao escolher a especificação elétrica, o sistema
imediatamente irá colocar os acessórios nos seus devidos
lugares, caracterizando o processo de interação.
O detalhe consiste no fato de que esses acessórios variam
de acordo com a especificação elétrica. Desta forma, como
em cada tipo de torre já existem acessórios pré-definidos
para um dado nível de tensão, não é permitido ao usuário
alterá-los.
Ao se acessar a estrutura Auto Portante do tipo Cinturada,
por exemplo, estão disponíveis para ela dois níveis de tensão:
230 KV e 440 KV. Ao escolher o primeiro deles, aparece na
estrutura os seguintes acessórios: cadeia de isoladores com
15 discos dispostos verticalmente, engates do tipo U,
balancin de suporte para dois condutores e pára-raios de
suspensão do tipo grampo (figura 7).
manifestados nos isoladores como resultado da aceleração
dos elétrons livres do ar sob a presença de campos elétricos
[2]. Neste caso, o grau de imersão é bastante grande, fazendo
com que o estudante se sinta no ambiente real de uma torre
de transmissão (uma vez que o ruído aumenta sua
intensidade à medida que o navegador se aproxima das
cadeias de isoladores).
O segundo efeito se manifesta através de uma animação
que simula o movimento da cadeia de isoladores durante uma
tempestade. Sob a ação do vento, os cabos condutores
transmitem à cadeia esforços horizontais que as deslocam de
sua posição vertical, inclinando-as [3]. Nestes casos,
observa-se com grande riqueza de detalhes quais os graus de
liberdade permitidos a essas cadeias de isoladores.
4. RESULTADOS
Fig. 7. Acessórios visualizados na estrutura para a especificação
elétrica de 230 KV.
De uma forma geral, o estudante ou professor tem a
possibilidade de sobrevoar o objeto, caminhar no ambiente
virtual e visualizar detalhes de qualquer parte da estrutura.
Assim, o usuário recebe respostas a cada estímulo enviado ao
sistema, sentindo-se envolvido e imerso (como era de se
esperar em uma aplicação de RV).
Além disso, o sistema oferece facilidade de manuseio e
simplicidade para o entendimento, já que o aprendiz pode
experimentar diversas situações dentro do mundo virtual.
No entanto, muitas vezes, a observação de uma peça
encaixada na estrutura não é suficiente para um total
conhecimento de suas características.
Para tanto, as peças podem ser vistas separadamente,
bastando um simples clique sobre ela. Ao se fazer isso, em
uma nova janela é aberto um mundo virtual que contém
somente essa peça (conforme a figura 8).
Fig. 8. Visualização em detalhe da peça de engate inferior do estai.
Uma vez que a rede está montada com todos os seus
componentes, dois efeitos físicos podem ser analisados: o
efeito corona e o efeito de vento sobre a cadeia de isoladores.
O primeiro deles é caracterizado por ruídos audíveis,
Se comparado com as técnicas tradicionais (baseadas em
imagens bidimensionais e visitas técnicas) o sistema
desenvolvido em realidade virtual apresenta, com algumas
ressalvas, impactos positivos no ensino de transmissão de
energia elétrica.
Através dele, os ambientes virtuais das linhas de
transmissão podem ser disponibilizados na internet,
fornecendo modos flexíveis de aprendizado e atendendo
usuários de vários níveis (já que se constitui de um sistema
de rápida execução e que pode ser utilizado mesmo por
computadores de configuração mais simples).
Além disso, provê igual possibilidade de acesso e
compreensão a estudantes de níveis culturais diferentes,
permitindo sua utilização por aqueles que tenham pouco
conhecimento sobre transmissão de energia.
Por outro lado, permite que o estudante faça viagens pelo
ambiente virtual fora do âmbito de uma aula clássica, até
mesmo como uma atividade extra-curricular, realizando o
aprendizado a seu próprio ritmo.
A alta fidelidade dos objetos, levando em consideração a
geometria, o comportamento e as reações do meio, fazem
com que os ambientes virtuais encorajem a criatividade e
aumentem o poder de observação dos alunos.
Permite ainda, que o aluno aprenda sobre linhas de
transmissão de energia elétrica inserido no contexto deste
assunto e assim receba, a cada ação que fizer, uma
realimentação deste contexto. A possibilidade de caminhar
ou sobrevoar no ambiente virtual promove uma maior
motivação dos usuários, fazendo-os chegar aonde métodos
tradicionais de aprendizagem não conseguem.
Concede ao aprendiz possibilidade de visitar lugares (no
caso, o ambiente das linhas de transmissão) onde as
dificuldades de ver as estruturas realmente são grandes,
devido à altura das mesmas e da quantidade de tensão
presente nos condutores.
Ao contrário das visitas técnicas, que são muito
demoradas, o ambiente virtual oferece ao usuário condições
de visitar lugares em períodos diferentes de tempo e com
rapidez tão grande que, em poucas horas, quase todos os
tipos de estruturas podem ser visualizadas e experimentadas.
Por fim, a realidade virtual permite um poder de
visualização muito grande, facilitando a análise de muito
perto ou de muito longe de uma parte específica do objeto.
Isso contribui para que os professores tenham facilidade de
explicar e os aprendizes de entender como certos detalhes
influenciam em todo processo de transmissão de energia
elétrica.
No entanto, é importante ressaltar que um sistema de RV
não é uma ferramenta que ensina por si só, mas uma
ferramenta auxiliar para a execução de um plano de estudos
[4]. Na verdade, pode-se dizer que a realidade virtual é uma
forma de interface, onde o usuário pode interagir com
sistemas computacionais e trabalhar com dados
extremamente complexos através da navegação, interação e
imersão[5].
5. CONCLUSÃO
Modelou-se um software, com técnicas de RV, que
permite o aprimoramento do ensino de linhas aéreas de
transmissão de energia elétrica, considerando os envolvidos:
professor e aluno. Para o primeiro, oferece recursos extras
que facilitam a exposição do conteúdo enquanto que, para o
segundo, a experiência da imersão se transforma em
aprendizado com maior qualidade.
Por outro lado, é uma solução de baixo custo e a sua
disponibilização na internet constitui uma ferramenta de fácil
acesso.
6. REFERÊNCIAS BIBLIOGRÁFICAS
[1] M.S Pinho. Resumo do SBIE, Belo Horizonte, 1996.
Documento
disponível
no
endereço
eletrônico
http://grv.inf.pucrs.br/Pagina/Educa/educa.htm
[2] B.L Pavlik, Tecnologia da ferragem para linhas de AT e
EAT, 1ª edição, São Paulo, março de 1989
[3] R.D Fuchs. M.T Almeida,., Projetos mecânicos das linhas
aéreas de transmissão, 2ª edição, São Paulo, 1992.
[4] A.H CAPATAN; F.A.P FIALHO. Pedagogia e
tecnologia: a comunicação digital no processo pedagógico.
Universidade Federal de Santa Catarina, 1996.
[5] S AUKSTAKALNIS, D BLATNER. - Silicon Mirage:
The Art and Science of Virtual Reality, Peatchpit Press,
Berkeley, CA, 1992.
SIMULAÇÃO FÍSICA DE OBJETOS DEFORMÁVEIS ATRAVÉS DE UM
ALGORITMO BASEADO EM POSIÇÃO
Mozart W. S. Almeida, Gabriel F. de Almeida, Veronica Teichrieb, Judith Kelner
Universidade Federal de Pernambuco, Centro de Informática
Grupo de Pesquisa em Realidade Virtual e Multimídia
Av. Professor Moraes Rego S/N, Prédio da Positiva, 1º Andar
Cidade Universitária, Recife - Pernambuco
CEP 50670-901
e-mail: {mwsa, gfa, vt, jk}@cin.ufpe.br
Resumo – Simulação de corpos deformáveis é um campo de
pesquisa
inerentemente interdisciplinar, envolvendo
Dinâmica Newtoniana, Computação Numérica, Geometria
Diferencial, dentre outros. Quando utilizada no campo dos
Jogos Eletrônicos ou da Realidade Virtual e Aumentada, por
exemplo, certos conceitos matemáticos mais complexos
tornam-se computacionalmente caros, prejudicando a
interatividade. Por isso, estas áreas e suas correlatas
necessitam de técnicas mais simples que tornem o
comportamento dos objetos da cena tanto fisicamente quanto
visualmente consistente. Este artigo apresenta uma técnica
que pretende alcançar esses objetivos através da
manipulação direta das posições dos vértices dos objetos,
proporcionando um melhor controle e estabilidade da
simulação. O estado atual da implementação, utilizando a
engine gráfica OGRE para renderização, também é descrito.
Palavras-Chave – Algoritmo Baseado em Posição, Objetos
Deformáveis, Simulação Física, Tempo Real.
Abstract – Deformable bodies simulation is an inherently
interdisciplinary research field, involving Newtonian
Dynamics, Numeric Computation, Differential Geometry,
among others. When brought to the field of Games or Virtual
and Augmented Reality, for example, some complex
mathematical concepts become too expensive in order to
maintain an acceptable interactivity level. Therefore, these
areas and its correlated ones need simpler techniques in
such a way the behavior of the objects in a scene becomes
physically and visually reasonable. This article deals with a
technique that intends to reach those objectives by direct
manipulation of the positions of the objects’ vertices,
providing a better control and stability of the simulation. The
actual state of its implementation, using the graphics engine
OGRE for rendering is described as well.
Keywords – Deformable Bodies, Physical Simulation,
Position Based Algorithm, Real Time.
1. INTRODUÇÃO
A construção de aplicações interativas requer a
modelagem, em diversos níveis, dos objetos que compõem a
cena. Dentre estes níveis, há a modelagem física, que integra
o objeto com suas características físicas, como peso, inércia,
dureza, etc [1]. Basicamente, podem-se simular fisicamente
dois tipos de objetos: rígidos ou deformáveis (Figura 1).
Estes, ao colidirem com algum outro corpo qualquer durante
a simulação, sofrerão algum tipo de deformação, de acordo
com as características do impacto, dos corpos sofrendo
colisão e da configuração do ambiente que os cerca.
Fig. 1. Tecido exemplificando um objeto deformável.
Conhecida por sua inerente interdisciplinaridade, a
simulação de corpos deformáveis tem sido bastante utilizada
em áreas como Engenharia Mecânica e Ciência dos Materiais,
sempre procurando simular o comportamento de
determinados objetos quando submetidos a certas condições,
com o maior nível de precisão possível.
Na Computação Gráfica, esse tipo de simulação vem
apresentando resultados há cerca de duas décadas, em
discussões sobre animação 3D, juntamente ao trabalho
pioneiro de Terzopoulous et al [2][3]. Neste, são estudados
modelos elasticamente deformáveis, utilizados em animação.
Desde então, novas técnicas vêm sendo desenvolvidas
para um comportamento mais realista, presentes em filmes,
aplicações científicas e em softwares interativos, nos quais se
enquadram aplicações de Realidade Virtual e Aumentada
(RV e RA) [4], assim como Jogos Eletrônicos [5].
As técnicas de simulação física mais utilizadas são as
baseadas em força, em impulso e em posição. As baseadas
em força precisam de uma integração de segunda ordem no
tempo para atualizar as posições das partículas [6], as
baseadas em impulso, alcançam as posições a partir da
manipulação direta das velocidades [7] e as baseadas em
posição manipulam diretamente as posições dos vértices,
evitando alguns cálculos de integração e adicionando um
maior controle aos elementos manipulados [5][8].
Devido a sua simplicidade e controle sobre a simulação,
os algoritmos baseados em posição tornam-se novas
alternativas ao desenvolvimento de aplicações interativas
mais realistas, tanto visualmente quanto fisicamente.
Neste contexto, o objetivo deste trabalho é demonstrar
uma técnica baseada em posição bastante efetiva, nomeada
Position Based Dynamics (PBD), detalhando o algoritmo e
retratando o estado atual do seu desenvolvimento.
Na próxima seção será fornecida uma breve visão sobre
certos conceitos matemáticos. Na seção 3, será apresentado o
funcionamento geral do PBD. A seção 4 abordará o
andamento do desenvolvimento deste algoritmo. Na seção 5
serão destacadas as lições sendo aprendidas durante o
trabalho, além dos próximos passos do desenvolvimento.
2. CONCEITOS BÁSICOS
'( ) $
,
,
" #
%.
(6)
O máximo valor de , , , ou seja, a taxa máxima
de variação da função , , é igual a ||), , || ,
ocorrendo na direção de ), , .
Então, se ), , + 0, o gradiente é perpendicular à
superfície (em 3D), caso , , 0 [9][10].
3. O ALGORITMO PBD
Nesta seção, são apresentados os conceitos básicos sobre
diferenciação parcial e gradiente. Apesar de sua extensão e
complexidade, serão explicados de uma forma sucinta.
A principal utilização destes conceitos é na geração de
restrições como as de colisão, por exemplo, em que se faz
necessário calcular direção e taxa de variação do movimento
da menor unidade representativa do objeto, i.e., partícula.
2.1. Diferenciação Parcial
A derivada parcial de uma função de mais de uma variável
é a derivada relativa a uma de suas variáveis independentes,
considerando as outras como constantes na derivação [9].
O exemplo a seguir demonstra a notação mais utilizada
para indicar que a diferenciação foi executada com respeito a
apenas uma das variáveis independentes da função.
Seja um cone com altura e raio da base , cujo volume
é
.
(1)
Nesta função, há duas variáveis independentes: e . Se permanece constante enquanto muda, a taxa de variação
(derivada) no volume com respeito ao raio da base será
.
(2)
Este resultado representa a derivada relativa a , mantendo
como constante. Caso sua altura mude enquanto o raio da
base permanecer constante, a taxa de variação será
Esta seção detalhará o PBD estudado e parcialmente
implementado neste trabalho, além de suas características [8].
3.1. Visão Geral
Considerando um objeto 3D, sujeito a um sistema físico
composto de N vértices e M restrições, tem-se que:
• Cada vértice - pertencente ao objeto possui uma posição
. , uma massa /. e uma velocidade 0. .
Cada restrição 1 é composta por:
• Uma cardinalidade 23 , que indica sobre quantos vértices
por vez ela atua;
• Uma função 43 : 567 8 5, que recebe como entrada os
valores de coordenada de cada partícula sobre as quais
atua (considerando partículas com três graus de liberdade);
• Um conjunto de índices, relativos aos vértices do objeto
3D, cuja cardinalidade é igual a 23 ;
• Um parâmetro de dureza (stiffness) 9 que assume valores
reais entre 0 e 1 e define o nível de atuação da restrição;
• Um tipo que especifica se a restrição é satisfeita quando
41.: , . . . , .67 0 (equality constraint) ou se é
satisfeita quando 41.: , . . . , .67 ; 0 (inequality
constraint).
De posse destas informações e considerando uma variação
de tempo ∆= , o algoritmo apresentado na Figura 2 se
comportará da seguinte maneira:
.
(3)
Neste caso o processo é o mesmo da equação anterior,
apenas considerando como uma constante.
2.2. Derivadas Direcionais e Gradiente
Em equações que descrevem movimento de partículas, por
exemplo, há a necessidade de conhecer a taxa de variação
numa determinada direção utilizando o conceito de derivada
direcional [9].
Por exemplo, a derivada direcional , , de uma
função , , na direção de um vetor unitário , , é igual à soma dos produtos das derivadas parciais
da função por cada coordenada do vetor ,
respectivamente. Ou seja:
! ! .
(4)
, , "
#
Esta equação pode ser escrita como o produto escalar
entre um vetor formado pelas derivadas parciais de e o
vetor unitário que indica a direção da variação:
, , $ , , % & , , .
(5)
" #
O primeiro vetor desta operação é conhecido como o
gradiente de ou o vetor gradiente de :
Fig. 2. Algoritmo baseado em posição [8].
Inicialmente todos os componentes dos vértices do
sistema devem ser inicializados, informando sua posição
inicial, sua velocidade inicial e um componente > que é o
inverso da massa de cada vértice, para auxiliar em parte da
projeção das restrições e simplificar a representação de
vértices estáticos (linhas 1 a 3 do algoritmo).
Inicializando o laço principal, faz-se com que a velocidade
de cada vértice seja atualizada a partir da geração de forças
externas ao sistema, caso não possam ser convertidas em
restrições de posição. No caso abordado neste artigo, apenas
a força da gravidade é adicionada neste passo (linha 5).
O próximo passo é amenizar (damping) as velocidades
antes que se possa utilizá-las para a predição de novas
posições (linha 6). Para isso, calcula-se uma variação na
velocidade do vértice subtraindo sua velocidade individual
da movimentação global do objeto e depois se atualiza a
velocidade do vértice utilizando uma constante 9 , que
assume valores reais entre 0 e 1, como um peso para limitar a
contenção na velocidade individual. Sendo assim, se o valor
de 9 for igual a 1, resultará na não variação da velocidade do
vértice em relação ao corpo, ou seja, ele se comportará como
um corpo rígido [8].
A fim de prever as novas posições de cada vértice, uma
integração euleriana explícita (? ?@ ! 0∆=) é aplicada,
utilizando a posição atual e a velocidade atual para encontrar
a nova localidade (linha 7).
O algoritmo possui duas classificações para as restrições
manipuladas, as fixas e as dinâmicas. As restrições fixas são
as que sempre terão de ser satisfeitas e não variam ao longo
da simulação. As dinâmicas são as que precisam ser geradas
a cada iteração, pois suas condições mudam com o tempo,
como é o caso das restrições de colisão, que precisam ser
geradas a cada timestep (intervalo de tempo), devido à
mudança constante das configurações globais do mundo.
Restrições como as de conservação de volume ou de
distância, por exemplo, podem ser consideradas fixas.
Na seqüência, é necessário gerar as restrições de colisão
antes de projetar todas elas (linha 8).
Para isto ocorrer, primeiramente utiliza-se a abordagem de
manipulação de colisão contínua. Dessa maneira, traça-se um
raio da posição anterior . à posição prevista pelo passo
anterior do algoritmo, A. . Se o raio intersecta um objeto,
calcula-se o ponto de entrada BC e a normal da superfície
naquela posição 2C , resultando numa nova restrição de
desigualdade 4D D – FC & GC , com 9 1 . A
restrição é de desigualdade por que a nova posição deverá
estar fora do corpo colidido para satisfazer à restrição (o
cosseno do ângulo entre os dois vetores deverá ser menor ou
igual a zero). Se o raio . 8 A. entra totalmente no objeto, o
método de colisão contínua falhou em algum ponto.
Neste caso, a saída é utilizar colisão estática, calculandose o ponto mais próximo de A. na superfície, BI e a normal da
superfície naquela posição 2I , gerando uma nova restrição de
desigualdade 4D D – FI & GI , também com 9 1.
O próximo passo é o principal do algoritmo, o chamado
solver, pois é nele que são verificadas e projetadas todas as
restrições (linhas 9 a 11). Consiste em um laço com um
determinado número de iterações (inicialmente fixo) que
executa uma função que recebe todas as restrições definidas
para a simulação, além das de colisão recém-geradas; as
estimativas das novas posições também servem de entrada,
para serem atualizadas durante a projeção.
Projetar pontos de acordo com uma determinada restrição
é movê-los de forma que a restrição seja satisfeita. A
conservação dos momentos linear e angular cria as duas
principais restrições internas a serem satisfeitas durante a
projeção, para que se tenha uma simulação estável.
O método apresentado para a projeção de restrições
funciona de tal forma que as restrições de momento são
satisfeitas automaticamente de uma forma geral. Isto se
consegue pelo fato de que, utilizando os A6 pontos sobre os
quais uma restrição 4 qualquer atua e concatenando-os na
forma A JAK , . . . , A6K LK , para restrições internas, a
translação e rotação do objeto não afetarão o valor de 4 .
Dessa forma, )M 4 é perpendicular tanto à rotação quanto à
translação, dado que 90° é a direção de variação máxima.
Por isso, se a variação da posição ∆A ocorre ao longo de )4P ,
os momentos são conservados (para massas iguais).
Para encontrar ∆A dado que se possui A, tal que 4A !
∆A 0, tem-se que:
4A ! (A Q 4A ! )M 4A & ∆A 0.
(7)
E, sabendo-se que para que ∆A tenha a mesma direção que
)M 4, deve-se ter um R tal que:
∆A R )M 4A.
(8)
Substituindo-se ∆A na equação (7) pela equação (8) e
isolando R, tem-se:
TP
∆A S
)P 4A.
(9)
|)U TP|²
Chegando, assim, na equação para correção de um ponto
individual A. :
∆A. S ? )PW 4A , . . . , A6 ,
(10)
em que ? é:
TP: ,...,PX
?∑
.
(11)
7 |)U7 TP: ,...,PX |²
Caso cada ponto possua massa individual, pesam-se as
correções ∆A. , com o valor inverso da massa >. . Assim,
∆A. R>. )PW 4A,
(12)
resultando em
)A. S ?>. )PW 4A , . . . , A6 ,
(13)
dado que
TP: ,...,PX ? ∑
.
(14)
7 Z7 |)U7 TP: ,...,PX |²
Depois da projeção, tendo as novas posições dos vértices
respeitando todas as restrições consideradas, pode-se iterar
por todos os vértices atualizando as velocidades 0. e posições
. de cada um (linhas 13 a 14).
O último passo do algoritmo atualiza as velocidades para
todos os vértices que tiveram restrições de colisão geradas,
refletindo sua posição perpendicularmente à superfície
colidida (linha 16).
3.2. Características
Algoritmos baseados em posição são bastante favoráveis
para quem trabalha com aplicações interativas, como Jogos
ou aplicativos de RV e RA, por exemplo.
O principal motivo é a facilidade de manusear a posição
de cada vértice quando se deseja anexá-lo a um personagem
em um jogo, por exemplo. Outro caso seria tornar um vértice
em especial estático, simplesmente mantendo sua posição
atualizada sempre num ponto fixo através do ajuste de sua
massa para infinito, i.e., > 0.
A geração de restrições de colisão a cada iteração fora do
laço interno, como mostrado na subseção 3.1, melhora o
desempenho e o tratamento de colisões, visto que, se
houvesse um número fixo de restrições deste tipo, alguns
casos de colisão poderiam falhar [8].
O maior controle sobre os vértices, ao contrário das
técnicas baseadas em força e velocidade, remove certos
problemas típicos de instabilidade, como ganho de energia,
provenientes das integrações explícitas sobre o tempo.
A Figura 1, exibida no início do artigo, demonstra um dos
resultados possíveis esperados para este algoritmo.
4. DESENVOLVIMENTO
O processo de desenvolvimento do algoritmo está em fase
inicial. Até o momento foram implementadas e parcialmente
testadas as partes de damping das velocidades e atualização
das posições finais. A renderização gráfica dos objetos a
serem simulados será realizada pela engine gráfica OGRE
[11]. Desta forma, no atual estágio em que se encontra o
desenvolvimento ainda não são fornecidos resultados visuais.
A idéia inicial consiste em desenvolver uma aplicação
mínima que possua alguns objetos na cena e que aborde um
número aceitável de restrições que permitam uma simulação
estável e visualmente convincente. Para a representação de
cada vértice há uma classe Vertex, que possui os seguintes
atributos: massa ([); posição (\] ; posição a ser estimada
D] ; velocidade ^] ; inverso da massa _ , que é
inicializado logo que se conhece a massa do vértice.
Para as restrições, há a classe Constraint, que é
abstrata e contém todas as propriedades comuns às restrições:
tipo (equality ou inequality); um método virtual project
que, nas subclasses de Constraint será responsável pela
projeção da restrição; sua constante de stiffness.
Vértices e restrições estão encapsulados numa lista da
classe Physics que, inicialmente, possui variáveis globais
para representar a gravidade, a massa de cada vértice –
inicialmente igual para todos – e o coeficiente de damping.
A aplicação, que fará uso das capacidades de renderização
do OGRE, possui uma instância de Physics e a cada
atualização de frame, invoca o método simulate desta,
informando um timestep. Este, por sua vez, executará o
algoritmo e, internamente, o solver um número fixo de vezes.
4.1. Dificuldades Encontradas
A complexidade das definições matemáticas, aliada à
dificuldade em associá-las aos conceitos físicos para sua
implementação, principalmente na geração e projeção das
restrições, vêm se mostrando a principal dificuldade
encontrada no curso do desenvolvimento deste trabalho.
A elaboração de uma estrutura de classes que torne a
aplicação facilmente extensível e reutilizável também é um
desafio, visto que o algoritmo apresentado fornece a
possibilidade de adição de novas restrições e deixa o
desenvolvedor livre para substituir alguns de seus
procedimentos por outros similares, como a função de
damping das velocidades, por exemplo.
A relativamente alta curva de aprendizado para entender o
funcionamento da renderização através da manipulação dos
Vertex Buffers no OGRE [11] pode ser considerada também
como um dos fatores que dificultaram o desenvolvimento.
5. CONCLUSÕES E TRABALHOS FUTUROS
Aplicações interativas necessitam de velocidade de
execução a fim de que possam satisfazer aos seus usuários,
provendo um tempo de resposta visualmente aceitável.
Por outro lado, além de interativas, elas devem possuir um
nível aceitável de realismo, que é o principal objetivo de
técnicas como a apresentada neste artigo. Técnicas baseadas
em posição são eficientes na simulação em tempo real devido
à sua relativa simplicidade e adequação visual.
Além da conclusão da implementação do algoritmo, o
desenvolvimento de novas restrições será realizado para
aumentar ainda mais o grau de realismo da simulação como,
por exemplo, a adoção de conservação de volume. Cabe
ressaltar que a eficiência a cada atualização será observada.
Somado a isto, uma segunda técnica também de tempo
real será implementada, originando uma análise comparativa
de desempenho e viabilidade de aplicação eficiente em
aplicações mais complexas.
AGRADECIMENTOS
Os autores agradecem ao CNPq, que parcialmente
financiou este projeto.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] G. C. Burdea, P. Coiffet, Virtual Reality Technology,
John Wiley & Sons, 2ª edição, New Jersey, 2003.
[2] J. Lasseter, “Principles of Traditional Animation Applied
to 3D Computer Animation”, Computer Graphics, vol. 21,
no. 4, pp. 35-44, July 1987.
[3] D. Terzopoulos, J. Platt, A. Barr, K. Fleischer,
“Elastically Deformable Models”, Computer Graphics,
vol. 21, no. 4, pp. 205-214, July 1987.
[4] J. Brown, S. Sorkin, C. Bruyns, J.-C. Latombe, K.
Montgomery, and M. Stephanides, “Real-Time
Simulation of Deformable Objects: Tools and
Application”, in Proc. of CASA, pp. 228-258, 2001.
[5] T. Jakobsen, “Advanced Character Physics”. Disponível
em: gamasutra.com. URL: http://www.gamasutra.com/
resource_guide/20030121/jacobson_01.shtml,
visitado
em Setembro de 2007.
[6] A. Nealen, M. Müller, R. Keiser, E. Boxerman, and M.
Carlson, “Physically Based Deformable Models in
Computer Graphics”, in Proc. of EG, pp. 71-94, 2005.
[7] B. Mirtich and J. Canny, “Impulse-Based Simulation of
Rigid Bodies”, in Proc. of SI3D, pp. 181-188, 1995.
[8] M. Müller, B. Heidelberger, M. Hennix, J. Ratcliff,
“Position Based Dynamics”, in Proc. of VRIPhys, pp. 7180, 2006.
[9] G. Strang, Calculus, Wellesley-Cambridge Press, 2ª
Edição, Wellesley, 1991.
[10] E. W. Weisstein, “Gradient”. Disponível em:
Mathworld – a Wolfram Web Resource. URL:
http://mathworld.wolfram.com/Gradient.html,
visitado
em Setembro de 2007.
[11] OGRE. Disponível em: site do OGRE Team. URL:
http://www.ogre3d.org, visitado em Setembro de 2007.
SISTEMA DE REALIDADE VIRTUAL PORTÁTIL DE APOIO A
EDUCAÇÃO DE CRIANÇAS SURDAS – ERLENEN
Mônica Rocha Ferreira de Oliveira 1, Alexandre Cardoso1, Edgard Afonso Lamounier
Júnior1.
1 - Grupo de Realidade Virtual da Universidade Federal de Uberlândia – GRV UFU – Universidade
Federal de Uberlândia
monicarocha@doutorado.ufu.br, alexandre@ufu.br, lamounier@ufu.br
Resumo
O processo de ensino-aprendizagem de deficientes
auditivos ocorre com grande dificuldade, dada a
importância da comunicação com a Língua de Sinais.
Algumas pesquisas demonstram a diferença que o uso da RV
pode trazer para o aprendizado de estudantes, com maiores
habilidade visuais/cinestésicas. O objetivo deste trabalho é a
construção de um tradutor Português-Libras portátil
(utilizando dispositivos móveis) de língua falada para Libras
em 3D, utilizando de Realidade Virtual (RV), permitindo a
sua utilização em dispositivos móveis, e que acompanhe o
contexto das necessidades escolares de crianças do ensino
fundamental, apoiado em um dicionário contextualizado.
Para tanto, a utilização de componentes de interface com o
usuário nativas do J2ME parece uma boa solução, mas leva
a pouco aproveitamento das capacidades dos dispositivos
mais avançados. A estratégia de separação entre os modelos
de dados e da lógica da aplicação, da interface do usuário,
permitirá o aproveitamento do sistema por qualquer
dispositivo, tendo que adaptar apenas a interface do usuário.
Palavras-Chave: Deficientes auditivos, LIBRAS, Realidade
Virtual, dispositivos móveis.
Abstract
The process of teach-learning of deficient auditory occurs
with great difficulty, given the importance of the
communication with the Language of Signals. Some research
demonstrates the difference that the use of the RV can bring
for the learning of students, with bigger ability
visual/kinaesthetic. The objective of this work is the
construction of portable a Portuguese-LIBRAS translator
(using mobile devices) of language said for Pounds in 3D,
using of Realidade Virtual (RV), allowing its use in mobile
devices, and that it folloies the context of the pertaining to
school necessities of children of basic education, supported
in a contextualizado dictionary. For in such a way, the use of
components of interface with the user native of the J2ME
seems a good solution, but it takes the little exploitation of
the capacities of the devices most advanced. The separation
strategy enters the models of data and of the logic of the
application, of the interface of the user, it will allow the
exploitation of the system for any device, having that to
adapt only the interface of the user.
A Constituição Federal estabelece o direito de as pessoas
com
necessidades
especiais
receberem
educação
preferencialmente na rede regular de ensino (art. 208, III).
Segundo o Instituto Brasileiro de Geografia e Estatística
(IBGE) no Brasil, cerca de 14.5% da população é portadora
de algum tipo de deficiência. Destes, 2,42% são portadores
de deficiência auditiva. Sabe-se que a inclusão de crianças
surdas no universo escolar regular brasileiro é cada vez mais
acentuada e a classe docente que recebe estes alunos nem
sempre está devidamente preparada para ministrar aulas em
LIBRAS. O processo de ensino-aprendizagem de deficientes
auditivos ocorre com grande dificuldade, dada a importância
da comunicação com a Língua de Sinais. Esta dificuldade
aumenta em função dos níveis de perda auditiva.
Uma grande parte da população com deficiência auditiva
vem fazendo uso de aparelhos telefônicos celulares. Eles os
utilizam para comunicação entre surdos e ouvintes: no dia-adia é comum o uso de telefones celulares para o envio de
mensagens e correspondência via correio eletrônico.
Segundo Carreira, as operadoras e fabricantes de celulares
ainda não têm dado a devida atenção aos deficientes
auditivos no Brasil [4].
O uso da Realidade Virtual (RV) imersiva e não imersiva
na educação de surdos para o desenvolvimento da Língua de
Sinais ainda não foi devidamente explorado. Algumas
pesquisas demonstram a diferença que o uso da RV pode
trazer para o aprendizado de estudantes, com maiores
habilidade visuais/cinestésicas (). Sendo assim, os deficientes
surdos poderão beneficiar-se desta tecnologia, pois, permitirá
o acesso às imagens e as informações verbais-escritas, com o
poder de manuseá-las [2].
Motivado por todos estes fatores, a proposta deste trabalho
é a construção de um tradutor Português-Libras portátil
(utilizando dispositivos móveis) de língua falada para Libras
em 3D, utilizando Realidade Virtual (RV) que acompanhe o
contexto das necessidades escolares de crianças do Ensino
Fundamental, apoiado em um dicionário contextualizado.
A utilização de Realidade Virtual justifica-se pelo fato de
Libras ser uma linguagem espacial que demanda significativa
interpretação da “navegação” dos movimentos das mãos de
seu interlocutor. Durante o aprendizado da mesma, necessitase conhecer o posicionamento das mãos de vários ângulos,
portanto o uso das técnicas tradicionais de RV apresenta-se
com grande potencial para este tipo de aplicação.
Keywords: Deficient auditory, LIBRAS, Virtual Reality,
mobile devices.
2. TRABALHOS CORRELATOS
1. INTRODUÇÃO
Diversas soluções estão sendo desenvolvidas visando à
inclusão digital de pessoas portadoras de deficiência auditiva,
e uma das soluções é um software para telefone celular projeto Rybena, que transforma as mensagens de texto em
imagens na Língua Brasileira de Sinais na tela do celular [6].
possa ser utilizada também em conexão com telefones
celulares, computadores handhelds e outros aparelhos
portáteis.
Fig. 3 – Synface em execução(Beskow 2004).
Fig.1-Tela do aplicativo do projeto Rybená (Group 2006).
De forma diferenciada do aplicativo já citado, que
envolve tradução de texto para Libras, há em
desenvolvimento alguns projetos que visam à tradução da
língua portuguesa falada para LIBRAS, o projeto Falibras,
desenvolvido com apoio do CNPQ/FAPEAL, tem como base
de referência um compilador que traduz do Português (falado
ou escrito) para a Língua Brasileira de Sinais (Libras) na
forma gestual animada (2D), com o intuito de facilitar a
comunicação entre ouvintes e surdos, ajudando estes a
aprender a língua portuguesa, capacitando-os
de se
desenvolver socialmente. É um sistema que busca exibir no
computador gestos em Libras, de forma animada, a partir de
expressões faladas em português, por um locutor externo
[10].
Fig.2 – Telas do Sistema Falibras[10].
O projeto Synface [1] – a junção das palavras inglesas
“synthetic” e “face”, ou "rosto sintético" – foi desenvolvido
por pesquisadores do Royal Institute of Technology em
Estocolmo, na Suécia, e da University College London. O
sistema funciona em computador pessoal conectado a um
telefone, e reconhece os diferentes sons produzidos pela
pessoa do outro lado da linha, recriando os movimentos
labiais em um rosto artificial (2D) que se move na tela. Isso
permite que o usuário faça leitura labial em tempo real, além
de ouvir a fala da outra pessoa também pelo telefone
convencional. Os pesquisadores esperam que a tecnologia
Entretanto, ao estudar estes sistemas percebe-se que
nenhum deles preocupou-se com o caráter espacial da
LIBRAS, apresentando imagens em 2D apenas frontal. É
necessário ainda considerar que nenhum deles aborda o
aprendizado da LIBRAS e/ou da Língua Portuguesa. Estes
fatos diferenciam fundamentalmente o trabalho proposto
neste projeto dos já em desenvolvimento.
3- DISPOSITIVOS E API’S PARA DESENVOLVIMENTO
DE APLICAÇÕES 3D EM TELEFONES CELULARES
Diversos modelos de dispositivos celulares contemplam
variados hardwares e sistemas operacionais. Esta variedade
ainda é maior devido a softwares disponibilizados pelas
operadoras. O que é realmente comum as diversas marcas e
modelos é o aumento progressivo na capacidade de
processamento gráfico e de armazenamento dos dispositivos
móveis, especialmente telefones celulares e PDAs. Este fato
aponta para um novo cenário de interação onde os usuários
desses dispositivos poderão visualizar e explorar ambientes
gráficos 3D, de forma individual ou colaborativa,
independentemente de sua localização física [11].
Em particular, um problema crítico enfrentado durante o
desenvolvimento de aplicações gráficas 3D para dispositivos
móveis é conseguir oferecer sofisticados recursos de
visualização e navegação de forma eficiente, levando-se em
conta os limites de memória e processamento de cada tipo de
dispositivo.
M3G (Mobile 3D Graphics), também conhecida como
JSR-184 (Java Specification Request), é uma API (Interface
de Programação de Aplicativos) de alto-nível, proposta para
a plataforma Java. Corresponde a um pacote gráfico 3D
opcional, que deve ser utilizado em conjunto com a
plataforma Java 2 Platform Micro Edition (J2ME) para
dispositivos móveis, obrigatoriamente com a configuração
CLDC 1.1 (Connected Limited Device Configuration),
podendo utilizar quaisquer dos perfis MIDP (Mobile
Information Device Profile) 1.0 ou 2.0 (Microsystems 2006).
Esta API é voltada para dispositivos que tipicamente
possuem pouca memória, poder de processamento reduzido,
e sem suporte em hardware para processamento gráfico 3D
ou aritmética de ponto-flutuante como, por exemplo,
telefones celulares e PDAs (Personal Digital Assistant).
OpenGL ES (OpenGL para Sistemas Embarcados, ou
Embedded Systems) é uma especificação livre de uma API
gráfica, de baixo nível, portável, que permite a utilização de
funções 2D e 3D em sistemas embarcados, incluindo
consoles, telefones, PDAs, computadores portáteis, entre
outros [7]. Consiste de um subconjunto bem definido da
OpenGL (uma API voltada para computadores pessoais, de
grande utilização no desenvolvimento de aplicações em
Computação Gráfica), é compacta e otimizada para trabalhar
em dispositivos com recursos limitados. Apresenta uma
interface de baixo-nível flexível e robusta localizada entre o
software e o acelerador gráfico.
Para desenvolvimento do aplicativo está sendo utilizado o
NetBeans IDE 5.5.1, Java 1.6.0-02 em um computador AMD
Turiona 64 x2 com Windows WP Service Pack2.
pelo sinal em LIBRAS 3D, correspondente ao conceito
(Figura 5b). Neste momento é permitida a navegação pela
imagem, com o intuito de visualizar de diversos ângulos o
movimento correto do sinal LIBRAS.
4 – ARQUITETURA DO SISTEMA
O modelo elaborado para desenvolvimento do sistema é
representado pela arquitetura abaixo:
DISPOSITIVO MÓVEL
U
S
U
Á
R
I
O
Fig. 5a – Tela inicial do sistema.
RECONHECIMENTO
DE VOZ
G
U
I
BANCO DE
DADOS
ANIMAÇÃO
3D
CONCEITO
LETRAS
Fig. 5b – Tela do sinal LIBRAS 3D.
A qualquer momento é permitido ao usuário do sistema
escolher num menu a visualização do significado da palavra
em uso (Figura 6a) e a forma escrita da palavra, com letras
do alfabeto LIBRAS (Figura 6b). Também é facultado ao
usuário solicitar a repetição de qualquer uma das telas do
sistema: sinal LIBRAS 3D, significado e soletração do
conceito.
erlenen
Fig.4 – Arquitetura do sistema ERLENEN.
Os sinais serão desenvolvidos no formato de animações
3D e serão apresentados num ambiente virtual nos
equipamentos portáteis, permitindo a navegação e
conseqüente visualização do sinal de diversos ângulos. O
sistema de reconhecimento de voz espera-se que seja feito
com a utilização de uma Rede Neural Artificial (RNA).
Admitindo que a capacidade computacional dos dispositivos
portáteis não é suficiente para executar algoritmos
complexos de treinamento de RNA, um módulo será
desenvolvido em equipamento desktop para ajuste dos
parâmetros deste reconhecimento de voz.
6 – DETALHES DE DESENVOLVIMENTO
Figura 6a - Tela do significado
Atualmente o projeto encontra-se em fases de pesquisas
sobre a especificação JSR-184 e a qualidade de imagem. Um
protótipo foi desenvolvido em J2ME, porém contempla ainda
imagens 2D. A figura 5a mostra a tela de abertura do
sistema, que é também a tela de espera por ativação do
tradutor. O sistema fica nesta tela até que reconheça uma
palavra (conceito) previamente selecionada pelo professor
para ser trabalhada durante uma determinada aula. No
momento em que a palavra ocorre, a imagem é substituída
Apesar de J2ME permitir desenvolver aplicações que
cubram uma vasta gama de dispositivos (portabilidade), fazer
com que estas funcionem sem problemas em todos os
aparelhos é um desafio. A utilização de componentes de
interface com o usuário nativas do J2ME parece uma boa
solução, mas leva a pouco aproveitamento das capacidades
dos dispositivos mais avançados. A separação entre os
modelos de dados e da lógica da aplicação, da interface do
usuário, permitirá o aproveitamento do sistema por qualquer
dispositivo, tendo que adaptar apenas a interface do usuário.
Figura 6 b- Tela ‘soletração’ do conceito
7 – CONCLUSÃO E TRABALHOS FUTUROS
Com o desenvolvimento deste projeto, espera-se o
desenvolvimento de sinais no formato 3D suportado pelos
aparelhos móveis, que serão apresentados num ambiente
virtual, permitindo a navegação e conseqüente visualização
do sinal de diversos ângulos. Um sistema de reconhecimento
de voz (palavras) deve ativar o sistema, de forma a liberar o
acesso as diversas maneiras de visualização da palavra.
Ainda, vislumbrando um melhor aprendizado da criança
portadora de deficiência auditiva, associado ao vídeo do sinal
reconhecido, apresentar-se-á o conceito estabelecido pelo
professor (dentro do contexto da disciplina ministrada) e as
letras, em português e em Libras, da palavra tratada.
A avaliação do sistema ERLENEN deve ocorrer de forma
sistemática, por meio de grupos de controle, e amostras
estatisticamente válida, utilizando escolas inclusivas e
instituições de apoio a crianças surdas, além de professores
dos cursos de pedagogia que trabalham com educação
especial.
O aprimoramento do sistema de reconhecimento de voz,
para reconhecimento de voz ativa e também o
reconhecimento em tempo real de sentenças inteiras são
sugestões para trabalhos de continuidade a este projeto.
Bibliografia
[1] Beskow, J. (2004). A Talking Head Telephone for the
Hearing-impaired. Computers helping people with special
needs
[2] Brandão, E. J. R. (2000). A Realidade Virtual como
Proposta de Ensino-Aprendizagem de Matemática para
Deficientes Auditivos – RV_PEAMDA- Passo Fundo,
Universidade de Passo Fundo.
[3] Capovilla, F. C. (2004). Avaliando Compreensão de
Sinais da Libras em Escolares Surdos do Ensino
Fundamental. Interação em Psicologia. 8.
[4] Carreira, J. C. (2006) Surdos ainda sofrem no acesso à
telefonia. Revista Mundo Java Volume, DOI:
[5]
Franco, Â. M. (2002). A INFORMÁTICA COMO
RECURSO PEDAGÓGICO NO PROCESSO DE
ALFABETIZAÇÃO
DE
CRIANÇAS
COM
NECESSIDADES EDUCATIVAS ESPECIAIS Gestão de
Negócios. Florianópolis, Universidade Federal de Santa
Catarina. Mestre.
[6] Group, B. J. U. (2006). Rybená. Brasília: inclusão social
de portadores de necessidades especiais, através do uso de
comunicação digital.
[7] Group, T. K. (2006). OpenGL ES.
[8] MENICUCCI, M. D. C. (2006). A APAE E A
EDUCAÇÃO INCLUSIVA.
[9] Microsystems, S. (2006). JSR-139 Connected Limited
Device Configuration 1.1.
[10]
PIRES, L. C. (2005). AQUISIÇÃO DA LÍNGUA
PORTUGUESA ESCRITA (L2) POR SINALIZANTES
SURDOS DALÍNGUA DE SINAIS BRASILEIRA (L1).
Lingüística. Florianópolis, Universidade Federal de Santa
Catarina. Mestre.
[11]
Rodrigues, M. A. F. (2006). Desenvolvimento de
Aplicações 3D para Dispositivos Móveis utilizando as APIs
M3G e OpenGL ES. Fortaleza, Universidade de Fortaleza.
Mestre.
[12] Valente, J. A. O uso inteligente do computador na
educação. Campinas, NIED.
UM COMPONENTE PARA IMPLEMENTAÇÃO DE PROFUNDIDADE EM
AMBIENTES DE REALIDADE MISTURADA
Silvio R. R. Sanches 1, Ildelberto A. Rodello 1, José Remo F. Brega2, Antonio Carlos Sementille1,2.
1 - Programa de Pós Graduação em Ciência da Computação - Centro Universitário Euripídes de Marília (UNIVEM)
2 - Laboratório de Sistemas de Tempo Real (LSTR) – Universidade Estadual Paulista (Unesp)
silviorrs@gmail.com, rodello@univem.edu.br, remo@fc.unesp.br, semente@univem.edu.br.
Resumo – A maioria dos sistemas de Realidade Misturada
baseados nas bibliotecas e suportes existentes não permite
que elementos reais obstruam objetos virtuais, quando
necessário, causando prejuízo a naturalidade da cena. A
proposta deste trabalho é a utilização da técnica do
chromakey, implementada como um componente para a
biblioteca ARToolkit, para extração de elementos reais e a
manipulação do framebuffer do OpenGL para composição
da cena coerentemente.
Palavras-Chave
Misturada.
–
ARToolkit.
Chromakey.
Realidade
Abstract – Most Mixed Reality Systems based in existing
libraries do not allow that real elements obstruct virtual
objects when it is necessary. The present paper proposes the
use of the chromakey technique, implemented as an
ARToolkit library component, for real elements extraction
and the OpenGL framebuffer manipulation to compose the
scene coherently.
1
Keywords - ARToolkit. Chromakey. Mixed Reality
1. INTRODUÇÃO
Muitas das dificuldades encontradas no desenvolvimento
de sistemas de Realidade Misturada (RM) são comuns à
maioria dos desenvolvedores. As várias bibliotecas e
suportes existentes oferecem funções que resolvem grande
parte destes problemas. No entanto tais ferramentas são
limitadas em determinados aspectos.
Segundo Kiyokawa et al. [5] é desejável, em ambientes
misturados, que objetos reais e virtuais ocultem uns aos
outros (oclusão mútua), reproduzindo noções de
profundidade, essenciais para obtenção de maior realismo.
Nas aplicações desenvolvidas por meio das ferramentas
existentes, devido a ausência de métodos de recorte de
elementos reais, a cena real é exibida como plano de fundo
durante todo o tempo de execução da aplicação e o objeto
virtual em nenhum momento é obstruído por algo real.
O chromakey, técnica bastante utilizada em produções de
televisão, inclusive para transmissões ao vivo, pode ser uma
alternativa para o problema do recorte. Seu princípio baseiase na captura de imagens de um ator em frente a um plano de
fundo de cor constante e na extração deste elemento de
primeiro plano do fundo original, a cada quadro de vídeo.
Para isso, devem ser identificadas partes da imagem, nas
quais são encontradas uma determinada cor, denominada
Apoio financeiro - Coordenação de Aperfeiçoamento de Pessoal de Nível
Superior (CAPES).
“cor chave”, referente ao fundo. Uma máscara é então gerada
para selecionar quais pixels devem permanecer e quais
devem ser substituídos por pontos de outra imagem, utilizada
como novo plano de fundo [1]. Nas produções de televisão,
este processo é feito por meio de dispositivos de hardware de
alta qualidade e normalmente de alto custo, tornando inviável
a aplicação da técnica em determinadas situações nas quais
uma solução em software seria mais adequada [4].
Considerando o contexto exposto, é apresentado, neste
trabalho, um método para composição de cenas
tridimensionais em sistemas de RM, baseados na biblioteca
ARToolkit [2], que utiliza a técnica do chromakey para
extração dos elementos reais. Em seguida, a cena é montada
corretamente por meio de operações no framebuffer do
OpenGL.
Para melhor entendimento, este artigo é estruturado da
seguinte maneira: a Seção 2 apresenta alguns trabalhos
relacionados. Na Seção 3 são mostrados os problemas
encontrados na composição de cenas com profundidade, a
solução proposta e detalhes do módulo implementado. Ainda
na Seção 3 é apresentada a utilização de suas funções na
implementação do protótipo. O ambiente experimental e os
resultados obtidos da análise do desempenho do protótipo
são apresentados na Seção 4. Finalmente, na Seção 5 são
feitas as conclusões
2. TRABALHOS RELACIONADOS
Algumas experiências de RM e equipamentos utilizados
na indústria de televisão, baseados em hardware
especializado, permitem a construção de cenas respeitando a
distância dos objetos (reais e virtuais) em relação ao
observador (câmera). Entre essas soluções, cabe destacar o
Display ELMO, a Zcam, o FlashKey e o Sistema 3DK.
O Display ELMO [5] consiste de um sistema formado por
um display do tipo optical see-through equipado com
mecanismos bloqueadores de luzes e de percepção de
profundidade. Por meio da comparação da profundidade
medida com os valores de profundidade da cena virtual,
armazenada em um buffer, a visualização correta pode ser
representada, em tempo real, inclusive em ambientes não
controlados e dinâmicos. Os resultados são aceitáveis,
embora o recorte do elemento real seja grosseiro e visível na
imagem final.
A tecnologia de câmera de vídeo Zcam [6] possibilita a
extração do objeto de primeiro plano utilizando a distância
relativa à câmera de vídeo. A câmera produz sinais do tipo
RGBD, sendo o canal D responsável pelo armazenamento da
distância de cada pixel. O processo consiste em produzir um
muro de luz, que se move de acordo com o campo de visão.
Este sinal é gerado por um pulso de curta duração que atinge
a mesma área do campo de visão do observador, em um
limite de dez metros.
Um método denominado FlashKey [3], desenvolvido para
produções de televisão da BBC (British Broadcasting
Corporation), também pode exibir objetos virtuais com
estimativas de profundidade, em tempo real. A pessoa, ou
objeto real, que se deseja posicionar em frente ao objeto
virtual, é iluminada por uma luz azul intermitente e a câmera
de vídeo reconhece a ação da luz em determinadas áreas da
imagem. Para produzir estas luzes, são utilizados LEDs
acionados por um componente especialmente desenvolvido
para o controle de sinais do vídeo.
O sistema de estúdio virtual 3DK [7], consiste em um
conjunto de câmeras equipadas com sistemas rastreadores,
que fornecem informações sobre a movimentação das
mesmas. Essas câmeras produzem sinais de vídeo relativos
ao elemento de primeiro plano, enquanto um sistema gerador
de imagens, normalmente um supercomputador gráfico,
produz sinais que correspondem ao plano de fundo e,
opcionalmente, sinais que geram máscaras, que podem ser
utilizadas para compor cenas respeitando a profundidade dos
elementos reais e virtuais.
representação no framebuffer OpenGL, incluindo o valor do
componente alfa (componente de transparência do pixel).
3. COMPOSIÇÃO DE CENAS
3.1 O Problema
As soluções baseadas em hardware, mostradas na Seção
2, permitem a construção de cenas considerando a
profundidade de objetos reais, porém, são inviáveis para
utilização em grande parte das aplicações RM, devido
principalmente ao custo elevado dos equipamentos.
Para uma solução em software, a identificação da
profundidade de elementos reais e virtuais que compõem o
ambiente misturado torna-se necessária, bem como métodos
que possibilitem a extração do elemento real, para que este
possa ser exibido em primeiro plano. Durante a execução,
ambos os elementos devem obstruir uns aos outros, baseado
em seu deslocamento a cada quadro de vídeo.
3.2 A Solução Proposta
Uma técnica que pode ser utilizada para extração de
elemento real é o chromakey (mencionada na Seção 1).
Supondo-se que a aplicação permita a utilização de uma tela
de cor única (por exemplo, azul), como fundo da cena, é
possível extrair-se os elementos em primeiro plano
(foreground), que seja de cor diferente da do fundo.
Muitas são as aplicações que aceitariam tal restrição,
como, por exemplo, estúdios virtuais, ambientes
colaborativos de RM, sistemas de ensino com RM, entre
outros. Neste sentido, a estrutura proposta é ilustrada pela
Figura 1. Considerando-se a possibilidade da utilização de
planos de fundo constantes, propõe-se um ambiente formado
por um elemento real, dois ou mais marcadores (um deles
fixado no elemento real) e um plano de fundo de cor única
(azul ou verde) como mostrado na Figura 1. As funções de
captura de vídeo da biblioteca ARToolkit, como mostrado no
passo 1 da Figura, armazenam cada frame obtido em sua
Figura 1: Abordagem Proposta
O alphamap (mapa de transparência) do elemento de real
(elemento de interesse) pode ser extraído por meio da técnica
do chromakey e armazenado em um buffer (Buffer#1).
O novo plano de fundo pode ser construído substituindose os pixels azuis, da imagem original, por uma imagem
estática ou por uma seqüência de frames, como mostrado no
passo 2, da Figura 1.
Como resultado deste processo tem-se: a imagem do
elemento de interesse à frente do novo plano de fundo e o
alphamap armazenados no Buffer#1 e no Buffer#2
respectivamente. A solução utilizada neste trabalho para
obtenção das coordenadas do elemento real, necessárias para
consideração da profundidade, foi a fixação de um marcador
nesse elemento, que é considerado o elemento de interesse.
Deste modo, sua profundidade (coordenada “z”) pode ser
obtida pelas funções de rastreamento do ARToolkit e
utilizada para construção da cena no framebuffer do OpenGL
antes da sua exibição. No passo 3, os marcadores são
rastreados e, se não existirem objetos virtuais cuja
coordenada “z” possua valor maior (mais distante) que a
coordenada “z” do marcador fixado no elemento real, a
imagem armazenada é transferida diretamente ao
framebuffer.
Caso existam objetos virtuais posicionados mais distantes
do observador que o elemento real, estes objetos devem ser
gerados. O controle de profundidade, nessa etapa, realizado
somente entre os objetos virtuais (caso exista mais de um
objeto), é feito pela utilização do Depth Buffer (buffer de
profundidade do framebuffer do OpenGL). O alphamap
(elemento de interesse), armazenado no Buffer#2, é então
copiado sobre a imagem fazendo que o elemento real
sobreponha os objetos virtuais da cena. Finalmente, os
objetos mais próximos do observador (caso existam) são
renderizados. A imagem resultante deve, finalmente, ser
transferida ao framebuffer para ser exibida.
3.3 Implementação do módulo “Chromakey”
A estrutura do projeto, mostrada na Figura 2, permite a
identificação de dois módulos, destacados em tom mais claro
de cinza, implementados e utilizados em conjunto com as
bibliotecas OpenGL, glut (biblioteca de utilidades para
programas OpenGL) e ARToolkit.
O módulo “Chromakey”, consiste em um conjunto de
funções responsável pela extração do elemento de interesse,
inclusão do novo plano de fundo, identificação da
profundidade dos objetos (reais e virtuais), entre outras
funcionalidades necessárias a composição da cena. O
algoritmo de chromakey implementado no módulo, foi a
solução proposta por Berg e Lalioti [4]. “Aplicações” é o
módulo no qual o protótipo foi desenvolvido.
virtuais renderizados é obtida pela detecção dos marcadores
laterais e o posicionamento do ator real é obtido pela
detecção do marcador ao centro.
Na Figura 4, na qual o chromakey é aplicado, o marcador
localizado ao centro (vinculado ao ator real) está posicionado
mais próximo ao observador que os demais. Portanto, o
elemento real é gerado em primeiro plano. Na Figura 5, o
marcador vinculado ao ator está posicionado mais distante do
observador que o marcador à esquerda e mais próximo que o
marcador a direita. Portanto, o objeto virtual à esquerda é
gerado em primeiro plano e o elemento real obstrui apenas o
objeto virtual à direita (marcador posicionado mais ao
fundo). Entre as três situações descritas, exceto na Figura 3, a
imagem final é exibida coerentemente em relação à
profundidade dos elementos reais e virtuais que compõem o
ambiente misturado.
Figura 2: Estrutura do Projeto
As funções de rastreamento e detecção dos marcadores em
cena são realizadas pelo ARtoolkit e o OpenGL é
responsável pela renderização dos objetos virtuais. As
funções implementadas no módulo “Chromakey” e suas
respectivas tarefas são mostradas na Tabela I. Utilizando as
funções descritas foi possível a implementação do protótipo,
que possibilitou a consideração da profundidade na
composição da cena, de acordo com a abordagem descrita na
Subseção 3.2.
.
Figura 3: ARToolkit sobre o Ambiente Real
TABELA I: Funções do módulo “Chromakey”
Nome da função
chLoadFile( )
chReadFile( )
chSwapBackground( )
chVisibilityandDepth( )
chDrawAlphamap( )
chCaptureZ( )
chGetThresh( )
Descrição
Abre o arquivo (imagem ou vídeo) que contém o
novo plano de fundo
Faz a leitura do arquivo indicado pela função
chLoadFile( ), um frame por vez, durante a
execução do loop principal do programa.
Troca do plano de fundo de cor única pela
imagem do arquivo e gera o alphamap do
elemento de primeiro plano.
Realiza toda rotina para verificação da
visibilidade dos marcadores e obtenção da
profundidade dos objetos.
Aplica o alphamap sobre a imagem armazenada
no framebuffer do OpenGL.
Retorna a coordenada “z” do objeto virtual.
Retorna o valor do threshold para chromakey,
calculado pelo algoritmo de Berg e Lalioti [4].
Para visualização dos resultados obtidos da execução do
protótipo, os objetos virtuais foram transladados para evitar a
oclusão dos marcadores e conseqüentemente a não
renderização dos objetos. Na Figura 3, têm-se o ambiente
real e três marcadores em cena. A localização dos objetos
Figura 4: Elemento real em primeiro plano
Figura 5: Elemento real entre objetos virtuais
4. ANÁLISE DE DESEMPENHO
4.1 Ambiente Experimental
Os experimentos foram realizados em um estúdio para
chromakey com fundo na cor verde, mostrado na Figura 6. A
câmera foi posicionada a uma distância de 1,5 m do plano de
fundo. Os demais componentes utilizados foram:
• Hardware: Processador AMD Turion 64 ML-32 1,8
GHz, Placa Gráfica ATI Mobility Radeon Xpress 200,
1,00 GHz de memória RAM e HD Toshiba ATA 80 GB.
• Software: Windows XP Professional SP2, Microsoft
Visual Studio 2005 e ARToolkit versão 2.72.1.
Figura 6: Ambiente Experimental
4.2 Resultados obtidos
Um sistema de RM, por ser um sistema de tempo real,
impõe restrições rígidas quanto ao tempo de resposta. Por
este motivo, esta característica foi avaliada, considerando-se
inclusive a posição dos marcadores na cena.
Como descrito na Subseção 3.3, o protótipo que constrói a
cena misturada, considerando a profundidade dos objetos,
verifica o valor das coordenadas “z” dos marcadores, e
decide pela utilização ou não do alphamap. Por esse motivo,
além do custo computacional adicionado pela aplicação do
algoritmo de chromakey, o posicionamento dos marcadores
em cena pode influenciar no desempenho do protótipo. O
desempenho é que determina o limite para a quantidade de
marcadores visíveis na cena.
Figura 7: Resultados obtidos
Os testes realizados consideraram três situações possíveis
de ocorrência, quando três marcadores são reconhecidos.
Definindo-se a localização do marcador vinculado ao
elemento real como referência para os testes, é possível
identificar três situações: “o marcador está posicionado à
frente dos demais”, “o marcador está posicionado entre os
dois outros marcadores” e “o marcador está posicionado mais
ao fundo (mais distante) que os outros marcadores”. Os
resultados dos testes são mostrados no gráfico da Figura 7.
Como era esperado, o desempenho é afetado quando o
elemento real está posicionado à frente de objetos virtuais.
Nesse caso, o alphamap é aplicado. Obviamente, este
impacto é mais acentuado em imagens maiores (640x480
pixels), pois a quantidade de pixels redesenhados é maior.
5. CONCLUSÕES
Neste artigo, é proposta a utilização da técnica do
chromakey como solução para o problema da extração do
elemento de interesse, utilizado para implementar a
consideração da profundidade em sistemas de RM baseados
no ARToolkit. A técnica é inteiramente implementada em
software, utilizando-se os serviços de captura de vídeo do
ARToolkit e utilizada como um componente da biblioteca.
Os testes realizados, apesar de concentrados no desempenho
em termos da taxa de frames, indicaram a viabilidade do
processo.
Pretende-se, como trabalhos futuros, estudar formas de
minimização do efeito de serrilhamento na silhueta dos
elementos reais, bem como a adição de sombras,
identificação de colisão, múltiplas câmeras e redundância de
marcadores para minimizar problemas de oclusão. Além
disso, pretende-se estender as funções do módulo para
suportar diversos formatos de imagem e vídeo como plano de
fundo, bem como utilizar o módulo implementado em
bibliotecas como o OSGART, que é baseada no ARTookit e
permite a renderização de objetos virtuais complexos.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] A. R. Smith, J. F. Blinn, “Blue Screen Matting”, in Proc.
of the 23rd annual conference on Computer graphics
and interactive techniques, New York, NY, USA: ACM
Press, pp. 259-268, 1996.
[2] ARToolkit “ARToolkit versão 2.72.1”. Disponível em:
<http://sourceforge.net/projects/artoolkit> Acesso em: 19
out. 2006.
[3] BBC Research, “Projects: Flash Keying”. Disponível
em:
<http://www.bbc.co.uk/rd/projects/virtual/flashkeying> Acesso em: 7 jan. 2007.
[4] F. van den Bergh, V. Lalioti, “Software Chroma Keying
in an Immersive Virtual Environment”, South Africal
Computer Juornal, no. 24, pp. 155-162, 1990.
[5] K. Kiyokawa, Y. Kurata, H. Ohno, “An Optical seethrough display for Mutual Occlusion with a Real-Time
Stereovision System.” Computers & Graphics, v. 25, n.
5, pp. 765-779, 2001.
[6] R. Gvili, A. Kaplan, E. Ofek, G. Yahav, “Depth
Keying”, Stereoscopic Displays and Virtual Reality
Systems X, vol. 5006, no. 1, pp. 564-574, 2003.
[7] S. Gibbs, C. Arapis, C. Breiteneder, V. Lalioti, S.
Mostafawy, J. Speier, “Virtual Studios: An Overview”,
IEEE MultiMedia, vol. 05, no. 1, pp. 18-35, 1998.
UM MÉTODO PARA SIMULAÇÃO DE ILUMINAÇÃO VOLUMÉTRICA EM
APLICATIVOS INTERATIVOS
Saulo A. Pessoa, Sílvio de B. Melo, João Paulo S. do M. Lima, Veronica Teichrieb, Judith Kelner
Universidade Federal de Pernambuco, Centro de Informática
Grupo de Pesquisa em Realidade Virtual e Multimídia
Av. Professor Moraes Rego S/N, Prédio da Positiva, 1º Andar
Cidade Universitária, Recife - Pernambuco, CEP 50670-901
e-mail: {sap, sbm, jpsml, vt, jk}@cin.ufpe.br
Resumo – Em computação gráfica, inúmeros métodos vêm
sendo criados para aumentar o realismo das imagens
sintetizadas. Tais métodos são inspirados principalmente em
fenômenos físicos. Um fenômeno bastante estudado é a
interação ocorrida entre a luz e os objetos, porém, tal
interação é geralmente simplificada devido às limitações
computacionais. Uma simplificação comumente realizada é
a de desconsiderar a interação ocorrida entre a luz e a
atmosfera. Tal simplificação pode ser entendida como se a
luz estivesse viajando no vácuo, fazendo com que as imagens
careçam de efeitos atmosféricos. Este artigo implementa um
método para a simulação do efeito atmosférico comumente
chamado de iluminação volumétrica. Este efeito é
imprescindível para coerência fotométrica em cenas com
meios participativos, logo, essenciais na síntese de cenas
fotorealistas. Por ser rápido o suficiente, este método pode
ser empregado adequadamente em Realidade Virtual,
Realidade Aumentada e jogos eletrônicos.
Palavras-Chave – Iluminação Volumétrica,
Participativo, Simulação, Tempo Real.
Meio
Abstract – In computer graphics, many methods have been
created to increase realism of synthetic images. Such
methods are inspired mainly in physics phenomena. A well
studied phenomenon is the interaction that happens between
light and objects. However, such interaction is usually
simplified due to computational limitation. A commonly used
simplification is not to take into account the interaction
between light and atmosphere. Such simplification can be
understood as light traveling in vacuum, so that images lack
atmospherics effects. This paper implements a method for the
simulation of an atmospheric effect commonly called
volumetric lighting. This effect is vital for photometric
coherency of participating media scenes, thus indispensable
to render photorealistic scenes. Since it is fast enough, this
method can be used in Virtual Reality, Augmented Reality
and gaming.
Keywords – Participating Media, Real-Time, Simulation,
Volumetric Lighting.
1. INTRODUÇÃO
Determinados fenômenos naturais só podem ser
reproduzidos em computação gráfica caso o meio seja
participativo. Com um meio participativo, a luz interage com
as partículas suspensas no ar à medida que se propaga. Como
o planeta Terra é naturalmente envolvido por uma camada
gasosa (atmosfera), a interação entre luz e meio se torna
inevitável, fazendo com que efeitos atmosféricos sejam
comumente observados no mundo real. A falta desses efeitos
transparece artificialidade em simulações computadorizadas,
fazendo com que usuários percam o sentimento de imersão
[1]. Em aplicativos de treinamento, a falta de imersão faz
com que a experiência passada pelo usuário não condiga com
a experiência real, o que diminui a eficácia do treinamento.
Este artigo visa apresentar um método para a geração do
efeito de iluminação volumétrica que pode ser empregado em
aplicativos interativos que baseia-se no método de
Dobashi [2]. O objetivo final na utilização deste método é a
criação de cenas mais realistas tanto em Realidade Virtual
(RV) quanto em Realidade Aumentada (RA). Segundo
Kanbara, um dos requisitos para renderizar objetos
fotorealisticamente em RA é o registro fotométrico [3]. O
problema de registro fotométrico envolve a consistência
entre fontes de luz reais e virtuais, e é isto que o método
abordado neste trabalho propõe para o caso de meios
participativos.
Atualmente, inúmeros pesquisadores já desenvolveram
métodos para simulação de iluminação volumétrica.
Basicamente, tais métodos resolvem o problema integrando
numericamente a luz que é espalhada ao longo do raio de
visão. Os métodos propostos diferem basicamente em como
a integral é estimada, o que leva à classificação dos mesmos
em dois tipos: aplicáveis a Graphics Processing Units
(GPUs) e não aplicáveis a GPUs.
Dentre os não aplicáveis a GPUs, Nishita propôs um
método baseado no traçado de raios para encontrar os pontos
de interseção entre os volumes de luz e o raio de visão [4].
Jensen fez uso de mapas de fótons para obter tal efeito [5].
Por serem custosos, estes métodos não são indicados para
aplicativos interativos.
Os métodos aplicáveis a GPUs só começaram a surgir
com o início da popularização das placas gráficas, no final da
década passada. Dobashi propôs um método aplicável a
GPUs que faz uso de técnicas de renderização volumétrica
para integrar a luz espalhada [2]. Posteriormente, Dobashi
ainda propôs otimizações para o método anterior [6]. James e
Zhu propuseram métodos que integram a luz espalhada
utilizando shaders programáveis e que fazem uso de
geometria para representar os volumes de luz [7] [8].
Mitchell tratou o caso quando a densidade das partículas não
é uniforme [9].
Este artigo está organizado da seguinte forma. A Seção 2
apresenta os tipos de interação que a luz pode sofrer. A
Seção 3 descreve a idéia básica de como os volumes de luz
são gerados. A Seção 4 mostra como proceder para
implementar o método escolhido em OpenGL. A Seção 0
mostra os resultados obtidos. Por fim, na Seção 6 são tiradas
as conclusões e sugeridos trabalhos futuros.
fonte de luz
câmera
volume de luz
r
2. ESPALHAMENTO DE LUZ
Ip
t
Efeitos atmosféricos ocorrem devido ao espalhamento e
absorção da luz ao se chocar com partículas suspensas. O
Espalhamento de Mie explica a formação dos volumes de
luz. Esse tipo de espalhamento ocorre em atmosferas
pesadas, como água ou fumaça, isto é, quando o tamanho das
partículas é grande em relação ao comprimento de onda da
luz [7]. Existem quatro tipos de interação que a luz pode
sofrer: absorção; emissão; espalhamento e ajuntamento (ver
Figura 1) [10]. Dentre esses, apenas a absorção e o
espalhamento serão considerados neste trabalho.
absorção
emissão
espalhamento
ajuntamento
Fig. 1. Tipos de interação que a luz pode sofrer.
O método proposto por Dobashi foi tomado como
referência para este trabalho devido a sua adequação a
GPUs [2]. Por uma questão de simplicidade, será assumido o
caso em que existe apenas uma fonte de luz. O método pode
ser facilmente estendido para suportar múltiplas fontes de luz
apenas calculando a contribuição de cada uma delas.
De acordo com o modelo de shading referenciado pelo
método de Dobashi, o objetivo final é obter a intensidade da
luz que alcança a câmera, que é expressa como
I c = I o β (T ) +
∫ F (α ) H (r ) I
0
p ( r ) β (t )σdt
.
(1)
Onde:
Intensidade da luz que alcança a câmera
Intensidade radiada pelo objeto
Distância entre o objeto e a câmera
T
β (T )
Taxa de absorção
α
Ângulo de fase
F (α )
Função de fase
Distância entre o ponto P e a fonte de luz
r
H (r )
Função de visibilidade
I p (r )
Intensidade da luz que alcança o ponto P
t
Distância entre o ponto P e a câmera
σ
Coeficiente de extinção
A Figura 2 ilustra os termos descritos acima. O coeficiente
de extinção é diretamente proporcional à densidade das
partículas.
Para uma densidade uniforme de partículas, a taxa de
absorção β (T ) é expressa como
Ic
Io
β (t ) = e −σ × t .
Io
α
P
T
objeto
Fig. 2. Modelo de shading.
A função de fase F (α ) diz respeito à intensidade de luz que é
espalhada na direção da câmera quando esta faz um ângulo
α com a direção do raio de luz. Devido à complexidade da
teoria de Mie, a função de fase utilizada é uma aproximação
experimental, proposta por Gibbons [11]. F (α ) é expressa
como
α
3. O MODELO DE SHADHING
T
Ic
(2)
F (α ) = K (1 + 9 cos 16 ( )) ,
(3)
2
onde K é uma constante. Por fim, a intensidade da luz que
alcança o ponto P é dada por
I (θ , Φ )
β (r ) ,
(4)
I p (r ) =
r2
onde I (θ , Φ) é a intensidade emitida pela fonte de luz na
direção de P e (θ , Φ ) indica essa direção.
4. IMPLEMENTAÇÃO EM OPENGL
Na Equação (1), o primeiro termo representa a luz que
está sendo irradiada pelo objeto, atenuada pela absorção das
partículas suspensas, enquanto o segundo diz respeito ao
espalhamento atmosférico. É fácil perceber que a
Equação (1) sem o segundo termo nada mais é que o modelo
de fog implementado nas placas gráficas [12]. Como o
primeiro termo pode ser computado na placa gráfica, é nela
que ele será avaliado, restando apenas o segundo termo. Por
não existir uma solução analítica para a integral da
Equação (1), ela é avaliada numericamente.
A integral é avaliada fazendo uso de planos de
amostragem, cada um sendo posicionado a uma distância
fixa da câmera. Os planos são dispostos de forma que fiquem
paralelos ao plano de projeção da câmera, e a distância entre
eles é uniforme. Os planos de amostragem são formados a
partir de várias geometrias do tipo GL_QUAD. Esta divisão é
necessária, pois cada vértice de cada pedaço deverá ser
tratado independentemente. A Figura 3 mostra como os
planos de amostragem devem ser dispostos e subdivididos. A
idéia é utilizar cada plano para amostrar a luz que é
espalhada na direção da câmera e, ao final, acumular a
contribuição de cada um no color buffer.
geometria do tipo
GL_QUAD
volume de vizualização
plano de
projeção
câmera
planos de amostragem
Fig. 3. Planos de amostragem.
Considerando-se I s o termo relativo ao espalhamento
atmosférico na Equação (1), obtém-se a seguinte equação
discretizando a integral:
vértices serão avaliados pela GPU através de uma
interpolação. Isto é possível habilitando-se o modelo de
shading de Gouraud.
A função de iluminação, I (θ k , Φ k ) , é representada por
uma textura, isto é, um mapa de iluminação. Ao utilizar um
mapa de iluminação, a especificação da função de
iluminação torna-se bastante flexível, pois apenas alterandose uma imagem pode-se obter inúmeras e diferentes funções.
Mesmo com tanta flexibilidade, é bom tomar alguns
cuidados na escolha do mapa de iluminação, pois podem
surgir problemas de aliasing em certas circunstâncias. Os
mapas que possuem altas freqüências são ruins por serem
tendenciosos a gerarem aliasing. Por exemplo, na Figura 4.a
o mapa é muito bom, o da Figura 4.b é razoável, e o mapa da
Figura 4.c é ruim. O mapa de iluminação é aplicado
utilizando-se técnicas de mapeamento de texturas projetivas.
Everitt explica em detalhes como se deve proceder para criar
texturas projetivas em OpenGL [13].
(a)
(b)
(c)
n
Is =
∑ F (α
k ) H (rk ) I p (rk ) B(t k )σ∆t
,
(5)
k =1
onde n é a quantidade de planos de amostragem e k é o k ésimo plano. Reescrevendo a Equação (5) obtém-se
Fig. 4. Mapas de iluminação.
n
Is =
∑ I (θ
k,
Φ k ) H ( rk )ξ (t k ) ,
(6)
k =1
onde
F (α k )e −σ ( rk + tk )σ
(7)
∆t .
rk 2
A Equação (6) possui três termos independentes que serão
avaliados separadamente. Os dois primeiros, que
representam, respectivamente, a função de iluminação e a
função de visibilidade, são avaliados através de texturas. Já o
último termo, representado pela Equação (7), é avaliado em
cada vértice dos planos de amostragem.
A Equação (7) é avaliada na CPU para cada vértice de
cada plano de amostragem e, ao final, o resultado é passado
na forma de uma cor através da função glColor(). A
vantagem de utilizar este meio é que os pixels entre os
ξ (t k ) =
fonte de luz
plano de projeção
da fonte de luz
objeto
fonte de luz
plano de
projeção
Os volumes de sombra que surgem quando existe algum
objeto dentro do volume de luz são imprescindíveis para o
realismo da simulação. A função de visibilidade trata o
surgimento dos volumes de sombra. Esta função basicamente
retorna zero caso um ponto não seja visível do ponto de luz,
ou um caso seja visível. Da mesma forma que a função de
iluminação, esta função é implementada utilizando-se
texturas projetivas, sendo que para a função de visibilidade a
textura é uma imagem em preto e branco. As partes em preto
representam os pontos que não são visíveis, enquanto as em
branco representam os pontos visíveis. Diferentemente da
função de iluminação, a função de visibilidade necessita que
seja criado um mapa de visibilidade (textura) diferente para
cada plano de amostragem. A Figura 5 ilustra os passos
necessários para a geração e aplicação destes mapas.
plano de projeção
da fonte de luz
mapa de visibilidade
câmera
mapa de
profundidade
(a) Criando mapa de profundidade
x
=
mapas
combinados
plano de
amostragem
mapeamento
projetivo
blending
aditivo
mapa de iluminação
(b) Criando mapa de visibilidade
(c) Combinando mapas
(d) Mapeando mapa combinado
Fig. 5. Mapas de visibilidade.
Inicialmente, na Figura 5.a um mapa de profundidade é
gerado para os objetos da cena considerando-se a fonte de luz
como ponto de vista. Este mapa é gerado renderizando-se
apenas os objetos que devem gerar sombra, e em seguida
copiando-se os valores do buffer de profundidade para uma
textura. Este mapa é único para todos os planos de
amostragem e só necessita ser gerado uma vez no início de
cada quadro. Na Figura 5.b, o mapa de profundidade é
aplicado sobre o plano de amostragem e a renderização desta
vez é feita da câmera. A função de textura habilitada para
este mapa é similar à utilizada na técnica de geração de
sombras shadow mapping, onde os valores armazenados no
mapa são testados com as profundidades de cada fragmento
gerado da geometria (plano de amostragem); caso o teste seja
satisfeito, a cor branca é escrita, caso contrário, a cor preta é
escrita. O resultado dessa renderização já é propriamente o
mapa de visibilidade, que deve ser copiado para uma textura
para ser utilizado posteriormente. Na Figura 5.c, é ilustrado
como o mapa de visibilidade é combinado com o mapa de
iluminação (isto é feito ligando-se cada mapa em uma
unidade de textura e habilitando-se a função de textura
GL_MODULATE). Por fim, na Figura 5.d, o resultado da
combinação dos mapas é aplicado sobre cada um dos planos
de amostragem usando técnicas de texturas projetivas.
utilização de mapas de iluminação. Observe como tanto a
escolha das cores quanto a das formas (círculo, estrela,
mandala, etc.) influenciam notavelmente os resultados.
5. RESULTADOS
REFERÊNCIAS BIBLIOGRÁFICAS
Os resultados gerados a partir da implementação descrita
na seção anterior (ver Figura 6) foram obtidos em um AMD
Athlon 64 3200+ com 1024MB RAM e uma placa gráfica
NVidia GeForce 6600 GT de 128MB.
[1] G. Burdea, e P. Coiffet, Virtual Reality Technology,
Wiley-IEEE Press, 2ª Edição, 2003.
[2] Y. Dobashi, T. Yamamoto, e T. Nishita, “Interactive
Rendering Method for Displaying Shafts of Light”, in
Proc. of Pacific Graphics, pp. 31-38, 2000.
[3] M. Kanbara, e N. Yokoya, “Geometric and Photometric
Registration for Real-time Augmented Reality”, in Proc.
of ISMAR, pp. 279-280, 2002.
[4] T. Nishita, Y. Miyawaki, e E. Nakamae, “A Shading
Model for Atmospheric Scattering Considering
Luminous Intensity Distribution of Light Sources”, in
Proc. of SIGGRAPH, pp. 303-310, 1987.
[5] H. Jensen, e P. Christensen, “Efficient Simulation of
Light Transport in Scenes with Participating Media
using Photon Maps”, in Proc. of SIGGRAPH, pp. 311320, 1998.
[6] Y. Dobashi, T. Yamamoto, e T. Nishita, “Interactive
Rendering of Atmospheric Scattering Effects Using
Graphics Hardware”, in Proc. of Graphics Hardware,
pp. 99-108, 2002.
[7] R. James, “True Volumetric Shadows”, Graphics
Programming Methods, pp. 353-366, Julho 2003.
[8] Y. Zhu, G. Owen, F. Liu, e A. Aquilio, “GPU-Based
Volumetric Lighting Simulation”, in Proc. of CGIM, pp.
479-483, 2004.
[9] J. Mitchell, “Light Shaft Rendering”, ShaderX3:
Advanced Rendering with DirectX and OpenGL, pp 572588, Novembro 2004.
[10] V. Biri, S. Michelin, e D. Arques, “Real-Time
Animation of Realistic Fog”, in Proc. of Eurographics
Workshop on Rendering, pp. 9-16, 2002.
[11] M. Gibbons, “Radiation Received by Uncollimated
Receiver from a 4-PI Source”, Journal of the Optical
Society of America, vol. 48, no. 8, pp. 550-555, 1958.
[12] M. Woo, J. Neider, T. Davis, e OpenGL ARB, OpenGL
Programming Guide: the official guide to learning
OpenGL, Version 1.1, Addison-Wesley Pub, 2ª Edição,
Reading, 1997.
[13] C. Everitt. “Projective Texture Mapping”, 2001.
Disponível
em:
site
da
NVIDIA.
URL:
http://developer.nvidia.com/object/Projective_Texture_
Mapping.html, visitado em Agosto de 2007.
n
QUAD
σ
K
∆t
fps
(a)
40
20x20
0.1
20
0.1
41
(b)
50
30x30
0.9
20
0.04
28
(c)
40
30x30
0.5
30
0.07
37
(d)
55
10x10
0.2
25
0.05
28
(a)
(b)
(c)
(d)
mapa
Fig. 6. Resultados obtidos.
Como pode ser visto na Figura 6, cerca de 40 a 50 planos
de amostragem subdivididos em cerca de 10x10 a 30x30 é
suficiente para se obter bons resultados. Observe que os
mapas de iluminação foram propositalmente embaçados para
evitar problemas de aliasing. Vale ser ressaltada também a
flexibilidade na criação das funções de iluminação devido à
6. CONCLUSÕES E TRABALHOS FUTUROS
Este trabalho apresentou um método para simulação de
iluminação volumétrica que faz uso da GPU para acelerar a
simulação. Este método mostrou-se bastante adequado para
ser aplicado em RV e jogos eletrônicos.
Como trabalhos futuros, pode-se citar: tratar o caso em
que a densidade das partículas é variável; utilizar shaders
programáveis para aumentar a performance; tratar o caso em
que a fonte de luz é onidirecional; e, combinar o efeito de
iluminação volumétrica e técnicas de High Dynamic Range
Rendering (HDRR) para melhorar os resultados.
UMA EXPERIÊNCIA DE IMPLEMENTAÇÃO DE UMA APLICAÇÃO
INTERATIVA COM REALIDADE VIRTUAL E COM REALIDADE
AUMENTADA
Everton Francisco P. Dantas, Cláudio Kirner.
Centro Universitário Adventista de São Paulo – UNASP
everton.francisco@gmail.com, ckirner@gmail.com
Resumo - Realidade Virtual e Realidade Aumentada são
áreas que permitem o desenvolvimento de aplicações visuais
tridimensionais interativas em tempo real. Enquanto a
Realidade Virtual utiliza dispositivos convencionais ou
especiais para a interação do usuário, a Realidade
Aumentada minimiza a necessidade desses dispositivos. Este
trabalho apresenta uma experiência de implementação de
interações de uma aplicação de “tiro ao alvo”, usando
Realidade Virtual, com o software Vizard, e Realidade
Aumentada com o software ARToolKit.
Palavras-Chave – Interação, Implementação, Realidade
Aumentada, Realidade Virtual.
Abstract – Virtual reality and augmented reality are areas
that allow the development of interactive threedimensional
visual applications working in real time. Virtual reality uses
conventional and non-conventional devices to implement
user interaction, but augmented reality minimizes these
devices. This paper presents an experience on the
implementation of the duck court application, using virtual
reality with Vizard and augmented reality with ARToolKit.
Keywords – Interaction,
Reality, Virtual Reality.
Implementation,
Augmented
1. INTRODUÇÃO
As ações interativas são inerentes ao ser humano, servindo
para aprimorar suas atividades mentais e motoras e alcançar
objetivos no seu ambiente. Além disso, as interações são
essências no relacionamento interpessoal.
Com as aplicações por computador, as interações
passaram a ter mais um agente – a máquina. O avanço
tecnológico propiciou o desenvolvimento de ambientes
virtuais com Realidade Virtual (RV), permitindo a
participação do usuário, através do apoio de dispositivos
multi-sensoriais, funcionando em tempo real [4].
Por outro lado, ocorreu também o surgimento de uma
nova tecnologia: a Realidade Aumentada (RA) [2] [3]. A
Realidade Aumentada enriquece a visão que o usuário tem
do mundo, combinando objetos virtuais tridimensionais
gerados por computador sobrepostos no mundo real,
permitindo a interação do usuário com os objetos reais e
virtuais, usando as mãos diretamente, ou dispositivos simples
como uma pá [3].
No ambiente, a realização de uma ação (estímulos
motores) é concretizada através de técnicas de interação, que
são métodos, em que o usuário especifica comandos e dados
para o sistema computacional, para execução de tarefas.
Este trabalho tem como objetivo mostrar a implementação
de uma aplicação com Realidade Virtual e com Realidade
Aumentada,
possibilitando
a
comparação
das
implementações e do funcionamento das técnicas de
interação em cada ambiente.
A seção 2 mostra as características dos recursos de
Realidade Virtual e Realidade Aumentada utilizados. A
seção 3 aborda o desenvolvimento da aplicação com
Realidade Virtual e a seção 4 trata da implementação com
Realidade Aumentada. A seção 5 apresenta as conclusões do
trabalho.
2. RECURSOS DE REALIDADE VIRTUAL E
REALIDADE AUMENTADA
Nesta experiência, foram usados: o software Vizard [6],
para implementar a aplicação com Realidade Virtual, e a
biblioteca de software ARToolKit [1], para a versão com
Realidade Aumentada.
2.1. Vizard
O software Vizard [6] é uma ferramenta poderosa para o
desenvolvimento de interação em mundos virtuais. Vizard é
implementado em C/C++ e com que há de mais recente nas
extensões do OpenGL, proporcionando uma interação com
grande realismo para o usuário.
As principais características do software Vizard são:
importa vários formatos de arquivos 3D (.wrl, .txp, .cfg,
etc.); possui várias bibliotecas que são usadas para
executar/controlar ações nos objetos; utiliza como linguagem
de programação Python 2.3 (orientada a objeto); também
aceita vários formatos de imagens (.jpg, .bmp, .png) e de
áudio (.wav, .mp3); pode utilizar um número ilimitado de
câmeras para melhorar a interatividade; possui capacidade de
detecção de colisão entre objetos.
O ambiente do software Vizard consiste de um conjunto
de ferramentas gráficas e de script que permitem: escrever e
executar scripts; inspecionar modelos 3D e elementos
multimídia; emitir comandos universais que podem ser
chamados para alterar o estado global do ambiente. Também
possui comandos próprios para criar ações de animação nos
objetos virtual; manipulação de objetos tridimensionais,
como texto, avatar (humanóide), etc.; e manipulação do
ponto de visão do usuário.
2.2. ARToolKit
O ARToolKit é uma biblioteca livre comumente usada
para desenvolvimento de aplicações de Realidade
Aumentada, tendo sido criada com a linguagem C [1].
Os principais pontos para o funcionamento do ARToolKit
são suas técnicas de visão computacional, processamento de
imagens e programação. Para que o objeto virtual 3D seja
alinhado aos objetos do mundo real, é necessário calcular a
posição de objetos de referência, em relação à câmera, em
tempo real.
A interação no software ARToolKit ocorre através do uso
de placas quadradas, conhecidas como marcadores de
referência, contendo uma moldura e um símbolo interno.
Estes marcadores são usados para mostrar objetos virtuais
sobre eles, ou podem funcionar como elementos de interação
para alterar e manipular (placa de controle) os objetos
virtuais. Além disso, é possível também adicionar módulos
de som associados com os objetos virtuais [5].
Algumas modificações foram feitas no software
ARToolKit, a fim de apresentar novas funcionalidades, como
por exemplo, detecção de colisão e movimentação de objetos
criados em VRML. Estas funções foram implementadas na
biblioteca vrml97.
3. APLICAÇÃO COM REALIDADE VIRTUAL
Tendo como base a aplicação do tiro ao pato “Duckcourt”
(exemplo Demo disponibilizado pelo software Vizard) [6],
foi desenvolvida uma aplicação estendida com outros
recursos de Realidade Virtual, visando torná-la mais
interativo, motivadora e imprevisível. A ação se passa em um
salão fechado, contendo pilares (Figura 1), onde vários patos
(alvos) atravessam o cenário da esquerda para a direita. A
ação do usuário é tentar acertar um pato com a bola.
Entretanto, enquanto as bolas estiverem ricocheteando nas
paredes e colunas do cenário, elas poderão chocar-se com o
usuário, caso ele não se desvie. Para melhor posicionar-se e
evitar a colisão com as bolas e com os patos, o usuário
passará a movimentar-se pelo cenário, através de comandos
do teclado e ações no mouse.
Fig. 1. Detecção de colisão com a bola.
A função de detecção de colisão existente faz o usuário
manter certa distância dos alvos e pensar duas vezes antes de
lançar uma bola no alvo, já que se errar estará correndo o
risco de ser a própria vítima da bola (Figura 2). A
aproximação destes objetos pode ser percebida, através da
“janela de visão de espaço” localizada no lado superior
direito da tela (Figura 1).
Fig. 2. Detecção de colisão com o pato.
O Vizard possui o evento COLLISION_EVENT que
possibilita a indicação de detecção de colisão entre objetos.
A Figura 3 mostra a função mycollision, sendo registrada
através do comando callback, passando a ser chamada
periodicamente ao longo da aplicação.
Def mycollision(info):
If info.object.id > 22: //se for pato ou bola
Print ‘collided’
viz.director(Textcollision)
viz.callback(viz.COLLISION_EVENT, mycollision)
Fig. 3. Detecção de colisão do usuário com bolas e alvos.
Se as bolas acabarem, o usuário poderá aguardar o
abastecimento automático, ou capturar as bolas que
estiverem próximas de si.
A primeira funcionalidade foi desenvolvida da seguinte
forma: em cada momento que a bola colide em alguma parte
do cenário, envolvendo o Avatar ou o alvo, ela perde
velocidade com redução em 5%. Isto faz com que depois de
um tempo, a bola fique com uma velocidade muito reduzida.
Quando esta velocidade atingir um valor mínimo prédefinido, automaticamente ela será disponibilidade
novamente para o usuário.
Na segunda funcionalidade, para capturar as bolas é
preciso apontar para elas e apertar o botão “ENTER”. No
entanto, é importante que a distância estabelecida entre o
usuário e a bola seja no mínimo de 4 metros, caso contrário,
a ação não terá efeito. Foi usada uma função do Vizard,
denominada “puck()”. Esta função, mostrada na Figura 4,
identifica o objeto virtual que esta sendo apontado, a partir
da verificação de intersecção entre o ponto (em linha reta) da
mira e o objeto virtual. Desta maneira, é possível capturar a
bola e torná-la disponível, conforme o detalhamento na
Figura 4.
Assim, em função das interações possíveis, procurou-se
desenvolver uma aplicação atraente com vários aspectos
interativos.
Def mykeyboard(whichKey):
If whichKey = = viz.KEY_RETURN: //se apertar ENTER
Object = viz.pick()
if object.valid(): //se a mira estiver apontando para a bola
viz.director(getball, object) // Captura a bola
Fig. 4. Parte do algoritmo de captura de bolas.
4. APLICAÇÃO COM REALIDADE AUMENTADA
Usando Realidade Aumentada, foi desenvolvida uma
aplicação como aquela feita com Realidade Virtual,
preservando-se as características próprias da Realidade
Aumentada. Foi usado o software ARToolKit juntamente com
a biblioteca de classes OpenVRML.
A inserção dos objetos virtuais no ambiente real ocorre
através dos marcadores (placas), constituídos por: ALVO,
MIRA e Placa Gerenciadora de Objetos Virtuais (Placa
GERENTE), que podem ser visualizados na Figura 5.
Fig. 5. Marcadores de Referência.
O marcador ALVO tem por função mostrar os “Alvos”
(objetos virtuais desenvolvidos a partir da Linguagem de
Modelagem de Objetos Virtuais – VRML) flutuando no
espaço.
O marcador MIRA mostra o objeto virtual “Mira”, tendo
como função indicar o ponto onde a esfera deve ir, ao ser
lançada. O objeto virtual “Mira” é mostrado acima do
marcador e não na sua frente e não sofre alteração na sua
rotação, mesmo que o usuário incline o marcador. A mira
somente sofre alteração na sua translação.
Foi necessário reduzir o tamanho do marcador MIRA, já
que o mesmo é mostrado na tela mais próximo da câmera do
que o marcador ALVO. Seu tamanho físico foi reduzido em
torno de 50% em relação ao marcador ALVO.
O ARToolKit identifica a distância do marcador, em
relação à câmera (eixo Z), a partir do tamanho do marcador
capturado e do valor de referência de proximidade entre
marcadores. Para calcular a proximidade, foi utilizada a
terceira linha de cada padrão no arquivo de configuração
vrml_data.dat.
As coordenadas do sistema ARToolKit são definidas,
através do arquivo de configuração camera_para.dat que
contém os parâmetros da câmera.
Como o ARToolKit utiliza o tamanho do marcador como
referência de distância no espaço 3D, quando os marcadores
ALVO e MIRA são detectados com tamanhos próximos, os
objetos virtuais associados a eles acabam sofrendo oclusão,
já que a distância no eixo Z é semelhante.
Para evitar este comportamento, também foi necessário
reduzir o valor de referência de proximidade no padrão do
marcador MIRA contido no arquivo de configuração
vrml_data.dat. Assim, quando os marcadores forem
detectados com tamanhos semelhantes, o marcador MIRA
terá sua distância reduzida virtualmente e o objeto virtual
“Mira” poderá ser desenhado mais próximo da tela, sem
ocorrência de oclusão.
Para lançar as bolas na direção da mira, foi criada a placa
GERENTE (segundo marcador da Figura 5). Esta placa
GERENTE especifica o objeto virtual (esfera) que será
ativado. Este objeto é associado ao marcador cadastrado no
arquivo de configuração vrml_data.dat, mas que na realidade
não é associada a nenhuma placa física. Assim, o objeto
associado a esta placa somente poderá tornar-se visível,
através do marcador GERENTE.
Quando o marcador GERENTE é identificado, como
seqüenciado na Figura 6, verifica-se se existe alguma esfera
disponível. Caso exista esta disponibilidade, usa-se o ponto
em que a mira se encontra e calcula-se proporcionalmente a
posição (coordenadas X e Y) em um ponto pré-definido do
eixo Z.
Esta nova posição será utilizada pelo objeto virtual
“Esfera”, mas antes disso, ela deverá ser convertida para as
coordenadas do VRML.
If(object[i].visible == 0 ) {
if( i == 0 ) {// i igual a esfera
if(proxima_esfera.visible == 0) {//se esfera não está visível
eixoz = 2000;
calcula_posição(); // calcula a posição futura da esfera
converte_para_VRML();
arShowBall(esfera_disponivel, nova_pos);
timeball[ball_id] = arUtilTimer();
}
}
}
Fig. 6. Algoritmo para o lançamento da bola.
Após a conversão da posição de destino, a esfera será
ativada e animada, gerando a movimentação. Os nodes
TimeSensor e PositionInterpolator possibilitam a animação
de movimento do objeto virtual modelado (esfera).
Assim, através da função arShowBall(), é passada a nova
posição
de
término
da
animação,
ocorrendo
automaticamente. Neste momento, a esfera que será lançada
torna-se visível para o ARToolKit e, quando o período da
animação terminar – definido no TimeSensor, ela retornará
novamente a ser invisível para o ARToolKit.
Caso se queira atirar outra esfera, será necessário ocultar a
placa GERENTE da visão da câmera e mostrá-la novamente.
Na Figura 7. é possível visualizar os marcadores e cinco
objetos virtuais (três esferas e dois patos) misturados com
ambiente do usuário.
Mesmo que a esfera passe bem próxima aos patos, sem
colidir com nenhum deles, não será detectada a colisão.
Desta forma, foi possível desenvolver a detecção de colisão
entre objetos no ambiente ARToolKit em tempo real.
5. CONCLUSÕES
Fig. 7. Lançamento de três esferas.
Para detectar a colisão da bola com o pato, foi
desenvolvida a função de detecção, mostrada na Figura 8. A
partir do momento em que a esfera torna-se visível, ocorre a
verificação da colisão da mesma com os alvos.
if(object->vrml_id > 0) {//se é a esfera ou o pato
arVrml97Draw( object->vrml_id );
If(object->vrml_id > 2) {//se é esfera
arDetectCollision(object->vrml_id);
}
}
else if( object->vrml_id < 0)
Printf("unknown object type!!\n");
Fig. 8. Função de detecção de colisão da bola com o pato.
A função arDetectCollision() foi implementada para
capturar a posição de uma esfera e dos dois alvos e comparar
a distância entre a esfera e o alvo (alternado). Se a distância
for menor que a soma dos raios dos dois objetos, é
caracterizada uma colisão que tem com ação mudar a cor do
alvo atingido. Esta situação é mostrada nas Figura 9.
Fig. 9. Colisão da esfera com o pato.
A Realidade Virtual abre um leque de formas de interação
em aplicações, viabilizadas com o uso da ferramenta de
desenvolvimento de aplicações Vizard, bastando ao
desenvolvedor usar sua criatividade.
Um dos problemas identificado na aplicação de Realidade
Virtual refere-se à sobrecarga de processamento da detecção
de colisão. Nesse sentido, o código deverá ser aperfeiçoado
para aumentar a velocidade de execução das ações e da
detecção de colisão entre objetos e observador.
A Realidade Aumentada facilita a interação usuárioaplicação, já que o usuário está mais familiarizado com o
mundo real do que com o mundo virtual. Em contrapartida, a
Realidade Aumentada restringe-se ao espaço físico.
A implementação da aplicação com Realidade Virtual foi
mais simples, em função do elevado potencial do software
Vizard, com seu largo repertório de funções.
A aplicação com Realidade Aumentada exigiu maior
esforço de programação e alguns “truques”, como esconder a
esfera, envolvendo o ARToolkit e o OpenVRML.
Como desdobramento do projeto com Realidade
Aumentada, há necessidade de tornar a interação entre
usuário e objeto menos dependente dos marcadores. Além
disso, é importante possibilitar que a câmera seja
movimentada, quando uma esfera estiver em movimento.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] ARToolKit, “ARToolKit”, version 2.65 for vrml,
http://www.hitl.washington.edu/artoolkit/, May 2007.
[2] R. T. Azuma, et al. “Recent Advances in Augmented
Reality”, IEEE Computer Graphics and Applications,
vol. 21, no. 6, pp. 34-37, 2001.
[3] C. Kirner, R. Tori, Introdução à Realidade Virtual,
Realidade Misturada e Hiper-realidade in Realidade
Virtual: Conceitos, Tecnologia e Tendências, Cláudio
Kirner e Romero Tori (Ed.), 1ª Edição, São Paulo, vol. 1,
pp. 3-20, 2004.
[4] M. S. Pinho, C. Kirner, “Uma introdução à Realidade
Virtual”, http://grv.inf.pucrs.br/Pagina/TutRV/tutrv.htm,
Março 2007.
[5] R. Santin, et al. “Ações interativas em Ambientes de
Realidade Aumentada com ARToolKit”, VII Symposium
on Virtual Reality, SBC, pp. 161-168, 2004.
[6] VIZARD, “VIZARD”, version 2.5,
http://www.worldviz.com/products/vizard/index.html,
March 2007.
Uso da Realidade Virtual na Melhoria do Processo de Ensino da Física
(Movimento Harmônico Simples)
Jucélio Costa Araújo1, Alexandre Cardoso2 e Edgard Lamounier2
1-Grupo de Realidade Virtual de Goiás – GRVG - Instituto Luterano de Ensino Superior de Itumbiara -Go, Cefet-Urutaí Unidade de Ensino
Descentralizada de Morrinhos -Go;
2-Laboratório de Computação Gráfica: Universidade Federal de Uberlândia -Mg.
Resumo - O objetivo deste trabalho é demonstrar a
possibilidade do estudo de um conteúdo com a ajuda
do computador usando a Realidade Virtual como
instrumento para criação de ambientes virtuais que
simulem aspectos da área da Física. O projeto
culminou no desenvolvimento de um software
educacional baseado em Realidade Virtual,
desenvolvido em VRML a fim de auxiliar o ensino
didático, exemplificando um conteúdo específico de
uma disciplina, em que estudantes possuem dificuldade
no aprendizado, utilizando a potencialidade da
Realidade Virtual como uma ferramenta de apoio ao
ensino podendo facilitar o entendimento deste
conteúdo de uma forma mais rápida e interativa.
Palavras-Chave - Física, Interação, Realidade Virtual,
VRML.
Abstract - The purpose you gave I work is demonstrate
the possibility of the I study by one content with the she
helps of the computer by using the reality Virtual as
the means of for creating of environments virtual what
sham appearances from area of physics. The project
culminate into the development by one software
educational based in Virtual reality, developed in
VRML for the purpose of auxiliary the tuition didactic,
exemplifying a content specific from a discipline, what
students has difficulty into the apprenticeship, by using
the potentiality from Virtual reality like a tool of
support the I school can you facilitate the perception
you gave content from a she forms more fast &
interactive
Keywords - Physics, Interaction, Virtual Reality,
VRML.
1. INTRODUÇÃO
A educação é uma área ampla, onde o
conhecimento é um ativo que possui diversas formas
de aquisição. Nessas diferentes maneiras de aprender,
uma certeza é clara, trocar a abstração pelo real tem
tido bons resultados. Com isso a informática se torna
um ponto forte de apoio, pois o uso do computador cria
condições para que o aluno construa o seu
conhecimento por meio da criação de ambientes de
aprendizagem para uma melhor visualização e
interação com assunto apresentado.
Neste contexto computacional a Realidade Virtual
desponta como o melhor instrumento para criação de
cenários imaginados, podendo resolver o grande
problema de abstração de alguns conteúdos, como por
exemplo a Física, área extremamente carentes de
procedimentos de simulação, pois é crescente a
preocupação dos docentes pelo insucesso dos alunos na
aprendizagem dessa disciplina.
1.1. Realidade Virtual
Realidade virtual pode ser considerada como uma
ferramenta para visualizar, manipular, explorar,
interagir e modificar, através do computador, dados
complexos de uma forma natural, muito semelhante ao
que se faria no caso da ação sobre o dado real [1].
O uso da Realidade Virtual estende-se em várias áreas,
uma em destaque é a Educação, onde é um dos campos
mais vastos para a aplicação da Realidade Virtual [1].
Em um país como o Brasil, onde a demanda por Ensino
Médio cresce a cada ano, isso faz com que o sistema
aumente sistematicamente, o que faz com que o ensino
tenha a necessidade de se tornar mais prático devido a
grande quantidade de pessoas que deseja obter o saber.
Com isso a educação a distância pode trabalhar como
fator impulsionador da divulgação de sistemas de
simulação. Não apenas popularizando a técnica, mas
também colaborando como fator incentivador do
estudo.
1.2.Ambientes Virtuais
Por ambientes podemos entender tudo aquilo que envolve
pessoas, natureza ou coisas, objetos técnicos. Já o virtual vem
do latim medieval virtualis, derivado por sua vez de virtus,
força, potência. No senso-comum muitas pessoas utilizam a
expressão virtual que designar alguma coisa que não existe
como, por exemplo: “com o desemprego, meu salário será só
virtual”, “naquele município tem tanta corrupção que 30%
dos eleitores são virtuais”. Enfim virtual nos exemplos
citados vem representando algo fora da realidade, o que se
opõem ao real.
Virtual não se opõe ao real e sim ao atual. Virtual é o que
existe em potência e não em ato. Citando o exemplo da
árvore e da semente, toda semente é potencialmente uma
árvore, ou seja, não existe em ato, mas existe em potência.
Ao contrário dos exemplos citados no parágrafo anterior o
virtual faz parte do real, não se opondo a ele. Por isso, nem
tudo que é virtual necessariamente se atualizará.
2.
TRABALHOS RELACIONADOS
LVEE - Laboratório Virtual para Experiências de
Eletrônica - O projeto LVEE foi desenvolvido na PósGraduação da Pontifícia Universidade Católica de
Campinas e consiste na criação de um ambiente virtual,
baseado em modelos do mundo real, para a
experimentação de atividades virtuais relacionadas a
circuitos elétricos e eletrônicos [2].
VRML Gallery of Electromagnetism – Este projeto
oferece uma série de mundos estáticos desenvolvidos
em VRML, que simulam experimentos de Física, tais
como vetores de campo elétrico, vetor de campo
magnético etc. Este sistema, porém não permite o
usuário modificar ou alterar os parâmetros de alteração
de características dos campos (elétrico/magnético) ou
fazer a alteração dos elementos de fontes (cargas
elétricas ou em movimento) [3].
Laboratório Virtual para experimento de Física Este trabalho apresenta uma ferramenta desenvolvida,
com utilização da linguagem VRML, para fins de
suporte ao ensino presencial e a distância. O foco
principal desta pesquisa é o desenvolvimento de
ferramentas que possibilite, o usuário, desconhecedor
de técnicas de Computação Gráfica e de RV, criar e
modificar, facilmente, ambientes virtuais para elaborar
experimentos de Física usando a Internet ou Intranet
[4].
Analisando esses sistemas, conclui-se que cada um
deles apresenta características peculiares quanto ao
grau de interação do usuário.
Daí a necessidade da criação de uma arquitetura
utilizando técnicas de Realidade Virtual que
possibilitem o desenvolvimento de um sistema
educacional interativo.
formatados em gráficos para uma melhor interpretação
dos resultados.
3.1 Estudo de Caso (Movimento Harmônico Simples)
Oscilar significa mover-se de um lado para outro,
movimentar-se alternadamente em sentidos opostos,
mover-se,
tornando
a
passar
(ao
menos
aproximadamente) pelas mesmas posições. Assim, uma
partícula que se movimenta para a frente e para trás ao
redor de um ponto dado está em um movimento
oscilatório. Periódico significa que se repete com
intervalos regulares.
O movimento harmônico simples (MHS) é um tipo
particular de movimento periódico oscilatório em que a
partícula se move sobre uma reta de modo que a
intensidade da força que tende a levá-la ao ponto fixo
cresce na mesma proporção em que aumenta o seu
afastamento deste mesmo ponto fixo. O movimento
harmônico simples pode ser visto como a projeção
ortogonal do movimento circular uniforme (MCU)
sobre qualquer reta. Por exemplo, se uma partícula
descreve um MCU num plano vertical, a sombra da
partícula descreve um MHS sobre uma linha vertical
Este sistema tem como objetivo demonstrar que a
projeção de um movimento circular uniforme em
qualquer diâmetro da trajetória produz um movimento
harmônico simples (MHS). Podemos também
visualizar, na imagem, o comportamento dos vetores
velocidade e aceleração no MCU.
A figura 1 nos mostra uma forma para se ver que a
equação de movimento do M.H.S. é do tipo seno ou
coseno, é a partir da projeção do Movimento Circular
Uniforme (M.C.U.) sobre o eixo x, onde sabemos que
projeções são feitas a partir das funções seno e coseno.
Com isso a função obtida é do tipo seno ou cosseno.
3. METODOLOGIA
Entrevistas foram feitas com professores da rede
pública e particular de ensino na área de Física
especificamente
o
Movimento
Harmônico
Simples(MHS), buscando enumerar os principais
problemas encontrados pelos alunos durante as aulas
desta matéria, aplicou-se também, um questionário aos
alunos envolvidos destas escolas, para se saber
especificamente quais as principais dificuldades de
aprendizado dentro deste conteúdo de Física. Com
estes métodos, detectou-se a dificuldade por parte dos
alunos em visualizar os processos físicos de uma
maneira mais concreta, pois as imagens estáticas
(imagens em livros, ou apostilas) as quais eles estão
acostumados davam apenas uma visão parcial do
evento, fazendo com que estes alunos tivessem uma
interação menor com o fenômeno. O que confirmava
também as opiniões obtidas com os professores, essas
conclusões aplicação dos questionários, os principais
problemas do aprendizado da Física neste estudo foram
Figura 1. Projeção do M.C.U. sobre o eixo x
com uma diferença de fase ø. eixo x produzindo
um M.H.S.
4. TECNOLOGIA UTILIZADA
4.1 Vrml
É a abreviação de Virtual Reality Modeling
Language, ou Linguagem para Modelagem em
Realidade Virtual. O VRML é uma linguagem
independente de plataforma que permite a criação de
ambientes virtuais por onde se pode passear, visualizar
objetos por ângulos diferentes e até interagir com eles.
4.2 Javascript
É uma linguagem de script, isto é, texto ASCII
interpretado sem necessidade de compilação, que
permite adicionar características ativas ao código
HTML em que está inserida. Foi utilizada no projeto
para uma melhora do nível de animação dos objetos
participantes do evento, pois a linguagem VRML é
limitada para atualizações automáticas no mundo
virtual.
5. IMPLEMENTAÇÃO DO SISTEMA
Foi construído um protótipo para ser apresentado aos alunos
para a comparação do nível de aprendizado da aula virtual
em relação aos mesmos durante uma aula comum, e outra
aula com o uso de um ambiente virtual demonstrando o
campo de atuação do movimento harmônico simples dentro
do movimento circular.
Figura 2. Ponto de visualização inicial da aplicação em
RV.
A Figura 3 mostra a força restauradora que governa o
MHS cujo módulo é proporcional ao afastamento da
partícula do ponto fixo considerado.
O ambiente virtual foi modelado na linguagem VRML
permitindo a interação do usuário com o mundo, havendo a
necessidade da integração da linguagem VRML e Java script,
para uma melhora do nível de animação dos objetos
participantes do evento, pois a linguagem VRML é limitada
para atualizações automáticas no mundo virtual.
5.1 Funcionamento do sistema
Essa simulação trata do Movimento Harmônico Simples
aplicado no movimento circular uniforme. Como pode ser
visto na Figura 2, existem três partículas, representadas por
pequenos círculos, um deles está em cima da borda circular
azul e os outros em um dos dois diâmetros. Tais diâmetros
são perpendiculares entre si. Assim, uma partícula se
movimenta de modo que, em intervalos de tempos iguais, o
movimento se repete identicamente (movimento periódico).
Assim, uma partícula estará em MHS quando se move sobre
uma reta sob o efeito de uma força cujo módulo é
proporcional ao afastamento da partícula de um ponto fixo
sobre esta reta e dirigida para esse ponto. Uma força que,
atuando sobre uma partícula, tem a propriedade de estar
sempre dirigida a um ponto fixo, é chamada de força
restauradora. A força que governa o MHS é uma força
restauradora cujo módulo é proporcional ao afastamento da
partícula do ponto fixo considerado.
A Figura 2 mostra o movimento das esferas no momento
inicial do MHS onde se move sobre uma reta sob o efeito de
uma força cujo módulo é proporcional ao afastamento da
partícula de um ponto fixo sobre esta reta e dirigida para esse
ponto.
Figura 3. Ponto da força restauradora do MHS.
6. AVALIAÇÃO, RESULTADOS E CONCLUSÕES
O ambiente foi apresentado a alunos e professores de
uma escola pública e outra privada. O ambiente foi
testado por cerca de 30 alunos dessas escolas que
tinham dificuldades no conteúdo MHS da disciplina de
Física.
Foi feita inicialmente a apresentação formal do
ambiente tanto para alunos quanto para professores e a
real finalidade desta demonstração. Primeiramente foi
ministrada uma aula nos moldes normais para alunos,
com o envolvimento apenas de quadro e giz para a
explicação do movimento harmônico simples. Em um
outro momento foi apresentado o mesmo conteúdo,
porém com a utilização do ambiente virtual, mostrando
o MHS em uma outra visão, onde os alunos tiveram
uma participação mais interativa com o ambiente.
Após a apresentação do protótipo, todos os
participantes responderam questionários apresentando
suas opiniões referentes ao uso da realidade virtual
dentro o ensino da física e apresentaram também
sugestões em relação ao uso de Realidade virtual no
ensino do MHS.
Num geral os resultados finais foram satisfatórios, pois
95 % dos usuários do processo acharam que o
aprendizado foi bem estimulado com o uso do
ambiente virtual, e somente 5% acharam que tiveram
alguma dificuldade no aprendizado do Movimento
Harmônico Simples utilizando ambientes virtuais,
como é mostrado na Tabela 1.
Tabela 1- Resultados do experimento do ambiente virtual
em relação ao uso do Sistema de Física em escolas
públicas e particulares.
Usuários
do sistema
Quantidade
Aprovação
Rejeição ao
ao
uso uso
do
sistema
sistema
Professores
4
4
0
Alunos
90
86
4
Foi feito também uma outra avaliação como é
mostrado na tabela 2 comparando o nível de
aprendizado do sistema em relação ao aprendizado
tradicional, detectando-se as opiniões de professores e
alunos de um em relação ao outro. Também foi aberto
aos participantes uma área para poderem dar a sua
opinião em relação as dificuldades encontradas em
relação ao uso da ferramenta, principalmente as
dificuldades nos princípios básicos da informática por
não estarem acostumados com esses tipos de
ferramentas, praticamente nulas nas escolas atuais, o
que de inicio causa um temor por parte de quem
trabalha com o sistema, porém a medida que os mesmo
vai se tornando familiar aos usuários, o nível de uso do
mesmo se torna cada vez mais alto, o que transforma
este protótipo em um parceiro no aprendizado da
Física.
Tabela 2- Resultados em relação ao aprendizado do
sistema, professores e alunos colocando suas preferências
de uso.
Usuários
Quantidade Aprendizado Aprendizado com
tradicional
a interface virtual
Professores 4
1
3
Alunos
90
12
78
6.1 Conclusões
A principal conclusão deste trabalho é aplicabilidade
da Realidade Virtual como instrumento capaz de
melhorar motivar alunos e professores no processo de
ensino-aprendizagem de qualquer conteúdo.
A medida que era feita o estudo sobre o assunto ficou
claro que hoje se busca sempre na área da educação
meios para se poder ter um fundamental importância
em relação a qualidade de aprendizado, e com isso a
realidade virtual assume papel de importância dentro
deste tema, pois é um meio que a cada dia vem
ganhando espaço dentro das diversas áreas, e que agora
começa a despertar interesses em relação a educação.
Neste ambiente estudado foi trabalhado a integração do
JavaScript com a linguagem Vrml, conseguindo
resultados satisfatório para o ambiente.
Contudo as opiniões dos professores foram bem aceitas
pois os mesmos possuem um conhecimento bem
concreto em relação ao assunto, porém mais de 95%
dos alunos tiveram a mesma opinião, fazendo com que
a idéia realmente tivesse sucesso. O que nos torna
responsáveis pela mudança dos paradigmas que
existem atualmente dentro da educação.
6.2 Trabalhos Futuros
Como trabalhos futuros, torna-se necessários a
aplicação da realidade virtual em outras áreas menos
exploradas da física, como por exemplo:
1 – Uso da realidade virtual no aprendizado da
gravitação universal
2-Realidade Virtual como apoio ao aprendizado de
termodinâmica.
3-Visualização do impacto de objetos num choque, e
seus resultados, utilizando a realidade virtual
7. REFERÊNCIAS BIBLIOGRÁFICAS
[1] KIRNER, Cláudio. Sistemas de Realidade Virtual.
Grupo de Pesquisa em Realidade Virtual,
Departamento de Computação – UFSCar. 1997.
Documento disponível no endereço eletrônico
http://www.dc.ufscar.br/~grv/,
[2] MEIGUINS, Bianchi Serique, BEHRENS, Frank
Herman. Laboratório Virtual para Experiências de
Eletrônica. In: 2th Workshop on Virtual Reality, 1999.
[3] SALGADO, Rob. VRML Gallery of
Electromagnetism. Disponível no endereço eletrônico.
http://physics.syr.edu/courses/vrml/electromagnetism/s
phere.wrl, agosto 2005.
[4] CARDOSO, Alexandre, LAMOUNIER JR.,
Edgard, TORI, Romero. Interactive 3D Physics
Experiments Symposium on Virtual Reality Florianópolis: UFSC, SBC, 2001, pp. 280-290.
[5] RIBEIRO, Marcos Wagner de Souza. Uma
arquitetura para ambientes virtuais distribuídos. 2005.
105f. Tese (Doutorado em Ciências) Faculdade de
Engenharia Elétrica, Universidade Federal de
Uberlândia, 2005.
[6] PASQUALOTTI, Adriano et al. A Realidade
Virtual como proposta de ensino-aprendizagem de
Matemática. In: Semana Acadêmica do PPGC, 1999,
Porto Alegre. Documento disponível no endereço
eletrônico Marília, SP. Anais 2th SBC Workshop on
Virtual Reality: Marília, SBC, 1999, pp.56-67.
USO DO LIVRO INTERATIVO COM REALIDADE AUMENTADA EM
APLICAÇÕES EDUCACIONAIS
Francisco César de Oliveira, Rafael Santin, Claudio Kirner
Universidade Metodista de Piracicaba-Unimep
e-mail: francisco.o@hotmail.com, {rafaelsantin, ckirner}@unimep.br
Resumo – Este artigo enfoca a Realidade Aumentada como
ferramenta de apoio e incentivo em aplicações educacionais.
O uso do Livro Interativo com Realidade Aumentada,
associado com as interações aqui propostas, permite aos
educadores e alunos criarem mundos virtuais que podem ser
verificados em tempo real ou não, dependendo da aplicação.
Assim, o trabalho cria uma situação diferenciada em relação
ao processo educacional, enfatizando o trabalho
colaborativo.
Palavras-Chave – colaboração,
aumentada, realidade virtual.
educação,
Num primeiro momento, o livro interativo é como outro
qualquer, com textos e figuras. A diferença é que possui
marcadores nas páginas, os quais estão diretamente
relacionados com as aplicações de RA. É através dos
marcadores, ou simplesmente placas, que as aplicações
envolvendo RA são possíveis. A Figura 1 exemplifica o
funcionamento básico de uma aplicação com o livro
interativo.
realidade
Abstract – This paper addresses Augmented Reality as a tool
to support and motivate people to use it on educational
applications. The Interactive Book with Augmented Reality
explores several types of interactions, allowing teachers and
students to create virtual environments that can be
manipulated in real time or not depending on application.
This work is related to a new situation in the educational
process, emphasizing the collaborative work.
Keywords – collaboration, education, augmented reality,
virtual reality.
1. INTRODUÇÃO
Conforme Matias [1], a utilização de novas tecnologias
multimídia têm produzido facilidades potencialmente úteis
para diversas áreas, tais como ensino, vendas, administração,
disseminação de informação e jogos. De acordo com Wolf
[2], as pessoas formam parte de um novo modo de ser e
pensar, influenciadas pela combinação de diversas
tecnologias, tais como a televisão, o computador, games online, entre outras. Ainda, segundo o autor, as tecnologias
podem e devem servir de aliadas à tarefa de ensinar, visando
facilitar o processo de ensino e aprendizagem. Assim, cabe
aos atuais educadores repensar a questão pedagógica, no
sentido de traçar novas metas e objetivos a fim de aplicar
adequadamente essas novas tecnologias.
Realidade Aumentada (RA) é a inserção de objetos 3D ou
animações no mundo real. Embora ainda não se trate de uma
aplicação facilmente manipulada por qualquer usuário, é de
se esperar que esse quadro se inverta em consequência dos
inúmeros projetos de RA espalhados pelo mundo [3] [4].
O presente trabalho descreve algumas interações aplicadas
no ambiente do Livro Interativo com Realidade Aumentada
(LIRA). Aborda autoria de mundos virtuais, assim como o
uso educacional desses ambientes, envolvendo aplicações
síncronas, assíncronas e situações de colaboração que são
propostas entre alunos e professores.
2. AMBIENTE DO LIRA
Fig. 1. Livro Interativo com RA.
Percebe-se que o objeto virtual da figura fica atrelado ao
marcador impresso na página do livro. Isso permite que cada
marcador possa se relacionar com um ou, dependendo da
aplicação, com vários objetos 3D. Além do objeto virtual, o
livro interativo também pode retornar áudio, aumentando
ainda mais o leque de opções para aplicações desse tipo,
além de ser um recurso sensorial adicional.
Para que se possa interagir com objetos virtuais mediante
o uso da RA, é necessário algum hardware e software. O
primeiro é possuir um computador e uma webcam, ambos de
configuração básica. Quanto ao software, existem alguns
programas disponíveis que tratam a RA; um dos mais
utilizados é o ARToolKit [5]. O software é livre, de código
aberto e foi desenvolvido inicialmente pela Universidade de
Osaka, através do Dr Hirokazu. Trata-se de uma ferramenta
que rastreia e posiciona os objetos 3D em relação à câmera
através de uma forma padrão, que é o marcador já
mencionado. Portanto, é necessário conhecer uma
determinada forma (normalmente um retângulo) para obter
sua localização, de maneira que o objeto virtual possa ser
sobreposto no mundo real através desse marcador. Assim, o
ARToolKit é uma biblioteca de programação que utiliza
recursos de visão computacional para alinhar objetos virtuais
com seus respectivos padrões de marcadores.
3. AUTORIA DE MUNDOS VIRTUAIS
EXTRAÇÃO DE OBJETOS DO LIRA
COM
Mediante aplicações adicionais, o livro com RA descrito
pode se tornar ainda mais atraente e interativo. Os objetos
virtuais do exemplo anterior podem ser visualizados um a
um, conforme vão surgindo as páginas do livro, ou mesmo
alterados sequencialmente por outros objetos através de uma
segunda placa que poderia fazer essa troca. Em ambos os
casos, a interação do usuário estaria reduzida à manipulação
do livro interativo. Com esse livro e a adição de um segundo
componente, a prancheta virtual, é possível construir mundos
virtuais que vão se formando gradativamente. Portanto,
enquanto que no primeiro exemplo o usuário só pode ver e
manipular o objeto, com a prancheta é possível mais do que
isso, já que a interação aumenta na medida em que o usuário
passa a montar ambientes virtuais. A prancheta é outro tipo
de placa, assim como as demais impressas no livro, mas com
a diferença de não ficar presa àquele, ou seja, a placa da
prancheta virtual é independente. A Figura 2 ilustra a
prancheta ao lado do LIRA. A figura somente mostra a
prancheta como objeto virtual, já que, na verdade, a placa
que acomoda esse objeto está mais abaixo da prancheta, não
sendo possível visualizá-la neste exemplo; o objeto 3D da
prancheta está representado na figura por uma placa
retangular de cor cinza.
apagar novos objetos mediante manipulações simples por
intermédio dessas placas. Essas interações são realizadas
com a aproximação das placas aos objetos 3D já
posicionados na prancheta; seria o mesmo que corrigir um
erro.
Uma vez criado o mundo virtual na prancheta, a aplicação
permite salvar o ambiente 3D recém construído e com isso o
aluno pode enviar ao seu professor a tarefa concluída, o que
poderia ser feito por e-mail ou outro mecanismo digital.
Mesmo depois de salva, a prancheta ainda pode ser
restaurada mediante outra placa, possibilitando ao aluno
fazer mais alterações no ambiente virtual, se assim o desejar.
Para que a prancheta possa ser visualizada e avaliada pelo
professor, este deverá possuir um sistema semelhante ao do
aluno, ou seja, aquele que foi necessário para montar a
prancheta virtual com todos os objetos 3D configurados
anteriormente. Esse sistema envolve o mesmo hardware e
software utilizados para a construção do mundo virtual. O
professor também deverá possuir uma placa de restauração,
de tal forma que possa reconstruir o ambiente montado pelo
aluno. Feito isso, o professor tem condições de avaliar a
tarefa enviada e encaminhar a seu aluno a nota, assim como
outras informações pertinentes. O professor tem a opção de
corrigir manualmente a prancheta e devolvê-la ao seu aluno
para que este tome ciência de seus erros. Também poderia,
em vez de corrigir, solicitar ao aluno que tente refazer a
tarefa, a fim de melhorar seu desempenho. A Figura 3 ilustra
a visão do aluno a medida que o seu mundo virtual vai sendo
formado, e mostra a visão do professor, que após receber os
arquivos necessários, faz a execução em seu computador.
Fig. 2. Livro interativo e a prancheta virtual.
A prancheta tem por objetivo armazenar objetos virtuais
que podem ser extraídos do livro. Dessa forma, a aplicação
do LIRA ganha um novo reforço interativo, que é a
possibilidade de recriar novos ambientes virtuais conforme a
necessidade do usuário, reforçando a idéia de autoria na
construção de mundo virtuais utilizando as mãos.
A aplicação proposta pode servir de apoio educacional na
medida em que os mundos 3D poderiam reforçar conteúdos
disciplinares, como tarefas escolares, revisão de material
didático, dentre outras aplicações. Assim, seria possível ter
uma situação em que o aluno, a pedido de seu professor,
poderia imaginar um ambiente virtual baseado no livro e em
seguida recriá-lo na prancheta.
Placas adicionais permitem ao aluno fazer alterações,
mesmo na prancheta virtual já formada. Isso faz com que o
ambiente possa ser alterado pelo aluno, de forma a incluir ou
Fig. 3. Mundos virtuais criado pelo aluno e observado pelo
professor.
O tipo da aplicação descrita é chamado de assíncrona. Isso
se deve porque existe uma diferença de tempo entre o montar
o mundo virtual pelo aluno e a posterior avaliação do
professor. Trata-se, portanto, de um típico caso de Educação
a Distância (EAD). A EAD é uma tendência que vem
ganhando muitos adeptos no sistema educacional brasileiro,
uma vez que os cursos a distância estão se tornando comum
no meio acadêmico, inclusive em muitas universidades. Essa
modalidade de ensino é vista não só como um sistema
especial, mas como uma parte integrante do aprendizado que
prepara profissionais nas diversas áreas de ensino e pesquisa
[6].
A aplicação também permite que o processo ocorra em
tempo real de duas maneiras: on-line ou presencial. No
primeiro caso, o aluno configura o seu mundo 3D da mesma
forma que o exemplo anterior, com a diferença que o
professor pode acompanhar todo o processo de forma online; para este exemplo a aplicação exige um suporte de rede.
Na prática, o que acontece é que o sistema computacional do
aluno envia ao outro sistema as posições dos objetos
envolvidos na aplicação. Já o sistema do professor, ou seja, o
software ARToolKit dele, deverá carregar essas posições
para que os objetos sejam visualizados em seu computador.
A Figura 4 exemplifica esse processo.
completa, a prancheta aceita alterações do tipo eliminar ou
incluir novos objetos, assim como salvar as alterações
realizadas até o momento.
Fig. 4. Processo de acompanhamento on-line.
O professor também poderia acompanhar todo o processo
de configuração da prancheta em compania do aluno,
portanto, de forma presencial.
Uma terceira maneira de proceder com a aplicação seria
de forma colaborativa. Diferentes usuários poderiam
interagir entre si com a mesma aplicação de duas maneiras
distintas. Uma delas é que vários usuários utilizem a
aplicação simultaneamente em torno de um computador;
seria uma colaboração presencial entre os usuários.
Diferentes usuários também poderiam compartilhar uma
mesma aplicação num ambiente de rede, onde cada um
manipularia de alguma forma o ambiente virtual disponível
para todos através da rede.
4. APLICAÇÕES EDUCACIONAIS
4.1 Uso em Ciências
A Ciência é uma área intimamente relacionada com
experimentos, sons, cores e objetos. O livro interativo pode
representar uma ferramenta diferenciada no sentido de
agregar a esses objetos outros valores, como movimento
(animação), som, além da interação que o livro permite com
o usuário. O livro baseado em RA poderia se relacionar com
outras diversas áreas da Ciência, como astronomia,
arquitetura, engenharia, medicina, etc. Como mero exemplo,
um aluno de ciências que estivesse encarregado de ordenar
os planetas do sistema solar poderia extrair os objetos
virtuais (planetas) de um livro interativo e ordená-los na
prancheta virtual de acordo aos seus conhecimentos de
astronomia.
A Figura 5 ilustra uma aplicação que pode representar
outro exemplo de tarefa recomendado por um professor. É
um ambiente que encarrega o aluno de separar os animais
mamíferos das aves, os quais vão surgindo no livro virtual
conforme o aluno manipula sua aplicação.
Como se observa, a prancheta virtual apresenta uma
divisão, de maneira que os animais possam ser acomodados
conforme os conhecimentos do aluno. Mesmo depois de
Fig. 5. Separando diferentes objetos na prancheta virtual.
4.2 Uso em Literatura
Um dos grandes desafios dos professores dessa área é
fazer com que seus alunos leiam textos de forma eficaz, já
que não é raro verificar a situação do aluno que não consegue
compreender a história de um livro, embora tenha lido a obra
toda. Um livro baseado em RA poderia contar uma história
de forma diferente, principalmente para o público infantojuvenil. Como outro qualquer, o livro interativo estaria
constituído de textos e imagens, envolvendo personagens e
ambientes. Como tarefa, um professor poderia solicitar ao
aluno que extraia do livro alguns personagens, objetos ou
ambientes com características pré-definidas. Como a história
do livro interativo poderia ser contada mediante objetos 3D,
animações e som, é provável que o aluno se prenda mais na
leitura, agregando valores ao livro comum.
4.3 Uso na Matemática
Com ênfase nas fases de pré-alfabetização e alfabetização,
foi possível criar um ambiente virtual envolvendo a
matemática. O sistema, que está disponibilizado na internet
[3], compõe-se de alguns exemplos de operações aritméticas.
Usando adaptações realizadas no software ARToolKit, o
ambiente ganhou novas placas, às quais retornam as
respostas das operações aritméticas que são propostas pelo
sistema. Além do retorno visual, o aluno ainda pode contar
com o reforço auditivo, já que as operações e as respostas são
narradas por uma voz de fundo. A Figura 6 ilustra uma
operação aritmética básica envolvendo essa aplicação.
Após o professor mostrar a operação matemática (passo
2), os alunos poderão manifestar-se, cada um de acordo com
sua resposta. Na sequência, o professor aproxima a placa
(passo 3) para então obter a resposta correta que o sistema
fornece (passo 4), inclusive com feedback auditivo.
passam por constantes mudanças, sobretudo as relacionadas
com novas tendências tecnológicas que vão surgindo aos
poucos. Com a educação não é diferente, já que inúmeros
projetos multimídia vêm se realizando nessa área com o
propósito único de motivar e adequar a educação frente aos
novos conceitos. Assim, a RA, através do uso do livro
interativo, vem sendo proposta no sentido de contribuir para
novas tendências no processo educacional, quer seja para
educadores ou alunos.
REFERÊNCIAS BIBLIOGRÁFICAS
Fig. 6. Aprendizagem de aritmética com RA [3].
A aplicação descrita é bastante simples, embora possa
constituir numa interessante ferramenta de auxílio ao
professor. Outra aplicação mais complexa e também
envolvendo cálculos aritméticos está sendo desenvolvida em
paralelo com a anterior. A diferença é que nessa outra
aplicação os cálculos são realizados em tempo real de
execução, funcionando como uma calculadora. Dessa forma,
caso o aluno desejasse verificar outras combinações
matemáticas, ou seja, com outros números e operações,
poderia fazê-lo normalmente. O sistema deverá dispor de
uma quantidade maior de placas, sendo a maioria para
representar os números e as demais para as operações
aritméticas básicas.
5. CONCLUSÕES
Todos os setores que envolvem as atividades humanas
[1] Matias, Márcio; Heerman, Vivian; Santos, Neri.
Aspectos Cognitivos da Iteração Humano-Computador
Multimídia. In: Workshop sobre Fatores Humanos em
Sistemas Computacionais, 2000, Gramado. Anais. Porto
Alegre: Instituto de Informática da UFRGS, 2000. p. 2232.
[2] Wolf, Lilian A. La Educación en El Mundo de Hoy.
Disponível: www.eca.usp.br/eca/prof/moran/lilian.htm.
Acesso em 01.10.2007.
[3] Projetos de Realidade Aumentada. Home Page:
http://www.ckirner.com/claudio/?PROJETOS:SICARA:
Aritm%E9tica. Acesso em 04/10/2007.
[4] Zhou, Z. et al. “Interative Entertainment Systems Using
Tangible Cubes”, Australian Workshop on Interative
Entertainment. 2004. p. 19-22.
[5] ARToolkit Home Page,
http://www.hitl.washington.edu/artoolkit/download/
Acesso em 01/10/2007.
[6] A. Cardoso. Uma Arquitetura para Elaboração de
Experimentos Virtuais Interativos Suportados por
Realidade Virtual Não-imersiva. 2002. Tese (Doutorado
em Engenharia Elétrica), USP, São Paulo.
UTILIZANDO MAPAS CONCEITUAIS PARA A GERAÇÃO AUTOMÁTICA DE
AMBIENTES VIRTUAIS DE ENSINO/APRENDIZAGEM.
Guilherme Fernando de Oliveira1, Bruno Marques Panccioni1, Ildeberto Aparecido Rodello1, Jose Remo
Ferreira Brega2.
1
UNIVEM, Centro Universitário Eurípides de Marilia.
Av. Hygino Muzzi Filho, 529 – Marília/SP, Cep 17525-901 CP 2041
{guicomp, bmpnet, rodello}@univem.edu.br.
http://www.univem.edu.br/ppgcc/default.asp
2
UNESP – Universidade Estadual Paulista Júlio de Mesquita Filho.
Av. Luiz Edmundo Carrijo Coube, 14-01 – Bauru /SP, Cep 17033-360
remo@fc.unesp.br.
http://www2.fc.unesp.br/computacao
Resumo - Este artigo apresenta o projeto de um sistema
para geração automática de ambientes virtuais para
ensino/aprendizagem a partir da ferramenta cognitiva Mapa
Conceitual. Seu principal objetivo é auxiliar o professor no
processo de ensino/aprendizagem de forma que facilite e
estimule o estudante na busca do conhecimento,
contemplando a maioria das disciplinas de uma matriz
curricular. Objetiva também oferecer ao professor a
possibilidade da utilização de recursos de Realidade Virtual
sem que este os domine completamente.
Palavras-Chave – Realidade Virtual
Ferramentas Cognitivas, Mapas Conceituais.
e
Educação,
Abstract – This paper presents the design of a system for
virtual environment’s automatic generation for learning
process using a cognitive tool called Conceptual Map. It
aims at supporting the teacher in the learning process and
facilitates and stimulates the student in the search of the
knowledge, contemplating most of the disciplines of a
curriculum. It also intends to offer to the teacher the
possibility of Virtual Reality resources usage without
completely knowledge about them.
Keywords - Virtual Reality and Education, Cognitive Tools,
Conceptual Maps.
1 INTRODUÇÃO
Com a inserção dos computadores na Educação surgiu
uma nova forma de auxiliar o processo de
ensino/aprendizagem, gerando novos desafios técnicos e
pedagógicos em torno dessa nova ferramenta. Seu uso como
ferramenta de ensino apresenta uma nova forma de
representar o conhecimento, redimensionando os conceitos
aprendidos e buscando novas idéias e valores [3] [12].
É notável que o computador está cada vez mais sendo
utilizado como uma nova ferramenta de ensino/aprendizagem
e suas tecnologias fomentam a busca pela construção do
conhecimento de maneira fácil e agradável. A possibilidade
de seu uso em diversas áreas da Educação o torna
multidisciplinar, e o fato de possuir oportunidades de
experiências com grande poder de ilustração estimula a
participação dos estudantes.
A tendência da aprendizagem como tecnologia aponta
para as teorias construtivistas, em que o conhecimento não é
transmitido, mas sim construído pelo estudante. A construção
do conhecimento parte de um processo ativo e engajado e em
atividades cognitivas. As tecnologias como ferramentas
educacionais necessitam ter como função principal a de
ferramentas intelectuais, que permitam aos estudantes
construírem significados e representações próprias do mundo
[8].
As novas tecnologias, tais como: Inteligência Artificial
(IA), Internet e Realidade Virtual (RV), dentre outras,
permitem a interatividade, a participação, a intervenção, a
bidirecionalidade e a multidisciplicinaridade em Ambientes
Educacionais. A criação de um ambiente artificial para
aprendizagem pode ser um importante aliado para a forma
apropriada à aquisição do conhecimento [9]. Para essa
finalidade, a RV apresenta-se como uma alternativa
tecnológica com grande potencial, principalmente devido as
suas técnicas de interação, em que o aluno pode interagir
com o ambiente e ter respostas conforme a decisão tomada, e
seu poder ilustrativo, em que o ambiente é apresentado de
forma mais natural e intuitiva possível.
Nesse contexto, a motivação desse artigo é apresentar o
projeto de uma ferramenta computacional amparada em um
método pedagógico que possa auxiliar processo de
ensino/aprendizado e que, de certa forma, também ampare a
maioria das disciplinas propostas por uma determinada
matriz curricular.
A intenção é, a partir da inserção de um mapa conceitual,
ser possível a geração automática de um Ambiente Virtual
(AV) que se constitua em uma abstração desse método.
Auxiliado por uma biblioteca de recursos multimídia
interativos será possível, para cada conceito hierarquizado no
mapa, a inserção de artefatos para a sustentar a transmissão
do mesmo.
A Seção 2 apresenta conceitos básicos do uso da
Informática na Educação, focando RV e Mapas Conceituais.
A Seção 3 apresenta os fundamentos tecnológicos, citando as
linguagens de programação Java e XML. A Seção 4
esclarece sobre a estrutura do projeto, seus objetivos,
metodologia, andamento e resultados esperados. Finalmente,
na Seção 5 são expostas as conclusões do trabalho até o
momento.
2 CONCEITOS BÁSICOS
2.1 Informática e Educação
A Informática na Educação pode ser abordada das
seguintes formas: utilizando o computador como meio de
transmissão de conhecimento, mantendo a mesma prática
pedagógica em uma aula presencial, ou informatizando os
processos de ensino já existentes. Outra forma, ainda, é a sua
utilização
para
elaboração
de
ambientes
de
ensino/aprendizagem que enfatizam a construção do
conhecimento, de forma a propiciar a vivência de
experiências educacionais, do que, simplesmente, transmitir
o conhecimento adquirido [3].
A Informática e suas tecnologias, como a Internet, a
Inteligência Artificial, a RV, as mídias interativas, dentre
outras tecnologias centradas na informação, podem ser
consideradas como um novo tipo de alfabetização [13]. É
possível considerar como seu maior ganho, a capacidade de
simulação, em que mundos virtuais criados podem, por
exemplo, simular situações críticas sem nenhum risco. É
possível ainda, com os avanços tecnológicos, criar ambientes
de aprendizagem e treinamento para simular, visualizar e
interagir com um bom grau de realismo situações do mundo
real [11].
2.2 Realidade Virtual e Educação
A utilização da RV na Educação pode ser adotada por
diversas razões, dentre as quais é possível citar: motivação
do estudante na utilização de Ambientes Virtuais, poder de
ilustração, permitir análise de perto ou de longe, possuir
oportunidades para experiências, permitir a realização do
trabalho conforme o ritmo do estudante e possibilitar a
interação com o ambiente estimulando a participação do
estudante [1].
Nos diferentes tipos de ensino, desde o formal ao ensino à
distância, bem como o ensino de LIBRAS, os sistemas de
RV apresentam-se como uma nova forma de transmitir o
conhecimento adequando as informações e adaptando-se às
suas características ao tipo e nível de ensino, à faixa etária e
às condições físicas e psicológicas dos estudantes [10].
A RV visa expandir os processos normais de aprendizado,
além de disponibilizar um modelo de interface atraente que
motive o seu uso, encorajando o estudante a participar de um
processo criativo e imaginário, em que se aprenda facilmente
coisas que nos processos tradicionais poderia levar mais
tempo. A possibilidade de superação de dificuldades no
contexto do próprio erro transforma-se num elemento
positivo de reflexo pessoal e de aprendizagem, assumindo
um papel pedagógico de relevo [3] [10].
2.3
Mapas Conceituais
Mapa Conceitual é uma Ferramenta Cognitiva
elaborada por Novak baseada na Teoria da Aprendizagem
Significativa de Ausubel, utilizado para representar como o
conhecimento é armazenado na estrutura cognitiva de uma
pessoa por meio de diagramas de conceitos. Devido a sua
estrutura organizacional hierarquizada, procura facilitar o
aprendizado e a assimilação do conteúdo dado com a
estrutura cognitiva já existente [4] [7].
Ao estudante se oferece uma apresentação entre as partes
e todo o conceito, tendo a possibilidade de montar estratégias
para o gerenciamento da aprendizagem, tais como: verificar
erros conceituais, observar qual o conhecimento a “priori”
necessário para a compreensão da nova informação e
navegação conceitual, fazer anotações, resolver problemas,
planejar o estudo ou redações de relatórios, preparar-se para
avaliações e identificar a relação entre conteúdos.
Ao professor, por sua vez, apresenta-se como poderoso
auxiliar no ensino de um novo tópico, mantendo-o mais
atento aos conceitos-chave, reforçando a compreensão e
aprendizagem por parte dos estudantes, identificando
conceitos mal compreendidos ou que estão faltando, e avaliar
os estudantes, que podem ser examinados por meio da
própria construção de um Mapa Conceitual por eles [4] [7].
3 FUNDAMENTOS TECNOLÓGICOS
3.1 Java e API 3D
A linguagem de programação Java é uma linguagem
orientada a objetos e tem como principais características: a
portabilidade, a arquitetura neutra, alto-desempenho,
robustez, segurança, código interpretado, linguagem
dinâmica, além de uma grande quantidade de bibliotecas
disponíveis, chamadas APIs (Application Programming
Interfaces) [14].
A API Java 3D é própria para desenvolver aplicações
gráficas 3D complexas de maneira rápida e eficaz, possui
também um conjunto de características, dentre as quais: a
implementação em uma variedade de plataformas, a
possibilidade de carregar outros conteúdos 3D, como VRML,
OBJ e outras extensões 3D externas e a construção de
diversas formas, adicionando comportamento e interagindo
com o usuário. Além disso, ela pode ser integrada com outras
APIs (processamento de imagens, fontes, 2D, interfaces do
usuário, XML, dentre outras.), permitindo o desenvolvimento
de aplicações de alto nível com dispositivos de entrada e
saída múltiplos, além de resultar aplicações com uma boa
performance de randerização [5].
3.2 XML
O XML é uma linguagem de marcação de texto,
semelhante ao HTML que rapidamente ganha espaço na
WEB, sendo utilizada como padrão para troca de dados. A
grande facilidade do XML é a liberdade de criação das
próprias marcações pelo usuário. Essa liberdade permite a
utilização de marcações que façam sentido para outras
aplicações, sendo possível um único arquivo XML seja
utilizado por diversas aplicações, desde que seus nomes de
marcações concordem entre si [2].
As marcações criadas devem ser finalizadas seguindo uma
estrutura hierárquica; toda marcação criada deve ser
finalizada como rótulos em HTML; caso uma marcação não
seja finalizada, o XML não será corretamente lido pela
aplicação.
A Figura 1 apresenta a estrutura de um arquivo XML
utilizado para armazenar conteúdo de uma aplicação.
<client>
<name> Person </name>
<email> person@edu.br </email>
</client>
Sistema
Ambiente 2D do Professor
Ambiente 3D do estudante
Módulo entrada Mapa
Conceitual do professor
Aquisição dos conceitos
relativos ao Mapa Conceitual
por meio do AV
Módulo para gerar
dinamicamente o AV de
determinado conceito do Mapa
Conceitual
Verificação do acesso dos
recursos ainda disponíveis na
sala virtual
Fig. 1. Exemplo de estrutura XML.
3.3 XML e Java
A linguagem de programação Java disponibiliza um
conjunto de API´s nativas para parseamento do XML para
objetos Java e vice-versa. Devido à possibilidade de troca de
informações entre aplicações Java por meio do XML
apareceram várias outras API´s, dentre as quais é possível
destacar a XStream.
A XStream que é uma biblioteca para serializar objetos
para XML e tem como principais características: facilidade
de uso, alto desempenho, pouca utilização de memória, não
há duplicação de informação, integração com outras APIs
Java, mensagens de erro quando encontra XML mal
formatados, dentre outros [6].
Para se criar uma estrutura XML é necessário criar uma
classe de objetos para que possa ser feita a troca de
informações entre o Java e o XML.
4
ESTRUTURA DO PROJETO
Nessa seção é apresentada a descrição geral do projeto, a
fase em que o projeto se encontra e quais os resultados
esperados.
4.1 Descrição Geral
Como mencionado, o projeto utiliza uma ferramenta
cognitiva (mapas conceituais) como metodologia pedagógica
para construção do conhecimento e também técnicas de RV
de forma a estimular o interesse do estudante no conteúdo de
ensino e abstrair os conceitos da ferramenta cognitiva.
Conforme apresentado na Figura 2, o sistema terá um
ambiente de interface 2D e outro com interface 3D. O
ambiente 2D é aplicado à inserção do mapa conceitual e à
definição de quais recursos multimídia serão utilizados para
transmitir os conceitos de uma determinada etapa do
aprendizado. Essa interface será disponibilizada ao professor.
Na interface 3D será gerado um AV automaticamente a
partir do mapa conceitual e dos recursos disponibilizados
pela biblioteca de recursos multimídia.
A biblioteca será estruturada por meio da definição dos
recursos multimídia (textos, imagens, apresentação de slides,
som ou por vídeo) existentes em cada sala de aula virtual e
que são criados por meio da invocação de métodos. Cada
método estará associado a um recurso e por sua vez a uma
sala virtual. Esta definição é feita pelo professor no momento
em que se associam os recursos aos conceitos do mapa
conceitual na interface 2D da ferramenta.
Verificação dos conceitos ainda
disponíveis no Mapa Conceitual
Fig. 2. Módulos do sistema.
4.1.1 Andamento
O trabalho encontra-se em fase de desenvolvimento com a
implementação da interface e do parseamento dos dados
gerados na criação do Mapa Conceitual, armazenado-o em
um arquivo XML.
No ambiente 2D foi desenvolvida a interface disponível
ao professor para a inserção do Mapa Conceitual. A partir
dessa interface é possível a entrada de um Mapa Conceitual
já existente, salvo pela aplicação em um arquivo XML ou a
criação de um novo pelo professor. A Figura 3 apresenta a
tela principal dessa interface, em que o professor poderá
adicionar conceitos ao mapa e os recursos multimídia
relacionados a estes conceitos.
Fig. 3. Menu do ambiente 2D.
A aplicação conta com a utilização da API Xstream, que
auxilia a gravação e leitura de arquivos XML, desde que as
marcações XML e os objetos Java sejam idênticos.
A partir da geração de um arquivo XML poderá ser feita a
troca de dados entre a biblioteca de recursos multimídia e a
aplicação que irá gerar o ambiente 3D.
Através do ambiente 2D são selecionados os tipos de
arquivos que serão apresentados no ambiente. Eles são préestabelecidos pela biblioteca de recursos e compreendem:
arquivos de texto, apresentações de slides, apresentação de
clipes de vídeos e sons.
O ambiente virtual gerado é uma representação de uma
sala virtual. O sistema permite a utilização de ambientes
virtuais diferentes gerados a partir da escolha do estudante. O
primeiro ambiente a ser gerado é um ambiente apresentado
na Figura 4, constituído apenas de formas geométricas
básicas para apresentar os recursos multimídia quando os
mesmos forem clicados pelo estudante.
O sistema tem como pré-requisito serem clicados e vistos
todos os recursos disponibilizados na sala gerada. Quando os
mesmos forem visualizados o sistema habilitará os links de
ligação entre os conceitos do mapa, podendo o estudante,
através destes, acessar outras salas com os novos conceitos.
A partir da escolha do link de ligação uma nova sala é gerada
com o novo conceito, a sala atual é descarregada e seu
conceito atualizado como concluído. O estudante poderá
acessar novamente a sala de um conceito já visto, caso algum
link de ligação o leve a um conceito anteriormente acessado,
mas a visualização de seus recursos deixa de ser uma
obrigatoriedade, já que já foram vistos.
Fig. 4. Um exemplo do Ambiente 3D gerado.
4.1.2 Resultados Esperados
Espera-se com este projeto criar uma ferramenta capaz de
auxiliar o professor no processo de ensino/aprendizado e
estimular o estudante à aquisição do conhecimento e uma
biblioteca que disponibilize suporte de recursos multimídia a
aplicações 3D, que necessitem de auxílio multimídia para
apresentação de conteúdos educativos, informativos ou
ilustrativos.
Por fim, espera-se contribuir com as pesquisas na área de
RV, principalmente no tocante a sua utilização na Educação.
5 CONCLUSÕES E TRABALHOS FUTUROS
Apesar do trabalho estar em andamento, é possível
concluir que a utilização da RV aplicada à Educação tem
sido de grande apoio ao processo de ensino/aprendizado.
Aliada às ferramentas cognitivas aumenta a validação de sua
atuação no processo pedagógico e auxilia na elaboração de
um ambiente de aprendizagem mais agradável.
Uma melhor definição do ambiente virtual gerado, bem
como das abstrações para a representação dos recursos
multimídia, ainda se fazem necessárias. É ainda intuito dos
autores, testar o sistema com usuários em potencial, colhendo
sugestões a aplicando melhorias.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] D.G. Alves, T.D. Cabral, R.M.E.M. Costa, “Ambientes
Virtuais para Educação a Distância: Uma Estrutura de
Classificação e Análise de Casos”, Universidade do
Estado do Rio de Janeiro, Cadernos do IME, Série
Informática, Vol 14, Junho, 2003.
[2] E.
Armstrong,
“Working
with
XML”,
http://java.sun.com/webservices/jaxp/dist/1.1/docs/tutori
al/index.html, Sun Microsystems, Version 1.1, Update
35, Dec 2001, acesso em 30/08/07.
[3] F. Vendruscolo, J.A. Dias, G. Bernardi, M.L. Cassal,
“Escola TRI-Legal – Um Ambiente como Ferramenta de
Apoio ao Ensino Fundamental por meio de Jogos
Educacionais”. Colabora – A Revista Digital da CVARICESU, V. 3, N. 9, 2005.
[4] G.M. Mendonça-Junior, G.A.M. Gomes, “Realidade
Virtual na Educação: Um Estudo de Caso”, Semana
Univesitária da Universidade Estadual do Ceará, 2001,
Fortaleza. Anais da VI Semana Universitária da
Universidade Estadual do Ceará, 2001.
[5] H.A. Sowizral, D.R. Nadeau. “Introduction to
Programming with Java 3D”. Sun Microsystems, 1999.
[6] http://xstream.codehaus.org/, acessado em 20/08/07.
[7] L.F. Silva, A. Cardoso, E.B. Mendes, E.L. Junior. “A
Associação de Realidade Virtual e Ferramentas
Cognitivas Contribuindo para o Ensino de Física”, SBC
– Sociedade Brasileira de Computação, biblioteca
digital, Publicação, [SVR] VIII: 2006 Mai. 2-5: Belém
(PA), acesso em 10/12/06.
[8] L.M. Passerino. “Informática na Educação Infantil:
Perspectivas e Possibilidades”. In: ROMAN, Eurilda
Dias; STEYER, Vivian Edite. (Org.). A Criança de 0 a 6
anos e a Educação Infantil: Um retrato multifacetado.
Canoas, p. 169-181, 2001.
[9] M. Braga. “Realidade Virtual e Educação”. Revista de
Biologia e Ciências da Terra, ISSN 1519-5228, Volume
1, Número 1, 2001.
[10] M.L.A.S.M. Camacho. “Realidade Virtual e Educação”.
Costa da Capariga, Portugal, Convento dos Capuchos, I
Simpósio Investigação e Desenvolvimento de Software
Educativo, 1996.
[11] R.D. Lopes. ”As Mídias e os Meios Eletrônicos na
Educação”. Politécnica da Universidade de São Paulo,
NATE,
LSI,
DESE,
Disponível
em:
www.lsi.usp.br/interativos, acesso em 2007.
[12] R.M.E.M Costa, L.A.V. Carvalho. “A Realidade Virtual
como Instrumento de Inclusão Social dos Portadores de
Deficiências Neuropsiquiátricas”. XIV Simpósio
Brasileiro de Informática na Educação, NCE, IM/UFRJ,
2003.
[13] S.H. Montes, M.F.C. Silva, L.S. Leite. “A Sala de Aula
como Ambiência de diferentes Leituras”. Revista da
FAEEBA, v. 1, n. 1 2 - UNEB, 1992.
[14] Sun Microsystems.
“The Java Language:
An
Overview”.
http://java.sun.com/docs/overviews/java/java-overview1.html, acesso em 12/09/2007.
VISUALIZAÇÃO DE INFORMAÇÕES EM AMBIENTES DE REALIDADE
VIRTUAL E AUMENTADA
Ezequiel Roberto Zorzal1, Luciano Ferreira Silva1, João Paulo Vieira Bonifácio2, Alexandre Cardoso1,
Claudio Kirner3, Edgard Lamounier Júnior1
1
Programa de Pós Graduação em Engenharia Elétrica - Universidade Federal de Uberlândia (UFU) – CEP 38400-902
Uberlândia – MG – Brasil
2
Programa de Graduação em Engenharia Elétrica - Universidade Federal de Uberlândia (UFU) – CEP 38400-902
Uberlândia – MG – Brasil
3
Programa de Pós Graduação em Ciência da Computação - Universidade Metodista de Piracicaba (UNIMEP) - 13400-911
Piracicaba – SP – Brasil
ezorzal@gmail.com, luciano@mat.ufu.br, jpaulo185@hotmail.com, alexandre@ufu.br, ckirner@unimep.br, lamounier@ufu.br
Resumo - Este artigo apresenta um sistema para
visualização de informações em ambiente de Realidade
Virtual e Aumentada, denominado InfoVis-VAR (Information
Visualization with Virtual and Augmented Reality). Este
sistema oferece suporte a diferentes tipos de dados e
possibilita a personalização do seu modo de representação.
No protótipo desenvolvido, foi restringida apenas a maneira
com que os dados a serem visualizados são organizados, no
entanto, não é apresentada nenhuma restrição quanto à
natureza destes dados. Com intuito de validar o software, foi
aplicado um estudo de caso na área de Ciências Agrárias.
Palavras-Chave – Realidade Aumentada, Realidade Virtual,
Representação de Dados, Visualização de Informações.
Abstract – This paper presents a system for visualization
of information in environment of Virtual and Augmented
Reality, called InfoVis-VAR (Information Visualization with
Virtual and Augmented Reality). This system offers to
support the different types of data and makes possible the
personalization in its way of representation. In the developed
archetype, the way was restricted only with that the data to
be visualized are organized, however, no restriction how
much to the nature of these data is not presented. With
intention to validate software, a study of case in the area of
Agrarian Sciences was applied.
Keywords – Augmented Reality, Data Representation,
Information Visualization, Virtual Reality.
1. INTRODUÇÃO
A sobrecarga de informações dificulta o processo de
análise, compreensão e utilização de dados. Por exemplo, é
plausível ressaltar que tomar uma decisão correta, em
qualquer área do conhecimento, com uma enorme quantidade
de dados e pouco tempo, quase sempre é uma tarefa difícil de
realizar. O computador pode, em poucos segundos, recuperar
informações que um ser humano demoraria muito tempo para
recobrar. Contudo, muitas destas informações são
irrelevantes para o usuário, ou as informações consideradas
úteis podem simplesmente ser perdidas, devido ao usuário
não conhecer o relacionamento entre os dados. Fatos como
estes motivaram diversas áreas de estudo a pesquisarem
novos paradigmas para melhorar a representação destas
informações.
Uma abordagem advinda destas pesquisas seria a
aplicação de técnicas de Visualização de Informações. Estas
técnicas estudam maneiras de transformar dados abstratos em
imagens reais, de forma a facilitar o seu entendimento e/ou
ajudar na descoberta de novas informações contidas nestes
dados [1].
Neste contexto, a área de Visualização de Informação se
apresenta como um campo de estudo de grande utilidade,
uma vez que faz uso de técnicas que facilitam o
entendimento de informações a partir de representações
visuais de dados.
Estas representações podem ser distribuídas em três
classes, considerando a dimensão do espaço onde os
elementos geométricos utilizados estejam situados:
unidimensional, bidimensional ou tridimensional [2].
A visualização tridimensional de informações pode ser
realizada por meio de ambientes de Realidade Virtual e
Aumentada. Esta forma de visualização pode facilitar a
análise e a compreensão dos dados, já que os mesmos podem
ser dispostos de maneira intuitiva e interativa.
Normalmente, os sistemas para visualização de
informações são desenvolvidos de modo exclusivo, ou seja,
suas representações gráficas são adaptadas apenas para um
determinado conjunto de dados. Este método de
implementação acaba por prejudicar sua portabilidade e
dificilmente serão aproveitados para outros tipos de dados.
Com base nisto, gerou-se a necessidade de desenvolver
sistemas flexíveis para construção de visualizações, de forma
a garantir a independência em relação aos dados que serão
visualizados.
Uma das características importantes que um sistema de
visualização deve possuir é a organização da informação, de
modo que, a partir dos dados fornecidos pelo usuário, seja
gerada automaticamente uma visualização e uma interface
para fazer a sua exploração [3]. Além disso, as seguintes
perspectivas motivaram esta pesquisa:
•
Um sistema de visualização flexível não se limita a uma
tarefa específica ou a representação de apenas um tipo
específico de dados.
•
É muito importante desenvolver sistemas de
visualizações que garantem a configuração do
mapeamento de informações, de maneira que o usuário
possa criar uma metáfora visual que permita a
compreensão de um determinado conjunto de dados.
•
A Realidade Aumentada permite a fácil visualização e
manipulação do objeto de estudos, reproduzindo os
dados complexos sob a forma de objetos e textos
tridimensionais, aumentando a capacidade de percepção
do usuário, que passa a ser estimulado pela possibilidade
de interação natural com a interface.
•
A Realidade Virtual tem fornecido novos meios para
melhorar a interface e a interação dos usuários com
sistemas computacionais. Tem permitido a imersão e a
interação dos usuários com ambientes sintéticos gerados
por computador, por meio da exploração dos sentidos
fundamentais do corpo humano, como a visão, a audição
e o tato [4].
•
A possibilidade de interação entre imagens reais e
virtuais que ocorre por meio da Realidade Aumentada
pode oferecer ao usuário maiores informações sensitivas,
facilitando a associação e a reflexão sobre a situação. 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 e oferecendo condições para a
imersão no ambiente criado [5].
•
Associando técnicas de Realidade Aumentada com
visualização de informações, o usuário tem a
possibilidade de combinar os modelos de representações
virtuais ao ambiente real que originou estes dados. Esta
associação pode contribuir com o processo de
entendimento das informações resgatadas, uma vez que
o usuário pode acessar informações virtuais no seu
ambiente de domínio.
Este projeto objetivou investigar técnicas computacionais
com o intuito de desenvolver um sistema flexível de
visualização de informações em ambiente de Realidade
Virtual
e
Aumentada
denominado
InfoVis-VAR
(Information Visualization with Virtual and Augmented
Reality).
A Seção 2 aborda algumas aplicações de visualização de
informações em ambiente de Realidade Virtual e Aumentada.
A Seção 3 apresenta o sistema InfoVis-VAR. A Seção 4
disserta sobre o estudo de caso aplicado na área de Ciências
Agrárias. Finalmente, na Seção 5, são apresentadas as
conclusões do trabalho.
2. APLICAÇÕES DA VISUALIZAÇÃO DE
INFORMAÇÃO
Para pesquisar softwares de visualização de informações
baseados em sistemas de Realidade Virtual e Aumentada
foram analisados alguns trabalhos existentes em relação às
suas funcionalidades, ao tipo de interações permissíveis e a
ergonomia da interface. Os softwares citados abaixo são
exemplos de trabalhos de pesquisa que utilizam técnicas do
contexto aqui enfocado.
Ferramenta Colaborativa para Visualização Tridimensional
de Dados [6]: tem como função criar um ambiente, em que
os usuários possam compartilhar a visualização e trocar
informações pela Web. A visualização dos dados é feita em
um ambiente virtual tridimensional, no qual o usuário pode
interagir com as representações por meio de zoom, rotação,
translação, etc.
InfoVis (Information Visualizer) [7]: é uma ferramenta
construída para visualizar informações, em um ambiente
virtual, do Museu de Cerqueira César situado na cidade de
São Carlos, Brasil.
3D Active Char [8]: desenvolvido pela First Information
Systems, é um visualizador tridimensional de informações,
no qual os dados são obtidos por meio de tabelas exportadas
de um banco de dados.
Visualização de dados multidimensionais usando Realidade
Aumentada [9]: o sistema foi construído utilizando a
biblioteca ARToolKit [10] como suporte, nesta aplicação o
usuário pode interagir de forma natural e direta com a
representação, manipulando filtros e objetos tridimensionais.
Cada objeto visualizado possui características específicas de
cor, forma e tamanho, que representam diretamente valores
dos atributos da base.
DataVis-AR (Data Visualization Virtual Environment Using
Augmented Reality) [11]: é um sistema interativo de
visualização de dados com Realidade Aumentada, que utiliza
como ferramenta de apoio o software ARToolKit. O
DataVis-AR permite a análise de diferentes tipos de dados
por meio de representações gráficas.
Meta3D++ [12]: é uma ferramenta de visualização de dados
multidimensionais em ambiente de Realidade Aumentada. A
ferramenta foi idealizada para que o usuário utilize em
conjunto técnicas estatísticas e de Visualização de
Informação, de uma forma integrada, agilizando o processo
de criação de uma visualização mais efetiva.
3. INFOVIS-VAR
O InfoVis-VAR (Information Visualization with Virtual
and Augmented Reality) é um sistema desenvolvido para
visualização de informações em ambientes de Realidade
Virtual e Aumentada. Ele oferece suporte a diferentes tipos
de dados e/ou informações e possibilita de forma flexível, a
partir de diferentes maneiras de tratar o mesmo dado,
gerando diferentes informações, a personalização do seu
modo de representação.
No protótipo construído foi restringida apenas a maneira
com que as informações, a serem visualizadas, são
organizadas no sistema. Para a elaboração do módulo de
recuperação da metainformação foi preciso desenvolver um
modelo relacional que reflita a hierarquia da informação a ser
armazenada. Para isso, foi desenvolvido um modelo de
entrada de dados no sistema com estrutura tabular, de forma
que os dados possam ser recuperados pelo software e facilitar
o tratamento do mesmo. No entanto, não é apresentada
nenhuma restrição quanto à natureza destes dados.
Por ser abrangente, o sistema garante a independência em
relação aos dados a serem visualizados, isto é, o sistema
permite a importação de dados com diferentes proveniências,
desde que seja mantido o modelo padrão da entrada de dados
do software. Deste modo, a interface se adapta
dinamicamente de acordo com a metainformação incluída.
Com relação à interação do sistema, é possível controlar o
volume de informações a serem representadas, configurar o
mapeamento das informações e definir a ordem de
representações a serem visualizadas no ambiente misturado e
virtual. O modelo engloba ainda mecanismos de filtragem e
aborda múltiplas representações.
A arquitetura desenvolvida para o sistema InforVis-VAR
é apresentada na Fig. 1.
4. ESTUDO DE CASO - REPRESENTAÇÃO DE
ANÁLISE DE SOLOS
Fig. 1. Arquitetura do Sistema InfoVis-VAR
Os módulos desenvolvidos são apresentados a seguir:
1. GUI: Este módulo permite ao usuário visualizar
graficamente e de modo interativo o resultado de suas ações
no sistema. O usuário, ao realizar uma ação, entrada de
dados, por exemplo, recebe da GUI a saída de informações,
através de atualizações, proporcionando uma maior sensação
de interação com o sistema. A GUI permite ainda, o acesso à
inserção dos dados, a configuração do sistema e a interação
com o Ambiente Virtual.
2. Inserção de Dados: Após inserir os dados abstratos em
estrutura tabular ao software, este módulo fica responsável
por tratar os mesmos, armazená-los a uma base de dados e
disponibilizar a metainformação para o sistema.
3. Configurador: Este módulo permite a configuração do
sistema, de modo a tornar o sistema mais flexível. Ele se
subdivide em 3 partes:
a. Gerenciamento de Funções: permite o cadastro de
funções matemáticas. Estas funções têm como objetivo
calcular novos valores específicos com base nos dados précadastrados.
b. Catalogador de Objetos Virtuais: permite o cadastro de
objetos virtuais que servem como complemento e
personalização das visualizações.
c. Associador de componentes com dados (Mapeamento):
Possibilita o relacionamento dos dados com as
representações visuais cadastradas no sistema. Este módulo
também oferece a possibilidade de escolha das técnicas a
serem utilizadas nas representações.
4. Modelos Virtuais Representativos: Este módulo contém
o conjunto de objetos virtuais que representam os dados
processados, de acordo com a escolha do usuário.
5. Misturador: Neste módulo o sistema utiliza o software
ARToolKit para fazer a mistura dos ambientes. O sistema
configura o ARToolKit de forma que as representações
virtuais sejam visualizadas no ambiente de Realidade
Aumentada.
6. Ambiente Virtual: Este módulo apresenta os objetos
virtuais em um ambiente de Realidade Virtual. Neste
ambiente o usuário pode interagir com os dados por meio de
dispositivos convencionais, tais como: mouse e teclado.
7. Ambiente Misturado: Este módulo apresenta os objetos
virtuais em um ambiente de Realidade Aumentada. Neste
ambiente o usuário interage com os dados por meio de placas
com marcas fiduciais.
Com intuito de apresentar o modelo implementado,
desenvolveu-se um estudo de caso relativo a visualizações de
dados de solos (Ciências Agrárias), com base nos resultados
dos laudos oferecidos pelo Laboratório de Análises de Solos
da Universidade Federal de Uberlândia.
Foram adquiridos dez laudos com os respectivos
resultados das análises de solos. Em todos os laudos estão
contidos os resultados da análise química e de textura do
solo, e os resultados das relações entre bases, conforme
apresentado no exemplo TABELA I.
TABELA I
Resultado de uma análise do solo
Resultados da Análises Química:
pH Água
P meh-l
P rem.
6.0
0.2
ns
Ca2+
Mg2+
Al3+
1.2
0.5
0.0
P resina
ns
H+Al
2.5
Relação entre bases:
Ca/Mg
Ca/K
2.4
10
Ca+Mg/K
14
Mg/K
4.2
Relação entre bases e T (%):
Ca/T
Mg/T
K/T
28
12
3
B
0.13
Cu
1.3
Fé
21
H+Al/T
58
Mn
5.3
K+
45.0
SB
1.8
S-So-4
1
t
1.8
Ca+Mg/T
39
T
4.3
V
42
m
0
M.O.
2.0
Ca+Mg+K/T
42
Zn
0.3
Após os dados serem inseridos no sistema, foi preciso
realizar as configurações necessárias para representar as
visualizações. Estas configurações foram feitas de acordo
com os padrões de recomendações para o uso de corretivos e
fertilizantes no estado de Minas Gerais [13], aplicados à
cultura do feijão.
A primeira configuração realizada foi efetuar o cadastro
de expressões matemáticas, que têm como objetivo calcular
novos valores específicos com base nos dados pré-inseridos.
A Fig. 2 apresenta a interface do sistema, referente à tela de
cadastros de expressões.
Fig. 2. Tela para cadastro de expressões
Após a inserção das expressões, suas variáveis deverão
relacionar-se com os valores determinados pelos dados
contidos no sistema. Ou seja, para cada variável presente na
função cadastrada, deverá existir um dado correspondente.
Em seguida, deve-se informar a técnica utilizada para a
representação das informações e mapear os dados requeridos
com os objetos virtuais que serão utilizados para representar
a visualização. O sistema, inicialmente, já possui uma
biblioteca de objetos virtuais interna, no entanto é possível
adicionar novos objetos com a extensão .wrl ao
procedimento de mapeamento. A Fig. 3 apresenta a tela para
mapeamento das informações.
usuário poderia passear pelo campo e visualizar os modelos
representativos no ambiente real que originou estes dados, ou
até mesmo no laboratório, ao focalizar uma determinada
amostra, o usuário poderia visualizar, sobreposto a ela, os
nutrientes que as compõe.
REFERÊNCIAS BIBLIOGRÁFICAS
Fig. 3. Tela para o mapeamento das informações.
Ao término das configurações, o sistema apresenta os
modelos virtuais representativos em um ambiente de
Realidade Virtual ou Aumentada. A Fig. 4 apresenta alguns
dos possíveis modelos virtuais que podem ser utilizados para
representar o gráfico do fertigrama do solo, por exemplo.
Fig. 4. Modelos virtuais representativos do fertigrama do solo.
É possível, também, realizar configurações nas
representações virtuais a fim de aumentar a capacidade de
interpretação do usuário. As representações das amostras de
solo, por exemplo, podem ser configuradas sobre um modelo
virtual do terreno em que foram retiradas, de maneira que os
nutrientes a serem representados no solo ficam dispostos
sobre o mesmo.
5.
CONCLUSÕES
Este artigo apresentou uma ferramenta de apoio para
visualização de informações em ambiente virtual e
misturado.
A Realidade Virtual mostrou-se como uma ferramenta de
grande potencial, particularmente, para visualizações que
apresentam um grande volume de dados, pois, ela não impõe
limites de espaço para a representação dos mesmos. Esta
tecnologia permite a fácil visualização e manipulação do
objeto de estudos, reproduzindo os dados complexos sob a
forma de objetos e textos tridimensionais, aumentando a
capacidade de percepção do usuário. A Realidade
Aumentada contribui significativamente para uma interação
fácil e natural com o ambiente visualizado. Esta tecnologia
permite a sobreposição de imagens capturadas por câmeras
de vídeos com imagens geradas por computadores,
facilitando a analise e interação com os gráficos. No estudo
de caso aplicado, utilizando um capacete, por exemplo, o
[1] Do Nascimento, H. A. D. Visualização de Informações Uma Abordagem Prática. XXV Congresso da Sociedade
Brasileira de Computação - XXIV JAI. UNISINOS - São
Leopoldo - RS 2005.
[2] Freitas, C. M. D. S., et al. (2001) Introdução à
Visualização de Informações. Revista de Informática
Teórica e Aplicada, v.2, p.143-158.
[3] Carmo, M. B. D. P. D. e J. M. G. D. Cunha.
Visualização de Informação Modelo Integrado para o
Tratamento de Filtragem e Múltiplas Representações.
Departamento de Informática, Faculdade de Ciências da
Universidade de Lisboa, Lisboa, Portugal, 2002.
[4] Guimarães, M. P.; (2004) Um ambiente para o
desenvolvimento de aplicações de realidade virtual
baseadas em aglomerados gráficos. Tese de Doutorado,
Escola Politécnica da Universidade de São Paulo, São
Paulo, SP, 2004.
[5] Vicentini, W. B., et al. (2006) REALIDADE
AUMENTADA: interface computacional de geração de
ambientes virtuais de aprendizagem para portadores de
necessidades especiais (surdos e mudos). XIV SNBU Seminário Nacional de Bibliotecas Universitárias.
Salvador - BA.
[6] Sousa Junior, R. D., Meiguins B. S. e Ribeiro Filho M.
(2006) Ferramenta Colaborativa para Visualização
Tridimensional de Dados. VIII Symposium on Virtual
Reality. Belém - PA.
[7] Kirner T. G., Martins V. F. (2000) Development of an
information visualization tool using virtual reality.
Symposium on Applied Computing. Proceedings of the
2000 ACM symposium on Applied computing. V2, 604606p, Italy.
[8] Systems, F. I. 3D ACTIVE CHART. Disponível em:
http://www.rinvoice.com/activechart.htm. Acesso em
28/02/2004.
[9] Meiguins, B. S., et al. (2006) Multidimensional
Information Visualization Using Augmented Reality.
VIII Symposium on Virtual Reality. Belém - PA.
[10] Kato, H.; Billinghurst. M.; Poupyrev, I. (2000)
ARToolKit version 2.33 Manual, Novembro.
[11] Kirner, C. e T. G. Kirner. A Data Visualization Virtual
Environment Supported by Augmented Reality. 2006
IEEE International Conference on Systems, Man, and
Cybernetics. Taipei: Proceedings of 2006 IEEE
International Conference on Systems, Man, and
Cybernetics, 2006. 1-6 p.
[12] Bueno, M. A. S., et al. Meta 3D++-Visualização de
Informações em Realidade Aumentada. II Workshop
sobre Realidade Aumentada. Unimep, Piracicaba, SP
2005.
[13] CFSEMG. Recomendações para o uso de corretivos e
fertilizantes em Minas Gerais - 5ª Aproximação. Viçosa,
1999.
VISUALIZAÇÃO DE METADADOS DE SENSORES UTILIZANDO REALIDADE
AUMENTADA EM TELEFONES CELULARES
Juan Carlos Zuñiga, Sergio Takeo Kofuji
Programa de Pós-Graduação em Engenharia Elétrica - Escola Politécnica da USP
Av. Prof. Luciano Gualberto 158, CEP 05508-900, São Paulo, SP, Brasil
(jcz30, kofuji)@pad.lsi.usp.br
Resumo - O objetivo deste trabalho é apresentar a
visualização de metadados (dados relevantes para o usuário)
obtidos de uma Rede de Sensores Sem Fio (RSSF) utilizando
realidade aumentada em telefones celulares. Os metadados
estão estruturados em um formato RDF (Resource
Description Framework) para enriquecer as informações e
dar suporte aos modelos semânticos de dados.
Palavras-Chave – RDF, Realidade Aumentada, RSSF,
Telefone Celular.
Abstract – The objective of this work is show metadata
(user's context data) using augmented reality techniques in
mobile phones. The data is collected using Wireless Sensor
Networks (WSN) and the metadata is structured in RDF
(Resource Description Framework) format for richest the
information and support semantic data models.
1
Keywords –Augmented Reality, Mobile Phones, RDF, WSN.
1. INTRODUÇÃO
Nos últimos anos, os telefones celulares estão sendo
desenvolvidos da mesma forma que os computadores
pessoais portáteis, com câmeras integradas, processadores
mais potentes, telas de cores sensíveis ao tato, com
mecanismos para comunicação wireless (Bluetooth, ZigBee,
Wi-Fi, etc.), localizador GPS, sensores integrados (
acelerômetros, magnetômetros, etc.), unidades de
armazenagem de grande capacidade e removíveis (Memory
Card) e mesmo com processadores gráficos 3D dedicados
[1]. Além disso, a possibilidade de desenvolver aplicações
em linguagens de programação como Java, C++ e Python,
proporciona uma enorme aplicação prática. Assim, o telefone
celular transforma-se numa nova e atraente plataforma para
sistemas de Realidade Aumentada (RA) [2], por
disponibilizar informações e principalmente por permitir o
usuário obter conhecimento do ambiente em diversos
momentos, obtendo informações que seus sentidos não
percebem e apresentando estas informações em forma de
RA.
O uso de dispositivos do tipo handheld como o telefone
celular, na implementação de um sistema de RA é
denominado Handheld Augmented Reality ou simplesmente
Handheld AR [3]. Aplicações baseadas em Handheld AR se
desenvolveram e evoluíram nos últimos anos em muitas
áreas de aplicação como: sistemas de informação [4],
1
Fenômenos: Fato, aspecto ou ocorrência de interesse científico passível de
observação e suscetível de descrição, explicação e medição.
navegação [5] e turismo [6]. Estas aplicações utilizam uma
câmera integrada no dispositivo e marcadores inseridos no
ambiente, como elementos na captura e ingresso de dados
para o sistema de RA, respectivamente. Outros tipos de
aplicações mais recentes utilizam sensores como RFID tags
[7], Rede de Sensores Sem Fio (RSSF) [8], entre outros tipos
de sensores como fontes de entrada de dados junto ao uso da
câmera e dos marcadores. Estes tipos de aplicações utilizam
os telefones celulares como interfaces que permitem os
usuários visualizarem informações que não lhes são
perceptíveis, como dados de temperatura e umidade, entre
outros.
Portanto, aplicações que combinam técnicas de RA, dados
obtidos por sensores e dispositivos handheld como os
telefones celulares, apresentam características interessantes
para áreas de aplicação como sensoriamento, monitoramento
e interação em ambientes inteligentes e cientes ao contexto.
Entretanto, alguns desafios aparecem ao se pensar em
aplicações deste tipo:
• Como adquirir e utilizar eficientemente as informações
dos sensores, levando em consideração as capacidades
de processamento e taxas de transmissão de dados?
• Como armazenar e gerenciar as informações adquiridas
dos sensores contornando a limitação de memória dos
dispositivos móveis?
O uso de técnicas da web semântica em RSSF é
apresentado em [9] e [10]. Nestes trabalhos apresentam-se
aplicações que tratam o armazenamento e gerenciamento dos
dados gerados pelas RSSF em cenários do mundo real, como
no controle de tráfego e ambientes industriais. Em [11] é
introduzido o conceito de sensor services, que são serviços
de informação gerados pelos dados adquiridos na RSSF.
Porém, todos estes trabalhos não implementam o uso de
dispositivos móveis nas suas arquiteturas. Além disso, em [8]
apresenta-se o primeiro trabalho que mistura dados de RSSF
e técnicas de RA para a visualização destes dados. Porém, os
processos de aquisição de dados são primitivos, adquirindo
apenas os valores crus (raw data) que os sensores abstraem
dos fenômenos1 (por exemplo: temperatura, umidade, etc.) a
serem avaliados [12].
Baseados nestas técnicas da web semântica para RSSF e
aplicações do tipo Handheld AR, nós propomos um modelo
preliminar para adquirir e modelar eficientemente os dados
gerados pelos sensores como recursos em arquivos RDF
(Resource Description Framework) [13] para enriquecer
estas informações como metadados em função do contexto
em que se desenvolvem as aplicações. O interesse em
visualizar os dados obtidos pelos sensores e metadados com
técnicas de RA justifica-se pelas potencialidades do sistema
perceptual visual humano [8].
2. MODELAGEM E AQUISIÇÃO DE DADOS
2.1. RDF (Resource Description Framework)
Tecnicamente RDF não é uma linguagem, mas sim um
framework que modela os dados como descrições de recursos
com um grau semântico através da adoção de metadados
[14]. RDF faz uso da linguagem de marcação XML
(Extensible Markup Language) para expressar seu modelo de
dados, permitindo a interoperabilidade das informações,
sendo o RDF e XML complementares.
O modelo de dados RDF também oferece mecanismos
que possibilitam a criação de coleções de recursos ou
valores, dando suporte para situações onde o valor de uma
propriedade é um conjunto de valores ou de recursos. Mesmo
que as propriedades do RDF podem representar relações
entre recursos, ainda assim, RDF não fornece nenhum
mecanismo para descrever estas propriedades, nem provê
qualquer mecanismo para descrever as relações entre estas
propriedades e outros recursos. Isso é o papel do RDF
Schema.
RDF Schema é uma linguagem de representação de
conhecimento, provendo elementos básicos para a descrição
de vocabulários RDF, o que permite definir a semântica de
um domínio de aplicação específico. Isto é, um RDF Schema
documenta vocabulários, definições e restrições para um
conjunto de propriedades com a semântica correspondente
para um recurso específico [15].
Os RDF Schemas são descritos por classes. Uma classe é
algum recurso que tem uma propriedade rdf:type cujo valor é
o recurso rdfs:Class. Os recursos que pertencem a uma
mesma classe são chamados de suas instâncias. Então, toda
classe é um recurso e está identificada através de um URI
(Uniform Resource Identifier). As instâncias são indicadas
através da propriedade rdf:type. [15]. Classes RDF podem
ser usadas para representar quase todas as coisas, tais como
páginas web, pessoas ou conceitos abstratos. Em nosso caso,
representarão os sensores e os dados coletados.
2.2. Implementação da Modelagem
O objetivo do modelo proposto é criar um mecanismo que
permita descrever os sensores e os dados adquiridos pelos
nós sensores como recursos em arquivos RDF de forma
automática. Estes recursos são enriquecidos com
informações (metadados) relevantes em função do contexto
no qual se desenvolve a aplicação.
A escolha de utilizar RDF e RDF Schemas em nosso
modelo justifica-se pelo fato de que o RDF permite um
entendimento semântico a nível de máquina (computador)
[16] o que é compatível com aplicações baseadas em técnicas
da web semântica. Outro fato é que o RDF permite descrever
metadados dos recursos que estão sendo modelados [17]. Por
exemplo: somente um dado sobre a temperatura atual do
ambiente gera uma informação útil, mas se conhecemos a
origem do dado, a relevância deste dado para o sistema e
outras relações sobre este único dado. Então podemos
enriquecer este dado, gerando novas informações muito mais
úteis e relevantes. A estrutura dos RDF Schemas modela
propriedades, relações e valores para os recursos a serem
descritos (nós sensores, dados, etc.) o que permite
implementar restrições evitando diversas interpretações de
uma propriedade ou relação para distintos recursos, garantido
uma única interpretação semântica [16]
Portanto, em nosso modelo são projetados RDF Schemas
ou vocabulários que descrevem e caracterizam os nós
sensores da RSSF. Estes vocabulários são implementados
como arquivos RDF, baseados numa estrutura de RDF
Schema. Posteriormente, os vocabulários são armazenados
na memória do telefone celular para serem manipulados pela
aplicação do tipo Handheld AR, instalada no mesmo telefone
celular e que nos permite decodificar e criar automaticamente
os arquivos RDF referentes aos dados obtidos pelos nós
sensores. Este processo é chamado de RDF Tagging
Application. A modelagem dos dados adquiridos pelos nós
sensores num formato RDF, garante sua interoperabilidade
com outros sistemas como ontologias, serviços web
semânticos, entre outras, por estar expressada em uma
sintaxe XML.
2.3. Sensor Schema
Para projetar nosso Sensor Schema, primeiro foi feito um
estudo e análise do SensorML [18]. SensorML é um modelo
padrão baseado na sintaxe XML que descreve sensores e
qualquer processo de medições feito por estes sensores. Os
processos descritos em SensorML definem suas variáveis de
entrada, de saída, parâmetros, métodos e metadados
relevantes. SensorML modela os sensores como processos
que convertem fenômenos reais em dados. Porém, SensorML
não provê modelagem para os dados obtidos pelos sensores,
que é uma das principais contribuições do presente trabalho.
Nosso Sensor Schema provê um modelo para descrever os
sensores, gerando uma descrição das capacidades do nó
sensor e está composto pelas classes:
• HardwarePlatform: Caracteriza as capacidades de
hardware do nó sensor, como por exemplo: memória,
processador, etc.
• SoftwarePlatform: Caracteriza as capacidades de software
do nó sensor, como por exemplo: sistema operacional,
aplicações instaladas, etc.
• NetworkCharacteristics: Caracteriza as capacidades de
comunicações do nó sensor, isto é, o sistema de radio, a
antena, etc.
A caracterização destas informações pode ser relevante
para múltiplos casos, como por exemplo: processos de
manutenção e reparação preventiva dos sensores ou dos
elementos físicos e ambientes que os sensores monitoram.
2.4. Sensor Data Schema
Para automatizar o processo de aquisição de dados, foi
desenvolvido o Sensor Data Schema que na figura 1 é
representado pelo RDF Tagging Application que utiliza os
demais Schemas para formatar os dados crus que são
recebidos dos nós sensores e criam arquivos RDF para estes
dados. Para isto, os Schemas são modelados em classes Java
utilizando uma ferramenta chamada Jena [19] que permite
automatizar o processo de aquisição e modelagem dos dados
em arquivos RDF. Esta modelagem faz-se em função de um
algoritmo determinado que é chamado de Process Model.
Fig. 1. Processo de aquisição e modelagem de dados em arquivos
RDF.
2.5. Process Model
Os algoritmos que modelam os dados em tempo real são
chamados de Process Model. Um Process Model é uma
estrutura lógica de programa que encapsula o tipo de
aplicação instalada nos sensores e os tipos de dados que são
obtidos. Por exemplo, se a aplicação instalada captura
temperatura, o Sensor Schema informa o tipo de dados que
são capturados e determina a forma que os dados serão
formatados e estruturados no arquivo RDF, com essas
informações o sistema utiliza um Process Model
determinado para calcular os valores da temperatura em
função de uma fórmula matemática que instrumenta o sensor
de temperatura que está sendo utilizado. Por exemplo: o
fenômeno da temperatura é representado por um valor
hexadecimal (EF01), o qual é processado pelo Process
Model utilizando uma fórmula matemática fornecida pelo
fabricante do chip sensor, com o qual é calculado o valor da
temperatura e posteriormente armazenada de forma
estruturada em um arquivo RDF como é especificado pelo
Sensor Schema.
3. HANDHELD AUGMENTED REALITY
A Handheld Augmented Reality ou simplesmente
Handheld AR é um subconjunto da RA móvel e está baseada
no uso de dispositivos do tipo Handheld como: PDAs e
telefones celulares [3] para implementar aplicações de RA.
Mesmo os telefones celulares sendo extremamente
portáteis e difundidos, a falta atual de poder de
processamento, conexão de rede local (Intranet - LAN) e
tolerância a falhas, fazem destes dispositivos uma plataforma
inadequada para aplicações de RA de alto risco (Por
exemplo: aplicações onde vidas humanas estejam em risco).
Além disso, o tamanho de exibição pequeno e a limitada
capacidade de introduzir dados fazem dos telefones celulares
uma plataforma pouco ideal para interfaces de usuário 3D.
Porém, os telefones celulares com interfaces wireless de
curto alcance (Bluetooh, Zigbee) apresentam excelentes
condições para o desenvolvimento de aplicações do tipo
Handheld AR para a coleta e apresentação de dados obtidos
de RSSF [8].
3.1. A RSSF da Aplicação Handheld AR
Uma rede de sensores é composta por unidades
computacionais autônomas conhecidas como nós, que são
pequenos dispositivos constituídos por: uma unidade de
processamento, memórias estática e dinâmica, interfaces
analógica e digital, bateria e um módulo de rádio.
No presente trabalho utilizaremos a plataforma
TmoteSky. O TmoteSky é uma plataforma de RSSF
projetada com dois objetivos principais: alto grau de
tolerância a falhas e fácil desenvolvimento. Utiliza um
sistema de rádio conhecido como IEEE 802.15.4 ou ZigBee,
que trabalha na faixa de freqüência de 2.4 GHz ISM e
oferece taxas de transmissão na ordem de 250 Kbps, com um
alcance rádio de 125 metros. Além disso, inclui: um ADC
(Analog to Digital Converter) de 12 bits, um DAC (Digital
to Analog Converter), timer, I2C, SPI, um protocolo UART
(Universal asynchronous receiver/transmitter) e um
controlador de DMA (Direct Memory Access). Cada nó
sensor tem capacidade de 48 kB de memória Flash e 10 kB
de memória RAM para instalação de aplicações. Por
exemplo, para uma aplicação do tipo Handheld AR, alguns
dos nós poderiam transmitir dados de umidade, outros de
temperatura ou ambos. A aplicação que é instalada em cada
nó sensor depende dos requerimentos do sistema e dos dados
que desejam ser coletados. O desenvolvimento destas
aplicações é programado em NesC, otimizando o uso da
memória e das capacidades de processamento da plataforma
TmoteSky. Outra consideração na escolha das aplicações a
serem instaladas nos nós sensores é o consumo de energia
requerido pela aplicação.
O processo de desenvolvimento dos programas a serem
instalados na RSSF e a especificação do seu funcionamento
não é parte da presente pesquisa, limitando-nos apenas ao
problema da aquisição dos dados gerados pela RSSF até a
representação destes dados nos telefones celulares como
imagens virtuais.
3.2. Arquitetura da Aplicação Handheld AR
A arquitetura a implementar no presente trabalho está
baseada na arquitetura proposta em [8] e representada pela
figura 2. É utilizando um computador como uma ponte para
receber os dados da RSSF (pelo fato de que a plataforma
TmoteSky utiliza o protocolo ZigBee para a transmissão dos
dados) e sem fazer nenhum tipo de processamento, transmitir
estes mesmos dados através de uma interface Bluetooth para
o telefone celular a utilizar.
Fig. 2. Arquitetura da aplicação Handheld AR.
(esta arquitetura foi proposta em [8])
A escolha do telefone celular a utilizar depende de seu
sistema operacional, capacidades de processamento e
resolução de gráficos. Além disso, o dispositivo deve ter uma
interface Bluetooth para o ingresso dos dados.
O telefone celular tem instalado na sua memória a
Handheld AR Application, que inclui a RDF Tagging
Application a qual recebe os dados do Process Model (ver
figura 1) e estrutura os dados em um arquivo RDF. O arquivo
RDF é modelado numa classe Java e permite a Handhel AR
Application recuperar a informações relevantes (metadados)
que são apresentadas ao usuário através de imagens virtuais
sobrepostas as imagens do mundo real. Por exemplo: além
dos dados de temperatura que podem estar sendo coletadas,
informações referentes ao nó sensor, como estado da bateria
ou localização do nó sensor também podem ser informadas
ao usuário.
3.3. Projeto das Imagens Virtuais da Aplicação Handheld AR
Na atualidade existem software de suporte para o projeto e
implementação de imagens virtuais para as plataformas
Windows CE e Symbiam OS, reduzindo o número e modelos
de dispositivos habilitados para o desenvolvimento de
aplicações do tipo Handheld AR. A API ARToolKit portada
para Symbian OS é a plataforma escolhida para a
renderização das imagens virtuais. O projeto das imagens
virtuais associadas as informações coletadas da RSSF é feita
em OpenGL ES.
Nota-se que esta parte da presente pesquisa ainda se
encontra em andamento, porém os resultados preliminares e
aplicações protótipos desenvolvidos até este ponto
apresentam claros indícios de bons resultados para o objetivo
proposto.
4. CONCLUSÕES
O uso da realidade aumentada em telefones celulares
permite dar suporte a diversos tipos de usuários, incluindo
usuários com necessidades especiais de acesso a informações
relevantes dos ambientes que são monitorados pela RSSF,
como por exemplo: engenheiros de manutenção. A
modelagem de dados e metadados em RDF e RDF Schema
permitem enriquecer o grau de informação apresentado ao
usuário. O presente trabalho representa uma pesquisa
preliminar sobre as tecnologias descritas, esperando-se
aprofundar em conceitos de interação e personalização em
futuros desenvolvimentos.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] M. Andel, A. Petrovski, “Interactive Collaborative
Augmented Reality Using a Distributed Scene Graph on
Mobile Phones”. Dissertação (Mestrado) | Linkoping
University, 2006.
[2] M. Billinghurst, A. Henrysson, “Research directions in
handheld ar”. The international Journal of Virtual
Reality, 2006.
[3] D. Wagner, D. Schmalstieg, “First steps towards
handheld augmented reality”. ISWC'03: Proceedings of
the 7th IEEE International Symposium on Wearable
Computers, IEEE Computer Society, Washington, DC,
USA, p. 127, 2003.
[4] M. Assad, D. J. Carmichael, D. Cutting, A. Hudson, “Ar
phone: Accessible augmented reality in the intelligent
environment”.
Australiasian
Computer
Human
Interaction Conference, 2003.
[5] A. Henrysson, M. Ollila, “Umar: Ubiquitous mobile
augmented reality”. MUM'04: 3rd international
conference on Mobile and ubiquitous multimedia, 2004.
[6] E. Bruns, B. Brombach, T. Zeidler, O.
Bimber,
“Enabling mobile phones to support large-scale museum
guidance”. IEEE MultiMedia, 2007.
[7] G. Broll, S. Siorpaes, E. Rukzio, M. Paolucci, H.
Hamard, M. Wagner, A. Schmidt, “Supporting service
interaction in the real world”. PERMID'06: Pervasive
Mobile Interaction Devices, 2006.
[8] M. Rauhala, A. Gunnarsson, A. Henrysson, “A novel
interface to sensor networks using handheld augmented
reality”. MobileHCI'06, 2006.
[9] R. Tolksdorf, L. J. B. Nixon, E. P. Bontas, D. M.
Nguyen, F. Liebsch, F. “Enabling real world semantic
web applications through a coordination middleware”.
ESWC'05: 2nd European Semantic Web Conference,
2005.
[10] M. Lewis, D. Cameron, S. Xie, B. Arpinar, “Es3n - a
semantic approach to data management in sensor
networks”. Semantic Sensor Networks Workshop of the
5th International Semantic Web Conference, 2006.
[11] H. Noguchi, T. Mori, T. Sato, “Automatic generation
and connection of program components based on RDF
sensor description in network middleware”. IEEE/RSJ
International Conference on Intelligent Robots and
Systems, 2006.
[12] E. Peterson, “Diomedes: An integrated automotive
diagnostics system that is customizable, low-cost, and
non-intrusive built on a wireless sensor network”.
Dissertação (Mestrado) | University Of California,
Santa Barbara, 2007.
[13] D. Beckett, B. Mcbride, “RDF/XML syntax
specification”. http://www.w3.org/TR/rdf-syntax-Grammar/.
[14] M. T. Marino, “Integração de Informações em
Ambientes Científicos na Web: Uma Abordagem
Baseada na Arquitetura RDF”. Dissertação (Mestrado) |
Universidade Federal do Rio de Janeiro, 2001.
[15] D. Brickley, R. Guha,B. Mcbride, “RDF vocabulary
description language 1.0: Rdf schema w3c
recommendation”. http://www.w3.org/TR/rdf-schema/.
[16] A. Medina, J. A. Sanchez, and R. O. Chavez. “Rdf-based
model for encoding document hierarchies”. In 17th
international
Conference
on
Electronics,
Communications and Computers, 2007.
[17] J. Forstadius, O. Lassila, and T. Seppanen. “RDF-based
model for context-aware reasoning in rich service
environment”. In PerCom 2005 Workshops, 2005.
[18] M. Botts. “Sensor model language (sensorml): Xmlbased language for in-situ and remote sensors”. In NIST
Workshop on Data Exchange Standards at the Jobsite,
2003.
[19] Jena. A semantic web framework for java.
http://jena.sourceforge.net/.
Pôster
SUMÁRIO - FORMATO PÔSTER
ARINTERACTION 2.0 – INTERATIVIDADE EM AMBIENTES DE REALIDADE
AUMENTADA
Robson Augusto Siscoutto, Luciana Correia Lima de Faria Borges, Douglas Siqueira Leite,
Adriano Crestani Campos, Eunice Pereira dos Santos Nunes e Patricia Cristiane de Sousa -138
DEVELOPING A MULTIPLAYER ONLINE LEARNING ENVIRONMENT TO WEB SUPPORT
WITH AJAX3D
Edgard Afonso Lamounier Júnior, Alexandre Cardoso, Luciano Ferreira Silva, Marlene Freitas e
Everton Silva de Souza -142
INTEGRAÇÃO DA REALIDADE VIRTUAL COM A DISTRIBUIÇÃO SOQUETE
Rafael Alexandre Guissonio, Marcos Wagner de Souza Ribeiro, Danylo Carlos de Melo, Wender
Antônio da Silva, Edgard Afonso Lamounier Júnior e Alexandre Cardoso - 146
O USO DA REALIDADE VIRTUAL NA ELABORAÇÃO DE JOGOS EDUCACIONAIS NO
ESTÍMULO DA LATERALIDADE E DOS SENTIDOS DA CRIANÇA
Ana Emília Lelis da Silva, Wender Antônio da Silva, Marcos Wagner de Souza Ribeiro, Edgard
Afonso Lamounier Júnior, Nadabe Cardoso de Oliveira A. Fortes e Luciano Vieira de Lima -150
PROPOSTA DE DESENVOLVIMENTO DE UM PROTÓTIPO DE JOGO 3D DE
COMPUTADOR COM A BIBLIOTECA GLSCENE PARA PLATAFORMA LINUX
Wandeir Tavares Ferreira Júnior, Alanderlon Barbosa de Oliveira, Eduardo Filgueiras Damasceno
e José Barbosa Dias Júnior -154
REALIDADE AUMENTADA APLICADA À ARQUITETURA E URBANISMO
Rodrigo Amim, Luiz Landau e Gerson Cunha - 158
REALIDADE VIRTUAL APLICADA À EDUCAÇÃO NO ENSINO DE GEOMETRIA
ESPACIAL
Murilo Borges de Oliveira, Edgard Afonso Lamounier Júnior, Marcos Wagner de Souza Ribeiro,
Wender Antônio da Silva, Nadabe Cardoso Oliveira A. Fortes e Luciano Vieira de Lima - 162
ANÁLISE DE UM AMBIENTE VIRTUAL NÃO IMERSIVO PARA AUXÍLIO NO
TRATAMENTO DA FOBIA DE FALAR EM PÚBLICO
Orley Silva Soares e Roger Amandio Luz - 166
SISTEMA DE AMBIENTES VIRTUAIS PARA ESTUDO DE USINAS HIDRELÉTRICAS
Afonso Bernardino de Almeida Junior, Edgard A. Lamounier Júnior e Alexandre Cardoso. -170
SISTEMA DE AUXILIO À MODELAGEM 3D USANDO VISÃO ESTÉREO
Marcelo Archanjo José e Roseli de Deus Lopes -174
USO DA REALIDADE AUMENTADA COMO FERRAMENTA DE APOIO AO PROCESSO DE
LEITURA DE PESSOAS COM DISLEXIA
Roger Amandio Luz, Marcos Wagner de Souza Ribeiro, Alexandre Cardoso, Edgard Afonso
Lamounier Júnior e Luciano Vieira de Lima - 178
VISUALIZAÇÃO TRIDIMENSIONAL DE BAIXO CUSTO PARA O DESENVOLVIMENTO
DE APLICAÇÕES EM MEDICINA
Alysson Diniz dos Santos e Liliane dos Santos Machado - 182
Developing a Multiplayer Online Learning Environment to Web
Support with AJAX3D
Everton Souza, Marlene Freitas, Luciano Ferreira, Alexandre Cardoso and Edgard Lamounier.
Departamento de Engenharia Elétrica, Laboratório de Computação Gráfica – Universidade Federal de Uberlândia
(UFU) Caixa Postal 38.400 – 34.3239-4148 – Uberlândia – MG – Brasil
eevesou@ieee.org, {fsluciano,marlene_roque}@hotmail.com, {lamounier,alexandre}@ufu.br
Abstract - This paper presents Ludos Top - an
educational 3D game that use virtual reality
techniques, which can support multi-student with a
new design model of networking on the web.
The project has actively involved end-users to focus on
increase interactivity through the use of versatile
system architecture.
We present a quick prototyping of a multi-user virtual
world through the employment of Ajax, X3D and Web
Services provides an efficient, flexible and robust
means for distributed application. Results show
improved network capabilities, in terms of interactive,
ease of use, enjoyability, playability and usability.
Keywords: Ajax3D Distributed Virtual Worlds, Online
Games, and Web Games.
1. INTRODUCTION
The word games refer to activities of which nature
or finality is recreative, diversion and entertainment.
Theses activities exists officially since 776 B.C., and
they began in Olympia, old Greece, with the Olympic
Games. The games perpetuates till nowadays,
nevertheless, the way which they are realized and its
propose changed.
Research work argues that computer games are an
engaging medium for learning since they can stimulate
cognitive processes as reading explicit and implicit
information, deductive and inductive reasoning,
problem solving, and making inferences from
information displayed across a number of screens.
According to constructivist approach [Von Glaserfeld,
1990], learning depends on the active engagement of
the subject that learns and on his ability to construct
knowledge and understanding on the basis of
interaction with the environment.
The Web environment has matured to support realtime delivery of web-based 3D content to increase
interaction and integration with others systems. The
Virtual Reality demonstrates the same evolution
through of new standards like: X3D, the successor of
VMRL standard for Web-based 3D graphics.
The X3D is an open standard file format and API
for representing and communicating with Scene
Authoring Interface (SAI). A major goal of X3D is to
support 3D web applications, in addition to 3D on
networking with portability.
This show news paradigms e.g. integration of X3D
with Ajax3D programming model which is the W3C
Document Object Model (DOM). The Ajax3D consists
of a web-page embedded JavaScript program which
allows an architecture asynchronously given flexibility
for manipulation.
Through Ajax3D and Web Services on architecture
application-to-application communication via network
or the web does solve many of the problems, it also
creates many new problems. The focus is to support
the movement towards an efficient environment that
enables the development of multi-user applications,
providing functionality with the highest level of
compatibility.
This work motivated the development a game with
pedagogical objectives. It is called by Blaise Müller of
Quatro and particularly useful to test observation and
thought abilities.
This paper presents works related. Section Three
give a view about background. Section Four provides
an overview of our proposed architecture. Section Five
provides the case study Ludos Top. Section Six shows
system implementation of this technology in a
simulation. Section seven provides a conclusion.
2. RELATED WORKS
The increasing number of broadband users, and
demand for service quality and diversity, especially in
the entertainment area, drive to development of the
new games like:
Strike Fighter - was developed by Larry Rosenthal
of Cube Productions. It has been running a science
fiction virtual world/online community called
StarbaseC3 for nearly that long. In 2001 were
developed the first version of a 3D web game called
“Strikefighter,” in VRML programming. Last year
Strkefighter was updated for X3D and showed new
model based on architecture with Ajax3D, the game
connected with web server (running PHP and MySQL)
that implements a scoreboard. When the game is over,
it checks the current score against a database of high
scores residing on the server. Strikefighter is similar to
the Flash-based mini-games that have proliferated on
the web over the last several years.
Figure 2: Snapshot from Strile Fighter game in Ajax3D.
The Strike Fighter involved by: JavaScript,
XMLHttpRequest, the DOM and SAI running in a web
browser-independent fashion that will work with IE,
Firefox and others browsers.
Road Rider - is an interactive first person 3D game,
where the player controls a virtual character whose
task consists in reaching the site of a rock concert.
During her/his trip, the user walks around a city (that is
a 3D reconstruction of a portion of the Genoa city
center - figure 3). The game plot consists of a number
of “missions”. Missions involve finding a car, getting
money to buy a ticket for the concert, driving the car to
visit friends who live in different cities to another, and
finally reaching the destination site. Every mission
features an increasing level of difficulty. In order to
enhance the player’s engagement, the game plot is
dynamic. All the important game situations are tied to
road safety (road-signs, vehicles, roads, cross-roads,
pedestrians, etc.). And this is true also for the score
rules. Score is a fundamental element of the game,
since it provides the main motivation for a user to
improve her/his performance. So, the criteria according
to which points are assigned are very important
because they define what layers’ operations, actions
and behaviours are positive and what are not relevant
or even negative. In Road Rider, the system penalizes
hazardous behaviors and rewards safe road-behaviors.
Figure 3: Snapshot from Road Rider.
The game provides a valid support to realize:
• a realistic 3D visualization, which is quite complex
to achieve in a networked environment;
• an effective narrative, which is important in order
to engage the user in interesting and compelling
situations;
• A realistic simulation, which is important to
increase the likelihood that the user may transfer in the
real-life techniques and skills learned through
simulation.
The NICE project - is an effort to build Narrativebased,
Immersive,
Constructionist/Collaborative
Environments for children. Developed at the
Interactive Computing Environments Laboratory (ICE)
and the Electronic Visualization Laboratory (EVL) of
the University of Illinois at Chicago, NICE aims to
create a virtual learning environment that is based on
current educational theories of constructionism,
narrative, and collaboration, while fostering creativity
within a motivating and engaging context.
NICE is an outgrowth of two previously designed
systems, CALVIN and the Graphical Storywriter.
Figure 4: Snapshot from Narrative, Immersive,
Constructionist/Collaborative Environments.
Equally important to the construction of one'
s
knowledge is the experience gained by participation in
group activity. Collaboration is emphasized in our
framework through the combination of collaborative
learning across both virtual, as well as physical
communities. Collaboration of virtual communities
refers to communication and shared experience
between children who are geographically separated.
The network component of NICE allows multiple
networked participants at different locations to interact
with each other and share the same virtual space.
The number of participants is limited only by
bandwidth and latency of the network. Multiple
distributed NICE applications running on separate VR
systems are connected via the central LIFE server
across all the separate environments. The
communications library uses multicasting to broadcast
positional and orientation information about each
child'
s avatar, and uses TCP/IP to broadcast state
information between the participants and the behavior
system [M. Roussos, A. E. Johnson, J. Leigh, C. R.
Barnes, C. A. Vasilakis, and T. G. Moher, 1997].
I. 3. BACKGROUND
The 3D web environment have begun to
demonstrate increased utility which include higher use
of participation, scalability and compatibility.
3.1 Ajax3D
The technology Ajax has architecture neutral
approach due new standard of web-based development.
One of the most popular trends in web applications is
enriching client functionality through the means of
Asynchronous Javascript and XML (Ajax) [Crane,
David, Pascaraello, Eric, 2005].
AJAX is a
combination of existing technologies rather than a
completely new innovation. The primary component is
the XMLHTTPRequest (XHR) object that provides for
the ability to perform asynchronous communication
with a server via Hypertext Transfer Protocol (HTTP).
Used in coordination with either Dynamic Hypertext
Markup Language (DHTML) or use of HTML
FRAMES, the XHR request object allows a high level
of performance thus avoiding the call-and response
mechanism of earlier web applications.
Replacing the integration of DHTML functionality
with the X3D event model, applications have applied
the use of X3D markup technologies in the context of
an AJAX-based application[Parisi, Tony, 2006]. This
approach has identified a trend of scripting the 3D
scene hierarchy in the same fashion as the Document
Object Model (DOM) and handling the events through
Javascript. By relying on AJAX-based network calls, a
user interacts with backend tiers via a 3D scene in
asynchronous fashion previously provided by
employment of HTML '
DIV'tags. This technique has
supported a much higher level of interactivity and
efficiency in web-based 3D [A. Ostrowski, David,
2007].
II. 4. OVERVIEW OF ARCHITECTURE
The architecture shows the integration between
Ajax, X3D and Web Services that introduces a new
solution for multi-user gaming system. This solution
provides some advantages like: scalability, security and
interactive responsiveness.
3.2 Multiplayer Worlds
Recently, the term Post-Nintendo kids have been
coined, referring to the fact that today most children
have been exposed to 3D computer games. With ease
they navigate through virtual environments interpreting
audio-visual hints as they go. Just, as WIMP (windows,
menus, pull-downs) metaphor rules the design of
graphical user interface (GUI) of today’s software and
replaced the command line control, 3D environment
and 3D navigation with new GUI metaphors for
operation systems and desktop applications.
Multiplayer worlds are a new way for people to
collaborate. Clarker-Willson (S. Clarker-Willson.,
1998.) suggest that virtual environment designers
should apply principles that made even early games so
appealing: third person view, discovery and
exploration, player control, maps, landmarks, closed
environments (limited space), complexity management
(reduced number of active objects) and constant
positive feedback.
Platforms of increasing importance for multiplayer
worlds are game console.
3.3 Trends in Multi-user and Gaming Applications
The multiplayer games are notoriously difficult to
implement correctly of effectively because they are
multiple traditional types of software rolled into a
single application, like: Graphical applications, Distributed
Systems and Interactive applications.
The multiplayer game industry has influenced
applications including simulation, education and
training [Jain, Sanjay, McLean, Charles R., 2005].
In principle, developers have relied on C and C++
exclusively for gaming development [Davison,
Andrew, 2005]. While providing a tight coupling with
operating systems, this approach is slowly changing
towards development in languages that are more
portable and provide for faster development cycles.
Nowadays, already exist game’s architecture
implemented for compatibility and ease of
development, for WWW through of new technologies
shows next-generation gaming architecture with rapid
development.
Figure 4: Architecture based X3D and Ajax
AJAX have found acceptance across a number of
web based games starting from board based games
such as WEBGOGGLE and working towards 3D
interactive games including Strike Fighter. While some
of the architectures surveyed at this writing maintain
similar qualities to our application, direct comparisons
are difficult to perform. Advantages of our approach
include support of web services, a portable solution
that could be implemented across a number of
architectures.
The
architecture
with
Ajax
communicating with a web server without refreshing
the whole page.
The main goal this project is propose a open
architecture distributed portable across platforms,
providing support for communication to non X3D
applications, allows the routing of events over a
network using the same routing, high efficiency
transfer of data or node, secure communication and
support the main Web/internet standards.
4.1 Communication Architecture
The primary advantages of using a distributed
communication are scalability, responsiveness and
resiliency. Distributed communication allows players
to send messages directly to each other, creating a
more responsive game. The key challenges in
developing communications components for a
distributed architecture are a consistency, event
ordering, interactive responsiveness, security and
scalability.
Figure 6: Multi-User client/server (logical architecture)
7. CONCLUSION
5. LUDOS TOP
The system proposed based in game Quarto, created
by Frenchman Blaise Müller in 1985. The sixteen
game pieces show all combinations of size (short or
tall), shade (light or dark), solidity (shell or filled), and
shape (circle or square). Two players take turns placing
pieces on a four by four board and the object is to get
four in a line with the same characteristic - all short,
for example. Only one piece can go in a cell and, once
placed, the pieces stay put. Blaise Müller'
s brilliant
twist is that you choose the piece that your opponent
must place and they return the favor after placing it.
5.1 Functioning of the game
As the objective of the game is establish a line of
four pieces, with at least one common characteristic on
the board. The line of pieces may be across the board,
up and down, or along a diagonal.
Game sequence when the first player selects one of
the 16 pieces and gives it to his opponent. That player
places the piece on any square on the board and
chooses one of the 15 pieces remaining and gives it to
his one. The game is won by the first player to call
“QUARTO!”
5.1 Aspect Pedagogical
Nowadays, an increasing demand for greater
interactivity to be built into learning materials. There is
a clear need to offer a variety of different knowledge
presentations and to create opportunities to apply the
knowledge within the virtual world, thus supporting
and facilitating the learning process. To achieve that, it
is necessary to provide a complex level of interactivity
that stimulates users’ engagement, apply different
interactivity concepts as object, linear, construct or
hyperlinked
interactivity,
and
non-immersive
contextual interactivity as well as immersive virtual
interactivity.
The technical advantages are employing interactive
through of Ajaxian techniques that provides better
enjoyability, playability and usability
6. SYSTEM IMPLEMENTATION
The implementation of the system denominates
Ludos Top which introduces the game Quatro and
some systems like: Ajax Techniques, Flex Flux plug-in
3D, Internet Explorer browser and Tomcat.
6.1 Ludos Top Web User Interface
The Ludos Top interface is a HTML programmed
using JavaScript, Ajax and X3D. The communication
between X3D and HTML page is through the X3D
Script SAI, after this, the parameters are forwarded
outside world for Web Services using Ajax request
with XMLHttpRequest.
In this paper presents the possibilities of fully
distributing multi-user games online through of
standards such as X3D have made it possible deploy
rich 3D content in real time over the Internet.
At the same time, Ajax has emerged as a worldwide
phenomenon and an interest of new application
development. By bringing these two technologies
together, Ajax3D promises to be good open platform
for creating a next-generation 3D web experience.
With Ajax3D, immersive virtual worlds can be
deployed within a web browser, integrated with pages
with more interaction, compatibility and can
communicate with standard web servers using XML
and Ajax technologies, enabling networking on web.
The Ludos Top is in its infancy. It will need to be
actively developed. Ludos Top can become an example
of Educational Virtual World on World Wide Web for
help research and development personal.
8. ACKNOWLEDGEMENTS
The authors would like to thanks the Luciano and
Marlene Roque at the University Federal of Uberlândia
for supporting the establishment of the Computer
Graphics lab.
9. REFERENCES
A. OSTROWSKI, DAVID, 2007. A Web-Based 3D Gaming Style
Multi-User Simulation Architecture. Ford Research and
Advance Engineering.
LEIGH, J. AND JOHNSON, A. E.1996a. Supporting
Transcontinental Collaborative Work in Persistent
Virtual Environments. In IEEE Computer Graphics and
Applications. July 1996, pp. 47-51.
M. ROUSSOS, A. E. JOHNSON, J. LEIGH, C. R. BARNES, C. A.
VASILAKIS, AND T. G. MOHER, 1997. The NICE project:
Narrative, Immersive, Constructionist/Collaborative
Environments for Learning in Virtual Reality. In IEEE
Computer Graphics and Applications.
STEINER, K. E. AND MOHER, T. G. 1994. Scaffolding Story
Construction with Interactive Multimedia. In The Journal
of Educational Multimedia and Hypermedia, pp.173-196.
S. CLARKER-WILLSON., 1998. Applying Game Design to
Virtual Environments. In C. Dodsworth (editor), Digital
Illusion: Entertaining the Future with High Technology.
ACM Press.
JAIN, SANJAY, MCLEAN, CHARLES R., 2005. Integrated
Simulation and Gaming Architecture for Incident
Management Training. PROCEEDINGS OF THE 2005
WINTER SIMULATION CONFERENCE.
E.
GLASERSFELD, 1990. “Constructivist Views on the
Teaching and Learning of Mathematics”. Journal for
Research in Mathematics Education. Monograph, Vol. 4,
pp. 19-29+195-210.
VON
PARISI, TONY, 2006. http://www.ajax3d.org/ whitepaper.
INTEGRAÇÃO DA REALIDADE VIRTUAL COM A DISTRIBUIÇÃO SOQUETE
Rafael Alexandre Guissonio1, Danylo Carlos de Melo1, Wender Antônio da Silva1, Edgard Afonso
Lamounier Júnior2, Alexandre Cardoso2, e Marcos Wagner de Souza Ribeiro1
1 - Grupo de Realidade Virtual de Goiás – GRVG - Instituto Luterano de Ensino Superior de Itumbiara, GO
2 - Grupo de Realidade Virtual – GRV – Laboratório de Computação Gráfica – Universidade Federal de Uberlândia, MG
rag1081@gmail.com, danyloz@gmail.com, wender_silva@yahoo.com.br, lamounier@ufu.br, alexandre@ufu.br,
marcos_wagner@yahoo.com.br
Resumo – Este artigo apresenta a integração da Computação
Distribuída e da Realidade Virtual no Ensino, tendo como
estudo de caso a utilização de um sistema Cliente/Servidor
(MSN), onde todos se interagem ao mesmo tempo das
informações, podendo enviar e receber a quaisquer instantes
objetos em 3D baseados em ambientes educacionais. A
distribuição se dá por meio da programação com Soquete.
Palavras-Chave – Computação
Servidor, Realidade Virtual
Distribuída,
Cliente/
a forma criativa e produtiva do usuário - a realidade precisa
reagir de forma coerente aos movimentos do participante,
tornando a experiência consistente. O objetivo da Realidade
Virtual é fazer o usuário se sentir dentro do ambiente virtual
(imersão, envolvimento e interação). Além disso, Pinho [4]
diz que RV permite aprender visitando lugares onde jamais
estaremos na vida real, talvez porque o lugar seja muito
pequeno para ser visto ou muito grande para ser examinado
como um todo, ou muito caro ou muito distante.
1.2. Soquete
Abstract – This article presents the integration of Distributed
Computation and Virtual Reality for educational
applications, having as a case study the use of a system
Client/Server (MSN), where all users share the information
at the same time, sending and receiving 3D objects based on
educational environments. The distribution is achieved by
means of the programming with Sockets.
Keywords - Distributed computation, Client/Server, Virtual
Reality
1. INTRODUÇÃO.
Este artigo apresenta o uso da Computação Distribuída na
construção de uma aplicação mensageira, trabalhando junto
com a Realidade Virtual, tendo como estudo de caso a
criação de um sistema Cliente/Servidor (MSN), onde várias
pessoas de qualquer lugar poderão se conectar e interagir,
dividindo ao mesmo tempo as informações nele
transmitidas. Este sistema será utilizado com o intuito de
proporcionar
uma
comunicação
com
eficiência,
proporcionada pelos soquetes.
Este trabalho poderá ser utilizado em instituições de
ensino fundamental e médio, tornando-se assim, um
facilitador para o professor, pois terá um canal direto para
seus alunos e principalmente para as orientações à distância.
1.1.Realidade Virtual.
Segundo Kirner [2], Realidade Virtual pode ser
considerada como uma ferramenta para visualizar,
manipular, explorar, interagir e modificar, por meio do
computador, dados complexos de uma forma natural, muito
semelhante ao que se faria no caso da ação sobre o dado real.
O termo Realidade Virtual refere-se a uma experiência
interativa baseada em imagens gráficas 3D geradas em
tempo-real por computador. Cardoso e Lamounier [3]
afirmam que a qualidade dessa experiência em RV
(Realidade Virtual) é crucial, pois deve estimular ao máximo
Segundo Cantú [5] um soquete (do inglês socket) é,
generalizado, uma tomada. Designa uma cavidade ou região
usada para ligar algum artifício específico. Pode ser usado
em ligações de redes de computadores para um fim de um
elo bidirecional de comunicação entre dois programas. A
interface padronizada de soquetes surgiu originalmente no
sistema operacional Unix BSD (Berkeley Software
Distribution); portanto, eles são muitas vezes chamados de
Berkeley Sockets. É também uma abstração computacional
que mapeia diretamente uma porta de transporte (TCP ou
UDP) e mais um endereço de rede. Com esse conceito é
possível identificar unicamente um aplicativo ou servidor na
rede de comunicação IP.
2. TRABALHOS RELACIONADOS.
Nos diversos ramos da pesquisa, já existem trabalhos que
tratam da Computação Distribuida e Realidade Virtual
juntamente com outras áreas do conhecimento, propiciando
relevância social e científica. Em [6] é apresentado um
trabalho no qual descreve o desenvolvimento de uma
aplicação cliente-servidor para a disseminação de dados
geográficos na Internet. O ADMnet [7] permite que
responsáveis e administradores de estações de trabalho
disponham de dados atualizados, sem que se vejam
obrigados a realizar inventários manuais exaustivos, caros e
obsoletos. Há também trabalhos voltados para a área da
educação, tais como em [8], onde se reproduz o
funcionamento de um ambiente virtual distribuído, por meio
da Realidade Aumentada, conforme representado na Fgura 1.
Em [9] é apresentado um protótipo para auxiliar a
aprendizagem da disciplina de redes de computadores, mais
especificamente na concepção e entendimento dos conceitos
de um projeto de redes de computadores locais, conforme
representado na Figura 2.
Em uma arquitetura de rede, onde existem dois módulos
básicos na rede: o Servidor e os Clientes. O Servidor é
alguma máquina da rede, responsável por fazer a
comunicação do cliente conectado. Clientes são as máquinas
que solicitaram informações que estarão contidas no
Servidor.
O importante em uma máquina com arquitetura
Cliente/Servidor não é que todas as máquinas sejam do
mesmo fabricante ou do mesmo tipo. O que realmente é
importante é o fato de todas as máquinas poderem ser
interligar pela rede.
Fig. 1. Membrana no processo de fotossíntese [8].
3.1. Algoritmo de Distribuição
Essa seção apresenta a arquitetura de distribuição do
sistema em si. Algumas considerações devem ser vista como
a comunicação da rede, visão do ambiente descrito,
gerenciamento da computação, comportamento dos objetos e
modelo de dados. Sua aplicação será sempre a
servidor/cliente. Toda aplicação na rede terá inicio com a
procura de um servidor, desta forma, haverá sempre, apenas
uma aplicação servidora, ou administrador. Todos os outros
ambientes se conectarão ao servidor como cliente.
Fig. 2. Ambiente de aprendizado de redes de computadores [9].
3. MÉTODOS APLICADOS
3.1 Estudo de Caso (Cliente/Servidor)
O estudo de caso apresentado, mostrou como foi
implementado uma solução simples sobre um problema do
dia a dia. Observamos com o estudo que os componentes de
Soquete do Delphi fornecem uma boa interface para um uso
direto da API (Application Programming Interface) ou
Interface de Programação de Aplicativos de soquetes do
Windows e também que, usando componentes de Soquete de
nível mais alto geralmente é mais fácil do que usar a API de
baixo nível. Na verdade os serviços de conexões são
oferecidos por classes que englobam o tratamento da
conexão, e são usadas pelos componentes de soquete, para
gerenciar as chamadas de API de soquete do Windows e para
armazenar informações sobre um vínculo de comunicação de
soquete.
Cliente/Servidor é usado praticamente em todos os
processos distribuídos em que a aplicação servidora aguarda
conexões, executa serviços e retorna resultados. Já a
aplicação cliente é quem estabelece a conexão com o
servidor, envia mensagens para o mesmo e aguarda pelas
mensagens de resposta.
Fig. 3. Arquitetura proposta para o sistema.
4. IMPLEMENTAÇÃO DO SISTEMA
O Sistema é constituído por uma aplicação básica, sendo
um Cliente/Servidor. Para o funcionamento do sistema, é
necessário que seja ativado em uma máquina qualquer que
suporte o trabalho distribuído, para que todas as estações
possam se comunicar em uma LAN (rede local), sem
necessidade de um Servidor independente, ou seja, apenas
um Servidor será preciso ser iniciado para que
a
comunicação entre as máquinas sejam possíveis, pois o
sistema em si trabalha como Cliente/Servidor, evitando
vários problemas com conexões dependentes de servidores.
O sistema foi implementado, em Delphi, utilizando o
Clientsocket e Serversocket, [10] que são componentes da
plataforma
de
desenvolvimento,
permitindo
o
desenvolvimento desse aplicativo voltado para internet.
Fig. 7. Conteúdo de Geografia.
Fig. 4. MSN Cliente.
O Sistema disponibiliza funções de transferência de
arquivos entre as estações na rede, função no qual possibilita
o compartilhamento de arquivos, facilitando e agilizando o
processo do conteúdo ministrado. Outra função, e fazer com
que arquivos sejam iniciados em outras máquinas com a
finalidade de facilitar para o administrador (professor)
ministrar as aulas com mais eficiências e eficácia, assim,
determinados conteúdos que seriam complicados, podem ser
ministrados em forma de exemplos.
Fig. 8. Conteúdo de Eletromagnetismo.
5. CONCLUSÕES E TRABALHOS FUTUROS
5.1. Conclusões
Fig. 6. Opção de transferência de arquivo.
Sendo o principal objetivo do Sistema trabalhar e interagir
com a Realidade Virtual utilizando a computação distribuída,
o sistema traz em si uma opção, onde se pode realizar
manipulação de objetos modelados pela linguagem VRML
(Virtual Reality Modelating Language), ou seja,
possibilitando abrir na rede de simples objetos a grandes
ambientes, isso só é possível, porque o Sistema tem uma
interface que interage com o Browser navegador de Internet
e com o Cortona, fazendo com que interprete códigos
VRML, e gerando os Objetos Gráficos modelados. Abaixo
estão alguns exemplos de como funciona a visualização dos
ambientes virtuais que são estartados pela administrador ou
pessoa que esta ministrando a aula.
Foi constatado que existem diversos sistemas que utilizam
ambientes virtuais voltados para a educação, cada um deles
possui uma especificidade, direcionado a resolução de
problemas específicos, mas há poucos trabalhos
relacionados, que utilizem a plataforma Cliente/Servidor,
para tal interação. Este trabalho seguindo essa tendência
apresenta uma aplicação que se utiliza das técnicas de
Computação Distribuída com Realidade Virtual.
A pesquisa foi apresentada a uma escola particular da
cidade de Itumbiara, no estado de Goiás, onde foi aplicado
nas aulas de informática. Assim utilizou-se MSN para os
alunos se comunicarem, sendo o professor o intermediador
das aulas. Assim, o professor discutia alguns conteúdos e
logo após lançava os conteúdos utilizando o software e os
alunos trabalhavam com os mesmos. Desta forma, constatouse que a utilização da Realidade Virtual propiciou uma maior
facilidade de entendimento do conteúdo. Segundo os
professores responsáveis, o MSN facilitou em muito suas
aulas, pois os alunos começaram a trocar idéias via teclado,
assim a aula fluía sem conversas e sem tumulto. Além da
troca de informações sobre o ambiente virtual ao qual
estavam trabalhando e tentando entender seus conceitos.
5.2. Trabalhos Futuros
Como continuação deste trabalho, considera-a necessidade
de melhorar a parte gráfica apresentando um ambiente virtual
mais adequado às disciplinas, facilitando o entendimento do
exemplo e finalmente, utilizar a tecnologia de JavaRMI ou
Corba para uma melhor interação com o usuário do sistema.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] Pinheiro, C.D.B., Ribeiro Filho, M.. (2005) “LVRLaboratório Virtual de Redes- Protótipo para Auxilio ao
Aprendizado em Disciplinas de Redes de Computadores”.
Anais do XVI SBIE.
[2] KIRNER, Cláudio. Sistemas de Realidade Virtual. Grupo
de Pesquisa em Realidade Virtual, Departamento de
Computação – UFSCar. 1997.
[3] CARDOSO, Alexandre; LAMOUNIER JR, Edgard. Realidade
Virtual – Uma Abordagem Prática. Minicursos – VII Sumposium
on Virtual Reality – São Paulo, 2004.
[4] PINHO, Márcio Serolli. Textos e artigos sobre RV
Disponível: http://www.pgie.ufrgs.br/siterv/introducao.htm
Acesso em: 29 junho 07.
[5] CANTU, Marco. Dominando o Delphi 6, São Paulo:
Makron, 2002
[6] OSSES, José Roberto. Arquiteturas Cliente-Servidor para
Bibliotecas
Geográficas
Digitais.
2000.
http://www.tecgraf.puc-rio.br/geoinfo2000/anais/024.pdf.
Acesso em 18 agosto 2007.
[7] OLIVEIRA, Cláudio Eduardo, HIRANO, Francisco W.
M. P., HIRANO, Janine Harume P., SOUZA, Wender
Macedo. 2003. ADMnet – Monitoramento de estações em
uma LAN, baseado em Sistemas Distribuídos. Acesso em 21
agosto 2007.
[8] RIBEIRO, Marcos Wagner; SILVA, Wender A.2006.
Visualização
de
Ambientes
Virtuais
Distribuídos
Multidisciplinares por meio da Realidade Aumentada.
Acesso em 8 setembro 2007.
[9] MEIGUINS, Bianchi Serique. 2006. Realidade Virtual
aplicada ao Ensino e Aprendizado de Redes de
Computadores. Acesso em 10 setembro 2007.
[10]
ACTIVEDELPHI,
SOCKETS,
Julho:
2005
http://www.activedelphi.com.br/modules.php?op=modload&
name=News&file=article&sid=249&mode=thread&order=0
&thold=0. Acesso em 21 agosto 07.
O USO DA REALIDADE VIRTUAL NA ELABORAÇÃO DE JOGOS EDUCACIONAIS NO ESTÍMULO
DA LATERALIDADE E DOS SENTIDOS DA CRIANÇA.
Ana Emília Lelis da Silva1, Wender Antônio da Silva1, Edgard Afonso Lamounier Júnior2, Nadabe
Cardoso de Oliveira Alves Fortes1, Luciano Vieira de Lima2, Marcos Wagner de Souza Ribeiro1
1 - Grupo de Realidade Virtual de Goiás – GRVG - Instituto Luterano de Ensino Superior de Itumbiara, GO
2 - Grupo de Realidade Virtual – GRV – Laboratório de Computação Gráfica – Universidade Federal de Uberlândia, MG
lelis21@hotmail.com, wender_silva@yahoo.com.br, lamounier@ufu.br, nadabef@gmail.com,
luciano.vieira.lima@terra.com.br, marcos_wagner@yahoo.com.br
Resumo – Este artigo apresenta uma aplicação feita em
realidade virtual tendo como estudo de caso os métodos
tradicionais de estímulo da lateralidade e dos sentidos. O
software desenvolvido em VRML (Virtual Reality Modelating
Language) foi proposto a professores de educação física que
trabalham com tais estímulos, desta forma buscou-se
proporcionar a interação, envolvimento e interesse da
criança, onde se obteve um resultado positivo com relação
ao software, atendendo as necessidades que foram propostas
inicialmente.
Palavras-Chave – Educação, Lateralidade, Realidade
Virtual.
Abstract – This article presents the application of virtual
reality, using as a case study, the traditional methods of
stimulating the laterality of the senses. The software,
developed in VRML (Virtual Reality Modulating Language),
was proposed to Physical Education professors who work
with such stimulus, thereby promoting the interaction,
involvement and interest of the children, and obtaining
positive results as it relates to the software meeting the
initially proposed requirements.
Keywords - Education, laterality, Virtual Reality.
1. INTRODUÇÃO.
A educação pode ser tratada como um processo de
descoberta, de observação, de exploração e de construção do
conhecimento. No processo de ensino-aprendizagem tem-se
constatado dificuldades de aprendizado em conteúdos onde
não é possível presenciar o processo da forma que o mesmo
acontece. Nesses casos cabe ao professor usar recursos que
permitam ao aluno conhecer algo abstrato e perceber sua
ligação com o real. Os métodos de ensinos tradicionais
baseados em quadro negro e aulas dialogadas podem tornar
esse processo cansativo e desmotivar os alunos causando
falhas no processo de ensino-aprendizagem.
Com essa dificuldade encontrada nos métodos de
ensino tradicionais, a informática permite ao professor de
um conteúdo de uma disciplina curricular ter conhecimento
sobre os potenciais educacionais do computador e ser capaz
de alternar adequadamente atividades tradicionais de
ensino-aprendizagem e atividades que usam o computador.
No entanto, estas atividades podem ser feitas tanto para
continuar transmitindo a informação para o aluno e,
portanto, para reforçar o processo instrucionista, quanto para
criar condições para o aluno construir seu conhecimento por
meio da criação de ambientes de aprendizagem e facilitando
o desenvolvimento dos conteúdos.
1.1 REALIDADE VIRTUAL.
Realidade Virtual é uma interface avançada para
aplicações computacionais, onde o usuário pode navegar e
interagir, em tempo real, em um ambiente tridimensional
gerado por computador, usando dispositivos multisensoriais
[1].
A Realidade Virtual pode ser usada para
materializar informações de uma forma mais fácil para
pessoas que tem problemas em assimilar um conteúdo, como
por exemplo, na matemática, pode-se fazer um aluno
"caminhar" sobre uma superfície que representa uma
equação e a partir disto fazê-lo compreender conceitos como
curvatura, ponto de inflexão, etc..
1.2
JOGOS
PEDAGÓGICOS
EDUCACIONAIS
E
SOFTWARES
O jogo é a construção do conhecimento,
principalmente, nos períodos sensório motor e préoperatório. Agindo sobre os objetos, as crianças, desde
pequenas estruturam seu espaço, seu tempo, desenvolvem a
noção de casualidade chegando a representação e, finalmente
a lógica [2].
Os jogos educacionais têm por objetivo facilitar a
aprendizagem e o desenvolvimento pessoal da criança. O
jogo pode ser considerado um recurso pedagógico, se através
dele a criança aprender sobre natureza, eventos sociais,
dinâmica interna dentre outros aspectos construtivos. O jogo
é uma atividade que a criança necessita para atuar em tudo
que a rodeia e desenvolver o conhecimento [3].
A utilização do computador na educação só faz
sentido na medida em que os professores o concebem como
uma ferramenta de auxílio as suas atividades didáticopedagógicos, como instrumento de planejamento e realização
de projetos interdisciplinares, como elemento que motiva e
ao mesmo tempo desafia o surgimento de novas práticas
pedagógicas, tornando o processo ensino-aprendizagem uma
atividade inovadora, dinâmica, participativa e interativa [4].
Utilizar o computador para auxiliar o processo de
ensino-aprendizagem pode ser considerado um mecanismo
de promoção e desenvolvimento profissional e intelectual na
medida em que promove a realização de tarefas mais
criativas, libertando o homem para aprender a raciocinar,
resolver problemas e aprender a aprender.
1.3 LATERALIDADE
Lateralidade é a consciência interna que a criança
tem dos lados direito e esquerdo de seu corpo, não se
tratando de um conceito adquirido, mas de programas de
atividades cuja finalidade é o desenvolvimento de acuidades
sensoriais e habilidades motoras, já que a criança é exposta a
uma grande quantidade de estímulos que aumentam essa
consciência [5].
Com base nas pesquisas feitas pode-se dizer que
definir a lateralidade antes da fase escolar é fundamental para
um perfeito desenvolvimento das aprendizagens da leitura,
da escrita, do calculo entre outros. E para um bom
desenvolvimento da lateralidade é necessário que a criança
não se sinta forçada a adotar nenhuma postura, é preciso criar
situações onde ela possa decidir qual será seu lado dominante
e adquirir definições comuns, como a de direita e esquerda.
2. TRABALHOS RELACIONADOS.
A maioria dos sistemas analisados com relação ao
tema proposto, que é trabalhar a lateralidade utilizando a
realidade virtual, demonstra o poder da utilização desta
técnica como meio motivador na melhoria do processo do
ensino/aprendizagem. Na maioria dos trabalhos, RV é
utilizada para propiciar uma simulação de condições em
muitas vezes apenas imaginada em outras vezes
representada, resultando no envolvimento maior tanto
docente como discente.
Kirner [6] propõe desenvolver versões do livro
interativo (LIRA), para auxiliar no ensino de diversas áreas,
no desenvolvimento cognitivo de crianças e estimular o uso
do livro para pessoas com deficiência visual ou auditiva. No
livro impresso, cada pagina ira conter informações de
assuntos variados. O conteúdo da pagina será
complementado com narração e cenários tridimensionais e
interativos, quando em conjunto com o livro virtual. Será
possível movimentar o cenário, manipular a pagina do livro,
deixando que o usuário escolha o ângulo de preferência para
interagir com o ambiente tridimensional. Conforme a figura
1 a baixo:
estar disponível na Internet com permissão de acesso a
qualquer internauta. Semelhante a uma cidade real, a Cidade
Virtual do Saber será composta de bairros, praças, casas,
rádio, TV, jornaleiro, cinema, museu, prefeitura, escola de
ensino fundamental, universidade, zoológico, entre outros
locais.
No trabalho de Araújo [8] o objetivo principal é
mostrar a possibilidade do estudo com auxilio do
computador, utilizando-se da Realidade Virtual que é o
instrumento de criação dos ambientes virtuais simulando
aspectos da física. Foi desenvolvido um software educacional
utilizando a linguagem VRML (Virtual Reality Modelating
Language). O ambiente foi apresentado a alunos e
professores de uma escola pública e outra privada, sendo
que, quando o ambiente virtual foi utilizado para explicação
da matéria, notou-se um melhor entendimento e melhor
interatividade por parte dos alunos. Como demonstra a figura
2 abaixo:
Fig. 2. Exemplo do software de Araújo [6]
O trabalho de Hassan [9] aborda questões do uso da
Realidade Virtual na educação como ferramenta auxiliar no
processo de desenvolvimento cognitivo, através do
desenvolvimento de um laboratório virtual 3D de redes de
computadores. O laboratório virtual de redes foi
desenvolvido em linguagem VRML, buscando a integração
de várias mídias para a criação de metáforas que exibam o
funcionamento de uma rede de computadores, e para
proporcionar exercitação no ambiente virtual, visto que, um
laboratório, deve justamente proporcionar a aprendizagem
através da prática.
3. MÉTODOS APLICADOS
Fig. 1. Fazenda, cenário do livro de estudos sociais [4].
Em 2003 Lira [7] desenvolveu uma cidade virtual
em 3D, com navegação em VRML. Esta cidade tem objetivo
de servir como um ambiente de ensino-aprendizagem e deve
A metodologia aplicada no desenvolvimento deste
projeto foi escolhida com base em métodos tradicionais
utilizados por professores para o aprendizado da lateralidade
(direita, esquerda, subir e descer), e estímulo dos sentidos
(audição, visão e tato).
Para o desenvolvimento do jogo, utilizou-se
conceitos de Realidade Virtual (RV), que, conforme a figura
3 e 4 nos mostra, permite navegação com 6 graus de
liberdade, podendo ir para direita ou esquerda, para cima ou
para baixo, ou ate mesmo inclinar para os lados, definições
suficientes que justificam utilizar realidade virtual pra
trabalhar com lateralidade. Ao utilizar sons dentro do
ambiente, pôde-se trabalhar com o senso auditivo, o
ambiente virtual trabalhou com o senso visual, para o senso
motor, utilizou-se uma ferramenta de manuseio, dando a
criança a sensação de equilíbrio, e no próprio ambiente
virtual também foi possível trabalhar conceitos de direita e
esquerda, dentro e fora, sentidos básicos de lateralidade.
visualização de textos, o que dificulta a interação de crianças
que ainda não sabem ler.
2- Modelagem dos objetos: os objetos foram modelados
utilizando-se o VRML, e também o software Flux Studio.
Foram modelados separadamente e depois, utilizando o Flux
Studio, foram agrupados gerando um ambiente maior, a
figura 5 a baixo, demonstra agrupamento dos objetos
utilizando-se o Flux Studio.
Fig. 3. Navegação com 6 graus de liberdade [8].
Fig. 5. Junção dos objetos utilizando Flux Studio
3- Interação: a interação foi feita individualmente em todos
os objetos da cena, assim, foi possível trabalhar questões
como visão e audição. Foram feitas algumas animações prédefinidas, onde a criança pôde-se interagir. Porém o conceito
mais utilizado é a que o plug-in Cortona nos traz: a
navegação no ambiente. Ainda foi utilizado os conceitos de
Toch Sensor, Time Sensor na interação dos objetos, além de
trabalharmos com as questões de colisão dos objetos.
4.1 FUNCIONAMENTO DO SISTEMA
Fig. 4. Navegação com 6 graus de liberdade [10].
4. IMPLEMENTAÇÃO DO SISTEMA
O ambiente virtual foi desenvolvido utilizando
VRML (Virtual Reality Modelating Language), linguagem
de programação destinada a criação de ambientes virtuais em
3D (3 dimensões), onde permitiu-se a interação do usuário
com o mundo virtual.
A linguagem escolhida trata-se de uma linguagem
livre, que permite visualização em navegadores de internet,
bastando apenas a instalação de plug-in. No projeto o plug-in
utilizado foi o Cortona.
A implementação do sistema também contou com
os seguintes itens:
1- Gravação das histórias - foi necessário gravar as historias
para poder trabalhar com as crianças o senso auditivo, o que
possibilitou a diferença entre a maioria dos softwares
educacionais, que geralmente apenas proporciona a criança à
O sistema vai constar de um ambiente virtual, o qual
contém árvores, bonecos e diversos objetos virtuais (onde em
cada objeto, ao se clicar, deverá disparar sons, ou seja,
histórias sobre os objetos).
O trabalho com a lateralidade deverá constar ao se
utilizar o mouse, navegando no ambiente virtual, desta
forma, deverá conter setas e falas indicando os caminhos a
seguir, ou seja, esquerda, direita, para cima e para baixo,
conceitos de dentro, fora.
Os sentidos foram propiciados pelo ambiente
virtual, pelos sons e ainda pelo tratamento de colisão (o
sentido de colisão age como sentido de encontro com algum
objeto), proporcionando a criança o conceito de que não é
possível atravessar objetos do mundo real.
Basicamente o sistema trabalha com interação via
mouse, e ainda trabalha algumas interações pré-definidas. As
figuras 6 e 7 a seguir mostram parte do ambiente virtual.
lateral da criança, também foi possível observar que a RV
está sendo cada vez mais abrangida para diversas áreas do
conhecimento humano, fazendo com que o “imaginário” se
torne “real”.
Como trabalho futuro, pretende-se avaliar
tecnicamente e formalmente o software, aperfeiçoar o
ambiente utilizando as técnicas de realidade aumentada, já
que sentindo-se dentro do ambiente, a criança poderá
trabalhar melhor os seus sentidos e também a sua
lateralidade.
6. REFERÊNCIAS BIBLIOGRÁFICAS
Fig. 6. Demonstração de parte do ambiente virtual
Fig. 7. Demonstração interna do ambiente virtual
O software foi aplicado a crianças, auxiliadas por
professores, os quais também avaliaram o software
positivamente.
5. AVALIAÇÕES, RESULTADOS E CONCLUSÕES
5.1 AVALIAÇÃO E RESULTADOS
O sistema foi apresentado a um grupo de crianças,
de faixa etária de 4 a 6 anos de idade, idade que a criança
começa a freqüentar a escola, teve acompanhamento de
profissionais da área de educação física, que trabalham de
forma convencional a lateralidade na criança.
Foi explicado, detalhadamente, tanto aos
professores quanto as crianças o funcionamento do software
e como utilizá-lo.
Informalmente, os professores presentes durante a
avaliação aprovaram o trabalho dizendo que atenderia aos
objetivos propostos inicialmente, que seria trabalhar a
lateralidade e os sentidos da criança, e também sugeriram a
inserção de matérias educativas, para auxiliar o dia-a-dia da
criança.
5.2 CONCLUSÕES
Durante o desenvolvimento do projeto, constatou-se
a pouca existência de softwares educacionais em Realidade
Virtual (RV) que trabalha com o senso motor e o senso
[1] CARDOSO, Alexandre; LAMOUNIER JR, Edgard.
Realidade Virtual – Uma Abordagem Prática.
Minicursos – VII Simposium on Virtual Reality – São
Paulo, 2004.
[2] FARIA, Anália Rodrigues de. O pensamento e a
linguagem da criança Segundo Piaget. 2 ed. São Paulo:
Ática, 1994.
[3] KISHIMOTO, T.M. (Org.). Jogo, brinquedo, brincadeira
e a educação. 4 ed. São Paulo: Cortez, 2000.
[4] TEIXEIRA, Adriano Canabarro e BRADÃO, Edemilson
Jorge Ramos. Software educacional: o difícil começo;
CINTED-UFRGS; v.1 nº1; fevereiro de 2003. disponível
em:
http://www.cinted.ufrgs.br/renote/fev2003/artigos/adrian
o_software.pdf. acesso em 19/03/2007.
[5] FARIA, Alcídia Magalhães. Lateralidade: implicações
no desenvolvimento infantil. 1º ed. Rio de Janeiro:
Sprint 2001.
[6] KIRNER, C. ; FERRAZ, N. L. . Desenvolvimento de
versões educativas do livro interativo com realidade
aumentada. In: III Workshop de Realidade Aumentada,
2006, Rio de Janeiro. Anais do III Workshop de
Realidade Aumentada. Porto Alegre : SBC, 2006. v. 1. p.
73-76.
[7] LIRA, R. P. ; SANTOS, M. S. ; DINIZ, J. R. B. ;
SANTOS, F. L. . Utilizando a Cidade Virtual do Saber
como uma Ferramenta de Aprendizagem. In: Simpósio
Brasileiro de Informática na Educação, 2003, Rio de
Janeiro. Anais do XIV Simpósio Brasileiro de
Informática na Educação, 2003..
[8] ARAUJO, J. C. ; RIBEIRO, M. W. S. ; SILVA, W. A. .
Realidade Virtual como Apoio ao Ensino do Movimento
Harmônico Simples na Física. In: II Workshop de
Aplicações em Realidade Virtual, 2006, recife-pe. Anais
do II Workshop de Aplicações em Realidade Virtual,
2006.
[9] HASSAN, Elizangela Bastos. Laboratório Virtual 3D
para ensino de Redes de Computadores. SBIE 2003.
Disponível
em:
<http://www.nce.ufrj.br/sbie2003/publicacoes/paper68.p
df>. Acesso em: 05/06/07, 18h20min.
[10] TORI, Romero, KIRNER, Cláudio & SISCOUTTO
Robson. Fundamentos e Tecnologia de Realidade Virtual
e Aumentada. Porto Alegre, SBC: 2006
IMPLEMENTAÇÃO DE UM PROTÓTIPO DE JOGO 3D DE COMPUTADOR
COM A BIBLIOTECA GLSCENE PARA PLATAFORMA LINUX
Wandeir Tavares Ferreira Júnior1, Alanderlon Barbosa de Oliveira1,
José Barbosa Dias Júnior1, Eduardo Filgueiras Damasceno2
1
Universidade de Rio Verde – FESURV, Fazenda Fontes do Saber - Campus Universitário – Bloco 01, CEP 75900-000
Rio Verde – GO, Brasil
2
CEFET – Rio Verde – Rodovia Sul Goiana – Km 01, CP.66, CEP 75901-970
Rio Verde – GO, Brasil
e-mail: wandeirjr@gmail.com; alanderlon@gmail.com; juniorddos@yahoo.com.br; edamasceno@cefetrv.edu.br
Resumo - Este artigo tem como finalidade apresentar um
protótipo de jogo 3D de computador desenvolvido para o
Sistema Operacional Linux com base no processo de
desenvolvimento
prototipado
pela
ferramenta
de
desenvolvimento rápido e de livre dominio.
Palavras-Chave – Jogos 3D, Linux, Lazarus, GLScene.
Abstract – This paper has as purpose to present a game
archetype on the basis of 3D of computer developed for the
Operational system Linux the process of prototip
development rapid and for the tool of free domain.
Key words – Games 3D, Linux, Lazarus, GLScene.
1.
INTRODUÇÃO
Mesmo com o crescimento da popularidade do Linux nos
últimos anos, uma característica que ainda deixa a desejar é o
desenvolvimento de jogos.
Atualmente existem pouquíssimos jogos para a
plataforma Linux, se comparado á imensa quantidade de
jogos desenvolvidos para Windows. Esta quantidade se torna
ainda menor quando se trata de jogos tridimensionais (3D), e
isto acaba gerando um dos principais motivos de reclamações
dos usuários, mesmo não sendo um problema do sistema,
pois é bem estruturado para suportar jogos de alto
processamento, que exigem do hardware alto desempenho
gráfico.
A maioria dos jogos deste Sistema Operacional (SO) são
recriações de jogos da plataforma Windows, como por
exemplo: paciência, sokoban e outros, a maioria destes jogos
são de visualização bidimensional (2D), que por causa de sua
baixa jogabilidade tiveram uma forte queda nos últimos anos.
Alguns famosos jogos em 3D do Windows que fizeram
sucesso no passado foram recriados, sendo Doom o primeiro
jogo desenvolvido dessa maneira. Desde então algumas
empresas como a ID Software começaram a notar que é uma
excelente plataforma para jogos, lançando Quake 3 Arena em
versões para Windows e Linux ao mesmo tempo. [1]
Em conseqüência deste desinteresse, os jogos acabam
ficando sob responsabilidade dos pequenos desenvolvedores
que desistem de seus projetos, desmotivados pela falta de
suporte, pouca disponibilidade de tempo, dificuldades com
bibliotecas 3d e arte final, tais como modelagem dos
personagens, movimentação, modelagem do cenário, criação
das texturas e etc.
Estes fatores são os principais responsáveis pela não
conclusão da maioria dos projetos de jogos.
A tabela 1 mostra características de alguns jogos
encontrados em desenvolvimento para o Linux, juntamente
com o seu ambiente (2D ou 3D), sua linguagem de
desenvolvimento, a biblioteca utilizada e o ano de início e
término do desenvolvimento.
TABELA I
Jogos no Linux
Jogo
Ambiente
Linguagem
Biblioteca
Flight
Gear
Racer
Lbreakout
2
BZflag
3D
C/C ++
OpenGl/Pib
Inicio/
Termino
1996/2007*
3D
2D
C/C ++
C/C ++
OpenGl
SDL
2000/2007*
2000/2007*
3D
C/C ++
1993/2002
2D
JAVA
CVS/
OpenGL
XadrA Java
Fortress
1987/ 2003*
2D
C/C ++
SDL
1 mês
Cosmic
Ecounter
Online
Njam
*Jogos não concluidos
A partir da tabela 1, percebe-se que o
desenvolvimento de um jogo para Linux demanda muito
tempo, assim, espera-se da ferramenta Lazarus, uma
ferramenta R.A.D. (Rapid application development) onde
pode-se criar janelas e colocar vários componentes diferentes
de acordo com a ocasião, uma diminuição no tempo de
programação, reduzindo o tempo de criação do jogo. Além
de proporcionar execução do jogo criado em diferentes SO’s,
sendo possível recompilá-lo em um sistema diferente, sem
perca nenhuma, devido ao fato de que o código fonte é o
mesmo independente do sistema operacional.
Nesta pesquisa verificou-se que 60% dos jogos
desenvolvidos para o Linux utilizam a linguagem C/C++,
25% utilizam Phyton, 10% Java e 5% Pascal, como ilustrado
na figura 2. Uma boa parte dos jogos para Linux utilizam
como biblioteca o OpenGL. E mesmo com o crescimento do
interesse de usuários pela biblioteca GLScene para
desenvolvimento dos jogos para Windows, não foram
encontrados jogos para Linux com a biblioteca.
Figura 2 – Gráfico jogos no Linux
2. TRABALHOS RELACIONADOS
Neste item são apresentados alguns jogos criados com
GLScene em conjunto com o Delphi e feitos apenas para o
S.O.Windows, versões (95/ 98/ NT/ 2000/ XP/03/VI).
Burgers Rush (figura 1.A) é um projeto de Luiz Eduardo
Faraco Morais, teve inicio em Março e término em Junho de
2004. Este foi o primeiro jogo criado por ele com o Delphi
mais a biblioteca Glscene. Burgers Rush é um remake do
“Pressure Cooker” do Atari. [2]
E o projeto Xing (figura 1.B) é um jogo 3D on-line,
desenvolvido no pela TILT no Brasil com a biblioteca 3D
GLScene e a plataforma Delphi. Encontra-se na sua versão
0.2 para teste alfa 1, sendo necessário Direct-X, placa 3D e
um navegador. [3]
Outro jogo criado pela TILT, o Projeto Nave (figura 1.C)
usa as ferramentas GLScene para os gráficos 3d e a
biblioteca ODE (Open Dynamics Engine) para cálculo de
colisão e física, além do Delphi. [3]
WAtomic (figura 1.D) é um clone do jogo de lógica e
Química do Linux “Katomic”desenvolvido usando a
biblioteca baseada OpenGl de GLScene para Delphi [4].
Existem outros bons jogos criados com a biblioteca
GLScene em conjunto com o Delphi, porém todos para o
S.O.Windows, uma solução para criação de jogos no linux
com a biblioteca seria o uso do Lazarus.
Figura 1.A - Burgers Rush
Figura 1.C - Projeto Nave
Figura 1.B - Xingu
Figura 1.D - WAtomic
Figura 1 – Jogos no Windows
3. MATERIAIS E METODOS
3.1. Ferramentas disponíveis para programação de jogos
De acordo com SEBESTA (2003), os fatores que
caracterizam uma boa linguagem de programação são:
Sua sintaxe e semântica bem definida;
Que esta seja implementável (executável) com eficiência;
Que através dela seja possível expressar todo o problema
computacional;
Que seja natural para expressar soluções de problemas;
De fácil aprendizado, leitura e escrita do código e
manutenção;
Determinação do custo final do usuário e proprietário. [5]
Fatores nos quais o Lazarus juntamente com a biblioteca
GLScene se enquadram para o desenvolvimento do projeto.
RAD
(Rapid
Application
Development,
ou
Desenvolvimento Rápido de Aplicações) vem sendo muito
utilizada em produtos comerciais de desenvolvimento de
aplicações, pois possibilita gerar o código numa linguagem
orientada à objetos, permitindo o reuso de componentes. [6]
Este método é uma boa opção para o desenvolvimento de
projetos com curto prazo, envolvendo o uso de prototipagem
extensiva e ferramentas de desenvolvimento de alto nível,
pois garante a qualidade dos produtos gerados. [7]
3.2. Ferramentas utilizadas no desenvolvimento do jogo
(Mr.Z)
A seguir veremos os softwares usados na construção do
jogo, incluindo a biblioteca, programas para modelagens 3D,
e ferramentas utilizadas para a programação do jogo, sendo
todas as ferramentas escolhidas por um diferencial, todas as
ferramentas usadas são de livre domínio.
Lazarus é um R.A.D, similar ao Delphi, funciona em
Windows, BSDs, MacOS X e Linux. Sua interface de
desenvolvimento é semelhante a do Delphi, contém editores
de textos com o seletor/navegador de funções ou sub-rotinas,
visualizador de propriedades de componentes, sua janela
principal contém um navegador do projeto e a janela de
formulário. Seu ambiente é estável e rico, para programar a
criação de aplicações gráficas e de console. [8]
Sua versão para o Linux exige apenas três RPMs para a
distribuição RedHat: fpc (Free Pascal Compiler), fpcsrc
(fonte para recompilar o Free Pascal), e lazarus (RAD),
suporta também o GLScene. Como se trata de um RAD
possibilitará um processo de desenvolvimento do jogo
rápido. [9]
O Glscene é uma biblioteca Open-Source, licenciada pela
Mozilla Public License, que possui uma grande quantidade
de componentes visuais que permitem a descrição de objetos
e renderização de cenas em três dimensões, capaz de
manipular diversos formatos de imagens e objetos.
Possui programação orientada a objetos, no qual utiliza
conjuntos de classes para criação do ambiente genérico 3D,
aliados a tecnologia RAD. [10]
O Blender é um conjunto de ferramentas para modelagem,
animações, renderizações, pós produções e criações de
games tridimensionais (3D), possui recursos compatíveis
com os softwares proprietários Maya, Rhinoceros e 3D
Studio, porém gratuito e possui código aberto. O Blender
possui um motor de jogos 3D integrado com características
interativas como detecção de colisão, recriações dinâmicas e
lógicas. [11]
3.3.Arquitetura
Neste capítulo mostrará um resumo sobre a arquitetura do
jogo, a modelagem UML dos personagens e uma
apresentação dos componentes do GLScene usados na
criação do jogo, como tratamento de colisão, navegação,
cronômetro, reprodução de áudio e outros.
Como o nome sugere, este artigo apresenta apenas uma
proposta para o desenvolvimento de um protótipo de jogo 3D
para Linux. Os recursos do Lazarus e da biblioteca GLScene
já estão sendo analisados nos S.O’s Windows e Linux.
Foram encontrado um grande número de jogos
desenvolvidos com o Delphi para o Windows.
Pelo contrário, não foram encontrados jogos usando as
ferramentas Lazarus e GLScene para plataforma Linux.
Mesmo sabendo que é possível criar bons jogos com a
biblioteca GLScene e que o Lazarus possui recursos
semelhantes aos do Delphi.
com o qual cria uma esfeta invisível ao redor do avatar; b)
Checking Point Intersection, com o objeto cbmPoint que
avalia se um ponto da estrutura do avatar tocou em outro
objeto virtual. c) cbmEllipsoid a definição também é pela
espessura, porém da elipsóide do eixo alinhado. d) O
cbmCube é definido pela espessura do "cubo" e o cbmFaces:
é definido pelas faces do objeto, neste caso e necessário o
suporte ao nível do objeto. [12]
3.4.3.Navegação
3.4.1.Arquitetura do jogo e modelagem UML dos
personagens.
A figura 2 ilustra um dos personagens do jogo ligado ao
grupo de detetives grupo do bem, a classe avatar é a mesma
para todos os outros personagens do jogo.
Nas propriedades estão relacionados ID, textura e o Tipo.
ID faz relação com a identificação (nome) do personagem,
Mr. Z, Cyber’s (Red, Blue, Green, Yellow, Black) e Bazuka.
A textura que quase sempre muda de personagem para
personagem, na maioria das vezes são geradas a partir de
imagens .jpg com a ajuda de algum software de edição de
imagens (Gimp) ou texturas encontradas na internet, outras
vezes a texturização dos personagens fica por conta dos
próprios recursos do Blender.
O tipo faz relação com outra classe e refere-se a que
categoria este personagem faz relação, ou seja, detetives ou
bandido, o único bandido do jogo é o Mr. Z.
O componente TGLNavigator é responsável por
movimentar um TGLBaseSceneObject, juntamente com todas
os objetos do Editor de Cena (Scene Editor).
Para a navegação do personagem no cenário são utilizadas
as chamadas: TurnHorisontal para movimentação na
horizontal, esquerda e direita. TurnVertical para
movimentação na vertical, para cima e para baixo e
MoveForward para movimentar-se de um lado para outro.
[12]
3.4.5.Visualização, Cronômetro e Reprodução de áudio
Duas câmeras são responsáveis pela visualização do
cenário, sendo acionadas através das teclas F7 e F8. Com F7
a câmera 1 aciona a visualização 3ª pessoa (fig.4.A) e F8 a
câmera 2 aciona em 1ª pessoa (fig.4.B).
Fig.4.A - Visualização 3ª pessoa
Fig.2- Personagem Cyber Red e sua classe UML
Os Métodos dos personagens são abaixar, segurar, andar,
atirar, correr e pular.
A interface do jogo é composta dos menus, botões, opções
e controles; o tratador de eventos que serão acionados pelo
jogador; gerenciador de dados (gráficos e fases); gerenciador
de física, responsável pelos movimentos, colisão, velocidade,
gravidade e etc.; a engine gráfica responsável pela exibição
das imagens, efeitos especiais, rotação dos personagens e
cenário e etc.; engine sonoro dos efeitos sonoros do jogo; a
engine lógica responsável por toda parte lógica do jogo;
camadas de abstração de hardware que envolve os sons,
interfaces com gráficos e entradas do hardware; o sistema de
configuração que envolve opções de alterações e salvamento
do jogo; sistema de menus e músicas. [15]
3.4.2.Tratamento de colisão
Para colisão existe um componente da biblioteca GLScene
chamado CollisionManager, que possui os seguintes
tratamentos de colisão, usando uma abastração dos
algoritmos de: a) Bounding Box, com o objeto cmbSphere
Fig.4.B - Visualização 1ª pessoa
O AsyncTimer é o componente usado como cronômetro
assíncrono, sua resolução costuma ser de 1 ms, podendo
variar de acordo com a CPU utilizada. [17] Componente de
grande importância no jogo pois os recordes faz referência ao
menor tempo de captura do vilão Mr. Z.
A renderização das cenas 3D obtém recursos de som, para
reprodução de áudio 3D em um nível baixo, que são as API´s
BASS e FMOD, entre outras ferramentas como streams,
música MOD, e funções de gravação. [13]
3.4.6.Carregamento de arquivo do ambiente e textura
Como citado anteriormente o software usado para
modelagem 3D do cenário e dos personagens foi o Blender,
porém poderia ser o 3D Studio Max, Maya, LightWave,
Cinema Studio 4D entre outros softwares de modelagem
tridimensional.
A escolha do Blender foi baseada nas características de ser
um software livre, funcionar no Linux e no Windows e
aceitar vários formatos para exportação.
O formato escolhido para os personagens e também para o
cenário modelado foi o 3DS, original do 3D Studio este é um
formato padrão para geração de imagens tridimensionais e
um dos formatos de objetos estáticos aceitos pelo GLScene,
que permitem animações, suavização da imagem importada,
recursos como cálculo vetorial automático e importação de
texturas. Outros formatos aceitos pelo GLScene são , 3DS
OBJ/OBJF, SMD, MD2, STL, PLY e TI. [3] [12]
Os objetos são exportados para o formato 3ds no próprio
Blender sem as texturas, que devem ser adicionadas no
próprio GLScene.
O GLScene prepara o cenário automaticamente, dando
realces e suavizações aos objetos. [14]
4.
STATUS DO PROJETO
Atualmente o projeto encontra-se em fase de estudo das
funcionalidades do GLScene, tanto em questão de áudio,
tratamento de colisão, texturização entre outros fatores.
O jogo já esta sendo desenvolvido, e atualmente já possui
o personagem Cyber Red, interagindo pelo cenário faroeste.
O cenário possui hotéis, prisões, restaurantes, bancos bem ao
estilo faroeste, além de cactos, árvores, pedras e demais
objetos para enriquecer a cena. Porém todas possuem apenas
uma textura como padrão até o presente momento.
Também já é possível navegar entre as visualizações em
1ª e 3ª pessoa.
http://sourceforge.net/projects/watomic>. Acesso em 07 de
Jun.2007
[5] CAMARA, Leandro Ledel. Curso de paradigmas de
linguagem de programação, [S.I]: Unicamp
<http://www.dca.fee.unicamp.br/~leandro/paradigmasLP/aul
as_turmaA.html>. Acesso em: 31 Ago.2007
[6] ANDRÉ, Fabrício Rubin. Uma Metodologia de Projeto
Orientado a Objetos com Vistas à Reutilização, [S.I]:
Ufrgs.<http://www.inf.ufrgs.br/pos/SemanaAcademica/Sema
na98/fabricio.html>. Acesso em: 31 Ago.2007
[7] ROMA, Paulo Cavalcanti. Ambientes R.A.D para
Linux, [S.I]: Impar.<http://w3.impa.br/~roma/RAD.html>.
Acesso em: 24 de mar. 2007
em: 27 Ago.2007
[8] DOMINGUES, Rodrigues. Ambientes de
desenvolvimento e ferramentas para construção e
migração de aplicações, Disponível em:
<https://www.linuxmagazine.com.br/issue/12/LM12_61-
5.
TRABALHOS FUTUROS
66.pdf> Acesso em: 13 de Mar. 2007.
Como trabalhos futuros pretende-se melhorar a classe
avatar para implementar todos os métodos da UML.
Corrigir e estudar os métodos para texturização dos
personagens e do cenário, com o objetivo de dividir uma
textura para vários objetos do cenário.
Criar novos níveis e fases do jogo e acesso multiplayer
para que dois ou mais jogadores possam participar de uma
mesma partida simultaneamente criando assim um nível
maior de interação com o jogador.
Estudar questões de áudio e tratamento de colisão
acrescentando estas funcionalidades ao jogo.
Melhorar a qualidade gráfica, e atribuir novos
personagens, com diferentes atitudes e comportamentos,
obtendo consequentemente uma melhoria no enredo do jogo.
Estudar técnicas de Inteligência Artificial (I.A.) para
programar-las no jogo caso o usuário prefira a situação
homem versus máquina.
Incluir menus e opções de configuração para que o usuário
possa ativar, modificar e transformar o jogo de acordo com
suas vontades.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] PARRA, Domingos Novo. Diversão à vista, [S.I.]: uesc:
<http://labbi.uesc.br/labbi/apostilas/revista_do_linux/001/jog
os.html> Acesso em: 24 de mar. 2007
[2] EDUARDO, Luiz. Projetos ArcadiumPlayware , [S.I.]:
Arcadiumplayware.
Disponível
em:
<http://www.arcadiumplayware.com/BurguersRush_prt.html
>,Acesso em 05 de Jun.2007
[3]
TITL.
TITL
Online,
[S.I.]:
TILT
<
http://www.clubtilt.net/nave/index.htm>. Acesso em 07 de
Jun.2007
[4] WATOMIC.
Sourceforge.
WAtomico SourceForge
Disponível
,
[SI]:
em:<
[9] ROMA, Paulo Cavalcanti. Ambientes R.A.D para
Linux,
Disponível
em:
<http://w3.impa.br/~roma/RAD.html>.
Acesso em: 24 de mar. 2007.
[10] RIEDER, Rafael; DUÍLIO, Gabriel, MATTÉ, Douglas.
GLScene
OpenGL
solution
for
Delphi.<
http://www.dimap.ufrn.br/~gvrv/WRJogos_2003/tutorial/Tut
orial%20GLScene.pdf>
[11] BASTOS, Luís. Blender. [S.I]: Programas Livres.
< http://www.programaslivres.net/blog/?p=65>. Acesso em:
30 Ago.2007
[12] MCKLIM, Rhems. Introdução ao GLScene, [S.I]:
Unidev<http://www.unidev.com.br/artigos/introtoglscene000
.asp?id=453>. Acesso em: 31 Ago.2007
[13] GARCIA, Gabriel. Introdução ao GLScene,
[S.I]:Unidev<http://www.unidev.com.br/artigos/glsceneartud
000.asp?id=435>. Acesso em: 24 de mar. 2007
[14] RIEDER, Rafael; DUÍLIO, Gabriel. Development of a
micro world for the education of the Fundamental
Mathematics, using OpenGL and Delphi,
[S.I]:Ribie.<http://lsm.dei.uc.pt/ribie/docfiles/txt2003326201
022A038.pdf>. Acesso em: 04 de Set. 2007
[15] AZEVEDO, Eduardo. Desenvolvimento de Jogos 3D e
Aplicações em Realidade Virtual, Editora Campus.
REALIDADE AUMENTADA APLICADA À ARQUITETURA E URBANISMO
Rodrigo Rosa Amim1, Luiz Landau1, Gerson Gomes Cunha1
1
COPPE– Universidade Federal do Rio de Janeiro (UFRJ)
rodrigoamim@yahoo.com.br, landau@lamce.ufrj.br, gerson@lamce.coppe.ufrj.br
Resumo - Esse documento procura despertar estudantes e
profissionais para a disponibilidade da Realidade
Aumentada como ferramenta a ser utilizada desde a etapa
de criação até a construção de projetos arquitetônicos e
outras edificações. O trabalho aponta possibilidades,
apresenta as potencialidades e verifica o quanto essa
tecnologia poderá modificar os processos produtivos da
construção civil. Através do Estado da Arte das aplicações
de Realidade Aumentada na Arquitetura e no Urbanismo,
fornecemos uma importante fonte de pesquisa e apoio aos
interessados no assunto.
Palavras-Chave – Realidade Aumentada, Arquitetura e
Urbanismo, Arquitetura digital.
Abstract - This document aims to show to students and
professionals, the disponibility of Augmented Reality as an
useful and powerful tool that can be used from the creation
till the construction of architectural projects and other
edifications. The work points possibilities, show the
potencialities and verify how this technology can change the
production processes of building. Through the State of Art
of Augmented Reality applications in Architecture an
Urbanism, we offer an important source for research and
support for the ones interested in the subject.
Keywords – Augmented Reality, Architecture and Urbanism,
Digital Architecture.
ordinários do cotidiano e depois realçar ou aumentá-los com
funcionalidades vindas do computador.
(a)
(b)
(c)
Figura 1 – Dispositivos de interface: (a) anexado à cabeça –
videocapacete; (b) portátil – palm top; (c) espacial – desktop.
Ao contrário, do ambiente sintético trabalhado na RV, o
mundo da RA, real, deve ser confinado às leis físicas. Ao
invés de olhar os dois conceitos simplesmente como
antíteses, é mais conveniente vê-los como limites opostos de
um continuum. Milgram [2] descreve uma taxonomia que
identifica como RA e RV estão relacionadas. Ele define
Reality -Virtuality Continuum como na figura abaixo:
Figura 2 – Continuum Realidade-Virtualidade de Milgram
1. A REALIDADE AUMENTADA
2. ARQUITETURA NA ERA DIGITAL
RA é área da Realidade Mista (RM) que lida com a adição
de elementos virtuais (gerados por computador) ao ambiente
real (relativo ao mundo físico, no qual os usuários do sistema
vivem) em tempo real, num mesmo meio.
Podemos destacar três características principais dos
sistemas de RA [1]:
Combinação do real e do virtual: o ambiente real como
cenário. Cenas ou objetos virtuais aumentando sua aparência;
Interações em tempo real: ações e reações imediatas;
Registros tridimensionais: perfeita combinação do físico
com o sintético (alinhados com auxílio de traçadores de
posição - magnéticos, óticos, GPS e outros) .
O objetivo da RA é aumentar a percepção do usuário
sobre o mundo real e também ajudar às pessoas a obter
informações invisíveis do entorno. RA traz o mundo virtual
dos computadores para o ambiente físico das atividades
diárias humanas através de diversos dispositivos de interface
(ver exemplos, figura 1). Isso inclui aspectos da comunicação
natural que servem de mediadores de entendimento mútuo:
contato dos olhos, linguagem corporal e manuseio de objetos
físicos. Permite aos usuários continuarem a usar objetos
A convergência da representação e da produção baseadas
em dados, representa a mais importante oportunidade para a
profunda transformação da arquitetura.
Muito do mundo material hoje, desde um simples produto
de consumo até o mais sofisticado avião, é criado e
produzido usando um processo no qual projeto, análise,
representação, fabricação e montagem têm se transformado
em processos colaborativos, que dependem de tecnologias
digitais – um Continuum Digital do projeto à construção.
Este Continuum é aplicado agora também à arquitetura e tem
como edificação de referência / marco, o Guggenheim de
Bilbao, do arquiteto Frank Gehry.
O uso de programas de modelagem digital (3D) e
animação (4D) também abriu novos territórios de exploração
formal na arquitetura, onde modelos de edificações gerados
digitalmente não são projetados de maneira convencional.
São criadas novas formas em processos generativos baseados
em conceitos como: espaço topológico, superfícies
isomórficas, sistemas dinâmicos, desenho paramétrico e
outros (exemplos, figura 3 e 4).
Figura 3. Arq. Topológica - Villa Nurbs. Hotel em Barcelona. Enric
Ruiz Geli
(a)
(b)
Figura 4. Arq Isomórfica - (a) Quadros do processo criativo
(Blobs) do pavilhão BMW Pavilion de Bernhard Franken (2005) –
Arquitetura Isomórfica. (b) O Pavilhão construído.
ensino, projeto de interiores, construção, urbanismo
e outros;
3. Autor(es): autor ou autores do projeto;
4. Instituição(ões): instituição que o projeto está
vinculado;
5. Ano: ano em que o artigo foi publicado ou que o
projeto foi aplicado ( deve-se levar em consideração
que as datas correspondem aos últimos arquivos
acessíveis de cada caso) ;
6. Fonte: origem da pesquisa
7. Contato: site ou endereço eletrônico para maiores
informações e/ou contato;
8. Dispositivo de Interface: qual(is) o(s) dispositivo(s)
usado(s) – baseado em monitor (desktop, tablet PC,
palmtop), em projeção, vídeocapacete ou óculos
translúcido, etc;
9. Descrição Resumida do Projeto: a descrição
propriamente dita;
10. Observações: algum destaque, caso necessário
11. Trabalhos
Futuros:
complemento,
quando
mencionado pelo(s) autor(es)
12. Imagens: ilustrações do projeto
A Realidade Aumentada, como ferramenta de
visualização, contribui para o fluxo do Continuum Digital.
Sendo assim, além de ela estar inserida em processos
tradicionais da arquitetura, ela faz parte de um novo processo
fluido que engloba todas as fases de produção desde a
concepção à construção de edificações.
3. ESTADO DA ARTE
A utilização de novas tecnologias, como a RA, pelo
profissional e pelo estudantede arquitetura e outras áreas
afins, poderá detonar mais dinâmica e fluidez entre todas as
partes envolvidas, desde o momento criativo do projeto,
simulações e análises, passando pelo desenvolvimento e
representação do mesmo, à fabricação dos componentes,
indo até o canteiro de obras, na execução do edifício.
Com esta pesquisa, confirmamos que a RA já vem sendo
aplicada e estudada em diversos campos, como em Projetos
de Interior – projeto “Being There” da Universidade da
Carolina do Norte (figura 5); na Construção de Edificações –
“ARC” da Universidade Columbia (figura 6); em
Planejamentos Urbanos – “Benchworks” da Universidade de
Hong Kong (figura 7); Paisagismo – “Illuminating Clay” do
MIT Media Laboratory, em Cambridgem; Restauração –
“Cooling Factory” da Universidade de Weimar ; e Ensino –
“Construct 3D” da Universidade de Tecnologia de Viena. No
total, foram estudados 23 casos, em todas essas áreas.
Foram pesquisados livros, websites, laboratórios nacionais
e internacionais. Através da catalogação dos projetos, pôdese vislumbrar o Estado da Arte dessa ferramenta aplicada à
Arquitetura e Urbanismo. Para facilitar a organização do
conteúdo e o entendimento do leitor, fizemos uma ficha
modelo para todos os casos, com os seguintes itens:
1.
2.
Título /nome do projeto: título dos artigos estudados
ou nome dos projetos;
Área(s) Aplicada(s): dentro do domínio da
arquitetura onde estão inseridos tais projetos - no
Figura 5. “Being There” - usuário interagindo com o ambiente
virtual: usando spray para pintar uma janela que não existe
fisicamente.
(a)
(b)
(c)
Figura 6. “ARC” - (a) O óculos translúcido com o traçador de
posição ultrasônico. (b) Visão aumentada com instruções. (c)
Instalando a estrutura.
maioria dos projetos pesquisados aqui encontra-se em
desenvolvimento e aperfeiçoamento. Muitos ainda estão em
fase de protótipo. Isso é gerado por alguns fatores como por
exemplo: dificuldades no registro das posições das câmeras
(gráfica e vídeo) e a utilização gráficos simples, devido à má
otimização dos modelos digitais.
Através desta compilação, comprovamos o quanto essa
ferramenta demonstra possibilidades e usos que vieram para
Figura 7. “Benchworks” - O usuário está arrastando um modelo
virtual, através de uma ferramenta que traça a posição do objeto.
5. CONCLUSÕES
A maioria dos casos estudados são projetos em
desenvolvimento dentro de Universidades. As aplicações
ainda não estão maduras, devido a problemas de base. A
complementar e auxiliar as novas formas de criação e
produção da arquitetura, que emergiram na Era Digital.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] Azuma, R. SIGGRAPH '95: A Survey of Augmented
Reality. LA, ACM, 1995.
[2] Milgram et al. “Augmented Reality: A class of displays
on the reality –vituality continuum.” in SPIE Vol. 2351,
Telemanipulator and Telepresence Technologies, 1994.
(c) Copyright, p. 1, 1994.
REALIDADE VIRTUAL APLICADA À EDUCAÇÃO NO ENSINO DE
GEOMETRIA ESPACIAL
Murilo Borges de Oliveira1, Wender Antônio da Silva1, Edgard Afonso Lamounier Júnior2, Nadabe
Cardoso de Oliveira Alves Fortes1, Luciano Vieira de Lima2, Marcos Wagner de Souza Ribeiro1
1 - Grupo de Realidade Virtual de Goiás – GRVG - Instituto Luterano de Ensino Superior de Itumbiara, GO
2 - Grupo de Realidade Virtual – GRV – Laboratório de Computação Gráfica – Universidade Federal de Uberlândia, MG
mourilo@gmail.com, wender_silva@yahoo.com.br, lamounier@ufu.br, nadabef@gmail.com,
luciano.vieira.lima@terra.com.br, marcos_wagner@yahoo.com.br
Resumo - Este artigo apresenta o desenvolvimento de uma
ferramenta em Realidade Virtual não imersiva, para o
auxílio do ensino de Geometria Espacial, sendo
incorporada há um modelo de aula via web. Tem-se como
estudo de caso a geometria espacial, visto a dificuldade de
interação e visualização que os alunos apresentam no
modelo de aula tradicional. Desta forma, apresenta uma
ferramenta fácil e interativa, onde é demonstrado os objetos
virtuais geométricos suas linhas, transparências, vértices,
arestas e diagonais, assim como disponibilizará juntamente
com os objetos suas definições, conceitos, história e
fórmulas.
Com essa dificuldade encontrada nos métodos de ensino
tradicionais, a informática proporciona ao professor de um
conteúdo de uma disciplina curricular ter conhecimento
sobre os potenciais educacionais do computador e ser capaz
de alternar adequadamente atividades tradicionais de ensinoaprendizagem e atividades que usam o computador. No
entanto, a atividade de uso do computador pode ser feita
tanto para continuar transmitindo a informação para o aluno
e, portanto, para reforçar o processo instrucionista, quanto
para criar condições para o aluno construir seu conhecimento
por meio da criação de ambientes de aprendizagem e
facilitando o desenvolvimento dos conteúdos.
Palavras Chave – Geometria espacial, ensino/aprendizagem,
realidade virtual, Mapas Conceituais
1.1.Realidade Virtual
Abstract – This article presents the development of a tool in
not imersiva Virtual Reality, for the aid of the education of
Space Geometry, being incorporated has a lesson model saw
web. Space geometry is had as case study, seen the difficulty
of interaction and visualization that the pupils present in the
model of traditional lesson. In such a way, it presents an
easy and interactive tool, where it is demonstrated to the
geometric virtual objects its lines, transparencies, vertices,
edges and diagonal lines, as well as it will together
disponibilizará with objects its definitions, concepts, history
and formulas.
Keywords - Space geometry, geometry, education/learning,
virtual reality, Conceptual maps.
1. INTRODUÇÃO
A educação pode ser tratada como um processo de
descoberta, de observação, de exploração e de construção do
conhecimento. No processo de ensino-aprendizagem tem-se
constatado dificuldades de aprendizado em conteúdos onde
não é possível presenciar o processo da forma que o mesmo
acontece. Nesses casos cabe ao professor usar recursos que
permitam ao aluno conhecer algo abstrato e perceber sua
ligação com o real. Os métodos de ensinos tradicionais
baseados em quadro negro e aulas dialogadas podem tornar
esse processo cansativo e desmotivar os alunos causando
falhas no processo de ensino-aprendizagem.
Realidade Virtual é uma interface avançada para
aplicações computacionais, onde o usuário pode navegar e
interagir, em tempo real, em um ambiente tridimensional
gerador por computador, usando ou não dispositivos
multisensoriais [3].
A Realidade Virtual pode ser usada para materializar
informações de uma forma mais fácil para pessoas que tem
problemas em assimilar um conteúdo, como por exemplo na
matemática pode-se fazer um aluno "caminhar" sobre uma
superfície que representa uma equação e a partir disto fazê-lo
compreender conceitos como curvatura, ponto de inflexão,
etc..
1.2.Geometria Espacial
A palavra Geometria significa, em grego, medir a terra. Os
agrimensores egípcios (2000 a.C.) recorriam à Geometria
para determinar a área de seus campos e para delimitar suas
terras quando as cheias anuais do Nilo apagavam as marcas
anteriores. [1].
A geometria é um importante ramo da matemática. Ao
estudar-se geometria descobrem-se coisas interessantes e
extraordinárias sobre pontos, retas e planos. Seu estudo inclui
também a determinação de comprimentos, áreas e volumes
de figuras geométricas, ou figuras de formas diversas.
Em Geometria parte-se do pressuposto de que um
determinado conjunto de fatos seja verdadeiro. Mostrando-se
claramente o que quer se dizer com palavras determinadas.
Em seguida, prova-se que centenas de outras afirmações são
verdadeiras. Descobrem-se novas idéias, e prova que as
anteriores são verdadeiras por meio do uso cuidadoso das
regras da lógica.
Usa-se a geometria toda vez que é preciso saber o
tamanho, a forma o volume ou a posição de alguma coisa.
A geometria espacial é o estudo de pontos, retas e planos
no espaço. As figuras geométricas sólidas possuem três
dimensões: comprimento altura e largura. Pode-se calcular
essas dimensões em cones, cubos, cilindros, prismas,
paralelepípedos, pirâmides e esferas. [2]
Poliedros são sólidos geométricos limitado por polígonos
que possuem, dois a dois, um lado comum, onde seus
elementos básicos são face, arestas, vértices e diagonais [4].
atividades educacionais a distância, a fim de melhorar a
qualidade de ensino eliminando distancias físicas e
promovendo a construção do conhecimento de forma
interativa, com auxilio da Realidade Virtual.
Keller [7], em seu trabalho de conclusão de curso “O Uso
da Realidade Virtual no Ensino Presencial e à Distância”
desenvolveu o Projeto GEO-3D, que tem como objetivo
principal acrescentar os recursos da Realidade Virtual como:
visualização em 3D, interação e envolvimento do usuário na
Educação, observe a figura 2 abaixo.
1.3. Mapas conceituais
Os mapas conceituais oferecem aos estudantes uma visão
entre as partes e o todo conceitual, sua proposta de trabalho
fundamenta-se na Psicologia Cognitiva de Ausubel [17],
[18], [19], que estabelece que a aprendizagem ocorre por
assimilação de novos conceitos e proposições na estrutura
cognitiva do aluno. Novas idéias e informações são
aprendidas, à medida que existam pontos de ancoragem.
2. TRABALHOS REALCIONADOS
Existem alguns trabalhos que mostram a Realidade Virtual
mais presente no processo de ensino/aprendizagem não só de
Geometria Espacial mas também em outras áreas do saber.
No caso específico deste estudo de caso existem alguns
trabalhos usando a realidade virtual voltado para o ensino,
mas poucos utilizam em formato de aula.
Mendes [5], em seu artigo “Um Protótipo de Ensino
Virtual Orientado por Modelo Psico-Pedagógico”, descreve
um protótipo de software criado por meio da Realidade
Virtual para o ensino de física cujo conteúdo seria a
Mecânica Clássica, utilizando as linguagens VRML, HTML,
Java Script, sendo desenvolvido com os princípios
construtivistas do ensino/aprendizagem, observe a figura 1
abaixo.
FIG.1 – PROTÓTIPO DE MENDES
Silva [6], em sua dissertação apresentada um trabalho
denominado “Educação a distância em ambientes de
aprendizagem matemática auxiliada pela realidade virtual”,
onde relata que a internet e suas ferramentas possibilita
FIG.2 – PROTÓTIPO DE KELLER
Pacheco[8], em seu trabalho de conclusão de curso “O uso
da Realidade Virtual no processo de ensino/aprendizagem”
desenvolveu um aplicativo de ensino na área da geometria
focado para o estudo das pirâmides, no qual o usuário pode
visualizar a pirâmide em 3d, movimentá-la, abri-la, visualizar
suas linhas e interagir com a mesma.
Outros artigos [9, 10, 11, 12, 13, 14, 15, 16] demonstram
também o poder da utilização de técnicas de Realidade
Virtual como meio motivador na melhoria do processo do
ensino/aprendizagem. Na maioria dos trabalhos, RV é
utilizada para propiciar uma simulação de condições em
muitas vezes apenas imaginada em outras vezes
representada, resultando no envolvimento maior tanto
docente como discente. Analisando esses sistemas, concluise que cada um deles apresenta características peculiares
quanto ao grau de interação do usuário.
3. DESENVOLVIMENTO METODOLÓGICO
Em primeira instância foi realizado um levantamento
bibliográfico dos mapas conceituais e das teorias de
aprendizagens, entendendo mais a fundo os processos
envolvidos no meio pedagógico. E ainda, verificando-se
quais as vertentes de pesquisa sobre o assunto no Brasil e no
mundo.
Posteriormente foi realizada a modelagem dos objetos e a
implementação do protótipo, que são tratados a seguir.
O universo deste trabalho é o ensino da geometria espacial,
desta forma a população a qual se destina o protótipo trata-se
especificamente de alunos do 2º grau.
3.1. Modelagem
Todo o protótipo foi modelado no VRML (Virtual Reality
Modeling Language) por tratar de objetos geométricos e não
precisar de detalhes precisos. Tendo em vista também que
dessa forma o protótipo fica mais “leve” para carregar já que
o aplicativo será disponibilizado também via WEB.
Fez-se necessário a elaboração de mapas conceituais da
geometria para que tornasse mais fácil e educacional para o
aluno a integração com o software já que com isso o mesmo
poderia ir “adentrando” pela disciplina até chegar no assunto
desejado, podendo escolher um assunto independente do
outro, observe a figura 3 abaixo, demonstrando o mapa
conceitual da geometria.
FIG.3 – MAPA CONCEITUAL GEOMETRIA
disponibilização na Internet, pois gera códigos muitos
pequenos, sem contar com o tamanho do arquivo que muitas
vezes é bem pequeno podendo ser acessado facilmente por
qualquer máquina com qualquer velocidade de conexão.
A utilização do JavaScript se fez necessária já que o
aplicativo precisa de intervenção do usuário e uma grande
interação.
Uma página Web foi desenvolvida para que todo esse
aplicativo possa rodar sem nenhum problema e também para
que possa ser disponibilizada a parte teórica sobre cada
objeto já que se trata de um modelo de aula.
4. FUNCIONAMENTO DO SISTEMA
O software consiste em uma página HTML (HyperText
Markup Language), que pode ser visualizada por meio de um
BROWSER de internet.
A página inicial contém um breve texto sobre o propósito
do Ambiente Virtual que é acessado, assim como todas as
instruções para o usuário fazer a instalação do plugin
Cortona (necessário para trabalhar com o ambiente) e um
link para download do mesmo já que este é gratuito assim
como o VRML.
A página é contém também a história da Geometria,
perfazendo a linha do tempo até chegar na Geometria
Espacial que é o nosso objeto de estudo. Possui também uma
parte onde o usuário é instruído para a manipulação do
protótipo e um link para contato.
Dentro do Ambiente Virtual o aluno visualizará o Mapa
Conceitual da Geometria, o qual levará o aluno até o objeto
desejado utilizando apenas o mouse. O mesmo poderá
navegar pelo objeto escolhido por meio das setas do teclado
(⇐,⇑, ⇓, ⇒), e interagir com o mesmo por meio de um
simples clique do mouse em cima do objeto que quer
visualizar.
Pode-se trocar de objeto apenas clicando no link voltar, o
que leva o usuário novamente para o Mapa Conceitual.
Após a escolha do objeto aparecerá na página, ao lado do
ambiente, informações sobre o objeto virtual visualizado, tais
como: sua história, definições e fórmulas. Assim, observe a
figura 3 abaixo, onde é demonstrado parte do software, já
implementado em HTML.
3.2 Implementação
O software foi implementado em RV, utilizando como
ferramenta de apoio o FluxStudio que foi utilizado para dar
movimento aos objetos sem precisar trabalhar tanto com
códigos, ou seja, de uma forma mais fácil e mais rápida.
Usando o recurso que o próprio VRML oferece, pode-se
tratar a questão das transparências, linhas, ângulos arestas,
movimentação dos cortes no objeto e toda a interação.
Arquivos que simulam ambientes tridimensionais em
VRML são, na verdade, uma descrição textual na forma de
textos ASCII, que são interpretados por um plug-in VRML e
visualizados diretamente no navegador de internet [8].
Por ser interpretado o código VRML, tem algumas
vantagens em relação a outras linguagens e bibliotecas.
Funcionar independente da plataforma e do navegador
utilizado é uma imensa vantagem, dependendo apenas da
instalação do plug-in adequado, a facilidade de sua
5. RESULTADOS OBTIDOS
O software foi aplicado a um grupo de alunos do Ensino
Médio, essa aplicação foi acompanhada dos professores da
disciplina. Observando-se a priori uma melhora na
visualização dos objetos geométricos, assim como um
interesse maior por parte dos alunos, já que a aula tornou-se
mais interativa prendendo de forma mais fácil a atenção dos
mesmos de acordo com os professores.
Foi relatado também, por parte dos professores, uma maior
assimilação do conteúdo, devido ao fato de os alunos estarem
visualizando cada parte do objeto separadamente, suas
linhas, vértice e ângulos e qual a ligação entre eles.
Pelo formato da página ser modelo de aula ajudou bastante
os alunos na hora de estudar a disciplina, já que ao mesmo
tempo em que se manipula o objeto a página proporciona
informações sobre ele, o que faz com que o aluno associe as
informações descritas com o objeto.
6. CONCLUSÃO
Os resultados obtidos demonstraram que a Realidade
Virtual pode facilitar consideravelmente o processo de
abstração da geometria por parte dos alunos trabalhando
assim o processo ensino/aprendizagem de forma mais eficaz
e eficiente.
7. TRABALHOS FUTUROS
Fazer novos objetos ligados a outros ramos da Geometria
como a Geometria Plana, Analítica e Não-Euclidiana, são
projetos futuros para esse software.
Formar uma espécie de Livro Virtual é também uma das
intenções futuras, já que outros trabalhos estão sendo
desenvolvidos em RV voltados para a educação nas áreas de
Astronomia, História, Psicologia e Pedagogia, onde no futuro
poderemos possuir uma grande ferramenta no auxilio ao
processo de ensino/aprendizagem.
Fazer a distribuição e implementação desse software entre
as escolas públicas da cidade de Itumbiara é também uma
idéia futura para a auxiliar os alunos de escolas mais carentes
com idéias inovadoras de baixo custo operacional e
computacional no processo de ensino aprendizado e na sua
formação profissional.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] GIOVANI, José Ruy, Matemática fundamental: uma
nova abordagem: ensino médio: volume único / José
Ruy Giovani, José Roberto Bonjorno, José Ruy Giovani
Jr. 712p. São Paulo: FTD, 2002.
[2] DELTA UNIVERSAL – 1982 – Editora Delta S.A. –
Rio de Janeiro – pg. 3.683
[3] CARDOSO, Alexandre; LAMOUNIER JR, Edgard.
Realidade Virtual – Uma Abordagem Prática.
Minicursos – VII Sumposium on Virtual Reality – São
Paulo, 2004.
[4] SILVA, Jorge Daniel. Matemática para o ensino médio:
volume único: livro do professor. / Jorge Daniel Silva,
Valter dos Santos Fernandes, Orlando Donisete
Mabelini. 622p. São Paulo: IBEP, 2005.
[5] MENDES, Elisa B. Um protótipo de ensino virtual
orientado por modelo psico-pedagógico. / Elisa B.
Mendes, Alexandre Cardoso, Luciano Ferreira Silva,
Florianópolis, Artigo, CONAHPA, 2004
[6] SILVA, Roberto Wagner Andrade da Silva. Educação a
Distância em Ambientes de Aprendizagem Matemática
Auxiliada pela Realidade Virtual. Florianópolis, 2001,
123p. Dissertação (mestrado em Engenharia de
Produção) Programa de Pós –Graduação em Engenharia
de Produção, UFSC, 2001.
[7] KELLER, Rodrigo. O uso da realidade virtual no
ensino presencial e a distancia. Santa Cruz do Sul,
Trabalho de Conclusão de curso (Ciência da
Computação), UNISC,1999.
[8] PACHECO, Jorge Domingos de Andrade. O uso da
realidade virtual no processo de ensino-aprendizagem.
2005. 79f. TCC. Sistemas de Informação. Instituto
Luterano de Ensino Superior de Itumbiara. 2005.
[9] CARDOSO, Alexandre; LAMOUNIER JR, Edgard,
TORI, Romero. Interactive 3D Physics Experiments
Through the Internet. In: 4th Symposium on Virtual
Reality, 2001, Florianópolis, SC. Anais 4th SBC
Symposium on Virtual Reality - Florianópolis: UFSC,
SBC, 2001, pp. 280-290.
[10] CARDOSO, Alexandre. Realidade Virtual. Disponível
em: <http://www.compgraf.ufu.br/alexandre/rv.htm>.
Acesso em: 13, mai. 2007, 10:20.
[11] KIRNER, Cláudio. Sistemas de Realidade Virtual.
Grupo de Pesquisa em Realidade Virtual, Departamento
de Computação – UFSCar. 1997. Disponível em:
<http://www.dc.ufscar.br/~grv/>. Acesso em: 2 de julho
2007.
[12] PASQUALOTTI, Adriano et al. Ambientes VRML
para o Ensino-Aprendizagem de Matemática: Modelo
Conceitual e Protótipo. In: 3th Workshop on Virtual
Reality, 2000, Gramado, RS. Anais 3th SBC Workshop
on Virtual Reality: Gramado, SBC, 2000, pp. 65-76.
[13] RIBEIRO, Marcos Wagner de Souza. Uma arquitetura
para ambientes virtuais distribuídos. 2005. 105f. Tese
(Doutorado em Ciências) Faculdade de Engenharia
Elétrica, Universidade Federal de Uberlândia, 2005.
[14] SALGADO, Rob. VRML Gallery of Electromagnetism.
Disponível em: <http://physics.syr.edu/courses/vrml/
electromagnetism/sphere.wrl>. Acesso em 15 de junho
2007
[15] CARDOSO, Alexandre; LAMOUNIER JR, Edgard,
TORI, Romero. Interactive 3D Physics Experiments
Through the Internet. In: 4th Symposium on Virtual
Reality, 2001, Florianópolis, SC. Anais 4th SBC
Symposium on Virtual Reality - Florianópolis: UFSC,
SBC, 2001, pp. 280-290.
[16] PRADO, Gilberto, et. al. Virtual Reality Modeling
Language.
Disponível
em:
<http://ftp.unicamp.br/pub/apoio/treinamentos/vrml/>.
Acesso em: 07, jun. 2007, 13:52.
[17] Saotome, O. Cunha, A. Um Sistema Hipermídia
Adaptativo para o Ensino de Engenharia Baseado em
Mapas Conceituais. In: COBENGE 2003, São José dos
Campos, SP. Anais. São José dos Campos: ITA, 2003.
[18] Pelizzari, A; Kriegl, M; Baron, M. Teoria da
Aprendizagem Significativa Segundo AUSEBEL. PUC
/ PR, jul. 2002.
[19] Konrath, M. L. P; Tarouco, L. M. R. Mapas
Conceituais. INTERNET: Universidade Federal do Rio
Grande do Sul, Projeto LUAR, [1997]. Disponível em
<http://penta2.ufrgs.br/edutools/mapasconceituais/>.
Acesso em: 1, out. 2007, 22:52.
ANÁLISE DE UM AMBIENTE VIRTUAL NÃO IMERSIVO PARA AUXILIO NO
TRATAMENTO DA FOBIA DE FALAR EM PÚBLICO
Orley Silva Soares1 e Roger Amandio Luz1
1 – Grupo de Realidade Virtual de Goiás – GRVG - Instituto Luterano de Ensino Superior de Itumbiara
Av. Beira Rio, 1001 – Bairro Nova Aurora
CEP 75523-230, Itumbiara-GO
Brasil
orleysoares@yahoo.com.br e luzroger@gmail.com
Resumo – O objetivo deste trabalho é apresentar um
ambiente virtual onde poderão ser feitas simulações com
pessoas que temem a explanação em público. As
simulações com o ambiente objetivam auxiliar no
processo que envolve a superação do medo de falar em
publico.
Palavras-Chave – Fobia, Realidade Virtual, Tratamento.
Abstract – The objective of this work is to present a virtual
environment where simulations with people could be made
who fear the communication in public. The simulations
with the environment objectify to assist in the process that
involves the overcoming of the fear of speaking in
publishes.
Keywords – Phobia, Virtual Reality, Treatment
1. INTRODUÇÃO
O aparecimento de transtornos de ansiedade,
relacionados a fobias, está cada vez mais presente em
nossa sociedade. Pessoas que temem relacionar-se com
outras ou algo em particular, vêem suas vidas sendo
prejudicadas e cada vez mais limitadas, principalmente no
âmbito social. Tais limitações impedem-nas ter uma vida
normal, acarretando prejuízos irreparáveis ao longo da
vida dessas pessoas [1].
Os tratamentos convencionais existentes possuem
algumas desvantagens que podem se tornar obstáculos
para as pessoas fóbicas, tais como, custos altos oriundos
de deslocamentos para locais distantes e riscos de
ocorrência de uma crise de ansiedade em público, entre
outros [2].
A Tecnologia de Realidade Virtual (RV) vem
experimentando um crescimento acelerado nos últimos
tempos, possuindo aplicabilidade na maioria das áreas do
conhecimento, entre elas a clinica. O campo da Realidade
Virtual Clínica (RVC) é considerado um dos mais
promissores das novas aplicações de RV. Possui mercado
potencial, tecnologia que pode ser implementada sem a
necessidade de sistemas complexos e encontra grande
aceitação por parte dos médicos terapeutas, sendo uma das
áreas mais bem sucedidas em termos de utilização [3].
Existem diversos projetos sendo desenvolvidos
paralelamente com o crescimento da tecnologia de RV,
que exploram toda sua potencialidade aplicando-a aos
procedimentos de superação de transtornos de ansiedade
diversos. Os resultados obtidos nesses projetos confirmam
a grande capacidade dessa tecnologia em criar ambientes
que simulam aspectos realistas do mundo real, num
ambiente tridimensional, facilitando a exposição por parte
de pessoas acometidas por algum tipo de transtorno
fóbico.
Neste contexto, o presente estudo tem como
objetivo propor o uso de um ambiente virtual não imersivo
para auxiliar no processo de superação do medo de falar
em público, caracterizado como fobia social.
O ambiente proposto consiste na representação de
uma platéia, onde poderão ser feitas simulações de
situações reais, com pessoas que temem a explanação em
público. Depois de efetivado, o trabalho proporcionará
embasamento para eventuais trabalhos futuros, que
queiram dar mais uma importante contribuição para o
problema envolvido.
1.1. Realidade Virtual
A Realidade Virtual é uma tecnologia que permite
interagir ou explorar um ambiente tridimensional através
do computador [4]. Com o uso de dispositivos não
convencionais que estimulem mais de um órgão sensorial
(visão, tato, audição, etc.), RV permite aos usuários
realizar uma interação natural e intuitiva com o ambiente
virtual e seus componentes. A percepção da realidade em
RV é uma facilidade usada em vários campos e oferece
diversas aplicações profissionais como: arquitetura,
medicina, geografia, recreação, etc.
A tecnologia de Realidade Virtual vem se destacando
nos últimos anos por sua versatilidade de exploração em
diferentes domínios do conhecimento [5]. Esta evolução
deve-se ao fato do desenvolvimento de novos
equipamentos aliados a novas ferramentas e linguagens de
programação, que apóiam a criação de ambientes virtuais.
Esta tecnologia engloba um novo conceito do uso do
computador, já que é possível ao usuário interagir com
objetos 3D, gerando sensações mais próximas da
realidade, através da utilização de dispositivos específicos,
que captam os movimentos dos braços, pernas, cabeça
(face e olhos) e apresentam as cenas em visores ou óculos
3D.
A Realidade Virtual pode simular objetos de forma
que sejam idênticos com os do mundo real, para tanto é
preciso que esses objetos criados se pareçam com os do
mundo real, com aparência, comportamento, texturas e
tamanhos iguais, estas características são desejadas sempre
que se deseja criar um ambiente virtual [6].
A modelagem geométrica de cada objeto é bastante
importante para o desenvolvimento do ambiente virtual,
cada alteração feita proporciona uma visualização
diferente para o ambiente. A criação destes ambientes
virtuais está bastante ligada com realismo visual e
interação. Assim, assuntos como, modelagem gráfica, e
interações homem-máquina constituem uma parte
fundamental na elaboração de ambientes virtuais.
1.2. OpenGL
OpenGL é uma biblioteca de rotinas gráficas e de
modelagem, 2D e 3D, extremamente portável e rápida.
OpenGL não é uma linguagem de programação, é sim uma
poderosa e sofisticada API (Application Programming
Interface) para criação de gráficos 3D, onde seu
funcionamento é semelhante ao de uma biblioteca de
funções, uma vez que fornece uma série de
funcionalidades. Normalmente se diz que um programa é
baseado em OpenGL ou é uma aplicação OpenGL, o que
significa que ele é escrito em alguma linguagem de
programação que faz chamadas a uma ou mais bibliotecas
OpenGL [7].
2. TRABALHOS RELACIONADOS
A seguir são apresentados trabalhos que exploraram o
uso da Realidade Virtual, aplicando-a aos procedimentos
tradicionais de superação de diversos tipos de fobias.
VESUP: O Uso de Ambientes Virtuais no
Tratamento de Fobias Urbanas – Neste trabalho é
apresentado um sistema de Realidade Virtual, cujo
objetivo é o apoio ao tratamento de fobias urbanas. O
sistema é composto de três ambientes virtuais, que
simulam situações comuns de grandes centros urbanos,
tendo como meta o apoio ao diagnostico e ao tratamento
de fobias associadas à vida nestes grandes centros, de
acordo com que descrevem os autores [2].
Sistema de Realidade Virtual para Tratamento
de Fobias - é abordado o uso de ambientes virtuais para o
tratamento de fobias. Nele, o autor propõe um sistema de
Realidade Virtual envolvendo o uso de vários ambientes
virtuais para o tratamento de diferentes tipos de fobias. Em
um dos ambientes foi modelado um túnel e tinha como
objetivo ajudar as pessoas que possuíam fobia de túnel e
também fobia de dirigir nesse tipo de lugar [8].
Avaliação de Técnicas de Interação em
Ambientes Imersivos: Uma Proposta de Aplicação no
Tratamento de Fobia de Altura - Este trabalho,
apresenta uma proposta de aplicação no tratamento de
Fobia de Altura (acrofobia). O objetivo do trabalho era
avaliar técnicas de interação que seriam empregadas num
ambiente virtual criado especialmente para auxiliar no
tratamento de fobia de altura. Uma das técnicas consistia
em acionar os botões de um painel de elevador. O painel
do elevador continha um botão para cada andar do prédio,
similar ao que se presencia no mundo real, com a pessoa
pressionando um botão e o elevador subindo ao andar
desejado [9].
Interface para Criação de Rota Automotiva
Virtual no Tratamento de Fobia de Dirigir – É
apresentado um sistema, intitulado PsicoDireção, que se
baseia nas técnicas de Realidade Virtual para apoiar as
pessoas que temem a direção nos grandes centros urbanos.
O objetivo era desenvolver uma interface flexível, que
oferecesse aos usuários opções configuráveis de rotas
virtuais e que melhor se adequassem a cada perfil. A
usabilidade e simplicidade da interface deste sistema, na
criação das rotas, foi avaliados por um grupo de
psicólogos que responderam não encontrar dificuldades na
utilização das funcionalidades da interface desse sistema
[10].
Como visto nos trabalhos relacionados, pode-se
destacar o potencial uso dos ambientes virtuais no auxilio
a superação de transtornos de ansiedade diversos. Esses
ambientes simulam muitos aspectos (imagens, sons) da
realidade e com que o fóbico acostuma-se a deparar em
seu cotidiano, sendo, portanto, uma ferramenta útil e de
grande aplicabilidade para apoio ao tratamento de fobias.
3. MÉTODOS DE APLICAÇÃO
A metodologia utilizada para desenvolvimento deste
projeto foi inicialmente baseada no levantamento de dados
relacionados ao estudo de caso. Estudos e trabalhos
correlacionados deixam claro o quanto é relevante o objeto
estudado.
3.1. Estudo de Caso
Atualmente, existe uma grande dificuldade das
pessoas em se apresentarem às demais, tornando-as
incapazes de ter um ciclo social normal. Isso traz muitas
conseqüências negativas pelo resto da vida dessas pessoas,
visto que o problema não se cessa com o tempo, ao
contrário, tende a se agravar.
Muitas vezes, pessoas que se encaixam neste contexto
não procuram superar o medo que sentem, tornando
escravas de diversas circunstancias. Por exemplo, perdem
uma promoção no emprego ou a chance de se graduarem,
porquanto não encontram coragem para apresentar seus
projetos finais.
Em relação à graduação, observa-se o medo
encontrado pelos estudantes para apresentarem diante de
um público, mesmo que ainda seleto, seus trabalhos de
conclusão de curso. Tal dificuldade inspira o
desenvolvimento de novas metodologias para auxilio,
sendo um campo amplo a ser explorado.
Tratamentos terapêuticos para diversos tipos de
transtornos (incluído aqui o medo de falar em público)
existem. Entretanto, os tratamentos convencionais não se
encontram unânimes quanto a sua eficácia, pelo menos
apresentam algumas dificuldades, encontrados em alguma
parte do tratamento. Por isso, em muitos casos, há
indivíduos que não procuram superar o medo que sentem,
devido a tais dificuldades.
A RV pode ser aplicada em diversos contextos,
entre eles, na fobia de falar em público. Cria-se um
ambiente virtual onde se pode visualizar objetos
representativos do mundo real e que eliciam o medo das
pessoas. De fato, estes ambientes podem funcionar como
facilitadores,
expondo
as
pessoas
a
menos
constrangimentos.
3.2 Aplicação
Fig. 1. Visão da platéia.
O protótipo ao ser aplicado visa auxiliar no tratamento
da fobia de falar em público, podendo ser utilizados por
terapeutas, bem como por estudantes que tenham medo de
se apresentarem em público e tenham que fazê-lo para
obterem, por exemplo, um diploma de graduação.
Pensando nisso, pretende-se submeter esses
estudantes a um ambiente simulado criado com a
tecnologia de RV. Os mesmos poderão fazer explanações
que envolvam, por exemplo, o projeto final a qual
defendem na graduação, preparando-os para futuras
apresentações destes projetos.
Enquanto apresentam, o operador (terapeuta) tem o
controle do sistema, podendo manipulá-lo a seu modo.
Dentre essas manipulações está a inserção de sons
(aplausos, vais, risadas, vozes etc.) no ambiente que
permite provocar ainda mais o medo desses estudantes,
como de fato se vivencia numa platéia real.
Outra questão ligada à manipulação é a referente aos
diversos modos de visualização que se pode ter com o
sistema. O mesmo permite que se tenham diversos ângulos
de observações, abrangendo diferentes pontos de vista do
ambiente. Para tanto, utiliza-se uma barra de navegação
ilustrada no tópico a seguir.
Com o uso do sistema, tem-se a possibilidade de
maior flexibilidade, permitindo reprogramar, parar ou até
mesmo repetir aspectos com que o fóbico se assusta com
facilidade.
Os humanóides dão um aspecto mais realista ao
ambiente, passando a impressão de avaliação e, além
disso, dá ao individuo fóbico a sensação de estar no meio
de uma situação muito constrangedora, conforme pode ser
visto na Fig. 1. As cadeiras também são organizadas de
modo a enaltecer mais ainda a visualização no ambiente,
dando a clara impressão de realmente se tratar de uma
platéia.
Entende-se que a pessoa com medo de falar em
publico, ao se deparar com o ambiente virtual, poderá não
só visualizar os principais objetos causadores do seu
medo, mas também, após diversas exposições, adquirir
meios para tentar superar o medo que sentem, sem
constrangimentos.
4. IMPLEMENTAÇÃO DO SISTEMA.
5.1. Resultados Esperados
No protótipo são encontrados objetos que foram
modelados por meio do software 3D Studio Max. O
ambiente virtual é criado por meio do uso da biblioteca
gráfica OpenGL, lendo a geometria do arquivo do 3D
Studio Max na extensão 3DS. Para facilitar a modelagem
dos diversos objetos, foram aplicadas texturas aos
mesmos, criando o realismo necessário.
Espera-se que com o uso do ambiente virtual possa
haver uma facilitação no processo que envolve a
superação do medo de falar em publico, quebrando num
primeiro momento a resistência que impedem as pessoas
de se apresentarem a uma platéia.
No sistema, como visto anteriormente, encontram-se
objetos que eliciam o medo, tais como, cadeiras,
humanóides, cortinas, além dos sons de vozes no
ambiente. Tais objetos são importantes, pois, além de
invocadores do medo, possibilitam uma representação
mais clara do ambiente.
Fig. 2. Barra de navegação.
Apesar de não ser uma tendência na área de Realidade
Virtual, principalmente RV imersiva que usa em
interações, dispositivos multi-sensoriais, foi criada neste
trabalho uma barra de navegação (Fig. 2). Essa barra
possibilita diferentes modos de visualização do ambiente.
5. RESULTADOS ESPERADOS E CONCLUSÕES
5.2. Conclusões
Constata-se que a Realidade Virtual pode ser de
grande importância em diversas áreas do conhecimento,
simulando aspectos reais num ambiente virtual. E quanto
ao protótipo, pode ser de grande ajuda para as pessoas que
temam a exposição em público, bem como para os
terapeutas que vierem a utilizá-lo.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] BALLONE, G. J. Medos, Fobias & outros bichos. in.
PsiqWeb, Psiquiatria Geral, 2001. Disponível em:
<http://gballone.sites.uol.com.br/voce/medos.html>.
Acesso em 06 Apr. 2007.
[2] WAUKE, A. P. T; COSTA, R. M. E. M;
CARVALHO, L. A. V. VESUP: O Uso de Ambientes
Virtuais no Tratamento de Fobias Urbanas. In: IX
Congresso Brasileiro de Informática em Saúde, 2004,
Ribeirão Preto. Anais do IX Congresso Brasileiro de
Informática em Saúde, 2004.
[3] BORALLI, J. A; KATAYAMA, G; GARCIA, F. L. S;
SIMÕES, E. V; NETTO, A. V. Sistema Integrado com
Biofeedback e Ambientes Virtuais para Tratamento de
Fobias. In: VI Symposium on Virtual Reality, 2003,
Ribeirão Preto.
[4] GABCAN, L; SANTOS, C. L. N; OLIVEIRA, M. J. F;
CUNHA, G. G; LANDAU, L. “Utilização de Técnicas de
Realidade Virtual na Visualização de Simulação de
Atendimento
em
Hospital”.
Disponível
em:
http://scholar.google.com.br/url?sa=U&q=http://www.lam
ce.ufrj.br/grva/wrv2002/index.php%3Fgo%3Darti
gos/wrv2002_A212.pdf. Acesso em junho 2007.
[5] ALVES, D; CABRAL, T. D; COSTA, R. M. E. M.
“Ambientes Virtuais para Educação a Distância: uma
estrutura de classificação e análise de casos”.
Disponível
em:
http://scholar.google.com.br/url?sa=U&q=http://magnum.i
me.uerj.br/cadernos/cadinf/vol14/4-rcosta.pdf. Acesso em
10 de junho 2007.
[6] RIBEIRO, M. W. S. “Arquitetura para distribuição
de ambientes virtuais multidisciplinares”. Tese de
doutorado. Universidade Federal de Uberlândia –
Faculdade de Engenharia Elétrica. Janeiro. 2006.
[7] WOO, M. et al. “OpenGL Programming Guide: the
official guide to learning OpenGL”. 3.ed. Reading,
Massachusetts: Addison Wesley, 1999. 730 p.
[8] MEDEIROS, G. A. Sistema de Realidade virtual
para tratamento de fobias. Dissertação de Mestrado,
Engenharia de Sistemas e Computação, COPPE / UFRJ,
Rio de Janeiro, 2006. 141p.
[9] JACOB, L. J; NEDEL, L. P; FREITAS, C. M. D. S.
Avaliação de Técnicas de Interação em Ambientes
Imersivos: Uma Proposta de Aplicação no Tratamento
de Fobia de Altura. Instituto de Informática,
Universidade Federal do Rio Grande do Sul - UFRGS, RS,
Brasil, 2001.
[10] PAIVA, J. G. S; CARDOSO, A; LAMOUNIER
JÚNIOR, E. A. Interface for Virtual Automotive Route
Creation in Driving Phobia Treatment. In: VIII
Symposium on Virtual Reality, 2006, Belém, PA.
SISTEMA DE AMBIENTES VIRTUAIS PARA ESTUDO DE USINAS
HIDRELÉTRICAS
Afonso B. Almeida Jr., Edgard Lamounier, Alexandre Cardoso
Faculdade de Engenharia Elétrica, Universidade Federal de Uberlândia.
e-mail: afonsobe@gmail.com, lamounier@ufu.br, alexandre@ufu.br
Resumo - O presente artigo apresenta um sistema,
compatível com a WEB e suportado por técnicas de
Realidade Virtual, que possibilite ao usuário a compreensão
do funcionamento de uma usina hidrelétrica e que se aplica
ao ensino de tópicos de Engenharia Elétrica.
Palavras-Chave – Realidade Virtual, Software educativo.
Abstract - This article has a proposal to develop a system a
virtual atmosphere that it qualifies the user to understand
how a hydroelectric plant works, compatible with the WEB.
1
Keywords - Virtual reality, Educational software.
1. INTRODUÇÃO
Atualmente, dentre as diversas possibilidades de utilização
da computação gráfica, a concepção de mundos virtuais
utilizando técnicas de Realidade Virtual tem recebido
merecido destaque. Tais técnicas possuem aplicações nos
mais diferentes segmentos, a saber: processos industriais,
psicologia, treinamento, educação, desenvolvimento de
projetos, entre outros. Neste contexto, este trabalho visa
desenvolver e avaliar a adequação do uso de técnicas de
Realidade Virtual para desenvolver a aplicação posterior no
ensino de Engenharia Elétrica e assuntos afins.
A disciplina de linhas aéreas de transmissão, a qual é
ministrada nos cursos de Engenharia Elétrica, por exemplo,
requer tanto do aluno quanto do professor, grande capacidade
de visualização de detalhes. Isso se deve ao fato de que é
extremamente importante observar como as peças são
engastadas, como os isoladores são dispostos e como
ocorrem as variações destas estruturas sob diversas
condições elétricas e físicas.
Tradicionalmente o estudo da transmissão de energia
elétrica tem como recurso didático básico, a utilização de
fotos. Apesar de interessante, estes materiais são pobres em
detalhes, limitam os alunos e muitas vezes não permitem que
se faça idéia de como é a estrutura real.
Um estudo do professor David Ainge, da Escola de
Educação da James Cook University, na Austrália, consistiu
em algumas experiências que comparavam a utilização de
fotos e da realidade virtual no ensino. Como resultado,
concluiu que os alunos tiveram certa dificuldade de construir
um modelo mental tridimensional a partir de imagens
bidimensionais. Assim o desenvolvimento de uma aplicação
de realidade virtual, funciona como auxílio, visando utilizá-la
no ensino na área de engenharia [1].
A usina hidrelétrica é um exemplo da dificuldade de
compreensão do seu funcionamento. Muitos alunos somente
conhecem por vídeos ou fotos, mas não compreendem como
funcionam internamente. Os conjuntos de ambientes virtuais
sanam esse problema uma vez que se podem visualizar as
estruturas da usina em funcionamento, sendo algumas
observações somente possíveis graças à Realidade Virtual.
A proposta deste trabalho é apresentar um software em
desenvolvimento, que, com técnicas de RV permite a
interpretação e a visualização do funcionamento de uma
usina hidrelétrica. Tal sistema é composto por Ambientes
Virtuais similares aos ambientes reais da usina, com a
possibilidade de, interativamente, visualizar os componentes
da mesma.
Uma usina hidrelétrica pode ser definida como um
conjunto de obras cuja finalidade é a geração de energia
elétrica, através de aproveitamento do potencial hidráulico
existente em um rio. Esse potencial é proporcionado pela
vazão hidráulica e pela concentração dos desníveis existentes
ao longo do curso de um rio [2].
A água captada no lago formado pela barragem é
conduzida até a casa de força através de canais, túneis e/ou
condutos metálicos. Após passar pela turbina hidráulica, na
casa de força, a água é restituída ao leito natural do rio,
através do canal de fuga. Dessa forma, a potência hidráulica
é transformada em potência mecânica quando a água passa
pela turbina, fazendo com que esta gire, e, no gerador - que
também gira acoplado mecanicamente à turbina - a potência
mecânica é transformada em potência elétrica [3].
A energia assim gerada é levada através de cabos ou
barras condutoras dos terminais do gerador até o
transformador elevador, onde tem sua tensão (voltagem)
elevada para adequada condução, através de linhas de
transmissão, até os centros de consumo. Daí, através de
transformadores abaixadores, a energia tem sua tensão levada
a níveis adequados para utilização pelos consumidores [2,4].
O desafio consiste em visualizar as estruturas da usina em
funcionamento, sendo algumas visualizações somente
possíveis graças à RV. Este trabalho aprimora os métodos de
ensino e aprendizagem relacionando-os ao desenvolvimento
de ambientes virtuais mais interativos focados ao
funcionamento de uma usina inteira.
A motivação deste trabalho é prover ao usuário o
aprendizado de técnicas que expliquem o funcionamento de
uma usina e de todos seus componentes dando ao mesmo a
oportunidade de ter um contato maior com tais sistemas de
geração de energia.
2.OBJETIVOS
São objetivos deste trabalho:
● Desenvolver um conjunto de ambientes virtuais
equivalente aos ambientes reais encontrados nas etapas de
geração de energia elétrica em uma hidrelétrica, bem como
seus componentes de forma detalhada.
● Por meio de interação com estes ambientes virtuais, prover
ao usuário a possibilidade de observar com precisão o
funcionamento de estruturas da usina, inclusive aquelas cuja
visualização é impossível no ambiente real.
● Verificar a aplicação de tal conteúdo como ferramenta
educacional através da utilização deste por alunos e
professores da área de Engenharia.
Se comparada aos métodos tradicionais, a aplicação de
realidade virtual acarreta um aumento considerável na
motivação dos alunos, conforme comprovado por outras
aplicações bem sucedidas. Byrne desenvolveu, em seu
trabalho, aplicativos baseados em Realidade Virtual para
análise de experiências de química (relacionadas com
visualização e manuseio de moléculas) [5]. Em suas
avaliações, observou que a motivação proporcionada pela
interatividade do ambiente, promoveu nos estudantes uma
retenção maior de informações. Nestes casos, o aprendiz
deixa de ser apenas um ouvinte e passa a integrar o ambiente,
de tal forma que ele pode interagir com esse mundo, obtendo
respostas para cada ação sua dentro do ambiente.
3.DESENVOLVIMENTO
O processo de desenvolvimento dos ambientes virtuais se
deu por:
1. Verificação das plantas e detalhes reais dos componentes
das usinas hidrelétricas e das subestações;
2. Modelagem geométrica de tais componentes, com uso de
VRML;
3. Modelagem comportamental dos componentes, baseados
também em análises reais;
4. União dos ambientes virtuais com imagens reais das
usinas e construção de páginas Web capazes de associar
estes a tais imagens.
Para a realização deste projeto foram utilizadas técnicas
de realidade virtual. Estas consistem basicamente na
construção de interfaces homem-máquina de tal forma que os
usuários possam visualizar o cenário, navegar e interagir com
ele.
Ao ser inserido dentro deste ambiente, mesmo na frente
de um computador, o usuário tem a sensação de estar em um
ambiente muito próximo do real, obtendo respostas para cada
ação sua dentro do mundo virtual.
Para a implementação destas técnicas de realidade virtual,
utilizou-se o software VRMLpad que utiliza a linguagem
VRML (Virtual Reality Modeling Language), que tem sido
aplicada com bastante sucesso em diversos projetos de
concepção de mundos virtuais [6]. O surgimento da
linguagem está interligada à colaboração de diversas
empresas e pesquisadores, que tinham o propósito de
desenvolver uma infra-estrutura para aplicações gráficas
tridimensionais interativas, e que proporcionassem uma
capacidade de criação de uma gama variada de aplicações.
Aprimorada, hoje a linguagem VRML é capaz de tudo isso,
permitindo ainda, definições de comportamentos (com mais
interação e animação) dos componentes tridimensionais.
Os arquivos que simulam os mundos tridimensionais
utilizando linguagem VRML não requerem compiladores
específicos para a sua geração. Assim, por meio de qualquer
editor de textos, o desenvolvedor pode conceber tais
arquivos, bastando salvá-los com a extensão “wrl”. Estes
arquivos definem quais formas geométricas estarão presentes
no ambiente e em quais posições, quais as cores, as
associações e os movimentos. Enfim, definem todos os
aspectos necessários para a composição dos ambientes.
A construção do código está relacionada com a
concepção de formas. Estas nada mais são do que
associações entre elementos tridimensionais geométricos prédefinidos, tais como cones, cilindros, esferas e
paralelepípedos. Cada forma pré-definida possui atributos
variáveis que controlam tamanho, cor, posição e ângulos.
Nestas formas também é possível inserir texturas, de tal
maneira que uma caixa possa ser “coberta” por uma foto.
Pode-se ainda modificar os fundos, através de funções
específicas que permitem simular ambientes diferenciados
que se assemelham às condições climáticas, que variam de
um lindo dia de sol, um dia nublado ou com muita neblina,
dentre outros. É possível também controlar a aparência de
elementos do cenário, bem como a inserção de diferentes
formas de fontes de luz.
Alguns recursos extras permitem inserir sons ou vídeos
ao ambiente virtual. Em geral, a própria linguagem VRML
possui alguns tipos pré-definidos de animações. No entanto,
para animações mais complexas, ela possui compatibilidade
com scripts elaborados em Java ou JavaScript, que podem ser
inseridos em qualquer mundo virtual.
A visualização destes ambientes tridimensionais, por sua
vez, pode ser feita por meio de um simples navegador de
Internet associado a um plug-in, que interpretará o código
criando as estruturas definidas. A Figura 1 representa a
arquitetura desse sistema.
Fig. 1. Arquitetura do sistema utilizando VRML.
Como exemplo, a Figura 2 apresenta a turbina e a sala de
controle, e a Figura 3 traz a subestação, de uma unidade
geradora de Energia Elétrica.
Fig. 5. Tela inicial e observador selecionando local para
visualização.
Fig. 2. Turbina e Sala de controle.
Existem indicações (setas) que são direcionadas para
regiões da figura onde se encontram as estruturas modeladas
(Figura 4) e ao selecionar a região indicada, a mesma,
oferece os dados primários da estrutura.
O usuário ainda pode acessar as estruturas da usina
utilizando uma vista diferente da aérea. Essa vista possibilita
uma maior imersão no mundo virtual, dando ao usuário a
possibilidade de visitar as estruturas da forma que preferir
(Figura 6).
Fig. 3. Subestação.
Um painel virtual foi desenvolvido para controlar a
navegação (por meio da união com o JavaScript). Os cabos
de transmissão foram modelados com utilização do software
ArtOfIllusion sendo exportados para o VRML97 [8].
Cada estrutura modelada pode ser acessada por partes, ou
seja, há a possibilidade de analisar apenas partes da estrutura
como, por exemplo, o transformador, o rotor, entre outros,
proporcionando também informações técnicas sobre as
estruturas secundárias. (Figura 4).
Fig. 6. Observador imerso no mundo totalmente virtual,
visualizando a barragem.
4.RESULTADOS
O resultado obtido foi um sistema em que o usuário tem
um enorme controle sobre as estruturas, podendo até
desmontá-las se achar viável. (figura 7).
Fig. 4. Visualização apenas do Disjuntor, presente na
subestação.
A tela inicial dá uma idéia geral da usina e proporciona
uma idéia de imersão ao usuário, que ao clicar na área
requerida é “transportado” para o ambiente virtual
equivalente ao local desejado (Figura 5).
Fig. 7. Transformador de força sendo desmontado pelo
usuário.
Como vantagem, a pesquisa apresenta ambientes virtuais
que permitem a exploração pelo usuário de forma particular e
capaz de atender suas expectativas com respeito à
investigação. Por exemplo, é possível simular uma visita à
sala de controle, levando o estudante a forte inserção no
contexto de um dado tópico ou assunto, sem riscos, como os
presentes no manuseio dos equipamentos. [9]
AGRADECIMENTOS
Os autores agradecem primeiramente à família que tem
dado enorme apoio e incentivo às pesquisas. Gratos também
com Kennedy Lopes, mestrando da UFU, por trazer grandes
contribuições ao trabalho. Este projeto está sendo financiado
pelo CNPq (projeto Nº C013/2006).
5.CONCLUSÕES
O desenvolvimento de ambientes virtuais, para
simulações de situações reais pode ser efetuado com uso de
linguagens de programação compatíveis com a WEB, sem
custos exagerados.
Neste artigo, o usuário tem a sua disposição um conjunto
de ambientes virtuais. Onde pode interagir com todas as
estruturas de uma usina hidrelétrica, observando,
detalhadamente os componentes físicos destas.
Outros fatores que justificam e mostram a contribuição
do desenvolvimento deste tipo de interface baseiam-se no
custo dos equipamentos e na facilidade de concepção de
aplicativos. Além disso, o uso destes ambientes virtuais
como suporte à educação e montagem de projetos pode ser
mais eficiente, conveniente e até mais barato do que custear
os equipamentos para a montagem, já que ferramentas
gratuitas podem ser usadas nas suas criações e no
desenvolvimento, propiciando a aplicação de RV associado à
Internet em soluções relacionadas com Educação a Distância
(EAD). [9]
Como aplicações futuras para o trabalho está a
implementação de um painel aprimorado, com mais detalhes
permitindo maior interação do usuário, modelagem de mais
partes da usina já inserindo os dados técnicos em todas as
estruturas e uma implementação em realidade aumentada
(RA).
REFERÊNCIAS BIBLIOGRÁFICAS
[1] Ainge, D. Grade-six Student’s Recall of detail: V.R.
compared with photographs. V.R. in the Schools, vol. 1,
no. 4. Mar 1996.
[2] Bandini,
Alfredo,
Generalidades
sobre
os
aproveitamentos hidroelétricos - produção e consumo de
energia elétrica / Alfredo Bandini, São Carlos: Escola de
Engenharia de São Carlos, 1963.
[3] Central Electricity Generating Board. Mechanical;
turbines and auxiliary equipment. Oxford: Pergamon
Press, c1971.
[4] D'Ajuz, Ary. Equipamentos elétricos; especificação e
aplicação em subestações de alta tensão. Rio de Janeiro:
FURNAS, c1985.
[5] Byrne, C. Water on Tap: The Use of Virtual Reality as an
Educational Tool. Washington, 1996. Tese (Doutorado) University of Washington.
[6] http://www.parallelgraphics.com/.
[7] ALSTOM
Transmission
&
Distribution
–
http://www.alstom.com/ - Acedido em 10/10/2007
[8] http://www.artofillusion.org/ - Acedido em 20/10/2007
[9] CARDOSO, Alexandre; LAMOUNIER, Edgard e TORI,
Romero, "Sistema de Criação de Experiências de Física
em Realidade Virtual para Educação a Distância", II
Workshop Brasileiro de Realidade Virtual, WRV´99, pp
174-181, Marília, 1999.
SISTEMA DE AUXILIO À MODELAGEM 3D USANDO VISÃO ESTÉREO
Marcelo Archanjo José, Roseli de Deus Lopes.
Universidade de São Paulo - Departamento de Engenharia de Sistemas Eletrônicos da Escola Politécnica
Av. Prof. Luciano Gualberto, 158. Trav.3. CEP: 05508-900 - São Paulo - SP – Brasil
marcelo.jose@poli.usp.br, roseli.lopes@poli.usp.br
Resumo - O processo de modelagem 3D de ambientes reais é
bastante trabalhoso, principalmente se o objetivo é obter um
resultado com alto grau de realismo. Este artigo apresenta
um sistema que utiliza Visão Estéreo para a obtenção da
geometria 3D de uma cena, faz a Reconstrução 3D da
mesma e a realiza a visualização em tempo real. Desta
forma o sistema provê um auxilio importante para a criação
de um modelo preliminar do ambiente real que serve de base
para modelagem completa.
Palavras-Chave – Correspondência Estéreo, Reconstrução
3D, Visão Computacional, Visão Estéreo.
Abstract – The 3D modeling process of real environments is
arduous, mainly if the objective is to produce realistic
results. This paper presents a system that uses Stereo Vision
to acquire the 3D geometry of a real scene, make the 3D
Reconstruction and presents a real time visualization of it. In
this matter this system provides a serious help in the creation
of an initial model of the real environment to be after
completely modeled.
1
Keywords - 3D Reconstruction, Computer Vision, Stereo
Matching, Stereo Vision.
1.
INTRODUÇÃO
A modelagem de ambientes virtuais é um processo
bastante trabalhoso apesar das diversas funcionalidades das
ferramentas de mercado. Trata-se de um processo criativo e
artístico, logo as ferramentas de modelagem podem ajudar,
mas não eliminam a complexidade.
Quando se deseja modelar uma ambiente real surge o
problema da comparação que o usuário pode fazer, porque
conhece o real. Na imensa maioria das vezes, fica evidente
que o ambiente modelado é pobre se comparado com o real.
A possibilidade se ter um auxilio na modelagem para
automatizar algumas etapas é fundamental.
Este trabalho apresenta um sistema com objetivo de
auxiliar o processo de modelagem 3D de ambientes reais. Ele
utiliza Visão Estéreo para obter a geometria 3D do ambiente
se valendo da disparidade horizontal entre duas fotos tiradas
com um pequeno deslocamento lateral.
Utilizar a Visão Estéreo na Reconstrução 3D por si só não
é um grande desafio apesar de não ser trivial. A Visão
Estéreo é uma área de pesquisa bastante ativa sendo que
existem diversos algoritmos cada qual com suas
peculiaridades, mas todos tem em comum:
• Uso intensivo de memória;
• Calibração rígida das câmeras;
• Câmeras precisas.
O uso intensivo de memória dos algoritmos de Visão
Estéreo está diretamente ligado ao tamanho da imagem e a
quantidade de pontos onde se procura por correspondências,
também conhecido como níveis de disparidade. Com
imagens pequenas isto não é um problema, mas com imagens
grandes pode chegar a ser impeditivo, veja na Tabela I as
resoluções e o respectivo consumo de memória para a
abordagem tradicional em Visão Estéreo.
TABELA I
Consumo de Memória na Abordagem Tradicional
Largura
2592
5200
Altura
1944
3900
108
208
Níveis de disparidade¹
Bytes por pixel
Total Mega Bytes
4
4
2.152,83
16.400,76
¹ Os níveis de disparidade foram estimados com valores próximos a 4%
da largura da imagem.
A calibração rígida exige o uso de câmeras precisas e o
ambiente bastante controlado, geralmente um laboratório.
Esta calibração tem por objetivo fazer as duas fotos
obedecerem a geometria epipolar, na prática significa
procurar por correspondências somente a uma linha, isto é,
uma linha da imagem da esquerda equivale exatamente à
mesma linha da imagem da direita. Isto é bastante difícil de
se conseguir com imagens de alta resolução e / ou com
objetos distantes. Não utilizar a restrição epipolar exige que a
procura por correspondências não seja realizada somente em
uma linha, mas em um conjunto de linhas o que irá aumentar
ainda mais o consumo de memória.
A precisão normalmente exigida em Visão Estéreo inclui
a luminosidade das duas fotos. Num ambiente não controlado
é muito difícil atingir esta precisão, devido a variação das
condições de luminosidade entre uma foto e outra (usando
apenas uma câmera), ou ainda devido ao fato de duas
câmeras comuns não oferecerem garantias de igual
intensidades das cores nas fotos tirada por cada uma delas.
O desafio então é reunir técnicas existentes e conceber
outras novas técnicas, permitindo:
• Redução do consumo de memória, assim
possibilitando o uso de imagens de alta resolução
(2592x1944) e computadores comuns (menos que
512MB RAM);
• Maior flexibilidade na calibração;
• Uso de câmeras comuns.
Além disso, é fundamental visualizar o ambiente
modelado em tempo real de maneira a perceber erros e
ajustar parâmetros até atingir resultados satisfatórios. Por fim
2.1. Custo de Correspondência
(59,69)
(59,70)
(59,71)
(60,69)
(60,70)
(60,71)
(61,69)
(61,70)
(61,71)
É armazenado o resultado desta soma na posição (60,70)
do plano 3 recém alocado. Este processo é conhecido como
Agregação de Evidências [1][2]. Otimização: Ao invés de
alocar mais 10 planos pode-se alocar somente 1 plano que
6
7
8
9
Valor
98
87
84
69
77
43
7
24
78
93
O menor resultado encontra-se no plano 6, o que significa
que a melhor correspondência foi encontrada com
disparidade de 6 pixels. Neste plano recém criado
armazenamos na posição (40,50) o valor 6. Este processo é
realizado para os 320x200 pontos e é conhecido como
Seleção de Disparidades [1][2]. Deste plano é criada uma
imagem em escalas de cinza onde, para o nosso exemplo de
disparidade máxima de 10 pixels, o 0 seria (0,0,0) (preto em
RGB) e o 9 seria (255,255,255) (branco em RGB) e os
demais valores os níveis intermediários distribuídos
uniformemente.
3.
TÉCNICA DAS FAIXAS
A forma tradicional de procura de correspondências tem
sido amplamente pesquisada, mas a questão do consumo de
memória normalmente não é abordada. O consumo intensivo
de memória vem da alocação dos planos de Custo de
Correspondência, pois se trata de um volume x,y,d. A figura
2 apresenta uma simulação do consumo de memória para
diferentes resoluções das imagens de entrada.
Com a Técnica das Faixas as imagens de entrada já
carregadas são tratadas em faixas e o processo de procura de
correspondências ocorre somente na faixa, estas devem ter o
menor tamanho possível sem deixar de manter os resultados
intermediários para reuso durante o processo.
00
00
33
x4
0
00
x3
7
53
33
49
33
x3
4
00
00
33
x3
1
45
00
x2
8
41
33
37
33
x2
5
00
00
33
x2
2
33
00
00
33
x1
9
29
25
x1
3
x1
6
00
21
0
x1
0
80
33
17
0
70
24
20
18
16
14
12
10
8
6
4
2
0
3x
Em seguida são alocados mais 10 planos com 320x200
posições onde serão registrados os resultados das somas das
janelas. Trata-se de somar (considerando uma janela
quadrada 3x3) os nove resultados de cada plano de Custo de
Correspondência na posição central da janela neste novo
plano se, por exemplo, estivermos no plano 3 de Custo de
Correspondência e estamos na posição (60,70) iremos somar
os resultados que estão nas posições:
5
93
2.2. Agregação de Evidências
4
12
Fig. 1. Planos que armazenam os Custos de Correspondência.
3
10
x
2
3x
d
1
Consumo de Memória (GB)
y
0
13
Reservamos 10 planos com 320x200 posições, criando um
espaço x,y,d (veja a Figura 1) e realizamos o processo de
cálculo de correspondência (soma das diferenças absolutas,
soma dos quadrados das diferenças, ou qualquer outro) para
cada pixel, para cada disparidade, isto é, comparamos o pixel
(60,50) da imagem da esquerda com o pixel (60,50) da
imagem da direita e armazenamos seu resultado na posição
(60,50) do plano 0 (equivale a disparidade 0), em seguida
comparamos o pixel (60,50) da imagem da esquerda com o
pixel (59,50) da imagem da direita e armazenamos seu
resultado na posição (60,50) do plano 1 (equivale a
disparidade 1), e assim por diante. Este processo é conhecido
como “Matching Cost” [1][2] aqui traduzido como Custo de
Correspondência.
Plano
0
Para descrever o funcionamento de um algoritmo de
Correspondência Estéreo tradicional, vamos supor que
precisamos realizar a procura de correspondência entre duas
imagens com resolução de x=320 e y=200 cada, e que o
número máximo de níveis de disparidade (d) seja de 10
pixels.
Por último é criado mais um plano com 320x200 nele é
armazenado em cada posição o valor da disparidade que
obteve a melhor correspondência, isto é, o menor valor.
Suponhamos que estamos analisando o ponto (40,50) e que
nos planos de Agregação de Evidências temos os seguintes
resultados para este ponto:
40
VISÃO ESTÉREO
2.3. Seleção de Disparidades
3x
2.
armazena temporariamente o resultado da agregação, quanto
o processo termina de preencher o plano inteiro ele sobrepõe
o plano de Custo de Correspondência.
53
é necessário exportar o ambiente reconstruído num formato
padrão para o posterior tratamento em ferramentas de
modelagem de mercado.
Dificuldades específicas inerentes à Visão Estéreo como
oclusão parcial e falsas correspondências causadas por
regiões sem textura não são tratadas neste trabalho.
Re s olução
Fig. 2. Consumo de memória para técnica tradicional
versus resolução, para busca 1D.
Foi estudado qual seria a menor altura desta faixa
chegando à conclusão de que ela deve ser igual à altura da
janela de procura mais 1, pois durante o processo de
agregação é necessário ter os resultados de Custo de
Correspondência disponíveis, sendo que uma altura menor
não permitiria isso. Também outra conclusão é que a faixa
deve ter a mesma largura da imagem de entrada, pois
larguras menores que esta eliminaria dados para reuso
durante o deslocamento lateral da janela.
O processo de Custo de Correspondência somente trata as
faixas das imagens de entrada, preenchendo as Faixas de
Agregação com a altura da janela (uma linha abaixo ficará
livre na primeira rodada). Estas são trabalhadas no processo
de Agregação de Evidências produzindo as Linhas de
Seleção de Disparidade, que são tratadas no processo de
Seleção de Disparidade produzindo uma linha no mapa de
disparidades, veja a figura 3.
perda de desempenho do algoritmo de busca de
correspondências. Por outro lado reduz os custos dos
equipamentos e facilita a disposição dos aparatos
fotográficos na obtenção do par de imagens.
A abordagem de procura 2D usada neste trabalho não
deixa de considerar que a disparidade é horizontal, o fato de
procurar a correspondência em outras linhas somente
considera que houve três possíveis efeitos, causados pela
falta de rigidez na calibragem física da(s) câmera(s) durante
o processo de obtenção das imagens: deslocamento de linha,
rotação da câmera, imagem curvada.
A figura 6 apresenta uma ilustração visual destes efeitos.
A procura 2D não resolve a distorção causada por fotos
tiradas por câmeras não paralelas.
5.
Imagem da
direita
Imagem da
esquerda
Custo de
Correspondência
Faixas de
Agregação
Níveis de
disparidade
Linhas de
Seleção de
Disparidades
Agregação de Evidências
Níveis de
disparidade
Seleção de Disparidades
Mapa de
Disparidades
Fig. 3. Diagrama da Técnica das Faixas.
Depois da primeira rodada é realizado o cálculo do Custo
de Correspondência somente em uma linha (imediatamente
abaixo) das imagens de entrada, o resultado é armazenado
naquela linha que sobrou nas Faixas de Agregação. O
processo de Agregação de Evidências agora ignora a
primeira linha das Faixas de Agregação, produzindo as
Linhas de Seleção de Disparidades e seguindo normalmente
o processo de Seleção de Disparidades. Depois da segunda
rodada são eliminados os dados da primeira linha das Faixas
de Agregação e no lugar são colocados os dados de Custo de
Correspondência da linha imediatamente inferior à faixa nas
imagens de entrada, e assim por diante até o fim da imagem.
Este processo re-aproveita os dados que já haviam sido
calculados nas rodadas anteriores, somente remove os
desnecessários e adiciona os novos.
4.
OPERADOR GRADIENTE
Algoritmos de Visão Estéreo geralmente são muito
sensíveis a variações na luminosidade, pois utilizam a
intensidade das cores para realizar a procura de
correspondências, pequenas variações entre as duas fotos
podem apresentar resultados bastante distintos no mapa de
disparidades. Veja na figura 7 os mapas de disparidade
gerados tanto com as intensidades da cores como com o
operador gradiente.
Para realizar o processamento é utilizado o operador
Sobel, através da passagem de dois kernels sobre as imagens
de entrada, um para horizontal e outro para a vertical.
6.
VISUALIZAÇÃO 3D
Uma vez construído o mapa de disparidades é realizada a
criação de uma malha 3D aberta, supondo uma malha
uniforme com 64 vértices em X, 64 vértices em Y e um mapa
de disparidades com 320x200, logo há uma relação entre 64
vértices distribuídos uniformemente pelos 320 pixels
horizontais e outros 64 para os 200 pixels verticais. Onde o Z
da malha será definido pelo valor máximo da disparidade
menos a disparidade do pixel do mapa de disparidades mais
próximo do vértice em questão, lembrando que a disparidade
é inversamente proporcional a profundidade, veja os
resultados deste processo na figura 4.
PROCURA 2D
A forma tradicional de trabalho com Visão Estéreo
vinculada à restrição epipolar esta bem estabelecida e
apresenta resultados muito bons no âmbito de performance
na construção do mapa de disparidades. Não utilizar a
restrição epipolar provoca um aumento da complexidade e
Fig. 4. Tela do programa, abaixo temos as imagens de entrada no
alto a esquerda a Visualização 3D em tempo real do ambiente
reconstruído e no alto à esquerda o mapa de disparidades.
A Visualização 3D é feita através de uma janela que
utiliza DirectX® da Microsoft para acessar os recursos da
placa aceleradora de vídeo.
Por fim a geometria 3D obtida é armazenada em um
arquivo .WRL (VRML 97), onde estão armazenados os
vértices indexados bem como o mapeamento da textura.
7. RESULTADOS
7.1. Técnica das Faixas
Utilizando a técnica das faixas para a obtenção do Mapa
de Disparidades, com a imagem de
2592 x 1944
necessitamos apenas de 124MB RAM e para 5200 x 3900 ,
necessitamos de 723MB RAM. Através da técnica
tradicional, necessitaríamos respectivamente de 2GB e 16GB
RAM (Tabela I), ou seja, haverá um redução drástica de
aproximadamente 95% do uso de memória. O gráfico da
figura 5 apresenta o consumo de memória da técnica das
faixas frente a diversas resoluções, tal qual a figura 2
apresenta para a técnica tradicional.
7.3. Resultados Operador Gradiente
O uso do Operador Gradiente reduz a sensibilidade à
variação da luminosidade entre as imagens de entrada,
auxiliando o uso de câmeras comuns. A figura 7 demonstra
na primeira linha o que seria um mapa de disparidades ideal
com as imagens originais [1], na linha central temos uma
pequena variação de luminosidade entre as imagens de
entrada e o mapa de disparidades gerado sem usar o operador
gradiente (bem distorcido) e na linha de baixo as mesmas
imagens de entrada (com variação de luminosidade) e o
mapa de disparidades gerado, o qual é bastante similar ao da
primeira linha.
00
00
33
x4
0
00
x3
7
Fig. 7. Efeitos causados pela variação de luminosidade entre as
imagens da esquerda e direita.
53
x3
4
00
00
33
33
49
33
x3
1
45
41
33
x2
8
00
00
33
x2
5
37
00
33
x2
2
33
00
x1
9
33
25
29
00
x1
3
x1
6
00
21
0
24
x1
0
80
33
17
0
70
3x
12
93
3x
53
13
3x
10
40
0
Consumo de Memória (GB)
0,8
0,7
0,6
0,5
0,4
0,3
0,2
0,1
0
Re s olução
Fig. 5. Consumo de memória para técnica das faixas versus
resolução, para busca 1D.
7.2. Procura 2D
A procura 2D permite a obtenção do mapa de disparidades
mesmo com uma calibração básica, isto é, não exige que uma
linha da imagem da esquerda esteja exatamente na mesma
linha da imagem da direita. A figura 6 apresenta os mapas de
disparidade para imagens de entrada distorcidas, no alto
temos uma referência [3] que demonstra o que seria um mapa
de disparidades ideal, abaixo temos as imagens de entrada
com diferentes tipos de distorções e os mapas de
disparidades gerados, tanto para uma busca 1D (distorcido) e
2D bem próximo do obtido na referência.
8.
CONCLUSÃO
A solução aqui apresentada atua em aspectos importantes
da utilização da Visão Estéreo como auxilio à modelagem
3D. A Técnica das Faixas permite uma redução significativa
do consumo de memória, o que possibilita o uso de
computadores convencionais. A procura 2D flexibiliza a
calibração das câmeras e não exige o uso de câmeras precisas
e finalmente o uso do Operador Gradiente permite pequenas
variações na luminosidade, não afetando a qualidade do
mapa de disparidades e não exigindo o ambiente fotografado
igualmente iluminado em ambas as fotos.
Os resultados apresentados aumentaram em muito a
flexibilidade deste sistema de Visão Estéreo em comparação
às abordagens tradicionais.
REFERÊNCIAS BIBLIOGRÁFICAS
Fig. 6. Simulação de distorções e os mapas de disparidades.
[1] D. Scharstein, R. Szeliski, “A taxonomy and evaluation
of dense two-frame stereo correspondence algorithms.”
International Journal of Computer Vision, 47(1/2/3):742, April-June 2002.
[2] D. Scharstein, “View Synthesis Using Stereo Vision”,
Springer, 1999.
[3] D. Scharstein, R. Szeliski, “High-accuracy stereo depth
maps using structured light.” IEEE Computer Society
Conference on Computer Vision and Pattern
Recognition (CVPR 2003), volume 1, pages 195-202,
Madison, WI, June 2003.
USO DA REALIDADE AUMENTADA COMO FERRAMENTA DE APOIO AO
PROCESSO DE LEITURA DE PESSOAS COM DISLEXIA.
Roger Amandio Luz1, Marcos Wagner de Souza Ribeiro 1 ,Alexandre Cardoso2, Edgard Lamounier2,
Luciano Vieira Lima2
1 - Grupo de Realidade Virtual de Goiás – GRVG - Instituto Luterano de Ensino Superior de Itumbiara
2 – Grupo de Realidade Virtual – GRV – Universidade Federal de Uberlândia
Resumo - Este artigo tem por objetivo contribuir com
profissionais da área da psicologia, educadores, pais e
outros que convivem com pessoas com dislexia, no
desenvolvimento de uma ferramenta baseada em técnicas de
Realidade Aumentada para auxilio no processo de leitura
dos dislexos, aproveitando as características de sensação de
imersão e interação possibilitadas pela Realidade Virtual e a
capacidade de inserir objetos virtuais em mundos reais
proporcionada pela Realidade Aumentada são discutidos
aqui os tópicos fundamentais para prototipação desta
ferramenta.
Palavras-Chave – Dislexia, Realidade Virtual, Realidade
Aumentada, Educação Especial
Abstract – This work has for objective to contribute with
professionals of the area of psychology, educators, parents
and others that coexist people with dislexia through the
development of a tool based on techniques of Increased
Virtual Reality for assist in the process of reading of these,
using to advantage of the characteristics of immersion and
interaction made possible by the Virtual Reality and the
capacity to inside insert virtual objects of real worlds
proportionate for the Increased Reality. 1
Keywords - ArToolKit, Dislexia, Augmented Reality, vrml.
1. INTRODUÇÃO
Os métodos tradicionais de tratamento da dislexia
associado ao uso de softwares educacionais convencionais
muitas vezes não são suficientes para que se obtenha a
eficiência do tratamento no aluno com dificuldades de leitura
e escrita, fazendo apenas a leitura de telas ou da junção de
sílabas que formam palavras, ou seja adestrando o
paciente/aluno[3]. Porém através das técnicas de imersão,
interação e manipulação proporcionadas pela Realidade
Virtual (VR)[12] e sobretudo pela capacidade de trazer o
mundo virtual para dentro do mundo real possibilitada pela
Realidade Aumentada os resultados podem ser bem mais
satisfatórios, deixando de lado o adestramento e despertando
a capacidade de interpretação e contextualização em pessoas
com dificuldade de leitura, desta forma os psicólogos e
pedagogos terão a possibilidade de obterem melhores
resultados no processo de ensino da leitura possibilitando
com que a pessoa em tratamento entre em estado de imersão
e sinta-se interagindo diretamente com o mundo criado
virtualmente através de objetos do mundo real, neste escopo
os processos de aprendizagem da leitura podem ser
melhorados significativamente, visto que o próprio disléxico
irá buscar cada vez mais a descoberta de novos mundos e
principalmente novas maneiras de interação com os objetos
virtuais. Entre os métodos de tratamento da dislexia destacase a criação de uma lista de palavras gatilho[4], que são as
que geralmente causam confusão na mente das pessoas com
este transtorno. Logo em seguida estas pessoas são
incentivadas a associar estas palavras com objetos moldados
geralmente com argila, neste artigo as principais palavras
gatilho serão modeladas através da utilização de softwares
específicos e estas serão projetadas no mundo real através da
realidade aumentada.
1.1.Realidade Virtual
O termo Realidade Virtual (RV) foi cunhado no final da
década de 1980 [1] e consiste em uma interface avançada
para aplicações computacionais, que permite ao usuário a
movimentação (navegação) e interação em tempo real, em
um ambiente tridimensional, podendo fazer uso de
dispositivos multisensoriais, para atuação ou feedback. [12]
O uso da Realidade Virtual estende-se em várias áreas,
uma em destaque é a da Educação, onde é um dos campos
mais vastos para a aplicação, segundo [12].
A Realidade Virtual aplicada na Psicologia é de grande
relevância se explorado dentro das suas infinitas
potencialidades de maneira a apoiar no tratamento de
pacientes, visto que muitas vezes é necessário simular
possíveis resultados antes de aplicar a técnica no paciente
[11]. O campo emergente que constitui a interface entre
Psicologia e as ciências da computação envolve tanto a
aplicação da informática para auxiliar na solução de
problemas específicos da psicologia, como a utilização da
psicologia para a compreensão de problemas trazidos pela
informática conforme se explica a seguir: a) Na vertente da
informática como auxiliar da psicologia, podemos citar a
utilização do computador em contexto escolar e clínico para
avaliação e (re)habilitação cognitiva e comunicação
alternativa para pacientes com distúrbios neurolingüísticos
(dislexia, afasia), neuromotores (paralisia cerebral, esclerose
lateral amiotrófica) e neurossensoriais (surdez congênita),
como em [3]. b) Na vertente da psicologia como ferramenta
de interpretação da realidade informatizada, podem-se citar
pesquisas e a reflexão psicanalítica sobre os efeitos da
crescente informatização da sociedade nos relacionamentos,
no auto-entendimento do indivíduo, na subjetividade, na
sociabilidade, na cognição, na personalidade[6]. Há sempre
a possibilidade de aliar a vertente interpretativa com a
aplicada. Assim, por exemplo, pode-se realizar uma pesquisa
em psicologia para compreender como os pacientes com
dislexia enxergam no mundo real, traçar suas dificuldades e
desenvolver um mundo virtual onde possam substituir as
palavras que tem dificuldade em ler por modelos do mundo
virtual aplicados ao mundo real.
1.2 Realidade Aumentada
O avanço da multimídia e da realidade virtual, proporcionado
pela maior potência dos computadores, permitiu a integração
em tempo real de vídeo, e ambientes virtuais interativos. Ao
mesmo tempo o aumento da largura de banda das redes de
computadores também vem influenciando positivamente na
evolução da multimídia, permitindo a transmissão de
imagens e outros fluxos de informação com eficiência.
1.2.Dislexia
De acordo com a ABD, Associação Brasileira de Dislexia,
a definição vem do grego e do latim: Dis, de distúrbio, vem
do latim, e Lexia, do grego, significa linguagem. Ou seja,
Dislexia é uma disfunção neurológica que apresenta como
conseqüência dificuldades na leitura e escrita.[14]
Originalmente, os pesquisadores acreditavam que os
disléxicos teria sofrido algum tipo de lesão cerebral ou
nervosa, ou seriam portadores de uma disfunção congênita.
Em qualquer dos casos, haveria uma interferência nos
processos mentais necessários a leitura [4].
A dislexia torna-se evidente na época da alfabetização,
embora alguns sintomas já estejam presentes em fases
anteriores. Apesar de instrução convencional, adequada
inteligência e oportunidade sociocultural e sem distúrbios
cognitivos fundamentais, a criança falha no processo da
aquisição da linguagem. Isto é, ela independe de causas
intelectuais, emocionais ou culturais. Ela é hereditária e a
incidência é maior em meninos, numa proporção de 3/1,
sendo que a ocorrência é de cerca de 10% da população
Mundial, embora freqüências altas de 20% a 30% tenham
sido relatadas [13].
Segundo [4] acredita-se que os seres humanos pensam
de duas formas diferentes: “conceituação verbal” e
“conceituação escrita” – Conceituação verbal indica o pensar
com os sons das palavras e conceituação não-verbal indica o
pensar com as imagens de conceitos ou idéias.
O pensamento verbal é linear no tempo e segue a
estrutura da linguagem. Ao utilizá-lo, compomos frases
mentalmente, uma palavra de cada vez. Ele é construído,
aproximadamente, na mesma velocidade da fala. A fala
normal tem uma velocidade aproximadamente de 150
palavras por minuto ou 2,5 palavras por segundo. Ainda [4]
escreve que o pensamento não-verbal é evolutivo. A imagem
cresce à medida que o processo de pensamento adiciona mais
conceitos. É um processo mais rápido, possivelmente
milhares de vezes mais rápido. Na verdade, é difícil entender
o processo de pensamento não-verbal porque ele acontece tão
depressa que não temos consciência dele quando utilizamos:
ele é geralmente subliminar ou abaixo do nível da
consciência.
As pessoas pensam tanto no modo verbal como no nãoverbal mas, sendo humanos, temos a tendência a nos
especializarmos. Cada um praticará um dos modos como seu
sistema primário de pensamento, e o outro como o
secundário.
Segundo Davis [4] Durante o período em que o aspecto
de transtorno de aprendizagem da dislexia se forma, entre os
três e os treze anos de idade, é necessário que o disléxico em
potencial seja primariamente um pensador não-verbal – uma
pessoa que pense em imagens.
A linguagem é composta por símbolos que, por sua vez,
são compostos de três partes: 1) o som do símbolo; 2) o
significado do símbolo; 3) a aparência do símbolo;
Existem diversas maneiras de diagnosticar-se a dislexia,
segundo Regenbrecht [8] deve-se inicialmente verificar
inicialmente se na história familiar existem casos de dislexia
ou de dificuldades de aprendizagem e se na história
desenvolvimental da criança ocorreu alguma problemática
não normativa. Na leitura notam-se confusões de grafemas
cuja correspondência fonética é próxima ou cuja forma é
aproximada, bem como surgem freqüentes inversões,
omissões, adições e substituições de letras e sílabas. Em
nível de leitura de frases, existe uma dificuldade nas pausas e
no ritmo, bem como revelam uma análise compreensiva da
informação lida muito deficitária (muitas dificuldades em
compreender o que lêem).
Embora os disléxicos tenham grandes dificuldades para
aprender a ler, escrever e soletrar, suas dificuldades não
implicam em falta de sucesso no futuro, haja vista o grande
número de pessoas disléxicas que obtiveram sucesso, entre
elas, Thomas Edison (inventor), Tom Cruise (ator), Walt
Disney (fundador dos personagens e estúdios Disney) e
Agatha Christie (autora) [15,16] . De fato, alguns
pesquisadores acreditam que pessoas disléxicas têm até uma
maior probabilidade de serem bem sucedidas; acredita-se que
a batalha inicial de disléxicos para aprender de maneira
convencional estimula sua criatividade e desenvolve uma
habilidade para lidar melhor com problemas e com o
stress[16].
1.3 Sinais e características da Dislexia
O primeiro sinal de possível dislexia pode ser detectado
quando a criança, apesar de estudar numa boa escola, tem
grande dificuldade em assimilar o que é ensinado pelo
professor. Crianças cujo desenvolvimento educacional é
retardatário podem ser bastante inteligentes, mas sofrer de
dislexia[4]. Crianças disléxicas tendem a confundir letras
com grande freqüência. Entretanto, esse indicativo não é
totalmente confiável, pois muitas crianças, inclusive nãodisléxicas, freqüentemente confundem as letras do alfabeto e
as escrevem de lado ao contrário [17]. Ainda [17] ressalta
que no Jardim de Infância, crianças disléxicas demonstram
dificuldade ao tentar rimar palavras e reconhecer letras e
fonemas. Na primeira série, elas não conseguem ler palavras
curtas e simples, têm dificuldade em identificar fonemas e
reclamam que ler é muito difícil. Da segunda à quinta série,
crianças disléxicas têm dificuldade em soletrar, ler em voz
alta e memorizar palavras; elas também freqüentemente
confundem palavras. Esses são apenas alguns dos muitos
sinais que identificam que uma criança sofre de dislexia
1.4 Diagnóstico da Dislexia
Segundo[17] a dislexia pode ser identificada em diversas
faixas etárias e em diferentes fases escolares identificando-se
algumas das características abaixo:
Entre 3 a 6 anos
Na pré-escola
1. Ele persiste em falar como um bebê?; 2.
Freqüentemente pronuncia palavras de forma errada?; 3. Não
consegue reconhecer as letras que soletram seu nome?
4. Tem dificuldade em lembrar o nome de letras, números
e dias da semana?; 5. Leva muito tempo para aprender novas
palavras?; 6. Tem dificuldade em aprender rimas infantis?
Entre 6 ou 7 anos
Primeira-série
1. Tem dificuldade em dividir palavras em sílabas?; 2.
Não consegue ler palavras simples e monossilábicas, tais
como “rei” ou “bom”?; 3. Comete erros de leitura que
demonstram uma dificuldade em relacionar letras a seus
respectivos sons?; 4. Tem dificuldade em reconhecer
fonemas?; 5. Reclama que ler é muito difícil?; 6.
Freqüentemente comete erros quando escreve e soletra
palavras? ; 7. Memoriza textos sem compreendê-los?
Entre 7 e 12 anos.
1. Comete erros ao pronunciar palavras longas ou
complicadas?; 2. Confunde palavras de sonoridade
semelhante, como “tomate” e “tapete”, “loção” e “canção”?;
3. Utiliza excessivamente palavras vagas como “coisa”?; 4.
Tem dificuldade para memorizar datas, nomes ou números
de telefone?; 5. Pula partes de palavras quando estas têm
muitas sílabas?; 6. Costuma substituir palavras difíceis por
outras mais simples quando lê em voz alta; por exemplo, lê
“carro” invés de “automóvel”?; 7. Comete muitos erros de
ortografia?; 8. Escreve de forma confusa?; 9. Não consegue
terminar as provas de sala-de-aula?; 10. Sente muito medo de
ler em voz alta?;
A partir dos 12 anos
1. Comete erros na pronúncia de palavras longas ou
complicadas?; 2. Seu nível de leitura está abaixo de seus
colegas de sala-de-aula?; 3. Inverte a ordem das letras –
“bolo” por “lobo”, “lago” por “logo”?; 4. Tem dificuldades
em soletrar palavras? Soletra a mesma palavra de formas
diferentes numa mesma página?; 5. Lê muito devagar?
6. Evita ler e escrever ?; 7. Tem dificuldade em resolver
problemas de matemática que requeiram leitura?; 8. Tem
muita dificuldade em aprender uma língua estrangeira?;
consorcio composto por três instituições de ensino superior:
Vienna University of Technology, Hagenberg University of
Applied Sciences e Graz University of Technology.
Figura 1 – Tratamento de Fobias
Figura 2 – Industria Automotiva
Ribeiro [10] apresenta a possibilidade de comunicação
entre ambientes virtuais distintos, apesar de não terem sido
utilizadas técnicas de Realidade Aumentada nesta pesquisa
ela possibilita futuras discussões e contribuições visando
proporcionar ao usuário maior imersão e interação com os
diversos ambientes multidisciplinares.
A Realidade Aumentada torna-se necessária nesta
pesquisa pois ela possibilita que vários objetos virtuais
comuniquem-se com o mundo real.
3. ARQUITETURA DO SISTEMA
Na Figura 3 é detalhado o desenvolvimento e
funcionamento do sistema, onde o software VRML é
utilizado na criação de imagens virtuais conforme lista de
palavras-chave da dislexia que serão projetadas por meio dos
dispositivos (câmera ou Óculos) com o uso do software
ArToolkit no mundo real, seja ele o consultório do psicólogo,
uma sala de aula, ou qualquer outro lugar do mundo real que
possibilite as projeções sobre os marcadores específicos.
ArToolK
it
VRML
1.5 Tratamento a partir de Palavras Gatilhos
Conforme descrito em [4] as palavras consideradas gatilhos
são aquelas que causam confusão em sua mente. Estas
palavras são descritas em uma lista e em seguida o disléxico
é incentivado a criar com argila uma imagem que traduza o
significado dessa palavra.
Palavras
Gatilho
2. APLICAÇÕES EM REALIDADE AUMENTADA
2.1 Tratamento de Fobias
As pesquisas utilizando técnicas de Realidade Aumentada
estão crescendo cada vez mais na medida em que se
exploram suas potencialidades nas mais diversas áreas do
conhecimento, destacam-se as áreas de educação, medicina,
indústria automobilística e aeroespacial. Exemplos como o
Tratamento de Fobias [7] ilustrado na figura 1 que foi o
trabalho extremamente motivador para esta pesquisa, e na
indústria automotiva como descrito em [9] conforme figura 2
ilustra nesta pesquisa estão cada vez mais contribuindo
cientificamente e socialmente para o desenvolvimento de
novas aplicações utilizado realidade aumentada. Na educação
relevam-se ainda The Magic Book[8] e Magic Mouse [5] e no
desenvolvimento de jogos o projeto Monkey Bridge [2] um
Mundo Real
Figura 3 –Arquitetura Proposta pelo Projeto
Os marcadores (Alvos) onde serão projetadas as imagens
virtuais seguem o mesmo formato das palavras,
possibilitando assim associações desta com o objeto que esta
representa, conforme ilustrado na Figura 4, onde o marcador
tem o nome do objeto que será projetado facilitando assim o
entendimento do disléxico.
Quando a frase esta sendo lida, a figura do automóvel é
projetada no texto, facilitando a associação entre a palavra
automóvel escrita no marcador com a imagem o que
possibilita que se obtenham associações das diversas
“palavras gatilho” com imagens virtuais projetadas no
mundo real.
5. AVALIAÇÃO, RESULTADOS E CONCLUSÕES
Figura 4 – Exemplo de Marcador
4. ESTUDO DE CASO: APLICAÇÃO DE RA NA
LEITURA DO DISLEXICO
Na leitura do disléxico devem ser observados uma série de
fatores entre eles as chamadas “Palavras Gatilho” , estas são
aquelas que mais causam confusão e desorientação quando se
esta lendo, escrevendo ou comunicando algo. Elas geram
confusão por que: a) a pessoa não tem uma imagem mental
do que a palavra significa ou representa; b) muitas dessas
palavras possuem múltiplos significados. Suponhamos que a
frase que você tem para trabalhar seja: “...há rodas no
automóvel verde...” O verbo haver possui inúmeros
significados, dentre os quais os dois seguintes: “alcançar,
obter, conseguir” e “existir”. Para ter certeza da definição
que você precisa utilizar em seu exercício de Domínio dos
Símbolos, substitua a palavra “há” na frase por cada uma das
definições acima, e obterá: 1) “...alcança/obtém/consegue
rodas no automóvel”; 2) ”..existem rodas no automóvel...” A
primeira frase não faz sentido, a segunda faz sentido e está
correta. Portanto, é o significado de “existir” que é
apropriado e o que se deve utilizar para seu exercício de
domínio dos símbolos neste caso. A Figura 5 ilustra esse
caso.
Figura 5 – Frase Correta
Este sistema foi apresentado a professores da área de
psicologia, educadores e pais que trabalham diretamente com
pessoas disléxicas, os primeiros resultados foram animadores
visto que em alguns casos alcançou-se o objetivo da fase de
tratamento. Estas fases do tratamento estão aquém deste
trabalho, pois esta ferramenta visa apenas servir como apoio
entre os profissionais da área e as ciências da computação,
não foi objetivo desta pesquisa ser a solução para a dislexia.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] BIOCCA, F.; Levy, M. R. (1995) Communication in
the Age of Virtual Reality. Lawrence Erlbaum
Associates. Hillsdale, NJ
[2] CAPOVILLA, F. C. et al. Estendendo as fronteiras da
Psicologia para abarcar a (re)habilitação cognitiva:
avaliação e intervenção em desenvolvimento e distúrbios
de comunicação e linguagem oral, escrita e de sinais.
Revista Brasileira de Psicologia e Informática. São
Paulo: PUC-SP, Cogeae, n. 1, Dezembro de 2001 a
Junho de 2002. ISSN 1676-384X.
[3] DAVIS, Ronald D. O dom da Dislexia: Por que algumas
das pessoas mais brilhantes não conseguem ler e como
podem aprender. Rio de Janeiro: Rocco, 2004.
[4] GILLET, Alexander, SANNER, Michael. STOFFLER,
Daniel. OLSON, Arthur. Tangible augmented interfaces
for structural molecular biology. Projects in VR. IEEE
Computer Graphics an Applications, [S,I] March/April,
2005.
[5] JUAN,
M.
Carmen.
ALCAÑIZ,
Mariano.
MONSERRAT, Carlos. Using augmented reality to treat
phobias. Moving Mixed Reality into the Real World.
IEEE Computer Graphics an Applications, [S,I].
November/December, 2005.
[6] KATO,
Hirokazu.
BILLINGHURST,
Mark.
POUPYREV, Ivan. The MagicBook – Moving
Seamlessly between Reality an Virtuality. Projects in
VR. IEEE Computer Graphics an Applications, [S,I].
May/June, 2001
[7] REGENBRECHT,
Holger.
WILKE,
Wilhelm.
BARATOFF, Gregory. Augmented Reality Projects in
the Automotive and Aerospace Industries. Moving
Mixed Reality into the Real World. IEEE Computer
Graphics an Applications, [S,I]. November/December,
2005.
[8] RIBEIRO, Marcos Wagner de Souza. Uma arquitetura
para ambientes virtuais distribuídos. 2005 105f. Tese
(Doutorado em Ciências) Faculdade de Engenharia
Elétrica, Universidade Federal de Uberlândia, 2005.
[9] SAYEG, Maria Elisa Marchini. Desenvolvimento
de um software pedagógico a partir da análise da
conversação para utilização por crianças autistas.
[10] TORI Romero, KIRNER Claudio, SISCOUTO Robson:
Fundamentos e Tecnologia de Realidade Virtual
Aumentada: Apostila do Pré-Simpósio. Belém – PA.
2006.
[11] Hallahan, D. P. E Kauffman, J. M. Exceptional
Learners: Introduction to Special Education Needham
Heights, MA: Allyn e Bacon, 2000.
[12] Associação
Nacional
de
Dislexia.
Em:
http://www.andislexia.org.br/hdl6_12.asp
.
Acesso
realizado em 12/12/2006.
[13] Estill, C. A. DISLEXIA, as muitas faces de um
problema
de
linguagem.
Em:
http://www.andislexia.org.br/hdl12_1.asp
.
Acesso
realizado em 12/12/2006.
[14] Gorman, C. The New Science of Dislexia. Time – July
20,
2003
In:
http:/www.interdys.org/index.jsp.
Traduzido
e
adaptado
em
http://www.10emtudo.com.br/artigos_1.asp
Acesso
realizado em: 10/12/2006
[15] Disponível em http:/www.interdys.org/index.jsp. Acesso
realizado em 12/12/2006.
VISUALIZAÇÃO TRIDIMENSIONAL DE BAIXO CUSTO PARA O
DESENVOLVIMENTO DE APLICAÇÕES EM MEDICINA
Alysson Diniz dos Santos e Liliane dos Santos Machado
Laboratório de Tecnologias para o Ensino Virtual e Estatística
Universidade Federal da Paraíba – CCEN
alyssondiniz@yahoo.com.br, liliane@di.ufpb.br
Resumo – Este artigo trata da utilização da estereoscopia
baseada no método de anaglifo para visualização em
ambientes de Realidade Virtual. Devido aos recursos
financeiros e desempenho computacional exigido por alguns
métodos de visualização 3D, procurou-se conceber e
integrar a um pacote de desenvolvimento de sistemas de
simulação e treinamento médico uma classe que permitisse o
uso do método de anaglifos coloridos. Dessa forma, o
conjunto de bibliotecas ao qual esta classe foi integrada
permite desenvolver aplicações de simulação que podem ser
executadas em plataformas computacionais populares com
visualização tridimensional colorida das imagens. Este
artigo também apresenta aspectos de implementação da
classe e a análise qualitativa dos resultados obtidos.
Palavras-Chave – anaglifo, estereoscopia, realidade virtual.
Abstract – This paper presents the anagliph method to create
stereoscopic images for visualization of virtual reality
environments. The computational performance and cost
required by other stereoscopic methods were the main
motivations of this work which developed a class to integrate
a set of libraries for the development of virtual reality
applications for medical training and simulation. The new
class implements the color anagliph method which allows the
use of stereoscopy even if the final application run on a
commodity computer. This paper also presents
implementation details and some discussion about the results
obtained.
Keywords – anaglyph, stereoscopy, virtual reality.
1.
INTRODUÇÃO
A Realidade Virtual (RV) pode ser definida como “uma
interface usuário-máquina de alta qualidade que envolve
simulação em tempo real e interação através de múltiplos
canais sensoriais” [1]. Em geral, os ambientes criados pelas
aplicações de RV são construídos com o intuito de propiciar
simulação, treinamento, visualização ou outro tipo de
atividade através de técnicas de RV. Em todos esses casos é
requisitado que o usuário da aplicação tenha a sensação de
estar dentro do ambiente virtual, sentindo-se imerso no
mesmo [2]. De acordo com a finalidade da aplicação, o nível
ideal de imersão pode ser atingido explorando diferentes
sentidos e estimulando variadas sensações no usuário [3,4].
A visualização da área ou região a ser tratada em um
atendimento médico é geralmente a principal informação que
o médico obtém do paciente. Então, para o desenvolvimento
de um ambiente virtual que propicie treinamento em
medicina, deve-se permitir ao usuário coletar o máximo
possível de informação a partir da visualização oferecida
pelo sistema. Por essa razão, a inclusão de uma forma de
visualização tridimensional colorida auxilia na obtenção de
imersão em ambientes de RV.
O CyberMed foi concebido como um conjunto de
bibliotecas voltadas para o desenvolvimento de aplicações de
simulação baseadas em RV para a área médica [5]. Para
tanto, o sistema CyberMed possui classes que permitem a
visualização tridimensional de cenas através da utilização do
conceito de estereoscopia [6]. Neste contexto, uma aplicação
que utiliza o CyberMed pode gerar um par de imagens que,
ao serem observadas pelo usuário, oferecerá a sensação de
profundidade da cena.
A estereoscopia pode ser entendida como a fusão, feita no
cérebro, de duas imagens bidimensionais resultantes da
projeção planar de uma cena tridimensional [6]. Então, para a
criação de uma cena estereoscópica é necessário um conjunto
de técnicas que permitirão gerar um par de imagens,
denominado par estéreo, da mesma cena. Em seguida, é
necessário o uso de equipamentos especiais para a
visualização individual de cada imagem deste par para cada
um dos olhos. Alguns dos principais dispositivos para
visualização estereoscópica são os óculos com filtros
coloridos, óculos com filtros polarizados, os head mounted
displays (HMD) e os óculos obturadores (shutter glasses).
Para cada um desses dispositivos corresponde uma técnica
que adapta o par estéreo ao dispositivo escolhido para
visualização do sistema [7].
Um dos principais problemas na implantação de
estereoscopia em aplicações de RV é o custo financeiro
atrelado aos dispositivos de visualização do par estéreo. A
técnica que utiliza óculos polarizados exige o uso de dois
projetores e filtros para polarizar a luz de forma adequada.
Por sua vez, a técnica de luz intermitente demanda um
projetor ou monitor de alta freqüência, uma placa de vídeo
específica e óculos obturadores (shutter glasses), cujos
custos podem tornar pouco viável seu uso em aplicações na
qual se deseja baixo custo financeiro. Neste sentido, apesar
da existência de HMDs de preços acessíveis, estes são
individuais e não permitem o uso em grupos de trabalho. Por
esses fatores, uma solução viável para visualização
estereoscópica que pudesse ser utilizada em grupos e em
plataformas populares é a técnica de anaglifo que utiliza
óculos com filtros coloridos. Nesta técnica não são exigidos
projetores ou equipamentos especiais, sendo necessário
apenas o uso de óculos com filtros coloridos que podem ser
confeccionados pelo próprio usuário [7].
O objetivo deste trabalho foi criar uma classe para
implementar técnicas que proporcionem ao desenvolvedor de
aplicações com o CyberMed a possibilidade de oferecer
imersão através da utilização de cenas estereoscópicas, sem a
necessidade de utilizar recursos computacionais específicos.
O baixo custo computacional e financeiro foi o principal
motivo para a escolha do método de visualização
estereoscópica por anaglifos. Nesse método, foi utilizada a
técnica de anaglifo colorido, visto que a mesma empreende
aos anaglifos a menor perda de cores possível. Mostraremos,
através da análise dos resultados obtidos, que a classe
desenvolvida amplifica a imersão nas cenas do sistema
CyberMed, atendendo aos requisitos de baixo custo
financeiro e computacional. Por gerar cenas de maior
qualidade e viabilizar a popularização do sistema, a inclusão
do método expande as funcionalidade e possibilidades de uso
do CyberMed [8].
2.
TÉCNICAS DE ESTEREOSCOPIA COM ANAGLIFO
Para a observação estereoscópica de uma cena, deve-se
primeiro escolher o método de geração do par estéreo. Essa
escolha deve ser cuidadosa visto que a utilização de um
método inadequado pode ocasionar efeitos indesejados.
Na criação do par estéreo, uma imagem da cena precisa
ser desenhada duas vezes com uma pequena alteração na
posição horizontal do observador. Essa diferença na posição
do observador faz com que um único ponto da cena original
seja colocado em dois pontos diferentes no par de imagens
formado. A diferença na posição desse ponto para as duas
imagens, denominada paralaxe, é o que nos vai dar a
sensação de profundidade para esse ponto. No entanto, caso a
paralaxe seja calculada de forma errada, o observador
perderá a visão tridimensional para aquele ponto [1].
O CyberMed utiliza o método off-axis para a geração do
par estéreo. Esse método consiste na criação de dois centros
de visualização (cada um representando um olho humano)
através de deslocamentos do centro de projeção original ao
longo do eixo horizontal. Em comparação com os outros
métodos existentes - o on-axis(imagens geradas por
translações do objeto) ou o das rotações(imagens geradas por
rotações do objeto) – o método off-axis é o que gera o par
estéreo de forma mais correta, minimizando as perdas de
informação e as disparidades que podem ser geradas pela
paralaxe. O método off-axis é ainda o que requer mais
processamento pelo computador, porém, dado atual nível das
máquinas, até um computador pessoal popular pode trabalhar
com esse método e obter resultados eficientes [9].
É importante observamos ainda que independente do
dispositivo utilizado para a visualização estereoscópica, a
criação do par estéreo permanece a mesma, visto que a única
função de todos os dispositivos, mesmo que de diferentes
formas, é fazer com que cada olho enxergue individualmente
as imagens do par estéreo.
2.1 Método Anaglifo
No método anaglifo o par de imagens estéreo é exibido
simultaneamente e fica a cargo dos óculos coloridos a
filtragem adequada da cena. Em virtude desse paralelismo o
método de anaglifo pode ser classificada como um método
de tempo paralelo [9].
Uma vez que as imagens são exibidas de forma paralela é
necessária a utilização de uma técnica para que seja realizada
a filtragem do que cada olho do observador deve perceber. O
método de anaglifo utiliza a técnica de filtragem por cores,
para tal, ele capta apenas as componentes de determinadas
cores para as imagens da direita e da esquerda. A captação de
certas componentes coloridas é possível com a aplicação de
máscaras nas cores adequadas, dessa forma a imagem
resultante da fusão do par estéreo terá seus pixels desenhados
apenas com as componentes de cor que utilizamos nas
máscaras. Após terminado o processo de fusão das imagens
do par estéreo, a técnica deixa para os filtros coloridos dos
óculos a filtragem adequada da cena [10].
Observamos que, de acordo com a máscara de cores
aplicadas nas imagens, o resultado visual da cena final
poderá apresentar diferentes características. O primeiro
método de anaglifo implementado no CyberMed aplicou uma
máscara vermelha na imagem da direita e uma máscara azul
na imagem da esquerda. É nesse método, denominado
anaglifo verdadeiro, que são observados os melhores
resultados no tocante à sensação de profundidade em cenas
com visualização estereoscópica geradas por anaglifos,
contudo, observando-se o fato de que apenas as componentes
de cor azul e vermelha estão disponíveis, a cena gerada tende
a ser exibida em um tom magenta [8].
2.2 Anaglifo Colorido
O método de anaglifo colorido utiliza-se da aplicação da
máscara vermelha à imagem da esquerda e da máscara ciano
(balanceamento proporcional entre azul e verde) à imagem
da direita do par estéreo. Esse método é um pouco menos
eficiente no tocante à sensação de profundidade em relação
ao anaglifo verdadeiro. Porém, com a camada de cor verde
sendo utilizada, a imagem resultante da cena permite mais
combinações de cores na fusão do par estéreo. Este fato
permite que a coloração da cena tridimensional aproxime-se
da coloração original da mesma [8].
A integração do método de anaglifo colorido ao sistema
CyberMed veio suprir o alto grau de perda de cores gerado
pela técnica de anaglifo verdadeiro. Por se tratar de uma
aplicação com foco no ensino da medicina, torna-se de vital
importância que o usuário possa observar no modo
estereoscópico cores próximas às do modelo real. Tal fato
facilitará ao usuário reconhecer e distinguir partes diferentes
apenas pela observação da aplicação. Além disso, o método
de anaglifo colorido torna a visualização acessível, dado o
baixo custo do método e dos óculos utilizados, e mantém a
qualidade da visualização, proporcionando assim maiores
níveis de imersão e aprendizado. Soma-se a esses motivos o
fato de qualquer método de anaglifo pode ser impresso o que
torna a utilização da classe ainda mais relevante.
3.
IMPLEMENTAÇÃO
No sistema CyberMed a classe Cyb3DWorld cria uma
janela gráfica e prevê métodos que tratam todas as operações
da janela gráfica, tais quais redimensionamento, interação
por mouse, teclado e iluminação, deixando apenas a
visualização do sistema a cargo das suas subclasses [11].
Assim como as outras classes de visualização do CyberMed,
a classe para uso de anaglifos coloridos desenvolvida e
chamada CybViewColorAnaglyph, herda métodos da
Cyb3DWorld, o que faz com que ela tenha acesso a todos os
procedimentos necessários para a exibição de uma cena.
Além disso, métodos da Cyb3DWorld prevêem a geração do
par estéreo pelo método off-axis descrito anteriormente. Uma
vez que as definições de como as imagens serão formadas já
estão prontas, a classe CybViewColorAnaglyph trata da
aplicação das máscaras de cores de forma a obtermos a
imagem anaglifo.
É importante detalharmos que as cenas geradas pelo
sistema são divididas em camadas. Essa divisão permite que
seja feita a observação dos resultados em várias áreas, o que
possibilita em uma única execução de uma aplicação
desenvolvida com o CyberMed a observação dos vários
tecidos e sistemas que compõem o corpo humano. Por
exemplo, é possível que o usuário observe ao mesmo tempo
o tecido epitelial e os sistemas ósseo e digestivo na
representação do tórax humano.
Assim como na visualização, a coloração da cena também
foi dividida em camadas. A cor de cada objeto presente na
cena está armazenada na classe CybParameters. A
CybParameters é a classe que armazena todos os parâmetros
de visualização do sistema. Desses parâmetros, o que é
utilizado pela CybViewColorAnaglyph é o parâmetro color.
O parâmetro color é um arranjo bidimensional que armazena
a cor de cada objeto gráfico criado na cena e a camada em
que se encontra esse objeto. A Cyb3DWorld define um
apontador para CybParameters, denominado CybCore que
será utilizado pela CybViewColorAnaglyph para acessar o
arranjo color.
Dessa forma, os anaglifos são providos pela
CybViewColorAnaglyph, criando as duas imagens através de
métodos da Cyb3DWorld, liberando a máscara de cor correta
para cada imagem e em seguida acessando, através do
apontador cybCore, o arranjo color. É então criado um laço,
varrendo cada camada da cena, capturando a cor de cada
objeto e redesenhando adequadamente as duas cópias do
objeto que formarão o anaglifo.
O sistema CyberMed já possuía três classes de
visualização integradas: a CybViewMono que exibe cenas
monoscópicas, a CybViewShutter que exibe cenas
estereoscópicas a serem visualizadas com óculos obturadores
e a CybViewAnaglyph que exibe cenas com o método de
anaglifo verdadeiro. Conforme dito anteriormente, todas as
classes de visualização são subclasses da classe abstrata
Cyb3DWorld e podemos observar como são dispostas as
classes de visualização do CyberMed na Figura 3.1.
4.
RESULTADOS
Para a análise dos resultados obtidos pela classe descrita
nesse artigo, utilizamos duas classes de visualização já
existentes no CyberMed. As visualizações geradas com a
utilização das classes CybViewMono e CybViewAnaglyph
podem ser comparadas com a cena gerada com o uso da
classe CybViewColorAnaglyph.
Fig. 3.1 – Diagrama de Classes de Visualização do sistema
CyberMed.
Para a execução dos testes foi utilizado um conjunto de
cinco modelos de estruturas do coração. Inicialmente foi
gerada a visualização monoscópica, como pode ser
observado na Figura 4.1. Posteriormente, foi utilizada a
classe
CybViewAnaglyph
e
a
classe
CybViewColorAnaglyph para gerar a visualização dos
mesmos modelos. A observação a olho nu dos resultados, já
permite observar a perda da informação de cor com o método
de anaglifo verdadeiro (Figura 4.2), ao passo que o método
de anaglifo colorido possibilita a manutenção das cores
(Figura 4.3) . Neste caso, a perda das cores torna evidente o
comprometimento da compreensão de estruturas anatômicas
dentro de uma aplicação na área médica com o método de
anaglifo verdadeiro e ressalta a necessidade da preservação
das cores na visualização.
Fig. 4.1. Visualização não estereoscópica criada pelo sistema
CyberMed.
Ressalta-se ainda que, uma vez que o método de anaglifo
pode ser impresso, a utilização de óculos com filtros
coloridos possibilita a observação tridimensional das Figuras
4.2 e 4.3 deste artigo.
equipamentos específicos e de maior custo que o método de
anaglifo. Tal fato torna-se relevante quando pretende-se que
a aplicação final gerada pelo CyberMed possa ser utilizada
por grupos de alunos e em instituições diversas. Neste caso, a
existência de uma classe que permita o uso de cores no
processo de visualização estereoscópica por anaglifo, permite
expandir as possibilidade de uso do CyberMed para
aplicações em plataformas populares.
REFERÊNCIAS BIBLIOGRÁFICAS
Fig. 4.2. Visualização estereoscópica utilizando o método anaglifo
verdadeiro.
Fig. 4.3. Visualização estereoscópica com anaglifo colorido gerado
com a classe CybViewColorAnaglyph.
5. CONCLUSÃO
Através da análise dos resultados, foi possível comprovar
que foi gerada, com a classe descrita nesse artigo, uma
visualização tridimensional de qualidade superior à
conseguida pela classe de visualização tridimensional com
métodos de anaglifo que já existia no CyberMed. Isso foi
possível, graças a razoável manutenção de cores da cena
tridimensional em relação à cena original e da permanência
do baixo custo computacional e financeiro.
Apesar de haverem métodos de visualização estéreo que
apresentam melhor qualidade, tais métodos exigem o uso de
[1] G.C. Burdea e P. Coiffet, “Virtual Reality Technology”,
Wiley-Interscience, 2ª Edição, Nova Jersey, 2003.
[2] W.R. Sherman, A.B. Craig, “Understanding Virtual
Reality : Interface, Application and Design”, Morgan
Kaufmann, 1ª Edição, San Francisco, 2003.
[3] A. Bowman, R.P. McMahan, “Virtual Reality: How
Much Immersion is Enough?”. Computer Innovative
Technology for Computer Professionals, vol 40, no. 7,
pp. 36-43, Julho 2007.
[4] M. Siegel, S. Nagata. “Just Enough Reality: Comfortable
3-D Viewing via Microstereopsis”. IEEE Transactions
On Circuits And Systems For Video Technology, vol. 10,
no. 3, pp. 387 – 396, Abril 2000.
[5] D.F.L. Souza, Í.L.L. Cunha, L.C. Souza, R.M. Moraes,
L.S. Machado, “Development of a VR Simulator for
Medical Training Using Free Tools: A Case Study”.
Proc. of Symposium on Virtual and Augmented Reality
(SVR'2007), pp. 100-105, Maio 2007.
[6] L.S. Machado, R.M. Moraes, “Cenários 3D Interativos
com Software Livre”. Revista de Informática Teórica e
Aplicada, Porto Alegre, UFRGS, vol. 12, no. 2, pp. 91112, Outubro 2005.
[7] D.F.
McAllister,
“Stereo
and
3-D
Display
Technologies”. Encyclopedia of Imaging Science and
Technology, John Wiley & Sons, pp. 1327-1344, Janeiro
2002.
[8] J.M.
Zelle,
C.
Figura,
“Simple,
Low-Cost
Stereographics: VR for Everyone” , ACM SIGCSE
Bulletin, Proceedings of the 35th SIGCSE Technichal
Symposium on Computer Science Education SIGCSE '04,
vol. 36, pp. 348-352, Março 2004.
[9] L.F. Hodges, “Tutorial: Time-Multiplexed Stereoscopic
Computer Graphics”. IEEE Computer Graphics and
Aplications, vol. 12, no. 2, pp. 20-30, Março 1992.
[10] M. Woo, J. Neider, T. Davis, D. Shreiner, “OpenGL
Programming Guide”. Addison-Wesley, 5ª Edição,
Indianapolis, 2005.
[11] H. Schildt, “C++: The Complete Reference”, McGrawHill/ Osborne, 4ª Edição, California, 2003.
Edições Anteriores
WARV (Workshop de Aplicações de Realidade Virtual)
WARV'05 - I Workshop de Aplicações de Realidade Virtual
Realizado em 22 a 24 de Novembro de 2005
Universidade Federal de Uberlândia – UFU
Faculdade de Engenharia Elétrica
WARV 2006 - II Workshop de Aplicações de Realidade Virtual
Realizado em 21 a 24 de Novembro de 2006
Universidade Federal de Pernambuco – UFPE
Centro de Informática
WRA (Workshop de Realidade Aumentada)
WRA 2004
I Workshop de Realidade Aumentada
Realizado na UNIMEP, Piracicaba - São Paulo em 2004
WRA 2005
II Workshop de Realidade Aumentada
Realizado na UNIMEP, Piracicaba - São Paulo em 2005
WRA 2006
III Workshop de Realidade Aumentada
Realizado na UERJ, Rio de Janeiro em 2006