244
Fundação�para�o�Desenvolvimento�da�UNESP ANAIS DO WRVA’08 5º WORKSHOP DE REALIDADE VIRTUAL E AUMENTADA 19 a 21-11-2008 | Bauru - SP Organizador José Remo Ferreira Brega 1ª Edição - 2008 Bauru - SP APOIO:

AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

  • Upload
    letram

  • View
    232

  • Download
    0

Embed Size (px)

Citation preview

Page 1: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

Fundação�para�o�Desenvolvimento�da�UNESP

AnAis do

wrvA’085º workshop de realidade virtual e aumentada

19 a 21-11-2008 | Bauru - sp

Organizador

José remo Ferreira Brega

1ª edição - 2008Bauru - sp

apoio:

Page 2: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

DIVISÃO TÉCNICA DE BIBLIOTECA E DOCUMENTAÇÃO UNESP – Campus de Bauru

006.3

W873

Workshop de Realidade Virtual e Aumentada; 5. :

2008 : Bauru, SP.

[Anais do] WRVA’08 5 Workshop de Realidade

Virtual e Aumentada, 19 a 21 de novembro de

2008, Bauru - SP / José Remo Ferreira Brega

(org.). – Bauru : FAPESP, FUNDUNESP, UNESP/FC,

Departamento de Computação : Sociedade

Brasileira de Computação 2008.

243 p. : il.

Bibliografia

ISBN 978-85-7917-016-4

1. Informática – Realidade virtual. 2.

Realidade virtual. 3. Linguagens – Bibliotecas.

I. Brega, José Remo Ferreira. II. Título.

Ficha catalográfica elaborada por Maria Thereza Pillon Ribeiro – CRB 3.869

Page 3: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

3

Sumário

Apresentação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7Programação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8Comissão Organizadora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8Comitê de Programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9

Palestras

As Fronteiras de Interface Humano-Computador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10Alexandre Cardoso e Cláudio Kirner

Aplicações de Processamento de Imagens, RV e RA para saúde - onde estão as oportuni-dades para o profissional de Computação? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10Fátima L. S. Nunes e Rosa M. E. M. Costa

Design de Jogos Educacionais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11André Luiz Battaiola

Mini cursos

Reconhecimento de padrões em tempo real usando a biblioteca OpenCV . . . . . . . . . . . . . . . . . . . .12Judith Kelner e Verônica Teichrieb

Sistema de Projeção de Baixo Custo para Realidade Virtual e Realidade Aumentada . . . . . . . . . . .13Marcelo de Paiva Guimarães

Combinando o Real e o Virtual: Uma visão geral da Realidade Misturada . . . . . . . . . . . . . . . . . . .13Antonio Carlos Sementille

Artigos

Sessão Técnica 1 – RA: Educação e Treinamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15Chair: Antonio Carlos Sementille – UNESP/Bauru

Torus Surfaces of Descriptive Geometry in Augmented Reality . . . . . . . . . . . . . . . . . . . . . . . . . . . .16Alvaro Lima, Gerson Cunha, Cristina Haguenauer, Luciana G. R. Lima

O Emprego de Realidade Aumentada na Viabilização da Comunicação em LIBRAS . . . . . . . . . .19José Remo Ferreira Brega, Antonio Carlos Sementille, Ildeberto Rodello, Elvis Fusco

Análise De Aplicações De Realidade Aumentada Na Educação Profissional: Um Estudo De Caso No Senai Dr/Go . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25Roger Luz, Marcos Wagner Souza Ribeiro, Alexandre Cardoso, Edgard Lamounier Jr., Hugo Rocha, Wender Silva

A Utilização da Realidade Aumentada no Tratamento e Simulação de Sinais Cardiológicos com BioFeedBack em Tempo Real . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31Arthur Augusto Bastos Bucioli, Edgard Lamounier Jr., Alexandre Cardoso

ReabRA: Reabilitação Cognitiva através de uma aplicação de Realidade Aumentada . . . . . . . . . .39Rosa Maria Costa, Diego Nascimento, Gustavo Jobim Carvalho

Page 4: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

4

Voltar ao sumário

Sessão Técnica 2 – RA: Técnicas, Equipamentos e Algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . .45Chair: Judith Kelner – UFPE

Perspective Correction Implementation for Embedded (Marker-Based) Augmented Reality . . . . .46Bernardo Reis, João Marcelo Teixeira, Veronica Teichrieb, Judith Kelner

CapCam um Dispositivo Portátil e Vestível para Aplicações de RA para Suporte à Inspe-ção Termal de Equipamentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52Aline Cavalcanti, Felipe Breyer, João Marcelo Teixeira, Veronica Teichrieb, Judith Kelner

Realidade Aumentada sem Marcadores Baseada na Amostragem de Pontos em Arestas . . . . . . . .60Francisco Simões, João Lima, Veronica Teichrieb, Judith Kelner

Implementação de Laboratórios Virtuais em Realidade Aumentada para Educação à Distância . . .66Cleberson Forte, Francisco Oliveira, Rafael Santin, Claudio Kirner

Realidade Aumentada em Dispositivos Móveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74Marlon Luz, Luís Fernando Fortes Garcia, Gilberto Marchioro

Sessão Técnica 3 – RV: Educação e Treinamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .80Chair: Marcos Wagner Souza Ribeiro – ULBRA/Itumbiara

Desenvolvimento de um Chatterbot para o Portal de Ensino da Universidade do Oeste de Santa Catarina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .81Cleia Gallert

Estudo de Máquinas Elétricas Auxiliado por Técnicas de Realidade Virtual . . . . . . . . . . . . . . . . . .85Afonso Junior, Alexandre Cardoso, Edgard Lamounier Jr.

Realidade Virtual não-imersiva como tecnologia de apoio no desenvolvimento de protó-tipos para reconstituição de ambientes históricos para auxilio ao ensino . . . . . . . . . . . . . . . . . . . . .92Rodrigo Vasconcelos Arruda, Wender Silva, Marcos Wagner Souza Ribeiro, Nadabe Cardoso Oliveira Alves Fortes, Edgard Lamounier Jr., Alexandre Cardoso

Realidade Virtual não-imersiva como tecnologia de apoio no desenvolvimento de protó-tipos para o auxilio no tratamento de aviofobia por profissionais de psicologia . . . . . . . . . . . . . . .98Danielly de Medeiros, Wender Silva, Edgard Lamounier Jr., Marcos Wagner Souza Ri-beiro, Alexandre Cardoso, Nadabe Cardoso Oliveira Alves Fortes

Proposta de desenvolvimento de um Jogo Eletrônico Educativo para crianças com defi-ciência auditiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .105Ana Cláudia Gomes de Oliveira, Lucimara Pin, Maria Carolina Moretti, Mateus Leo-nardo Castro Botega, Paulo Cruvinel

Sistema de Criação de Ambientes Virtuais para a Educação Inclusiva . . . . . . . . . . . . . . . . . . . . . . 113Fernanda Francielle de Oliveira, Alexandre Cardoso, Edgard Lamounier Jr.

Sessão Técnica 4 – RV: Educação e Treinamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119Chair: Alexandre Cardoso – UFU

Simulação do Laboratório de Superfícies Equipotenciais Baseada em Realidade Virtual . . . . . . .120Daniel Stefany Duarte Caetano, Edgard Lamounier Jr., Alexandre Cardoso

Page 5: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

5

Voltar ao sumário

O uso da Realidade Virtual no desenvolvimento de ferramentas educacionais para auxí-lio ao estímulo da lateralidade e dos sentidos de criança em fase de aprendizagem . . . . . . . . . . . .126Ana Emília Lelis da Silva, Wender Silva, Edgard Lamounier Jr., Marcos Wagner Souza Ribeiro, Alexandre Cardoso, Nadabe Cardoso Oliveira Alves Fortes

Uma ferramenta para o auxilio ao ensino da geometria espacial por meio de tecnologias de Realidade Virtual não-imersiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .133Murilo Borges de Oliveira, Wender Silva, mEdgard Lamounier Jr.,Marcos Wagner Sou-za Ribeiro, Alexandre Cardoso, Nadabe Cardoso Oliveira Alves Fortes

Uma ferramenta para o auxilio ao ensino da astronomia para alunos do ensino funda-mental utilizando a Realidade Virtual como tecnologia de apoio . . . . . . . . . . . . . . . . . . . . . . . . . .140Kelly Silva Aquino, Wender Silva, Edgard Lamounier Jr., Marcos Wagner Souza Ribei-ro, Alexandre Cardoso, Nadabe Cardoso Oliveira Alves Fortes

Uma Ferramenta para Visualização de Informação para Área de Negócios . . . . . . . . . . . . . . . . . .147Silvia Santos, Fátima Nunes, Ricardo José Sabatine

Um Sistema Interpretador para Datilologia com Saída Tridimensional . . . . . . . . . . . . . . . . . . . . .154Jose Brega, Antonio Carlos Sementille, Ildeberto Rodello

Sessão Técnica 5 – RV: Técnicas e Algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .159Chair: Ildeberto Rodelo, USP

Renderização de Cenas Tridimensionais Interativas em Computadores de Baixo Desempenho . .160Maikon dos Santos, Helio Pedrini

Uma Proposta de Categorização de TouchSensors na Definição de um Ambiente Exten-sível de Ensino à Distância Aplicado à Área de Engenharia de Software . . . . . . . . . . . . . . . . . . . .168Daniel Abella, Rodrigo Fujioka, César Vasconcelos, Ryan Ribeiro de Azevedo, Fred Freitas, Theoziran Lima

Utilizando XML Para Reconfigurar Ambientes Virtuais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .173Guilherme Fernando Oliveira, Ildeberto Rodello, Jose Brega, Antonio Carlos Sementille

Modelo de Rotação de Amostras Agrícolas Tridimensionais Utilizando Quatérnios e Dispositivo Não Convencional de Realidade Virtual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .178Leonardo Castro Botega, Paulo Cruvinel

Proposta de uma Arquitetura de Software para Adaptação de Conteúdo de Realidade Virtual para Dispositivos Móveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .186José Júnior, Marlus Dias Silva, Alexandre Cardoso, Edgard Lamounier Jr.

Um Framework Baseado no Protocolo IPv6 para Suporte a Ambientes Virtuais Distribuídos . . . .193Leopoldo Dundes, Ronaldo Correia, Rogério Eduardo Garcia

Sessão Técnica 6 – RV: Técnicas e Algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .200Chair: Fátima Nunes - EACH/USP

Hydra: Engine Modular para Construção de Ambientes Virtuais . . . . . . . . . . . . . . . . . . . . . . . . . .201Ronaldo dos Anjos Filho, Gabriel Almeida, Veronica Teichrieb, Judith Kelner

CoReactive: Um Sistema de Colaboração para Ambientes Virtuais Distribuídos . . . . . . . . . . . . .208Artur Santos

Page 6: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

6

Voltar ao sumário

Interface para distribuição e integração de Realidade Aumentada com Realidade Virtual por meio da plataforma CORBA, tendo como estudo de caso ambientes multidisciplina-res de biologia e química . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .215Wender Silva, Edgard Lamounier Jr., Alexandre Cardoso, Marcos Wagner Souza Ribeiro, Nadabe Cardoso Oliveira Alves Fortes

Detecção de Colisão de Objetos em Ambientes Virtuais para Treinamento Médico Utilizando JOGL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .220Marcello Kera, Helio Pedrini, Fátima Nunes

Interação em Aplicações para Treinamento Médico Virtual: Problemas e Soluções a partir de estudos de caso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .228Cléber Corrêa, Adriano Bezerra, Fátima Nunes

Um protótipo de ambiente virtual para simular objetos 2D e 3D referentes a imagens mamográficas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .236Michele Noda, Fátima Nunes, Adriano Bezerra

Índice autor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .243

Page 7: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

7

Voltar ao sumário

Apresentação

Como forma de interface inovadora e em efervescente pesquisa, a Realidade Virtual e Au-mentada (RV/RA) tem apresentado condições de aplicações nas mais diversas áreas . Educação, Me-dicina, Treinamento, Psicologia, dentre outras têm sido beneficiadas com pesquisas que visam per-mitir o aprimoramento da interface homem-máquina e a ampliação de fronteiras de utilização do computador .

Os diferentes grupos de trabalho e pesquisa brasileiros têm se dedicado a encontros e debates periódicos, visando a troca de informações e a difusão de novas tecnologias e produtos que já possui um histórico de mais de 10 anos . Veja lista completa dos eventos realizados na página da Comissão Especial de Realidade Virtual e Aumentada (CERV) . Esta publicação apresenta a o workshop de aplicações de Realidade Virtual que se realizará em Bauru (SP) no período de 19 (quarta-feira) a 21 (sexta-feira) de novembro de 2008 .

Nessa sua quinta edição o workshop será realizado conjuntamente com o IV Workshop de Visão Computacional (WVC’2008) .

Objetivos O Workshop de Realidade Virtual e Aumentada visa promover o encontro e a apresentação

de aplicações desenvolvidas ou em desenvolvimento de RV e RA nas mais diversas áreas . Permitirá a troca de informações e a difusão de tecnologias para o desenvolvimento por meio de mini cursos e de encontros agendados entre os pesquisadores da área .

O público alvo é composto por: Professores e pesquisadores, que terão oportunidade de reunião e de participação nas • sessões técnicas, mini cursos e palestras do evento; Alunos de graduação e pós-graduação, que terão acesso, por meio de mini cursos a apren-• dizado sobre tecnologia e estratégias de desenvolvimento de soluções de RV e RA; Demais profissionais de áreas afins. •

Tópicos de Interesse Os principais temas a serem tratados no workshop:

Aspectos de desenvolvimento de sistemas de Realidade Virtual, Misturada e Aumentada; • Sistemas de autoria de Ambientes Virtuais; • Interação multimodal em ambientes de Realidade Virtual Misturada e Aumentada; • Aspectos de usabilidade em Ambientes Virtuais; • Aplicações industriais, médicas, educacionais e de entretenimento de Realidade Virtual, • Misturada e Aumentada; Fatores humanos em sistemas de Realidade Virtual, Misturada e Aumentada; • Impactos da Realidade Virtual, Misturada e Aumentada; • Ambientes Virtuais Distribuídos . •

Page 8: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

8

Voltar ao sumário

Programação 19/11/2008 20/11/2008 21/11/2008

Manhã MC3 S1 S5 8h30 às 10h00

Coffee-break

Manhã 10h30 às 12h00 MC3 S2 S6

Tarde 14h00 às 15h30

Pa S3 MC2

Coffee-break

Tarde 16h00 às 17h30

A1 S4 MC2

Noite 19h00 às 20h30

P1 MC1

Noite 20h30 às 22h00

P2 MC1

Comissão Organizadora Prof . Dr . José Remo Ferreira Brega (UNESP) • Prof . Dr . Antônio Carlos Sementille (UNESP) • Prof . Dr . Aparecido Nilceu Marana (UNESP) • Prof . Dr . Humberto Ferasoli Filho (UNESP) • Profa . Dra . Márcia Aparecida Zanolli Meira (UNESP) • Prof . Dr . Ildeberto Aparecido Rodello (FEARP-USP) • Profa . Dra . Fátima de Lourdes dos Santos Nunes Marques (USP) • Prof . Dr . Marco Antonio Corbucci Caldeira (UNESP) •

Colaboradores

Alunos de graduação • Assessoria de Comunicação •

Site: Leonardo Fortunato •

Page 9: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

9

Voltar ao sumário

Comitê de Programa Edgard Afonso Lamounier Júnior – UFU • Marcos Wagner de Souza Ribeiro – ULBRA • Alberto Raposo – PUC/RJ • Alexandre Cardoso – UFU • Anderson Maciel - UFRGS • Antônio Carlos Sementille – UNESP • Bianchi Serique Meiguinis - UFPA • Cláudio Kirner - UFOP • Creto A Vidal – UFCE • Fátima de Lourdes dos Santos Nunes Marques - USP • Ildeberto Aparecido Rodello - FEARP/USP • José Remo Ferreira Brega – UNESP • Judith Kelner - UFPE • Kenedy Lopes Nogueira - UFU/UEMG • Liliane Machado - UFPB • Luciano Soares - PUC/RJ • Marcelle de Sá Guimarães - UFF • Marcelo Paiva – UNASP • Paulo Bressan – Mackenzie • Robson Siscoutto – UNIC • Romero Tori - USP e Senac/SP • Rosa Costa – UERJ • Verônica Teichrieb - UFPE •

Page 10: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

10

Voltar ao sumário

Palestras Palestra de Abertura (A1) Título da Palestra: As Fronteiras de Interface Humano-Computador Prof. Alexandre Cardoso – Universidade Federal de Uberlândia (UFU) . Prof. Cláudio Kirner – Universidade Federal de Ouro Preto (UFOP) . Resumo: A evolução de computadores, redução de custos e a demanda por utilização colo-

cam a temática da Interface Humano-Computador como um dos temas mais relevantes de Pesquisa . Realidade Virtual e Realidade Aumentada relacionam-se com as estratégias mais inovadoras em tal contexto. Esta palestra apresentará definições relevantes, utiliza-ção e algumas dicas e diretivas para desenvolvimento de soluções de Realidade Virtual e Aumentada .

Currículo dos Palestrantes: Prof. Alexandre Cardoso – Universidade Federal de Uberlândia (UFU) . Currículo: Possui graduação em Engenharia Elétrica pela Universidade Federal de Uber-

lândia (1987 , mestrado em Engenharia Elétrica pela Universidade Federal de Uberlân-dia (1991) e doutorado em Engenharia Elétrica pela Universidade de São Paulo (2002) . Atualmente é Professor Adjunto da Universidade Federal de Uberlândia e Revisor de periódico da Revista do CCEI . Tem experiência na área de Ciência da Computação, com ênfase em Metodologia e Técnicas da Computação . Atuando principalmente nos seguin-tes temas: Realidade Virtual, Interfaces, Educação a Distância .

Prof. Cláudio Kirner – Universidade Federal de Ouro Preto (UFOP) . Currículo: Possui graduação em Engenharia Elétrica pela Universidade de São Paulo

EESC-USP (1973), mestrado em Engenharia Eletrônica pelo Instituto Tecnológico de Aeronáutica -ITA (1978), doutorado em Engenharia de Sistemas e Computação pela Uni-versidade Federal do Rio de Janeiro UFRJ (1986) e pós-doutorado pela University of Colorado at Colorado Springs -UCCS (1993-1995) . Atualmente é Professor Doutor da Universidade Federal de Ouro Preto . Tem experiência na área de Ciência da Computação, com ênfase em Realidade Virtual e Realidade Aumentada, Interação Humano-Computa-dor, Ambientes Colaborativos, Sistemas Distribuídos e Educação à Distância . Coordenou o I Workshop de Realidade Virtual, em 1997, e o I Workshop de Realidade Aumenta-da, em 2004, e outros subseqüentes . Orientou 25 alunos de mestrado e 7 de doutorado na COPPE/UFRJ, USP-SP, UNICAMP, USP-S .Carlos, UFSCar e UNIMEP; coordenou Projetos PROTEM-CC, Projetos Integrados -CNPq, Projetos FAPESP e Projetos RHAE, num montante aproximado de 600.000 reais; publicou cerca de 180 artigos científicos e 30 livros e capítulos como autor e editor .

Palestra (P1) Título da Palestra: Aplicações de Processamento de Imagens, RV e RA para saúde -

onde estão as oportunidades para o profissional de Computação? Profa. Fátima L. S. Nunes – Centro Universitário Eurípides de Marília (UNIVEM) . Profa. Rosa M. E. M. Costa – Universidade Estadual do Rio de Janeiro (UERJ) . Resumo: A área de saúde constitui um dos campos mais beneficiados pelas aplicações de

Processamento de Imagens, Realidade Virtual e Realidade Aumentada . Ferramentas para auxílio ao diagnóstico, simulação de procedimentos, treinamentos virtuais e reabilitação estão entre as carências desta área . Muitas vezes o aluno recém-formado na área de Com-

Page 11: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

11

Voltar ao sumário

putação desconhece as oportunidades que este campo de conhecimento pode oferecer . Esta palestra pretende abordar essas oportunidades, mostrando o que tem sido feito na área, principalmente em nível nacional, e vislumbrando as carências existentes . Pretende, ainda, apresentar aspectos de implementação e requisitos que devem ser preenchidos para obter o sucesso de uma aplicação, visando a torná-la um produto que pode ser empregado na rotina dos profissionais de saúde.

Currículo das Palestrantes: Profa. Fátima L. S. Nunes – Centro Universitário Eurípides de Marília (UNIVEM) . Currículo: Possui graduação em Bacharelado Em Ciência da Computação pela Univer-

sidade Estadual Paulista Júlio de Mesquita Filho (1994), graduação em Tecnologia Em Processamento de Dados pela Universidade Estadual Paulista Júlio de Mesquita Filho (1988), mestrado em Engenharia Elétrica pela Universidade de São Paulo (1997), douto-rado em Física Computacional pela Universidade de São Paulo (2001) e pós-doutorado pela Universidade de São Paulo (2003) . Atualmente é professora titular do Centro Uni-versitário Eurípides de Marília, bolsita nível 2 do Conselho Nacional de Desenvolvimen-to Científico e Tecnológico e da Universidade de São Paulo. Tem experiência na área de Ciência da Computação, com ênfase em Processamento de Imagens e Realidade Virtual, atuando principalmente nos seguintes temas: realidade virtual, processamento de ima-gens, banco de dados, mamografia e internet.

Profa. Rosa M. E. M. Costa – Universidade Estadual do Rio de Janeiro (UERJ) . Currículo: Possui graduação em Matemática pela Universidade Federal Fluminense

(1985), mestrado em Engenharia de Sistemas e Computação pela Universidade Federal do Rio de Janeiro (1994) e doutorado em Engenharia de Sistemas e Computação pela Universidade Federal do Rio de Janeiro (2000) . Atualmente é professor adjunto da Uni-versidade do Estado do Rio de Janeiro . Tem experiência na área de Ciência da Compu-tação, com ênfase em Realidade Virtual nas Neurociências, atuando principalmente nos seguintes temas: Realidade Virtual, Inteligência Artificial, Engenharia de Software, Infor-mática na Educação, EAD e RV aplicada a reabilitação cognitiva de pessoas com danos cerebrais .

Palestra (P2) Título da Palestra: Design de Jogos Educacionais Prof. André Luiz Battaiola - Departamento de Design – Universidade Federal do Paraná

(UFPR) . Resumo: O desenvolvimento das mídias digitais vem aumentando consideravelmente nos úl-

timos anos, em parte por causa do desenvolvimento das tecnologias de telecomunicação e informática . Entre os segmentos que mais tem chamado a atenção neste desenvolvimento é o de jogos eletrônicos informatizados, os games . A indústria de games nos EUA tem o faturamento semelhante ao de indústrias importantes como a cinematográfica e a fono-gráfica. Com isto verifica-se que a produção "romântica" de games ou os "games de au-toria" não condizem mais com a realidade. Para se produzir um bom game é necessário o trabalho colaborativo de profissionais de diversas áreas. Paralelo ao desenvolvimento da tecnologia digital vê-se aumentar a dificuldade da aprendizagem "tradicional" em função da dificuldade em se manter a motivação dos alunos ao longo do processo ensino/apren-dizagem . Um dos fatores que pode favorecer esta motivação encontra-se na conexão entre objetivos essenciais, recompensas exteriores e fatores psicológicos, de forma a resultar em algum tipo de satisfação para o aluno . Observa-se também que muitos alunos empre-endem horas semanais jogando, portanto é natural inferir que a utilização destes jogos,

Page 12: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

12

Voltar ao sumário

ao aliar seus elementos para manter o usuário envolvido na narrativa, com os objetivos instrucionais dos educadores, pode potencializar a experiência do processo ensino/apren-dizagem . Alguns estudiosos consideram este fato como a revolução da aprendizagem do séc. XXI, pois poderá possibilitar o aprender brincando, sem as "travas" do processo "tradicional", muitas vezes sofrido e penoso.

Para a confluência dos conceitos de GameDesign e do processo ensino/aprendizagem num jogo, de forma eficaz, se faz necessário planejar e registrar os passos executados durante o desenvolvimento do mesmo . Este planejamento e registro objetivam a consolidação do trabalho da equipe e a orientação de futuros trabalhos, sem implicar na determinação de um modo absoluto de desenvolvimento de games, mas no desenvolvimento de um méto-do auxiliar para a produção de um determinado game e que possa, dentro de necessidades e condições específicas, servir de base para a construção de outros games.

A proposta desta palestra é apresentar métodos que possibilitem utilizar de forma eficien-te os conceitos das duas áreas citadas – jogos e educação -para a produção de um jogo educacional . Serão feitas considerações sobre as principais linhas conceituais de apren-dizagem, definição do público-alvo, formas de avaliação e aplicação dos elementos em games, processos de desenvolvimento de personagens e cenários e tipos de prototipação, teste e avaliação dos jogos .

Currículo do Palestrante: Possui graduação em Bacharelado em Física pela Universidade de São Paulo (1980) ,

mestrado em Engenharia Elétrica pela Universidade de São Paulo (1986), doutorado em Engenharia Elétrica pela Universidade de São Paulo (1991) e pos-doutorado pela Univer-sity of Wisconsin-Madison (1993) . Atualmente é Professor Adjunto IV da Universidade Federal do Paraná . Tem experiência na área de Ciência da Computação, com ênfase em Metodologia e Técnicas da Computação . Atuando principalmente nos seguintes temas: Computacao Grafica.

Mini cursos Mini-curso (MC1) Título do Mini-curso: Reconhecimento de padrões em tempo real usando a biblioteca OpenCV Profa. Judith Kelner - Universidade Federal de Pernambuco (UFPE) . Profa. Veronica Teichrieb - Universidade Federal de Pernambuco (UFPE) . Resumo: O objetivo deste minicurso é mostrar o potencial do OpenCV para reconhecimento

de padrões com restrições de tempo real . Serão apresentadas as principais funções de pro-cessamento de imagem presentes no OpenCV que podem ser usadas em sistemas de re-conhecimento de padrões em tempo real . Os algoritmos implementados serão explicados, juntamente com informações sobre como eles podem ser utilizados e sua aplicabilidade a problemas reais . Aplicações de exemplo também serão apresentadas de forma a ilustraro uso das funcionalidades de visão computacional descritas .

Curriculo das Conferencistas: Profa. Judith Kelner - Universidade Federal de Pernambuco (UFPE) . Currículo: Possui graduação em Engenharia Civil pela Universidade Federal de Pernam-

buco (1976), mestrado em Ciências da Computação pela Universidade Federal de Per-nambuco (1981) e doutorado em Computer Science -University of Kent at Canterbury (1993) . Atualmente é professor adjunto da Universidade Federal de Pernambuco . Tem experiência na área de Ciência da Computação, com ênfase em nas áreas de Redes de Computadores e Processamento Gráfico, atuando principalmente nos seguintes temas:

Page 13: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

13

Voltar ao sumário

redes de ambiente, realidade virtual e aumentada, interfaces avançadas, qualidade de ser-viços, e multimedia .

Profa. Veronica Teichrieb - Universidade Federal de Pernambuco (UFPE) . Currículo: Possui graduação em Bacharel em Informática pela Universidade da Região da

Campanha (1996), mestrado em Ciência da Computação pela Universidade Federal de Pernambuco (1999) e doutorado em Ciência da Computação pela Universidade Federal de Pernambuco (2004) . Atualmente é professora adjunta I do Centro de Informática da Universidade Federal de Pernambuco . Tem experiência na área de Ciência da Compu-tação, com ênfase em Processamento Gráfico (Graphics), atuando principalmente nos seguintes temas: realidade virtual, realidade aumentada e interação 3D .

Mini-curso (MC2) Título do Mini-curso: Sistema de Projeção de Baixo Custo para Realidade Virtual e Re-

alidade Aumentada Prof. Marcelo de Paiva Guimarães - Faculdade Campo Limpo Paulista/Centro Universi-

tário -Brasil . Resumo: Este tutorial visa apresentar soluções de baixo custo para o desenvolvimento de

aplicações de Realidade Virtual e Realidade Aumentada com alto grau de imersão e in-teração. Discute-se os desafios de implementação destes sistemas, desmistificando a re-putação de serem caros e complexos. O tutorial mostra uma visão geral da especificação, instalação e configuração de vários sistemas computacionais, como os multiprocessados e os aglomerados de computadores . Além disso, discute os sistemas de multiprojeção e di-versos dispositivos de interação. Por fim, mostra exemplos de aplicações desenvolvidas.

Currículo do Conferencista: Possui graduação em Tecnologia Em Processamento de Dados pelo Instituto Municipal

de Ensino Superior de Assis (1994), mestrado em Ciência da Computação pela Universi-dade Federal de São Carlos (2000) e doutorado em Engenharia Elétrica pela Universidade de São Paulo (2004) . Atualmente é professor da Faculdade de Campo Limpo Paulista e professor do Centro Universitário Adventista de São Paulo . Tem experiência na área de Ciência da Computação, com ênfase em Software Básico, atuando principalmente nos seguintes temas: realidade virtual, aglomerados gráficos, sistemas distribuídos e trabalho cooperativo .

Mini-curso (MC3) Título do Mini-curso: Combinando o Real e o Virtual: Uma visão geral da Realidade Mis-

turada Prof. Antônio Carlos Sementille - Centro Universitário Eurípides de Marília (UNIVEM) e

Universidade Estadual Paulista (UNESP) . Resumo: A Realidade Virtual (RV) surgiu como uma nova forma de interface homem-má-

quina, possibilitando a navegação em ambientes tridimensionais . Por meio da utilização desta interface, o usuário pode navegar e interagir, em tempo real, em um ambiente tridi-mensional gerado por computador, usando dispositivos multisensoriais .

Recentemente a RV vem adquirindo novos desdobramentos, como por exemplo, a Reali-dade Aumentada (RA), que consiste buscar por ambientes virtuais, cujos limites seriam a própria realidade, enriquecendo-a com recursos virtuais, abrindo novas fronteiras, limita-das apenas pela imaginação humana .

A Realidade Aumentada, portanto, é um sistema que visa suplementar o mundo real com ob-

Page 14: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

14

Voltar ao sumário

jetos virtuais gerados por computador, criando a ilusão de coexistência no mesmo espaço . Avançando-se na direção dos ambientes virtuais, tem-se a Virtualidade Aumentada (VA),

que ocorre quando o ambiente principal é virtual ou há predominância do virtual . Pode ser definida como o enriquecimento do ambiente virtual com a presença de elementos reais pré-capturados ou capturados em tempo real, como pessoas ou objetos . Enquanto a Realidade Aumentada caracteriza-se pelo predomínio do mundo real sobre o virtual, na Virtualidade Aumentada ocorre o predomínio do virtual sobre o real .

A área de pesquisa que congrega a Realidade Aumentada e a Virtualidade Aumentada, é denominada Realidade Misturada, e é sobre esta que versa este mini-curso .

Pretende-se abordar neste mini-curso: a caracterização de Realidade Misturada; uma dis-cussão sobre os principais componentes de hardware e software necessários; a diferencia-ção com relação à Realidade Virtual; os principais benefícios e desafios encontrados em seu desenvolvimento; a descrição de alguns sistemas de Realidade Misturada disponíveis na literatura; e uma introdução às bibliotecas ARToolKit e OSGART .

Currículo do Conferencista: Possui graduação em Ciência da Computação pela Universidade Estadual Paulista Júlio

de Mesquita Filho (1988), mestrado em Ciência da Computação pela Universidade Fede-ral de São Carlos (1994) e doutorado em Física Computacional pela Universidade de São Paulo (1999) . Atualmente é professor assistente doutor da Universidade Estadual Paulis-ta Júlio de Mesquita Filho (UNESP-Bauru) e professor doutor do Centro Universitário Eurípides de Marília (UNIVEM) . É docente e orientador credenciado no Programa de Pós-Graduação em Ciência da Computação da UNIVEM, aprovado pela CAPES (2002) . Foi Membro da Comissão Especial de Realidade Virtual -CERV da Sociedade Brasileira de Computação de 2004 a 2007 . Tem experiência na área de Ciência da Computação, com ênfase em Realidade Virtual e Realidade Aumentada, atuando principalmente nos seguintes temas: sistemas de realidade virtual e realidade aumentada, ambientes virtuais distribuídos e redes de computadores .

Page 15: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

15

Voltar ao sumário

sessão TécnicA 1ra: educação e treinamentochair: antonio carlos sementille - unesp/Bauru

Page 16: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

16

Voltar ao sumário

Torus Surfaces of Descriptive Geometry in Augmented Reality

Alvaro José Rodrigues de Lima, Gerson Gomes Cunha, Cristina Jasbinschek Haguenauer,

Luciana Guimarães Rodrigues de Lima

Universidade Federal do Rio de Janeiro

[email protected], [email protected], [email protected], [email protected]

Abstract

This article presents the state of the art use of

Augmented Reality in the teaching of Descriptive

Geometry and also presents a new application, the

VSTARGD – Viewer of Torus Surfaces of Descriptive

Geometry Through Augmented Reality. It is also

presented and analaysed the contribution of

VSTARGD to the teaching of Descriptive Geometry.

1. Introduction

Descriptive Geometry is an essential discipline for

the professionals who need solving problems in space.

Due to the difficulties encountered by many students to

understand it, it is justifiable to use Augmented Reality

as an alternative to appeal to teaching/learning.

2. State of the Art

Construct 3D, (Figure 1) an Augmented Reality

tool in the teaching of Geometry, was developed in

Austria. This application is based on HMD. According

to the authors, Construct 3D was not created to be a

professional 3D modeler, but "a simple tool for

building 3D, without animation, in an environment with

immersive educational purposes." [1].

Supported by the pedagogical theory of

Constructivism and, in the field of Psychology that

deals with researches of spatial abilities, [Ibid] the

authors conducted several tests with Construct 3D and

High School and University students. They concluded

that male students tend to solve the problems of space

in a holistic way, while the female ones solve them in

holistic or analytic ways or combining the two

strategies [1]

The basic configuration of Construct 3D consists of

two users with HMD, sharing a virtual space. Its

current version allows the construction of points, three-

dimensional geometric figures. It enables measuring

and analyzing the structures of geometric elements

studied. The authors also point out that: "Any operation

in Construct 3D consists of relocating a point or

element and reassessing its new resulting

configuration" [1].

Figure 1. Students studying DG through Construct 3D – [2]

"Students working directly in 3D space can

understand problems and spatial relationships better

and faster than the traditional methods". But the

authors say that Construct 3D was not created to

replace the traditional teaching or based on the CAD,

but to add to these [1].

In Brazil, at the Federal University of Para, card

markers reconfigurable on Environment of

Augmented Reality were developed (Figure 2). Such

markers of the ARToolKit system (an open source free

digital library, created for the development of

applications in AR), can have its entirety altered by the

user when its configuration is changed, following a

legend, and therefore, the virtual models also change in

real time. Its first application was for the teaching of

Space Geometry.

Page 17: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

17

Voltar ao sumário

Figure 2. Two markers seen in detail [3].

As an advantage of this system you may have the

dispensation of costly equipment for the creation of the

environment of AR and the great interactivity available,

the user simply consults a caption [3].

In 2005, at the School of Fine Arts of UFRJ, the

prototype Viewer of Conic Sections of Descriptive

Geometry Through Augmented Reality was developed

with the support of the Virtual Reality Group (GRVA)

from The Computational Techniques in Engineering

Laboratory (LAMCE) by COPPE [4 ].

Developed through DART - Designer's Augmented

Reality Toolkit, which works in the Macromedia

Director MX program, the viewer is an example of an

AR based Monitor.

In the prototype, you can choose which conic

section you want to see: circle, ellipse, parable or

hyperbole (Figure 3), and you can choose for their

respective descriptive projections, or the prospect of

the three-dimensional solid, or by combining the two.

Figure 3. Interface of the first prototype where we see a

hyperbolic conic section in an environment of augmented

reality.

3. VSTARGD

In 2007, continuing the researches, a new application,

more comprehensive and with more resources than the

first prototype was developed: The VSTARGD -

Viewer of Torus Surfaces of Descriptive Geometry

Through Augmented Reality (Figure 4).

Figure 4. Interface VSTARGD

The viewer of Conic Sections offers twelve

different modes of viewing available, while in

VSTARGD, there are twenty-one different options, of

which three are animated with movement, enabling the

user to see in detail the result of different cuts in an

open torus , including the view of the theorem of the

bitangent section of Ivon Villaceu.

Figure 5. Visualization of the theorem of Ivon Villaceu

through Augmented Reality.

VSTARGD is also an AR based Monitor, developed

through DART. In the prototype, it is possible to

choose which torus area you want to see: open, closed,

reentrant, or you can choose from three different cases

of torus section: horizontal, tangent to the generatrix

circumference or bitangent. (Figure 5), and also the

Page 18: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

18

Voltar ao sumário

opportunity to choose for their respective descriptive

projections, or the prospect of three-dimensional solid,

or by combining the two, as in the previous prototype

The option exploded in this sudy brings the

simultaneous animation of solids and their

corresponding projections as an important innovation.

(Figures 6 and 7)

Figures 6 and 7. Two moments of animation, showing a toric

section through Augmented Reality.

The testing of these different modes of complementary

viewing allows the development of the so-called Space

Intelligence, category defined in the Theory of Multiple

Intelligencies, ABREU [5] which can be understood as

being vital for the total dominion of the Descriptive

Geometry.

We believe that the Traditional Teaching favors

the so-called Linguistics Intelligence, and Logic-

Mathematics, neglecting the Space Intelligence,

resulting in the difficulty for the students to learn the

subject.

4. Final Considerations

The current phase of this research project includes

the implementation and evaluation of applications

developed in Augmented Reality.

This will be done by the availability of prototypes

for use in classrooms, in the computers lab, and later on

the launching of the results by the portal Espaço GD

(GD Space) (www.eba.ufrj.br/gd).

The interaction of the students with the application

of Augmented Reality will be directed with the aim of

identifying possibilities and limitations of the technique

used. Moreover, interviews will be conducted in order

to detect features of the perception of the student, such

as: increased interest and motivation, degree of

difficulty encountered, among others.

Another aspect to be evaluated concerns the

minimum requirements of hardware, in relation to the

configuration average of didactic laboratories of UFRJ

for full use of the application developed.

5. Acknowledgements

Our thanks to the Group of Applied Virtual Reality

(GRVa) Laboratory of Computational Methods in

Engineering (LAMCE) by COPPE, the Laboratory for

Research on Information Technology and

Communication (LATEC), the Laboratory of Computer

Graphics (LCG) of the School of Fine Arts and the

University Foundation José Bonifácio (all of the

UFRJ), the support provided to our research.

5. References [1] H.Kaufmann, K. Steinbüegl, A. Dünser, and J.Gluck,

“General Training of Spatial Abilities by Geometry

Education in Augmented Reality”. In Annual Review of

CyberTherapy and Telemedicine: A Decade of VR, vol. 3,

2005, pp. 65-76.

[2] www.ims.tuwien.ac.at/research/spatial_abilities/

[3] B.S. Meiguins, I.A Almeida, and M.A. Oikawa “Cartões

Marcadores Reconfiguráveis em Ambientes de Realidade

Aumentada”. In VIII Symposium on Virtual Reality, Pará,

2006. [4] A.J.R. Lima, C.J. Haguenauer, and G.G. Cunha, “A

Realidade Aumentada no Ensino de Geometria Descritiva” In

VII International Conference on Graphics Engineering

of Arts and Design e XVIII Simpósio Nacional de

Geometria Descritiva e Desenho Técnico, Curitiba,

2007.

[5] K. Abreu, “Uma Aplicação de Inteligências Múltiplas no

Aprendizado de Matemática – Representação Gráfica de

Funções de Primeiro e Segundo Graus”. Dissertação de

Mestrado em Engenharia de Produção – Centro Tecnológico,

Universidade Federal de Santa Catarina, Florianópolis, 2002.

Page 19: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

19

Voltar ao sumário

O EMPREGO DE REALIDADE AUMENTADA NA VIABILIZAÇÃO DA COMUNICAÇÃO EM LIBRAS

José Remo Ferreira Brega1

Antônio Carlos Sementille1

Ildeberto Aparecido Rodello2

Elvis Fusco3

Daniel Peixoto da Silva1

Flávio Henrique Furlanetto1

Leonardo Henrique da Silva Ruiz1

1Laboratório de Sistemas de Tempo Real (LSTR) - Departamento de Computação (DCo) - Universidade Estadual Paulista (Unesp) -Av . Luiz E . C . Coube 14-01 - Vargem Limpa - Tel (014) 3201 6000 R 6420 - Caixa Postal 473 - CEP

17 .033-360 - Bauru - SP - Brasil {remo,semente}@fc .unesp .br

2Faculdade de Economia, Administração e Contabilidade de Ribeirão Preto (FEA-RP) . - Av. Bandeirantes 3900 • Monte Alegre • Tel (016) 3602 3896 CEP 14040-900 •Ribeirão Preto - SP – Brasil

rodello@fearp .usp .br 3Centro Universitário Eurípides de Marília (UNIVEM) - Fundação Eurípides Soares da Rocha (FEM) -Av . Hygino

Muzzi Filho, 529 - Tel (014) 3402 0833 - Caixa Postal 2041 CEP 17 .525-901 - Marília - SP - Brasil fusco@univem .edu .br

Resumo – Este artigo apresenta uma solução utilizando Realidade Aumentada para estabelecer uma comunicação em LIBRAS entre avatares humanóides. Este tipo de comunicação possui um caráter tridimensional e no seu modelo completo necessita das expressões faciais dos interlocutores. Nesta solução, além dos movimentos gesticulares, foram adicionadas as faces dos usuários, através da captura em tempo real.

Palavras-Chave – Avatares, Jartoolkit, Java3D, LIBRAS .

Abstract - This paper presents solution using a Augmented reality to establish a communication between LIBRAS humanoid avatars. This communication has a three-dimensional character and its full model needs the facial expressions of speakers. Therefore, in addition to mimic movements have been added over the capture in real time the faces of users.

Keywords – Avatars, Jartoolkit, Java3D, LIBRAS .

1 INTRODUÇÃO

Segundo Kirner e Tori [1], a Realidade Virtual (RV) é uma interface avançada do usuário para acessar aplicações executadas no computador . Esta aplicação deve conter um

ambiente tridimensional, sintético gerado por computador e o usuário pode interagir em tempo real . Este mundo virtual pode ser combinado com imagens capturadas do mundo real, chegando a uma definição de Realidade Misturada [2] . Dependendo desta forma de combinação pode-se chegar a vertentes da Realidade Misturada, que vai desde um ambiente totalmente real, passando pela Realidade Aumentada (onde há a inserção de objetos virtuais dentro do ambiente real), pela Virtualidade Aumentada (onde há a inserção de objetos reais em ambientes virtuais), até se chegar a um ambiente totalmente virtual .

Figura 1: Escala da Virtualidade [3]

Page 20: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

20

Voltar ao sumário

Em um ambiente virtual, um agente pode ser definido como a representação da figura humana virtual, criada e comandada por computador e um avatar é um humano virtual controlado pelo usuário [4] . Ambos podem ser representados por ícones 2D, filmes, formas 3D, e até por corpos completos [5] . O objetivo deste artigo é, utilizando-se da combinação de imagens reais e virtuais, apresentar o uso de um avatar humanóide imerso em um ambiente virtual, com algumas características reais, fornecidas por imagens capturadas através de uma câmera digital, resolver a dificuldade de geração de movimentos em LIBRAS .

3 . LIBRAS

As línguas de sinais são utilizadas pela maioria das pessoas deficientes auditivas . No Brasil, existem duas línguas de sinais: a língua brasileira de sinais Kaapor – LSKB, utilizada pelos índios da tribo Kaapor, cuja maioria é surda, e a língua brasileira de sinais - LIBRAS, que é utilizada nos centros urbanos . A língua portuguesa, no caso dos deficientes auditivos, é considerada uma segunda língua [6] . Em 24 de abril de 2002 a LIBRAS foi reconhecida como meio legal de comunicação e expressão das comunidades surdas do Brasil

3 .1 A LIBRAS e sua natureza 3D

As línguas de sinais são línguas naturais porque, como as línguas orais, sugiram espontaneamente da interação entre pessoas e devido à sua estrutura permitem a expressão de qualquer conceito - descritivo, emotivo, racional, literal, metafórico, concreto, abstrato - enfim, permitem a expressão de qualquer significado decorrente da necessidade comunicativa e expressiva do ser humano .

As línguas de sinais distinguem-se das línguas orais porque se utilizam de um meio ou canal visual-espacial e não oral auditivo . Assim, articulam-se espacialmente e são percebidas visualmente, ou seja, usam o espaço e as dimensões que ele oferece na constituição de seus mecanismos “fonológicos”, morfológicos, sintáticos e semânticos para veicular significados, os quais são percebidos pelos seus usuários através das mesmas dimensões espaciais . Daí o fato de muitas vezes apresentarem formas icônicas, isto é, formas linguísticas que tentam copiar o referente real em suas características visuais . Esta iconicidade, mais evidente, nas estruturas das línguas de sinais do que nas orais, deve-se ao fato de que o espaço parece ser mais concreto e palpável do que o tempo, dimensão utilizada pelas línguas orais-auditivas quando constituem suas estruturas através de seqüências sonoras que, basicamente, se transmitem temporalmente . (BRITO, 2003)

Entretanto, as formas icônicas das línguas de sinais não são universais ou o retrato fiel da realidade . Cada língua de sinais representa seus refentes, ainda que de forma icônica, convencionalmente, porque cada uma vê os objetos, seres e eventos representados em seus sinais ou palavras sob uma

determinada ótica ou perspectiva . Por exemplo, o sinal ÁRVORE em LIBRAS representa o tronco da árvore através do antebraço e os galhos e as folhas através da mão aberta e do movimento interno dos seus dedos . Porém, o sinal para o mesmo conceito em CSL (língua de sinais chinesa) representa apenas o tronco com as duas mãos semiabertas e os dedos dobrados de forma circular . Em LIBRAS, o sinal CARRO/DIRIGIR é icônico porque representa o ato de dirigir, porém, é também convencional porque em outras línguas de sinais não toma necessariamente este aspecto dos referentes ‘carro’ e ‘ato de dirigir’ como motivação de sua forma, mas sim outros .

Conforme [7] a LIBRAS, como toda língua de sinais, é uma língua de modalidade gestual-visual porque utiliza, como canal ou meio de comunicação, movimentos gestuais e expressões faciais que são percebidos pela visão; portanto, diferencia da Língua Portuguesa, que é uma língua de modalidade oral-auditiva por utilizar, como canal ou meio de comunicação, sons articulados que são percebidos pelos ouvidos . Mas as diferenças não estão somente na utilização de canais diferentes, estão também nas estruturas gramaticais de cada língua .

3 .2 Estrutura Lingüística da LIBRAS

A LIBRAS é dotada de uma gramática constituída a partir de elementos constitutivos das palavras ou itens lexicais e de um léxico (o conjunto das palavras da língua) que se estruturam a partir de mecanismos morfológicos, sintáticos e semânticos que apresentam especificidade, mas seguem também princípios básicos gerais . Estes são usados na geração de estruturas lingüísticas de forma produtiva, possibilitando a produção de um número infinito de construções a partir de um número finito de regras . É dotada também de componentes pragmáticos convencionais, codificados no léxico e nas estruturas da LIBRAS e de princípios pragmáticos que permitem a geração de implícitos sentidos metafóricos, ironias e outros significados não literais . Estes princípios regem também o uso adequado das estruturas lingüísticas da LIBRAS, isto é, permitem aos seus usuários usar estruturas nos diferentes contextos que se lhes apresentam de forma a corresponder às diversas funções lingüísticas que emergem da interação do dia a dia e dos outros tipos de uso da língua . [7]

3 .3 O Sinal e seus parâmetros

O que é denominado de palavra ou item lexical nas línguas orais-auditivas, são denominados sinais nas línguas de sinais [7] . Estes são formados a partir da combinação do movimento das mãos com um determinado formato em um determinado lugar, podendo este lugar ser uma parte do corpo ou um espaço em frente ao corpo . Estas articulações das mãos, que podem ser comparadas aos fonemas e às vezes aos morfemas, são chamadas de parâmetros, portanto, nas

Page 21: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

21

Voltar ao sumário

línguas de sinais podem ser encontrados os seguintes parâmetros: 1 . configuração das mãos: são formas das mãos, que

podem ser da datilologia (alfabeto manual) ou outras formas feitas pela mão predominante (mão direita para os destros), ou pelas duas mãos do emissor ou sinalizador . Os sinais APRENDER, LARANJA e ADORAR têm a mesma configuração de mão .

2 . ponto de articulação: é o lugar onde incide a mão predominante configurada, podendo esta tocar alguma parte do corpo ou estar em um espaço neutro vertical (do meio do corpo até à cabeça) e horizontal (à frente do emissor) . Os sinais TRABALHAR, BRINCAR, CONSERTAR são feitos no espaço neutro e os sinais ESQUECER, APRENDER e PENSAR são feitos na testa .

3 . movimento: os sinais podem ter um movimento ou não . Os sinais citados acima tem movimento, com exceção de PENSAR que, como os sinais AJOELHAR, EM-PÉ, não tem movimento;

4 . orientação: os sinais podem ter uma direção e a inversão desta pode significar idéia de oposição, contrário ou concordância número-pessoal, como os sinais QUERER E QUERER-NÃO; IR e VIR;

5 . Expressão facial e/ou corporal: muitos sinais, além dos quatro parâmetros mencionados acima, em sua configuração têm como traço diferenciador também a expressão facial e/ou corporal, como os sinais ALEGRE e TRISTE . Há sinais feitos somente com a bochecha como LADRÃO, ATO-SEXUAL .

Na combinação destes quatro parâmetros, ou cinco, tem-se o sinal . Falar com as mãos é, portanto, combinar estes elementos que formam as palavras e estas formam as frases em um contexto . Para conversar, em qualquer língua, não basta conhecer as palavras, é preciso aprender as regras de combinação destas palavras em frases .

3 AMBIENTE PROPOSTO

Para desenvolvimento desta proposta foram utilizados: 1 . Computador: AMD Duron, 256Mbytes de memória RAM, com Placa de Captura PixelView(PV-BT878P+ (REV 4C)); 2 . Sistema Operacional: Windows 2000; 3 . DirectX 8 .1 SDK; Microsoft .NET, Edit Plus, Dependency Walker; e 4 . Ferramentas: Java2 SDK 1 .4 .2, Java3D 1 .3 .1 para DirectX, ARToolkitDirectShow2 .52, JARToolkit2 .0 . A estrutura do ambiente desenvolvido é apresentada pela Figura 2 .

Figura 2: Estrutura do Sistema Proposto

Foi escolhida a API DirectX da Microsoft [8], que possui um subconjunto de bibliotecas, as quais contém ferramentas para vários campos do desenvolvimento de aplicações multimídia, a saber: • DirectDraw – biblioteca para gráficos 2D; • Direct3D – biblioteca para gráficos 3D; • DirectSound – biblioteca para reprodução e manipulação

de efeitos sonoros; • DirectInput – biblioteca para manipulação de

dispositivos de entrada (teclado,mouse,etc); • DirectShow – biblioteca para reprodução de vídeo; • DirectPlay – biblioteca para rede .

4 CAPTURA DAS IMAGENS

Para a captura das imagens foi utilizada uma câmera analógica Panasonic PalmCorder PV - IQ244 e uma placa de captura PixelView BT848+ 4C (Figura 3) . Nesta captura das imagens reais foi utilizado o DirectShow, que provê métodos independentes de hardware para que desenvolvedores de software acessem serviços de renderização, armazenamento e manipulação de vídeo e áudio originários de fontes locais ou de redes . Este DirectShow fornece uma variedade de formatos (MPEG, AVI, WAV) para entrada comprimida ou não .

Figura 3: Sistema de Captura utilizado Tal escolha se deu pelos seguintes motivos:

Page 22: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

22

Voltar ao sumário

• A utilização de classes do DirectShow como base do código de captura de imagens pela ferramenta adotada - JARToolkit;

• A existência de filtros próprios para sinais analógicos; e • O driver da placa de captura se encaixa no modelo

WDM (Windows Driver Model) do DirectShow .

A utilização de dispositivos analógicos tornou necessária a produção de um código de captura de imagens diferenciado . Apesar de, internamente, o DirectShow reconhecer todos os dispositivos existentes em um computador (analógicos ou digitais), a sua manipulação é diferenciada . Para suportar características adicionais como close caption, sinais de rádio e TV, não existentes em dispositivos digitais, o stream de vídeo de um dispositivo analógico é organizado de modo diferente . Para tanto se deve separá-lo de modo correto a fim de se construir uma aplicação de vídeo . Para dispositivos com tal suporte foi desenvolvido um modelo diferenciado dentro do ambiente Windows chamado de WDM . Esse modelo tem como vantagens: • Reconhecer automaticamente a maioria dos dispositivos

de captura presentes no mercado; • Apresentar características singulares de cada dispositivo; • Oferecer um conjunto de funções que permitem um

controle maior sobre o dispositivo de captura; • Ter sido criado para ser compatível com todas as versões

do sistema operacional Windows . Assim, foi possível capturar imagens a taxas de 15 frames/segundo, com uma qualidade muito superior a de câmeras digitais (webcams) . Uma vez capturado e tratado de forma apropriada pelas camadas mais baixas (DirectX), o sinal de vídeo é passado para a camada da aplicação JAVA para ser manipulado conforme o desejo do usuário . Nesse ponto, o usuário tem total controle sobre cada pixel do vídeo capturado, tendo a liberdade de alterá-lo de qualquer maneira . Dessa forma, pode-se criar espelhamento, desfocagem, filtros de cor, negativo e movimento, selecionar partes do vídeo e até mesmo chromakeying .

5 JARTOOLKIT

Com a utilização da ferramenta escolhida, o JARToolkit [9], é possível desenvolver aplicações utilizando o vídeo capturado, de forma simples e eficiente, disponibilizando inúmeras possibilidades para o desenvolvimento de aplicações de realidade virtual e realidade aumentada . Consiste de um pacote de código aberto desenvolvido com a finalidade de proporcionar aos programadores JAVA todos os recursos existentes no ARToolkit (C++) e utilizados em conjunto com bibliotecas gráficas como OpenGL e DirectX, permitindo assim, o desenvolvimento de forma simples, de aplicações de realidade virtual mais robustas .

Para tanto, é utilizado o JNI, uma característica do JAVA, que oferece a possibilidade do reaproveitamento de códigos nativos (outras linguagens) dentro da linguagem JAVA . Nesse caso, aproveitando todo o código na linguagem C++ (ARToolkit) em JAVA . A seguir está descrita a estrutura geral de classes do JARToolkit (Tabela 1):

Tabela 1 Classes do JARToolkit

Classe Descrição JARtoolkit Interface com o código nativo (ARToolkit) .ARPattern Encapsula um padrão a ser reconhecido pelo

ARToolkit .JARFrameGrabber Captura o vídeo usando o DirectX . JARPictureSource Detecta diferentes entradas de vídeo . JARVideo Pacote de suporte à captura de diferentes

tipos de vídeo .

O uso do JARToolkit prevê a sua utilização conjunta com outros pacotes especiais para JAVA, como o JAVA3D [10] . Para estes casos foram desenvolvidos classes e métodos especiais, a fim de possibilitar o máximo aproveitamento das ferramentas utilizadas (Tabela 2) .

Tabela 2 Classes Desenvolvidas

Classe Descrição JARtoolkit3D Para a utilização com Java3D .

Encapsula uma interface com as outras classes do JARTookit .

ARPatternTransformGroup Transforma um padrão em um objeto possível de ser manipulado em Java3D .

ARBehavior Gerencia as atualizações de todos os componentes do Java3D e JARToolkit em tempo real .

6 FUNCIONAMENTO

6 .1 Aplicação do movimento humano ao avatar

Com o reconhecimento de padrões junto ao corpo humano nos frames de vídeo capturado, foi possível obter sua movimentação na forma matemática (matriz de transformação) e aplicá-la aos membros do avatar, reproduzindo assim, os movimentos humanos em um ambiente virtual . Para se conseguir uma representação matricial dos movimentos espaciais dos marcadores (3D), foram utilizadas técnicas de visão computacional .

6 .2 Texturização da face e recorte do frame de vídeo

A obtenção das coordenadas do marcador da face através da captura do padrão no frame possibilitou o recorte do frame de vídeo de maneira a texturizar a face do avatar . Para tanto, foi necessário entender como as técnicas de

Page 23: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

23

Voltar ao sumário

visão computacional transformam a imagem 3D em 2D e mantém, ainda, a noção de profundidade . Em uma primeira etapa, ocorre a conversão de sistemas cartesianos . O sistema de coordenadas do mundo real é transformado em coordenadas de um sistema virtual (câmera) . Tal transformação, resulta na obtenção de matrizes que exprimem a movimentação do ponto no espaço . O processo matemático realizado nessa etapa gera um erro relativo em relação ao valor real, que é minimizado através de cálculos iterativos . A segunda parte desse processo representa a transformação linear dos dados obtidos, ou seja, a transformação das coordenadas do mundo real (3D) em coordenadas do plano (2D) . Nessa etapa, informações como a matriz de calibração da câmera utilizada e funções de distorção são usadas a fim de transformar a posição de um ponto no espaço em posição no plano, mantendo a noção de perspectiva . Uma vez definidas as coordenadas de projeção, pode-se determinar as coordenadas do ponto na imagem capturada (coordenadas no frame de vídeo), a partir dos parâmetros de distorção da imagem na transformação linear 3D-2D (do mundo real para a tela do computador): Fazendo esses cálculos foi possível encontrar as coordenadas do marcador da face no frame de vídeo e recortá-lo, afim de texturizar a face do avatar . Para um rosto do avatar padrão, a texturização do vídeo não trouxe resultados adequados . Um objeto que formaria a cabeça do avatar, apesar de parecer liso e arredondado, foi testado e como é formado por milhões de figuras geométricas quadradas, ocorreram grandes deformações . Para a obtenção de um melhor resultado, a cabeça do avatar foi trocada por uma tela plana de 100 X 100 pixels (Figura 4) .

7 . CONCLUSÕES

Em relação a comunicação estabelecida em LIBRAS a proposta se mostrou extremamente promissora . Os sinais gerados com os movimentos dos usuários são completados com os gestos da face, atendendo a comunicação total nesta linguagem . Neste sentido seria interessante encaminhar esta ferramenta para grupos de deficientes auditivos que poderiam verificar sua validade . Em relação aos aspectos computacionais: apesar da dependência com o sistema operacional Windows e com o driver do fabricante da placa de captura adaptado para o modelo WDM de aquisição de imagens, a utilização do pacote DirectX superou as expectativas com relação ao sinal capturado (qualidade X perda na conversão de sinal), segundo o objetivo de utilizar soluções de baixo custo . A montagem de todo o sistema para a utilização da captura analógica de sinal de vídeo proporcionou uma qualidade maior da imagem capturada, se comparada às opções digitais testadas (webcam), sem perda expressiva na

aquisição das imagens (conversão do sinal analógico/digital) pela placa de captura, contrariando o que era esperado .

Figura 4 : Avatar em movimento com textura do usuário aplicada na face

A ferramenta JARToolkit demonstrou ser bastante versátil, atendendo as expectativas quanto a geração e manipulação do vídeo em aplicações JAVA, embora sua documentação seja escassa e confusa . O desenvolvimento de marcadores foi concluído com êxito, sendo os mesmos reconhecidos em todos os testes realizados, possibilitando assim a marcação da pessoa real que serviu como modelo para a aplicação e reprodução dos movimentos humanos no avatar . As dificuldades na movimentação do avatar através da aplicação das matrizes, calculadas para os membros do mesmo deveu-se, principalmente, aos seguintes fatores: a distância do ator em relação à câmera e a iluminação do ambiente real . Esses fatores mostraram-se determinantes para o reconhecimento correto dos padrões na análise dos frames, acarretando em uma instabilidade da reprodução dos

Page 24: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

24

Voltar ao sumário

movimentos no avatar . Filtros matemáticos, como cálculo das normas das matrizes, distância entre pontos, erro relativo, que foram utilizados para minimizar a instabilidade no movimento resultante do erro nos cálculos iterativos produziram um resultado satisfatório . Porém, na utilização de vários marcadores ao mesmo tempo numa mesma cena, a uma distância mínima requerida para a movimentação da pessoa e a captura da sua face diminuíram a eficiência dos mesmos .

Todo o problema da texturização seria minimizado se, ao criar-se o cenário, com as respectivas texturas no editor de objetos 3D, este pudesse ser transportado para o JAVA3D trazendo com ele as informações de textura . Tal possibilidade foi descartada, devido à ausência de plugin´s eficazes para tal função .

REFERÊNCIAS BIBLIOGRÁFICAS [1] KIRNER, C ., TORI R . ;“Realidade Virtual Conceitos e Tendências”, Editora Mania de Livro, 2004 . [2] MILGRAM, P et . al . “Augmented Reality: A Class of Displays on the Reality-Virtuality Continuum” Telemanipulador and Telepresence Technologies, SPIE, V2351, 1994 . [3] Åkesson, Karl-Petter, “Augmented Virtuality: A method to automatically augment virtual worlds with video images”, http://www .sics .se/~kalle/projects/Master_Thesis/augmented_virtuality .pdf, Acesso em 039 de outubro de 2008, 2008 . [4] BADLER, N . I ., “Virtual Humans for Animation, Ergonomics, and Simulation”, IEEE Workshop on Non-Rigid and Articulated Motion, Porto Rico, 1997 .[5] THALMANN, N . M ., “Digital Actors for Interactive Television”, Proc. IEEE, August 1995 [6] CAMPOS, Márcia Borba et . al . SIGNSIM: uma ferramenta para auxílio à aprendizagem da língua brasileira de sinais . In: V Congresso Ibero-Americano de informática na Educação – RIBIE – Chile, 2000 . [7] BRITO, Lucinda Ferreira . A Língua Brasileira de Sinais . Disponível em http://www .ines .org .br/ines_livros/fasc7_principal .htm . Acesso em 13 maio 2003, 2003 .

[8] DirectX Disponível em http://msdn .microsoft .com/directx/ Acesso em 03 de outubro de 2008, 2008 .

[9] JARToolKit – A Java binding to the ARToolkit INES) . Disponível em http://jerry .c-lab .de/jartoolkit/ Acesso em 19 de outubro de 2006, 2006 .

[10] Java3D API . . Disponível em http://java .sun .com/products/java-media/3D/ Acesso em 03 de outubro de 2008, 2008 .

Page 25: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

25

Voltar ao sumário

ANÁLISE DE APLICAÇÕES DE REALIDADE AUMENTADA NA EDUCAÇÃO PROFISSIONAL: UM ESTUDO DE CASO NO SENAI DR/GO

Roger Amandio Luz, Marcos Wagner de Souza Ribeiro, Hugo Xavier Rocha, Pedro Moises, Alexandre Cardoso, Edgard Lamounier,

Grupo de Realidade Virtual de Goiás, Grupo de Realidade Virtual de Uberlandia

[email protected], [email protected], [email protected],

[email protected], [email protected],[email protected]

Resumo

Este artigo tem como objetivo demonstrar a utilização

e os resultados obtidos a partir da aplicação em sala

de aula de materiais didáticos desenvolvidos com

Realidade Aumentada em uma escola do Serviço

Nacional de Aprendizagem Industrial – SENAI, nos

cursos de educação profissional de nível médio.

Palavras Chave: Realidade Aumentada, Educação Profissional, Materiais didáticos

Abstract

This article has as objective to demonstrate to the use

and the results gotten from the application in

classroom of developed didactic materials with

Augmented Reality in a school of the National Service

of Industrial Learning - SENAI, in the courses of

professional education of average level.

Words Key: Augmented reality, Professional

Education, didactic Materials

1. Introdução

A educação profissional é caracterizada como uma modalidade educacional articulada com as diferentes formas de educação, o trabalho, a ciência e a tecnologia, conduzindo o cidadão trabalhador ao “permanente desenvolvimento de aptidões para a vida produtiva[7], ela não é mais concebida como um simples instrumento de política assistencialista ou

linear ajustamento às demandas do mercado. Ela é concebida, agora, como importante estratégia para que os cidadãos tenham efetivo acesso às conquistas científicas e tecnológicas da sociedade, que tanto modificam suas vidas e seus ambientes de trabalho [LDB]. O Serviço Nacional de Aprendizagem Industrial – SENAI, destaca-se hoje como sendo referência em educação profissional no Brasil no que concerne a formação não somente técnica/tecnológica mas também ética e social de seus alunos. A utilização de materiais didáticos, principalmente livros impressos mostrou-se capaz de suprir boa parte das necessidades encontradas, porém o caráter prático exigido pela educação profissional muitas vezes faz com que estes não consigam ser explorados de maneira construtivista, pois os exemplos que ilustram a maioria dos conceitos não fazem relações com o meio em que estão inseridos. A utilização de informática na educação é alvo de grandes discussões e de acordo [9] ela deve considerar muitos fatores, sob pena de falsas soluções serem apontadas como efetivas. A simples utilização de uma tecnologia não é a solução para os problemas, logo, informatizar o material tradicional, sem uma adequada alteração das técnicas de ensino, não é solução por si só. Neste contexto o problema levantado por esta pesquisa visou descobrir se a utilização de técnicas de realidade aumentada em conjunto com materiais convencionais pode contribuir como material didático na educação profissional, possibilitando que as habilidades e competências sejam exploradas de forma contextualizada e contribuindo para a construção do conhecimento dos alunos de uma escola SENAI em Goias? O objetivo proposto nesta pesquisa visou aplicar materiais didáticos construídos a partir de técnicas de Realidade Aumentada e analisar sua contribuição no processo de formação profissional dos alunos do SENAI. Especificamente foram desenvolvidas apostilas com o software Artoolkit para

Page 26: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

26

Voltar ao sumário

usuário final [11], nos cursos de mecânica de automóveis, eletrotécnica, mecânica geral e segurança no trabalho em disciplinas comuns a todos os cursos, física, química, biologia e matemática que e que são base para o entendimento dos conteúdos ministrados nas disciplinas técnicas. Foram analisados aspectos sobre o entendimento do conteúdo, facilidade de utilização das apostilas, custos envolvidos e melhora na visualização das informações contidas nas apostilas a partir de entrevistas com alunos e professores. Os resultados obtidos satisfizeram alguns itens e ressaltaram a importância da utilização da realidade aumentada como ferramenta principalmente de visualização de informações e facilidade de utilização no contexto da educação profissional.

2. Realidade Aumentada

A realidade aumentada é uma particularização de um conceito mais geral, denominado realidade misturada, que consiste na sobreposição de ambientes reais e virtuais, em tempo real, através de um dispositivo tecnológico [11].

A realidade aumentada é definida de várias maneiras: é o enriquecimento do ambiente real com objetos virtuais, usando algum dispositivo tecnológico, funcionando em tempo real; é uma melhoria do mundo real com textos, imagens e objetos virtuais, gerados por computador [10]; é a mistura de mundos reais e virtuais em algum ponto da realidade/virtualidade contínua, que conecta ambientes completamente reais a ambientes completamente virtuais [13]; é um sistema que suplementa o mundo real com objetos virtuais gerados por computador, parecendo coexistir no mesmo espaço e apresentando as seguintes propriedades: combina objetos reais e virtuais no ambiente real; executa interativamente em tempo real; alinha objetos reais e virtuais entre si; aplica-se a todos os sentidos, incluindo audição, tato e força e cheiro [3]. A Figura 1 apresenta um exemplo de aplicação de realidade aumentada com uma mesa real enriquecida com vaso e carro virtuais.

Assim, a realidade aumentada pode ser definida como a sobreposição de objetos virtuais no mundo real, através de um dispositivo tecnológico, melhorando ou aumentando a visão do usuário [2] [3]. 2.1 SISTEMAS DE REALIDADE AUMENTADA

Os sistemas de realidade aumentada podem ser

classsificados conforme o tipo de display utilizado [3], envolvendo visão ótica ou visão por vídeo, dando origem a quatro tipos de sistemas. sistema de visão ótica direta; sistema de visão direta por vídeo; sistema de visão por vídeo baseado em monitor; sistema de visão ótica por projeção.

No desenvolvimento deste trabalho optamos pelo Sistema de Visão Direta por Vídeo baseado em monitor, por tratar-se um experimento que pretende ser disseminado a todas as camadas da população.

3. Educação Profissional

A educação profissional é caracterizada como uma modalidade educacional articulada com as diferentes formas de educação, o trabalho, a ciência e a tecnologia, conduzindo o cidadão trabalhador ao “permanente desenvolvimento de aptidões para a vida produtiva [7], ela não é mais concebida como um simples instrumento de política assistencialista ou linear ajustamento às demandas do mercado. Ela é concebida, agora, como importante estratégia para que os cidadãos tenham efetivo acesso às conquistas científicas e tecnológicas da sociedade, que tanto modificam suas vidas e seus ambientes de trabalho [7].

A educação profissional, integrada às diferentes formas de educação, ao trabalho, à ciência e à tecnologia, conduz ao permanente desenvolvimento de aptidões para a vida produtiva [7].

A educação profissional será desenvolvida em articulação com o ensino regular ou por diferentes estratégias de educação continuada, em instituições especializadas ou no ambiente de trabalho [7].

4. Realidade Aumentada E Educação

A utilização de RV com fins educativos tem merecido destaque e tem sido avaliada de forma intensiva nos últimos anos [13]. Os resultados destas avaliações mostram ganhos, em termos de aprendizagem superiores a diversas outras formas de interação visando educação mediada por computador. [14 ]. [9][11][14] apontam como principais vantagens da utilização de técnicas de RV para fins educacionais, os

Figura 1 - Exemplo de Realidade Aumentad a [kirner, Tori, 2008]

Page 27: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

27

Voltar ao sumário

seguintes itens: motivação de estudantes e usuários de forma geral, baseada na experiência de 1ª pessoa vivenciada pelos mesmos; grande poderio de ilustrar características e processos, em relação a outros meios multimídia; permite visualizações de detalhes de objetos; permite visualizações de objetos que estão a grandes distâncias, como um planeta ou um satélite; permite experimentos virtuais, na falta de recursos, ou para fins de educação virtual interativa; permite ao aprendiz refazer experimentos de forma atemporal, fora do âmbito de uma aula clássica; Porque requer interação, exige que cada participante se torne ativo dentro de um processo de visualização; encoraja a criatividade, catalisando a experimentação; provê igual oportunidade de comunicação para estudantes de culturas diferentes, a partir de representações;ensina habilidades computacionais e de domínio de periféricos. Experiências de utilização de sistemas que utilizam técnicas de Realidade Virtual têm sido desenvolvidas e aplicadas nos mais diversos campos de ensino, desde Medicina, indústria e aplicativos para matemática básica, experimentos virtuais de Óptica Geométrica e até simulações de circuitos integrados [9].

5. Trabalhos Relacionados

Nesta seção serão descritos os principais trabalhos relacionados à pesquisa em questão, estes foram classificados por ordem de relevância e também como possíveis contribuições para trabalhos futuros. 5.1 Usando Realidade Aumentada no desenvolvimento de quebra-cabeças educacionais.

Este trabalho discute o uso da tecnologia de Realidade Aumentada no desenvolvimento de quebra-cabeças tridimensionais [16], visualizados com a ajuda do computador, mostrando que é possível, através de uma plataforma computacional simples e software gratuito, criar quebra-cabeças eletrônicos enriquecidos, motivadores e de fácil usabilidade.

5.2 Sistema Complexo Aprendente: Um Ambiente de Realidade Aumentada para Educação

Desenvlvido por [12], este projeto, apresenta o desenvolvimento de vários cenários de aprendizagem, enfatizando principalmente a integração do lúdico com o formal, visando atender as recomendações da legislação de implantação do Ensino Fundamental de 9 anos. 5.3 LIRA – Livro Interativo com Realidade Aumentada Em [16] descreve-se que ao colocar o livro em frente a uma webcam, o usuário verá as ilustrações 3D animadas e sonorizadas sobre o a imagem do livro que aparece no monitor. Quando o usuário manipular o livro, a ilustração 3D irá junto.

6. Estudo de Caso: Implantação de RA no Senai DR-GO

A implantação de Técnicas de Realidade Aumentada nos cursos de Ensino Médio Profissionalizante do Senai esta acontecendo de maneira gradativa. Primeiramente, os alunos e professores foram incentivados a utilizarem alguns softwares disponíveis conforme citado nos trabalhos relacionados, teve-se o objetivo neste momento de capacita-los como usuários de sistemas de RA. Visto que em sua maioria contém certo domínio de utilização de computação, as dificuldades encontradas foram mínimas segundo entrevista com os próprios. Os professores em primeiro momento acreditaram ser algo intangível a atual realidade da educação no Brasil, porém por tratar-se de uma escola com o porte da estudada aceitaram o desafio de aprender a desenvolver seus próprios materiais. Os alunos, alvo principal desta pesquisa, por outro lado, motivaram-se com o novo método de utilização dos recursos computacionais disponíveis e também aceitaram estudar algumas disciplinas com materiais didáticos desenvolvidos em conjunto com as técnicas de RA. 6.1 Estratégias didáticas Inicialmente os professores foram incentivados a elaborarem estratégias didáticas para serem utilizadas nos materiais que posteriormente receberam contribuições da realidade aumentada. Optou-se por primeiramente trabalhar com matérias comuns a todos os cursos ministrados na escola de acordo com o plano de curso previamente elaborado e aprovado por órgão governamental. As disciplinas selecionadas foram: Física onde tratou-se da área campos magnéticos e eletromagnetismo. Esta disciplina é comum aos cursos

Figura 2 - Quebra - Cabeças

Page 28: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

28

Voltar ao sumário

técnicos de eletrotécnica, mecânica automotiva e mecânica geral. Biologia: DNA. Esta disciplina é comum aos cursos técnico em açúcar e álcool e técnico em alimentos. Anatomia: Visualização das partes do cérebro. Disciplina comum aos cursos técnico em alimentos e açúcar e álcool. 6.2 Estratégias de Realidade Aumentada

No primeiro momento capacitamos os professores a utilizarem o software Artoolkit versão para usuário final, onde estes foram incentivados a criar marcadores e buscar imagens VRML em galerias disponíveis na Internet, logo em seguida associar marcadores com imagens e configura-las no aplicativo. Neste primeiro momento foram utilizadas apenas técnicas de visualização de objetos virtuais sobre ambientes reais, gradativamente pretende-se inserir técnicas de transporte, som e outras manipulações possíveis com a utilização do software. A partir desta capacitação foi desenvolvido a chamada Apostila Virtual de demonstração, onde as disciplinas selecionadas receberam contribuições da realidade aumentada através de imagens com movimentação e visualização em 3D.

Também foram utilizados marcadores para

aumentar a realidade de alguns equipamentos didáticos utilizados nos cursos técnicos, como por exemplo a partir de um motor real, inseriu-se virtualmente o movimento das cargas elétricas simulado o eletromagnetismo. Marcadores também foram colocados sobre o corpo de alguns alunos e os órgãos virtuais foram projetados sobre eles simulando sua localização. 6.3 Apostila Virtual de Demonstração Esta material foi desenvolvido da seguinte forma, a partir de conceitos retirados de livros texto da

disciplina, inseriram-se marcadores e configurou-se o software para que as imagens fossem projetadas na tela do computador, em seguida foram impressas e disponibilizadas para os alunos.

7. Metodologia de Aplicação e Testes

Neste primeiro momento o material foi aplicado a alunos dos cursos técnicos descritos anteriormente, onde a população total é de 200 alunos. A técnica de validação do método utilizado quanto a natureza foi de pesquisa exploratória e utilizou-se a amostragem probabilística com uma margem de mais ou menos 3%, portanto dos 200 alunos foram entrevistados aleatoriamente 50 dos variados cursos técnicos, onde nestes foram aplicados questionários de avaliação do método desenvolvidos a partir do método de escala Likert cumulativo. As questões objetivaram analisar fatores como: Facilidade de uso, motivação com material, interesse despertado pela matéria, visualização da informação, melhora no entendimento no conceito e aceitação do método. Também aplicou-se aos professores um questionário de avaliação, dos 20 professores que participaram da capacitação e da elaboração do material, todos responderam a questões relativas a: Facilidade de utilização do Software, Relevância, Aplicabilidade, satisfação e rendimento das aulas. O material foi utilizado no período de 14 de junho de 2008 até 14 de agosto de 2008, onde iniciou-se e encerrou-se módulos dos cursos e suas aplicações foram intercaladas juntamente com outros conceitos durante as aulas. 8. Resultados e Discussões

A partir da análise dos questionários aplicados alguns resultados foram obtidos e são agora alvo de muitas considerações e, sobretudo, sugestões por parte

Figura 3 - Eletromagnetismo virtual a partir de motor real.

Figura 4 - Apostila Virtual Demo

Page 29: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

29

Voltar ao sumário

tanto de alunos como de professores envolvidos na pesquisa. Os gráficos demonstrados abaixo, demonstram que os alunos dos cursos profissionalizantes da escola, aprovaram a técnica em sua maioria no que diz respeito a motivação pela utilização de materiais convencionais com utilização de realidade aumentada, demonstra ainda que em sua totalidade aprovaram o material didático no quesito visualização da informação, onde estes destacaram que as imagens possuem diversos ângulos de visualização ao contrário dos materiais convencionais onde as imagens são estáticas. Destacaram ainda que apesar da técnica ser um método inovador ainda depende muito o papel do professor no processo de ensino e aprendizagem, mas destacaram que a exposição dos conteúdos ficou mais interessante e atrativa, de acordo com o questionários os alunos em sua maioria aprovaram a utilização do método e se propuseram a testar outras funcionalidades.

Gráfico 1 – Satisfação dos alunos com relação ao método

Com relação aos professores a utilização do método

foi extremamente satisfatório, estes, destacaram a importância da ciência aliada a tecnologia e vislumbraram na ferramenta uma maneira simples e com custo baixo de melhorar a qualidade da exposição dos conteúdos, visto que na maioria das vezes os métodos existentes exigem capacitações complexas, destacaram a importância da criação de uma galeria de imagens onde possam subsidiar outras matérias e aplica-las em sala de aula, motivando o aluno no que diz respeito a busca por novos conteúdos. O gráfico abaixo demonstra o nível de satisfação obtido com a utilização da técnica em sala de aula, os quesitos facilidade de utilização e elaboração receberam destaque especial onde todos os professores mostraram-se totalmente satisfeitos com a aplicação da apostila.

Gráfico 2 – Satisfação dos professores com relação ao método.

10. Referencias

[1] A.B. Smith, C.D. Jones, and E.F. Roberts, “Article Title”, Journal, Publisher, Location, Date, pp. 1-10.

[2] Azuma, R. (1997) “A Survey of Augmented Reality", Presence: Teleoperators and Virtual Environments, v .6, n.4, August, p. 355-385.

[3] Azuma, R. et al. (2001) “Recent Advances in Augmented Reality.” IEEE Computer Graphics and Applications, v .21, n.6, p. 34-47.

[4] Bell, J.; Foglerl H. S. (1995) “The Investigation and Application of Virtual Reality as an Educational Tool” Proceedings of the american society for engineering education annual conference, Anheim, CA..

[5] Billinghurst, M., Kato, H. (1999) "Collaborative Mixed Reality", Proc. of the International Symposium on Mixed Reality, ISMR'99, Springer -Verlag, p. 261-284.

[6] Bork, L. A. and BRITTON, R. D, (1998) “The Web is Not Yet Suitable for Learning”, IEEE Transactions on Computer, USA. pp. 115-119.

[7] BRASIL, Ministério da Educação e Cultura, Educação profissional: referenciais curriculares nacionais da educação profissional de nível técnico/ Ministério da Educação, MEC. – Brasília: MEC, 2000

[8] Byrne, C.(1996) “Water on Tap: The Use of Virtual Reality as an Educational Tool”. Washington, Tese de Doutorado - University of Washington.

[9] Cardoso,A.,LamounierJr.andTori,R.(2001),“Interactive 3D Physics Experiments through the Internet”, Proceedings of the 4th SBC Symposium on Virtual Reality,pp.280-90, Florianópolis, SantaCatarina, Brazil.

Page 30: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

30

Voltar ao sumário

http://users.hub.ofthe.net/~mtalkmit/veshtml2.html, November.

[10] Insley, S. (2003) "Obstacles to General Purpose Augmented Reality" http://islab.oregonstate.edu/koc/ece399/f03/final/insley2.pdf

[11] KIRNER, C.; TORI, R. Fundamentos de

Realidade Aumentada. In: Claudio Kirner; Romero Tori; Robson Siscoutto. (Ed.).Fundamentos e Tecnologia de Realidade Virtual e Aumentada. Pré Simpósio SVR 2006, SBC, Belém, 2006, pp. 22-38.

[12] Milgram, P. et. al. (1994) “Augmented Reality: A Class of Displays on the Reality-Virtuality Continuum”. Telemanipulator and Telepresence Technologies, SPIE, V.2351, p. 282-292.

[13] Pantelidis V. Vesamontex. (1999) “Projeto e descrição detalhada das atividades e resultados da implementação de uma solução de VR aplicada a Educação”.

[14] Pinho, M. (2000) “Interação em Ambientes Tridimensionais”. Tutorial do 3rd Workshop on Virtual Reality - WRV´2000, Gramado, RS, Outubro.

[15] PERRENOUD, Phillippe. Construir as competências desde a escola. Porto Alegre: Artes Médicas Sul, 1999.

[16] ZORZAL, E. R.; BUCCIOLI, Arthur Augusto Bastos; KIRNER, Cláudio. Usando Realidade Aumentada no Desenvolvimento de Quebra-cabeças Educacionais. In: SVR2006 - VIII Symposium on Virtual Reality, 2006, Belém-PA.

Page 31: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

31

Voltar ao sumário

A Utilização da Realidade Aumentada no Tratamento e Simulação de Sinais Cardiológicos com BioFeedBack em Tempo Real

Arthur A. B. Bucioli, Edgard A. Lamounier Jr, Alexandre Cardoso Universidade Federal de Uberlândia.

Av. Engenheiro Diniz, 1178 CEP 38400902 - Uberlândia - MG, [email protected], [email protected], [email protected]

Abstract

Augmented Reality is a technology, that provides people with more intuitive ways of interaction and visualization, close those that happen in real world.

The applications for Augmented Reality are countless, and results can be already seen in several areas like Education, Training, Entertainment and Medicine.

The system proposed, has as goal to provide a friendly and intuitive interface in Augmented Reality for heart beat processing and viewing. The data needed are received from very heterogenic sources, which goes from simple fixed values up to real time capture and viewing from heart beat sensors. Trough markers and a viewing device, the users are allowed to view in its own chest the virtual animated heart and it’s beating in real time, answering to his own heart beating.

1. Introdução

Quando os computadores começaram a ser desenvolvidos, não havia grandes preocupações com as formas e dispositivos de comunicação com o usuário, pois eram máquinas sofisticadas e exclusivamente operadas por pessoas altamente qualificadas. Com o tempo, porém, os computadores foram diminuindo seus tamanhos e custos, e aumentando sua popularidade. A partir de então, as interfaces de operação, tanto em termos de dispositivos de entrada quanto de visualização das informações, passaram por um longo processo de desenvolvimento, que até hoje continua a ser aprimorado [1,2,3].

A busca por uma interface de operação ideal ainda é uma preocupação atual, pois as mais modernas interfaces presentes nos sistemas não satisfazem plenamente os requisitos de usabilidade e naturalidade de operação.

Já existem tecnologias visando esse tipo de interface com o usuário, dentre elas a Realidade Aumentada [4].

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.

Assim como na Realidade Virtual, as aplicações possíveis para Realidade Aumentada são inúmeras, nas mais diversas áreas do conhecimento.

Uma das áreas que tem demonstrado grande potencial para desenvolvimento de aplicações e estudos é a Ciência da Saúde. Já existem aplicações para auxiliar cirurgias, visualizar próteses, órgãos virtuais, estudo de anatomia, entre outras [5,6,7].

O foco deste trabalho está na integração entre Realidade Aumentada e Ciência da Saúde, em particular a simulação do funcionamento do coração humano.

Tradicionalmente, os pacientes têm pouco ou nenhum conhecimento de como interpretar informações como raios-x e eletrocardiogramas. Assim, muitas vezes mesmo após esclarecimentos com os profissionais da área restam dúvidas quanto ao funcionamento de órgãos, particularidades de doenças e mesmo a interpretação das informações de exames.

A captação de sinais cardiológicos tem como objetivo monitorar e visualizar o funcionamento do coração, extraindo informações tais como a pulsação, potência dos músculos cardíacos e periodicidade das batidas. Essas informações permitem ao médico

Page 32: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

32

Voltar ao sumário

cardiologista diagnosticar diversas anomalias e prover tratamentos para as mesmas[8,9]. Porém, assim como os outros sinais mencionados, os sinais eletrocardiográficos são armazenados em mídias nada intuitivas, tornando o entendimento e compreensão dos dados ali contidos um desafio. Além disso, algumas dessas mídias são armazenadas em estado analógico, sendo desejável alguma forma de recuperação digital das informações, de forma a propiciar uma melhor organização e mesmo compartilhamento das informações.

Utilizando técnicas de Realidade Aumentada, é possível criar novas formas para visualização e interpretação de sinais cardiológicos, formas essas que podem facilitar o entendimento das informações por pacientes, profissionais e mesmo estudantes de Medicina e outras formações relacionadas.

O sistema proposto foi projetado de maneira a ser capaz de processar as formas mais populares de mídias onde são armazenados os sinais cardiológicos, convertendo-as para formatos digitais e possibilitando a sua simulação em ambiente de Realidade Aumentada, onde uma representação virtual do coração humano pulsa adequadamente, de acordo com o tipo de sinal recebido. Além do processamento de sinais previamente capturados, o sistema também é capaz de ler sinais cardiológicos dos pacientes em tempo de execução da simulação, processar os dados e simulá-los apropriadamente, permitindo a uma pessoa visualizar a pulsação de seu próprio coração em tempo real.

Assim, a seção 2 apresenta alguns trabalhos relacionados ao tema desta pesquisa, a seção 3 apresenta detalhes do projeto e implementação do sistema e a seção 4 apresenta as conclusões obtidas com e os trabalhos futuros passíveis de serem implementados no atual sistema.

2. Trabalhos Relacionados

A seguir são apresentados os trabalhos pesquisados com conteúdos mais fortemente relacionados ao tema proposto.

2.1. Project on Image Guided Surgery Este projeto é parte dos resultados conseguidos

através de uma parceria que já ocorre há alguns anos entre o MIT (Massachusetts Institute of Technology) [10] e o BWH(Brigham & Women’s hospital) [11].

O projeto consiste em utilizar técnicas de Realidade Aumentada como ferramenta auxiliar em intervenções cirúrgicas. Os elementos das simulações são concebidos em uma complexa fase de pré-

processamento que utiliza imagens de ressonância magnética para obter modelos tridimensionais dos órgãos. A Figura 1 apresenta um exemplo das imagens utilizadas e a Figura 2 demonstra os modelos tridimensionais obtidos nesta fase.

Figura 1. Imagens de ressonância magnética utilizadas [12]

Figura 2. modelos Tridimensionais gerados com imagens de ressonância magnética [12]

Com os modelos prontos, é preciso sincronizá-los aos órgãos reais. Para tanto, são rastreadas as coordenadas do paciente utilizando esquipamentos avançados, cuja precisão tem o fator de erro inferior a 1 mm. A Figura 3 apresenta os equipamentos utilizados o alinhamento dos modelos tridimensionais aos pacientes.

Figura 3. Equipamentos utilizados e alinhamento dos modelos aos pacientes [12]

Na visualização final, a imagem filmada do paciente fica ao fundo, sobreposta pelos objetos virtuais, resultando numa espécie de visão de Raios-X, podendo o médico observar os órgãos do paciente antes de realizar qualquer corte sobre a pele.

Page 33: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

33

Voltar ao sumário

O sistema proposto já foi bastante utilizado em intervenções cirúrgicas, reduzindo drasticamente os tempos e custos de cada intervenção cirúrgica. Os órgãos reconstruídos são a princípio rígidos, não sofrendo quaisquer deformações ao longo do tempo, o que dificulta a sua utilização em simulações animadas como músculos em geral e o coração.

2.2. VIDA: Visualizador Interactivo de Dados biomecânicos Animados

O sistema VIDA é uma aplicação para visualizar dados biomecânicos de atletas, como por exemplo a atividade muscular[13]. O sistema pode fornecer dois modos de funcionalidade. No primeiro, o usuário manipula um boneco virtual onde pode visualizar os dados. No segundo, vídeos com cenas pré-capturadas são utilizados na construção e visualização das simulações. A Figura 4 mostra a arquitetura do sistema VIDA.

Figura 4. Arquitetura do sistema VIDA [13]

O projeto VIDA trabalha somente com vídeos pré-capturados com ações de atletas, o que é ressaltado na própria pesquisa como algo a ser mudado para que a experiência de Realidade Aumentada seja realmente contemplada pelo projeto.

A fase inicial é a captura de informações visuais dos atletas, feita através de marcas rastreáveis e câmeras de vídeo estrategicamente posicionadas.

O VIDA utiliza marcas iridescentes que têm brilho em baixas condições de iluminação, o que facilita o seu isolamento do restante do cenário. Cada marca capturada é associada a uma marca virtual de um boneco tridimensional modelado, de forma a

sincronizá-lo visualmente com os movimentos feitos pelos atletas no vídeo.

O sistema conta também com uma forma de visualização do esforço muscular através de linhas com cores estrategicamente estabelecidas, possibilitando verificar pontos de alto esforço em exercícios físicos. A Figura 5 exemplifica a sincronização dos movimentos do atleta com o boneco virtual e o sistema de visualização de esforço muscular.

Figura 5. Sincronização do atleta e o boneco, e visualização do esforço muscular [13]

2.3. Die-Heart

O projeto Die-Heart tem como objetivo visualizar em ambiente de Realidade Aumentada um ventrículo esquerdo de um coração humano deformável. Essa visualização permite ao médico interagir com o modelo virtual de maneira mais natural, em um sistema de baixo custo [14].

Os dispositivos utilizados pelo sistema do Die-Heart são um computador comum, com monitor e utilizando um mouse 3d [16]. A parte do software responsável pela Realidade Aumentada foi desenvolvida com base no software MxToolKit [17]. A Figura 3.8 mostra a Arquitetura do sistema.

Figura 6. Arquitetura do sistema Die-Heart [14]

Page 34: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

34

Voltar ao sumário

O sistema captura vídeo em tempo real e repassa esse vídeo para o software mxToolKit que reconhece marcas e exibe objetos tridimensionais sobre elas. A manipulação dos objetos virtuais no sistema é através das próprias marcas e mouse 3d.

Na proposta do sistema, o modelo deve ser deformável e tridimensional. Para reconstrução com bastante fidelidade do ventrículo, foram capturadas imagens de ecocardiograma, de onde se podem extrair informações visuais referentes à geometria do coração. Para essa extração são utilizadas técnicas de processamento de imagem. A Figura 7 apresenta algumas fases deste processo.

Figura 7. Algumas fases da extração de geometria do ventrículo esquerdo [14]

Para que os contornos sejam transformados em geometria tridimensional, o Die-Heart utiliza diversas imagens de ecocardiograma capturadas a partir de diferentes ângulos do coração, girando-os de forma concêntrica a ele.

São reconstruídos modelos das diversas fases do ciclo cardíaco entre a sístole e a diástole que servem como pontos-chave para a animação de um ciclo cardíaco. A Figura 8 apresenta a visualização do sistema já em ambiente de Realidade Aumentada.

Figura 8. Visualização do sistema em ambiente de Realidade Aumentada [14]

O sistema Die-Heart cumpre bem a tarefa a qual foi proposto, mostrando a animação deformável de um ventrículo cardíaco. No entanto a fase de que precede a

simulação é extensa, envolvendo um processo bastante complexo de captação dos momentos exatos do ciclo cardíaco desejado, bem como a conversão de todas as imagens captadas para modelos tridimensionais.

3. Projeto e Implementação do Sistema

3.1. Arquitetura do Sistema A partir das observações feitas nos trabalhos

pesquisados, foi possível formular uma estrutura viável para o sistema ARBioMed.A Figura 4.1 apresenta a arquitetura desenvolvida.

Figura 9. Arquitetura do sistema ARBioMed

Como pode ser visto, o sistema possui diversas conexões com elementos de hardware e entradas de dados. Também existe uma divisão bem definida entre a interface de operação e o módulo gerador da visualização em Realidade Aumentada, que a partir de agora será referenciado como GVRA. A seguir, são explicados mais detalhadamente os principais elementos presentes na arquitetura do sistema.

• Usuário – Entidade genérica, podendo representar tanto os pacientes como também os operadores do sistema. O usuário se comunica com o sistema através da interface de operação, utilizando dispositivos como mouse, teclado e monitor.

• Sensor – Entrada de dados em tempo real do sistema, capturando digitalizando e realimentando a simulação com informações de pulsação cardíaca, de forma a atualizar a visualização apropriadamente.

• Câmera – A câmera tem o papel de capturar informação visual do mundo real. Pode ser representada por uma webcam, um fluxo de vídeo remoto, uma placa de captura de TV ou qualquer outro dispositivo que tenha as características necessárias ao sistema.

• Batimento Fixo –Entrada de dados manual, onde o usuário insere um valor de batidas por minuto do coração para simular.

Page 35: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

35

Voltar ao sumário

• Arquivo ECG –Arquivo contendo os valores de amplitude de um gráfico de eletrocardiograma, em uma taxa de amostragem fixa. Podem ser gerados por dispositivos médicos de diagnóstico cardíaco ou mesmo outros softwares de simulação. O formato padrão de entrada é o arquivo-texto.

• Imagem ECG – Exames cardíacos gravados como gráficos de linhas, em mídias como papel em folhas ou bobina. ARBioMed deverá ler os principais formatos gráficos atuais para recuperar arquivos de imagem com exames de eletrocardiograma digitalizados.

• Interface de Operação – Principal forma de comunicação entre o usuário e o ARBioMed. Para que a interação ocorra de forma suave e bem sucedida, é importante que a interface seja rica em usabilidade, seja auto-explicativa, tenha elementos visuais agradáveis e facilidade na operação, utilizando dispositivos conhecidos como mouse e teclado. Além disso, a interface deve se comunicar de forma eficiente com as outras partes do sistema, desde as entradas de dados até o módulo GVRA.

• Gerador da Visualização em Realidade Aumentada (GVRA) – É o módulo responsável pela união entre o vídeo capturado e recebido da câmera e os elementos virtuais a serem inseridos. Os parâmetros da animação são recebidos diretamente da interface de operação e verificados sempre que há alterações. Para a sincronização dos elementos virtuais são utilizados marcadores monocromáticos no vídeo capturado.

• Visualização em Realidade Aumentada – É o resultado final da combinação de todos os elementos do ARBioMed, uma visualização que mescla o vídeo captado pela câmera juntamente com os modelos virtuais.

3.2. Implementação do Sistema

A partir da arquitetura proposta, é possível notar que o sistema é nitidamente dividido em 2 grandes módulos, a interface de operação e o Gerador da Visualização em Realidade Aumentada (GVRA). Assim, a implementação do sistema também foi feita separadamente para cada módulo.

O equipamento utilizado, tanto para implementação como para os testes do sistema consiste em um computador com processador Athlon 64 3000+, 1 GB de memória RAM, webcam LG WebPro de 300 Kpixels e um sensor de pulsação baseado em oximetria, extraído de bicicleta ergométrica.

A interface inicial do sistema foi projetada utilizando elementos comuns de interação, como botões, janelas e caixas de texto. A Figura 10 apresenta a interface inicial do sistema.

Figura 10 – Interface inicial do sistema

Como pode ser visto, a interface inicial do sistema é relativamente simples, com informações concisas e focadas, guiando o usuário na melhor escolha.

Os 4 botões presentes no lado esquerdo da janela representam as diversas opções de entrada de dados presentes no sistema. Ao clicar em cada uma destas opções, o conteúdo correspondente é exibido ao lado direito do botão.

Um quinto botão com o título “Simular” está presente ao lado direito inferior da janela, sendo que inicialmente encontra-se desabilitado. Este botão tem a função de consolidar as informações ajustadas nas opções de entradas e enviá-las para o módulo GVRA.

Além disso, o quadro na parte inferior da janela fornece explicações sobre o funcionamento de cada opção para o usuário, conduzindo-o na operação do sistema.

A opção Simular Pulso Constante simula valores fixos de pulso, sendo que o usuário pode digitar um valor num campo de texto e pressionar o botão simular para ver os resultados em Realidade Aumentada. O objetivo desta opção é prover uma forma de visualizar diversos valores de batimentos cardíacos, como o estado de repouso, atividade física intensa, valor médio da população e mesmo quantidades muito altas ou baixas de batimentos. É possível alterar este valor durante a simulação e visualizar a mudança de velocidade nos batimentos do coração virtual. O sistema limita o valor máximo a 200 e o valor mínimo a 20 batidas por minuto (bpm), valores dentro do intervalo médio de operação do coração humano [9]. A Figura 11 apresenta a interface da opção Simular Pulso Constante e uma situação de erro nos valores sendo detectada.

Figura 11. Interface da opção Simular Pulso Constante e erro sendo detectado

Page 36: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

36

Voltar ao sumário

Quando o usuário pressiona o botão Simular em qualquer uma das opções, são gravados em um arquivo texto as alterações feitas e passadas para o módulo GRVA. O botão Simular é desabilitado sempre que o sistema detecta algo que invalide a simulação.

A opção Buscar ECG em Arquivo simula valores captados a partir de arquivos contendo as amplitudes de eletrocardiogramas. Nessa opção estão presentes um visualizador do gráfico simulado, um campo para definição da taxa de amostragem e um botão para localização dos arquivos desejados. Quando o usuário informa um caminho inválido o sistema reconhece o erro e desabilita o botão Simular. A Figura 12 apresenta a interface desta opção, bem como uma situação de erro sendo detectada.

Figura 12. Interface da opção Buscar ECG em Arquivo e erro sendo detectado

A opção Capturar ECG de Imagem é a que exige mais interação com o usuário. Nessa opção, o usuário deve abrir um arquivo gráfico contendo uma imagem de eletrocardiograma (ECG) digitalizada, selecionar uma cor para o sinal e configurar alguns parâmetros apropriadamente, para recuperar o gráfico contido na imagem. Assim, sua interface foi separada em uma janela que se sobrepõe à principal. A Figura 13 apresenta esta janela.

Figura 13. Interface da opção Capturar ECG de Imagem.

Inicialmente o usuário seleciona uma imagem para ser aberta. O sistema suporta os principais formatos gráficos, entre eles o jpeg, bmp, gif, e png, através do software IrfanView [17]. Após a abertura do arquivo, o usuário deve escolher uma cor para o sinal, digitando os valores correspondentes aos canais de cor ou utilizando uma ferramenta de seleção que permite

capturar a cor de um ponto específico na imagem. Essa cor é utilizada por uma técnica de processamento de imagens chamada Chroma Key [18,19], para separar o sinal do restante da figura. A técnica consiste em separar objetos de interesse de um fundo utilizando como elemento de diferenciação a cor do fundo ou do objeto.

Após a escolha da cor já é possível a tentativa de obtenção do sinal, pressionando o botão Obter Sinal. Após alguns instantes, aparece no lado direito da janela uma prévia do sinal detectado, onde os pontos brancos representam o sinal detectado e os pontos pretos representam a parte descartada da imagem. A Figura 14 apresenta a seleção de cor e também a interface resultante após ser pressionado o botão Obter Sinal.

Figura 14. Seleção de cor e obtenção do sinal

Nem sempre o reconhecimento do gráfico é perfeito, assim é possível alterar o parâmetro tolerância para aumentar ou diminuir a sensibilidade do sistema ao desvio da cor escolhida e obter o sinal novamente. Também é fornecida uma ferramenta para apagar trechos da imagem que não forem referentes ao sinal.

Quando o sinal é reconhecido de forma satisfatória, o mesmo é transformado em um vetor de amplitudes similar ao da opção Buscar ECG em Arquivo, podendo inclusive ser salvo para uma arquivo texto ou enviado para a simulação. A Figura 15 apresenta esta situação.

Figura 15. Estado Final da opção Capturar ECG de Imagem

Page 37: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

37

Voltar ao sumário

A opção Captar Dados do Sensor, não possui nenhuma opção adicional, uma vez que destina-se a buscar dados do sensor, via porta paralela. Assim, essa opção possui somente elementos de inspeção, para verificar o funcionamento do sensor e ter uma prévia da medição do batimento cardíaco. A Figura 16 apresenta a interface da opção.

Figura 16. Interface da opção Captar Dados do Sensor

Após todas as configurações e opções serem realizadas na interface de operação, entra em cena o módulo GVRA. Este módulo utiliza os parâmetros recebidos da interface de operação em conjunto com o fluxo de vídeo captado pela câmera para produzir a visualização final da simulação.

Para produzir a visualização final, inicialmente é necessário escolher ou desenhar os modelos virtuais a serem utilizados na simulação. Para o ARBioMed foi utilizado um modelo virtual do coração com efeitos de textura para obter maior realismo. O modelo foi obtido de uma biblioteca, em formato VRML e contendo as principais estruturas cardíacas. Para seu aproveitamento no sistema, as partes não necessárias à simulação foram retiradas e a contagem de faces foi minimizada, visando aumentar a compatibilidade do sistema com computadores com capacidades gráficas inferiores ao utilizado. A Figura 17 apresenta o modelo original e o modelo já texturizado.

Figura 17. Modelos virtuais do coração

As animações do coração foram desenvolvidas de 2 formas, uma simples onde é feita somente a escala do órgão virtual para representar a parte ativa do ciclo, e uma mais complexa, onde o órgão é deformado durante o ciclo de forma semelhante ao coração real. A forma simples destina-se a computadores com menos recursos computacionais, pois é mais leve do que a forma complexa. Porém, os resultados da forma complexa são muito mais realistas.

Tanto a animação simples quanto a complexa, foram definidas para ter 20 quadros de animação. A

animação simples alterna a escala do órgão virtual de 90% até 100% de seu tamanho original. A animação complexa possui 20 poses dos diferentes estados de deformação presentes no ciclo cardíaco, representadas por 20 modelos do coração que se alternam em visibilidade para simular a deformação, obedecendo aos parâmetros configurados nas opções da interface.

Também foi criada uma forma de redimensionamento do coração baseada nas dimensões da caixa torácica. Esta funcionalidade é apresentada na Figura 18.

Figura 18. Redimensionamento do coração

Como pode ser visto são utilizados 2 marcadores delimitadores para auxiliar no redimensionamento do coração virtual.

As 4 formas de entradas de dados presentes na interface de operação são tratadas pelo módulo GVRA como duas situações de animação, pois a animação de pulso constante é semelhante à animação do sensor, visto que as 2 utilizam um valor de pulsação para construir a animação apropriadamente, e as animações baseadas em arquivos de ECG ou imagens de ECG utilizam as amplitudes do gráfico para identificação dos momentos do ciclo cardíaco e geração da animação apropriada.

Para que as animações correspondessem de forma mais precisa aos comportamentos reais, a taxa de quadros por segundo gerada pelo computador é utilizada nos cálculos de animação, causando em computadores com taxas inferiores a 20 quadros por segundo a perda de alguns quadros de animação, bem como a repetição destes quadros em computadores com taxas superiores a 20 quadros por segundo. Desta forma, um pulso constante de 72 batidas por minuto realmente será simulado por 72 pulsos do coração virtual em um minuto. O processo ocorre de forma similar com as leituras do sensor, exceto pelo fato de que elas são dinâmicas, então a simulação vai se adaptando automaticamente.

A animação das opções baseadas em arquivos e imagens é um pouco mais complexa, pois utiliza a taxa de amostragem do sinal além da taxa de quadros por segundo. No ciclo cardíaco, a fase ativa é caracterizada pela maior curva do gráfico. Assim, através de algoritmos de média, é possível reduzir ou mesmo eliminar as curvas menores. O gráfico resultante, tem

Page 38: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

38

Voltar ao sumário

suas amplitudes normalizadas para valores de 0 a 20, e associadas a uma das formas de animação do sistema.

A Figura 19 apresenta o resultado final do sistema, em ambiente de Realidade Aumentada.

Figura 19. Resultado final do sistema em ambiente de Realidade Aumentada

4. Conclusões e Trabalhos Futuros

Ao início desta pesquisa, a proposta criada para o sistema a ser desenvolvido envolveu a investigação das diversas fontes de dados de sinais cardíacos. Esta investigação conduziu às atuais opções existentes no sistema. Estas opções permitem aos usuários visualizarem o batimento cardíaco de diferentes maneiras, facilitando a compreensão das diversas situações de batimentos cardíacos, bem como a interpretação de exames cardíacos. A opção de utilização do sensor é interessante pelo fato de apresentar, em tempo real, o coração virtual sincronizado ao do usuário, reforçando a idéia da de uma visão ampliada do mundo real e melhorando a sensação de realismo proporcionada pela simulação.

O sistema desenvolvido ainda apresenta algumas limitações, como o reconhecimento de apenas 1 linha de gráfico na opção Capturar ECG de Imagem, bem como em relação ao reconhecimento das diversas fases do ciclo cardíaco para uma melhor simulação do mesmo. Está prevista também a adição de sons aos batimentos cardíacos para tornar a simulação mais real.

Além das melhorias na implementação, o sistema precisa ser testado junto a potenciais usuários e analisado por profissionais da área relacionada, de forma a mensurar de forma satisfatória suas funcionalidades. 5. Referências Bibliográficas

[1] Moriwaki, K. Between the skin and the garden: new modes of interaction in the wearable data environment. In Horizon Zero, vol.7. Disponível em http://www.horizonzero.ca/textsite/wear.php?is=16&file=7&tlang=0. Acesso em 27 de Agosto de 2008.

[2] Preece, J. Human-computer interaction. Addison-Wesley Pub Co,1994.

[3] Terzian, F. Com as mãos ou com a mente. Disponível em: http://portalexame.abril.com.br/revista/exame/edicoes/0

905/tecnologia/m0142205.html. Acesso em 27 de Agosto de 2008.

[4] Tori, Romero; Kirner, C.; Siscouto, R.. Fundamentos e Tecnologia de Realidade Virtual e Aumentada. 1. ed. Porto Alegre: Sociedade Brasileira de Computação - SBC, 2006. v. 1.369.

[5] MIT (1999). Project on Image Guided Surgery. Disponível em: http://groups.csail.mit.edu/vision/medical-vision/surgery/surgical_navigation.html. Acesso em 28 de março de 2008.

[6] Shuhaiber, J.H. Augmented Reality in Surgery Arch Surg:2004;139:170-174. Disponível em: http://archsurg.ama-assn.org/cgi/content/full/139/2/170#ACK. Acesso em 11 de Novembro de 2007.

[7] Pereira, J. M. L. B. A Realidade Aumentada na Engenharia Biomédica: Estado da Arte. Disponível em: http://ltodi.est.ips.pt/jbraz/ficheiros/pubs/2000_5web_jbraz.pdf. Acesso em 11 e Novembro de 2007.

[8] Guyton, A. C. ; Hall, J. E. Tratado de Fisiologia Médica. 9ª Ed. Guanabara Koogan.1996.

[9] Carvalho, A. P. ; Costa, A. F. Circulação e Respiração, Fundamentos de Biofísica e Fisiologia. 2ª Ed. MEC. 1976. M

[10] MIT. MIT. Disponível em: http://web.mit.edu/. Acesso em 09 de julho de 2008.

[11] BWH. Brigham and Women’s Hospital. Disponível em: http://www.brighamandwomens.org/. Acesso em 09 de julho de 2008.

[12] MIT (1999). Project on Image Guided Surgery. Disponível em: http://groups.csail.mit.edu/vision/medical-vision/surgery/surgical_navigation.html. Acesso em 28 de março de 2008.

[13] Pereira, J. B. VIDA: Visualizador Interactivo de Dados biomecânicos Animados – Relatório Técnico. Disponível em: http://ltodi.est.ips.pt/jbraz/ficheiros/pubs/2003_12epcg_jbraz.pdf. Acesso em 28 de março de 2008.

[14] Rosário, L. B. et al. Die Heart - Augmented Reality Visualization of the Left Ventricle of the Human Heart, using a Tangible Interface. Disponível em: http://www.adetti.pt/DieHeart/AugmentedReality.htm. Acesso em 28 de março de 2008.

[15] Wikipedia. Mouse (computing). Disponível em: http://en.wikipedia.org/wiki/Mouse_%28computing%29. Acesso em 10 de julho de 2008.

[16] mxToolKit. mxToolKit manual. Disponível em: http://chumbalum.swissquake.ch/mxtk/index.html. Acesso em 10 de julho de 2008.

[17] IrfanView. IrfanView – Official HomePage. Disponível em: http://www.irfanview.com/. Acesso em 11 de agosto de 2008.

[18] Gonzalez, R. C.; Woods, R. E. Processamento de Imagens Digitais. 1ª Ed. 2000. Edgar Blücher, 2000.

[19] Ashihkmin, M. High Quality Chroma Key. Disponível em: http://bmrc.berkeley.edu/courseware/cs294-3/fall97/projects/ashikhmin/. Acesso em 11 de agosto de 2008.

Page 39: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

39

Voltar ao sumário

ReabRA: Reabilitação Cognitiva através de uma aplicação de Realidade Aumentada

Diego Berçacula do Nascimento, Gustavo F. Jobim de Carvalho, Rosa Maria E. M. da Costa

Universidade do Estado do Rio de Janeiro – UERJ, IME – Dept de Informática e Ciência da Computação

Rua São Francisco Xavier 524- 6o andar – Bl. B, CEP 20550-013 Rio de Janeiro - Brasil

[email protected], [email protected], [email protected]

ResumoEste artigo descreve uma aplicação de Realidade Aumentada voltada para a estimulação cognitiva de pessoas com deficiências cognitivas causadas por diferentes tipos de doenças e acidentes. O ambiente foi testado com um paciente com esquizofrenia e, neste caso, se mostrou adequado para a estimulação da memória e atenção.

Abstract This paper describes an Augmented Reality application to stimulate the cognitive functions of people with different kinds of cognitive deficits, caused by illnesses and accidents. The environment was tested with a patient with schizophrenia and, in this in case, it was considered adequate for the memory and attention stimulation.

1. Introdução

Reabilitação Cognitiva é o nome dado a um conjunto de processos terapêuticos de estimulação sensorial, aplicado a pacientes que tiveram suas funções cognitivas comprometidas devido a algum tipo de dano cerebral. As principais funções cognitivas incluem percepção, atenção, memória, raciocínio e linguagem. Um tratamento de reabilitação cognitiva baseia-se na estimulação das funções cognitivas, através da aplicação de exercícios que reproduzem situações do cotidiano. Estes exercícios, nos quais o paciente é incentivado a interagir e se concentrar, podem ser apoiados por diversos formatos de mídia como formulários, figuras e vídeos.

Neste contexto, um computador pode se tornar a ferramenta mais completa para apoiar um processo de

reabilitação cognitiva, pois reúne requisitos audiovisuais para a aplicação de exercícios específicos [1]. Tecnologias de interface computacional avançadas combinam, em diferentes graus, imagens geradas por computador com imagens do ambiente real. Um dos primeiros trabalhos que formalizou definições para estas novas aplicações, considerou que estas diferentes combinações fazem parte de um universo chamado Realidade Misturada, no qual se incluem a Realidade Virtual (RV) e a Realidade Aumentada (RA) [2]. Estas tecnologias vêm sendo utilizadas com eficácia em diversas áreas, como na engenharia, arquitetura, entretenimento, Web e aplicações na área médica, entre outras.

Dentre estes dois tipos de tecnologia, a Realidade Virtual é o conceito mais difundido e conhecido. Aplicações em RV consistem de ambientes virtuais inteiramente gerados por computador. O usuário, inserido num ambiente como este pode caminhar, navegar e interagir com os objetos da cena. Normalmente, estas aplicações exigem grande poder de processamento computacional e, conseqüentemente, seus custos são elevados.

Um ambiente de Realidade Aumentada, ou “ambiente aumentado”, consiste em imagens do ambiente real no qual o usuário está inserido, acrescidas de objetos virtuais. Diferente de um ambiente inteiramente virtual, neste caso, imagens do ambiente real, ou a própria cena real é acrescida de objetos virtuais, através de processos computacionais. Para que os objetos virtuais apareçam no ambiente, são colocados nele objetos específicos padronizados chamados “marcadores”, aos quais os objetos virtuais são associados. O software de RA reconhece os diferentes padrões dos marcadores e os substitui por seus respectivos objetos virtuais. O ambiente aumentado resultante pode ser a própria cena real

Page 40: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

40

Voltar ao sumário

aumentada ou então, ser visualizado através do monitor ou de outros tipos de display. Como neste caso, só alguns elementos são gerados por computador, uma aplicação de RA exige poder de processamento menor que uma aplicação de Realidade Virtual. Isto resulta em redução de custos na aquisição de equipamentos, possibilitando que uma aplicação de RA venha a ser portátil, podendo ser executada eficientemente, em um computador de baixo custo ou notebook.

Este trabalho apresenta uma aplicação em RA, que chamamos ReabRA – Reabilitação através de Realidade Aumentada, para gerar estímulos aos processo de memória e atenção para pessoas com diferentes tipos de lesões cerebrais. Neste caso, o ambiente real é acrescido de elementos virtuais que devem ser observados através do monitor ou head-mounted display (HMD). Em seguida, o usuário visualiza a sala real e deve apontar os locais e o tipo de objeto que estava sendo projetado. Ressalta-se que este é o primeiro experimento de uso da RA neste domínio.

A seção 2 apresenta uma revisão dos principais conceitos da área de Reabilitação Cognitiva (RC). Na seção 3 são apresentadas as características da RA e algumas aplicações desenvolvidas para diferentes domínios. A seção 4 descreve o projeto ReabRA, voltado para a estimulação cognitiva de pessoas com deficiências de atenção e memória. Na seção 5, tecemos nossas conclusões sobre a pesquisa e, em seguida, são listadas as referências utilizadas.

2. O que é Reabilitação Cognitiva? “Cognição” é um termo amplo que engloba uma

grande variedade de atividades e processos mentais. Podemos considerar, de maneira sintética, que a cognição é a atividade mental consciente que informa uma pessoa sobre seu ambiente [3].

As muitas funções cognitivas incluem percepção, atenção, memória, raciocínio, solução de problemas, linguagem e funções executivas. Estas funções podem ter sido comprometidas por lesão cerebral, causada por doenças degenerativas, traumas ou acidentes. Os processos terapêuticos que visam à recuperação das funções cognitivas perdidas são chamados processos de reabilitação cognitiva (RC).

Em geral, um processo de reabilitação cognitiva é iniciado após avaliação neuropsicológica do paciente realizada por especialistas da área médica – neurologistas, neuropsicólogos e psicólogos – que identificam quais funções precisam ser tratadas e o tipo de terapia que deverá ser feita [1]. Sohlberg e Matter [3] descrevem uma categorização para as abordagens básicas da reabilitação cognitiva:

1. A abordagem de estimulação geral: o clínico administra materiais de treino cognitivo (pode ser software) sem uma orientação teórica

específica, supondo que qualquer estimulação resultará em melhora;

2. A abordagem de adaptação funcional: não se faz treino específico de funções cognitivas no contexto clínico, mas apenas no contexto funcional de situações naturalísticas de vida e trabalho;

3. A abordagem de processo específico: o clínico administra repetidamente uma série de atividades de treino, organizadas hierarquicamente e dirigidas a componentes específicos de processos cognitivos. Sua ênfase na repetição deriva do conceito de Luria [4] de que o treino direto de processos cognitivos é capaz de produzir a reorganização de processos de pensamento.

A estimulação das funções cognitivas pode ser realizada através de exercícios focados nos processos de atenção, memória e concentração, ou explorar estas funções a partir da resolução de problemas associados a situações do cotidiano. Nestes exercícios o paciente é incentivado a se concentrar, interagir, raciocinar, entender o discurso corrente daquela situação, expressar sentimentos e pensamentos e tomar decisões. Estas situações podem ser apresentadas através da aplicação de formulários, projeção de vídeos, fitas de áudio e mais recentemente, do computador.

2.1. O papel do computador no processo de RC

Segundo Costa [1], atualmente, o computador é o instrumento mais adequado para auxiliar qualquer processo de reabilitação cognitiva, pois reúne todas as ferramentas necessárias para a apresentação e a vivência de situações da vida diária e exercícios mais lúdicos.

Apesar das vantagens que o uso de ambientes virtuais proporciona para a reabilitação cognitiva, existem fatores que impedem sua aplicação mais abrangente. Entre eles, temos o alto custo dos equipamentos necessários, a falta de ferramentas, técnicas e métodos de desenvolvimento dos aplicativos, e a necessidade do envolvimento de equipes multidisciplinares para a criação destes ambientes.

O uso de um ambiente de Realidade Aumentada pode ser uma alternativa viável, especialmente devido à possibilidade de redução de custos. Como apenas os objetos virtuais precisam de processamento computacional, um ambiente de RA pode rodar em qualquer computador comum, que disponha apenas de uma câmera digital. O fato de serem necessários, basicamente, apenas os marcadores, torna uma aplicação em RA portátil, sendo possível levá-la a qualquer ambiente. Poderíamos escolher o exemplo de

Page 41: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

41

Voltar ao sumário

um paciente impossibilitado ou com dificuldades de deixar sua residência; esta aplicação em RA poderia estar instalada em um notebook, e o tratamento se daria na própria residência do paciente.

3. A Realidade Aumentada

A Realidade Aumentada (RA) é descrita por Azuma [5] em um dos artigos seminais sobre o assunto, como sendo uma variação do conceito de Ambientes Virtuais. As tecnologias de RV fazem com que o usuário seja completamente imerso em um ambiente sintético. Enquanto está imerso, o usuário não pode ver o mundo real em volta dele. Em contraste, a RA permite que o usuário veja o mundo real, com objetos virtuais sobrepostos ou combinados. Desta forma, a RA enriquece a realidade, em vez de a substituir.

Conforme Kirner e Siscoutto [6], “a convergência tecnológica e o desenvolvimento de interfaces estão apontando para a nova geração de interfaces computacionais baseadas em realidade aumentada para uso nas mais variadas áreas, desde entretenimento, como jogos, até experimentos científicos coletivos, constituindo verdadeiros laboratórios de pesquisa”. Na RA, objetos virtuais tridimensionais são combinados com o ambiente tridimensional real, em tempo real. Entretanto, qual seria a utilidade de combinar objetos reais e virtuais em 3D? A Realidade Aumentada aumenta a percepção do usuário e seu nível de interação com o mundo real. Os objetos virtuais podem mostrar informações que o usuário poderia não detectar diretamente, através dos próprios sentidos. A informação trazida pelos objetos virtuais pode ajudar o usuário a realizar tarefas no mundo real. Em um ambiente de realidade aumentada, o usuário mantém o sentido de presença no mundo real utilizando-se um mecanismo para combinar o real e o virtual. A realidade aumentada está ligada com a realidade física e a realidade virtual com o sentido de telepresença [7].

3.1 Ampliação das fronteiras das aplicações da Realidade Aumentada

Nos últimos anos as aplicações desenvolvidas com a RA vêm crescendo e se expandindo por novos domínios. As técnicas de Inteligência Artificial têm tido resultados de aplicação muito positivos, o que contribuiu para um amadurecimento da área, permitindo sua consolidação no cenário mundial.

Hoje, muitas aplicações extrapolam a barreira dos domínios tecnológicos e chegam às áreas artísticas, médicas, de marketing, comerciais e culturais.

Corroborando esta afirmação, destacamos a área de música, onde foi desenvolvido um aplicativo utilizando o ARToolkit que explorou algumas formas de aprendizado musical. Uma delas utiliza a oclusão de marcadores para executar sons pré-definidos. Símbolos são apresentados ao usuário e este deve fazer a oclusão do marcador apropriado colocando sua mão sobre ele. Feito isso, a respectiva nota musical é executada capacitando o usuário na percepção rítmica, enquanto utiliza o sistema [8].

Assim como os marcadores usados nos sistemas de RA, os hyperlinks físicos são um grande avanço recente na área. Eles são identificadores legíveis por máquinas, que podem ser lidos por uma câmera de celular, por exemplo. Estes identificadores podem ter códigos de barra de uma ou duas dimensões, marcadores RFID, imagem, som, impressão digital etc. Um código de barras 2D de alta capacidade chamado QR (“Quick Response” – “Resposta Rápida”) [9] está se proliferando no Japão, com leitores de código QR pré-instalados em todos os novos celulares de terceira geração (Figura 1). Eles estão aparecendo em cartões de visita (eliminando a necessidade de entrada de dados anual nos celulares), páginas de revistas (para cupons de desconto), pacotes de alimentos (para informações nutricionais), quiosques de aeroportos (para passagens de avião digitais). Uma vez reconhecido pela câmera, um clique chama um número, inicia um e-mail, ou leva o usuário a um site da Internet. Aplicações futuras são limitadas apenas pela imaginação.

Outra possibilidade da RA é oferecer meios de visualização de informações sobre produtos disponíveis em um supermercado, abrindo novas opções para as pessoas incapazes de enxergar as minúsculas letras dos rótulos dos produtos [10].

Uma aplicação da RA na medicina é no caso de cirurgias minimamente invasivas. O reconhecimento do valor deste tipo de procedimento tem crescido nos últimos anos. Comparado à cirurgia tradicional, ela oferece ao paciente várias vantagens. A ausência de grandes incisões, normalmente resulta em perda reduzida de sangue, diminuindo significativamente a dor pós-operatória e tendo ainda, melhores resultados cosméticos. O projeto Medarpa [11], criado pelo governo alemão, apóia este tipo de cirurgia abrindo uma janela para o interior do paciente. Utilizando este sistema, o cirurgião tem sua percepção visual enriquecida, graças à RA, que sobrepõe informações úteis em seu campo de visão, por exemplo, fundindo a percepção visual do ambiente real integrado com um ambiente virtual suplementar, que suporte tarefas dentro dele, mostrando por exemplo, imagens médicas e instrumentos virtuais.

Page 42: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

42

Voltar ao sumário

Figura 1. Aplicações do QR Code em diversas situações. Abaixo, à direita, o código contém o endereço http://www.uerj.br.

Apesar do aumento da difusão destas aplicações, a área de RC ainda não foi contemplada com aplicações específicas. Neste sentido, a seguir são descritas as principais características de uma aplicação e os resultados iniciais de sua utilização prática.

4. O Projeto ReabRA – Reabilitação Cognitiva através da Realidade Aumentada

Esta aplicação visa prover elementos de estimulação da atenção e memória, em um programa de tratamento de pessoas com diferentes tipos de lesões cerebrais. Esta aplicação foi desenvolvida em várias etapas, que serão descritas nas próximas subseções. Neste caso, foram seguidas as seguintes atividades: definição dos pré-requisitos, projeto, implementação e avaliação.

4.1. Definição dos pré-requisitos do sistema

Nesta etapa foram discutidas, com o médico responsável, as características do público–alvo, tipo de

atividade a ser desenvolvida e atividades associadas à utilização do sistema.

• Público-alvo: Pacientes, encaminhados por seus médicos responsáveis, que tenham diferentes tipos de deficiências cognitivas causadas por lesões cerebrais ou doenças, que estejam recebendo tratamento no hospital universitário (HUPE) da UERJ e estejam dispostos a participar da pesquisa. Esta pesquisa está aprovada pelo comitê de ética do HUPE-UERJ.

• Objetivo: estimular os elementos de atenção e memória dos pacientes;

• Utilização do sistema: A sala onde o tratamento será realizado deve ser previamente preparada com marcadores colocados nas posições em que os objetos virtuais serão inseridos no ambiente;

• Objetos virtuais: Escolhemos objetos virtuais simples, que se encaixam num contexto geral de decoração de ambientes internos, com o intuito de criar

Page 43: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

43

Voltar ao sumário

um ambiente realístico, oferecendo assim maior sensação de imersão.

• Atividade: O sistema irá trabalhar na perspectiva de abordagem de processo específico [3]. O paciente deve visualizar uma sala que contém os marcadores na parede, através do monitor ou de um capacete HMD. Neste caso, cada marcador terá um objeto associado. Em geral, serão quadros contendo imagens conhecidas e motivadoras. A princípio, temos 5 objetos, quatro quadros com imagens do Pelé, de um carro bonito (Figura 2), de um cachorro e do quadro da Monalisa. O quinto elemento é uma bola de futebol que aparece sobre a mesa. Alguns minutos mais tarde o paciente deve entrar na sala e tentar lembrar onde estavam estes objetos.

4.2. Projeto

Os dispositivos utilizados no desenvolvimento e utilização são:

• Dispositivos de entrada: Webcam com resolução de 450k pixels, capaz de gerar imagens de 800x600 pixelscom taxa de 30 quadros por segundo.

Figura 2: Uma das imagens utilizadas na aplicação

• Dispositivos de saída: Monitor de vídeo comum ou capacete HMD.

• Computador: A aplicação foi desenvolvida em um PC baseado em processador Intel Pentium, sistema operacional Microsoft Windows XP, e placa de vídeo GeForce 8400GS 512 MB aceleradora 3D, que permite o tratamento e processamento das imagens e modelos 3D com alta definição.

• Design de objetos: Os objetos virtuais representam objetos do cotidiano, que podem se enquadrar facilmente em qualquer ambiente real.

4.3. Implementação

• Escolha e instalação do aplicativo: Foi escolhido o ARToolKit, por ser confiável, gratuito, de fácil instalação em diferentes sistemas operacionais e também, por oferecer facilidade na criação do ambiente aumentado, através de sua linguagem baseada em scripts. Nossa experiência anterior com o Macromedia Director MX e o Dart [10] reforçou esta escolha. O ARToolKit é um software livre, de código aberto, que rastreia e posiciona objetos virtuais 3D em relação à câmera, através de formas padronizadas (marcadores) presentes no ambiente real. Os marcadores são registrados na aplicação, que os substitui pelos objetos virtuais correspondentes, no momento da geração do ambiente aumentado. Os objetos virtuais permanecem vinculados aos marcadores, acompanhando seus movimentos. Dessa forma, é possível reposicioná-los à vontade, de acordo com as necessidades do tratamento.

• Construção dos objetos 3D: Os quadros e a bola foram trabalhados no 3D Studio Max, aplicativo que ofereceu facilidade de operação, robustez e capacidade de conversão para o formato VRML.

4.4. Avaliação

Foram realizadas duas modalidades de avaliação: uma que verificou os aspectos técnicos e foi associada ao desempenho do sistema e outra, para verificar se a aplicação atingiu os objetivos almejados: estimular a atenção e a memória dos pacientes. Neste trabalho estamos mais interessados em apresentar os resultados da segunda modalidade. A principio, a aplicação foi testada com um paciente com esquizofrenia. Ele tem 32 anos e seu primeiro surto foi aos 18 anos. Desde então, se afastou da vida produtiva, não trabalha nem estuda. Ele está participando do projeto de Reabilitação Cognitiva através de Realidade Virtual, que está sendo desenvolvido no Hospital Universitário da UERJ.

Ele visualizou a sala através do monitor do computador, em seguida pedimos que ele apontasse onde cada objeto estava. O computador ficou em um canto que não tinha visão de todo o espaço. A Figura 3 mostra um dos marcadores colados nas paredes da sala. A Figura 4 mostra o marcador com um dos objetos associados.

Page 44: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

44

Voltar ao sumário

Figura 3: Marcador colado na parede da sala

Figura 4: Um dos objetos associado a um marcador

Depois do experimento com a RA, pedimos ao paciente que enumerasse os objetos que ele viu e que não estavam mais presentes na sala real. Ele enumerou quatro objetos, esquecendo de citar a Monalisa, apresentada na Figura 4. Isto pode ser justificado por ser esta imagem, algo mais distante do universo de seu dia-a-dia.

Em seguida, pedimos para ele associar cada uma das imagens com os locais em que se encontravam. Nesta etapa ele se confundiu bastante e somente acertou a posição de dois objetos, indicando que talvez devêssemos permanecer por mais tempo navegando no ambiente de RA.

Após esta fase pedimos para ele classificar a experiência em duas dimensões: percepção do lúdico e nível de dificuldade, onde em uma escala, 1 representa a opção “pouco divertida” e 10 “muito divertida”; e em

relação à dificuldade, 1 é associado à “muito fácil” e 10 à “muito difícil”. Ele respondeu que para diversão ele dava grau 7 e para a dificuldade ele dava 8. Ou seja, apesar das dificuldades, ele julgou a experiência divertida.

A abordagem explorada para este tipo de aplicação, de acordo com a classificação proposta por Sohlberg e Matter [3], foi a “abordagem de processo específico”, onde administramos atividades de treino, organizadas hierarquicamente e dirigidas aos componentes de atenção e memória. Esperamos que a repetição destas tarefas possa estimular a reorganização de processos de pensamento, principalmente, em relação a pacientes com este perfil, onde a motivação é um elemento essencial. Neste caso, o uso das novas tecnologias é fundamental, pois contribui para aumentar o nível de empolgação, gerando envolvimento e comprometimento com as atividades desenvolvidas.

Apesar da pouca representatividade destes resultados, nossas pesquisas irão continuar de forma a aumentar o tamanho da nossa amostra e utilizar o capacete HMD, para verificar em qual das duas modalidades de visualização temos mais sucesso. Entretanto, gostaríamos de ressaltar a dificuldade de se ter um número significativo de indivíduos com esquizofrenia participando destes testes, causada pelas características do distúrbio, que torna os pacientes muito desconfiados e desanimados em entrar em contato com novas pessoas ou realizar novas atividades.

Entretanto, um aspecto que nos chamou a atenção neste experimento foi o entusiasmo do paciente em utilizar uma aplicação diferente das que ele vinha utilizando anteriormente. Em geral, os usuários participantes destes programas de RC demonstram satisfação em trabalhar com equipamentos modernos para desenvolver exercícios que, usualmente, são realizados com lápis/papel e considerados enfadonhos. E não foi diferente com o sujeito desta pesquisa, sugerindo que o ReabRA poderá ter uma boa receptividade por parte dos seus usuários.

5. Conclusões

Neste trabalho desenvolvemos um aplicativo voltado para a estimulação cognitiva de pessoas que sofreram algum tipo de dano cerebral que causou déficits de atenção e memória.

Destacamos as principais características da Realidade Aumentada (RA), que foi a base tecnológica de nosso projeto. Apresentamos brevemente, algumas aplicações incipientes da RA em diversas áreas. Pudemos constatar que as tecnologias de RA estão tendo sucesso com aplicações em várias áreas da atividade humana. Não há dúvidas que, conforme a

Page 45: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

44

Voltar ao sumário

comunidade perceba seu potencial, continuaremos tendo avanços significativos e resultados positivos de sua aplicação.

Finalmente, apresentamos o aplicativo ReabRA que consiste de um ambiente aumentado, ou seja, uma imagem do ambiente real acrescida de objetos virtuais, que são objetos do cotidiano. Graças à escolha da ferramenta ARToolKit para o desenvolvimento do aplicativo, conseguimos um produto que pode ser instalado e utilizado com facilidade, mesmo em computadores de baixo custo e/ou portáteis.

A tecnologia de Realidade Aumentada se mostrou ideal para um aplicativo como o ReabRA. Não temos dúvidas que o ReabRA poderia vir a ser complementado com novos módulos, que tratariam de outras funções cognitivas, criando assim um sistema mais completo. Os resultados da avaliação deste aplicativo com um paciente foram interessantes e apontaram alguns aspectos que devem ser considerados na continuidade dos trabalhos: é importante trabalhar com imagens e objetos conhecidos dos pacientes, isto contribui para o aumento do seu nível de atenção e poderá incrementar sua capacidade de memorizar as atividades. Estas imagens conhecidas geram também, um maior nível de motivação para a realização das tarefas, tornando mais eficiente o treinamento das funções cognitivas em questão.

Referências

[1] R. M. Costa, L. A. Carvalho, “The Acceptance of Virtual Reality Devices for Cognitive Rehabilitation: a report of positive results with schizophrenia”, Computer Methods and Programs in Biomedicine, vol 73, no. 3, Elsevier Science, 2004, pp. 173-182.

[2] P. Milgram, F. Kishino. “A Taxonomy of Mixed Reality Visual Displays”. 1994. Em: http://vered.rose.utoronto.ca/people/paul_dir/IEICE94/ieice.html. Consultado em outubro 2007.

[3] M. Sohlberg, C. Mateer, Cognitive Rehabilitation: Na Integrative Neuropsychological Approach., New York, Guilford Press, 2001.

[4] A. Luria. The Working Brain: An Introduction to Neuropsychology. Londres:Peguin, 1982.

[5] R. Azuma. “A Survey of Augmented Reality”. In: Presence: Teleoperators and Virtual Environments, n. 6, 1997, pp.355-385.

[6] C. Kirner, R. Siscouto. “Fundamentos de Realidade Virtual”. In: Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicações, Editora SBC – Sociedade Brasileira de Computação, Porto Alegre, 2007, pp.6-24.

[7] C Kirner, R. Tori. “Introdução à Realidade Virtual, realidade Misturada e Hiper-realidade”. In: Cláudio Kirner; Romero Tori. (Ed.). Realidade Virtual: Conceitos, Tecnologia e Tendências. 1ªed. São Paulo, 2004.

[8] R. E. Zorzal; A. B. Buccioli; C. Kirner. ‘O Uso da Realidade Aumentada no Aprendizado Musical’. WARV – Workshop de aplicações de Realidade virtual, Uberlândia-MG, 2005.

[9] QR Code, Em: http://www.denso-wave.com/qrcode/indexe.html. Consultado em setembro de 2008.

[10] A. Tavares, D. V.Pereira; K. L. Miguez. “Visu-Nutri: Uma Aplicação de Realidade Aumentada para a Visualização de Informações Nutricionais de Produtos Alimentícios”. In: Anais do III Workshop de Realidade Aumentada, 2006.

[11] Medarpa Project, Em: http://www.medarpa.de/englisch/index.html, Consultado em setembro de 2008.

Page 46: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

45

Voltar ao sumário

sessão TécnicA 2ra: técnicas, equipamentos e

algoritmoschair: Judith kelner - uFpe

Page 47: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

46

Voltar ao sumário

Perspective Correction Implementation for Embedded (Marker-Based) Augmented Reality

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 {bfrs, jmxnt, vt, jk}@cin.ufpe.br

Abstract

Most of augmented reality applications need mobility and processing power to efficiently provide immersion to the end user. These requirements can be achieved using embedded devices such as FPGAs to execute the application. In order to work properly, id-marker-based applications require removing the perspective distortion of the input images, so that it’s possible to have the correct reading of the id. Several approaches can be taken to fix the perspective distortion in an image, as 4 points mapping and the use of parallel and perpendicular lines. This work presents an FPGA implementation of a module that uses 4 points mapping to calculate the corresponding homography between images, in order to solve the problem of perspective distortion correction in an embedded AR system.

1. Introduction

Augmented reality (AR) applications play their most significant role as systems that can be easily taken and used anywhere . However, just as any othergraphic application, they require some processing power so that a realistic experience can be provided to the user . An embedded architecture developed on an FPGA (Field Programmable Gate Array) would supply both mobility and processing power to the AR solution, as it is a tiny chip and has the efficiency of hardware level execution . Embedding the whole AR pipeline would spread the use of this technology, since it would enable AR applications to run on compact devices .

Marker-based AR systems use markers to keep track of the position in which the digital objects will be rendered . Fiducial marker systems consist in patterns that should be uniquely identified in the environment by some detection algorithm . One of these systems is the BCH marker system, based on the Bose-

Chaudhuri-Hocquenghem code [1], which allows up to 4096 markers and is used in the ARToolkit Plus library . This type of marker consists of a black square border and an interior region filled with a 6x6 grid of black and white cells . These cells represent a 36-bit code . Such id-based marker systems are widely used in AR applications, where the reference of each marker is important .

The detection algorithm of an id-based system such as the one described above basically identifies the markers on the image frame and reads the code drawn upon it . However, if the marker’s plane is not aligned to the screen’s plane, it’s needed to find a mapping between the two planes, known as homography . The homography is used to make possible the correct reading of the id drawn on the marker, which is then checked using a specific matching algorithm . In order to do so, there are some algorithms already developed to extract such perspective distortion . One of these approaches uses parallel and perpendicular lines, which is described in [2] . It identifies a pair of parallel lines that intersect each other in the perspective image, uses the line that passes through the intersection points to remove the projective component of the distortion, finds a pair of perpendicular lines and uses it to remove the affine component . The approach chosen to be used for the perspective distortion correction module presented in this paper requires 4 non-collinear points to create the mapping between the two planes . These points generate a set of 8 equations . To solve these equations an LU decomposition algorithm may be applied, due to its simplicity, as described in [3] . This algorithm writes the corresponding matrix of the set of equations as a product of a lower and upper triangular matrix . The equations are then solved using forward and backward substitution .

This work focuses on the development and validation of an embedded perspective correction module, based on the LU decomposition algorithm, thus enabling the identification of id-based markers .

Page 48: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

47

Voltar ao sumário

This module is part of ARCam, a framework for the development of embedded AR solutions . ARCam aims on facilitating the creation of new applications using the available hardware infrastructure . With this framework, it will be possible to create different types of solutions, for example, smart cameras programmed to perform equipment inspection [4][5][6] .

This work also presents an optimized module, which doesn’t require to perform the LU decomposition itself .

In sequence, section 2 presents related work on embedded AR systems, section 3 explains id-based marker detection and section 4 describes perspective distortion modeling, as well as how to correct it . After that, section 5 explains the LU decomposition algorithm used and section 6 presents the FPGA implementation of perspective distortion correction using LU decomposition . Section 7 introduces the optimizations done to the previous developed module and section 8 presents its implementation . Finally, some conclusions are discussed in section 9 .

2. Related work

Most of the AR applications developed so far has been done targeting PCs or workstations . However, there are some AR applications already developed targeting embedded platforms, such as [7] and [8] . Piekarski et al . [7] propose a low powered AR application using FPGAs, applying colored balls as markers . Since the system scans the image for a spot of a specific color, it’s very hard to distinguish a marker from a random object of the same color, producing high false positive rates . Also, there is no way to differentiate two markers on the scene . Real world image is acquired and processed using an FPGA . The coordinates of the markers are calculated and sent to a computer that renders the virtual image . The virtual image and the real world image are put together by a video combiner and then the output is displayed using a HMD (Head Mounted Display) . Toledo et al . [8] implement an AR application for visually impaired people on an FPGA . No markers are used as the system only needs to superimpose contour information of the real world image . A Cellular Neural Network is used to extract the contour information .

There are some other Computer Vision applications implemented on FPGAs, including [9], that proposes an FPGA architecture for static background subtraction in real time, which is very similar to any AR architecture .

As for AR and Computer Vision applications, its hardware implementation is clearly feasible . Solving linear systems using embedded devices is also possible, as shown in [10], where sparse matrices are factorized in parallel . In order to do so, Wang et al . [10] implemented a highly parallel Block-Diagonal-Bordered algorithm for LU decomposition . To simplify the design and reduce the implementation time, there were used six Altera Nios® configurable Intellectual Property processors for computation and control . They also compare their parallel solution with a sequential one, based on Nios and a hardware floating-point unit (FPU), achieving significant speedup .

3. Basic concepts

Before explaining the implementation of the perspective distortion correction module, some necessary background is provided . First, the AR pipeline and the perspective distortion are explained . Then the LU decomposition algorithm and the optimizations applied are presented .

3.1. Marker detection

In order to compose an AR scene, it's necessary to take several steps since the input image from the camera . These steps, detailed in Figure 1, compose the AR pipeline . Apart from the step shown with dashed contour, every other step in the pipeline has already been developed in ARCam, what leads to an almost complete AR embedded framework .

The step of marker detection is one of the procedures required to develop AR applications . Markers create a link between physical and digital worlds . Once a marker is found in a frame, it is possible to extract its position – and other properties – to render some digital object upon it . Marker’s characteristics depend on the marker system it belongs to .

There are several marker systems already developed . The application requirements for pose estimation and tracking, like accuracy of the position detection, how quick is the detection and diversity of markers are some of the characteristics of marker systems that should be taken into account during an AR project . Newer marker systems even enable detection over marker partial occlusion and are robust to lightning conditions, which normally affect the detection rate . Figure 2 shows some examples of markers .

Page 49: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

48

Voltar ao sumário

Figure 1. AR pipeline

Figure 2. Examples of marker systems

The procedure that detects a planar, square shaped and id-based marker, as the one chosen in this work, consists in scanning the image looking for square shapes, correcting the perspective distortion of the image, reading and identifying the id drawn on the marker . This work tackles the perspective distortion correction issue in an embedded solution .

The square shape of the markers has an important role in its detection, as its corners provide the 4 points that will be used on the mapping between reference’s and marker’s plane . To get the coordinates of the corners, a specific algorithm to detect rectangles is applied to the input image . This algorithm scans the image for contours based on the contrast of the marker’s black border . Then it checks if each contour is a rectangle, analyzing the angle between the edges and the number of edges . If the contour is finally accepted as a rectangle, the coordinates of the vertices are used to correct the perspective distortion of the marker .

3.2. Perspective distortion

As shown in [2], perspective distortion can be modeled by the following projective transformation, as written in equation (1), where p and p’ are 3-vectors representing a point and H is a homogeneous non-singular 3x3 matrix .

’ (1)

With 4 point correspondences, it is possible to extract 8 equations to generate matrix H, as written in the set of equations (2) . In the equations below, the elements of matrix H are expressed in the form , represents the coordinates in the image and represents the coordinates in the reference plane . (2)

Assuming that 1 and since we only have 8 equations, it is possible to mount the following matrix presented in equation (3) using the previous 8 equations:

1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1

(3)

It is enough to solve H up to an insignificant multiplicative factor, as only the ratio of the elements matters . In order to eliminate this multiplicative factor, it is imposed that the norm of the matrix be 1 . To solve

Page 50: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

49

Voltar ao sumário

this set of linear equations, it is possible to apply several algorithms . This work proposes using LU decomposition along with forward and backward substitution . As H is found, it is possible to estimate image’s marker from the reference marker and then to read its code .

3.3. LU decomposition

The LU decomposition algorithm is used to factorize a matrix into a lower and an upper triangular matrix, as shown in equation (4) . Once these triangular matrices are found, it becomes extremely easy to perform some tasks as to solve a set of linear equations, find the inverse matrix and calculate the determinant .

(4)

, , , ,, , , ,, , , , , , ,

, 0 0 0, , 0 0, , , 0 0, , ,

1 , , ,0 1 , ,0 0 1 , 0 0 0 0 1

There is more than one way to perform the LU decomposition algorithm . This work implements LU decomposition based on Crout’s method, following the description in [3] . Crout’s method splits the matrix into a lower and an unit upper triangular matrix . It requires pivoting in order to ensure stability, so implicit pivoting was implemented . The implicit pivoting basically interchanges the rows in order to have, for each column, the row with the highest pivot .

The procedure of decomposing the matrix using Crout’s method can be formulated as the following assignments (equations 5 and 6), for each 1, and 1, :

, , ,, (5)

, 1, , ,, (6)

Once the matrix is finally decomposed into the two triangular matrices, it’s ready to be used for solving the linear system . In order to solve a set of linear equations such as (7), it is needed to solve first (8) for y using forward substitution and then (9) for x by back substitution .

(7) (8) (9)

3.4. Optimizations

Although the LU decomposition algorithm runs fast enough for being used in AR systems, there were some optimizations that could be done to improve its performance even more .

Observing that the reference points are always the same, as the marker plane is always mapped to the screen plane, a lot of operations could be removed from the solution . Placing the reference marker’s vertices as shown in Figure 3 enables a significant simplification in matrix H calculation .

Figure 3. Reference marker coordinates after optimizations.

After applying the simplifications to the matrix, it is no longer necessary to execute the LU decomposition algorithm, since the linear system has become simple enough to be solved with only a few operations .

In the end, two different modules were implemented . The first one, explained in section 4, solved the linear system using LU decomposition, while the second one – the enhanced version, presented in section 4 .1 – simply do some mathematics operations to find matrix H .

4. Implementation

The FPGA implementation of the module that performs the perspective distortion correction based on the LU decomposition algorithm was done targeting a Stratix II EP2S60F1020C4 DSP development board from Altera, running at 25MHz . It was performed using the programming language for hardware design VHDL (Very-High-Speed Integrated Circuits Hardware Description Language) .

The entire process was implemented in two components, which are executed in sequence . The first one creates and splits the matrix H of the linear system into two triangular matrices and the second solves the

Page 51: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

50

Voltar ao sumário

linear system forward and backwards as explained in section 3 .3 . The first component presents a heavy overhead caused by control flow operations, as it has to iterate over the whole matrix twice . The components share two M4K memory blocks that store the matrix . The board features a 100MHz oscillator, but, due to design constraints, the clock frequency is limited to 25MHz .

In order to speed up execution, fixed-point arithmetic was adopted . 16 bits were used to represent the integer part and other 16 bits to represent the fractional part . Precision loss is not critical, but coordinates’ values needed to be shifted right by 5 bits due to overflow problems .

The first component used four 32-bit multipliers and one 32-bit divider . The second component used one 32-bit multiplier, one 32-bit divider and one 48-bit square root calculator . The multipliers and dividers were supplied as Altera’s MegaCore functions, while the square root calculator was implemented by the authors . The multipliers use one 36x36 digital signal processor (DSP) each and the divider is pipelined with a latency of 10 clock cycles .

Both components contain a finite state machine (FSM) that controls the data flow and models the implementation . First component’s FSM has 158 states while second component’s FSM has 47 states .

When it isn’t possible to split the matrix into two triangular matrices, i .e . the case of the matrix being singular, an error flag is set, warning other modules about the problem, and the procedure stops .

Running at 25MHz, the total execution time is 63us, allowing almost 16000 LU decompositions per second . This way, it is possible to execute it more than 500 times per frame at 30 fps .

4.1. Enhanced version

This optimized version of the perspective correction module was implemented targeting the same FPGA development board as the one used for the first implementation . Several simplifications were done to the whole system, including the reduction of operations executed and the removal of the memory block that allocated the matrix . However, the clock frequency remained the same due to a bottleneck in the division module .

The solution of the linear system became so simple that only 23 additions/subtractions, 9 multiplications and 2 divisions were done to solve it . There was still need for applying the constraint which determines that the norm of the matrix has to be 1 . Therefore, another 8 additions, 9 multiplications, 1 division and 1 square-root operation were applied . As fewer operations were

required, more bits could be used to perform them, achieving more precise results . 48-bit multipliers and divider were used, instead of the 32-bit versions utilized for the module that performed the LU decomposition . They were also supplied as Altera’s MegaCore functions .

Despite the enhanced version is the result of many optimizations, some improvements were also implemented to increment its functions capabilities, which increased the size of the module . Therefore, the amount of logic elements demanded for synthesizing it also increased . Table 1 presents the board occupation of the two implementations .

Table 1. Logic elements consumption.

ALUT ALM DSP blocks

Memory bits

LU 5423 2817 40 2770 Enhanced 8775 4493 64 126

The main optimization is pertinent to the execution time . The reason is that, since the decomposition of the matrix is no longer needed, all the iterating over the matrix and the overhead due to its control flow were removed . The operations required to calculate the transformation matrix on the optimized perspective correction module are significantly simpler than performing the LU decomposition . Great speedup was achieved, as shown in Table 2 . The maximum frequency indicated in Table 2 was provided by the Altera’s synthesis tool Quartus II 5 .1 and the clock cycles and execution times were acquired using Altera’s logic analyzer Signal Tap II via JTAG (Joint Test Action Group) interface .

Table 2. Execution time.Maximum frequency

Clock cycles

Execution time (25MHz)

LU 34,66 MHz 1577 63,08 us Enhanced 25,42 MHz 114 4,54 us

5. Conclusion

This work presents an FPGA implementation of a perspective distortion correction module for embedded marker-based AR systems . It solves a system of linear equations to calculate the homography between two images, as it is needed to detect markers .

Besides the use within AR systems, part of the module implemented in this work can also be integrated into any other project that needs to solve a system of linear equations or find the inverse of a matrix . Minor changes may be necessary, because

Page 52: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

51

Voltar ao sumário

some adaptations have been done to the input and output ports .

Due to algorithm complexity, there was some instability in execution, which demanded a lot of time to be fixed . This instability also motivated the implementation of the enhanced module, which was created based on some optimizations that could be done to the linear system . The comparison between both modules showed that the obtained speedup was significant .

The conclusion of the perspective distortion correction module takes ARCam one step closer to its first release . Having every step in the AR pipeline implemented, in a near future it will be possible to use the provided modules fully integrated for developing embedded AR applications .

6. Acknowledgements

The authors want to thank MCT and CNPq, for financially supporting this research (process 507194/2004-7) .

7. References

[1] R .C . Bose, and D .K . Ray-Chaudhuri, “On a Class of Error Correcting Binary Group Codes”, Information and Control, Elsevier, March 1960, pp . 68-79 .

[2] R . Hartley, and A . Zisserman, “Multiple View Geometry in Computer Vision”, Cambridge University Press, Cambridge, UK, 2008 .

[3] W .H . Press, B .P . Flannery, S .A . Teukolsky, W .T . Vetterling, “Numerical Recipes in C: The Art of Scientific Computing”, Cambridge University Press, Cambridge, UK, 1992 .

[4] G . Guimarães, J .P . Lima, J .M . Teixeira, G . Silva, V . Teichrieb, J . Kelner . “FPGA infrastructure for the development of augmented reality applications”, in Proceedings of Symposium on Integrated Circuits and Systems Design, Rio de Janeiro, 2007, pp . 336-341 .

[5] J .P . Lima, G . Guimarães, G . Dias, J .M . Teixeira, E . Xavier, V . Teichrieb, J . Kelner . “ARCam: an FPGA-based augmented reality framework”, in Proceedings of Symposium on Virtual and Augmented Reality, Petrópolis . Porto Alegre, 2007, pp . 106-115 .

[6] V . Teichrieb, J .M . Teixeira, J .P . Lima, J . Kelner . “Markerless augmented reality based cameras using system-on-chip technology”, in Proceedings of Interservice/Industry Training, Simulation & Education Conference, Orlando, EUA, 2007, pp . 1-12 .

[7] W . Piekarski, R . Smith, G . Wigley, B . Thomas, D . Kearney, “Mobile Hand Tracking Using FPGAs for Low Powered Augmented Reality”, in Proceedings of International Symposium on Wearable Computers, Washington, DC, USA, 2004, pp . 190-191 .

[8] E .J . Toledo, J .J . Martinez, E .J . Garrigos, J .M . Ferrandez, “FPGA Implementation of an Augmented Reality Application for Visually Impaired People”, in Proceedings of International Conference on Field Programmable Logic and Applications, Tampere, Finland, August 2005, pp . 723-724 .

[9] J . Oliveira, A . Printes, R .C .S . Freire, E . Melcher, I .S .S . Silva, “FPGA Architecture for Static Background Subtraction in Real Time”, in Proceedings of Symposium on Integrated Circuits and Systems Design, Ouro Preto, MG, Brazil, 2006, pp . 26-31 .

[10] X . Wang, S .G . Ziavras, “Parallel Direct Solution of Linear Equations on FPGA-Based Machines”, in Proceedings of International Symposium on Parallel and Distributed Processing, Nice, France, 2003, pp . 113 .

Page 53: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

52

Voltar ao sumário

CapCam – um Dispositivo Portátil e Vestível para Aplicações de RA para Suporte à Inspeção Termal de Equipamentos

Aline Silveira Cavalcanti, Felipe Borba Breyer, João Marcelo Teixeira, Veronica Teichrieb, Judith Kelner Grupo de Pesquisa em Realidade Virtual e Multimídia - Universidade Federal de Pernambuco

{aline}, {felipe}, {jmxnt}, {vt}, {jk}@gprt.ufpe.br

Abstract This paper presents the conception of a portable

and wearable device, which is able to aggregate

relevant information to the task of thermal inspection

on industrial equipments. An ergonomics study was

performed in order to find the best shape to the

prototype, and as a result it was created the CapCam,

a helmet with two integrated cameras, an image sensor

and a thermal one. This work exposes the methodology

and the results of the tests done with the prototype, and

after a detailed analysis of positive and negative

aspects, CapCam was considered effective on the

execution of the proposed task.

Resumo

Este artigo apresenta a concepção de um

dispositivo portátil e vestível, que cumpra o objetivo de

agregar informações relevantes à tarefa de inspeção

termal de equipamentos em indústrias. Um estudo de

ergonomia foi realizado com o objetivo de encontrar a

melhor forma para o protótipo, e como resultado

criou-se o CapCam, um capacete com duas câmeras

integradas, um sensor de imagem e outro termal. Este

trabalho expõe a metodologia e os resultados dos

testes realizados com o protótipo, e após a análise

detalhada dos aspectos positivos e negativos, o

CapCam foi considerado eficaz na execução da tarefa

para a qual foi proposto.

1. Introdução

A manutenção constante de equipamentos é uma prática comum que evita imprevistos para os usuários e custos desnecessários de produção. Existem várias maneiras de identificação prévia de falhas em um sistema, sendo a inspeção termal um dos focos desse trabalho. Essa atividade procura identificar aquecimento excessivo ou funcionamento de

equipamentos em faixas de temperatura diferentes do previsto, e é comumente realizada em empresas de transmissão e distribuição de energia elétrica [1]. Normalmente, a detecção de alguma anormalidade no padrão de temperatura resulta na realização da manutenção preventiva, ou seja, a falha no equipamento é corrigida por um operador antes que problemas críticos ocorram.

Empresas de médio e pequeno porte muitas vezes têm dificuldade de acesso a tecnologias para inspeção de equipamentos, e em boa parte dos casos a tarefa é realizada por um funcionário, que observa a máquina em atividade e analisa sinais emitidos por ela, tais como ruídos, velocidade de trabalho e temperatura. Todavia, existe uma freqüente necessidade de informações mais precisas do que o inspetor é capaz de detectar sem a ajuda de equipamentos especializados, como por exemplo, a temperatura das máquinas, foco do nosso trabalho. O processo de inspeção seria otimizado se o inspetor pudesse usar um dispositivo capaz de fornecer essas informações em tempo real. É essa a proposta do sistema mivaTherm, através do uso de realidade aumentada (RA) [2].

RA é uma área de pesquisa computacional que trata da integração de elementos virtuais gerados por computador com o mundo real, realizando a composição de um ambiente misto, que visa aprimorar a percepção sensorial dos usuários [3].

O projeto mivaTherm faz uso das propriedades da RA para agregar ao ambiente real informações relevantes à execução da tarefa de inspeção termal de equipamentos. Na Figura 1, pode-se visualizar a interface da aplicação móvel, cuja captura de imagens se dá através de uma webcam e uma câmera de visão termal.

Page 54: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

53

Voltar ao sumário

Figura 1. Interface do software MivaTherm, que possui recursos de (A) imageamento térmico e (B) detecção de componentes.

A proposta é tornar a tecnologia de imageamento

termal leve e portátil, e que possa ser “vestida” pelo funcionário responsável pela inspeção, permitindo assim sua aplicação em atividades de campo e locais de difícil acesso. A solução encontrada foi o CapCam, um capacete com câmeras integradas, que funciona como uma expansão do miva, uma plataforma de processamento móvel em forma de cinturão, acoplada a um Head Mounted Display (HMD) [2].

Na seqüência, a seção 2 compreende a definição dos pré-requisitos do projeto, além de relatar as etapas de pesquisa, análise e síntese [4] que fizeram parte do processo de criação do CapCam. Na seção 3, é detalhada a forma final do protótipo, bem como o material utilizado para confeccioná-lo e suas características de fixação, posicionamento e proteção dos componentes. A seção 4 demonstra os métodos utilizados para avaliar o protótipo em fatores como mobilidade do usuário, sustentação, conforto e tempo gasto em sua configuração. Os resultados dos testes aplicados são expostos e analisados na seção 5. Por fim, a seção 6 apresenta as conclusões sobre o

protótipo do CapCam decorrentes dos testes realizados. São enumeradas as características satisfatórias do projeto e as que ainda precisam de melhorias. São mostrados, ainda, alguns pontos a serem observados em trabalhos futuros e propostas de análises mais detalhadas do trabalho realizado.

2. Processo criativo

Anteriormente à definição da forma do CapCam, mostrou-se necessário conhecer os dispositivos integrados num mesmo artefato que permitiriam a execução do software mivaTherm. São eles: uma webcam Microsoft VX-6000 e uma câmera de visão termal modelo Irisys 1011. O principal requisito do projeto é a adaptabilidade a esses dispositivos da forma mais prática, ergonômica e funcionalmente possível.

A primeira etapa da busca por soluções constituiu na verificação dos componentes de cada uma das câmeras. Para isso, elas foram desmontadas e tiveram suas lentes e circuitos medidos. Os dados obtidos determinaram requisitos ergonômicos e dimensionais do projeto, que serão apresentados a seguir.

O formato de capacete foi escolhido devido à necessidade de proteção, tanto do crânio do usuário como dos componentes eletrônicos do CapCam. Além disso, o usuário deve estar com as mãos livres para corrigir eventuais falhas no equipamento inspecionado, o que elimina a possibilidade de posicionamento das câmeras no braço ou em uma das mãos.

Tendo definido a forma básica do CapCam, a etapa seguinte foi a pesquisa e análise de produtos existentes no mercado, com características iguais ou que se aproximassem da idéia proposta. Devido ao fato do CapCam ser um projeto inovador, não foi possível encontrar nenhum capacete com câmera de visão termal acoplada. Foram registrados, porém, outros capacetes com dispositivos (fossem eles câmeras ou não) integrados, tais como capacetes para ciclistas, capacetes para saltos de pára-quedas, bonés com câmeras ocultas e capacetes de mineração, como mostra a Figura 2.

A

B

Page 55: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

54

Voltar ao sumário

Figura 2. Capacetes com propriedades

similares ao Capcam Algumas opções foram consideradas, mas não se

mostraram eficazes: o posicionamento lateral, seguindo a linha horizontal dos olhos, com as duas lentes alinhadas verticalmente, concentraria todo o peso em um dos lados da cabeça do usuário, causando incômodo e desequilíbrio para o mesmo. Por outro lado, a disposição de uma lente em cada lado da cabeça, estando as duas alinhadas horizontalmente com os olhos, não resolve o problema do peso por causa da diferença entre as duas (a webcam pesa 12g, enquanto a câmera de visão termal pesa 112g, cerca de 9 vezes mais), e acrescenta ainda a dificuldade em sobrepor as imagens.

Tendo detectado esses problemas, a solução formal teve sua inspiração nos capacetes de mineradores. Sua característica principal é a protuberância na parte da frente, para comportar as lentes, de maneira semelhante à que um capacete de minerador comporta sua lanterna. Optou-se por posicioná-las alinhadas verticalmente, na parte da frente do capacete, com a mínima distância possível entre as duas. Essa disposição frontal se mostrou a mais satisfatória tanto em termos de alinhamento das lentes como para a distribuição de peso na cabeça do usuário.

Na organização dos dispositivos dentro do CapCam, um requisito ergonômico do projeto foi observado: a distribuição do peso, tanto dos componentes como do próprio capacete, na cabeça do usuário, deveria causar o mínimo de desconforto possível. Para que o equilíbrio fosse mantido, a localização das câmeras foi dividida entre a parte anterior, com as lentes alinhadas

verticalmente, e a parte posterior interna, que abrigou seus circuitos de controle. A frente do capacete teve maior concentração de peso, e tal fato seria inevitável, já que as duas lentes das câmeras pesam cerca de 4 vezes mais que os demais componentes.

A conectividade entre o CapCam e o miva (plataforma móvel mencionada anteriormente) [2] se dá através de 2 cabos, responsáveis pela transmissão da alimentação e dos dados necessários ao funcionamento da webcam e da câmera de visão termal. Ambos são conectados nas entradas correspondentes do cinto. A localização da saída dos cabos, através de uma abertura na parte posterior do capacete, foi planejada de modo a não causar incômodo ao usuário ou interferir na realização da tarefa, já que, no cinturão do miva, essas entradas também se localizam na parte posterior.

Desde o início do projeto, notou-se a necessidade de um sistema para prender o CapCam à cabeça, para garantir ao usuário mobilidade, sustentação e fixação das câmeras. Para isso, foi utilizado um boné comum de tecido e espuma, que teve sua aba frontal removida, para não causar interferência visual ou dificultar o posicionamento do HMD. Essa estrutura interna garante maior firmeza para a cabeça, já que o diâmetro de 68,5cm do capacete é consideravelmente maior que o diâmetro médio da cabeça humana, de 57cm [5], além de protegê-la do contato direto com os componentes eletrônicos e câmeras. A principal referência para o modo de prender o boné à cabeça foi baseada nos capacetes de ciclismo e hipismo. Praticantes desses esportes necessitam que o capacete esteja bem preso à cabeça, e isso se dá por um sistema de correias que passam pela frente e por trás das orelhas, e se fecham embaixo do queixo. Dessa forma, tanto a parte posterior como as laterais da cabeça ficam seguras.

3. Definição do protótipo

Todos os requisitos acima descritos foram observados durante a construção do protótipo do CapCam, e como conseqüência o capacete foi moldado em fibra de vidro e resina de poliéster. Os principais motivos da escolha desses materiais foram suas propriedades de leveza e resistência. Usada em objetos de mobiliário e na indústria automobilística, a fibra de vidro, aliada à resina, é facilmente moldável a diversas formas e apresenta alta resistência a impactos, o que é interessante para o contexto no qual o CapCam será utilizado.

A Figura 3 detalha a forma do capacete, cujo diâmetro é de 68,5cm. A face frontal apresenta um orifício para encaixe da câmera de visão termal e um orifício para encaixe da webcam. A parte posterior possui uma abertura para passagem dos cabos de

Page 56: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

55

Voltar ao sumário

conexão com o miva. Na parte interna há ainda dois parafusos de 20mm de comprimento e 2mm de diâmetro, usados para prender os circuitos das câmeras ao capacete e 8 botões de pressão, nos quais é afixado o boné (vista interna).

Figura 3. Vistas (a) frontal, (b) lateral, (c)

posterior e (d) interna do CapCam Para proteção tanto dos circuitos das câmeras como

da cabeça do usuário, foram adicionados dois segmentos de espuma de poliuretano: um entre as placas e o capacete, para evitar o contato direto entre os dois, e outro, mais fino, entre as placas e a estrutura do boné, que fica em contato com a cabeça do usuário (Figura 4). O uso desse tipo de espuma se deve à sua resistência térmica, característica que impediria a passagem de calor para a cabeça do usuário em caso de aquecimento dos circuitos em funcionamento.

Figura 4. CapCam com (a) as câmeras e circuitos de controle instalados e (b) a

proteção de espuma entre as placas e a estrutura do boné

O sistema de fixação do CapCam à cabeça se dá

através de quatro tiras elásticas com 3cm de largura, que partem das laterais da cabeça, na altura das

orelhas, e são presas uma à outra, duas a duas, com botões de pressão iguais aos utilizados para prender o boné ao capacete. Esses botões mostraram ser uma alternativa segura e confortável ergonomicamente, por conta de seu tamanho reduzido, ao contrário de fivelas e outros tipos de prendedores que também foram considerados como alternativa. As tiras elásticas são reguláveis em cinco posições diferentes, adaptando-se, assim, a vários tamanhos de cabeça diferentes (Figura 5).

Figura 5. (a) Estrutura do boné presa ao

CapCam; (b) sistema de fixação do CapCam à cabeça do usuário

4. Metodologia de testes

Cinco fatores foram observados durante a avaliação do protótipo do CapCam:

• o tempo gasto para vesti-lo e configurá-lo para o uso;

• a mobilidade do usuário com o capacete e a fixação à cabeça;

• a adaptabilidade do CapCam a usuários com diferentes diâmetros cranianos;

• o nível de incômodo provocado no usuário; • a fadiga gerada pelo uso contínuo do protótipo. A variável do tempo gasto para vestir e configurar o

CapCam foi considerada devido à necessidade de verificar o impacto da adição dessa tarefa às atividades do funcionário responsável pelas inspeções, enquanto a avaliação de sua mobilidade foi analisada para garantir que a execução das atividades regulares à sua função não fossem prejudicadas pela presença do novo periférico. A avaliação da adaptabilidade do CapCam às diferentes dimensões cranianas dos futuros usuários mostrou-se necessária devido ao requisito do projeto de design universal, ou seja, por não ser possível determinar a especificação exata para uma variável tal como o diâmetro craniano do usuário. Como parâmetro inicial, foi tomada como medida a média antropométrica de 56cm para homens de 1,85m e 54,6cm para mulheres de 1,61m, segundo Neufert et al. [5]. Deve-se considerar ainda o fator subjetivo do nível de incômodo provocado no usuário, que sofre

Page 57: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

56

Voltar ao sumário

influência direta desta adaptação. Por fim, a fadiga gerada pelo uso contínuo do CapCam foi investigada devido à necessidade de estimarmos qual a média de tempo gasta por uma pessoa usando o sistema e a verificação de possíveis danos à musculatura da região do pescoço dada a carga extra imposta pelo protótipo.

Para abarcar estas cinco variáveis, dois tipos de testes foram realizados com usuários. O primeiro teste foi responsável pela avaliação do tempo de configuração, mobilidade e adaptabilidade, enquanto o segundo pelo conforto e fadiga. O método escolhido para o primeiro teste foi a observação da análise da tarefa, que consistiu em vestir o protótipo do CapCam, configurá-lo corretamente e realizar movimentos variados em todas as direções com a cabeça. O segundo método selecionado foi o questionário, por permitir o levantamento de dados quantitativos para a avaliação do conforto e fadiga e manter o anonimato do voluntário.

O procedimento do teste de análise da tarefa constituiu numa etapa de treinamento onde o voluntário era apresentado ao projeto, incluindo explicações sobre seu propósito e funcionamento, e orientado por especialistas quanto à configuração adequada do equipamento. Esta etapa foi inserida de acordo com o cenário prescrito inicialmente no projeto, onde novos usuários do sistema de inspeção industrial deveriam estar sujeitos a um treinamento antes de operar o equipamento.

Em um segundo momento, o usuário era auxiliado na disposição do conjunto composto pela plataforma miva juntamente com o HMD, possibilitando os devidos ajustes e a investigação dos conectores e demais módulos do computador vestível. É importante salientar que o teste elaborado visava avaliar aspectos relacionados apenas ao CapCam como um periférico independente da plataforma sobre a qual ele funciona. Desta forma, foi necessário que o cinturão do miva e o HMD já estivessem devidamente posicionados e configurados pelo usuário (Figura 6).

Na terceira etapa do teste, o usuário foi observado realizando a tarefa de instalar o CapCam ao mesmo tempo em que era encorajado a “pensar alto” pelos especialistas. Dois avaliadores acompanharam os procedimentos, dividindo as atividades de registrar o tempo gasto a cada tentativa do usuário, enquanto outro avaliador registrava as considerações de cada indivíduo. Este procedimento foi repetido três vezes com cada voluntário para avaliar o impacto que a familiaridade com o dispositivo exerce sobre o tempo gasto na realização da tarefa.

Figura 6. (a) Usuário equipado para utilizar o

CapCam, vestindo, além do capacete, o cinturão do miva e o HMD; (b) detalhe da

cabeça – o CapCam não interfere no HMD; (c) os cabos de conexão ficam posicionados por

trás do usuário Na etapa final, o voluntário era orientado a fazer

diferentes movimentos com a cabeça em todas as direções (para frente, para trás e para os lados), como também variar a intensidade dos gestos, desde movimentos suaves a bruscos. Os indivíduos ainda deveriam caminhar e tentar alcançar locais de difícil acesso, simulando uma inspeção de equipamentos usando o capacete. Mediu-se a alteração de posição do capacete na cabeça e o nível de intensidade de movimento que ele é capaz de suportar mantendo a sustentação. Como parâmetro de controle do tempo gasto no posicionamento e configuração do CapCam, a tarefa foi realizada por pesquisadores envolvidos no projeto, que já possuíam familiaridade com o protótipo. O propósito desta medição foi averiguar o tempo gasto por usuários experientes, considerado inicialmente como ideal, para comparação com usuários novatos.

O segundo método aplicado foi um questionário

quantitativo de diferencial semântico, sobre o conforto ao usar o CapCam, a segurança em movimentos leves e em movimentos bruscos, em escala de 1 a 5, sendo 1 totalmente desconfortável/inseguro e 5 totalmente confortável/seguro. O questionário era entregue aos candidatos e estes eram informados que não deveriam produzir nenhum tipo de identificação na ficha de

Page 58: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

57

Voltar ao sumário

respostas, excluindo possíveis influências nas respostas devido à presença dos avaliadores.

A escolha dos indivíduos para a realização dos testes foi feita buscando atingir a máxima compatibilidade com os usuários reais (inspetores de equipamentos em indústrias). Os indivíduos deveriam ser maiores de 18 anos, de ambos os sexos, possuir nível de escolaridade mínimo de 2º grau completo e não possuir conhecimento prévio do projeto. Os resultados obtidos serão apresentados e analisados na seção seguinte.

5. Resultados

O primeiro teste foi realizado com 10 indivíduos. A Tabela 1 mostra a otimização do tempo gasto no posicionamento e configuração do CapCam. Os indivíduos receberam instruções rápidas e realizaram a tarefa de vestir o CapCam, estando já paramentados com o cinturão do miva e o HMD.

Tabela 1. Tempo gasto para posicionar o

CapCam

O tempo médio geral de preparação do capacete foi

de 56,88 segundos, sendo a média de 69,75 segundos na primeira tentativa e de 41,24 segundos na última, comprovando que o tempo de preparação diminui com a prática constante. Observou-se também que o conhecimento prévio do projeto foi irrelevante nos resultados, já que alguns dos indivíduos analisados conseguiram realizar a tarefa em menos tempo que os pesquisadores envolvidos no projeto.

Tal diferença de tempo deve-se ao fato dos especialistas terem se preocupado com a fixação total do capacete à cabeça, prendendo as presilhas em todos os pontos de contato, ao contrário dos indivíduos testados, que apenas fixaram o capacete superficialmente. Os especialistas também tomaram um cuidado especial com o equipamento, observando detalhes como o posicionamento correto dos cabos de

conexão entre o CapCam e o miva e, conseqüentemente, realizando as atividades de forma mais lenta.

Em seguida, foi realizado um teste mais detalhado com 4 indivíduos, considerando a diferença do diâmetro da cabeça deles. Tal tarefa consistiu em posicionar corretamente o CapCam na cabeça e simular uma inspeção de equipamentos, na qual os indivíduos caminharam, moveram a cabeça levemente em diferentes direções, tentaram alcançar locais de difícil acesso e, por último, fizeram movimentos bruscos com a cabeça, para testar a sustentação do capacete. A média do diâmetro craniano dos indivíduos testados se enquadrou na média antropométrica segundo Neufert et al. [5]. O teste durou cerca de 10 minutos, e durante esse tempo os indivíduos analisaram o nível de incômodo causado pelo peso e posicionamento dos componentes dentro do CapCam e pela fivela de fixação. A Tabela 2 mostra os resultados obtidos com o questionário aplicado.

Tabela 2. Resultados do questionário sobre

segurança e conforto do CapCam

Conforme mostrado na tabela anterior, a maioria

dos usuários considerou o CapCam seguro para realização de movimentos leves. Nenhum dos indivíduos questionados considerou o capacete desconfortável a ponto de inviabilizar seu uso. Os indivíduos relataram leve desconforto causado pela fivela de fixação, que prende o capacete à cabeça através do queixo. O incômodo causado pela posição dos componentes dentro do CapCam foi apenas o da concentração de peso na parte da frente, e os usuários não sentiram nenhum tipo de contato dos circuitos de controle ou das lentes das câmeras com o crânio. Ao fazer movimentos de projeção da cabeça para frente e para trás, os indivíduos freqüentemente sentiam o capacete escorregar em direção à nuca, aumentando a sensação de insegurança. A média quantitativa dos resultados de segurança em movimentos leves foi de 4,0. O grau de conforto experimentado pelos usuários

Page 59: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

58

Voltar ao sumário

teve média de 3,25, e ambos os resultados foram considerados satisfatórios, considerando a escala de 1 a 5. Já a segurança em movimentos bruscos atingiu média de 2,0, revelando a necessidade de ajustes no protótipo. Os testes expuseram algumas falhas no sistema de fixação do capacete, que serão analisadas detalhadamente na próxima seção.

6. Conclusão e trabalhos futuros

Este artigo mostrou o processo de criação de um acessório utilizado em uma aplicação de RA, o CapCam. Através de sua utilização, é possível capturar imagens com uma webcam e informação termal do ambiente em que o usuário se encontra. Um estudo de ergonomia foi realizado com o objetivo de encontrar a melhor forma para o protótipo, a qual proporcionasse menos desconforto e mais facilidade na realização da tarefa.

Os resultados dos testes realizados com o CapCam revelaram quais os pontos satisfatórios do projeto e aqueles que ainda precisam de ajustes. Em termos gerais, o protótipo atingiu seu objetivo de agregar informações relevantes à tarefa de inspeção termal de equipamentos, através de suas duas câmeras.

A solução formal encontrada se mostrou eficiente, com a colocação da webcam e da câmera de visão termal na parte frontal do capacete. A localização dos circuitos de controle na parte posterior e presos por parafusos e porcas também não apresentou problemas. Havia receio de que a cabeça dos usuários ficasse muito próxima dos parafusos, mas a proteção de espuma entre os circuitos e a estrutura do boné (parte interna) foi suficiente para que os componentes não causassem nenhum desconforto. O sistema de fixação dos circuitos de controle funcionou corretamente. Não foi observada nenhuma movimentação acidental de tais componentes, e a espuma colocada entre as placas e a estrutura de fibra de vidro do CapCam colaborou para que os circuitos internos permanecessem imóveis.

O peso dos componentes, reduzido ao mínimo possível dados os requisitos do projeto, foi considerado aceitável pelos indivíduos que testaram o protótipo, apesar de provocar incômodo. A fibra de vidro, material de confecção do CapCam, se mostrou leve e resistente. O diâmetro do capacete comportou satisfatoriamente várias cabeças de diferentes tamanhos e proporções, comprovando que foi válida a preocupação em tornar o CapCam o mais versátil possível.

A usabilidade do protótipo é outro ponto positivo. A localização da saída dos cabos de conexão, através de um orifício na parte posterior do capacete torna prático o ato de conectar o CapCam ao miva (ver Figura 5), além de não oferecer incômodo ao usuário, já que os

cabos ficam paralelos às costas do indivíduo. A chave que liga e desliga o CapCam, localizada na parte posterior direita do capacete, é de fácil acesso à mão do usuário, e ao mesmo tempo difícil de ser atingida acidentalmente durante o uso.

Durante os testes, foram observados alguns pontos no projeto que ainda precisam de ajustes. O principal problema ocorreu com o sistema de fixação do CapCam à cabeça. A correia elástica utilizada não teve resistência suficiente, apesar dos 30mm de largura, para suportar os movimentos realizados pelos usuários com a cabeça, principalmente os mais bruscos. Além disso, os usuários relataram ter sentido incômodo na parte que fica em contato com o maxilar, e alguns chegaram a sugerir que a correia fosse mais estreita e com elástico mais resistente.

O modo de prender a correia também não foi eficiente. Os botões de pressão, a princípio considerados a melhor opção por conta de seu tamanho reduzido, se mostraram pouco práticos, levando os indivíduos ao mau uso do artefato. Um ponto que dificulta bastante o ato de prender os botões é o fato de o usuário não visualizar o que está fazendo, e depender exclusivamente do tato para realizar a tarefa corretamente. Por conta disso, ocorreram algumas situações imprevistas, tais como correias deslocadas e torcidas, diminuindo a segurança na fixação, botões que não eram presos corretamente e dificuldade para encontrar o melhor ajuste. Outro ponto que não funcionou foi o modo de prender a estrutura do boné ao capacete, através de botões de pressão iguais aos da correia. Os testes mostraram que eles não são resistentes a impacto, e quando o indivíduo prendia a correia num dos ajustes mais apertados, a tensão provocada levava os botões a se soltarem, e apesar de a estrutura não se soltar completamente de capacete, tal fato aumentava a sensação de insegurança por parte do usuário.

Tendo observado as características do protótipo e o que ainda pode ser melhorado, são propostas algumas melhorias em forma de trabalhos futuros. A principal prioridade é encontrar uma solução mais eficiente para o sistema de fixação do CapCam à cabeça. Será necessária uma pesquisa aprofundada de materiais – tanto os existentes no mercado como os que estão em uso em outros equipamentos - para esse propósito, seguida da geração de alternativas e um novo projeto de sistema de fixação. Deve-se realizar uma nova série de testes, depois de substituídos os elementos em uso atualmente no CapCam. O mesmo processo será aplicado na busca por uma solução mais satisfatória para a união entre a estrutura do boné e o capacete de fibra de vidro.

É proposta também uma nova fase de testes em condições diferentes das relatadas neste artigo. Se o

Page 60: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

59

Voltar ao sumário

protótipo for considerado apto, existe o propósito de realizar os testes em campo, com o software mivaTherm sendo executado através do miva, dentro de uma indústria em funcionamento, com possíveis usuários reais do CapCam, em quantidade maior do que a que foi delimitada nesta primeira fase. Tais condições possibilitariam a análise de aspectos que ainda não foram contemplados, tais como o aquecimento dos circuitos em uso e a influência do protótipo na usabilidade do software.

7. Agradecimentos

Gostaríamos de agradecer ao professor Cloves Parísio, do Departamento de Design da UFPE, pela ajuda na construção do protótipo do CapCam. Obrigado também aos voluntários que colaboraram com os testes e tornaram possível a realização do trabalho.

8. Referências

[1] CHESF, “Relatório de Administração e Demonstrativo Contáveis”, 2006. Disponível em http://www.chesf.gov.br

[2] TEIXEIRA, João Marcelo; SILVA, Daliton; MOURA, Guilherme; COSTA, Luiz Henrique; TEICHRIEB, Veronica; KELNER, Judith. miva: constructing a wearable platform prototype. In: Symposium on Virtual and Augmented Reality, 2007, Petrópolis. Porto Alegre: SBC, 2007. p. 68-76.

[3] AZUMA, Ronald T. A Survey of Augmented Reality. Presence: Teleoperators and Virtual Environments, 6(4): 355-385, 1997.

[4] LÖBACH, B. Design industrial bases para a configuração dos produtos. São Paulo. Edgar Blucher. 2001.

[5] NEUFERT, Ernst, NEUFERT, Peter, Arte Arte de Proyectar en Arquitectura. Barcelona. Gustavo Gili GG. 2004

Page 61: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

60

Voltar ao sumário

Realidade Aumentada sem Marcadores Baseada na Amostragem de Pontos em Arestas

Francisco Simões1, João Paulo Lima1, Veronica Teichrieb1, Judith Kelner1, Ismael dos Santos2 1GRVM - CIn - UFPE - Recife-PE

2CENPES - PETROBRAS - Rio de Janeiro-RJ e-mail: {fpms, jpsml, vt, jk}@cin.ufpe.br, [email protected]

Resumo

Técnicas de realidade aumentada sem marcadores dependem da recuperação de informações da câmera virtual a cada quadro de uma seqüência para corretamente associar informações 3D às cenas. Este artigo apresenta uma técnica que, a partir de amostragem de pontos em arestas de um modelo 3D previamente gerado mostra-se capaz de recuperar as informações de câmera. A técnica se baseia no algoritmo Moving Edges para encontrar as correspondências entre os pontos amostrados no objeto virtual e os pontos da imagem real. Foi utilizada também a extração de arestas invisíveis e o minimizador não-linear Levenberg-Marquardt. A técnica apresentada mostrou-se robusta a oclusões parciais, auto-oclusões e mudanças de iluminação. Por ser uma técnica baseada em única hipótese, a mesma não se mostrou estável em movimentações bruscas da câmera e na aproximação de materiais de forte gradiente ao objeto rastreado.

Abstract

Markerless augmented reality techniques depend on

information recovery from the virtual camera in every frame of a sequence to correctly associate 3D information to scenes. This paper presents a technique that from point sampling on edges from 3D previously created model shows to be able to recover information from the camera. This technique is based on the Moving Edges algorithm to find correspondences between sampled points in the virtual object and points of the actual image. It was also used the extraction of invisible edges and a non-linear estimator called Levenberg-Marquardt. The technique proved to be robust to partial occlusions, self-occlusions and changes in lighting. Because it is a technique based on unique hypotheses, it is not very stable in sudden

movements of the camera and when material of strong gradient comes close to the tracking object.

1. Introdução

Aplicações de realidade aumentada sem marcadores (do inglês Markerless Augmented Reality, ou MAR) têm como característica a inserção de elementos virtuais em cenas reais obedecendo a restrições de tempo real [1]. Além disto, estas aplicações não requerem a inserção de elementos artificiais no ambiente, utilizando informações naturalmente presentes nas cenas como linhas [2][3], pontos [4] ou texturas [5][6].

De forma a realizar a correta inserção dos elementos virtuais nas cenas reais os sistemas de realidade aumentada precisam recuperar a cada quadro a posição e orientação da câmera virtual, num processo chamado rastreamento [7].

As técnicas desenvolvidas em MAR podem ser classificadas em dois tipos fundamentais: técnicas baseadas em modelos e técnicas baseadas em estrutura e movimentos (Structure from motion - SfM) [1]. Nas técnicas baseadas em modelos é necessário um conhecimento prévio sobre o mundo real, que é guardado na forma de um modelo 3D utilizado para auxiliar na estimativa da pose da câmera. Nas técnicas SfM, o movimento da câmera ao longo da seqüência de quadros é estimado sem nenhum conhecimento prévio da cena, sendo adquirido durante o rastreamento.

Com relação às técnicas baseadas em modelos, o primeiro grupo desenvolvido foi o das técnicas baseadas em arestas devido à sua simplicidade de funcionamento e baixo custo computacional. Apesar disto, a investigação acerca destas técnicas continua sendo um meio efervescente na comunidade de MAR [8][9][10].

Dentro do contexto de técnicas baseadas em arestas existem dois ramos: as técnicas baseadas em

Page 62: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

61

Voltar ao sumário

amostragem de pontos e as técnicas baseadas na detecção explícita das arestas. Na primeira abordagem, a recuperação dos parâmetros de câmera se dá através da associação entre pontos extraídos das arestas com pontos pertencentes à imagem. Já na segunda a correlação criada se dá entre as arestas completas.

Em [11] são discutidos conceitos básicos acerca das técnicas baseadas em arestas, inclusive com a proposta de elaboração de um arcabouço com base em álgebra de Lie e utilização de estimadores robustos.

Já em [12] é proposta uma abordagem adaptativa baseada na amostragem de pontos que leva em consideração múltiplas hipóteses durante o processo de casamento dos pontos extraídos das arestas, e posterior estimativa de parâmetros da câmera.

Trabalhos como [13] propõem a aplicabilidade de técnicas baseadas em arestas inclusive em dispositivos móveis devido a seu baixo custo computacional.

Este trabalho se propõe a discutir a implementação de uma técnica baseada na amostragem de pontos através da utilização do algoritmo Moving Edges [14] para casamento dos pontos. Também foi utilizado o hardware gráfico para realizar a eliminação de arestas invisíveis de forma a reduzir os erros de casamento responsáveis por falhas de rastreamento.

Na seqüência, a seção 2 discute a técnica implementada neste trabalho com sub-tópicos relativos a cada parte do pipeline enquanto a seção 3 demonstra os resultados obtidos e a seção 4 discute as conclusões e os trabalhos futuros.

2. Descrição da técnica

De forma a obter o rastreamento do objeto 3D na cena real, primeiramente faz-se necessário o conhecimento prévio da pose inicial da câmera virtual (ver seção 2.4 para detalhes sobre a pose da câmera). Esta informação pode ser obtida utilizando marcadores [12], manualmente ou através de inicialização automática [15].

Após realizar a estimativa inicial da pose da câmera é feita a amostragem dos pontos das arestas do modelo 3D previamente construído em coordenadas de mundo. Essa amostragem é feita de forma a deixar os pontos igualmente espaçados para melhorar a qualidade do rastreamento (ver seção 2.1).

Uma vez concluída a amostragem, é necessário realizar a extração das arestas invisíveis de forma a acelerar o processo de estimativa da pose e reduzir a presença de outliers, que são correspondências inexistentes que prejudicam o algoritmo de estimativa dos parâmetros da câmera. A extração das arestas invisíveis é realizada em hardware gráfico para deixar o processo mais rápido e preciso, como pode ser visto na seção 2.2.

Conhecidos os pontos do objeto 3D que são visíveis utilizando a projeção a partir da pose do quadro anterior, é então necessário encontrar os casamentos entre os pontos amostrados no objeto 3D e a imagem da cena rastreada. Este passo é feito utilizando apenas uma hipótese através do algoritmo Moving Edges (ver seção 2.3).

A última etapa da técnica descrita e aplicada neste trabalho tem por objetivo realizar a estimativa dos parâmetros de câmera através da utilização dos casamentos encontrados pelo Moving Edges. Como pode ser visto mais detalhadamente na seção 2.5, esta estimativa se dá através da minimização da distância entre o ponto 3D projetado com a pose atual e o ponto correspondente na imagem. Esta minimização se dá através da utilização de um estimador não linear chamado Levenberg-Marquardt [16].

2.1. Amostragem de pontos

Para realizar a amostragem de forma mais equilibrada, faz-se importante a utilização de um coeficiente de amostragem aplicado na amostragem das arestas projetadas. Este coeficiente é responsável por permitir que a amostragem se dê nas arestas mantendo fixa a quantidade de pontos por unidade de comprimento das arestas projetadas, obedecendo à equação:

qntPontos = tamanhoProj * coefDeAmostragem (1)

Realizada desta forma, a amostragem de pontos se

mostra uniforme, equilibrando a influência das arestas de acordo com seu tamanho projetado. Desta forma, é considerada a real importância dos pontos projetados na imagem e não apenas do modelo 3D virtual. Uma aresta virtual grande pode ter uma projeção de tamanho pequeno, o que implica em menos pontos amostrados, enquanto uma aresta pequena pode ter um grande comprimento, contribuindo com mais pontos para a técnica (ver Figura 1). 2.2. Teste de visibilidade

Nas técnicas de amostragem de pontos, a auto-

oclusão, que ocorre quando parte do objeto oclude partes do próprio objeto, representa um aspecto importante na qualidade do rastreamento. Uma vez que pontos amostrados não possuem correspondentes na imagem do quadro rastreado por serem ocludidos, eles se tornam outliers que irão influenciar negativamente a estimativa da pose.

Page 63: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

62

Voltar ao sumário

Figura 1. Distância de pontos amostrados nas

arestas (x, y) varia de forma a manter a quantidade de pontos proporcional ao

tamanho da aresta projetada (tam, TAM) Existem várias formas de minimizar a influência de

outliers, como a utilização de técnicas estatísticas como o RANSAC (RANdom SAmple Consensus) ou estimadores robustos como o tukey m-estimator [7]. Porém antes de minimizar a influência dos mesmos, a eliminação de arestas invisíveis se mostra fundamental uma vez que já realiza a eliminação de alguns destes outliers antes mesmo do processo de estimativa iniciar.

Como forma de realizar a eliminação dos pontos ocludidos na imagem foi utilizada uma abordagem em hardware gráfico de forma a deixar o processo menos custoso computacionalmente, como proposto em [12].

Figura 2. A aresta 1 é dividida nas arestas 1’ e

2’ devido à auto-oclusão após projeção Para que isto fosse possível foi utilizada a extensão

de OpenGL chamada GL_ARB_OCCLUSION_QUERY de forma a realizar o teste de visibilidade de cada

ponto amostrado na aresta. O algoritmo implementado se comporta de acordo com o pipeline a seguir.

Primeiramente, se faz necessária a projeção de todo o objeto virtual através do uso da pose anterior, uma vez que a mesma pode ser considerada uma boa estimativa para o quadro atual. Após esta projeção é realizada a projeção de cada ponto individualmente para que as queries sejam avaliadas em hardware gráfico e guardem o estado de visibilidade do ponto.

Após esta avaliação de todos os pontos, as arestas são varridas uma a uma e, enquanto os pontos são visíveis, a aresta vai sendo validada. A partir do momento em que algum ponto da aresta não é visível a mesma é considerada concluída e é adicionada à lista de arestas.

Uma vez que a oclusão de parte da aresta não implica necessariamente na invisibilidade de todo o resto da aresta, os pontos seguintes ainda são avaliados e caso sejam visíveis, outra aresta é criada de modo semelhante ao ocorrido inicialmente (ver Figura 2).

Deste modo, uma única aresta pode dar origem a várias arestas de forma a apenas utilizar os pontos visíveis para a estimativa da pose, minimizando assim o problema de auto-oclusão.

2.3. Casamento entre pontos com Moving Edges

Uma vez concluída a fase de eliminação das arestas

invisíveis o sistema está apto a iniciar a fase de casamento. Nesta fase os pontos amostrados no objeto virtual 3D são correlacionados com pontos da imagem de forma a obter uma estimativa para sua posição na cena.

A correlação entre pontos do objeto virtual e pontos da imagem é realizada a partir do algoritmo Moving Edges. Este algoritmo realiza a busca através do pipeline descrito a seguir.

Inicialmente a aresta é projetada na cena utilizando a pose anterior como estimativa e os pontos são amostrados. Após esta projeção o algoritmo Moving Edges realiza uma busca na reta que passa pelo ponto amostrado e é perpendicular à aresta projetada, de forma a encontrar pontos de forte gradiente (ver Figura 3).

Como resultado da busca perpendicular por pontos de forte gradiente, o algoritmo determina o ponto de gradiente alto mais próximo da projeção da aresta como o casamento do ponto virtual a ser utilizado na fase de estimativa da pose.

Page 64: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

63

Voltar ao sumário

Figura 3. A aresta vermelha é projetada e os pontos na cor azul são amostrados. Através

do Moving Edges os pontos laranja são definidos como correspondentes

2.4. Parametrização da pose A pose da câmera virtual é definida em termos dos

parâmetros intrínsecos e extrínsecos da mesma. Enquanto os parâmetros intrínsecos dizem respeito a informações inerentes à câmera como distância focal e tamanho do pixel, os parâmetros extrínsecos definem o movimento da câmera ao longo da seqüência.

Para a técnica descrita neste artigo, foram considerados arranjos em que os parâmetros intrínsecos da câmera são fixos e conhecidos, deixando como problema a ser resolvido a estimativa dos parâmetros extrínsecos a cada quadro.

A matriz de parâmetros intrínsecos é dada por:

(2)

Onde a matriz de calibração da câmera é escrita em

função da distância focal ( ), do ponto principal ( , ) e do skew da câmera .

Já os parâmetros extrínsecos da câmera podem ser definidos como a composição onde representa a matriz de rotação e representa a matriz de translação .

De modo a reduzir o número de variáveis a serem minimizadas (inicialmente doze, sendo nove da rotação e três da translação) foi utilizada na minimização a representação da rotação pela fórmula de Rodrigues [7], em que a mesma é representada por um vetor que define o eixo de rotação e seu módulo representa o ângulo de rotação. Esta abordagem reduz o número de variáveis de doze para seis sem, no entanto, reduzir a precisão ou qualidade da rotação.

Além da representação de Rodrigues ser coerente, sua inversa também é necessária, pois para a geração da matriz de projeção é preciso conhecer a rotação na forma de matriz :

(3) A matriz de projeção é definida a partir do produto

entre os parâmetros intrínsecos e extrínsecos da câmera. 2.5. Estimativa da pose

Através da utilização dos casamentos encontrados através do Moving Edges torna-se possível realizar a estimativa da pose da câmera.

Esta estimativa se dá através da utilização da técnica de minimização não-linear Levenberg-Marquardt utilizando como critério para a minimização o erro associado à distância euclidiana entre a projeção do ponto virtual e o ponto correspondente ao mesmo.

Por tratar-se de uma técnica recursiva, o Levenberg-Marquardt necessita de uma boa estimativa inicial para ser realizado. Ao longo da seqüência, a cada quadro é utilizada a pose do quadro anterior como estimativa inicial para a pose do quadro rastreado.

Como pode ser visto na equação seguinte, o erro de reprojeção minimizado a cada quadro é dado por: (4) Onde P é a matriz de projeção, é o ponto virtual 3D e é o ponto correspondente na imagem. 3. Resultados

Para avaliação da técnica descrita neste trabalho foi realizado o rastreamento de um cubo movimentado sobre uma mesa plana através da utilização das mãos, com uma taxa de aproximadamente 30 quadros por segundo (ver Figura 4). Na medida que o cubo é rastreado um cubo em wireframe (arestas em cor laranja) é renderizado sobre o cubo real.

Figura 4. Cubo rastreado sobre uma mesa atingindo taxa de 30 quadros por segundo Apesar de mostrar-se com uma boa taxa de quadros

por segundo, a técnica sofreu um pouco com movimentos bruscos do objeto devido à sua

Page 65: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

64

Voltar ao sumário

característica de recursividade. Uma vez que a estimativa da próxima pose depende da anterior, quando há um movimento brusco e a pose atual se afasta muito da anterior o registro do objeto 3D com sua projeção obtinha resultados ruins, como pode ser visto na Figura 5.

Figura 5. Seqüência de rastreamento do cubo denotando a falha de registro após movimento

brusco do mesmo Além disto, mesmo não utilizando estimadores

robustos, a técnica se mostrou robusta a oclusões parciais resultantes da manipulação do objeto. A Figura 6 ilustra a corretude do rastreamento quando da oclusão de uma aresta do cubo.

Figura 6. Cubo sendo rastreado mesmo com a

existência de oclusão parcial 4. Conclusões e trabalhos futuros

A técnica de rastreamento foi implementada com êxito e mostrou tanto uma boa taxa de quadros por segundo como robustez a oclusões parciais. Porém, apesar destes resultados a técnica ainda se mostra instável, uma vez que utiliza apenas uma hipótese para o casamento dos pontos das arestas. Como proposto em [12], a utilização de uma abordagem adaptativa através de múltiplas hipóteses deverá permitir um rastreamento mais estável e robusto.

A Figura 7 ilustra o problema da utilização de uma única hipótese. Devido a esta utilização, o alto gradiente proporcionado pelos dedos do usuário faz com que alguns casamentos sejam realizados entre o objeto e os dedos, ocasionando a presença de falsas correspondências.

Figura 7. Confusão do Moving Edges devido

ao alto gradiente proporcionado pela proximidade dos dedos com o cubo

Através da utilização de várias hipóteses problemas como estes são minimizados uma vez que a estimativa se utiliza da ponderação de várias hipóteses para realizar o rastreamento ao invés de utilizar-se apenas do maior gradiente mais próximo.

Outro problema a ser endereçado é o processo de inicialização que atualmente é feito de forma manual, posicionando a câmera numa pose inicial conhecida, impedindo com isso sua utilização em situações não usuais. Alguns trabalhos na literatura já apontam nesta direção de inicialização automática, como em [15]. 5. Agradecimentos

Os autores gostariam de agradecer a todos que de alguma forma contribuíram para este trabalho, sobretudo ao PIBIC/UFPE/CNPq, FINEP e CENPES Petrobras (processo 3662/2006) pelo financiamento da pesquisa. 6. Referências [1] V. Teichrieb et al., “A Survey of Online Monocular Markerless Augmented Reality”, International Journal of Modeling and Simulation for the Petroleum Industry, 2007, vol. 1, no. 1, pp. 1–7. [2] E. Marchand et al., “Robust real-time visual tracking using a 2D-3D model-based approach”, The Proceedings of the Seventh IEEE International Conference on Computer Vision, 1999, pp 262-268. [3] G. Simon and M. Berger, “A two-stage robust statistical method for temporal registration from features of various type”, Sixth International Conference on Computer Vision (ICCV'98), 1998, pp. 261-269. [4] M. Armstrong and A. Zisserman, “Robust object tracking”, Proceedings Asian Conference on Computer Vision, 1995, pp 58-61 [5] L. Vacchetti, V. Lepetit and P. Fua, “Stable Real-Time 3D Tracking Using Online and Offline Information”, IEEE Transactions on Pattern Analysis and Machine Intelligence, 2004, vol. 26 no. 10, pp. 1385-1391.

Page 66: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

65

Voltar ao sumário

[6] A. Comport et al., “Real-time markerless tracking for augmented reality: the virtual visual servoing framework”, IEEE TVCG, 2006, vol. 12, pp. 615-628. [7] V. Lepetit and P. Fua, “Monocular Model-Based 3D Tracking of Rigid Objects: a Survey”, Foundations and Trends in Computer Graphics and Vision, 2004, vol. 1, no. 1, pp. 1-89. [8] P. Mitchell et al., “GPU Accelerated Real-Time 3D Tracking for Humanoid Locomotion and Stair Climbing”, Proceedings of the 2007 IEEE/RSJ International Conference on Intelligent Robots and Systems, 2007, pp. 463-469. [9] L. Vachetti, V. Lepetit and P.Fua, “Combining Edge and Texture Information for Real-Time Accurate 3D Camera Tracking”, Proceedings of the Third IEEE/ACM International Symposium on Mixed and Augmented Reality, 2004, pp. 48-57. [10] J. Barandiarán and D. Borro, “Edge-Based Markerless 3D Tracking of Rigid Objects”, 17th International Conference on Artificial Reality and Telexistence, 2007. [11] T. Drummond and R. Cipolla, “Real-Time Visual Tracking of Complex Structures”, IEEE Transactions on Patterns Analisys and Machine Intelligence, 2002, Vol. 24, No. 27, pp. 932-926. [12] H. Wuest, F. Vial and D. Stricker, “Adaptive Line Tracking with Multiple Hypotheses for Augmented Reality”, Proceedings of the Fourth IEEE and ACM International Symposium on Mixed and Augmented Reality (ISMAR2005), 2005, pp. 62-69. [13] G. Reitmayr and T. W. Drummond, “Going out: Robust Model-based Tracking for Outdoor Augmented Reality”, Fifth IEEE and ACM International Symposium on Mixed and Augmented Reality (ISMAR'06), 2006, pp.109-118. [14] P. Bouthemy, “A maximum likelihood framework for determining moving edges”. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1989, vol. 11, no. 5, pp 499-511. [15] G. Blasko and P. Fua, “Real-Time 3D Object Recognition for Automatic Tracker Initialization”, International Symposium on Augmented Reality, Nova York, NY, 2001.

[16] K. Levenberg, “A Method for the Solution of Certain Non-linear Problems in Least Squares”, Quarterly of Applied Mathematics, 1944, vol. 2, no. 2, pp. 164-168.

Page 67: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

66

Voltar ao sumário

Page 68: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

67

Voltar ao sumário

Page 69: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

68

Voltar ao sumário

Page 70: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

69

Voltar ao sumário

Page 71: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

70

Voltar ao sumário

Page 72: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

71

Voltar ao sumário

Page 73: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

72

Voltar ao sumário

Page 74: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

73

Voltar ao sumário

Page 75: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

74

Voltar ao sumário

Realidade Aumentada em Dispositivos Móveis

Marlon Luz †, Luís Fernando Fortes Garcia †‡, Gilberto Fernandes Marchioro † † Universidade Luterana do Brasil (ULBRA) – Curso de Ciência da Computação

‡ Faculdade Dom Bosco – Curso de Sistemas de Informação

[email protected], [email protected], [email protected]

Resumo. Este artigo apresenta o desenvolvimento de um

jogo de computador baseado na tecnologia de

Realidade Aumentada sobre dispositivos móveis. Com

o objetivo de ressaltar as características e o interesse

da Realidade Aumentada, inicialmente é realizada a

análise desta nova tecnologia, comparando-a com a

Realidade Virtual, e apresentada a sua utilidade

prática. No que se refere à mobilidade, este projeto

concentrou-se em explorar a Realidade Aumentada

sobre dispositivos moveis, comprovando que é viável

mesmo com as restrições impostas por estes

dispositivos em nível de poder de processamento e

interface com o usuário. Finalmente é apresentado o

software desenvolvido, onde suplementos virtuais são

adicionados ao vídeo capturado pela câmera do

dispositivo, reagindo aos movimentos físicos

realizados pelo usuário.

1. Introdução

A realidade que observamos através do sentido da visão pode ser enriquecida com suplementos virtuais no intuito de fornecer mais informações do que podemos observar na realidade. Saber extrair informações implícitas do mundo, processá-las e repassar ao usuário em tempo real abre uma gama enorme de aplicações interessantes em diversas ares do conhecimento humano.

Neste contexto, a Realidade Aumentada (RA) caracteriza-se como a adição, em tempo real, de suplementos virtuais em um ambiente real [1]. A adição desses suplementos se baseada na captura de vídeo do próprio ambiente real, ou seja, com uma câmera é possível filmar o ambiente ao redor, processar as informações pertinentes e adicionar elementos na imagem para então retransmiti-la. Além da imagem, a RA pode ser usada em outros meios, como por exemplo o áudio [2].

Na Realidade Virtual (RV) um ser humano é imerso em um ambiente virtual, completamente controlado por um sistema computadorizado. Sendo este ambiente todo programado, muitas das características reais presentes na natureza são de difícil modelagem, como a gravidade, a interação entre objetos, o reflexo, etc. Tenta-se neste mundo virtual modelar sentidos que existem no mundo real como a visão e a audição, assim como outros de difícil modelagem, como tato, olfato e o paladar. Ao contrário da RV, a RA tem o ambiente real como predominante e, portanto, não necessita o controle do comportamento dos objetos, mas por outro lado, necessita o reconhecimento de parâmetros e componentes do ambiente real [3]. Na RA os suplementos virtuais devem ser capazes de responder às alterações adversas do ambiente real para que possam parecer realmente parte deste.

Como principal resposta aos acontecimentos do mundo, e para fazer a coexistência de suplementos virtuais num ambiente real, o sistema de RA deve ser capaz de detectar movimentos da câmera para conseguir reposicionar no espaço os suplementos virtuais [4].

Contudo, para um melhor uso da RA é necessário que o usuário possa se mover livremente, visualizando o ambiente real com os suplementos proporcionados pela RA. Para isso é necessário que o usuário carregue consigo um dispositivo de captura de vídeo, como uma câmera, um dispositivo capaz de fazer processamento de imagens, e um dispositivo capaz de exibir a imagem capturada, processada e com os suplementos da RA.

O equipamento ideal para esta liberdade de movimentos é o Head Mounted Display (HMD) junto com algum processador e dispositivos de navegabilidade como o Global Positioning System

(GPS), formando o que poderia ser entendido como um capacete capaz de capturar imagens, processá-las e mostrá-las em tempo real para o usuário [5]. O capacete com o aparato tecnológico citado apresenta custo elevado e atualmente ainda de restrita utilização.

Page 76: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

75

Voltar ao sumário

2

Por outro lado, alguns aparelhos celulares com câmera são dispositivos capazes de suportar um sistema baseado em RA pelo fato de terem bom poder de processamento, para um dispositivo com características limitadas como memória, tela e energia. Por exemplo, aparelhos como o Nokia 6120 Classic [6] possuem processador ARM 369Mhz e câmera de 2 Mega Pixels, sendo estas características adaptadas para certo processamento das imagens em tempo real.

O software de RA desenvolvido neste projeto direcionou-se a aparelhos celulares e PDAs utilizando a filmadora do próprio dispositivo para capturar o ambiente real e utilizando também o display do próprio dispositivo para reproduzir o ambiente real com os suplementos virtuais adicionados.

2. Realidade Aumentada

A realidade aumentada integra informação virtual com o ambiente real [3]. Através de um vídeo do ambiente real se extrai informações de uma imagem, como: movimento, distâncias e objetos. Com essas informações podemos adicionar suplementos virtuais ao vídeo, que são capazes de interagir e reagir com objetos do mundo real ou com os movimentos do usuário. O desafio atual principal é realizar o processamento necessário e a adição dos suplementos virtuais em tempo real.

A RA vem sendo utilizada no entretenimento, no lazer, na educação e na medicina. Em áreas como o entretenimento, o lazer e a educação é muito comum usar a técnica de Chroma key, onde o fundo de uma imagem é eliminado isolando personagens e combinado estes com outra imagem de fundo. Filmes e previsões do tempo nos telejornais são exemplos que utilizam esta técnica [8].

Imagens transmitidas ao vivo por emissoras de televisão utilizam a RA quando, por exemplo, em um jogo de futebol, marcam a distância da bola ao gol na cobrança de uma falta com uma linha sobre o campo, como pode ser visto na figura 1. Da mesma forma, quando no início da partida são projetados no campo os escudos dos clubes que estão jogando. Em outro exemplo, em corridas de carros, banners de propaganda surgem ao lado da pista como se realmente existissem no autódromo, fazendo com que patrocinadores não precisem fixar a propaganda [5], reduzindo a poluição visual do local.

Na medicina, médicos utilizam a RA em cirurgias guiadas por imagem, ou para visualizarem imagens de órgãos superpostas à imagem do corpo humano, com o auxílio de óculos 3D, fornecendo uma orientação espacial maior nos diagnósticos [7].

Figura 1: RA para marcar a distância da cobrança de uma falta

2.1. Computação Móvel e a RA

Alguns aparelhos de telefone celular são dispositivos que apresentam um bom poder de processamento, levando-se em conta que se tratam de dispositivos móveis microprocessados com características limitadas. Estes são capazes de executar algoritmos desenvolvidos nas linguagens C++ e Java.

A versão Java Micro Edition (ME) define um ambiente flexível para a construção de aplicativos destinados a dispositivos móveis, como celulares, PDAs, TV set-top boxes e impressoras. O Java ME inclui interface com o usuário, segurança robusta e protocolos de comunicação em rede [9]. Um conjunto mínimo de características do Java ME deve ser suportado pelo dispositivo para este estar apto a rodar uma aplicação de RA, como: Mobile Information

Device Profile 2.0, Mobile Media API, Connected

Limited Device Configuration 1.1. Um exemplo do uso de RA com dispositivos móveis

de fácil acessibilidade é o Digital Scrap Book [10], onde as anotações de um álbum de recordações físico servem como marcadores para acessar conteúdos multimídia como vídeos, fotos e áudios. Ao posicionar a câmera do celular na frente do álbum o marcador é reconhecido pelo software e o conteúdo multimídia relacionado é apresentado pelo celular.

Outro exemplo de uso da RA é o sistema de museu virtual [11] onde marcadores são posicionados nas paredes do museu, próximo às obras. O aparelho celular, ou outro dispositivo móvel, ao capturar a imagem do marcador, está apto a mostrar na tela do aparelho, ou vocalmente, informações adicionais sobre a obra exposta.

Os exemplos citados falam de aplicativos que precisam estar conectados a uma rede externa através de tecnologia Bluetooth ou outro tipo de rede sem fio para obter dados adicionais. Nem todas as soluções precisam estar conectadas a uma rede externa. Um

Page 77: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

76

Voltar ao sumário

3

exemplo é um jogo de futebol para celular [12] onde uma bola virtual na tela do aparelho pode ser chutada com o próprio pé do usuário simplesmente apontando a câmera para o chão. A posição do pé é detectada em relação à bola virtual.

3. Descrição do Projeto

O sistema desenvolvido neste projeto consiste em um jogo de primeira pessoa onde a temática do jogo é “atingir pequenos discos voadores que estão invadindo a terra”. O jogo tem um tempo fixo de duração e existe uma quantidade pré-definida de discos voadores a abater. O nível de dificuldade do jogo aumenta quando o usuário alcança o objetivo e passa para a próxima fase. Os discos voadores tentam escapar da mira da arma do usuário para se defenderem, cabendo ao jogador ser mais ágil no movimento do dispositivo móvel.

Os discos voadores do jogo são suplementos virtuais adicionados ao ambiente real capturado pela câmera do telefone celular ou PDA. Estes suplementos reagem em relação aos movimentos do dispositivo executado pelo usuário. O jogador deve posicionar a mira sobre o disco voador através de movimentos com o aparelho e então pressionar o botão simbolizando atirar para destruir o disco voador.

A reação dos discos voadores se baseia nos resultados dos cálculos do algoritmo Shift Analysis [9], que detecta a movimentação do aparelho celular no espaço. Neste algoritmo, os quadros de vídeo capturados pela câmera do dispositivo são, dois a dois, analisados e é calculando o quanto a imagem foi deslocada e em que sentido. A diferença calculada do deslocamento é aplicada aos suplementos virtuais do vídeo (discos voadores) sempre no sentido contrário do deslocamento do aparelho.

3.1 Detecção de movimento

Na RA é necessário que os suplementos virtuais adicionados ao vídeo tenham reações às mudanças do mundo real. Isto significa que essencialmente os suplementos virtuais devem reagir à mudança de posição da câmera. Ou seja, se um objeto virtual estático for posicionado em um ponto específico no espaço, ao movimentar a câmera, é necessário que este objeto virtual permaneça no mesmo ponto relativo do espaço, reagindo conforme o movimento da câmera. Esta técnica é conhecida como Motion Tracking [13].

É comum o uso de algoritmos para implementar essa técnica, como o Block Matching e o Edge

Detection and Tracking, entretanto ambos requerem

grande poder de processamento. Estes ainda não são recomendados para dispositivos como os aparelhos de telefone celular e PDAs. Entretanto, o algoritmo Shift

Analysis é mais recomendado por ser mais simples e necessitar menor poder de processamento no dispositivo.

Esse algoritmo trabalha analisando uma versão em escala de cinza de dois instantes da imagem e, comparando-as, calcula em que sentindo a imagem foi deslocada. A comparação se dá através da soma das diferenças absolutas ao quadrado do valor do pixel de cada linha e coluna da imagem, como mostra a figura 2. A análise é feita para vários casos de grau de deslocamento. O caso que apresentar o menor valor no somatório é o provável sentido em que a imagem foi deslocada. Com esse valor de grau de deslocamento calculado, é então possível aplicar ao objeto virtual o deslocamento oposto, fazendo com que este não seja afetado pelo movimento da câmera.

Imagem anterior Imagem atual

Figura 2.a: Imagem em escala de cinza e a soma dos valores dos pixels em linha e coluna

Fator normatizadoSoma dos quadrados

Soma das diferenças absolutasBuffer da imagem atual

Buffer da imagem anterior

Instante -1 Instante 0 Instante 1

Figura 2.b: Aplicação dos cálculos para o

algoritmo Shift Analysis

Na figura 2.a são mostrados como exemplo de

funcionamento deste algoritmo, dois conjuntos de pixels referentes a instantes diferentes de uma mesma cena, bem como os vetores indicando a soma dos valores dos pixels nas linhas e colunas. Na figura 2.b

Page 78: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

77

Voltar ao sumário

4

os vetores são comparados com deslocamentos em diferentes graus. A diferença entre os valores é armazenada em um novo vetor. Os valores deste vetor são elevados ao quadrado e a soma destes corresponde ao fator que deve ser normalizado, dividindo pela quantidade de valores somados. 3.2 Implementação

A implementação desse projeto se baseou no telefone celular Nokia 6120 Classic. Este dispositivo é capaz de executar aplicações escritas na linguagem Java, sendo, desta forma, os algoritmos de RA codificados nesta linguagem. Da versão ME foram utilizadas algumas APIs, como: a MIDP que provê o ciclo básico de uma aplicação Java para dispositivos móveis; a Mobile Media API que provê acesso a recursos de captura de imagem da câmera e; a Nokia UI API que provê recursos avançados de interface com o usuário.

Para fazer com que as naves espaciais do jogo tivessem reação ao movimento da câmera do aparelho celular, foi configurado o algoritmo Shift Analysis onde os vetores das linhas e colunas de uma imagem em escala de cinza são somados para calcular o desvio mais provável da imagem.

Inicialmente, a fim de adaptar esse algoritmo à necessidade, é realizada a conversão da imagem colorida capturada pela câmera do celular em escala de cinza. Para isto codificou-se o algoritmo onde cada pixel da imagem é convertido para uma escala de 0 a 255 através da fórmula 0,3*R+0,59*G+0,11*B onde R, G e B correspondem respectivamente às componentes vermelho, verde e azul [14]. Nesse algoritmo, mostrado abaixo, a cor verde é a que mais contribui para o cálculo, pois é no componente verde que se encontra a maior luminosidade. private int[] converteParaEscalaCinza(int[] imageColorida) { int[] grayImage = new int[imageColorida.length]; for (int i =0; i< imageColorida.length; i++) { int r = (byte)((imageColorida[i] >> 16)); int g = (byte)((imageColorida[i] >> 8)); int b = (byte)((imageColorida[i])); int grayPixel = (int)(r*0.3+g*0.59+b*0.11); grayImage[i] = (byte)grayPixel << 16 + // R (byte)grayPixel << 8 + //G (byte)grayPixel; // B } return grayImage; } // converteParaEscalaCinza

O método de conversão para a escala de cinza

recebe um vetor de números inteiros, onde cada número inteiro corresponde a um pixel da imagem

colorida. O método utiliza a fórmula já citada para calcular a escala de cinza de cada pixel.

Para utilizar o algoritmo de Shift Analysis é necessário ter imagens de dois instantes diferentes, como se fossem dois frames de um vídeo. O laço principal do jogo passa a imagem colorida capturada da câmera para o método setNovaImagem() mostrado abaixo. Esse método realiza inicialmente o primeiro passo do algoritmo de Shift Analysis que consiste na soma dos valores dos pixels em linha e coluna armazenando os valores em dois vetores de inteiros distintos. public void setNovaImagem(int[] novaImagem) { novaImagem = converteParaEscalaCinza(novaImagem); linhaImagemAnterior = linhaImagemAtual; colunaImagemAnterior = colunaImagemAtual; int soma = 0, j =0, k=0; linhaImagemAtual = new int[lado]; colunaImagemAtual = new int[lado]; for (int i=0; i<novaImagem.length; i++) { soma+= (int)((byte)novaImagem[i]); if (i % lado == 0){ linhaImagemAtual[j] = soma; soma = 0; j++; } // if colunaImagemAtual[k] += (int)novaImagem[i]; k++; if (k==lado) k = 0; } // for } // setNovaImagem

O segundo passo do algoritmo Shift Analysis é

quando o laço principal do jogo chama o metódo somaDiferencasAbsolutas(), mostrado abaixo, que recebe como parâmetros a orientação e o índice. O parâmetro orientação serve para identificar qual o vetor de soma deve ser usado, ou seja, se o vetor vai realizar a soma de valores das linha ou das coluna. O parâmetro índice é o desvio o qual o algoritmo deve calcular. private double somaDiferencasAbsolutas(int orientacao, int indice){ int[] sdaImagemAnterior = null; int[] sdaImagemAtual = null; double SDA = 0; if (orientacao == LINHA) { sdaImagemAnterior = linhaImagemAnterior; sdaImagemAtual = linhaImagemAtual; } else if (orientacao == COLUNA) { sdaImagemAnterior = colunaImagemAnterior; sdaImagemAtual = colunaImagemAtual; } // else if int desvio = Math.abs(indice); if (indice == 0) { for (int i=0; i<lado; i++) { SDA += (sdaImagemAnterior[i] - sdaImagemAtual[i]) * (sdaImagemAnterior[i] - sdaImagemAtual[i]); } // for SDA = SDA / lado;

Page 79: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

78

Voltar ao sumário

5

} else if (((indice> 0) && (orientacao == LINHA)) || ((indice < 0) && (orientacao == COLUNA))){ for (int i=0; i<lado-desvio; i++) { SDA += (sdaImagemAnterior[i+desvio] - sdaImagemAtual[i]) * (sdaImagemAnterior[i+desvio] - sdaImagemAtual[i]); } // for SDA = SDA / lado-desvio; } else { for (int i=0; i<lado-desvio; i++) { SDA += (sdaImagemAnterior[i] - sdaImagemAtual[i+desvio]) * (sdaImagemAnterior[i] - sdaImagemAtual[i+desvio]); } // for SDA = SDA / lado-desvio; } // else return SDA; } // somaDiferencasAbsolutas

O método que calcula as diferenças absolutas é

ativado para diversos valores de desvios. Neste jogo optou-se por calcular dezessete desvios distintos, como pode ser visto abaixo onde é feita a declaração da constante com o vetor dos valores de desvios.

private static int[] desvios = { -20, -16, -13, -10, -8, -6, -4, -2, 0, 2, 4, 6, 8, 10, 13, 16, 20 };

Isso significa que para cada nova imagem

submetida ao algoritmo, são feitos dezessete cálculos para o eixo X e dezessete para o eixo Y. O cálculo que apresentar o menor valor é o provável desvio entre as imagens e, portanto, é o valor de deslocamento que é aplicado para os suplementos visuais do jogo, dando o efeito de reagirem conforme o movimento do aparelho celular. 3.3 Telas do jogo

A figura 3 mostra dois croquis do display do celular com o aplicativo em funcionamento. Percebe-se que os discos voadores são suplementos virtuais adicionados ao vídeo que reage conforme o movimento do aparelho, aumentando assim o realismo.

O jogador movimenta o aparelho celular para posicionar a mira por sobre o disco voador. As posições dos discos voadores são modificadas durante o movimento do aparelho através do algoritmo de detecção de movimento.

A figura 3.b mostra que o jogador acertou um disco voador, percebe-se nessa figura que a animação de destruição não está exatamente sob a mira, isto porque, nesse momento, o aparelho celular já foi movimentado, entretanto, a imagem da explosão permaneceu no mesmo local no espaço onde o disco voador foi atingido.

Figura 3.a A mira

sobre o alvo

Figura 3.b O jogador

atinge o disco voador

Percebe-se também que os discos voadores saem da tela do celular se o movimento do aparelho se distanciar deles. Caso o movimento do aparelho volte a se aproximar do disco voador, este reaparece novamente. O usuário necessita realizar movimentações do dispositivo em todos os ângulos para visualizar os suplementos virtuais.

4. Avaliação

Visando avaliar este projeto, o software desenvolvido foi disponibilizado a um grupo de 10 usuários a fim de colher suas opiniões. Os usuários avaliaram os seguintes itens: a usabilidade, a aplicação do conceito de RA, a velocidade de reação aos movimentos e a inovação. As respostas para cada avaliação obedeciam a escala de 0 (totalmente insatisfeito) a 5 (totalmente satisfeito).

Após as avaliações foram calculadas as médias para cada item, que podem ser vistas na tabela 1.

Tabela 1: Médias das avaliações dos usuários

Itens avaliados Média Usabilidade 3,9 Aplicação do conceito de RA 4,5 Velocidade de reação aos movimentos 3,5 Inovação 4,9

Concluiu-se que a maioria dos usuários não teve

problemas para interagir com a aplicação. O fato de ter que mover o aparelho celular fisicamente no espaço agradou a maioria, pois se trata de um movimento natural e foi comparado aos novos consoles de vídeo games onde o jogo é controlado movimentando no espaço um joystick. Esse dispositivo contém um acelerômetro que transmite para o console os movimentos feitos pelo jogador, tendo assim interatividade similar à utilizada nesse trabalho.

Page 80: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

79

Voltar ao sumário

6

Entretanto, com uma tecnologia diferente, uma vez que ao invés de um acelerômetro, utilizou-se a câmera do dispositivo para permitir o rastreamento da imagem, comprovando assim a eficácia da utilização do algoritmo Shift Analysis em dispositivos móveis.

Após alguns testes se observou que o algoritmo utilizado para detecção de movimento não funciona satisfatoriamente quando o ambiente é muito homogêneo, como por exemplo, quando o dispositivo que captura o vídeo aponta para uma parede branca. Este comportamento era esperado, pois o algoritmo

Shift Analysis se baseia em bordas ou saliências de uma imagem.

Normalmente esta limitação do algoritmo não figura um problema grave, pois na maioria dos ambientes onde foi jogado sempre existiu móveis, pessoas e objetos que faziam parte da imagem capturada pelo jogo e, portanto, os discos voadores sempre reagiram ao movimento do aparelho.

5. Conclusão

O conceito de Realidade Aumentada visual se caracteriza pela adição de suplementos virtuais a um vídeo que, dentre outras ações, reagem ao movimento da câmera. Esse trabalho teve o objetivo de aplicar esse conceito em dispositivos móveis através de um jogo para celular, utilizando o algoritmo Shift Analysis. Este aplicativo consistiu em capturar informação de deslocamento da imagem e aplicar essa informação aos suplementos virtuais, fazendo com que estes reagissem ao movimento do aparelho celular.

Entretanto, a fim de melhorar a aplicação da RA no jogo desenvolvido, se observou dois aspectos de interesse. O primeiro aspecto diz respeito ao desenho dos suplementos virtuais. Por serem modelados em duas dimensões, os discos voadores acabam não parecendo fazer realmente parte do ambiente real. Uma solução seria a utilização de imagens de discos voadores em três dimensões, animadas e com cores suavizadas. Outro aspecto diz respeito a que, neste aplicativo, todos os objetos virtuais permanecem sempre há mesma distância do observador. Pode-se facilmente modelar um ambiente em que os suplementos virtuais se afastam e se aproximam, ocasionando alteração no seu tamanho e forma.

Foi comprovado, a partir deste projeto, que é possível implementar algoritmos de RA em dispositivos móveis alavancando características e funcionalidades muito interessantes. Da mesma forma foi possível constatar que a integração de novas tecnologias em jogos para dispositivos móveis têm grande e rápida aceitação neste crescente mercado.

6. Referências Bibliográficas [1] LIMA, J. “Um Framework de Realidade Aumentada Para o Desenvolvimento de Aplicações Portáveis Para a Plataforma Pocket PC”. UFPE, Ciência da Computação, Recife. Trabalho de conclusão de curso, 2007.

[2] HARMA, A. et al. “Techniques and applications of wearable augmented reality audio”. In: Audio Engineering Society Convention Paper, Amsterdam, Holanda, 2003.

[3] BIMBER, O. & RASKAR, R. Spatial Augmented

Reality: Merging Real and Virtual Worlds. 1. Ed., Wellesley: A K Peters, 2005.

[4] AZUMA, R. Tracking Requirements for Augmented Reality. Disponível em http://www.cs.unc.edu/~azuma /cacm.html, agosto de 2008.

[5] BONSOR, K. How Augmented Reality Will Work. Disponível em http://computer.howstuffworks.com/ augmented-reality.htm, agosto de 2008.

[6] FORUM NOKIA, Device Details – Nokia N95. Disponível em http://www.forum.nokia.com/devices/ 6120_Classic, agosto de 2008.

[7] SABBATINI, R. “Realidade Virtual no Ensino Médico”. Informática Médica, 1999, v. 2, n. 2.

[8] TONIETTO, L. Análise de Algoritmos para Chroma-Key. Unisinos, Habilitação Software Básico, São Leopoldo. Trabalho de conclusão de curso, 2000.

[9] SUN, The Most Ubiquitous Application Platform for Mobile Devices. Disponível em http://java.sun.com/ javame/index.jsp, 2008.

[10] QUIGLEY, A. Digital Scrap Book. Disponível em http://praxis.cs.usyd.edu.au/%7Epeterris/?Projects/Digital+Scrap+Book, 2008.

[11] NETO, S. et al. “Criação de Aplicações de Realidade Aumentada em Dispositivos Móveis Baseados em Symbian OS”. In: II Workshop de Aplicações de Realidade Virtual, Universidade Federal de Pernambuco, 2006, p. 16-19.

[12] REIMANN, C. “Kick-real, a Mobile Mixed Reality Game”. In: Proceedings of the International Conference on Advances in Computer Entertainment Technology. Valencia, 2005, pp. 387.

[13] DRAB, S. & ARTNER, N M. “Motion Detection as Interaction Technique for Games & Applications on Mobile Devices”. Pervasive Mobile Interaction Devices (PERMID 2005), Munich, Alemanha, 2005.

[14] FULTON, W. A little more detail about Histograms. Disponível em http://www.scantips.com/ lumin.html, agosto 2008.

Page 81: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

80

Voltar ao sumário

sessão TécnicA 3

rv: educação e treinamentochair: marcos wagner souza ribeiro - ulBra/itumbiara

Page 82: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

81

Voltar ao sumário

Desenvolvimento de um Chatterbot para o Portal deEnsino da Universidade do Oeste de Santa Catarina

João Clayton AiresUniversidade do Oeste de Santa Catarina – Campus de

São Miguel do Oeste (UNOESC)Fone: (49) 3631 1000, Rua Oiapoque, 211 – Agostini –

89.900-000 – São Miguel do Oeste – SC – [email protected]

Cleia Scholles GallertUniversidade do Oeste de Santa Catarina – Campus de

São Miguel do Oeste (UNOESC)Fone: (49) 3631 1000, Rua Oiapoque, 211 – Agostini –

89.900-000 – São Miguel do Oeste – SC – [email protected]

ABSTRACTThis article presents the development of a chatterbot for the Education Portal of Universidade do Oeste de Santa Catarina. A conversational agent in an education environment provides many advantages, among them we can include: a dialogue in natural language, full time availability, remote access and accuracy of the information. This way, users can solve their doubts regarding access and usability of the tools and resources from the Education Portal. The adopted language is the AIML - Artificial Intelligence Mark-up Language, possessing basic knowledge and controllers as Program-D and JRE (Java Runtime Environment) which make the control of input and output of information between chatterbot and user.

RESUMOEste artigo apresenta o desenvolvimento de um chatterbot para o Portal de Ensino da Universidade do Oeste de Santa Catarina. Um agente de conversação em um ambiente de ensino proporciona muitas vantagens, entre elas podemos citar: um diálogo em linguagem natural, estar disponível por tempo integral, acesso à distância e precisão nas informações. Com isso os usuários poderão sanar suas dúvidas em relação ao acesso e usabilidade das ferramentas e recursos do Portal de Ensino. A linguagem adotada é o AIML – Linguagem de Marcação da Inteligência Artificial, possuindo base de conhecimento e controladores como Program D e JRE (Java Runtime Enviroment) que fazem o controle de entrada e saída das informações entre chatterbot e usuário.

1.INTRODUÇÃOA Universidade do Oeste de Santa Catarina, Unoesc, fornece aos seus usuários o serviço de um portal de ensino com recursos e ferramentas avançadas. No entanto, muitos destes recursos e ferramentas não são utilizados pelos usuários, devido à falta de conhecimento sobre os mesmos.

Sabe-se que o portal disponibiliza uma opção de ajuda. No entanto, grande parte dos usuários não a utilizam. Isso porque não sabem usá-la e/ou por ocasiões não obtém sucesso na sua procura, provocando desestímulos e até mesmo desistências na busca da informação.

Dessa forma, tem-se como objetivo desenvolver uma ferramenta (chatterbot) para o Portal de Ensino, que terá como objetivo

simular um diálogo com o usuário, e auxiliando-o em suas dúvidas e na busca de informações, em uma linguagem natural.

Acredita-se que com o auxílio de uma ferramenta, como o Chatterbot, os usuários passarão a utilizar o portal com mais freqüência, pois terão suas dúvidas esclarecidas de uma forma simples e rápida, através de perguntas (realizada pelo usuário) e respostas (dadas pelo Chatterbot).

2. INTELIGÊNCIA ARTIFICIAL

A Inteligência Artificial é uma das áreas da informática ainda pouco explorada devido à complexidade de alguns conceitos, pois muitos desses envolvem cálculos matemáticos e probabilidades, o que assusta muitos iniciantes. No cinema a Inteligência Artificial ganha destaque, filmes baseados em estudos mostram as máquinas inteligentes superando a mente humana.

A Inteligência Artificial está cada vez mais presente em nossas vidas, seja na área da comunicação, saúde ou transporte. As montadoras de veículos vêm disputando essa tecnologia, a Universidade de Portsmouth, no Reino Unido, publicou os últimos avanços no campo da Inteligência Artificial no setor automobilístico, desenvolvendo a primeira roda para carros capaz de se adaptar ao caminho percorrido pelo veículo, tudo isso graças a IA. A história diz que não é possível reinventar a roda, mas o Instituto de Pesquisa Industrial da universidade fez justamente isso, pegaram a roda, e lhe deram inteligência para pensar e aprender [2].

3.CHATTERBOTChatterbot ou agente de conversação é um programa de computador que simula um ser humano na conversação com outra pessoa. Seu objetivo é responder as perguntas de tal forma que tenham a impressão de estar conversando com outra pessoa e não com um programa de computador. Após o usuário enviar a pergunta em linguagem natural, o chatterbot consulta uma base de conhecimento e fornece uma resposta, simulando assim o comportamento humano [4].

São muitas as vantagens de uma empresa ter seu chatterbot, dentre essas, pode-se citar, estar 24 horas à disposição na Internet para conversar com os usuários, baixo custo de implantação e manutenção, padronização na disseminação da informação, os

Page 83: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

82

Voltar ao sumário

diálogos podem ser gravados visando uma análise das informações e aprimoramento da base de conhecimento.

Dentre as grandes empresas que já utilizam os chatterbots tem-se a Coca-Cola que possui o Hank projetado para conversar sobre quase tudo, menos a receita secreta da empresa, a Ford utiliza-os para relacionamento com seus fornecedores, a Yasmin da OnetoOne que vende celulares, o Allen da Oracle é usado para dar apoio ao helpdesk, e o Bob da DirectTV que responde sobre os melhores planos de acesso e pacotes [6].

O primeiro chatterbot brasileiro a conquistar o cyber espaço foi a Cybelle, que foi desenvolvida a partir de um projeto de doutorado de Alex Primo, que teve participação do programador Luciano Coelho. Ela é capaz de conversar durante várias horas com um usuário. O segredo é a inteligência artificial, o mesmo recurso presente nos videogames que raramente perdem uma partida para seres humanos [5].

4. AIML – LINGUAGEM DE MARCAÇÃO DA INTELIGÊNCIA ARTIFICIAL

AIML é uma Linguagem de Marcação da Inteligência Artificial, baseada na XML (Linguagem extensível de formatação). A linguagem XML utiliza-se de tags para estruturar seus dados, simplificando assim, a sua implementação, sendo a mesma uma especificação técnica desenvolvida pela W3C (World Wide Web Consortium - entidade responsável pela definição da Internet), para superar as limitações do HTML (Linguagem de Marcação de Hipertexto), que é o padrão das páginas da Internet. Pode-se dizer que uma das vantagens da linguagem XML é a confiabilidade na execução dos comandos inseridos, um exemplo seria o uso das tags, cada tag consiste em duas partes, uma que inicia e outra que fecha o comando. Porém, em muitos casos, se uma tag é aberta no HTML e não é fechada, a página é exibida mesmo assim. Já no XML, se houver qualquer erro desse tipo, a aplicação simplesmente pára. Percebe-se com esse exemplo, que o HTML é uma linguagem mais tolerante, enquanto o XML é significativamente rigoroso, tornando assim o bom funcionamento da aplicação desenvolvida [3].

A AIML teve seu início no ano de 1995, pelo Dr. Richard Wallace e a comunidade de Software Livre Alicebot, criadores de A.L.I.C.E, Artificial Linguistic Internet Computer Entidade,

sendo o primeiro chatterbot implementado em AIML, e tornando-se referência para todos os demais robôs de conversação [7].

Além disso, a linguagem facilita a difícil tarefa de criar robôs de conversação, que buscam simular um dialogo escrito com a intenção de convencer o usuário que está trocando informações com um ser humano e não com uma máquina.

A AIML utiliza um conjunto de tags e comandos que servem para implementar a base de conhecimento do chatterbot. Os arquivos criados em AIML devem conter as seguintes tags básicas [7]: <aiml> : inicia e termina um bloco programado em AIML.

<category> : identifica uma “unidade de conhecimento” na base de conhecimento.

<pattern> : indica o padrão da mensagem que será digitada pelo usuário.

<template> : indica a resposta para a pergunta. <random> : seleciona respostas aleatórias. <li> : Marca o bloco de respostas aleatórias, é utilizado

dentro do bloco random. <that> : Registra a última sentença, gerando uma seqüência

no diálogo. <srai> : Redireciona para outra questão ou categoria. <javascript> : Executa um comando em javascript

No exemplo a seguir, utiliza-se a tag <srai>, usando-a para o recurso de recursividade. Quando queremos ter a mesma resposta para várias perguntas, como as muitas opções de despedidas, que só pode ser um padrão de entrada <PATERN> por categoria <CATEGORY>. Deve-se direcionar uma categoria para outra, que tenha a resposta a se dar.

Exemplo 1.

<AIML version”1.0”> <category> <pattern> tchau</pattern> <template>

<srai>Ate logo</srai> </template> </category> <category>

<pattern> Ate logo</pattern> <template> Ate logo, foi ótimo conversar com você. </template> </category> </aiml>

A sentença <SRAI>ATE LOGO</SRAI> é uma chamada à categoria que tem como padrão de entrada TCHAU. Conforme pode ser visto a seguir:Pessoa: tchau.Robô: até logo, foi ótimo conversar com você. Pessoa: até logo.Robô: até logo, foi ótimo conversar com você.

5. PROGRAM DO Program D é responsável em fazer a comunicação entre a base de conhecimento em AIML com as informações fornecidas pelos usuários, ou seja, pode-se denominá-lo de máquina de inferência. O software é de uso gratuito, desenvolvido em Java.

O Program D oferece uma ferramenta muito útil, o Targeting, é um aplicativo desenvolvido em Java que mostra as entradas dos usuários e as respectivas respostas do chatterbot [1].

O Program D possui uma base semi-estruturada, permitindo ao desenvolvedor configurar a máquina de inferência de uma forma rápida e segura, conforme pode-se visualizar na Tabela 1 [1]:

Tabela 1: Base semi-estruturada

Page 84: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

83

Voltar ao sumário

Pastas Definição

Bots É onde os arquivos da base de conhecimento são guardados. Somente os arquivos com a extensão "aiml" serão considerados. Este é o diretório criado para este projeto, entretanto este diretório pode ser definido nas configurações do Program D

Logs Contém os registros das conversas, dos erros e as mensagens geradas pelo servidor. Este diretório não existe até que o servidor seja rodado pela primeira vez

Targets É o local onde ficam os dados gerados para a ferramenta Targeting

Templates Contém os modelos para as interfaces em html e flash

Conf Contém os arquivos de configuração do chatterbot

Database Contém os scripts para a geração das tabelas usadas pelo Program D. Usa-se as tabelas somente se for necessário gravar os logs em algum banco de dados

Resources contém as DTDs (No XML as regras que definem um documento são ditadas por DTDs (Document Type Definitions)) e StyleSheets (é um conjunto de instruções ou regras que se dá ao navegador para que ele apresente o conteúdo da página) usados nos arquivos de log XML

O Program D possui uma base semi-estruturada, permitindo ao desenvolvedor configurar a máquina de inferência de uma forma rápida e segura. Além disso, permite configurar um número ilimitado de bots,

todos rodando ao mesmo tempo. O bots são configurados no arquivo de PROGRAM D/conf/startup.xml.

6. DESENVOLVIMENTO DO CHATTERBOT.Iniciando pela configuração do Program D (máquina de inferência), utilizando sua base semi-estruturada, fez-se as inclusões no arquivo startup.xml. A configuração deste arquivo visa um bom funcionamento da máquina de inferência, pode-se inserir as prováveis entradas digitadas pelo usuário que podem conter abreviações, acentos ou erro de sintaxe, funcionando assim, como uma memória de trabalho.

A base de conhecimento foi iniciada baseando nos tópicos do Portal de Ensino da Unoesc. Fez-se assim, uma analise das possíveis questões que os usuários poderiam perguntar ao chatterbot, formando uma relação de questões organizadas por diversos assuntos.

A base de conhecimento apresenta a seguinte organização:

Área_de_colaboração.aiml

Avaliação_on_line.aiml

Avatar.aiml

Bate_papo.aiml

Colegas_on_line.aiml

Forum.aiml

Material_didático.aiml

Mensagem_particular.aiml

Avatar.aiml.aiml

Meu_perfil.aiml

Moderadores.aiml

Mural.aiml

Saudações.aiml

Senhas.aiml

Tira-dúvidas.aiml

A opção por organizar as bases de conhecimentos por assunto, visou uma melhor visualização da sua estrutura, permitindo ao programador maior agilidade na busca da informação, visando uma correção ou inserção de um novo dado referente ao assunto pertinente.

O chatterbot ainda está em fase de implementação, portanto, ainda não tem-se um resultado final com testes realizados.

7.REFERÊNCIAS

[1] ALICE. Artificial Intelligence Foundation. Disponível em: http://www.alicebot.org/downloads

[2] GLOBO. Roda de carro ganha inteligência artificial. Disponí-vel em: http://g1.globo.com/Noticias/Tecnologia/0,,MUL53105-6174,00.html

[3] INFO WESTER. Linguagem XML. Disponível em: http://www.infowester.com/lingxml.php

[4] LEONHARDT, Michelle Denise; NEISSE, Ricardo; TAROUCO, Liane Margarida Rockenbach (2003). MEARA: Um Chatterbot Temático para Uso em Ambiente Educacional. Disponível em: http://www.nce.ufrj.br/sbie2003/publicacoes/paper09.pdf.

Page 85: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

84

Voltar ao sumário

[5] PRIMO, Alex; COELHO, Luciano. Cybelle. Disponível em: http://cybelle.cjb.net/

[6] TRUNFOSDOFUTURO. Chatterbots. Disponível em: http://supertrunfonet.tripod.com/trunfonticiadofuturo/id4.html

[7] WALLACE, Richard (2003). Artificial Intelligence Markup Language (AIML) Version 1.0.1. Disponível em www.alicebot.org/TR/2001/WD-aiml

Page 86: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

85

Voltar ao sumário

ESTUDO DE MÁQUINAS ELÉTRICAS AUXILIADO POR TÉCNICAS DE REALIDADE VIRTUAL

Afonso Bernardino A. Junior, Alexandre Cardoso e Edgard Lamounier Jr. Universidade Federal de Uberlândia – Faculdade de Engenharia Elétrica

CEP: 38400-902, C.P. 593, Uberlândia – MG – Brasil ([email protected], [email protected], [email protected])

Abstract The search for better methods of learning is

emerging, which allows a better formation of professionals and, consequently, an improvement on their activities. Virtual Reality has become a suitable tool for Education, providing excellent results. In Electric Engineering presents a problem in the teaching of structures that composes electrical machines. Only illustrations are supplied to students, who must only imagine its functioning. Moreover, the visualization of certain structures is not possible when functioning, causing a deficit in the learning process. This research considers a system, compatible with the WEB and supported by techniques of Virtual Reality, that makes possible to the user the understanding of the functioning of such electrical machines, improving the set of tool for Education in Electric Engineering.

Palavras-chave Software Educativo, Ensino à Distância, Realidade

Virtual.

1. Introdução A Realidade Virtual (RV) tem sido utilizada de

diversas maneiras como ferramenta de suporte ao processo cognitivo de aprendizagem. Neste contexto, este trabalho visa desenvolver e avaliar a adequação do uso de técnicas de RV para uma aplicação de ensino de máquinas elétrica e assuntos afins. Ela tem sido intensamente explorada como uma ferramenta que possa produzir ambientes educacionais para o Ensino à Distância 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.

A disciplina de máquinas elétricas, 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 os enrolamentos utilizados em uma máquina elétrica, pólos, estator, rotor etc.

Um bom exemplo é a forma como os transformadores de tensão (força ou distribuição) são apresentados no decorrer do curso, uma forma de pouca interação com o aluno utilizando sistemas em apenas duas dimensões (Figura 1).

Fig. 1. Transformador monofásico, a seco [1].

Tradicionalmente, o estudo de máquinas elétricas tem como recurso didático básico, a utilização de fotos e desenhos. 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, fazendo com que eles tenham que possuir um elevado nível de visualização, dificultando muito o aprendizado dos mesmos.

Um estudo do professor David Ainge, da Escola de Educação da James Cook University, na Austrália [1], consistiu em algumas experiências que comparavam a utilização de fotos e da Realidade Virtual no ensino de tópicos universitários. Ele concluiu que os alunos tiveram certa dificuldade de construir um modelo mental tridimensional a partir de imagens

Page 87: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

86

Voltar ao sumário

bidimensionais, como desenhos de três ou mais vistas. Já os alunos que tiveram o contato com aplicações desenvolvidas em Realidade Virtual tiveram mais facilidade de assimilação de estruturas em três dimensões. Assim o desenvolvimento de uma aplicação de RV visando utilizá-la no ensino de engenharia, torna este mais eficaz e empolgante.

Uma máquina elétrica, como um motor de indução trifásico, é 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 de uma máquina em funcionamento, capacidade não identificada em técnicas de ensino tradicionais [2]. A proposta deste trabalho é apresentar um software, que com técnicas de Realidade Virtual permite a interpretação e a visualização do funcionamento de uma máquina elétrica. Tal sistema é composto por ambientes virtuais que simulam máquinas elétricas, com a possibilidade de, interativamente, visualizar os componentes internos das mesmas.

As máquinas elétricas são de extrema importância para o sistema industrial atual, funcionando como geradores ou motores.

Na forma elétrica, a energia pode ser transmitida e controlada com relativa simplicidade, segurança e eficiência. Os componentes elétricos então são partes de um sistema que recebem energia na forma não-elétrica, e, por último, entregam a energia na forma não-elétrica. Assim, os dispositivos de conversão de energia são requeridos em ambos os finais do sistema elétrico [3].

Dentre os mais importantes dos dispositivos de conversão de energia, estão aqueles que convertem energia elétrica em mecânica, ou energia mecânica em elétrica. Técnicas elétricas são também amplamente utilizadas na medida e controle de grandezas não-elétricas, por exemplo, medida de pressão, vazão, válvulas etc. Vários outros exemplos podem ser citados. Com a energia na forma elétrica, a sua aplicação, como intermediária é ilimitada. A conversão eletromecânica de energia depende, portanto, da existência na natureza de fenômenos que inter-relacione campos elétrico e magnético por um lado com força mecânica e movimento por outro. A Figura 2 representa o modelo de geração e distribuição resumido [4].

Fig. 2. – Modelo resumido de geração e distribuição de

energia.

O desafio consiste em visualizar as estruturas das máquinas elétricas em funcionamento, sendo algumas visualizações impossíveis nos métodos comuns.

Desta maneira, esta pesquisa tem como objetivo realizar a integração da Realidade Virtual aplicada ao sistema de máquinas elétricas, com o olhar voltado ao ensino de funcionamento, 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.

A motivação deste trabalho é prover ao usuário o aprendizado de técnicas que expliquem o funcionamento de máquinas elétricas e de todos seus componentes.

2. Objetivos

São objetivos deste trabalho: → Desenvolver um conjunto de ambientes virtuais

equivalente aos ambientes reais encontrados nos laboratórios de ensino de máquinas elétricas, 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 máquina, inclusive aquelas cuja visualização é impossível no ambiente real como partes internas com o motor/gerador funcionando.

Page 88: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

87

Voltar ao sumário

→ 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.

3. Desenvolvimento O processo de desenvolvimento dos ambientes

virtuais se deu por:

1. Verificação dos projetos e detalhes reais dos componentes das máquinas elétricas, assim como fotos e desenhos técnicos de fabricantes;

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 máquinas e construção de páginas Web capazes de associar estes a tais imagens.

Para a implementação destas técnicas de Realidade

Virtual, utilizou-se o software VRMLpad que utiliza a linguagem VRML (Virtual Reality Modeling Language), aplicada com bastante sucesso em diversos projetos de concepção de ambientes virtuais [5]. O surgimento da linguagem está relacionado à 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.

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. Abaixo, a Figura 3 representa a arquitetura desse sistema. A Figura 4 apresenta uma turbina hidroelétrica.

Fig. 3. Arquitetura do sistema utilizando VRML.

Fig. 4. Máquina Síncrona – Turbina Hidroelétrica.

Page 89: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

88

Voltar ao sumário

Para o estudo do funcionamento do motor de indução, foi-se necessário a modelagem do motor juntamente com um sistema de aprendizagem autônoma, enfatizando ainda mais a Educação a Distância (EAD). Para tal fim, foram desenvolvidos gráficos, animações e interações do ambiente virtual com o usuário, tornando o ensino mais flexível e consistente [5].

Um painel virtual foi desenvolvido para controlar a navegação (por meio da união com o JavaScript). Alguns objetos que possuem superfícies não-convencionais, como por exemplo, cabos e espiras, foram modelados com utilização do software ArtOfIllusion sendo exportados para o VRML97.

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 5).

Fig. 5. Visualização apenas do estator da turbina.

Um transformador foi modelado também para análise de sua estrutura (Figura 6). Um painel de controle foi desenvolvido para que o usuário possa ligar o transformador e observar o fluxo magnético no núcleo de ferro do mesmo. Assim observa-se claramente a variação de fluxo devido à variação das correntes aplicadas ao mesmo. Ainda no transformador, o usuário tem a possibilidade de vê-lo de um modo impossível em um sistema real: de maneira transparente. Tal visualização permite um entendimento de como o núcleo é posicionado no transformador. Para simulação do fluxo no núcleo do transformador foi utilizado o software Femm.

Fig. 6. Transformador semitransparente sendo

analisado. A figura 7 demonstra a aplicação de um

transformador de força, já em funcionamento em uma subestação de energia. Observa-se também o nível de precisão da modelagem do modelo virtual (Figura 7) com o modelo real (Figura 8).

Fig. 7. Subestação de energia, mostrando

aplicação do transformador de força – Modelo Virtual.

Page 90: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

89

Voltar ao sumário

Fig. 8. Subestação de energia – Modelo Real.

O sistema virtual do motor de indução foi feito

com a utilização de arquivos de áudio com o intuito de facilitar ainda mais o aprendizado. O motor modelado pode ser aberto, ligado e desmontado (Figura 9) da maneira que o usuário achar melhor [6].

Fig. 9. Peças do motor são retiradas para uma

melhor visualização do mesmo.

Algumas considerações realizadas para compreensão do funcionamento da máquina também foram mostradas da maneira mais interativa possível (Figura 10) [7].

Fig. 10. Consideração feita adotando uma

possível linearização do estator do motor. Ao selecionar opções de avanço no painel de

controle, o usuário poderá realizar todo o estudo do funcionamento do motor, inclusive gráficos de curvas de funcionamento, campos girantes, etc (Figura 11) [8].

Fig. 11. Animação da onda girante no motor de

indução.

4. Resultados

O sistema desenvolvido permitiu ao usuário ter um enorme controle sobre as estruturas, podendo até desmontá-las se achar viável (Figura 12).

Page 91: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

90

Voltar ao sumário

Fig. 12. Motor de indução 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 a um laboratório, levando o estudante a inserção no contexto de um dado tópico ou assunto, sem riscos, como os presentes no manuseio dos equipamentos [9].

Um site também foi desenvolvido para demonstrar a versatilidade da RV e sua compatibilidade com sistemas WEB. A Figura 13 mostra o layout do site.

Fig. 13. Layout do site construído para hospedar o

projeto desenvolvido.

5. Conclusões e Trabalhos Futuros

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.

Apontam como principais vantagens da utilização de técnicas de realidade virtual para fins educacionais, nesta específica pesquisa de conjunto de ambientes virtuais aplicados na engenharia, os seguintes itens:

→ Motivação de estudantes e usuários de forma

geral, baseada na experiência de visualizar o funcionamento de um aparelho virtualmente.

→ Grande poderio de ilustrar características e processos, em relação a outros meios multimídias.

→ Permite visualização em detalhe dos equipamentos da área da engenharia.

→ Poder permitir a visualização de aparelhos de forma imersiva.

→ Permite experimentos virtuais, principalmente na falta de recursos, para fins 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.

→ Pelo fato de requerer interação, exige que cada participante se torne ativo dentro de um processo de visualização.

→ Encoraja a criatividade do usuário, que estará mais motivado por visualizar características internas de uma peça.

→ Provê igual oportunidade de comunicação para estudantes de culturas diferentes, a partir dos modelos virtuais.

→ Ensina habilidades computacionais e de domínio de periféricos.

Observa-se também que apenas o curso de máquinas elétricas, feito através de fotos e texto, gastava um espaço equivalente a 200mb e que o sistema modelado, incluindo o curso, em 3D (RV) ocupa apenas 20mb de armazenamento, mostrando ainda mais quão flexível pode ser a RV apoiando o EAD.

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].

Page 92: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

91

Voltar ao sumário

Como aplicação futura para o trabalho está a implementação de um painel aprimorado, com mais detalhes permitindo maior interação do usuário. Além disso, será avaliada uma modelagem inserindo os dados técnicos em todas as estruturas e uma implementação em realidade aumentada (RA).

6. Referências

[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] 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.

[7] 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.

[8] FITZGERALD, E.; KINGSLEY, Charles; UMANS, Stephen. Eletric Machinery. 5 ed. New York: McGraw Hill, 1990.

[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.

Page 93: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

92

Voltar ao sumário

Realidade Virtual não-imersiva como tecnologia de apoio no desenvolvimento de protótipos para reconstituição de ambientes

históricos para auxilio ao ensino

Rodrigo Vasconcelos Arruda1, Wender A. Silva2, Edgard A. Lamounier3, Marcos W. Ribeiro1, Alexandre Cardoso3, Nadabe Fortes2

1-Instituto Luterano de Ensino Superior de Itumbiara, 2-Faculdade Atual da Amazônia, 3-Universidade

Federal de Uberlândia

1- [email protected], [email protected], 2- [email protected], [email protected], 3 – [email protected], [email protected]

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.

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órico-cultural da cidade.

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órico-cultural, 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.

Page 94: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

93

Voltar ao sumário

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 estudo das características arquitetônicas 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.

Page 95: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

94

Voltar ao sumário

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.

Figura 1. Foto da antiga Catedral Santa Rita de Cássia.

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.

Figura 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 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.

Figura 3. Maquete da Praça. (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.

Figura 4. Representação tridimensional do Coreto.

3.2. Implementação

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.

Page 96: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

95

Voltar ao sumário

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 plug-

in, 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.

Figura 5. Diagrama de caso de uso

5. Análise dos Resultados O protótipo foi apresentado a uma amostra de 15

usuários, composta por funcionários da Casa da Cultura de Itumbiara e também por alguns visitantes que estavam presentes no local.

A maior parte destes usuários declararam ter um conhecimento básico de informática e que realizavam apenas tarefas simples no computador como navegar na Internet, bate papo com amigos e trabalhar com editores de texto e cálculos. A grande maioria também afirmou não conhecer as origens da cidade de Itumbiara e o quanto a Catedral Santa Rita de Cássia significava um marco na sua fundação.

Estes usuários passaram previamente por um rápido treinamento sobre as funções do protótipo, bem como a finalidade e os objetivos que o mesmo pretende alcançar, que é o resgate de parte da história e da cultura de Itumbiara. Foram-lhes apresentados alguns materiais como fotos, quadros e maquetes para que pudessem ter um senso crítico maior quanto a real necessidade e contribuição do protótipo de software.

De forma geral, pode-se perceber que as pessoas sentiam-se entusiasmadas com a possibilidade de passear pelo ambiente virtual conhecendo os detalhes arquitetônicos da Catedral, em suas características originais e também do Coreto, pois não sabiam que, o que hoje é uma fonte luminosa na Praça da República, era uma bela construção e ponto de encontros na cidade.

Após a utilização do protótipo, solicitou-se aos usuários que respondessem um questionário, elaborado com base em preceitos da Isonorm NBR 9241-11 que define a usabilidade e explica como identificar a informação necessária a ser considerada na especificação ou avaliação de usabilidade de um computador em termos de medidas de desempenho e satisfação do usuário.

Com base nos dados coletados, foi possível chegar as seguintes conclusões.

5.1. Quanto a interface do protótipo

De modo geral, todos os usuários que experimentaram o protótipo disseram que o mesmo possui uma Interface Gráfica agradável, que motiva-os e torna o conhecimento do conteúdo mais atraente.

Como pode-se ver na tabela 1, a Interface Gráfica foi avaliada como agradável por todos os usuários, sendo que 40% a avaliaram como boa e 60% a avaliaram como ótima. Isso pode ser explicado em parte pela simplicidade que o protótipo propõe, mas também por ser uma inovação tecnológica do ponto de vista de conhecido histórico e cultural.

Tabela 1. Opinião dos usuários quanto a Interface Gráfica.

Classificação Pontos Percentual

Ótimo 9 60%

Bom 6 40%

Regular - -

Baixa - -

Péssimo - -

Total 15 100%

Page 97: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

96

Voltar ao sumário

A tabela 1 é representada no gráfico abaixo.

Quanto a Interface Gráfica

0%10%20%30%40%50%60%70%80%90%

100%

Ótimo Bom Regular Baixa Péssimo

Classificação

Figura 6. Gráfico de análise quanto a Interface Gráfica

5.2. Quanto a navegação do protótipo

Outro ponto avaliado a favor do protótipo foi o quesito de navegação. Apesar de praticamente todos os usuários que o experimentaram terem declarado que tinham tido apenas contatos básicos com o computador, estes não apresentaram grandes dificuldades para navegar pelo ambiente virtual, limitando-se as dificuldades de coordenação motora ao operar o mouse. Tabela 2. Opinião dos usuários quanto a navegação do protótipo

Classificação Pontos Percentual

Ótimo 2 13%

Bom 10 67%

Regular 3 20%

Baixa - -

Péssimo - -

Total 15 100%

Podemos melhor analisar os dados visualizando a figura

7, que é um gráfico representando a avaliação dos usuários.

Quanto a navegação no protótipo

0%10%20%30%40%50%60%70%80%90%

100%

Ótimo Bom Regular Baixa Péssimo

Classificação

Figura 7. Gráfico de análise quanto a Navegação

5.3. Quanto aos comandos do protótipo

Em relação aos comandos de navegação do protótipo, é

um ponto que merece mais atenção, uma vez que foi o que possui a pior avaliação dos usuários.

Isso pode ser justificado devido ao foto de estes comandos serem pré-definidos pelo Cortona, plug-in que interpreta o código VRML, e que foi a escolha para utilização na apresentação.

Nessa análise pode-se perceber que os comandos de navegação do Cortona são simples para as pessoas que já tem afinidade com a Realidade Virtual, mas não para usuários em geral, pois não possuem características tão intuitivas quanto o esperado.

Na tabela 3, podemos perceber que a maioria dos usuários (47%) definiram os comandos com regular.

Tabela 3. Opinião dos usuários quanto aos comandos do protótipo

Classificação Pontos Percentual

Ótimo - -

Bom 6 40%

Regular 7 47%

Baixa 2 13%

Péssimo - -

Total 15 100%

A tabela 3 é expressa na figura 8 abaixo.

Quanto aos comandos

0%10%20%30%40%50%60%70%80%90%

100%

Ótimo Bom Regular Baixa Péssimo

Classificação

Figura 8. Gráfico de análise quanto aos comandos

Logo, chega-se a necessidade de uma implementação própria dos comandos, a fim de torná-los mais intuitivos, uma vez que se fossem acessar o software em suas casas pela Internet por exemplo, teriam grandes dificuldades e não teriam o suporte oferecido no momento da avaliação.

5.4. Quanto a facilidade de utilizar o protótipo

De modo geral, apesar de algumas limitações encontradas

pelos usuários, a grande maioria (60%) avaliou como boa e outros 27% avaliaram como ótima a facilidade de utilizar o protótipo.

Parte dos usuários (13%) avaliou a facilidade de navegação como regular, fazendo algumas observações e sugerindo algumas soluções para que se chegue ao produto ideal.

Page 98: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

97

Voltar ao sumário

Tabela 4. Opinião dos usuários quanto a facilidade de uso

Classificação Pontos Percentual

Ótimo 4 27%

Bom 9 60%

Regular 2 13%

Baixa - -

Péssimo - -

Total 15 100%

O gráfico abaixo é uma representação gráfica da tabela 4.

Quanto a facilidade

0%10%20%30%40%50%60%70%80%90%

100%

Ótimo Bom Regular Baixa Péssimo

Classificação

Figura 9. Gráfico de análise quanto a facilidade

5.5. Quanto a finalidade do protótipo

Por fim, pode-se tirar de conclusão que os usuários de

forma geral avaliaram o protótipo como uma boa iniciativa e que atende à sua finalidade, que é trazer o conhecimento e conseqüentemente o resgate histórico da cidade.

A avaliação dos usuários quanto a finalidade é apresentada abaixo.

Tabela 5. Opinião dos usuários quanto a finalidade do protótipo

Classificação Pontos Percentual

Ótimo 6 40%

Bom 9 60%

Regular - -

Baixa - -

Péssimo - -

Total 15 100%

Quanto a finalidade

0%10%20%30%40%50%60%70%80%90%

100%

Ótimo Bom Regular Baixa Péssimo

Classificação

Figura 10. Gráfico de análise quanto a finalidade do

protótipo

6. 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.

6.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.

7. 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.

Page 99: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

98

Voltar ao sumário

Realidade Virtual não-imersiva como tecnologia de apoio no desenvolvimento de protótipos para o auxilio no tratamento de

aviofobia por profissionais de psicologia

Danielly Cristine Medeiros1, Wender A. Silva2, Edgard A. Lamounier3, Marcos W. Ribeiro1, Alexandre Cardoso3, Nadabe Fortes2

1-Instituto Luterano de Ensino Superior de Itumbiara, 2-Faculdade Atual da Amazônia, 3-Universidade

Federal de Uberlândia [email protected], [email protected], 2- [email protected], [email protected],

3 – [email protected], [email protected]

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.

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.

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. Tratando-se 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

Page 100: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

99

Voltar ao sumário

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. Trabalhos Relacionados

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.

Figura 1. Realidade Aumentada

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.

Figura 2. Ambiente Virtual

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.

Figura 3. Janela do Aeroporto

Page 101: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

100

Voltar ao sumário

Figura 4, Guichês no Aeroporto

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.

3. Desenvolvimento Metodológico

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. 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

Page 102: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

101

Voltar ao sumário

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.

Figura 5. Ambiente externo

Figura 6. Janela do avião - Visão da decolagem (vídeo)

Figura 7. Parte interna da aeronave

5. Avaliação e Resultados

O protótipo de software construído foi apresentado a profissionais da área de psicologia, com o intuito de que os mesmos captassem a idéia do projeto, auxiliando na realização dos testes do sistema.

Foram realizadas avaliações informais, através de um simples questionário baseado no padrão ISO Norm 9241 Usability, questionário este apresentado na seção de anexos I deste trabalho.

Por meio do questionário citado anteriormente foi possível selecionar um grupo de 20 (vinte) alunos do ILES\ULBRA, com perfil de fóbicos. Desta forma possibilitando a realização de alguns teste, facilitando assim o levantamento dos dados a seguir. 5.1 Quanto ao auxílio da identificações dos níveis de fobias

Com relação ao quanto que o protótipo de software

pode ser uma ferramenta de auxílio no tratamento de fobia, assim auxiliando na identificação do nível de fobia do paciente, o protótipo foi apresentado a alguns profissionais de psicologia, da cidade que classificaram o protótipo, como uma ferramenta útil para identificação dos níveis de fobia, conforme a tabela 1 a seguir: Tabela 1: Auxílio na identificação dos níveis de fobia

Classificação Usuários %

Muito útil 2 40%

Útil 2 40%

Pouco útil 1 20%

Total 5 100%

Page 103: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

102

Voltar ao sumário

40% 40%

20%

0%

10%

20%

30%

40%

Usuários

Auxílio na identificação dos níveis de fobia

Muito útil Útil Pouco útil

Figura 8. Gráfico de análise de auxílio É importante ressaltar que foi difícil encontrar

profissionais que se disponibilizassem a auxiliar nesses testes. 5.2 Quanto a interface do protótipo

De acordo com o ponto de vista dos usuários/pacientes

este protótipo é um protótipo que possui uma interface de médio entendimento, devido ainda não termos feitos um menu do próprio ambiente, o usuário/paciente, mostrou-se com um certo receio de uso diante do ambiente, desta forma este trata-se de um dos motivos que levou o usuário/paciente a classificar o ambiente conforme mostra a tabela 2. Tabela 2: Interface do protótipo

Classificação Usuários %

Fácil entendimento 8 40%

Médio entendimento 9 45%

Difícil entendimento 3 15%

Total 20 100%

Conforme o gráfico da figura 9, é possível observar

que realmente os usuários/paciente se deparam com certa dificuldades diante a interface do protótipo.

40%63%

15%

0%

10%

20%

30%

40%

50%

Usuários

Interface do protótipo

Fácil entendimento Médio entendimento Difícil entendimento

Figura 9. Gráfico da interface do protótipo 5.3 Quanto ao nível de interatividade do

protótipo

Foi feito uma analise com relação interatividade dos

usuários/pacientes com o software, para que assim pudesse ser avaliado se o protótipo oferece um nível de interação, onde verificamos se o usuário se sente apto a decidir sozinho com relação a sua navegação, foi possível perceber que logo após o usuário se adaptar com a interface do protótipo, logo ele se sente capaz de navegar sem nenhum auxílio extra pelo ambiente, e quando ele começa a realizar essa navegação, percebe-se que logo que ele sente parcialmente imerso ao se deparar com o ambiente virtual. A tabela 3 abaixo, apresenta percentualmente a análise de interatividade do software. Tabela 3: Interatividade protótipo

Classificação Usuários %

Alto 12 60%

Médio 6 30%

Baixo 2 10%

Total 20 100%

O gráfico da figura 10 representa de forma mais explícita e clara este nível de interatividade que o usuário/paciente consegue terno ambiente virtual.

60%

30%

10%

0%

10%

20%

30%

40%

50%

60%

Usuários

Nível de interatividade do protótipo

Alto Médio Alto

Figura 10. Gráfico do nível de interatividade do protótipo

5.4 Quanto a utilizar o software nas clínicas psicológicas

Novamente foi explicado aos profissionais de psicologia qual o intuito deste protótipo de software, deixando bem claro que busco a desenvolver um produto final que seja uma ferramenta de auxílio no tratamento de aviofobia. Após deixar claro essa inormação sobre o protótipo, perguntamos se eles aceitariam ter uma ferramenta de auxilio como esta em suas clínicas, e de acordo com a tabela 4, tivemos um alto índice de aceitação, veja a seguir.

Page 104: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

103

Voltar ao sumário

Tabela 4: Avaliação da interface do protótipo

Classificação Usuários %

Sim 3 60%

Talvez 2 40%

Não 0 0%

A figura 11 representa graficamente o nível de aceitação dos psicólogos que conheceram o ambiente.

60%

40%

0%

0%

20%

40%

60%

Usuários

O software nas clínicas psicológicas

Sim Talvez Não

Figura 11. Gráfico do nível de interatividade do protótipo

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 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.

8. 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,

Page 105: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

104

Voltar ao sumário

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.

Page 106: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

105

Voltar ao sumário

Proposta de desenvolvimento de um Jogo Eletrônico Educativo para crianças com deficiência auditiva

Ana Cláudia M. T. G. de Oliveira, Lucimara Pin, Maria C. Moretti, Paulo C. A. Miranda, Mateus R. Nardini, Guilherme Y. Mukay,

Raíssa C. Rios, Lígia M. Zoliani, Luiz C.Q. Filho

Centro Estadual de Educação Tecnológica Paulo Souza- FATEC Garça

{anatiessi, lmariusso}@gmail.com; [email protected]; {lucimarapin, karol_moretti, mateusrn87}@yahoo.com.br;

{rios_raissa, paulomariliasp}@hotmail.com; [email protected]

Abstract

This paper presents the design of

an educational game, that has as a main objective to minimize the difficulties of space localization and volumetric knowledge that children with hearing desability present. It's also shown the context of this game with the politics of inclusive education of Brazil, the plot, the characters, the scenes and the used technologies. 1. Introdução

A Realidade Virtual (RV) tem como um dos objetivos principais a construção de Ambientes Virtuais (AV) com características próximas das encontradas no mundo real. Nas aplicações de RV o usuário pode interagir e manipular objetos sintéticos contidos no AV, bem como navegar por este ambiente.

Estas características proporcionam uma base técnica para o desenvolvimento de jogos eletrônicos (JE), visto que estes também exigem AV, objetos 3D, manipulação dos objetos e navegação pelo AV. As técnicas de RV, Realidade Aumentada (RA), Realidade Misturada (ME) são amplamente utilizadas na Computação Gráfica e no desenvolvimento de JE, e no desenvolvimento de aplicações com fins educacionais e no tratamento de reabilitação, como podem se visto em [1], [2] e [3].

A utilização de JE para fins educacionais tem despertado interesse de pesquisadores, professores e

psicopedagogos. O emprego de JE para auxiliar o ensino/aprendizagem é muito difundido e possui grande aceitação tanto pelos educadores quanto pelos alunos, sendo inclusive, amplamente recomendada pelo Ministério da Educação por meio dos Parâmetros Curriculares Nacionais (PCN´s) [4]. Os educadores são estimulados a utilizar JE em diversas disciplinas do ciclo básico, com a finalidade de despertar e desenvolver diversas habilidades dos alunos. Os JE exercem um fascínio ainda maior nas crianças e, diante deste grande interesse, várias pesquisas estão sendo realizadas a fim de desenvolver jogos eletrônicos educativos.

O desenvolvimento de JE consiste em um nicho de mercado promissor e passou a ser visto como mercado heterogêneo e tem atraído pesquisadores de diversas áreas do conhecimento, como a Filosofia, a Semiótica, a Psicologia, a Antropologia, a Ciência da Computação, a Engenharia Elétrica, o Design, a Computação Gráfica, a Educação, a Crítica Literária e a Arte. No Brasil, a indústria dos jogos ainda está em processo de consolidação o que possibilita várias opções para pesquisa e aplicações [5].

Os jogos eletrônicos educativos possibilitam a criação de ambientes de aprendizagem atraentes e gratificantes, constituindo-se em um recurso poderoso de estímulo para o desenvolvimento integral do aluno, permitindo o desenvolvimento de inúmeras habilidades, além da potencialização da aprendizagem de

Page 107: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

106

Voltar ao sumário

conceitos, conteúdos e habilidades embutidas no jogo [6]. Um jogo eletrônico educativo pode propiciar ao aluno um ambiente de aprendizagem rico e complexo.

As características que tornam os jogos eletrônicos educativos intrinsecamente motivadores são o desafio, a fantasia e a curiosidade.

Um fator determinante é a motivação gerada pelo jogo, sendo que motivação é o componente mais importante para o aprendizado [7]. Um dos fatores que mantém a motivação dos jogadores é a acessibilidade e a jogabilidade que são proporcionadas por interfaces adequadas. O sucesso de um jogo é a combinação perfeita de enredo, interface interativa e o motor do jogo. As crianças e jovens já estão acostumados a utilizar jogos como entretenimento, esses jogos, porém não possuem caráter educacional, no entanto, possuem alta tecnologia, possuem ambientes atraentes e diversas formas de interação.

Além desta introdução o artigo é constituído por cinco seções, a saber: na Seção 2 são mostrados os principais conceitos de jogos eletrônicos e dos jogos eletrônicos educativos. Na Seção 3 é apresentada a política de Educação Inclusiva do país. As tecnologias utilizadas na elaboração do jogo são apresentadas na Seção 4. O projeto do jogo, assim como o enredo, os personagens, o ambiente, a narrativa e detalhes da implementação são tratados na Seção 5 e os resultados na Seção 6 e, finalmente, as referências empregadas na elaboração deste artigo. 2. Jogos Eletrônicos

Os JE são considerados uma das mais expressivas práticas de entretenimento nos dias atuais, eles podem ser definidos de diversas formas, entretanto os conceitos mais significativos filtram os jogos como programas de entretenimento cuja plataforma é um computador. Os usuários utilizam os jogos de computador para várias funções, dentre elas divertimento, ensino e profissionalização, pois os computadores apresentam uma grande diversidade, desde jogos simples até

jogos complexos onde a parte gráfica é perfeita [8]. Os JE dispõem de classificações que definem características de interface com implicações claras nas técnicas de implementação, ou seja, permitir a interação com ele. Dentre essas classificações as mais comuns são [9]:

First Person Shooter (FPS): jogos de ação em que o jogador tem uma visão em primeira pessoa e tem como objetivo eliminar adversários [9].

Estratégia: o jogador controla diversos personagens e estruturas que são criados dentro do jogo a partir de recursos limitados.

RPG: A principal característica desses jogos é a possibilidade de evolução do personagem controlado pelo jogador, cujas capacidades melhoram conforme se alcança algum objetivo.

Simulação: jogos que simulam alguma atividade real, como o crescimento e gerenciamento de uma cidade ou a vida de um indivíduo. Esta categoria possui três subcategorias: Esportes, Simuladores de vôo e Corridas.

Ação: JE em que a ação intensa é o principal componente, sem grande preocupação com elementos como gerenciamento de recurso ou evolução do personagem.

Aventura: JE em que o principal obstáculo é puzzles e onde o elemento e em que o elemento de ação é inexistente.

Na classificação apresentada não foram citados os jogos eletrônicos educativos, pois se entende que entram em outra classificação com base no público alvo e não apenas em características como desafio ou obstáculo.

2.1. Jogos Eletrônicos Educativos

A utilização de JE como ferramenta de auxilio na área educacional vem se tornando uma prática aceita com sucesso dentro de instituições de

Page 108: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

107

Voltar ao sumário

ensino, unindo ao lúdico, formas de aprendizagem.

A área de jogos educacionais ainda é pouco explorada no mercado da computação, sendo que o principal motivo é a dificuldade em criar um jogo educacional que seja interessante ao jovem, visto que os jogos educativos, na sua maioria, possuem muito conteúdo e não proporcionam desafios, além de não possuírem ambientes 3D interessantes como os encontrados em jogos comerciais. Outro fator que causa desmotivação no uso dos jogos educacionais é que utilizam somente os dispositivos convencionais (mouse e teclado) [10].

A aprendizagem por intermédio de jogos eletrônicos ainda se apresenta como um campo a ser explorado. Nas últimas décadas, as discussões e estudos relacionados à utilização de computadores em escolas tornam-se cada vez mais freqüentes. Assim sendo, pesquisas e desenvolvimento de softwares educacionais têm sido realizados no Brasil, aproximadamente há trinta anos. O interesse por jogos eletrônicos encontrou maior desenvolvimento no mercado comercial, mas cresce a passos lentos e receosos no contexto educacional[11]. O mercado brasileiro dispõe de uma considerável gama de software educativos. Estes são ferramentas que oferecem suporte para ensinar conceitos, geralmente, de difícil compreensão para alguns alunos, porém não despertam o interesse nas crianças e adolescentes tanto como os jogos comerciais.

Além de estimular o aluno instigando a aprendizagem com desafios e o cumprimento de tarefas, o computador oferece desenvolvimento mental e motor, por estes motivos sua utilização tem obtido resultados significativos quando utilizados com crianças que possuem necessidades especiais, diminuindo barreiras que possam tornar o aprendizado destas, mais complexo.

Essas ginásticas mentais de forma divertida aumentam a rede de conexões neurais e alteram o fluxo sanguíneo no cérebro quanto este se encontra em estado de concentração [12].

É imprescindível que os educadores disponham de treinamento adequado para a melhor utilização do software, desde as atividades propostas até obter o conhecimento para responder a possíveis questões que possam surgir no decorrer da aula. Para isso o professor deve sempre conhecer como em qualquer outra matéria lecionada o conteúdo ao qual o aluno será submetido. O professor deixa de ser comunicador e passa a ser mediador, fornecendo algumas coordenadas e instigando assim a reflexão do aluno e sua socialização [13].

3.Educação Inclusiva no Brasil

Uma das grandes incertezas vivenciadas pela escola atualmente é a inclusão de crianças com necessidades educativas especiais junto às demais crianças ditas “normais”, pois ainda há dúvidas e receios por parte dos profissionais em educação [14]. Alguma das atitudes tomadas em relação aos deficientes foi a educação especial acompanhada da inclusão desses portadores ao meio social, dando-lhes oportunidade de serem inseridos em um ambiente propício ao desenvolvimento intelectual desses.

De acordo com a Lei de Diretrizes e Bases para a Educação Nacional, Lei nº 9.394 [15], a Educação Especial é definida por modalidade de educação escolar, oferecida preferencialmente na rede regular de ensino, para pessoas com necessidades educacionais especiais. Assim, ela passa transversalmente todos os níveis de ensino, desde a educação infantil ao ensino superior. Portanto, para alcançar essa meta é fundamental enfrentar o desafio de tornar a escola um espaço aberto à diversidade e adequado ao ensino de todo e qualquer aluno, incluindo as pessoas com necessidades educativas especiais (PNEE´s). Sobre a inclusão parte-se da necessidade de uma mudança na sociedade como primeira etapa para que o portador de necessidades especiais, seja aluno ou não, possa construir seu desenvolvimento e desempenhar o seu papel de cidadão. O conceito de inclusão defende a idéia

Page 109: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

108

Voltar ao sumário

de que todas as crianças podem aprender e fazer parte de uma vida escolar e comunitária para que haja uma oportunidade de aprendizagem [14].

O Ministério da Educação (MEC), por meio da Secretaria de Educação Especial (SEESP) propõem que as PNEE´s sejam inseridas, quando possível, em salas convencionais e que participem de todas as atividades com as outras crianças. Acreditam que desta forma haja uma maior motivação e desenvolvimento cognitivo por parte das PNEE´s [16].

Para as necessidades especiais convencionou-se mundialmente adotar a seguinte classificação: deficiência física (tetraplegia, paraplegia e outras), deficiência mental (leve, moderada, severa e profunda), deficiência auditiva (total ou parcial), deficiência visual (cegueira total ou visão reduzida) e deficiência múltipla (duas ou mais deficiências associadas) [17] e [18]. Cada uma dessas deficiências possui ainda, graus de variação. Assim, torna-se necessário desenvolver aplicações para cada necessidade especial, considerando os diversos graus de variação, pois os problemas de aprendizagem existentes em cada uma delas são diferentes e devem ser tratados de forma específica. Desta forma, é possível desenvolver as habilidades comprometidas pela deficiência.

Este projeto se enquadra no contexto no projeto de educação especial no se diz respeito a inclusão, pois se pretende que este jogo auxilie no processo de inclusão social e digital de crianças com deficiência auditiva. 4. Tecnologias Utilizadas

Para o desenvolvimento do jogo eletrônico educativo optou-se pela utilização, exclusiva, de tecnologias livres. As tecnologias empregadas são: linguagem de programação Java [19] e sua API Java3D [20], o game EnJine [21]e[22], Blender [23] e Eclipse [24]. Java é uma linguagem de programação

orientada a objeto que além de ser gratuita para o uso, também tem certa

portabilidade. Além disso, é uma linguagem distribuída já com um grande número de Application Programming Interface (API´s), o que facilita seu uso, pois os programadores Java podem reutilizar os códigos criados em escala mundial por outros programadores, podendo assim ter acesso a classes que reproduzem as mais diversas funções para que a codificação do programa fique mais simples e concisa. A utilização do conceito de herança também acrescenta muito para o programador, pois além de utilizar as classes disponíveis pelas API´s, o programador ainda pode criar suas próprias classes e reutilizá-las em outros projetos [19]. Para o jogo em questão, será

utilizada uma API da linguagem Java, conhecida como Java3D, a qual permite a manipulação/criação de objetos e de um universo tridimensional [20]. Java3D é mais uma interface para a linguagem Java na qual é possível criar elementos tridimensionais e aplicações com gráficos 3D e som de uma maneira interativa com um possível usuário [25]. A programação em Java3D é estruturada de uma maneira diferente, nela são utilizados grafos de cena. O grafo de cena é uma estrutura de árvore de dados utilizada para armazenar, organizar, e renderizar informações de cena 3D como objetos, materiais, luzes e outros elementos da cena. Essas informações de cena 3D são conhecidas nos grafos como nós [25]. A palavra Game Engine traduzida

para o português significa motor de jogo e, representa o núcleo deste, ou seja, trechos de códigos que podem ser reutilizados para outras finalidades. No presente projeto é utilizado o EnJine que é desenvolvido pelos componentes do Interactive Technologies Laboratory (Interlab) na Universidade de São Paulo [22], e utiliza a API do Java 3D e partilha a multiplataforma e características orientadas a objetos da linguagem Java. O EnJine é composto por um conjunto de bibliotecas que visam simplificar o desenvolvimento de jogos e simulações em tempo real. EnJine é um motor de jogos de

código aberto que tem fins didáticos,

Page 110: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

109

Voltar ao sumário

auxiliando o ensino do desenvolvimento de jogos e Ciência da Computação, especialmente das disciplinas de Computação Gráfica e Engenharia de Software. Para a modelagem dos Ambientes

Virtuais, avatares e objetos 3D que irão compor as cenas foi escolhido o Blender que é um software livre sob a licença GNU GPL com ferramentas profissionais de modelagem 3D, animação e finalização. O Blender foi criado por Ton Roosendal, que até hoje é o principal desenvolvedor do software e fundador da Fundação Blender, dedicada à continuidade e aperfeiçoamento do Blender [23]. Optou-se pelo uso do Blender no

projeto por atender às necessidades deste no que se refere a modelagem de objetos tridimensionais, importação e exportação para formatos compatíveis com Java 3D como “.OBJ” e “.X”. Os arquivos “.X” proporcionam a possibilidade de importar a animação dos objetos e cenas gráficas, além de objetos 3D e ambientes mais complexo. O Eclipse consiste em um Integrated

Developement Environment (IDE) open source criada para a integração de ferramentas de desenvolvimento, mesmo que estas sejam oriundas de fornecedores diferentes, é independe de Sistema Operacional e é extensível por meio de Plugins.

Para a modelagem do projeto também é utilizado o Eclipse, por meio do OMONDO EclipseUML, um plugin para o Eclipse que auxilia a construção de diagramas Unified Modeling Language (UML)[26]. 5. Projeto do Jogo

O projeto do jogo apresentado neste artigo ainda está em fase de análise, modelagem do projeto e modelagem os objetos 3D, avatares e cenários. Este projeto é desenvolvido por alunos de graduação e membros do Projeto de Jogos Eletrônicos Educativos para PNEE´s.

Inicialmente, o jogo tem como objetivo auxiliar crianças com deficiência auditiva na faixa etária de 6 a 10 anos. Esta deficiência acarreta algumas dificuldades, dentre elas: localização espacial; locomoção; o equilíbrio estático e

dinâmico; percepção de distância, profundidade e distinção de formas geométricas. Estas dificuldades são ocasionadas pelo fato pessoas com deficiência auditiva não identificarem objetos ou eventos gerados pelos sons que os mesmos produzem devido ao mau funcionamento das estruturas da orelha externa, média e interna.

Pretende-se que este jogo contribua para minimizar as limitações dessas crianças, valorizar sua capacidade individual e estimular a percepção espacial e empregar conceitos de: locomoção, formas e cores, num ambiente cotidiano para a criança e ao mesmo tempo lúdico, que proporcione a interação da mesma - auxiliando assim o ensino da geometria espacial de maneira sutil, para que a criança fique envolvida com o jogo e que ele não se torne cansativo ou desinteressante para ela.

A inclusão de tarefas relacionadas ao conteúdo didático/pedagógico será idealizada juntamente com educadores, psicopedagogos e fonoaudiólogos. Posteriormente, pretende-se deixar o jogo extensivo para outras deficiências, tais como dificuldade de aprendizado e/ou motora.

O enredo do jogo proposto foi idealizado com base em locais e objetos já conhecidos pelas crianças. O jogo será em terceira pessoa, pois entende-se que a criança vendo o seu avatar no ambiente do jogo, esta terá desenvolvida sua percepção tridimensional, além da localização espacial.

A criança deve manipular objetos 3D com diversas formas, tamanhos e cores, navegar pelo quarto, casa, caminho para a escola e dentro da escola serão incluídos, mais explicitamente os conceitos matemáticos já citados.

Com o objetivo de auxiliar o desenvolvimento da percepção espacial optou-se por um jogo em terceira pessoa. Desta forma, a criança pode ver o seu avatar no ambiente 3D que representa o cenário do jogo. Na tentativa de aumentar o interesse das crianças e aumentar a amplitude do jogo é oferecida a possibilidade de customizar os avatares (personagens) e o cenário.

Page 111: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

110

Voltar ao sumário

Quanto ao cenário foram escolhidos objetos comuns em quartos infantis, e ambientes encontradas em casa e na escola. Quando o usuário escolhe o sexo, automaticamente, o cenário relacionado ao quarto é configurado de acordo com o sexo escolhido. Na Figura 1 é apresentada a opção do quarto feminino.

Figura 1 – Cenário do quarto feminino Em relação ao avatar o usuário

pode escolher o sexo, a roupa, cor do cabelo e cor da pele. Na Figura 2 e 3 são apresentadas duas opções de personagens. Por se tratar de um jogo eletrônico educativo com público alvo infantil utilizou-se na modelagem uma paleta de cores vivas e personagens com traços faciais suaves e infantis.

Figura 2 – Avatar feminino

Figura 3 – Avatar masculino

Para a interação optou-se pela

Linguagem Brasileira de Sinais (LIBRAS) que será empregada por meio do Vídeo Avatar, projeto realizado pelos integrantes do Interlab dentro do projeto de Aprendizado Eletrônico do Tidia-AE [27]. Por meio do vídeo avatar é possível filmar uma pessoa utilizando LIBRAS e depois carregá-la no ambiente 3D, como se fosse um objeto modelado.

Assim, pretende-se que o menu e a explicação de cada fase sejam feita por meio do Vídeo Avatar. Outra forma que se pretende utilizar para proporcionar a interação é a escrita de sinais. Pretende-se utilizar uma interface gráfica para edição de textos na Língua Escrita dos Sinais, oferecendo simultaneamente a tradução para o português. Para complementar o aplicativo, o projeto ainda oferece a criação de um teclado físico em Signwriting. Para a navegação e seleção/manipulação dos objetos serão utilizados o teclado e mouse.

Projetou-se o jogo em quatro fases a saber: a 1ª fase acontece dentro do quarto, nesta fase as tarefas são simples, tais como escolher determinados objetos pelas cores,

Page 112: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

111

Voltar ao sumário

forma e/ou tamanhos; na 2ª fase o cenário representa o interior de uma casa e, nesta fase as tarefas ganham um pouco mais de dificuldade tendo como objetivo a realização de tarefas cotidianas; na 3ª fase a criança recebe instruções sobre o trajeto que deve percorrer para chegar até a escola, nesta fase estão incluídas instruções mais complexas sobre locomoção, senso de direção (atravessar a rua, virar uma esquina, se localizar a partir de um local específico, como por exemplo uma praça ou prédio) e charadas (que indicam o caminho,finalmente, a 4ª fase, é realizada no interior de escola e inclui todos os desafios das fases anteriores e acrescenta o conteúdo pedagógico, tais como, exercícios aritméticos e charadas contendo conceitos de geometria espacial. 6. Resultados Esperados

O jogo ainda está na fase de desenvolvimento e até o momento foram definidos detalhes quanto aos avatares, cenários e objetos tridimensionais, bem como as atividades que serão aplicadas em casa uma das fases.

Além do aspecto educacional, espera-se apresentar como contribuição um jogo eletrônico com ambiente tridimensional de qualidade e com técnicas de interação que promova a inclusão social e digital de PNEE´s. Pretende-se também utilizar técnicas de Engenharia de Software, a fim de implementar um projeto de qualidade, para que possa ser facilmente adaptados técnicas de interação, dispositivos de entrada e saída, assim como jogos específicos para outras necessidades educativas especiais. 7. Referências [1] R. V. ARRUDA ; M. W. S. RIBEIRO. Uma ferramenta de auxílio ao ensino de história por meio da reconstituição de ambientes históricos utilizando tecnologias de Realidade Virtual não-imersiva. In: X SYMPOSIUM OF VIRTUAL AND AUGMENTED REALITY, 2008, JOÃO PESSOA-PB. Proceedings.... Porto Alegre-RS : SBC, 2008. p. 367-370.

[2] M. S. GUIMARÃES; L. A. V. de, CARVALHO; R. M. E. M. COSTA. Ambientes Virtuais na prática educacional de crianças com Transtorno de Déficit de Atenção e/ou Hiperatividade. In: IX Symposium on Virtual and Augmented Reality. Proceedings... Petrópolis : LNCC, 2007, p. 123-132. [3] J. G. de S. PAIVA; A. CARDOSO; E. LAMOUNIER. Interface for Virtual Automotive route creation in driving phobia treatment. In: VIII symposium on virtual Reality. Proceedings… Belém: CESUPA, 2006. p. 27-38. [4] BRASIL (1997). Secretaria de Educação Fundamental. Parâmetros curriculares nacionais: Matemática / Secretaria de Educação Fundamental. – Brasília: MEC/SEF, 1997. p.142. [5] F. MOITA. Games: Contexto Curricular e Cultural Juvenil. 2006. 181 f. Grau: (Doutorado em Educação). Universidade Federal da Paraíba (UFPB). 2006. [6] S. R. SILVEIRA; M. GELLER; G. A. M.FALKEMBACH. Desenvolvimento de Jogos Educativos Digitais utilizando Ferramentas de Autoria Multimídia: um estudo de caso com o ToolBook Instructor. Renote Revista de Novas Tecnologias na Educação, v. 4, n. 1, 2006. [7] A. L. BATTAIOLA; N. ELIAS; R. G. DOMINGUES. Desenvolvimento de um Software Educacional com Base em Conceitos de Jogos de Computador In: XIII Simpósio Brasileiro de Informática na Educação. São Leopoldo: SBC, 2002, pp. 282-290. [8] ABRAGAMES. A Indústria de Desenvolvimento de Jogos Eletrônicos no Brasil. 2005. Disponível em: http://www.abragames.org/docs/PesquisaAbragames.pdf. Acesso em: 27 ago. 2008. [9] R. TORI; R. NAKAMURA; J. L. BERNARDES JR., R. C. BIANCHINI; E. JACOBER, D. CALIFE; A. TOMOYOSE. Jogos e Entretenimento com Realidade Virtual e Aumentada. In: Claudio Kirner; Robson Siscoutto. (Org.). Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicações. Porto Alegre: SBC, 2007,p. 192-222. [10] E. W. G. CLUA; J. R. BITTENCOURT. Uma Nova Concepção para a Criação de Jogos Educativos. In: XV Simpósio Brasileiro da Informática na Educação. Manaus 2004. Mini-curso. Disponível em: <sbie2004.ufam.edu.br/anais_cd/anaisvol2/Minicursos/Minicurso_03/minicurso_03.pdf> Acesso em: ago. 2008.

Page 113: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

112

Voltar ao sumário

[11] A. E. PRINCE. A importância dos softwares na educação área temática: A escola do futuro subárea: A função do professor na escola: aulas digitais. Disponível em: http://aveb.univap.br/opencms/opencms/sites/ve2007neo/pt-BR/imagens/27-06-07/Ticxs/trabalho_147_anaenedi_anais.pdf. Acesso em 07 set 2008. [12] L. M. TAROUCO et al. Jogos Educacionais. Novas Tecnologias na Educação, CINTED-UFRGS. Disponível em: http://www.cinted.ufrgs.br/ciclo3/af/30-jogoseducacionais.pdf. Acesso em 09 set 2008.

[13] G. S. de A. SANTOS. Utilização de jogos no ensino matemático. Os objetivos, os valores e as mudanças do ensino da matemática. UNIMESP – Centro Universitário Metropolitano de São Paulo. Novembro/2006. Disponível em: http://www.unimesp.edu.br/arquivos/mat/tcc06/Artigo_Greice_Saugo_de_Amaral_Santos.pdf. Acesso em 01 set 2008. [14] J. P. A.GIL; C. SCHEEREN; H. D. LEMOS; S. M. FERREIRA. O significado do jogo e do brinquedo no processo inclusivo: Conhecendo novas Metodologias no cotidiano escolar. 200-?. Disponível em:<www.pedagobrasil.com.br/educacaoespecial/osignificadodojogo.htm>. Acesso em: abr. 2008. [15]BRASIL (1996). Lei de Diretrizes e Bases da Educação Nacional, Lei nº 9.394, de 20 de dezembro de 1996.Disponível em:< http://www.unifesp.br/reitoria/reforma/ldb.pdf>. Acesso em: set. 2008. [16] BRASIL (1999) Ministério da Educação (1999). Secretaria de Educação Especial. Parâmetros Curriculares Nacionais: adaptações curriculares – estratégias para a educação de alunos com necessidades educativas especiais. Brasília: MEC. [17]R. K. SASSAKI. Terminologia sobre deficiência na era da inclusão. In: Revista Nacional de Reabilitação, ano V, n. 24, jan./fev. 2002, p. 6-9.

[18] R. BARWALDT; L. M. C. SANTAROSA. Promovendo Inclusão e Acessibilidade através de soluções sonoras para pessoas com limitações visuais na formação profissional e acadêmica pelo ambiente de EAD teleduc: alternativas e desafios. In: Congresso Tecnoneet -CIIEE 2006, 2006, Murcia. Las Tecnologias en la Escuela Inclusiva, 2006. p. 203-210. [19] SUN. Java SE Key Features. Disponível em: <http://java.sun.com/javase/6/features.jsp>. Acesso em: set. 2008. [20] Sun Java3D Disponível em: <http://java.sun.com/javase/technologies/desktop/java3d/>. Acesso em: ago. 2008. [21] R. NAKAMURA; J. L. BERNARDES JR.; R. TORI. enJine: Architecture and Application of an Open-Source Didactic Game Engine. In: V Brazilian Symposium on Computer Games and Digital Entertainment (SBGAMES 2006), 2006, Recife. DIGITAL PROCEEDINGS of the V Brazilian Symposium on Computer Games and Digital Entertainment. Porto Alegre : SBC, 2006. p. 1-7. [22] INTERLAB Homepage. Disponível em: http://www.pcs.usp.br/~interlab . Acesso em: ago. 2008. [23] Blender Homepage. Disponível em: < http://www.blender.org>. Acesso em: set. 2008. [24] Eclipse Homepage. Disponível em: < http://www.eclipse.org/>. Acesso em: set. 2008. [25] F.SCHÜTZ; R. R. COELHO. API Java 3D em Jogos: Estudo de Caso do jogo Fanzzer Wings. Disponível em: www.tecsul.org.br:8080/tecsul/CDTECSUL/artigos/01.doc. Acesso em: 11 set. 2008. [26] Omondo Homepage. Disponível em:< http://www.ejb3.org/index.html>. Acesso em: set. 2008. [27] Tidia-AE. Aprendizagem Eletrônica homepage (2008). Disponível em: <http://tidia-ae.incubadora.fapesp.br>. Acesso em: abr. 2008.

Page 114: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

113

Voltar ao sumário

Sistema de Criação de Ambientes Virtuais para a Educação Inclusiva

Fernanda Francielle de Oliveira, Alexandre Cardoso e Edgard Lamounier Jr. Programa de Pós Graduação em Engenharia Elétrica

Universidade Federal de Uberlândia, UFU [email protected], [email protected], [email protected]

Abstract

The worldwide movement for the inclusive education is an action in defense of the right of all students to be together, learning and participating without any kind of discrimination. The difficulties found in the educational systems show, then, the need to confront discriminatory practices and create alternatives to overcome them. From this perspective, this article aims to propose the development of an authoring tool that will allow teachers to create virtual learning environments in order to assist the process of inclusive education.

Resumo

O movimento mundial pela educação inclusiva é uma ação desencadeada em defesa do direito de todos os alunos de estarem juntos, aprendendo e participando, sem nenhum tipo de discriminação. As dificuldades enfrentadas nos sistemas de ensino evidenciam, então, a necessidade de confrontar as práticas discriminatórias e criar alternativas para superá-las. Nesta perspectiva, este artigo visa apresentar uma proposta de desenvolvimento de uma ferramenta de autoria que permita aos professores criar ambientes virtuais educativos a fim de auxiliar o processo de educação inclusiva.

1. Introdução

No momento atual, em que se discute a oferta de escolarização para crianças com deficiência ou com necessidades educacionais especiais, existe uma tendência mundial no sentido de valorizar as políticas inclusivas [2].

A educação inclusiva pode ser entendida como uma tentativa de atender as dificuldades de aprendizagem de qualquer aluno no sistema educacional e como um meio de assegurar que os alunos que apresentam alguma deficiência tenham os mesmos direitos que os

outros, ou seja, os mesmos direitos que os seus colegas têm de ser escolarizados em uma escola regular [12].

No entanto, as limitações do indivíduo com deficiência tendem a tornar-se uma barreira a esta tentativa. Uma das dificuldades que estas limitações apresentam são os preconceitos a que o indivíduo com deficiência está sujeito.

Segundo Schirmer et al. [13], uma maneira concreta de combater estes preconceitos e neutralizar as barreiras causadas pela deficiência, seria o desenvolvimento e disponibilização de tecnologias assistivas, pois no momento em que são dadas as condições para o aluno com deficiência, interagir e aprender, explicitando o seu pensamento, o mesmo se sente mais motivado e com maior auto-estima.

Os autores Albert Cook e Susan Hussey [4] definem a Tecnologia Assistiva baseados no ADA – American with Disabilities Act, como “uma ampla gama de equipamentos, serviços, estratégias e práticas concebidas e aplicadas para minorar os problemas funcionais encontrados pelos indivíduos com deficiências”. São consideradas tecnologias assistivas, desde artefatos simples, denominados recursos de baixa tecnologia, como um lápis com uma empunhadura mais grossa para facilitar a preensão, até sofisticados programas especiais de computador, denominados recursos de alta tecnologia [7].

O objetivo das tecnologias assistivas é buscar, com criatividade, uma estratégia para que o aluno realize o que precisa ou o que deseja. É valorizar o seu jeito de fazer e aumentar suas capacidades de ação e interação a partir de suas habilidades. É criar novas alternativas para a comunicação, escrita, mobilidade, leitura, brincadeiras, artes e utilização de materiais escolares e pedagógicos. É envolver o aluno ativamente, desafiando-o a experimentar e conhecer, permitindo que construa individual e coletivamente novos conhecimentos. É retirar do aluno o papel de expectador e atribuir-lhe a função de ator.

Pesquisas mostram que a Realidade Virtual também pode ser considerada como uma tecnologia assistiva para educação especial [10]. Isto deve-se ao fato de a mesma permitir que alguns ambientes,

Page 115: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

114

Voltar ao sumário

processos ou objetos sejam explorados pelos aprendizes não através de livros, fotos, filmes ou aulas expositivas, mas através da manipulação e análise virtual do próprio alvo do estudo.

A Realidade Virtual oferece, então, novas possibilidades para a educação inclusiva, pois permite que os alunos com deficiência ou com necessidades educacionais especiais, apreendam os conhecimentos transmitidos pela escola de forma prazerosa e ativa.

Diante disso, este artigo propõe o desenvolvimento de uma ferramenta de autoria que permita aos professores do ensino fundamental, criar ambientes virtuais de ensino-aprendizagem para auxiliar o processo de educação inclusiva.

Inicialmente, a ferramenta será voltada para a criação de ambientes de ensino de geometria e matemática para alunos com necessidades educacionais especiais ou com os seguintes tipos de deficiência: baixa visão, surdez, deficiência mental e distúrbios neuromotores.

Pretende-se que essa ferramenta possa servir de apoio a práticas pedagógicas diferentes das tradicionais, despertando uma maior motivação nos processos de ensino-aprendizagem destes alunos. 2. Educação Inclusiva e o uso de Tecnologias Assistivas 2.1 Recursos de Acessibilidade

No Brasil o Ministério da Educação implementou o “Programa Educação Inclusiva: Direito à Diversidade” que visa disseminar a política de inclusão e apoiar o processo de construção e implementação de sistemas educacionais inclusivos nos municípios brasileiros.

Tal programa pressupõe o desenvolvimento de ações estruturadas para atender as especificidades de cada aluno no processo educacional, dentre elas, a ampliação da oferta de recursos e serviços que assegurem condições de acessibilidade às pessoas com necessidades educacionais especiais.

Existe um número incontável de possibilidades, de recursos que podem e devem ser disponibilizados nas salas de aula inclusivas, conforme as necessidades específicas de cada aluno.

Com muita freqüência, a disponibilização de recursos e adaptações bastante simples e artesanais, às vezes pesquisados e desenvolvidos por seus próprios professores, torna-se a diferença, para determinados alunos com deficiência, entre poder ou não estudar e aprender junto com os demais colegas. A figura 1, por exemplo, mostra um dominó de figuras geométricas. Este dominó é feito de madeira e possui figuras geométricas de diversas cores em alto relevo. Sob cada

peça foi colocado um imã. As peças são utilizadas sobre um tabuleiro de latão revestido com papel contact.

Figura 1 – Dominó de figuras geométricas. Mas atualmente, sabe-se que as novas Tecnologias

de Informação e Comunicação vêm se tornando cada vez mais importantes instrumentos de nossa cultura e, sua utilização, um meio concreto de inclusão e interação no mundo. Essa constatação é ainda mais evidente e verdadeira quando se refere á pessoas com deficiência. Uma pessoa com deficiência física, devido à sua limitação de mobilidade e comunicação tende a usar mais o computador e por meio dele, passa a ter acesso a lugares e conhecimentos de seu interesse. Para aqueles que possuem necessidade de comunicação, o computador pode se tornar uma ferramenta de expressão quando utilizado para transmitir idéias, necessidades ou sentimentos [12].

Em alguns casos, o computador em si pode ser considerado como Tecnologia Assistiva. Isso acontece quando o próprio computador é a ajuda técnica utilizada para atingir um determinado objetivo. Por exemplo, o computador utilizado como caderno eletrônico, para o indivíduo que não consegue escrever no caderno comum de papel.

Em outros casos, o computador pode ser utilizado por meio de Tecnologias Assistivas. Ele é utilizado por meio de Tecnologias Assistivas, quando o objetivo final desejado é a utilização do próprio computador. Neste caso são necessárias determinadas ajudas técnicas que permitam ou facilitem a realização dessa tarefa. Como exemplos de ajudas técnicas podem ser citados:

• órteses: uma órtese que pode ser utilizada é o estabilizador de punho e abdutor de polegar com ponteira para digitação (Figura 2), para alunos, principalmente com paralisia cerebral;

• adaptações de teclado: um dos recursos mais simples eficientes é a máscara de teclado, ou colméia (figura 3). Trata- se de uma placa de plástico ou acrílico com um furo correspondente

Page 116: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

115

Voltar ao sumário

a cada tecla do teclado, que é fixada sobre o teclado, a uma pequena distância do mesmo, com a finalidade de evitar que o aluno com dificuldades de coordenação motora pressione, involuntariamente, mais de uma tecla ao mesmo tempo;

• adaptações de mouse: um exemplo é o Switch Mouse (Figura 4), um dispositivo que substitui a ação do mouse convencional através de sete acionadores de toque simples, permitindo os movimentos direcionais do cursor, clique simples ou duplo e clique direito do mouse. Cada acionador é uma caixa independente podendo ser disposta conforme a habilidade/necessidade do usuário. Apresenta chave liga/desliga para a função arrastar;

• softwares especiais: como por exemplo, os teclados virtuais (Figura 5). Um Teclado Virtual é um utilitário de acessibilidade que exibe um teclado na tela do computador, permitindo que as pessoas com problemas de movimentos digitem os dados usando um dispositivo ou joystick de apontamento.

Figura 2 – Estabilizador de punho e adbutor de polegar com ponteira para digitação.

Figura 3 – Máscara de teclado ou colméia.

Figura 4 – Switch Mouse

Figura 5 – Teclado Virtual do Windows XP

2.2 Realidade Virtual aplicada a Educação Especial

A Realidade Virtual (RV) [14] pode ser definida como uma “interface avançada do usuário” 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. Uma das características das linguagens de programação da realidade virtual é a possibilidade de criar representações virtuais de sistemas físicos. Torna-se possível, então, representar sistemas complexos, caros ou perigosos, com segurança e economia na tela de um computador.

A RV vem se disseminando rapidamente em várias áreas do conhecimento e se mostrando como uma ferramenta particularmente interessante para a educação. Nesta área, a RV tem sido utilizada com bastante êxito, proporcionando, inclusive algumas mudanças no processo educacional [6].

Existem várias aplicações de RV desenvolvidas para a área de educação. Como exemplo pode-se citar o projeto Escola TRI-Legal [15] e o LudosTop [8].

O projeto Escola TRI-Legal consiste na criação de um ambiente virtual, com o objetivo de simular uma

Page 117: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

116

Voltar ao sumário

escola virtual em três dimensões, onde os estudantes, navegando no ambiente, poderão ter acesso a diversos jogos como instrumentos de educação. Inicialmente, o ambiente foi projetado para atender aos alunos de ensino fundamental, sendo que a estrutura do mesmo foi organizada de forma a representar as diversas disciplinas envolvidas na aprendizagem de 5º a 8º séries.

O LudosTop é um ambiente de aprendizagem voltado para conteúdos matemáticos e tem como público alvo, estudantes do Ensino Fundamental (2ª e 3ª séries). O seu projeto pedagógico foi baseado na teoria do desenvolvimento intelectual de Jean Piaget. Este software envolve estratégias de jogo, com o objetivo de motivar a faixa etária em questão.

Mais especificamente na educação especial, o uso de Realidade Virtual ainda precisa ser bastante explorado pelos educadores e instituições. A RV amplia as possibilidades para a educação especial, pois segundo Matos (2008) [9] o uso da RV tende a promover um novo paradigma educacional, onde os estudantes não só recebem informações, mas também interagem entre si, podendo, ainda, manipular o alvo que deve ser analisado, explorado e estudado.

O uso da Realidade Virtual expande os processos normais de aprendizado, principalmente da criança deficiente, que é encorajada a participar de um processo criativo e imaginário, que torna possível aprender “brincando”, coisas que através de métodos tradicionais levaria mais tempo para ser aprendidas.

De acordo com os autores Costa e Carvalho (2001) [5], a RV facilita o acesso a exercícios que estimulam variadas habilidades, sejam cognitivas ou motoras, através de ambientes virtuais, que possibilitam associações mais diretas com as tarefas da vida diária. Ainda de acordo com os mesmos, vários autores acreditam que a RV apresenta inúmeras vantagens em relação a outras tecnologias, já que:

• permite a participação de pessoas com incapacidades físicas ou mentais;

• propicia um ambiente motivador para a aquisição de conhecimentos e aprendizagem;

• possui características que facilitam o estudo do desempenho humano e suas capacidades perceptuais e motoras;

• apresenta recursos que ilustram a compreensão de conceitos abstratos;

• permite a observação de cenas em diferentes distâncias e ângulos;

• oferece oportunidade de vivência de situações de maneira individualizada;

• encoraja a participação ativa do usuário;

• disponibiliza recursos para que o usuário pratique procedimentos que podem ser realizados posteriormente no mundo real.

Em [10] também são citadas as diversas vantagens do uso de RV para crianças com deficiência. Segundo os autores, a RV tem o potencial de melhorar a vida destas crianças, já que até mesmo crianças com grandes deficiências podem explorar ambientes ou manipular objetos sem que estejam limitadas por suas deficiências. Esta liberdade de movimentos permitida pela RV dá a essas crianças uma sensação de controle sobre o ambiente.

A RV em seu conjunto reúne especificidades e atributos que a torna a ferramenta ideal para as múltiplas situações e contextos de pesquisa e aprendizagem.

Na educação especial cada aluno possui uma deficiência ou uma necessidade educacional diferente. Mas o interessante da Realidade Virtual é que para cada um desses alunos ela pode ser usada de forma diferente. 3. Ferramentas de Autoria

Existem diversas ferramentas de autoria aplicadas à

área de educação, tais como a ferramenta Alice [1], o Visual Class [16] e o KidWeb [11]. Nesta seção serão discutidas as vantagens e desvantagens de cada uma destas ferramentas e serão explicitadas as diferenças entre as mesmas e a ferramenta proposta neste artigo.

Alice é uma ferramenta para criação e animação de mundos tridimensionais, definida para ser fácil de programar e modificar. De forma a evitar que usuários necessitem estudar e aprender conceitos relacionados à computação gráfica ou realidade virtual, Alice provê suporte a requisitos destas áreas, sem a exigência do aprendizado de tais conceitos.

Uma das desvantagens da ferramenta é o fato de a mesma estar disponível apenas na língua inglesa.

Além disso, em [3], foram identificadas algumas limitações desta ferramenta, tais como:

• a necessidade de aprendizado de uma linguagem específica concebida para definir os movimentos dos objetos na cena; estas linguagens são compostas por comandos que fazem uso de conceitos não familiares a usuários que não estejam acostumados a linguagens de programação;

• o programa não permite que novos objetos sejam inseridos pelos usuários, que ficam limitados a utilizar os objetos disponíveis;

• como a ferramenta é genérica, sua adaptação a um dado conteúdo cria dificuldades ao usuário final de aplicação específica, como por exemplo,

Page 118: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

117

Voltar ao sumário

uma que pretenda usar a mesma para demonstrar conceitos de Geometria ou Matemática.

O Visual Class é um Software de Autoria para criação de Projetos Multimídia, como Aulas, Palestras, Livros Eletrônicos, Catálogos, CDs Institucionais, Cursos de Ensino a Distância e Sites na Internet. O diferencial do Visual Class em relação aos Softwares de Autoria tradicionais é a sua facilidade de uso. Com o Visual Class é possível criar sofisticadas aplicações multimídia, por usuários não especializados em informática. A sua interface orientada a objetos elimina a necessidade de linguagem de programação, tornando o processo de criação intuitivo.

O Visual Class é utilizado principalmente na educação, sendo utilizado pelo professor para elaborar suas aulas e pelo aluno para criação de projetos.

O Visual Class pode ser utilizado na forma instrucionista ou construcionista. Na forma instrucionista, o professor cria uma aula e depois aplica a mesma para o aluno, como reforço de aprendizagem, utilizando um projetor multimídia ou disponibilizando na rede local da escola. Na forma construcionista, o aluno desenvolve um projeto e o professor passa a assumir a função de "facilitador".

Uma das desvantagens do Visual Class é o fato de o mesmo não permitir a criação e animação de mundos tridimensionais interativos, o que só seria possível com o uso de Realidade Virtual. Mesmo no modo construcionista, a criança desenvolve um projeto sobre determinado assunto, mas não tem a possibilidade de construir seu conhecimento através da visualização e manipulação do seu alvo de estudo.

O KidWeb é uma ferramenta para criação de websites por crianças. O KidWeb buscar auxiliar as atividades desenvolvidas com crianças da 3ª e 4ª séries do Ensino Fundamental baseadas na Pedagogia de Projetos. As principais vantagens da ferramenta é a interface adequada à realidade das crianças. Mas assim como o Visual Class, o KidWeb tem sua desvantagem ao permitir apenas a criação de projetos multimídia e não ambientes virtuais interativos.

Uma das diferenças entre a ferramenta proposta neste trabalho e as ferramentas citadas é o fato de a mesma ser voltada para a educação de crianças com necessidades educacionais especiais ou com deficiência. Portanto, para que esta ferramenta possa ser realmente útil no contexto educacional, a mesma estará fortemente embasada em pressupostos teóricos e comprovados sobre como se dá a construção do conhecimento destas crianças através de artefatos tecnológicos.

A ferramenta contará com uma interface de fácil utilização, atendendo a requisitos específicos de interface com o usuário (professores do ensino fundamental). Neste sentido, qualquer professor

desprovido de conhecimentos de programação poderá construir facilmente ambientes virtuais.

Ela contará com alguns ambientes e experimentos predefinidos para que os professores, que assim desejarem, possam utilizá-los.

A ferramenta será desenvolvida de maneira a permitir que novos experimentos e objetos sejam adicionados pelo professor que necessitar, a fim de que o mesmo não fique limitado a utilizar apenas os disponíveis. Sendo assim, embora a mesma seja voltada para ensino de geometria e matemática, poderá ser estendida para uso em outras áreas. 4. Conclusões

Este artigo apresentou a proposta de

desenvolvimento de uma ferramenta de autoria que auxilie professores no processo de educação inclusiva. È importante ressaltar que o projeto de pesquisa em questão está em andamento e que a ferramenta está em fase inicial de desenvolvimento.

Com essa ferramenta, o professor poderá criar ambientes virtuais de ensino-aprendizagem. Isso permitirá a ele ter uma nova forma de comunicação e expressão, despertando no aluno a consciência de auto-aprendizagem e a motivação para a busca de novos conhecimentos.

A principal motivação para desenvolvimento desta ferramenta advém do movimento mundial pela inclusão, que enfatiza a necessidade de oferecer aos professores subsídios para que venham a desenvolver a prática inclusiva.

Futuramente, ao finalizar o desenvolvimento da ferramenta, pretende-se implantar a mesma em escolas inclusivas, de forma que professores e alunos com deficiências possam testá-la, com o objetivo de detectar possíveis erros e necessidades de melhoria e, assim, realimentar o processo de análise e desenvolvimento da mesma.

Sabe-se que na prática, assim como acontece com outras tecnologias assistivas, a ferramenta proposta levará os professores a desenvolver recursos para todos, não apenas para alunos com deficiência ou com necessidades educacionais especiais, já que todo aluno gosta e se sente desafiado diante de materiais ricos em estímulos. Sendo assim, espera-se que a aula se torne mais atraente, significativa, gerando benefício aos alunos especiais e a todos que façam uso desta tecnologia. 5. Referências [1] Alice (2008). Página da Internet do Software "Alice" que disponibiliza o software e o plug-in para

Page 119: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

118

Voltar ao sumário

utilização do mesmo na Internet. Carnegie Mellon University. Disponível em <http://www.alice.org>. Acesso em Set/2008. [2] Batista, C. “Colóquio: Política Nacional de Educação Especial na Perspectiva da Educação Inclusiva.” INCLUSÃO - Revista da Educação Especial. Jan/jun. 2008 - p. 18- 32. Brasília. [3] Cardoso, A. (2002) Uma Arquitetura para Elaboração de Experimentos Virtuais Interativos suportados por Realidade Virtual Não-imersiva. Tese de Doutorado. Universidade de São Paulo. USP. [4] Cook, A. M., Hussey, S. M., (1995) “Assistive Technologies: Principles and Practices.” St Louis, Missouri, EUA. Mosby – Year Book, Inc. 1995. [5] Costa, R. M. E. M., Carvalho, L. A. V. (2001). “Uma estrutura de classificação para estudo e desenvolvimento de ambientes virtuais voltados para a reabilitação.” In: 4th SBC Symposium on Virtual Reality - SVR2001, 2001, Florianópolis. Proceedings of 4th SBC Symposium on Virtual Reality p. 302-313. [6] Ferreira, L. F. G., Tarouco, L. R., Becker, F., (2003). “Fazer e compreender na Realidade Virtual: em busca de alternativas para o sujeito da aprendizagem.” - V. 1 nº 1, Fev/2003. CINTED UFRGS. Novas Tecnologias na educação. [7] Filho, T. A. G., Damasceno, L. L., (2006). “Tecnologias Assistivas para autonomia do aluno com necessidades educacionais especiais”, INCLUSÃO - Revista da Educação Especial. Jul/2006 - p. 25- 32. [8] Freitas, M. R. (2008). LudosTop: Estratégia de Jogos e Realidade Virtual com vistas ao Desenvolvimento do Pensamento Lógico-Matemático. Dissertação de mestrado. Universidade Federal de Uberlândia. UFU. [9] Matos, E. S. (2008). “Virtualidade Real: Análise Crítica de Aplicações de Realidade Virtual na Educação Mediada por Computador”. Anais do XVIII congresso da SBC. Workshop sobre Informática na Escola. p. 19-28. [10] McComas, J., Pivik, J. Laflamme, M. (1998). “Current uses of virtual reality for children with disabilities.” Virtual Environments in Clinical Psychology and Neuroscience. 1998- Ios Press: Amsterdam, Netherlands.

[11] Raabe, A. (2003). “Uma Ferramenta de Autoria para Criação de Websites por Crianças.” Novas Tecnologias na Educação. CINTED-UFRGS. V.1. n°2. Set/2003. [12] Sánchez, P. A., (2005). “A Educação Inclusiva: um meio de construir escolas para todos no século XXI”, INCLUSÃO - Revista da Educação Especial. Out/2005 - p. 7- 18. [13] Schirmer, C. R., Browning, N. et al., (2007). “Atendimento Educacional Especializado - Deficiência Física.” São Paulo: MEC/SEESP, 2007. 130p. [14] Tori, R; Kirner, C. (2006). Fundamentos de Realidade Virtual. In: TORI, Romero; KIRNER, Claudio; SISCOUTO, Robson (org.). Fundamentos e Tecnologia de Realidade Virtual Aumentada. Porto Alegre: SBC. [15] Vendruscolo, F., Dias, J. A. et AL. (2005). “Escola TRI-Legal – Um ambiente virtual como ferramenta de apoio ao ensino fundamental através de jogos educacionais.” Colabor@ - A Revista Digital de CVA- RICESU. V. 3, n°9. Jul/2005. [16] Visual Class. (2008). Site oficial do Software de Autoria Visual Class. Disponível em <www.classinformatica.com.br>. Acesso em Set/2008.

Page 120: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

119

Voltar ao sumário

sessão TécnicA 4

rv: educação e treinamentochair: alexandre cardoso - uFu

Page 121: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

120

Voltar ao sumário

SIMULAÇÃO DO LABORATÓRIO DE SUPERFÍCIES EQUIPOTENCIAIS COM USO DE REALIDADE VIRTUAL

Daniel Stefany Duarte Caetano, Alexandre Cardoso e Edgard Lamounier Jr. Universidade Federal de Uberlândia – Faculdade de Engenharia Elétrica

CEP: 38400-902, C.P. 593, Uberlândia – MG – Brasil ([email protected], [email protected], [email protected])

Abstract The purpose of this work is to investigate Virtual

Reality (VR) techniques to support the simulation of Equipotential Surfaces in other to offer students a better understanding about the behavior of the Electric Field (E). A virtual environment developed allows the user to hold all settings (electrodes parallel, concentric and perpendicular) with all related details.

Keywords: Virtual Reality, Equipotential Surfaces,

Electric Field Resumo

O objetivo deste trabalho é investigar técnicas

Realidade Virtual (RV) para apoiar a simulação das Superfícies Equipotenciais oferecendo aos alunos uma melhor compreensão sobre o comportamento do Campo Elétrico (E). O ambiente virtual desenvolvido permite ao usuário, realizar todas as configurações (eletrodos paralelos, concêntricos e perpendiculares) com todos seus detalhes.

Palavras Chave: Realidade Virtual, Superfícies

Equipotenciais, Campo Elétrico

1. Introdução Um grande benefício oferecido pela Realidade

Virtual é que o conhecimento intuitivo do usuário a respeito do mundo físico pode ser utilizado para manipular o ambiente virtual, possibilitando ao usuário a manipulação de informações através de experiências próximas do real. Isso porque, no ambiente virtual, é possível criar a ilusão de mundo que na realidade não existe, através da representação tridimensional para o usuário [1].

Assim o aluno pode aplicar todo conhecimento teórico acumulado em sala de aula de maneira atemporal, esclarecendo todas suas dúvidas antes de ir ao laboratório, onde o tempo é curto e o número de

pessoas elevado, que não permite ao mesmo o contato direto com o experimento e desta maneira nem sempre o aluno consegue ter um bom aproveitamento durante sua estadia no laboratório.

Através da utilização do ambiente virtual o aluno realizará o experimento em suas diversas configurações, conforme mostrado pelas Figuras 1 e 2, antes de ir ao laboratório físico, reforçando o aprendizado pela experiência de primeira pessoa vivenciada.

Figura 1. Bancada real da configuração de eletrodos

paralelos de superfícies eqüipotenciais.

Figura 2. Bancada real da configuração de eletrodos

concêntricos de superfícies eqüipotenciais.

Page 122: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

121

Voltar ao sumário

Por este motivo a utilização de RV com fins educativos tem merecido destaque e tem sido avaliada de forma intensiva nos últimos anos. Os resultados destas avaliações mostram ganhos, em termos de aprendizagem, superiores a diversas outras formas de interação, visando educação mediada por computador [1]. 2. Modelagem do Laboratório

Antes de ser iniciada a modelagem dos objetos do

Laboratório Virtual, é necessário realizar um estudo de todos os conceitos físicos envolvidos como Diferença de Potencial, Campo Elétrico, Linhas de Campo [2], Potencial Elétrico [3], Superfícies Equipotenciais [4] para a modelagem correta de cada objeto do ambiente virtual, suas restrições e condições de limite assim como o VRML [5-7].

Desta maneira serão descritos os passos realizados para a modelagem da primeira parte da experiência que envolve os eletrodos paralelos.

2.1. Modelagem da Cuba, Eletrodos Paralelos

e Perpendiculares

No experimento com eletrodos paralelos no laboratório real mostrado pela Figura 3, o aluno realizará a medição do Potencial Elétrico, deslocando a ponta de prova do multímetro que está mergulhada na solução condutora e através da plataforma mostrada abaixo ele também marcará no papel quais foram estes pontos para que ele possa visualizar qual foi a Superfície Equipotencial montada para esta configuração de eletrodos.

Figura 3. Configuração real com eletrodos paralelos para obtenção da Superfície Equipotencial

O primeiro objeto a ser modelado para a simulação

do experimento foi a cuba, mostrada pela Figura 4,

obtida facilmente através das formas primitivas do VRML.

Ela comportará a solução condutora onde será possível analisar o comportamento do Campo Elétrico (E) e das Superfícies Eqüipotenciais em relação à diferença de potencial existente entre cada um dos eletrodos.

Figura 4. Modelagem do objeto cuba do ambiente

virtual

Assim como a cuba os eletrodos paralelos e perpendiculares mostrados na Figura 5, também foram desenvolvidas utilizando as formas primitivas do VRML.

Para cada um dos eletrodos foi adicionado um planesensor, para que o aluno tenha a liberdade de movimentá-los no plano xy e também para captação da variação de posição de cada um, pois, esta variação será utilizada na hora de determinar o potencial elétrico em um determinado ponto entre os mesmos.

Figura 5. Modelagem dos objetos eletrodos paralelos e perpendiculares do ambiente virtual

2.2. Modelagem dos Eletrodos Cilíndricos

Concêntricos

Ainda não foi inicializado o desenvolvimento desta parte do experimento. Porém, através das Figuras 6 e 7 mostradas a seguir, podemos realizar uma comparação entre os objetos reais do laboratório e os objetos modelados para o ambiente virtual.

Os eletrodos cilíndricos concêntricos modelados para o ambiente virtual mostrados acima, não foram obtidos através das formas primitivas do VRML então, utilizando o extrusioneditor [8] ferramenta adicional do VRMLPad é possível definir formas mais complexas como extrusion.

Page 123: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

122

Voltar ao sumário

(1)

Figura 6. Configuração real com eletrodos circulares concêntricos para obtenção da Superfície Equipotencial

Figura 7. Modelagem dos objetos eletrodos cilíndricos

concêntricos do ambiente virtual Assim como nos eletrodos paralelos também foi

definido um planesensor para cada um deles, porém ainda não foi modelada esta parte do experimento.

2.3. Modelagem da Ponta de Prova

A ponta de prova mostrada na Figura 8 é facilmente

modelada utilizando as formas primitivas do VRML como cilindros e cones.

Figura 8. Modelagem da ponta de prova

do ambiente virtual A aferição do valor de potencial elétrico é obtida

através da ponta de prova que está diretamente ligada ao multímetro e a fonte, que até este momento está sendo representado pelo objeto bateria.

É importante ressaltar que existem diversas condições para a aferição da diferença de potencial, uma delas é que enquanto a ponta de prova não estiver inserida na solução, não deverá ser exibido nenhum

valor no multímetro, outras condições como o ângulo de inclinação da ponteira em relação à solução também deve ser levado em consideração, nesta simulação a ponta de prova estará sempre perpendicular a solução garantindo uma melhor precisão na aferição dos valores.

Através da expressão matemática a seguir é que se obtém o valor do potencial elétrico em um determinado ponto entre os eletrodos, exibido no multímetro.

xpesqpedir

pesqppv

Onde:

vv - diferença de potencial naquele ponto. pp - posição da ponteira. pesq – posição do eletrodo esquerdo. pdir – posição do eletrodo da direita. Ε – campo elétrico.

2.4. Modelagem do Painel de Controle Até o momento atual da modelagem o aluno

utilizará o painel de controle mostrado pela Figura 9 para realizar todas as alterações de estado/valores nos objetos do ambiente virtual.

Figura 9. Modelagem do painel de controle do

ambiente virtual Para criar as animações e garantir a realização dos

cálculos necessários para a simulação do experimento, 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 [9].

2.5. Modelagem de Funções/Controle dos Itens

do Painel Agora uma breve descrição de cada uma das

funcionalidades do painel de controle. Tensão Eletrodos Direita: Através deste controle

o usuário poderá alterar o valor de tensão de todos os eletrodos posicionados à direita da bancada.

Exibir Multímetro: Através deste controle o usuário poderá exibir/ocultar o multímetro onde será exibido o valor de potencial elétrico aferido pela ponteira.

Page 124: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

123

Voltar ao sumário

Exibir Ponteira: Através deste controle o usuário poderá exibir/ocultar a ponteira utilizada para aferir o valor de potencial elétrico em uma determinada posição e também para marcar os pontos que permitirá ao usuário delinear uma linha com o mesmo potencial elétrico.

Deslocar Ponteira: Este controle é muito necessário para este experimento porque o planesensor não permite um objeto ser transladado nas três direções x, y, z, por este motivo foi necessário criar uma função/controle que permita o usuário de deslocar a ponteira nas direções de –z e +z que é o movimento de profundidade no ambiente virtual.

Exibir Linhas de Campo: Através deste controle o aluno pode visualizar qual é o comportamento das linhas de campo existentes entre os objetos inseridos dentro da cuba, pois, através da exibição das mesmas ele poderá compreender melhor como encontrar entre os eletrodos as linhas de mesmo potencial elétrico.

Marcar Potencial: Através deste controle o aluno poderá marcar os pontos de mesmo potencial formando assim uma linha de mesmo potencial elétrico dentro da superfície eqüipotencial.

Figura 10. Modelagem do controle marcar potencial.

Nesta parte do código utilizado para gerar a função

que permitirá o aluno controlar quando será marcado o ponto de Equipotencial no ambiente virtual.

Para este caso podemos observar que a função foi definida dentro do Script_ControleGeral.

eventIn SFTime MarcarPonto field SFNode parentNode USE Cuba eventOut MFNode newChildren mustEvaluate TRUE Definimos para esta função apenas três variáveis

onde, a primeira receberá um valor de evento do ambiente(eventIn), a segunda é um campo que relaciona o node Cuba que foi utilizado para criar o objeto cuba no ambiente virtual(dentro do node children deste objeto é que será inserido outros objetos filhos que serão os pontos de potenciais, a cada vez que o botão for ativado) e por fim uma outra variável newChildren que criará o objeto definido pela string abaixo dentro do node mencionado anteriormente.

function MarcarPonto(value,time) { newVRML = 'Group {'; newVRML += 'children ['; newVRML += 'DEF Ponto Transform {';

newVRML += 'rotation 1 0 0 1.57'; newVRML += 'translation '+strpontx+'

'+strpontz+' 0.2'; newVRML += 'children ['; newVRML += 'Shape { '; newVRML += 'appearance Appearance {'; newVRML += 'material Material {'; newVRML += 'diffuseColor 1 .851 0'; newVRML += 'specularColor .871 .251

.251'; newVRML += 'ambientIntensity .157'; newVRML += 'shininess 1'; newVRML += '}'; newVRML += '}'; newVRML += 'geometry Cylinder {'; newVRML += 'radius 0.1'; newVRML += 'height 0.05'; newVRML += '}'; newVRML += '}'; newVRML += ']'; newVRML += '}'; newVRML += ']'; newVRML += '}'; newChildren = Browser.createVrmlFrom

String(newVRML); parentNode.addChildren = newChildren;

} }" } Após o aluno clicar no botão “Marcar” será

acionado o touchsensor que, de acordo com a rota definida abaixo acionará a função “Marcar Ponto” dentro do Script Geral, inserindo um novo objeto no plano exatamente no ponto em que a ponta de prova estiver.

ROUTE MarcarPonto.touchTime TO

Script_ControleGeral.MarcarPonto Tutorial: Através deste controle o aluno poderá

visualizar os procedimentos que o mesmo deverá realizar em relação ao experimento proposto.

3. Resultados

Conforme podemos ver na Figura 11, o aluno

consegue interagir com os objetos virtuais do laboratório como se estivesse no ambiente real. Movendo os eletrodos paralelos que se encontravam em uma posição de repouso fora da cuba, para dentro da cuba na solução condutora, que permitirá que a tensão de 2 volts aplicada ao eletrodo da direita em relação ao terra, eletrodo da esquerda, conduza energia entre as placas formando o Campo .

Se observarmos melhor, as verificações de posições de limite dos objetos do ambiente nos permitem

Page 125: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

124

Voltar ao sumário

perceber que a ponta de prova está suspensa da solução condutora, ou seja, não teremos nenhum valor de potencial elétrico medido no multímetro.

Figura 11. Visualização do laboratório virtual com os

eletrodos paralelos dentro da solução condutora

Na Figura 12, podemos ver que o aluno está realizando uma das primeiras questões do laboratório que é o de aferir/medir valores de potenciais elétricos na Superfície Equipotencial formada entre as placas.

Como podemos perceber o multímetro está mostrando um valor inicial de 1,3 volts para aquela posição da ponta de prova, entre as placas que está a uma distância relativamente pequena perto da placa de maior potencial que é a placa da direita.

Quanto mais o aluno levar a ponta de prova próxima ao eletrodo da direita, mais próximo de 2 volts será o valor de potencial medido pelo multímetro e quanto mais próximo a ponta de prova estiver do eletrodo da esquerda, mais próximo de zero será o valor do potencial mostrado pelo multímetro.

Desta maneira o aluno pode lembrar que o potencial elétrico em uma Superfície Equipotencial varia em relação distância dos eletrodos e através desta Figura o aluno pode visualizar também as linhas de campo.

Figura 12. Visualização do laboratório virtual com os eletrodos dentro da solução condutora e realização da

medição do primeiro ponto de potencial elétrico Para encerrar a análise de resultados que o aluno

poderá obter com o laboratório virtual desenvolvido até este ponto, mostramos na Figura 13, a marcação de

mais um valor de potencial de 0,7 volts, que respeita as condições físicas do experimento, ou seja, quanto menor for a distância entre o eletrodo de menor potencial mais próximo de zero será o valor de potencial elétrico medido pelo multímetro.

Logo após todas estas marcações de potenciais e visualização das linhas de campo entre as placas, o aluno pode então perceber mais um conceito físico do experimento, que é o de que ele somente terá valores de potenciais elétricos iguais para esta configuração de eletrodo, enquanto ele variar a posição da ponta de prova sempre perpendicular as linhas de campo.

Para encerrar com os procedimentos básicos de aprendizado no laboratório virtual, o aluno deve realizar as marcações de alguns pontos de potenciais iguais desenhando assim as linhas de equipotenciais.

Figura 13. Visualização do laboratório virtual com os eletrodos dentro da solução condutora e marcação dos

pontos de equipotenciais delineando as linhas de potenciais iguais

4. Conclusões e Trabalhos Futuros

O emprego de RV para desenvolvimento de

ambientes virtuais é muito eficiente, porque permite que o aluno explore todos os detalhes de um experimento. Assim, ele pode observá-lo de diversos ângulos atentando-se a pequenos detalhes que vão auxiliá-lo a compreender melhor o conteúdo estudado. Sua grande diferença com outros ambientes de simulação é que todo ambiente é desenvolvido em 3 dimensões ao contrário dos demais que são desenvolvidos em 2 dimensões reduzindo a qualidade do aprendizado [1].

De acordo com alunos e professores a interatividade que o ambiente proporciona, permite um melhor esclarecimento de como realizar o experimento além do fato que a experiência pode ser realizada a qualquer momento, pois, estará disponível o acesso em computadores e reduz muito a margem de erros de execução quando executado o experimento em ambiente real.

Sendo assim graças ao VRML e JavaScript este ambiente pode ser compartilhado via internet, pois, os

Page 126: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

125

Voltar ao sumário

browsers utilizados hoje em dia dão suporte a esta tecnologia bastando apenas que seja instalado nas estações o plug-in do “Cortona” para a simulação dos ambientes além do que por ser uma maneira interativa auxilia os alunos no desenvolvimento das habilidades de habilidades computacionais e de domínio de periféricos [8].

Como trabalho futuro deste experimento, primeiro dever ser concluído a experiência com os eletrodos paralelos/perpendiculares e cilíndricos concêntricos.

Simular as outras características dos fenômenos físicos que ocorrem no experimento como efeito de bordas das linhas de campo, modelar as linhas de campo a partir de pontos etc.

Remodelar os objetos virtuais inserindo nos eletrodos um local onde possam ser plugados os pinos dos bornes de tensão que virão da fonte, modelar os cabos de interconexão da fonte/multímetro e eletrodos, mas principalmente tentar inserir os controles das variáveis dos objetos virtuais nos próprios objetos reduzindo assim ao máximo os itens do painel de controle.

5. Referências

[1] CARDOSO, Alexandre; KIRNER, Claudio; LAMOUNIER, Edgard e KELNER, Judith. Tecnologia para o desenvolvimento de Sistemas de Realidade Virtual e Aumentada. 2. ed. Recife: Editora Universitária - Ufpe, 2007. 210 p. (9788573154009).

[2] HALLIDAY, David; RESNICK, Robert; WALKER, Jearl. Fundamentos de Física vol.3: Eletromagnetismo. 7. ed. São Paulo: Ltc, 2007. 361 p. (8521614869).

[3] NUSSENZVEIG, H. Moysés. Curso de Física Básica: Eletricidade e Magnetismo. Vol. 3 São Paulo: Edgard Blücher Ltda, 1981. 519 p

[4] PURCELL, Edward M.. Curso de Física de Berkeley: Eletricidade e Magnetismo. Vol. 2 São Paulo: Edgard Blücher Ltda, 1973. 455 p.

[5] CARDOSO, Alexandre – Página do Pesquisador. Contém informações sobre aplicações de Realidade Virtual, pesquisa e publicações do pesquisador, tutoriais sobre VRML e artigos indicados para leitura. Disponível em: <http://www.alexandre.eletrica.ufu.br> Acesso em Mar./2008

[6] HARRIS, Andy. VRML 2.0 Tutorial. Indiana University / Purdue University, Indianapolis. Disponível em: <http://www.cs.iupui.edu/%7Eaharris/webDesign/ vrml/>. Acesso em: 01 mar. 2008.

[7] KIRNER, Claudio. Realidade Virtual e Aumentada. Contém informações atualizadas sobre VRML e JavaScript etc.... Disponível em: <http://www.realidadevirtual.com.br/ cmsimple-rv/>. Acesso em: 01 mar. 2008.

[8] VRMLPAD, Parallellgraphis. O site disponibiliza diversos programas computacionais de grande utilidade para desenvolvimento de ambientes virtual em VRML,

inclusive o programa VRMLPad, ExtrusionEditor. Disponível em: <http://www.parallellgraphics.com>. Acesso em Mar./2008

[9] CARDOSO, Alexandre. Uma Arquitetura para Elaboração de Experimentos Virtuais Interativos suportados por Realidade Virtual Não-imersiva, Tese de Doutorado, USP, 2002.

Page 127: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

126

Voltar ao sumário

O uso da Realidade Virtual no desenvolvimento de ferramentas educacionais para auxílio ao estímulo da lateralidade e dos

sentidos de criança em fase de aprendizagem

Ana Emília Leles da Silva1, Wender A. Silva2, Edgard A. Lamounier3, Marcos W. Ribeiro1, Alexandre Cardoso3, Nadabe Fortes2

1-Instituto Luterano de Ensino Superior de Itumbiara, 2-Faculdade Atual da Amazônia, 3-Universidade

Federal de Uberlândia [email protected], [email protected], 2- [email protected], [email protected],

3 – [email protected], [email protected]

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.

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.

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 e Softwares Educacionais

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ático-pedagó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].

Page 128: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

127

Voltar ao sumário

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:

Figura 1. Fazenda, cenário do livro de estudos sociais

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 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:

Figura 2. Exemplo do software educacional

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

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

Page 129: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

128

Voltar ao sumário

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.

Figura 3. Navegação com 6 graus de liberdade

Figura 4. Navegação com 6 graus de liberdade 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 à 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.

Figura 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 Touch 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

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.

Page 130: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

129

Voltar ao sumário

Figura 6. Demonstração de parte do ambiente virtual

Figura 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 Análises dos Resultados

O protótipo foi apresentado a um grupo de 16 pessoas, composto por 10 professores e 6 alunos. Dentre os professores tínhamos os que ministravam a disciplina de educação física, e os que eram responsáveis por ministrar os primeiros anos de escola dos alunos, da pré-alfabetização à quarta série. Os alunos tinham idade entre 5 a 8 anos de idade. Os professores relataram ter conhecimentos básicos em informática, dentre os alunos, não foram todos que tiveram contato com computador, até o momento da avaliação. Os professores ministram suas aulas nas escolas: Escola Estadual Homero Orlando Ribeiro e Escola Barquinho Azul na cidade de Itumbiara, estado de Goiás.

Antes de apresentar o protótipo ao grupo de usuários, foi apresentado o seu objetivo, suas funcionalidades e como seria sua utilização. Em seguida, foi distribuído um questionário, onde foi possível chegar a conclusão da viabilidade do software e também os pontos que deverão ser melhorados. É importante dizer que para obter a resposta dos

alunos os professores foram essenciais, visto que uma criança de 5 a 8 anos de idade não é capaz de responder sozinha o questionário elaborado. Após cada pergunta, foi perguntado aos professores as sugestões para melhorar o software. 5.2 Quanto ao nível de aprendizado do Software

Quanto ao nível de aprendizagem obteve-se opiniões diversificadas, já que tínhamos professores de diferentes áreas. Abaixo apresenta-se a tabela 1, demonstrando percentualmente a opinião dos professores e dos alunos quanto ao nível de aprendizado, visto que o software também propõe ensinar os objetos que a criança pode ter contato no seu dia-a-dia. Para obter as respostas dos alunos, os professores auxiliaram, analisando pedagogicamente a atitude do aluno ao utilizar o software. Tabela 1: Nível de aprendizado do software

Classificação Pontos Percentual

Alto 9 56%

Médio 6 38%

Baixo 1 6%

Total 16 100%

A tabela 7 é representada graficamente abaixo:

Figura 8. Gráfico de análise de aprendizado

Para o nível de aprendizado, foi sugerido inserir mais objetos virtuais no ambiente, possibilitando maior interação e conhecimento da criança. Também foi sugerido inserir conceitos educacionais que são ministrados em sala de aula. Por exemplo, durante a navegação a criança poder se deparar com uma conta matemática, onde ela poderia responder quanto seria 2 +2. 5.3 Quanto ao nível de interatividade do Software

Neste ponto foi analisada a interatividade com o software,

ou seja, se é oferecido um nível de interação, onde o usuário se sente capaz de decidir em qual lugar do ambiente ele deseja estar, se o usuário percebe que tudo que ele faz no ambiente virtual tem uma resposta imediata, justificando que o software é em Realidade Virtual, pois o usuário tem na tela de seu monitor um mundo virtual, onde ele decide o que

Page 131: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

130

Voltar ao sumário

fazer dentro daquele mundo. Novamente, cabe lembrar que foi respondido por professores e alunos. Na tabela 2 podemos observar percentualmente a análise de interatividade do software. Tabela 2: Nível de interatividade do software

Classificação Pontos Percentual

Alto 13 81%

Médio 3 19%

Baixo 0 0%

Total 16 100%

A tabela 2 é representada graficamente abaixo:

Figura 9. Gráfico do nível de interatividade do software

Como a maioria dos avaliados sentiram-se interagidos pelo ambiente, não tivemos sugestões para melhorar interação. 5.4 Quanto ao nível de complexidade de manuseio

Neste ponto do software, foi analisado o grau de

complexidade de manuseio, se os usuários tiveram dificuldades em utilizar as ferramentas de manuseio, no caso o mouse ou o teclado. Foi apresentado como seria a navegação com mouse, e também como poderiam navegar no ambiente por meio do teclado. A complexidade de manuseio foi respondido por professores e também pelos alunos. Abaixo segue a tabela 3 que mostra percentualmente o nível de complexidade ao utilizar as ferramentas de manuseio do software.

Tabela 3: Nível de complexidade de manuseio

Classificação Pontos Percentual

Alto 6 38%

Médio 7 44%

Baixo 3 19%

Total 16 100%

A tabela 3 é representada graficamente a seguir:

Figura 10. Gráfico do nível de complexidade de manuseio

Ao avaliar o nível de complexidade, os usuários alegaram certa dificuldade por ainda não se sentir completamente familiarizados com a ferramenta proposta, e também por não terem muita habilidade e uso freqüente com computador. Sugeriram que a navegação fosse feita apenas pelo teclado, onde afirmaram sentir maior facilidade de manusear.

5.5 Quanto à dificuldade de navegação do software

Neste ponto foi feita a análise quanto ao grau de

dificuldade de navegação no ambiente, ou seja, se o software tem uma navegação simples e clara, se ficou fácil ao usuário perceber que ele tem opção de escolher para onde ele quer andar dentro do ambiente, se ele conseguiu fazer essa navegação, e principalmente, se sentiu dificuldade de navegar dentro do ambiente virtual. Foi feita análise de dificuldade com os professores e também com os alunos. A tabela 3 mostra percentualmente a dificuldade em navegação pelos usuários que utilizaram o software. Tabela 4: Nível de dificuldade de navegação no ambiente virtual

Classificação Pontos Percentual

Alto 4 25%

Médio 10 63%

Baixo 2 13%

Total 16 100%

A tabela 4 é representada graficamente abaixo:

Figura 11. Gráfico do nível de dificuldade de navegação do software

Page 132: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

131

Voltar ao sumário

Quanto ao nível de dificuldade de navegação, os usuários novamente alegaram falta de experiência e habilidade com uso do computador, porém afirmaram não ser difícil utilizar o software, bastando apenas auxiliar a primeira utilização. Gostaram da interface gráfica e novamente sugeriram mais opções de navegação dentro do ambiente, pois foi desenvolvido apenas um ambiente composto por poucos objetos e uma casa virtual.

5.6 Quanto à utilização do software em sala de aula Esta foi a última pergunta feita para analisar o software, logicamente foi respondida apenas pelos professores. Novamente foi explicado a eles os objetivos do software, como também os pontos positivos ao diversificar as aulas utilizando um software em realidade virtual, com propósitos pedagógicos e educacionais. Abaixo segue a tabela 4 que mostra o nível de aceitação dos professores. Cabe lembrar que esta última pergunta foi respondida apenas por 10 pessoas, as quais eram professores. Tabela 5: Se os professores utilizariam o software em sala de aula

Classificação Pontos Percentual

Sim 4 40%

Talvez 4 40%

Não 2 20%

Total 10 100%

A tabela 5 é representada graficamente abaixo:

Figura 12. Análise gráfica se os professores utilizariam o

software em sala de aula

Ao perguntar se os professores utilizariam o software em sala de aula, tivemos respostas positivas, apesar de ter tido 2 professores que afirmaram não utilizar em sala, pois não seria viável ensinar por meio do computador. Porém, 4 professores disseram ter gostado do software e inclusive pediram para apresentá-los aos seus alunos, para que tivessem uma aula diferente. Os professores que disseram que talvez não utilizariam, afirmaram que após as melhorias sugerias, que é inserir mais conteúdos pedagógicos, fariam

uso durante suas aulas, com intuito de promover aulas diferentes aos alunos. 5. Considerações Finais

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 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. 5.1 Avaliação e Resultados

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.

Após a análise feita, pôde-se concluir que o software é viável, e que ainda necessita-se se alterações e melhorias, mas que isso não interfere no objetivo proposto, que é desenvolver o jogo pedagógico, já que, de acordo com os professores questionados, o software tem características pedagógicas e educacionais. 6. Referências Bibliográficas [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/adriano_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.

Page 133: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

132

Voltar ao sumário

[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.pdf>. 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

Page 134: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

133

Voltar ao sumário

Uma ferramenta para o auxilio ao ensino da geometria espacial por meio de tecnologias de Realidade Virtual não-imersiva

Murilo Borges de Oliveira1, Wender A. Silva2, Edgard A. Lamounier3, Marcos W. Ribeiro1, Alexandre

Cardoso3, Nadabe Fortes2 1-Instituto Luterano de Ensino Superior de Itumbiara, 2-Faculdade Atual da Amazônia, 3-Universidade

Federal de Uberlândia [email protected], [email protected], 2- [email protected], [email protected],

3 – [email protected], [email protected]

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.

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.

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 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 ensino-aprendizagem 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.

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 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.

Page 135: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

134

Voltar ao sumário

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].

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 [14], 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.

Konrath [11] diz que diante desse cenário, dos mapas conceituais, percebe-se que o próprio indivíduo constrói o seu conhecimento e que os mapas conceituais são apenas instrumentos para tornar significativa a aprendizagem, estabelecendo assim ligação entre o novo conceito e conceitos que o indivíduo já possui.

Nakamoto [12] cita que se o aluno não consegue ligar algo conhecido a ao conteúdo a ser aprendido então não houve interação com conceitos relevantes existentes na estrutura cognitiva denominando assim de aprendizagem mecânica.

Os mapas conceituais são considerados como uma ferramenta auxiliar no processo de ensino e aprendizagem, mas os professores não devem tê-la como único instrumento de ensino, assim resume Sakaguti [13]

2. Trabalhos Relacionados

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.

Figura 1. Protótipo de Mendes[5] 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 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.

Figura 2. Protótipo de Keller[7]

Outros artigos [8, 9, 10] demonstram também o poder da utilização de técnicas de Realidade Virtual como meio

Page 136: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

135

Voltar ao sumário

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, conclui-se que cada um deles apresenta características peculiares quanto ao grau de interação do usuário.

3. Métodos Aplicados

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.

Figura 3. Mapa Conceitual Geometria

4. 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.

Figura 4. Modelagem dos objetos utilizando Flux Studio 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.

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 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.1. 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.

Figura 5. Mapa Conceitual Geometria.

Page 137: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

136

Voltar ao sumário

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, sendo que 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.

Figura 6. Mapa Conceitual Geometria

5. Análise dos Resultados

O protótipo foi apresentado a 11 alunos e 5 professores do ensino médio do Colégio de Aplicação – ULBRA de Itumbiara Goiás, um colégio particular com um elevado conceito em educação.

Esses alunos e professores já têm noção de geometria e também disseram ter um conhecimento básico em informática como navegar na internet, trabalhar com editores textos, planilhas eletrônicas e jogos. Um breve treinamento foi feito com os usuários, falando sobre suas funcionalidades e seu objetivo que é auxiliar no ensino da Geometria Espacial de uma forma mais interativa.

Foi pedido para esses alunos e professores para que montassem um objeto tridimensional com cartolina, para demonstrar a dificuldade de fazer tal tarefa mostrando assim que o software realmente tem um significado.

5.1. Quanto à Finalidade Tabela 1 – Opinião dos usuários quanto à finalidade de uso do protótipo

Classificação Votos Percentual

Muito útil 10 62,50%

Útil 6 37,50%

Pouco útil - -

Total 16 100%

Os usuários que testaram o protótipo disseram que o

mesmo tem uma interface amigável e sugestiva.A tabela abaixo mostra a avaliação dos usuários quanto a finalidade do protótipos, onde 62.50% disseram ser muito útil e 37,50% classificaram o protótipo como útil. Esse resultado dá-se em questão de o protótipo atender as expectativas do usuário quanto em modelagem, interação e informações.

A tabela 1 é representada no gráfico abaixo.

Figura 7. Gráfico de análise quanto à finalidade de uso do protótipo.

5.2. Quanto à Interface

Quanto ao entendimento dos comandos os usuários destacaram que uma maioria teve problemas para entender o funcionamento dos mesmos, já que nunca tinham mexido com qualquer objeto em realidade virtual, portanto não tendo assim uma familiaridade com os comandos do plug-in, mas ressaltaram que a medida que foram trabalhando com o protótipo foi de fácil assimilação.

Tabela 2 – Opinião dos usuários quanto à interface do protótipo

Classificação Votos Percentual

Fácil entendimento dos comandos 7 43,75%

Médio entendimento dos comandos 9 56,25%

Difícil entendimento dos comandos 0 -

Total 16 100%

A tabela 2 é representada no gráfico abaixo.

Page 138: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

137

Voltar ao sumário

Figura 8. Gráfico de análise da Interface Gráfica. 5.3. Quanto à facilidade de uso

A avaliação quanto à facilidade de uso obteve um bom resultado, já que os usuários, em sua maioria, classificaram como muito intuitivo o protótipo relatando que não tem muito dificuldade para utilizar o mesmo devido a página ser bem elaborada com fácil assimilação. Tabela 3 – Opinião dos usuários quanto à facilidade de uso do protótipo

Classificação Votos Percentual

Muito intuitivo 11 68,75%

Intuitivo 5 31,25%

Pouco Intuitivo - -

Total 16 100%

A tabela 3 é representada no gráfico abaixo.

Figura 9. Gráfico de análise da facilidade de uso 5.4. Inserção de novos objetos

Algumas sugestões foram ditas e entre elas podemos destacar:

• Inserir mais objetos geométricos, contemplando assim uma gama maior de aplicações na geometria.

• Inserir som nos objetos quando selecionados ou quando houver interação.

5.5. Quanto à praticidade do protótipo

Na questão de praticidade o protótipo foi bem aceito por todos, pois atendeu a necessidade de auxiliar ao ensino da geometria, sendo de fácil manuseio e também didático. Assim os resultados obtidos comprovam essa praticidade, apesar de uma qualificação negativa.

Tabela 4 – Opinião dos usuários quanto à praticidade do protótipo

Classificação Votos Percentual

Sim 11 68,75%

Em parte 4 25,00%

Não 1 6,25%

Total 16 100%

A tabela 4 é representada no gráfico abaixo.

Figura 10. Gráfico de análise da praticidade 5.6. Visualização das interações

Foram de fácil visualização as linhas dos objetos geométricos já que com um clique tais linhas aparecem no objeto e devido a transparência do objeto pode-se ver essas linhas e interagir com elas, confirmando assim também o item anterior. Tabela 5 – Opinião dos usuários quanto aos funcionamento dos movimentos

Classificação Votos Percentual

Sim 14 87,50%

Em parte 2 12,50%

Não 0 -

Total 16 100%

A tabela 5 é representada no gráfico abaixo.

Page 139: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

138

Voltar ao sumário

Figura 11. Gráfico de análise do funcionamento dos movimentos

5.7. Quanto à aprendizagem

A expressiva votação positiva quanto a aprendizagem deve-se ao protótipo explorar muito a parte de ensino-aprendizado ainda mais trabalhando com mapas conceituais o que torna ainda mais forte o processo de ensino já que com seu uso os usuários, de uma forma geral, aprendem os conceitos por assimilação.

Também se pode citar o valor expressivo que as informações transmitidas a medida que o usuário interage com o objeto, um instrumento muito atrativo e interessante para o aprendizado.

Tabela 6 – Opinião dos usuários quanto à aprendizagem

Classificação Votos Percentual

Sim 16 100%

Em parte 0 -

Não 0 -

Total 16 100%

A tabela 6 é representada no gráfico abaixo.

Figura 12. Gráfico de análise quanto à aprendizagem

5.9. 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. Considerações Finais

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.

Durante o desenvolvimento deste trabalho pouco foi encontrado de Realidade Virtual e geometria integrado com Mapas Conceituais.

6.1. Avaliação e Resultados

Os professores avaliaram muito bem o protótipo dizendo que ele atende as necessidades encontradas pelos alunos em aulas tradicionais, já que o protótipo acaba com a necessidade do aluno em deduzir como seria o objeto, e por esses profissionais também foi citado à questão dos mapas conceituais que acharam de grande importância , pois deixa mais organizado os conceitos da disciplina

Dessa maneira a intenção principal do protótipo que é a visualização e transmissão de informação dos objetos foi alcançada com sucesso mediante a avaliação dos professores e alunos.

7. 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.

Page 140: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

139

Voltar ao sumário

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] 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.

[9] 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.

[10] 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.

[11] 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.

[12] NAKAMOTO, Paula Teixeira. Utilização de Mapas Conceituais na Construção de Ambientes Virtuais de Aprendizagem. In: A universalidade da computação: um agente de inovação e conhecimento. XXV Congresso da Sociedade Brasileira de Computação. São Leopoldo – RS. UNISINOS. 2005.

[13] SAKAGUTI, Solange Tieko. A Educação a Distância e as Possíveis Formas de Aplicações com Mapas Conceituais. UNIGRAN abril 2004. Disponível em <http://www.abed.org.br/congresso2004/por/htm/119-TC-D2.htm> acessado em 23 out 2007.

[14] 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.

Page 141: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

140

Voltar ao sumário

Uma ferramenta para o auxilio ao ensino da astronomia para alunos do ensino fundamental utilizando a Realidade Virtual como tecnologia de apoio

Kelly Silva Aquino1, Wender A. Silva2, Edgard A. Lamounier3, Marcos W. Ribeiro1, Alexandre Cardoso3,

Nadabe Fortes2 1-Instituto Luterano de Ensino Superior de Itumbiara, 2-Faculdade Atual da Amazônia, 3-Universidade

Federal de Uberlândia [email protected], [email protected], 2- [email protected], [email protected],

3 – [email protected], [email protected]

Abstract

This article presents the use of virtual reality in the

education of astronomy for pupils of basic education, having

with case study the use of a page in the Internet simulating

the Solar System, where in lesson format, the page brings all

planets that interact with user transmitting to it information

and concepts. Page this developed in HTML that uses

archives produced in VRML, with concepts of graphical

computation.

Resumo

Este artigo apresenta o uso de Realidade Virtual (RV) no

ensino da astronomia para alunos do ensino fundamental, tendo

com estudo de caso a montagem de um software em formato de

aula, simulando o Sistema Solar, onde uma página de internet traz

todos planetas que interagem com usuário transmitindo-lhe

informações e conceitos. A página foi desenvolvida em HTML que

abre arquivos modelados em VRML (Virtual Reality Modeling

Language).

1. Introdução O estudo dos astros e do universo chamado de astronomia

sempre despertou na humanidade o pensar, observar e analisar. Ensinar astronomia nem sempre é uma tarefa muito simples pelo fato de existir uma complexidade muito grande nesse tema. Nos dias atuais já podemos usufruir um vasto campo de ferramentas para pesquisa que auxiliam o entendimento dessa área.

O ensino de astronomia em escolas ainda não pode contar com muitas tecnologias, porém, a utilização da computação como ferramenta na educação a cada dia se torna mais presente e atraindo mais aliados e o uso da Realidade Virtual nas atividades de ensino-aprendizagem é um processo onde o educando pode interagir através da manipulação do próprio conteúdo de aprendizagem. A tecnologia educacional tradicional é baseada num relacionamento linear e hierárquico que envolve a pré-seleção do conteúdo, e na pré-programação do ensino a ser aplicado, enquanto que na tecnologia educacional com enfoque na interação os alunos selecionam e desenvolvem suas próprias estratégias e, são encorajados a buscar novos domínios do conhecimento[1].

A introdução da Realidade Virtual como melhoria em ensinar astronomia é uma área ainda em desenvolvimento porém vem demarcando sua importância. A elaboração deste

projeto de pesquisa tem como fundamental motivação o problema dos métodos tradicionais utilizados nas escolas para o ensino de astronomia. Os colégios têm como principal fonte para o estudo da disciplina, os livros, e é diante desta visão que este trabalho pretende atuar, a fim de demonstrar aos educandos um novo manuseio da astronomia, proporcionando a eles novas fórmulas, como as imagens 3D, que trazem o mundo virtual dos astros para as escolas. Destacando a importância do ensino da Astronomia, [2] temos que esta questão aparece como necessário na formação integral de uma criança, tal como fica evidenciado pela quantidade de conceitos astronômicos que se especificam nos objetivos dos diferentes currículos das escolas primárias do mundo inteiro. Justificado por meio da revisão bibliográfica o trabalho pretende organizar de forma pedagógica e intuitiva um protótipo do Sistema Solar em Realidade Virtual.

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 de conteúdos de ciência, onde se propõe a construção de um ambiente virtual que simula o Sistema Solar, o qual muitas das vezes é lecionado em escola através me meios estáticos e não interativos.

1.1. Realidade Virtual

Realidade Virtual (RV) é 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 [3].

A Realidade Virtual vem trazer ao uso do computador um novo paradigma de interface com o usuário. Neste paradigma, o usuário não estará mais em frente ao monitor, mas sim, sentir-se-á dentro da interface. Com dispositivos especiais, a Realidade Virtual busca captar os movimentos do corpo do usuário(em geral braços, pernas, cabeça e olhos) e, a partir destes dados, realizar a interação homem-máquina[4].

2. Trabalhos Relacionados

Existem diversos trabalhos que ressaltam a importância

da Realidade Virtual na área do saber. Tais como podem ser

Page 142: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

141

Voltar ao sumário

citados: Um estudo exploratório sobre o uso de ambientes virtuais não imersivos em 3D no ensino de Astronomia [5], onde é demonstrado as dificuldades interpretadas nos discursos de professores dos anos iniciais do ensino fundamental em relação ao ensino da astronomia [6], Também demonstrada a Realidade Virtual em aplicações científicas [7], tais como o Simulador Celestia [8], além do uso da RV no ensino com o ensino da fotossíntese usando Realidade Aumentada [9], e associando Realidade Virtual ao Ensino de Matemática Fundamental [10], dentre outros.

Avaliando todos trabalhos pode-se concluir que a Realidade Virtual mostra-se cada vez mais sua importância, atuando não só em áreas cientificas como também em áreas do saber, proporcionando no ensino de ciência uma maior absorção do conteúdo pois a RV serve de subsídios no momento que faz com que o usuário se envolva com toda interação que a RV oferece.

3. Astronomia

Na realidade há milhares de anos as descobertas da

Astronomia fazem parte do nosso cotidiano e nos ajudam a ter uma idéia melhor de como é o mundo e o universo em que vivemos. Afinal, até mesmo a maneira como contamos o tempo (dia, mês e ano) é baseada em observações astronômicas[11].

O uso da Realidade Virtual na realização deste trabalho tem por finalidade desenvolver um maior incentivo na busca do usuário a conhecer o que é o como funciona o Sistema Solar, fator principal em astronomia.

3.1. Como surgiu a Astronomia

A Astronomia tem sido registrada desde a mais remota antigüidade como o objeto de maior curiosidade humana. Essa curiosidade influência a humanidade em todos aspectos, desde o misticismo religioso até os mais apurados feitos tecnológicos existentes atualmente. Um fruto dessa curiosidade é o ser humano poder se desenvolver e crescer, pois por muito tempo os astros foram inatingíveis e para entendê-los o homem só dispunha da sua capacidade de observar e pensar. [12]

O termo astronomia deriva das palavras gregas astron, astro, e nomos, lei. Suas origens se confundem com civilização. Em resumo, nos mostra que as necessidades de ordem pratica, como a de estabelecer um calendário ordenado, exigiam a observação do céu estrelado e é por isso que em todos os povos da Antigüidade já se encontram certos conhecimentos astronômicos. O reconhecimento da ordem geral dos movimentos celestes, com a possibilidade de sua previsão certa, levou ao conceito natural, imutável. A associação de fatos ordinários da vida aos fenômenos celestes, deu a estes uma importância toda especial ligada à previsão dos destinos humanos. Nasceu a astrologia, pseudociência muito cultivada entre os egípcios, desenvolvida pelos gregos e sobretudo no império romano, à sombra da qual viveu, por muitos séculos, a astronomia. [13]

3.2. O Sistema Solar

Um dos mistérios mais intrigantes para o homem é a formação do Sistema Solar. A idéia mais aceita atualmente entre os cientista é a de que o Sol e os planetas foram todos formados praticamente ao mesmo tempo, a partir de um redemoinho de nuvem de gás e poeira há mais ou menos 5 bilhões de anos. Essas nuvens são muito comuns no Universo. O Sistema Solar é formado por nove planetas que diferenciam-se em dimensão e aspecto. Entretanto, podem ser classificados em 2 grupos: os 4 planetas mais próximos do sol são conhecidos como planetas terrestres, ou telúricos; os 4 seguintes, como planetas gasosos, ou gigantes gasosos. Plutão, o 9.º planeta, não se enquadra nessa classificação. [14] 3.3. Os Planetas do Sistema Solar

Os Planetas Terrestres são mais quente, os restos rochosos da nebulosa deram origem aos planetas. As rochas, muito numerosas, chocaram-se entre si, formando aglomerados cada vez maiores. Estes, atraindo-se uns aos outros pela força da gravidade, resultaram nos 4 planetas terrestres – MERCÚRIO, VÊNUS, TERRA e MARTE. Já os planetas gasosos, talvez em virtude da presença de um maior número de aglomerados ou à abundância de água a uma notável distância do sol, formaram-se corpos muito compactos, rodeados de famílias inteiras de satélites. A massa desses corpos era cerca de 10 vezes maior que a Terra, e sua gravidade suficientemente elevada para reter densas atmosferas, que se haviam formado pela atração de parte da nuvem de gás que ainda rodeava o sistema solar primitivo. Assim formaram-se em tais regiões os 4 planetas gasosos gigantes – JÚPITER, SATURNO, URANO e NETUNO. Localizado nos limites do sistema solar, PLUTÃO é diferente de todos os outros. Trata-se de um planeta pequeno, seu diâmetro equivale a menos da metade do de Mercúrio e menos de 1/5 do diâmetro da Terra, e sua massa é igual à quinta parte da massa lunar. É possível que sua origem não seja a mesma dos demais planetas[15]

3.4. A forma como é ensinada Astronomia

O fascínio pelo céu tem levado o homem a observá-lo e criar teorias sobre o Universo desde a mais remota antiguidade. Não é surpreendente que os professores de ensino fundamental tenham receio de levar a Astronomia para a sala de aula, sentindo-se incapazes de suprir as expectativas tanto suas quanto de seus alunos. Aqueles que se aventuram, apegam-se aos conteúdos dos livros didáticos. Estes professores pouco sabem os conceitos científicos envolvidos nos estudos sobre as estrelas, galáxias, o Universo, ou até mesmo sobre o Sistema Solar, pois, em sua formação, conhecimentos dessa natureza não fizeram parte de currículo escolar. Já o livro didático do ensino fundamental, que normalmente é fonte de conhecimento para eles, apresenta os conteúdos fragmentados, pouco profundos, quando não errôneos, e, ainda insuficientes para a explicação das muitas questões veiculadas pelos meios de comunicação[16].

Page 143: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

142

Voltar ao sumário

A forma como é ministrada para alunos do ensino

fundamental muita das vezes apenas por meio de livros ou vídeos, não chama a atenção do aluno, pois são formas estáticas e sem interatividade. A introdução da computação na educação é uma das formas de resolver esse problema. O uso da Realidade Virtual na educação é uma boa solução para o ensino porque expande os processos normais de aprendizado, principalmente na criança, que é encorajada a participar de um processo criativo e imaginário, onde aprende “brincando”, coisas que nos métodos tradicionais levaria mais tempo para ser ensinado[17].

4. Métodos Aplicados

Primeiramente foi feito um levantamento bibliográfico das principais características do Sistema Solar, bem como um breve histórico sobre a Astronomia. Para assim realizar a modelagem dos objetos e a implementação do protótipo que será destinado à melhoria no ensino\aprendizagem de alunos do ensino fundamental. 4.1. Modelagem

Para a modelagem do ambiente virtual proposto foi utilizado a linguagem de programação VRML (Virtual

Reality Modelating Language), que é uma linguagem independente de plataforma que permite a criação de ambientes virtuais por onde se pode passear, visualizar objetos por ângulos diferentes e interagir com eles[18].

Como ferramenta suporte na modelagem foi utilizado o Flux Studio 2.0, uma ferramenta que disponibiliza uma grande diversidade de funcionalidades técnicas bem como apoio didático de fácil acesso, que oferece uma grande gama de recursos, facilitando o processo de modelagem[19].

4.2. O Ambiente Virtual

O software possibilita uma interatividade com o usuário, onde ele poderá navegar entre os planetas de forma livre e dinâmica. Cada planeta possui um link onde busca informações descrevendo suas características principais.

A figura 2 acima é uma representação do software, com todos planetas do Sistema Solar sem movimento.

A proposta de trazer conhecimento de forma interativa, fazer com que o usuário se sinta mais entusiasmado em sua busca ao saber.

A Figura 3 acima mostra a imagem dos objetos tridimensionais, modelado no Flux Studio, que representa o movimento dos planetas.

4.3. Implementação

Para o desenvolvimento de um sistema em Realidade Virtual faz-se necessário a mesclagem de outras ferramentas de modelagem, outras linguagem ou bibliotecas, se for o caso.

Após a modelagem dos objetos utilizando o Flux Studio, todos foram exportados para serem melhor trabalhados na linguagem de programação VRML, uma linguagem própria para a criação de ambientes virtuais em 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 [20].

A facilidade que o VRML proporciona pela disponibilização na internet está na interpretação que é feita apenas com a instalação do plug-in adequado. Este plug-in que interpreta o código gerado pelo VRML, merecendo destaque o Cortona e o Cosmo Player.

Uma maior complexidade na interação do usuário com os objetos foi obtida por meio do uso do Java script.

Foi desenvolvida por fim uma página em HTML para WEB onde será disponibilizada aos usuários.

5. Funcionamento do Sistema 5.1 Tecnologias Necessárias

Figura 3 – Tela do software (Planetas em movimento)

Figura 2 - Tela do software (Planetas em ordem, sem movimentação)

Figura 1 – Foto do Sistema Solar

Page 144: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

143

Voltar ao sumário

Alguns pré-requisitos para o funcionamento do protótipo são de obrigatoriedade para o usuário. Como por exemplo, é necessário ter instados em seu computador um browser – navegador da internet (na grande maioria de computadores é encontrado já instalado o Internet Explorer1) e um plug-in (que interpreta os códigos VRML) adequado para o browser. O plug-in pode ser escolhido de acordo com a preferência do usuário, pois existem hoje algumas opções como o Flux Player2, Cortona e o Cosmo Player.

Neste projeto optou-se pela utilização do Browser Internet Explorer por seu fácil acesso e como plug-in o Cortona pelo bom desempenho na interação com o Browser. 5.2 Funcionamento do sistema

Ao acessar a página da web, o usuário encontra

primeiramente links, tais como: • Home: Faz uma breve descrição sobre o protótipo; • Astronomia: Traz informações sobre o que é

Astronomia; • Downloads: onde é disponibilizado ao usuário

software que foram usados no desenvolvimento do projeto, como VRML 2.0, Flux Studio 2.1;

• Créditos: São apresentados informações do desenvolvedor da página e formas de contato como e-mail.

• Ao clicar em iniciar será acionado um link que chama

outra página. Antes mesmo que começar a ser mostrado o mundo virtual, instruções de como prosseguir serão mostradas. Como mostra a Figura 5.

Figura 4. Página de instruções

Após serem exibidas as instruções de como o Sistema funciona. Na página é mostrado alguns links do lado esquerdo, no centro o conjunto de todos os planetas do Sistema Solar e do lado direito, informações com as principais características dessa parte da Astronomia.

Figura 5. Todos os planetas do Sistema Solar

O usuário poderá clicar em qualquer um dos links que

aparecem no lado esquerdo da página, tal link busca o arquivo wrl

3 referente ao astro selecionado. Dado esse clique aparecerá no centro da página apenas o planeta escolhido juntamente com outro objeto – o Sol, fazendo os movimentos de rotação e translação.

Além de exibir o astro separadamente dos outros o objeto contêm um link que ao ser acionado chama informações que serão exibidas no lado direito da página.

Focalizando apenas o ambiente virtual podemos destacar que o usuário interage com o Sistema utilizando o mouse e/ou o teclado e definindo o modo de navegação no ambiente por meio dos botões encontrados na barra de ferramentas esquerda e inferior.

A representação de um humano no ambiente virtual é chamada de avatar, é ele que aparentemente parece estar caminhando ou navegando dentro do espaço determinado. Este avatar poderá navegar entre os planetas de acordo como o comando dado pelo usuário. Tais comandos são acionados pelos botões encontrados na parte esquerda e inferior do ambiente.

Dentro do mundo virtual o usuário encontrará maneiras de se obter informações sobre tal objeto que ele está clicando para isso o usuário terá duas opções, que são clicar sobre o objeto enquanto ele está em movimento ou no link ao lado esquerdo da página. Essas informações serão disponibilizadas na parte direita da página onde contém um espaço chamado informações.

Ainda assim, o usuário pode navegar a qualquer momento no ambiente virtual, clicando com o mouse e arrastando em qualquer parte do cenário ou utilizando as setas de direção do teclado.

6. Resultados e Conclusões 6.1. Avaliação e Resultados

O protótipo foi apresentado a 20 pessoas pré-selecionadas que lecionam a alunos do ensino fundamental uma disciplina muito importante que é a Astronomia.

A maior parte dos profissionais afirmaram ter bastante conhecimento sobre o ponto “Astronomia”, porém revelaram que na questão “Informática” ainda utilizam essa ferramenta

Page 145: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

144

Voltar ao sumário

apenas para uso rotineiro, tais como e-mail, navegação em internet, coisas afins.

Antes de começar a manusear o software, os usuários passaram por um rápido treinamento sobre as funções do protótipo, bem como a finalidade e os objetivos que o mesmo pretende alcançar, que é levar conhecimento do Sistema Solar de uma forma diferente da forma que elas estão acostumadas no seu dia-a-dia. Logo em seguida, foi feita uma comparação do software aos métodos tradicionais, levando em conta que os recursos pra ensinar tal assunto a alunos tão jovens é ainda não se é comum encontrar em salas de aulas.

Em geral, nota-se que os representantes escolhidos sentiram-se bem à vontade com a possibilidade de levar a seus alunos uma nova forma de conhecer a Astronomia, saindo de uma maneira monótona e estática.

Após a utilização do protótipo, solicitou-se aos usuários que respondessem um questionário, que tem como objetivo colher dados quanto à usabilidade do software, a interface gráfica proposta, entre outros.

Com base nos dados coletados, foi possível chegar a conclusões que serão detalhadas a seguir.

6.2. Quanto à Finalidade

Em geral todos os profissionais que experimentaram o

protótipo disseram que o mesmo possui uma Interface Gráfica agradável, que os motiva e torna o conhecimento do conteúdo mais atraente.

Como mostra a tabela 6, a Finalidade do software foi avaliada por todos os usuários, sendo que 60% dos professores a avaliaram como muito útil e 40% a avaliaram como útil.

Uma explicação para tal avaliação está na questão do software atender bem o que ele se destina e conter bastante informações sobre todos objetos que compõe o ambiente virtual.

Tabela 1. Opinião dos usuários quanto à finalidade de uso do protótipo

Classificação Votos Percentual

Muito útil 12 60%

útil 8 40%

pouco útil - -

Total 20 100%

A tabela 1 é representada no gráfico abaixo.

0

2

4

6

8

10

12

Classificação

Finalidade de uso

Muito útil

útil

pouco útil

Figura 6. Gráfico de análise quanto à finalidade de uso

do protótipo

6.2. Quanto à Interface

Analisando os resultados pode-se notar que a Interface

Gráfica resultou num empate entre 50% Fácil entendimento dos comandos e 50% Médio entendimento dos comandos. Isso mostra que os comandos existentes podem ser melhorados, não deixando um entendimento aos usuários muito satisfatório em uma conclusão geral. De uma forma técnica podemos julgar que os comandos do plug-in são de fácil entendimento para quem já tem uma familiaridade com a Realidade Virtual e não tão simples para pessoas leigas. Tabela 2. Opinião dos usuários quanto à interface do protótipo

Classificação Votos Percentua

l Fácil entendimento dos comandos

10 50%

Médio entendimento dos comandos 10 50%

Difícil entendimento dos comandos - -

Total 20 100%

O gráfico abaixo mostra a tabela 2, uma comparação

gráfica dos resultados.

0

2

4

6

8

10

Classificação

Interface Gráfica

Fácil entendimento dos

comandos

Médio entendimento dos

comandos

Difícil entendimento dos

comandos

Figura 7. Gráfico de análise quanto à Interface Gráfica do

protótipo

Page 146: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

145

Voltar ao sumário

6.3. Quanto à facilidade de uso

Após a avaliação de forma geral pode-se concluir que o

protótipo teve bons resultados, de modo que 50% dos profissionais o classificarão de muito intuitivo e 50% de intuitivo. Tabela 3. Opinião dos usuários quanto à facilidade de uso do protótipo.

Classificação Votos Percentual

Muito intuitivo 10 50%

Intuitivo 10 50%

Pouco Intuitivo - -

Total 20 100%

Outra representação dos números é mostrada por meio do

gráfico abaixo.

0

2

4

6

8

10

Classificação

Facilidade de uso

Muito intuitivo

Intuitivo

Pouco Intuitivo

Figura 8. Gráfico de análise quanto à facilidade de uso do

protótipo

6.4. Inserção de novos objetos

Algumas sugestões foram ditas e entre elas podemos

destacar: * Inserir outros objetos que também fazer parte da

Astronomia, como asteróides, cometas, etc; * Inserir som, que seja acionado de acordo com um

clique; * inserir os satélites correspondentes a cada planeta do

Sistema Solar; * Inserir os anéis de Saturno.

6.5. Quanto à praticidade do protótipo

Na questão de praticidade o protótipo foi bem aceito por

todos. Pode-se destacar entre outros comentários que o protótipo atende bem nesse ponto, sendo bastante didático e informativo. Os resultados afirmam que 80% dos avaliadores opinaram em sim, concordando que o protótipo traz uma ótima praticidade e 20% dos avaliadores opinaram em parte. Como mostra a seguir a tabela abaixo.

Tabela 4. Opinião dos usuários quanto à praticidade do protótipo

Classificação Votos Percentual

Sim 18 80%

Não - -

Em parte 2 20%

Total 20 100%

A representação dos números que são exibidos pela tabela acima pode ser mostrado de outra forma, como sugere o gráfico abaixo.

0

5

10

15

20

Classificação

Praticidade do protótipo

Sim

Não

Em parte

Figura 9. Gráfico de análise quanto à praticidade do

protótipo

6.6. Visualização dos movimentos

Nesse ponto de visualização dos movimentos que o

software realiza também foi muito bem aceito por todos participantes da avaliação. Assim, o software mostra que as informações que são transmitidas por ele são claras e as formas de como se obtém elas é feita com muita interação.

Tabela 5. Opinião dos usuários quanto aos

funcionamentos dos movimentos

Classificação Votos Percentual

Sim 20 100%

Não - -

Em parte - -

Total 20 100%

A tabela 8 é expressa na figura 10 abaixo

0

5

10

15

20

Classificação

Funcionamento dos movimentos

Sim

Não

Em parte

Figura 10. Gráfico de análise quanto ao funcionamento

dos movimentos

Page 147: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

146

Voltar ao sumário

6.7. Quanto à aprendizagem

De forma geral, podemos concluir que o software

agradou a maior parte dos profissionais que o manusearam. O intuito principal da criação do protótipo está na questão de transmissão de informações, sendo que todas as técnicas usadas foram embasadas para esse fim. Considerando que o ponto principal da aplicação desta avaliação é quanto a aprendizagem, é de forma satisfatória que se pode concluir com êxito, avaliando os resultados de apurados com este questionário.

Tabela 5. Opinião dos usuários quanto à aprendizagem

Classificação Votos Percentual

Sim 18 80%

Não 0 -

Em parte 2 20%

Total 20 100%

O gráfico abaixo é uma representação gráfica da tabela 5.

0

5

10

15

20

Classificação

Aprendizagem

Sim

Não

Em parte

Figura 11. Gráfico de análise quanto à aprendizagem

6.8. Conclusões

As pesquisas feitas após o uso do software demonstram que as aplicações de VR para a educação, em especial ao ensino da Astronomia, trás diversos benefícios possíveis através de sua interatividade. O software é de fácil manuseio e voltado para alunos de uma determinada faixa etária, suprindo assim as expectativas de aprendizagem dos mesmos. 6.9. Trabalhos futuros

Como continuação deste trabalho, considera-se importante os seguintes temas: - Aumentar a interatividade da aplicação, alargando a distância que existe entre o protótipo desenvolvido com uma apresentação de uma simples animação; - Aplicar o sistema em um grupo maior de usuários (professores, pesquisadores e alunos) utilizando questionários padronizados e específicos para este tipo de aplicação extraindo resultados mais confiáveis na avaliação.

7. Referências Bibliográficas [1] CAMPOS, Gilda H. B. Design instrucional e construtivismo:

em busca de modelos para o desenvolvimento de software. IV Congresso RIBIE, Brasília, 1998.

[2] HOSOUME Yassuko. Astronomia nos livros didáticos de Ciências – um panorama atual, 2006

[3] KIRNER, Cláudio; SISCOUTTO, Robson. Realidade virtual e aumentada: Conceitos e aplicações. Petrópolis: IX Symposiun on Virtual and Augmented Reality, 2007.

[4] PINHO, Prof. Msc. Márcio Serolli; KIRNER, Prof. Dr. Cláudio. Uma introdução à Realidade Virtual, 2006

[5] CAMPOS, José Adolfo Snajdauf de. Um Estudo Exploratório sobre o Uso de Ambientes Virtuais não Imersivos em 3D no Ensino de Astronomia. Rio de Janeiro, RJ, 2004

[6] LANGH, Rodolfo; NARDI, Roberto. Dificuldades interpretadas nos discursos de professores dos anos iniciais do ensino fundamental em relação ao ensino da Astronomia. Revista Latino-Americana de Educação em Astronomia - RELEA, n. 2, p. 75-92, 2005

[7] MACHADO, Liliane dos Santos. A realidade virtual em aplicações científicas, 1997.

[8] LAUREL, Chris; O simulador Celestia, 2005. Disponível pela internet em: www.shatters.net/celestia. Acesso em: 16/09/07.

[9] RIBEIRO, Marcos Wagner de Sousa; SILVA, Wender Antônio da. O ensino da fotossíntese usando Realidade Aumentada. Itumbiara – GO, 2006.

[10] CARDOSO, Alexandre, et. al. Associando Realidade Virtual ao ensino de Matemática fundamental. Petrópolis: IX Symposiun on Virtual and Augmented Reality, 2007.

[11] SAMPAIO, Francisco Azevedo de Arruda; CARVALHO, Aloma Fernandes de. Caminhos da Ciência – Uma Abordagem socioconstrutivista. São Paulo, 1998.

[12] PAULA, André Salvador. Análises e propostas para o ensino de astronomia. Centro de Divulgação da Astronomia CDA – CDCC. São Carlos – SP, 1993.

[13] BARSA, Ensiclópedia. Vol. 3. Rio de Janeiro, 1986.

[14] BARROS, Carlos. Ciências – meio ambiente e ecologia. Programas de saúde 5ª série. São Paulo – SP, 1996.

[15] CHRISTOFOLETTI, Vera Lígia Reis. Disponível em: < http://osistemasolar.vilabol.uol.com.br/> . Rio Claro, SP. Acesso em: 17/09/07

[16] LEITE, Cláudia. Os professores de Ciência e suas formas de pensar a astronomia, 2006

[17] KIRNER, Prof. Dr. Claudio. Grupo de Pesquisa em Realidade Virtual - Departamento de Computação. Universidade Federal de São Carlos – UFSCar, 2006.

[18] IPOLITO, Juliano. Tutorial VRML 1.0 – Grupo de Realidade Virtual da Universidade Federal de São Carlos, 1997

[19] CARDOSO, Alexandre, et. al. Tecnologias para o desenvolvimento de sistemas de realidade virtual e aumentada. Recife: Ed. Universitária da UFPE, 2007.

Page 148: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

147

Voltar ao sumário

UMA FERRAMENTA PARA VISUALIZAÇÃO DE INFORMAÇÃO PARA ÁREA DE NEGÓCIOS

Silvia H. O. Santos1, Ricardo J. Sabatine 2, Fátima L. S. Nunes 3

1 Univem - Centro Universitário Eurípedes de Marília - Marília - SP 2 Instituto de Física de São Carlos - Universidade de São Paulo - São Carlos - SP

3 EACH / USP – Escola de Artes, Ciências e Humanidades – Universidade de São Paulo [email protected]; [email protected]; [email protected].

Resumo

Este artigo descreve a concepção e a implementação parcial de uma ferramenta de Visualização de Informação com uso de Realidade Virtual denominada VRVis Manager. Seu objetivo é fornecer facilidades para usuários da área de negócios como auxílio na tomada de decisão. Entre suas funcionalidades, a ferramenta propõe permitir a generalização de SGBDs, disponibilização de diversas metáforas e sugestão automatizada de metáforas a partir do conjunto de dados a ser analisado.

Abstract

This paper describes the conception and development of a tool for Information Visualization by using Virtual Reality named VRVis Manager. Its goal is to provide facilities for users from business area in order to aid the decision-making. Among its features, the tool intends to allow the DBMS generalization, provide several metaphors and suggest metaphors in an automated way, considering the analyzed data set. 1. Introdução

No mundo dos negócios cresce a cada dia o uso de computadores e a utilização de aplicativos que auxiliam administradores e organizadores a armazenarem grandes volumes de dados e gerenciarem as informações geradas por esses dados. Hoje essas informações são cada vez mais utilizadas nas tomadas de decisões.

A tarefa de entender esses dados armazenados torna-se muitas vezes difícil quando considerada a quantidade de dados e a falta de habilidade para manipulá-los. Essa manipulação é feita, em grande parte das organizações, por meio de tabelas e relatórios, sendo que sua análise exige disponibilidade de tempo e conhecimento das interações existentes entre as informações. Tal tarefa torna-se mais difícil quando considerada a junção de

diferentes tipos de informações provenientes de diferentes departamentos em uma empresa.

Com a informatização dos processos, as informações atualmente são concebidas com mais rapidez e segurança em relação a sua veracidade. São muitas as ferramentas informatizadas que ajudam nessa tarefa, existindo desde planilhas eletrônicas, editores de texto, sistemas gestores, sistemas especialistas, até os sistemas de Data mining e Visualização de Informação.

A Visualização de Informação (VI) procura reunir o poder da percepção visual humana com o poder de processamento do computador moderno para que um conjunto de dados possa ser analisado e compreendido rapidamente [4]. Combina aspectos da visualização científica, interfaces homem-computador, mineração de dados, processamento de imagens e computação gráfica para efetivamente conseguir uma representação gráfica-visual de dados abstratos [4]. Em suma, procura-se “Visualizar o não-visual” [18].

Apesar dos benefícios inegáveis que a VI pode proporcionar, alguns desafios ainda são enfrentados. Muitas vezes, o volume de dados a ser analisado é gigantesco. Alia-se a este fator, a necessidade de manipulação, análise e visualização dos dados considerando diferentes pontos de vista. Esses desafios constituem itens favoráveis à utilização de Realidade Virtual (RV) em Visualização de Informação (VI).

O objetivo deste artigo é apresentar a proposta, a implementação parcial e os resultados preliminares de uma ferramenta de VI para a área de negócios. Para atingir este objetivo, o artigo está organizado da seguinte forma: a Seção 2 apresenta conceitos relativos a VI com uso de RV, tipos de Visualização existentes e suas áreas de aplicação; a Seção 3 apresenta a proposta e a implementação realizada até o momento; na Seção 4 estão disponibilizados os resultados preliminares obtidos e a Seção 5 apresenta as conclusões.

2. Visualização de Informação

Page 149: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

148

Voltar ao sumário

Partindo da definição de que dado é o conteúdo de um espaço de memória, sem significado ao usuário e a informação é um dado associado a um significado [12], os conceitos a seguir consideram a informação como a matéria-prima para VI, isto é, define-se que os dados a serem visualizados têm algum significado ao usuário.

2.1. Conceitos básicos

Visualização de Informação visa à

transformação de dados abstratos em uma forma de exibição que facilite o seu entendimento e ajude na descoberta de novas informações contidas nos mesmos [13]. Para essa transformação são utilizadas técnicas que mapeiam os dados em metáforas.

Segundo [11], a RV criou uma nova geração de interface, em que usuários têm uma relação mais natural com a aplicação a partir das representações tridimensionais (3D) que permitem interações mais próximas da realidade. A RV envolve imagens calculadas em tempo real; prioriza a interação com o usuário; exige alta capacidade de processamento; usa técnicas e recursos de renderização de modelos tridimensionais e pode utilizar dispositivos especiais. Pode ser tratada de maneira imersiva e não imersiva. As principais características dos ambientes e aplicações de RV referem-se ao nível de interação, imersão e navegação propiciados aos usuários [10]

A VI em um ambiente de RV é uma forma dos humanos visualizarem, manipularem e interagirem com o computador e dados complexos. Essas aplicações podem facilitar o entendimento dos dados, auxiliando administradores na descoberta de novas informações que, sem sua utilização, poderiam permanecer desconhecidas [16], além de possibilitar a visualização dos detalhes com maior riqueza, a compreensão mais rápida do conjunto de dados e o acesso individual aos dados [2]. Em resumo, oferece a possibilidade da representação de um grande volume de dados em um pequeno espaço, tornando maior e mais rápida à percepção das pessoas em relação às informações.

A transformação do dado bruto em uma forma visual mais compreensível é feita a partir da necessidade de obter informações sobre uma situação em particular. O processo consiste em coletar dados dessa situação, organizá-los e transformá-los em tabelas que, por sua vez, são transformadas em estruturas visuais gráficas que melhor representem a informação [17].

Utilizando diversas maneiras de representar dados, a VI pode beneficiar inúmeras áreas, cada uma com suas características e tipos específicos de informação.

Dias [5] apresenta uma melhor forma de compreender o sentido da visualização e da validade do modelo de VI. O autor considera a VI como uma estrutura que utiliza recursos gráficos, com o

propósito de levar o observador a uma rápida abstração da informação e a possibilidade de dedução de novos conhecimentos. Mostra de forma simples e resumida a diferença de percepção de determinada informação, quando apresentada em diferentes contextos.

Segundo [6], com o uso de recursos de VI fica muito mais fácil para uma pessoa capturar o significado de uma imagem do que quando são utilizados vários dados isolados.

Estudos feitos por [16] apontam alguns aspectos para o aumento de cognição quando recursos de VI são utilizados, como: agrupamento de informações e fornecimento de

uma visão geral com possibilidade de busca de detalhes;

maior uso do sistema visual e da memória de trabalho externa;

uso de representações visuais para melhorar a detecção de padrões;

facilidade ao usuário para construir conclusões a partir de uma representação visual;

permissão de manipulação das informações; recursos que auxiliam o usuário no

entendimento e manuseio dos eventos quando em grande quantidade. Alguns conceitos de expressividade e

efetividade devem ser levados em conta durante a construção de um mapeamento visual, como quantidade de formas, cores com suas tonalidades, saturação e brilho, tamanho, textura e orientação. Para [17], a combinação dessas propriedades deve expressar os dados de maneira efetiva. Os conceitos citados pelo autor são: estruturas visuais devem expressar todos os

dados presentes na estrutura de dados, e somente eles;

estruturas visuais devem ser efetivas, no sentido de permitirem rápida interpretação dos dados representados, e fácil distinção entre eles, levando à menor quantidade possível de erros de interpretação.

2.2. Técnicas de VI

Representações visuais ou gráficas correspondem às "figuras" ou "imagens" empregadas para representar o conjunto (ou subconjunto) de dados sob análise.

Existem técnicas de visualização voltadas para os diversos tipos de dados, cada uma com características próprias. A escolha da técnica a ser aplicada em cada situação depende do tipo de informação que está sendo tratada, suas tarefas e finalidades.

Alguns exemplos são apresentados na Tabela 1.

Page 150: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

149

Voltar ao sumário

Tabela 1 - Classes de Representações Visuais [7] Classe Tipo Utilização em

Representação de

Gráficos 2D e 3D

Pontos Circulares

Linhas Barras

Superfícies (para 3D)

Distribuição dos elementos no espaço de domínio, representação da dependência entre

atributos.

Ícones Glifos

e Objetos geométricos

Elementos geométricos 2D ou

3D diversos

Entidades num contexto, representação de grupos de atributos

de diversos tipos.

Mapas

de Linhas

de Superfície

de Ícones, símbolos diversos

Linhas de contorno de regiões, isovaloradas.

Linhas de contorno de regiões, em espaço 3D.

Grupos de atributos

(categorias, escalares, vetoriais, tensoriais).

Diagramas

Nodos e arestas Relacionamentos

diversos

2.3. Metáforas

A metáfora é uma figura de linguagem que transfere um termo para uma esfera de significado que não é a sua, com a finalidade de estabelecer representação do mundo por meio de analogias. Essa transformação é realizada com o auxílio do computador por meio de computação gráfica, processamento de imagens, mineração de dados e interfaces homem-computador.

Como já citado, em VI os conceitos representados são abstratos e gerados a partir de relacionamentos de atributos. Além disso, a não caracterização de sua natureza espacial ou temporal torna a tarefa de sua construção bem complexa já que estes devem ser representados adequadamente [6,16]. A necessidade da criação de metáforas visuais, de mecanismos de interação e a freqüente necessidade de implementar algoritmos complexos para ambas, tornam a elaboração de sistemas de visualização ainda mais complexa.

A Figura 1 apresenta uma visualização que usa uma árvore como metáfora, onde as folhas representam informações sobre pacientes armazenados em uma base de imagens de dados médicos com grande volume de informações [1].

O objetivo é o auxílio na detecção precoce do câncer de mama e fazer com que o usuário ganhe rapidez na percepção das características mais relevantes dos dados pesquisados. Os tons das folhas mostram graus de relevância de cada informação, onde o grau pode ser identificado através de uma legenda.

Figura 1 – Exemplo do uso de metáfora. [1]

2.4. Áreas de Aplicação de VI

A VI pode ser utilizada em todas as áreas que

tenham grandes volumes de dados armazenados e que necessitem de análise destes dados. De acordo com a área de aplicação, recebe nomes diferenciados: Visualização Científica, Visualização Geográfica, Visualização de Negócios, Visualização de Software, Visualização para treinamento.

Alguns autores diferenciam a Visualização de Informação da Visualização Científica, considerando que esta última tem características próprias. A Tabela 2, adaptada de [15], evidencia esta diferenciação,

Tabela 2 – Visualização de Informação comparada com a

Visualização Cientifica Visualização

Científica Visualização de

Informação

Usuário Especializado Altamente técnico.

Diversos, pode ser menos

técnico.

Tarefa Profundo entendimento do fenômeno científico.

Busca, Descoberta,

Relacionamentos.

Entrada

Dados físicos, Medidas,

Resultado e Simulações.

Relações, Dados não físicos e

Informação

Volume Pequeno ou Volumoso

Pequeno ou Volumoso

Freitas et al. [7] salientam que a visualização

científica aplica e desenvolve técnicas de Computação Gráfica para visualizar dados oriundos de computações científicas ou dados coletados de experimentos ou da natureza. Os dados têm uma geometria intrínseca ou intuitiva, ou estão associados a posições no espaço enquanto que a Visualização de Informação prima pela visualização de dados abstratos que podem não ter uma representação visual natural. Os dados não estão associados a posições no espaço, mas sim a elementos de algum domínio de amostragem, e podem representar

Page 151: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

150

Voltar ao sumário

relacionamentos. Em resumo, pode-se dizer que a visualização científica foca o dado e a visualização de informação foca a informação, geralmente abstrata [15].

2.5. Ferramentas de visualização

Na área de Visualização de Informação ferramentas auxiliam usuários de Web em pesquisa, onde os resultados destas pesquisas são apresentados na forma de mapas interativos tendo como metáfora ícones de páginas maiores ou menores, segundo sua pertinência, apresentando vários níveis de detalhes conforme o tipo de informação que este representa, permitindo ainda a visualização de características do seu conteúdo [9].

Na área de treinamento, ferramentas de visualização são utilizadas para simulação do funcionamento de máquinas e equipamentos automatizados, permitindo ao usuário observar de diversos ângulos todo o processo de funcionamento, inclusive ângulos inacessíveis numa máquina real, o que facilita a compreensão do processo [3].

Em Visualização Geográfica a vantagem da visualização tridimensional está na forma como se vê a informação. Na visualização volumétrica a realidade espacial é simulada permitindo ao usuário alcançar um reconhecimento e entendimento mais rápido, sem que haja a necessidade de construir um modelo mental prévio para fazer análises [8].

A Figura 2 apresenta uma ferramenta de visualização de software que possibilita a representação gráfica de programas orientados a objetos. A ferramenta permite visualizar classes (incluindo relacionamentos entre elas), métodos e atributos de um programa Java. Utiliza recursos de cores, transparências, tamanhos e formas diferentes para cada tipo de componente [15].

Figura 2 – Telas: (a) inicial e (b) de Rotação e Zoom

3. Ferramenta VRVis Manager

A necessidade na análise e entendimento de

volumes de dados armazenados em diversos tipos de Sistemas Gerenciadores de Banco de Dados (SGBDs), o tempo despendido nessas tarefas e o anseio de formas visuais adequadas a cada situação, tornam cada vez mais necessário o desenvolvimento de ferramentas de auxílio à pesquisa de informação e tomada de decisão.

Aplicações criadas para tais fins são direcionadas, na maioria, a situações específicas, atendendo um pequeno grupo de usuários.

Muitas dessas aplicações utilizam-se de Data Mining (mineração de dados) que é o processo de extrair informação válida, previamente desconhecida e de máxima abrangência a partir de grandes bases de dados (tipicamente relacionados a negócios, mercado ou pesquisas científicas) [14]. As ferramentas de Data Mining analisam os dados, descobrem problemas ou oportunidades escondidas nos seus relacionamentos, e então diagnosticam o comportamento dos negócios, requerendo a mínima intervenção do usuário. Os resultados obtidos são apresentados na forma de árvores de decisão e tabelas com as regras de classificação. A análise desses resultados torna-se uma tarefa difícil quando considerada a sua forma de apresentação nada amigável [14].

Em contrapartida, ferramentas de VI com RV aplicam técnicas utilizadas em Data Mining, com a grande vantagem de apresentarem os resultados em forma tridimensional, utilizando metáforas e possibilitando interações mais próximas da realidade. Com isso, pode-se aumentar o poder de abstração do contexto e a possibilidade de maior conhecimento de novas informações. Destaca [1] que a grande quantidade dos dados e seus atributos podem ser melhores interpretados se o usuário puder visualizar estas informações em formas gráficas.

O desenvolvimento de novos projetos focando a área de negócios, sem limitar áreas de aplicação, pode aumentar o desempenho de profissionais na compreensão das informações contidas em seus bancos de dados, auxiliando a tomada de decisão em relação aos diversos aspectos das organizações.

A VRVis Manager é uma ferramenta voltada à área de negócios, baseada na ferramenta VRVis [1]. A VRVis foi desenvolvida para atender a área médica na percepção de informações com finalidade de auxiliar na detecção precoce do câncer de mama por meio da visualização de dados pessoais de pacientes, exames e estruturas encontradas em imagens mamográficas. Usa o SGBD MySQL, e oferece dois tipos de metáforas, como mostra Figura 3.

Figura 3 – Metáforas usadas na VRVis: (a) árvore e (b)

pirâmide

Page 152: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

151

Voltar ao sumário

As folhas da árvore representam cada registro filtrado, e o destaque dos dados mais relevantes à consulta ficou a cargo das cores. A imagem da pirâmide representa em ordem decrescente o grau de relevância de cada registro: agrupa no topo os dados mais relevantes e, na sua base, os menos relevantes à consulta.

Esse resultado é obtido a partir de uma interface convencional onde o usuário seleciona parâmetros para consulta, de maneira que, quanto maior a quantidade de parâmetros satisfeitos, maior o grau de relevância. Por meio do grau de relevância, o usuário tem a possibilidade de identificar registros individuais, ao mesmo tempo em que analisa grupos de registros filtrados. Com o resultado dos registros filtrados, é oferecida a possibilidade de escolha da metáfora. A partir da cena 3D gerada o usuário pode navegar pelos registros.

O propósito da VRVis Manager é seguir o modelo inicial da ferramenta apresentada, incluindo como diferenciais: opção de escolha do SGBD; seleção das informações relevantes para a pesquisa; elaboração de parâmetros para o filtro das informações; inferência da metáfora adequada considerando os tipos de parâmetros selecionados; possibilidade do usuário incluir sua própria metáfora dentre várias disponíveis para apresentação gráfica; visualização que proporcione agrupamento de informações semelhante; utilização de mecanismos para destacar relevância de informação, além de armazenar histórico com informações referentes às seleções do usuário para futura reutilização.

A Figura 4 mostra a estrutura os módulos componentes da VRVis Manager, assim como a forma de interação do usuário com mesma e os tipos de acesso ao Banco de Dados (BD).

Figura 4 – Estrutura da Ferramenta VRVis Manager O funcionamento da VRVis Manager segue os

seguintes passos: (1) o usuário seleciona um dos SGBDs oferecidos informando seus dados de acesso; (2) o sistema retorna os metadados extraídos do SGBD e apresenta em uma primeira metáfora em 3D a visualização das tabelas contidas no banco com suas integridades referenciais; (3) o usuário seleciona

as tabelas, os atributos e os parâmetros para filtragem; (4) a ferramenta sugere uma metáfora adequada e apresenta outras como opções; (5) a metáfora selecionada é apresentada e disponibilizada para interação com permissão de rotação, translação e mecanismos de zoom do Ambiente Virtual (AV); (6) se o usuário desejar, pode selecionar um objeto particular para analisar – neste caso, a ferramenta apresenta, em forma textual, os dados referentes ao objeto destacado e (7) quando o usuário finaliza a consulta, é apresentada a opção de armazenamento da pesquisa em um banco de históricos. 4. Resultados Preliminares

Das etapas contidas no projeto da ferramenta

VRVis Manager, até o momento foram concluídas as seguintes tarefas: conexão com diversos SGBDs; recuperação e apresentação dos metadados; apresentação da metáfora de visualização da

estrutura do banco de dados; opção de escolha de uma tabela do banco para

construção do Ambiente Virtual; estudo de caso inicial para Visualização de

Informação. A Figura 5 apresenta a interface para acesso aos

SGBDs. Até o momento são disponibilizadas conexões para os SGBDs MySQL, Oracle, Postgres e Firebird. Salienta-se que cada SGBD incluído exige um estudo dos seus metadados, a fim de que se conheça a estrutura de armazenamento de tabelas e relacionamentos e, assim, permitir a construção do AV inicial, conforme mostrado a seguir.

Figura 5 - Interfaces de acesso aos SGDBs

Na Figura 6 é apresentado um AV inicial para

um BD de uma instituição de ensino, onde as tabelas armazenam dados de cursos, alunos, salas, turmas, notas e freqüência. A cena apresenta o relacionamento dessas tabelas no BD. O objeto no

Page 153: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

152

Voltar ao sumário

formato de cone representa cada tabela e o tamanho dos objetos identifica a quantidade de registros armazenados na tabela. A disposição dos objetos está relacionada à herança, sendo que as tabelas filhas são posicionadas abaixo da tabela-pai.

Figura 6 - Interfaces de apresentação da estrutura da Base

de Dados A Figura 7 apresenta o resultado de um estudo

de caso usado inicialmente para definir os parâmetros de filtragem e a estrutura da ferramenta. Para este experimento foi utilizado um banco de dados em MySQL da mesma instituição de ensino citada anteriormente. Foram selecionados registros de turmas de alunos com suas disciplinas e notas em um determinado semestre. Para a filtragem foram consideradas as matrículas dos alunos nas turmas e a situação final em relação à avaliação das mesmas (aprovado ou reprovado).

Figura 7 – Metáfora de visualização de alunos em turma

Para isso, foi escolhida uma metáfora composta

por figuras geométricas onde as esferas identificam cada aluno. Quando apresentada na cor verde, significa que o aluno não compareceu à avaliação de nenhuma disciplina, sendo um aluno provavelmente desistente. Esferas na cor cinza identificam alunos avaliados em pelo menos uma disciplina; estas sempre conterão um cone na cor vermelha e/ou um

cubo na cor azul - o cubo na cor azul significa que o aluno obteve aprovações em uma ou mais disciplinas e o cone na cor vermelha significa que o aluno obteve reprovações em uma ou mais disciplinas.

A Figura 8 mostra um zoom aplicado em uma parte da cena apresentada na Figura 7. A utilização do zoom é um recurso que auxilia o usuário em uma melhor visualização das informações na cena.

Figura 8 – Exemplo de zoom em parte selecionada da cena

Utilizando o recurso de rotação, o usuário terá a

possibilidade de visualizar o agrupamento de informações semelhantes, que neste estudo de caso está relacionado aos alunos avaliados e não avaliados, como mostra a Figura 9.

Figura 9 – Exemplo de rotação da cena

A escolha desta metáfora foi feita pela

simplicidade e facilidade de visualização da informação para o contexto proposto. As cores e formas foram aplicadas a partir de testes feitos com professores e funcionários que trabalham na instituição à qual pertence o banco de dados, e também com profissionais que atuam na área de negócios.

Outras metáforas ainda serão desenvolvidas a partir de um mapeamento que está sendo realizado. Esse mapeamento consiste na aplicação de um questionário junto a organizações de pequeno e médio porte, que exercem diferentes atividades comerciais, com questionamentos referentes aos processos de negócio, atividades desenvolvidas, informações mais expressivas para tomadas de decisão e os profissionais envolvidos nessa atividade.

Page 154: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

153

Voltar ao sumário

Também está contida no mapeamento a proposta de indicação de uma melhor metáfora para a atividade exercida.

5. Considerações Finais

A Visualização de Informação em conjunto com a Realidade Virtual ainda é pouco aplicada para a área de negócios. São poucas as ferramentas voltadas para a área, sendo que as existentes e publicadas são focadas a um único contexto, permitindo acesso a um único tipo de banco de dados com limitações em relação a metáforas.

Um dos maiores desafios existentes para o desenvolvimento de ferramentas de VI para esta área é torná-la suficientemente genérica, sem perder de vista a usabilidade e o desempenho, fazendo com que seja, de fato, aplicável à tomada de decisão nas organizações.

Espera-se que a generalização na escolha do SGBD, a possibilidade de escolha de uma metáfora adequada de acordo com a abstração do usuário, e as formas de agrupamentos propostos, tornem a VRVis Manager uma ferramenta útil para usuários, independente de sua área de atuação, no qual sejam atendidos seus anseios em encontrar algumas abstrações que permitam beneficiar seu negócio.

Referências Bibliográficas [1] BERTI, Claudia B. VRVis: Ferramenta de Realidade

Virtual para Visualização de Informações, Dissertação Ciência da Computação, UNIVEM, Marília, 2004.

[2] BERTI, Claudia B.; NUNES, Fátima L. S.;

SEMENTILE, Antônio C.; BREGA, José R. F; RODELLO, Ildeberto; TAKASHI, Rafael. “Information Visualization: Using Virtual Reality Techniques in the Three-dimensional Representation of Data from a Medical Images Database”, ACM SIGGRAPH international conference on Virtual Reality continuum and its applications in industry, 2004.

[3] BUCCIOLI, Arthur A.B.; ZORZAL, Ezequiel R.;

KIRNER, Cláudio. Usando Realidade Virtual e Aumentada na Visualização da Simulação de Sistemas de Automação Industrial, Centro Universitário Adventista de São Paulo, Brasil, 2006.

[4] CARD, Stuart K.; MACKINLAY, Jock D.;

SHNEIDERMAN, Ben., Readings in information visualization using vision to think, San Francisco, 1999, 686p.

[5] DIAS, Mateus P. A contribuição da Ciência da

Informação para a Ciência da Informação, 116 f., Dissertação Ciência da Informação, PUC, Campinas, 2000.

[6] ESTIVALET, Luiz Fernando. O Uso de Ícones na

Visualização de Informações. Dissertação Computação, UFRS, Porto Alegre, 2000.

[7] FREITAS, Carla M.D.S.; et al. Introdução à

Visualização de Informações. Revista de Informática Teórica e Aplicada, Volume VIII, Número 2, 2001.

[8] IESCHECK, Andréa L. Representação E Visualização

Volumétrica de Dados Espaciais Para Avaliação de Solos, 2006. 179 f., Doutorado Ciências Geodésicas, Universidade Federal do Paraná, Brasil, 2006.

[9] Disponível em www.kartoo.com, Acessado em 24 de

Setembro 2008. [10] KIRNER, Cláudio; KIRNER Tereza G.; CALONEGO

Júnior, Nivaldo; BUK, Carolina V. Uso de Realidade Aumentada em Ambientes Virtuais de Visualização de Dados, Universidade Metodista de Piracicaba, São Paulo, Brasil, 2004.

[11] KIRNER, Cláudio; SISCOUTO, Robson; Realidade

Virtual e Aumentada Conceitos, Projeto e Aplicações, In: Livro do Pré-Simpósio IX Symposium on Virtual and Augmented Reality, Petrópolis, Rio de Janeiro, 2007, p. 1-72.

[12] KORTH, Henry F.; SILBERSCHATZ, Abraham.

Sistema de bancos de dados, 2ª edição, Makron Books, São Paulo, 1995. 754p.

[13] NASCIMENTO, Hugo A. D.; FERREIRA, Cristiane

B. R.; Visualização de Informações – Uma Abordagem Prática. In: XXV Congresso da Sociedade Brasileira da Computação, UNISINOS, São Leopoldo, Brasil, 2005.

[14] NAVEGA, Sérgio. Princípios Essenciais do Data

Mining, Anais do Infoimagem, Cenadem, Novembro. 2002.

[15] NETO, Roque M.; Visualização Tridimensional de

Programas Orientados a Objeto, Dissertação Ciência da Computação, UNIVEM, Marília, 2006.

[16] OLIVEIRA, Maria P. G. Visualização de Dados

Geográficos Dirigida pelo Modelo Conceitual OMT-G, Tese Computação Aplicada, INPE, S. José dos Campos, 2007.

[17] SILVA, Celmar Guimarães; ROCHA, Heloísa V,

Contribuições de Visualização de Informação para a Área de Educação a Distância. VI Simpósio sobre Fatores Humanos em Sistemas Computacionais — Mediando e Transformando o Cotidiano, UFPR, Curitiba, 2004.

[18] WISE, James A.; Thomas J.J.; Pennock K.; Lantrip

D.; Pottier M; Schur A.; Crow V., “Visualizing The Non-Visual: Spatial Analysis and interaction with Information from Text Documents”, In: IEEE - Institute of Electrical and Electronics Engineers, 1995.

Page 155: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

154

Voltar ao sumário

UM SISTEMA INTERPRETADOR PARA DATILOLOGIA COM SAÍDA TRIDIMENSIONAL

José Remo Ferreira Brega1

Antônio Carlos Sementille1

Ildeberto Aparecido Rodello2

Vinícius Humberto Serapilla DurelliFernando Gutierres Damaceno

1Laboratório de Sistemas de Tempo Real (LSTR) - Departamento de Computação (DCo) - Universidade Estadual Paulista (Unesp) -Av . Luiz E . C . Coube 14-01 - Vargem Limpa - Tel (014) 3201 6000 R 6420 - Caixa Postal 473 - CEP

17 .033-360 - Bauru - SP - Brasil {remo,semente}@fc .unesp .br

2Faculdade de Economia, Administração e Contabilidade de Ribeirão Preto (FEA-RP) . - Av. Bandeirantes 3900 • Monte Alegre • Tel (016) 3602 3896 CEP 14040-900 •Ribeirão Preto - SP – Brasil

rodello@fearp .usp .br

Resumo – Este artigo tem como objetivo principal apresentar um sistema que traduz sentenças, no formato texto, para uma saída tridimensional, gerada a partir da datilologia. Este sistema implementa uma solução viável para comunicação com deficientes auditivos. A tradução das sentenças é feita para a Linguagem Brasileira de Sinais (LIBRAS), mais especificamente seu alfabeto manual.

Palavras-Chave – Datilologia, Java3D, LIBRAS, Tradutor .

Abstract - This paper has as main goal to present a system that translates sentences, in the format text, for an output tridimensional, generated from the datilologia. This system implements a viable solution for communication with deficient auditory. The translation of the sentences is made for the Brazilian Language of Signals (BLS), more specifically its manual alphabet.

Keywords – Datilologia, Java3D, LIBRAS, Translator .

1 INTRODUÇÃO

Uma parte da comunidade deficiente auditiva é não alfabetizada e se comunica usando a Linguagem Brasileira de Sinais (LIBRAS) [1], [2], [5] . Tal problema afeta a comunidade, dado que pessoas portadoras de deficiência auditiva sem alfabetização, não conseguem se comunicar de

maneira eficiente com pessoas que não conhecem a LIBRAS, incluindo amigos e familiares . Muitas das pessoas que não possuem deficiência auditiva consideram a linguagem de sinais uma linguagem frívola e também consideram as pessoas portadoras de deficiência auditiva intelectualmente inferiores ou menos interessantes, assim não despertam interesse em aprender a linguagem de sinais e superar essa barreira na comunicação . Existem algumas ferramentas que procuram resolver este problema [3], [4] e [7] . O presente trabalho apresenta uma solução para a tradução de sentenças para datilologia na forma de um sistema consideravelmente rápido e fácil de manipular . Pretende-se com isso, difundir essa forma de comunicação com os deficientes auditivos .

Do ponto de vista do ensino, o ambiente apresentado neste trabalho, pode ser utilizado por usuários interessados em aprender ou ensinar datilologia . Neste caso, o mesmo deve ser usado como um recurso para ajudar na memorização da datilologia . Ele também pode ser utilizado como ponte para a comunicação com deficientes, bem como no auxílio à alfabetização de deficientes auditivos .

Já para a vida cotidiana, outras aplicações poderiam ser previstas, tais como: atendimento a pessoas portadoras de deficiência auditiva em repartições públicas e concessionárias de serviços públicos (como determina a lei), e atendimento de emergência a pessoas portadoras de deficiência auditiva em hospitais públicos, delegacias e tribunais .

Page 156: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

155

Voltar ao sumário

2

2

2 LIBRAS E DATILOLOGIA

A linguagem permite ao homem estruturar seu pensamento, exprimir seus sentimentos, transferir e adquirir conhecimentos e comunicar-se de maneira geral . A linguagem marca o ingresso do homem na cultura, tornando-o um ser capaz de realizar coisas nunca antes imaginadas . A linguagem é a prova da inteligência do homem . Uma linguagem pode ser um conjunto de palavras ou até mesmo de sinais criados com o intuito de transmitirem algum significado . O homem utiliza instrumentos lingüísticos para efetuar a comunicação escrita, falada ou sinalizada e transmitir sua cultura, assim a língua é um fenômeno sócio cultural à disposição de todos .

2 .1 .Língua e signos lingüísticos

A língua é um sistema abstrato de sinais ou de símbolos de uma comunidade, portanto um instrumento lingüístico particular de determinado grupo . Para expressar idéias o ser humano utiliza-se de sinais ou palavras que são conhecidos como signos lingüísticos . Signo é a combinação dos complexos sonoros e visuais e do significado que este complexo comunica . As partes que constituem o signo são o significante (palavra ou sinal) e o significado (conceito) [5] .

2 .2 . LIBRAS: Linguagem Brasileira de Sinais

LIBRAS ou LSB são os acrônimos usados para se referir à Linguagem Brasileira de Sinais . A LIBRAS é a língua materna (natural) usada pelos deficientes auditivos . As línguas de sinais não são universais, cada país tem sua própria linguagem de sinais que sofre influências culturais e como qualquer outra língua apresenta regionalismo (expressões que diferem de região para região dentro de um mesmo país) [2], [4] . Ao contrário do que muitos acreditam, as linguagens de sinais não são simplesmente mímicas e pantomimas usadas para facilitar a comunicação . São línguas com suas próprias estruturas gramáticais . As linguagens de sinais receberam o status de língua porque são compostas pelos seguintes níveis lingüísticos: o fonológico, o morfológico, o sintático e o semântico . Nas línguas de sinais certos parâmetros são usados para configurar os sinais, a saber: a) configuração das mãos: são as formas que as mãos podem assumir (representar), estas formas podem ser da datilologia (alfabeto manual) ou outras formas feitas pela mão predominante (direita para destros e esquerda para canhotos) ou ainda pelas duas mãos; b) ponto de articulação: local onde o sinal é feito (pode-se tocar alguma parte do corpo ou não); c) movimento: os sinais

podem apresentar movimento ou não; d) expressão facial e/ou corporal: as expressões tanto faciais como corporais são de grande valor para o entendimento real do sinal; e) direção (orientação): os sinais possuem uma direção com relação aos parâmetros citados anteriormente .

2 .3 . Datilologia

A datilologia atual (Figura 1) também conhecida como alfabeto manual, é utilizada para informar (representar) coisas que ainda não possuem um sinal na LIBRAS, para expressar nomes e palavras de línguas estrangeiras . No entanto a datilologia é atribuida a um monge, Pedro Ponce de Léon (1520-1584) a invenção do primeiro alfabeto manual conhecido . Este trabalho está registrado nos livros da instituição religiosa que relata sucesso de uma metodologia que incluía datilologia, escrita e fala .

Figura 1: Alfabeto Manual e Números (AJA, 2004)

3 . DESCRIÇÃO DO SISTEMA Através do levantamento dos sistemas atuais ligados a LIBRAS e datilologia, notou-se que a grande maioria apresenta interfaces bidimensionais . Portanto, o presente sistema difere dos demais por apresentar um ambiente 3D . O sistema foi dividido em dois módulos, a saber: oMódulo Analisador (MA) e o Módulo Gerador (MG) (Figura 2) . O objetivo do MA é servir como “ponte” entre o usuário do sistema em questão, ou seja, para o usuário do sistema com o Módulo Gerador . Além dessa tarefa, o MA também se encarrega de “filtrar” possíveis caracteres inválidos, caracteres de pausa (como espaço em branco e vírgula) e exibir mensagens de status, entre outras funções .

Já o MG é responsável pela interface tridimensional (gerado em Java3D), e com ajustes do texto a ser tratado,

Page 157: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

156

Voltar ao sumário

3

3

bem como a velocidade que será tratada na sentença traduzida . O objetivo no desenvolvimento é de uma interface amigável, ou seja, de fácil entendimento e utilização .

Durante a tradução das sentenças para datilologia é desejável que o usuário consiga interromper o progresso da tradução, para iniciar uma nova tradução, e consiga acessar (utilizar) as outras opções da interface . Dessa maneira a tradução deve ser realizada como uma tarefa pseudo-paralela, para isto utilizamos foi uma subclasse da classe Thread para Java .

Para uma melhor compreensão do aplicativo, a Figura 3 mostra um diagrama resumido

Figura 2: Posição do MA no contexto do sistema

Figura 3: Esboço das classes principais

4 . MODELAGEM DAS MÃOS

A primeira mão virtual foi desenvolvida no formato Wavefront (OBJ) devido à dificuldade de modelagem em Java3D [6] . O primeiro protótipo da mão foi feito com a ajuda da ferramenta Wings 3D (Figura 4), uma ferramenta de modelagem poligonal livre e de fácil utilização [9] .

Depois de desenvolvida a mão, foi necessário fazer as transformações para cada uma das letras em datilologia, para isso foi utilizado software Blender, [8] . A mudança de software foi necessária devido a maior facilidade para transformações geométricas .

Na Figura 5 é mostrada a mão transformada na letra Z, para isso foram feitas várias rotações e translações nos dedos .

Figura 4: Mão renderizada

Figura 5: Letra Z modelada com a ferramenta Blender3D

5 . O SISTEMA EM FUNCIONAMENTO

Um aplicativo que pode ser utilizado por pessoas interessadas em aprender ou se aperfeiçoar em datilologia existiu grande preocupação em manter a interface simples (Figura 6) .

O ambiente captura uma cadeia de caracteres (até de um arquivo externo) e traduz para datilologia, ou seja, exibe a sua representação em datilologia . Caso um símbolo que não possua um correspondente em datilologia seja encontrado na

Page 158: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

157

Voltar ao sumário

4

4

cadeia de caracteres, o usuário é informado do fato (caracteres de pontuação, por exemplo, não possuem representação em datilologia) .

Para um melhor entendimento da tradução, ainda é possível aumentar o tamanho da letra, conforme Figura 7 e aumentar a velocidade do movimento dos dedos (Figura 8) .

Figura 6: ILD realizando tradução de uma cadeia de caracteres

Figura 7: Ajustando o tamanho de exibição

Figura 8: Barra de velocidade

6 . CONCLUSÕES

A linguagem Java é uma linguagem complexa, e foi muito útil no desenvolvimento do sistema apresentado . Foram empregadas algumas técnicas como a manipulação de Stringse threads para ajuste nas tarefas da interface . Aspectos para a criação da interface gráfica não apresentaram nenhuma complexidade .

A API Java 3D foi empregada para geração do ambiente tridimensional e principalmente para realizar o chaveamento entre as mãos . Para a modelagem das mãos em questão foram empregadas duas ferramentas, uma delas para se realizar a modelagem e a outra para criar a movimentação . Respectivamente as ferramentas são Wings 3D e Blender .

Espera-se que o presente trabalho contribua para difundir a LIBRAS, a datilologia, e assim ajudar os deficientes auditivos a se expressarem e serem entendidos .

REFERÊNCIAS BIBLIOGRÁFICAS

[1] BRITO, L . F . A Língua Brasileira de Sinais . Disponível em <www .ines .org .br/ines_livros/fasc7_principal .htm> . Acesso em 11 de outubro de 2006, 2006 .

[2] CAPOVILLA, Fernando C ., et al . Brazilian Sign Language Lexicography and Technology: Dictionary Digital Encyclopedia, Chereme-Based Sign Retrieval, and Quadriplegic Deaf Communication Systems . Sign Language Studies, vol . 3, no . 4, 2003 .

[3] SUTTON, Valerie . SignWriting Site . Disponível em: http://www .signwriting .org Acesso em 11 de outubro de 2006, 2006 .

Page 159: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

158

Voltar ao sumário

5

5

[4] FUSCO, E . X-LIBRAS: Um Ambiente Virtual para LIBRAS . Dissertação de Mestrado, Centro Universitário Eurípides de Marília, 2004 .

[5] INSTITUTO NACIONAL DE EDUCAÇÃO DOS SURDOS (INES) . Disponível em http://www .ines .org .br/ines_livros/SUMARIO .HTM . Acesso em 11 de outubro de 2006, 2006 .

[6] Java3D API . Disponível em: < http://java .sun .com/products/java-media/3D/ . Acesso em 03 de outubro de 2008, 2008 .

[7] SIGNINGAVATAR . Disponível em http://www .vcom3d .com . Acesso em 03 de outubro de 2008, 2008

[8] BLENDER . Disponível em www .blender .org . Acesso em 03 de outubro de 2008, 2008 .

[9] WINGS 3D . Disponível em http://www .wings3d .com . Acesso em 03 de outubro de 2008, 2008 .

Page 160: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

159

Voltar ao sumário

sessão TécnicA 5

rv: técnicas e algoritmoschair: ildeberto rodelo - usp

Page 161: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

160

Voltar ao sumário

Renderizacao de Cenas Tridimensionais Interativasem Computadores de Baixo Desempenho

Maikon Cismoski dos SantosUniversidade Federal do ParanaDepartamento de Informatica

Centro Politecnico - Jardim das AmericasCuritiba-PR, Brasil, 81531-990

maikoncs@inf .ufpr .br

Helio PedriniUniversidade Estadual de Campinas

Instituto de ComputacaoCidade Universitaria

Campinas-SP, Brasil, 13084-971helio@ic .unicamp .br

Resumo

O constante avanco tecnologico proporciona o surgi-mento de unidades de processamento grafico poderosas,capazes de renderizar modelos tridimensionais complexos.Entretanto, em computadores de baixo desempenho, quenao contam com hardware grafico e possuem recursos dearmazenamento e poder de processamento limitados, a ta-refa de renderizacao desses modelos se torna um desa-fio. Este trabalho propoe e implementa uma abordagempara renderizacao remota e sob demanda da cena 3D des-tinada a esse tipo de computador, empregando a tecnica deRenderizacao Baseada em Imagens 3D Warping para apri-morar o processo de renderizacao, permitindo que o clienteremoto renderize localmente novas vistas do ambiente vir-tual, enquanto espera por dados requisitados ao servidorou ate mesmo quando ha problemas em sua transmissao,alem de reduzir os efeitos causados pela latencia de rede.

1 Introducao

A renderizacao de cenas tridimensionais (3D) e uma ta-refa bem conhecida em diferentes tipos de aplicacao, comojogos e ambientes virtuais em geral . A partir de um modelo3D sao produzidas imagens baseadas nas informacoes tridi-mensionais deste modelo, como geometria, ponto de vista,texturas e efeitos de iluminacao .

Em Realidade Virtual, interfaces simulam um ambien-te real e permitem aos ususarios visualizar e manipu-lar modelos complexos com alto grau de interacao . Al-gumas aplicacoes de Realidade Virtual que envolvem arenderizacao de cenas 3D incluem educacao por videocon-ferencia, simulacao e treinamento de processos em temporeal, jogos e entretenimento .

O constante avanco tecnologico proporciona o surgi-

mento de unidades de processamento grafico (GPU, doingles, Graphics Processing Unit) cada vez mais poderosas,capazes de renderizar modelos 3D complexos, contendouma grande quantidade de polıgonos e representando umalto grau de realismo . Entretanto, reparticoes publicas, taiscomo escolas, nem sempre dispoem de um parque compu-tacional com esses recursos graficos, sendo comumente for-mada por computadores de baixo desempenho, com poderde processamento e recursos de armazenamento limitados,restringindo-se a renderizacao de cenas 3D em ambientesvirtuais que contenham poucos detalhes .

Um paradigma que pode ser utilizado para tentar resolveresse problema e a renderizacao remota da cena [9, 22, 23,26], a qual consiste em renderizar, sob demanda, o conteudo3D em um servidor robusto com grande capacidade de pro-cessamento grafico e transmitir para os clientes as imagensou um vıdeo codificado com poucos quadros resultantesdo processo de renderizacao . Quando o cliente recebe asimagens renderizadas ou vıdeo codificado, ele apenas exibeesse conteudo na tela, deixando o processamento mais lentoa cargo do servidor . Quando o observador desejar mover-se no ambiente virtual, uma nova renderizacao relativa aoponto de vista requerido e solicitado ao servidor .

O problema desse paradigma e sua suscetibilidade alatencia de rede durante a transmissao das imagens do ser-vidor para o cliente . Sempre quando um pacote enviadosofre um atraso, isso afeta diretamente a taxa de exibicaodos quadros (imagens) no cliente, tardando a visualizacaodo conteudo transmitido pelo servidor .

Tecnicas denominadas Renderizacao Baseada em Ima-gens, conhecidas pela sigla IBR (do ingles Image-BasedRendering), tem sido muito utilizadas por pesquisadoresnestes ultimos anos como mecanismo para renderizacao denovas vistas a partir de imagens (amostras), ao inves deutilizar as tradicionais primitivas geometricas . Essa carac-terıstica faz com que o custo para renderizar uma vista em-

Page 162: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

161

Voltar ao sumário

pregando IBR seja independente da complexidade da cena econdicionado a resolucao da imagem, adequado para com-putadores de baixo desempenho .

Entretanto, a renderizacao de cenas 3D completas queoferecam uma movimentacao suave sobre o ambiente uti-lizando IBR requer um grande numero de imagens de en-trada, podendo ser impraticavel em computadores de baixodesempenho, por possuırem espaco de armazenamento li-mitado .

Baseado nessa premissa, este trabalho utiliza umarenderizacao remota da cena e emprega a tecnica de3D warping para renderizar vistas localmente no cliente,usando somente o ultimo quadro recebido . Assim, o clien-te e capaz de renderizar novas vistas enquanto espera porresıduos1 requisitados ao servidor ou ate mesmo quando haproblemas em sua transmissao, alem de reduzir os efeitoscausados pela latencia de rede .

Este trabalho esta organizado como segue . A secao 2apresenta as principais tecnicas de IBR e suas carac-terısticas, definindo uma tecnica de IBR apropriada para ocontexto do trabalho . Os trabalhos previamente propostosutilizados na renderizacao remota de cenas 3D sao descritosna secao 3 . A metodologia e apresentada nas secoes 4, 5 e 6 .Alguns resultados experimentais sao ilustrados e discutidosna secao 7 . Finalmente, as conclusoes sao apresentadas nasecao 8 .

2 Renderizacao Baseada em Imagens

A combinacao entre as areas de visao computacional ecomputacao grafica proporcionou a criacao de um conjuntode tecnicas denominadas Renderizacao Baseada em Ima-gens (IBR). A classificacao das tecnicas de IBR neste traba-lho foi determinada de acordo com a informacao geometricaassociada em cada uma: renderizacao sem geometria, emque apenas imagens (amostras) sao utilizadas para renderi-zar novas vistas, e a renderizacao com geometria que, alemde imagens, utiliza algum tipo de informacao geometricaassociada como a profundidade dos pixels de cada amostra .

Entre as tecnicas de IBR que empregam somente ima-gens para renderizar novas vistas, as principais sao: pano-ramas cilındricos, mosaicos concentricos, light field, lumi-graph e plenoptic stitching .

Panoramas cilındricos, inicialmente propostos porChen [10], tornaram-se muito conhecidos por suaimplementacao em um produto comercial chamadoQuickTime R� VR [2] . A cena e formada por uma ima-gem de panorama mapeada em uma projecao cilındrica.

1E uma imagem que armazena somente a informacao necessaria parapreencher os buracos (lacunas) e a desoclusao contida na vista gerada pelo3D warping no cliente . Os problemas encontrados nas vistas geradas pelo3D warping sao comumente chamados de artefatos .

A orientacao do ponto de vista atual do observador, junta-mente com campo de visao e distancia focal da camera, de-finem a regiao visıvel da imagem de panorama. Uma novavista e renderizada atraves do warping da regiao visıvel parauma vista planar, criando uma nova imagem que representao correto ponto de vista . A principal vantagem dessa abor-dagem e o emprego de somente uma unica imagem de pa-norama para renderizar novas vistas, porem, o observador efixo em um ponto de vista arbitrario e a exploracao do am-biente e limitada a movimentos de rotacao em torno desteponto .

Mosaicos concentricos [31] e uma tecnica que deriva oconceito de panoramas cilındricos, permitindo que o ob-servador tenha liberdade de movimentacao dentro de umaregiao circular, alem de usufruir de efeitos de luz . Duranteo processo de renderizacao, o observador pode-se locomo-ver dentro da area circular, formada por varios mosaicosconcentricos . A renderizacao dos quadros possui um me-lhor resultado quando a distancia radial e pequena entre ummosaico e outro adjacente . Quanto maior for a distancia,mais interpolacao e necessaria para construir a nova vista,comprometendo a qualidade . Uma cena com grande di-mensao necessitaria de uma enorme quantidade de mosai-cos concentricos, inviabilizando o uso dessa tecnica porcomputadores de baixo desempenho, devido a grande quan-tidade de dados a serem carregados .

Pelos mesmos motivos encontrados em mosaicosconcentricos, light field [19] e lumigraph [14] sao impra-ticaveis para computadores de baixo desempenho . Essasabordagens calculam a interseccao dos raios de luz com doisplanos relativos ao objeto ou cena 3D delimitado por umacaixa envoltoria (bounding box), criando uma base de amos-tras utilizadas no processo de renderizacao . Dada a posicaoe direcao do ponto de vista desejado, as interseccoes dosraios formados para cada pixel sobre os planos sao calcula-das . Cada interseccao e relacionada a um pixel de uma de-terminada amostra, armazenada na base de dados, e a ima-gem final do processo de renderizacao e construıda atravesda interpolacao dos pixels contidos nas amostras .

Plenoptic stitching [1] e uma tecnica de IBR que propor-ciona a exploracao de ambientes interativos 3D que nao pos-suam obstrucoes, com uma movimentacao lisa, utilizandoimagens do mundo real . A cena e constituıda por cami-nhos pre-definidos, criando uma grade de forma irregular,tal que ao longo de cada caminho sao capturadas variasimagens omnidirecionais2 . Novas vistas sao construıdasatraves de um warping das imagens omnidirecionais parauma reprojecao planar, relativo a posicao atual do obser-vador no ambiente virtual . A principal desvantagem destemetodo e a enorme quantidade de dados que um simplesambiente necessita para sua construcao, inviabilizando seu

2Imagem panoramica com um grande campo de visao, chegando ate360◦ [32] .

Page 163: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

162

Voltar ao sumário

uso em computadores de baixo desempenho .Entre as tecnicas que empregam algum tipo de

informacao geometrica para renderizar novas vistas, as maisutilizadas sao: view interpolation, view morphing, 3D war-ping e view-dependent texture mapping (VDTM) .

View interpolation [11] e view morphing [29] renderi-zam novas vistas a partir da transicao de duas imagensfontes (morphing), relativo ao ponto de vista desejado . Omorphing aplicado por estas tecnicas utilizam-se da posicaoe orientacao da camera, juntamente com a correspondenciaentre os pixels e segmentos de retas das duas imagensde entrada para renderizar novas vistas, aproximando umatransformacao 3D de um objeto ou cena . As vistas ge-radas empregando view interpolation podem gerar vistasgeometricamente incorretas (torcoes na forma do objeto oucena) em casos onde as imagens de entrada nao estao pa-ralelas com relacao ao plano da imagem da camera [29] .Ja view morphing previne esse problema, mas requer aespecificacao manual de segmentos de retas nas imagens deentrada para o calculo da correspondencia das imagens .

3D warping de imagens [21] utiliza uma ou mais ima-gens de entrada com a informacao de profundidade dos pi-xel associada em cada uma, juntamente com os parametrosda camera para renderizar novas vistas, com a projecao dospixels das imagens de entrada para uma imagem destino,relativo ao ponto de vista desejado . Essa projecao realizauma transformacao geometrica mapeando as imagens de en-trada para uma imagem destino, que representa uma vistaarbitraria desejada . Problemas como buracos e desoclusao,denominados artefatos, podem surgir na imagem destino .Buracos aparecem devido a diferenca entre resolucao deamostragem entre a imagem fonte e a destino . Desoclusaosao regioes na imagem destino que nao receberam valoresdurante o processo de amostragem dos pixels da imagemfonte para a destino .

Para preencher os buracos, a forma mais comum utili-zada e a expansao dos pixels da imagem fonte para a des-tino durante o mapeamento, fazendo com que um pixel daimagem fonte seja mapeado para varios da imagem destino .Esse metodo e denominado splatting [4, 20, 30] . A deso-clusao ocorre quando parte da cena que esta sendo visua-lizada na imagem destino nao esta na imagem fonte . Umaforma de reduzir esse problema e a utilizacao de varias ima-gens fontes no warping para a imagem destino ou uso deLayered Depth Image (LDI) [30], que realiza a uniao demultiplas imagens fontes em uma unica . Cada pixel da ima-gem fonte e composto por multiplos valores de cor e profun-didade, reduzindo ou praticamente resolvendo o problemade desoclusao .

Diferente dos metodos de mapeamento de texturas con-vencionais, em que imagens sao utilizadas para colorir facesde um modelo, view-dependent texture mapping (VDTM)interpola duas ou mais imagens de entrada referente a cena,

dependendo do ponto de vista do usuario . VDTM foi pro-posto por Debevec et al . [13], que apresenta uma abordagempara modelagem e renderizacao de cenas arquitetonicas uti-lizando imagens reais . Inicialmente, um modelo geometricoaproximado e criado a partir de um conjunto de imagensreais e e aplicado VDTM neste modelo para renderizar no-vas vistas . O processo de modelagem e manual e arduo,podendo se tornar impraticavel em cenas com grande di-mensao . Alem disso, a modelagem e baseada em arestas edetalhes geometricos que podem ser perdidos nos modelosconstruıdos.

Com o emprego de poucas imagens, a renderizacao deum ambiente completo atraves de IBR e um grande desa-fio. Por outro lado, o uso de muitas amostras pode-se tornarimpraticavel em computadores de baixo desempenho, pornao conseguir carregar na memoria todas as imagens ne-cessarias para renderizar as vistas .

Por conta disso, este trabalho emprega uma renderizacaoremota da cena e utiliza a tecnica de IBR 3D warping paraauxiliar nesse processo . A tecnica 3D warping foi escolhidapor possibilitar a renderizacao de novas vistas a partir deuma unica imagem de entrada, sendo que o cliente remotopode renderizar novas vistas localmente atraves do ultimoquadro recebido .

3 Trabalhos Relacionados

A renderizacao remota de cenas 3D interativas foi pre-viamente proposta em varios trabalhos . Esta secao apre-senta alguns trabalhos relacionados, cujo principal objetivoe viabilizar a visualizacao de objetos ou cenas 3D em dis-positivos de baixo desempenho, tais como celulares e PDAs(Personal Digital Assistant) .

Chim et al . [12] e Yang e Kuo [34] empregam o con-ceito de malhas progressivas3 para reduzir o tempo de trans-missao e renderizacao de modelos 3D utilizando redes delargura de banda limitada . Embora, a utilizacao de malhasprogressivas permita transmitir os modelos 3D do servidorpara os clientes otimizando o uso da rede, uma vez quemenos dados sao transmitidos, comparada com uma trans-missao que replica o modelo completo, malhas progressivassao impraticaveis para grandes modelos devido ao enormetempo gasto para construi-las [4] .

Quillet et al . [27] propoem um metodo para renderizacaoremota de modelos 3D de grandes cidades . O processo derenderizacao e baseado em linhas, com o objetivo de reduziro tamanho dos modelos e conseguir uma transmissao maiseficiente dos dados do servidor para o cliente. Estes da-

3Inicialmente proposta por Hoppe [16], esta tecnica e baseada em duastransformacoes aplicadas na malha de triangulos do modelo, o colapsode arestas, em que faces da malha sao removidas, e a divisao de arestas,adicionando-se novas faces . Dada uma malha de triangulos arbitraria, estatecnica e capaz de reduzir ou aumentar sua resolucao progressivamente .

Page 164: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

163

Voltar ao sumário

dos sao linhas armazenadas em uma forma vetorial, criadasa partir de um conjunto de fotografias, que representam aaparencia externa de predios e construcoes das ruas de umacidade . As principais desvantagens dessa abordagem saoo emprego de uma renderizacao que nao e foto-realista e arestricao no uso de modelos que apenas representam umaaparencia externa de edifıcios e construcoes de ruas de umacidade .

Hachet et al . [15] propoem um sistema de navegacao ba-seado em dispositivos moveis, utilizados como guia em ca-minhadas ou passeios turısticos, em que o usuario visualizao terreno 3D em sua posicao atual e informacoes comple-mentares (nome de montanhas, altura) sobre o local . Se-melhante a tecnica baseada em panoramas cilındricos, essaabordagem utiliza panoramas cubicos para renderizar o am-biente . Sempre que o usuario deseja visualizar outro pontode vista, ele deve manualmente requisitar ao servidor, ca-racterizando uma navegacao que nao e suave no ambiente .

Outros trabalhos que empregam a abordagem baseadaem panoramas na renderizacao remota de ambientes vir-tuais sao encontrados em [6, 7, 8, 18], provendo umamovimentacao suave no ambiente virtual . Nos trabalhosque empregam essa abordagem, embora proporcionem umaexploracao suave do ambiente, os movimentos do usuariosao muito limitados durante sua navegacao . O usuario naopode mover-se para a esquerda ou para a direita, os movi-mentos de translacao sao limitados para frente e para trasna direcao atual do observador . O movimento de rotacao navertical tambem nao e permitido .

Bao e Gourlay [3, 4] e Bao et al . [5] empregam atecnica de IBR 3D warping para auxiliar no processo derenderizacao remota da cena, buscando reduzir o tamanhodas imagens transmitidas com o uso de imagens de resıduoe permitindo que o cliente renderize novas vistas local-mente, enquanto espera pelos resıduos requisitados ao ser-vidor . Uma grande desvantagem dessa abordagem e o fatodo cliente ter que esperar o resıduo correspondente a ultimavista renderizada pelo 3D warping para conseguir compor avista exata da cena, livre de artefatos . Caso o cliente recebaresıduos referentes a requisicoes mais antigas que o atualponto de vista, estes resıduos sao descartados .

Alem disso, a transmissao dos resıduos realizada do ser-vidor para os clientes exige um protocolo confiavel, queofereca garantia de entrega . Se o cliente nao receber umresıduo gerado pelo servidor, o proximo resıduo computadonao sera correspondente a vista renderizada pelo cliente,nao sendo possıvel compor a vista exata da cena. Um pro-tocolo que garante a entrega de pacotes e o TCP, provendouma conexao confiavel, mas possui uma latencia potencial .Em oposicao, UDP e um protocolo que nao oferece garan-tia na entrega de pacotes, mas a transmissao dos pacotesenviados e mais rapida que pelo TCP [34] .

Este trabalho propoe e implementa uma abordagem para

renderizacao remota da cena 3D sob demanda, empregando3D warping para renderizar as vistas no cliente enquantoespera os dados de uma requisicao feita ao servidor, bemcomo o uso de imagens de resıduo. Alem disso, cria ummecanismo para que o cliente consiga produzir a vista exatade forma progressiva, refinando a vista exibida conformeos resıduos sao recebidos . Para a transmissao dos dados eutilizado um protocolo que busca a rapidez na transmissaodos dados, nao a confiabilidade na entrega dos pacotes, pre-venindo que pacotes perdidos nao afetem o bom funciona-mento do sistema .

4 Arquitetura Cliente-Servidor

A arquitetura cliente-servidor e ilustrada na Figura 1 .Inicialmente, o servidor renderiza e transmite para o clienteo primeiro quadro, relativo ao ponto de vista inicial . Cadaquadro renderizado e uma imagem com profundidade, com-posta pela cor dos pixels e a informacao de profundidadeassociada a cada pixel .

Com o primeiro quadro recebido, o cliente esta apto aexplorar o ambiente virtual . Quando uma interacao no am-biente e desejada, o cliente envia o movimento requeridojuntamente com seu atual ponto de vista para o servidor erenderiza localmente essa requisicao empregando a tecnica3D warping na ultima vista exibida .

Figura 1. Arquitetura cliente-servidor.

A vista renderizada localmente e exibida na tela e co-piada para um buffer . Assim, o cliente e capaz de rende-rizar vistas enquanto espera dados vindos do servidor, em-bora a vista exibida possa apresentar artefatos (buracos e

Page 165: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

164

Voltar ao sumário

desoclusao) . Estes artefatos sao completamente elimina-dos quando o resıduo transmitido pelo servidor e recebido,criando a vista exata da cena . O buffer no cliente e usadopara armazenar as ultimas vistas renderizadas localmente .Essas imagens sao empregadas na criacao de vistas que re-presentam a renderizacao exata da cena .

O servidor, ao receber uma requisicao, altera o pontode vista da cena e realiza a renderizacao da vista dese-jada empregando dois metodos: renderizacao da cena erenderizacao via 3D warping . A renderizacao da cena geraa vista exata, usada para computar o resıduo. Uma copiadessa imagem e armazenada no buffer, utilizada em umafutura renderizacao pelo 3D warping .

A renderizacao via 3D warping computa a vista identicaa que foi renderizada localmente pelo cliente, que contemartefatos, atraves do uso de uma imagem fonte igual a usadana renderizacao pelo cliente remoto . Esta imagem e encon-trada no buffer do proprio servidor de acordo com o atualponto de vista do cliente .

As duas imagens renderizadas por esses dois metodossao empregadas na computacao da imagem de resıduo, queconsiste em subtrair a vista exata pela gerada no warping,criando uma imagem que armazena uma informacao es-parsa, representando os buracos e a desoclusao da vista ren-derizada localmente pelo cliente . O resıduo e comprimidoe enviado para o cliente juntamente com o ponto de vistausado na renderizacao desse dado . Quando esse conteudoe recebido, o cliente computa a vista exata concatenando oresıduo com a vista renderizada via 3D warping correspon-dente, encontrada no buffer local do cliente e, finalmente, avista exata da cena e exibida .

O buffer no cliente tem uma funcao importante na arqui-tetura . Caso o resıduo recebido seja relativo a uma movi-mentacao mais antiga do que a atual exibida pelo cliente(enquanto o servidor renderiza e transmite a vista, o clientepode renderizar varias vistas localmente), este resıduo naoe descartado e sim utilizado na criacao da vista exata cor-respondente a essa movimentacao e uma nova vista e lo-calmente renderizada para o atual ponto de vista do clienteempregando essa imagem, refinando a qualidade da vistaexibida conforme os resıduos sao recebidos .

O emprego de 3D warping, alem de auxiliar no pro-cesso de renderizacao da cena, previne a sobrecarga do ser-vidor, que renderiza somente a ultima requisicao recebidade um cliente arbitrario . Por exemplo, se enquanto o ser-vidor renderiza uma vista para o cliente C1, C2 requisitoucinco novas vistas, o servidor renderizara somente a ultimarequisicao de C2, as demais serao descartadas . Esse pro-cedimento acelera a renderizacao e nao causa perdas deinformacao para o cliente, uma vez que o cliente ja ren-derizou localmente as vistas e necessita somente do resıduoreferente ao ultimo movimento para compor a vista exata .

5 Compressao e Transmissao dos Dados

Para a compressao das imagens de resıduos e empregadoum metodo de compressao com perda, o JPEG [17] . Estemetodo de compressao e muito utilizado sobre diferentes ti-pos de imagens e possui o grau de compressao ajustavel, talque quanto maior o grau de compressao, pior sera a quali-dade da imagem comprimida e vice-versa .

As imagens comprimidas sao transmitidas com o usodo protocolo UDP, buscando-se rapidez na transmissao dosdados e nao a garantia de entrega . A escolha do proto-colo UDP se deve ao fato de ser um protocolo adequadopara a transmissao de fluxo de dados em aplicacoes queadmitem perda de informacao, por possuir uma sobrecarga(overhead) pequena [28, 33] .

Inicialmente, a imagem de resıduo e dividida em variospacotes, tal que cada pacote possui um cabecalho contendoa identificacao do resıduo ao qual ele pertence e seu numero .Em seguida, os pacotes sao transmitidos ao cliente remoto .

Ao receber os pacotes, o cliente vai armazenando-os or-denadamente em um pequeno buffer e classificando-os paraqual resıduo eles pertencem, de acordo com a informacao decabecalho contida em cada pacote . Quando todos os pacotesreferentes a um resıduo arbitrario tiverem sido recebidos, ospacotes serao unidos formando a imagem de resıduo. Casoum determinado pacote nao seja recebido, o resıduo ao qualo pacote pertence sera descartado .

6 Minimizar a Presenca de Artefatos

A renderizacao de vistas empregando 3D warping podeproduzir imagens que apresentam buracos e desoclusao .Esse problema e denominado artefato . Para preencher osburacos e utilizada a tecnica de splatting, que consiste naexpansao dos pixels da imagem fonte para a destino duranteo warping, fazendo com que um pixel da imagem fonte sejamapeado para varios da imagem destino .

O problema de desoclusao e contornado com o empregode uma imagem fonte que possui um tamanho maior que ocampo de visao (FOV, do ingles, Field of View) da camerautilizada na visualizacao da cena . Assim, quando a vistadestino contem uma leve mudanca no ponto de vista emrelacao a vista fonte, a informacao referente a essa mudancae encontrada na imagem fonte durante o warping, por pos-suir um tamanho maior que o FOV da camera, reduzindo oproblema de desoclusao .

7 Resultados Experimentais

Um prototipo desenvolvido e utilizado para avaliar aabordagem proposta . Quando o cliente deseja se movimen-tar na cena, uma requisicao da vista referente a esse movi-mento e feita ao servidor remoto, que renderiza, comprime

Page 166: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

165

Voltar ao sumário

e transmite a imagem resultante para o cliente . O servidorsuporta o atendimento a multiplos usuarios .

Para a realizacao dos testes de avaliacao do prototipo,utilizou-se um servidor contendo uma CPU Intel R�

Pentium R� 4 dual core 3 .0GHz, 1GBytes de RAM eplaca de vıdeo NVidia GeForce 6200 com 256 MBytes dememoria de vıdeo.

O teste tambem conta com tres clientes, que possuemdiferentes configuracoes de hardware . Como o processa-mento mais lento e feito no servidor e as imagens sao trans-mitidas para o cliente, que apenas as exibe na tela, o recursodisponıvel em cada cliente nao apresentou grande influenciana taxa de exibicao dos quadros, uma vez que essa taxa ecompletamente dependente do servidor e da rede .

O modulo cliente do prototipo e apresentado na Figura 2 .O usuario pode interagir na cena atraves dos botoes conti-dos na interface ou pelas teclas direcionais do teclado (es-querda, direita, etc .) . Este modulo foi construıdo utilizandoum Applet Java, proporcionando a execucao do prototipoem diferentes plataformas e diretamente no navegador .

Figura 2. Modulo cliente do prototipo.

O servidor foi escrito em C++, que renderiza modelosVRML empregando Mesa [25], juntamente com a inter-face OSMesa [24], que permite que os quadros renderizadossejam armazenados diretamente em um espaco alocado namemoria, ao inves de serem exibidos em uma janela comonos metodos convencionais, buscando um melhor desem-

penho na renderizacao . Alem disso, foi usado um modeloVRML com 1334 faces, representando a cena 3D, quadroscom dimensao de 400×400 pixels com formato de cor RGBe a transmissao dos dados do servidor para o cliente viaInternet . O servidor e executado no sistema operacionalUbuntu Linux .

A taxa de renderizacao no servidor foi em media 400FPS (quadros por segundo) e nos clientes variou entre 115a 227 FPS . O FPS obtido durante a renderizacao da cenanos clientes e ilustrado na Figura 3 . O grafico mostra oFPS alcancado durante a interacao simultanea de tres clien-tes no ambiente virtual com relacao a um instante de tempoarbitrario .

No geral, o FPS resultante foi, em media, de 180 FPS,estavel durante a interacao dos clientes . Os valores de picoobservados no grafico, como por exemplo no instante detempo 25, mostram que, enquanto os clientes 2 e 3 estaosendo atendidos com boas taxas de renderizacao, o cliente1 tem uma queda em sua taxa de renderizacao . Isso ocorreporque o servidor nao consegue atender as requisicoes detodos os clientes de forma balanceada, renderizando muitasrequisicoes para o clientes 2 e 3, enquanto o cliente 1 esperapara ser atendido, esperando o servidor ficar disponıvel.

Dessa forma, quando varias requisicoes sao feitas ao ser-vidor em um intervalo de tempo curto, isto faz com queo servidor fique sobrecarregado, que demora a renderizar,comprimir e transmitir todos os quadros requisitados, ge-rando um atraso no recebimento dos pacotes por parte docliente e, consequentemente, o FPS diminui . Por outro lado,quando as requisicoes sao feitas com um intervalo de tempomaior entre elas, o FPS aumenta .

Figura 3. Taxa de renderizacao obtida nosclientes durante a interacao no ambiente vir-tual.

A sobrecarga sofrida pelo servidor ocorre por ele rende-rizar todas as vistas requisitadas . Com o emprego da tecnica3D warping, de acordo com a completa arquitetura cliente-servidor proposta, esse problema e reduzido porque o servi-

Page 167: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

166

Voltar ao sumário

dor apenas renderiza a ultima requisicao feita pelo cliente,as demais sao descartadas .

8 Conclusoes e Trabalhos Futuros

Este trabalho apresentou uma abordagem para arenderizacao de cenas 3D interativas para computadoresde baixo desempenho, que nao contam com um hardwaregrafico e que possuem recursos de armazenamento e pro-cessamento limitados .

A cena e renderizada remotamente e sob demanda emum servidor robusto . Imagens resultantes desse processosao transmitidas para os clientes, que as exibe na tela . Parareduzir o efeito causado pela latencia de rede foi propostoo uso de uma tecnica de IBR 3D warping, empregada narenderizacao de vistas localmente no cliente enquanto es-pera pelos dados requisitados ao servidor .

Como trabalhos futuros e proposta uma extensao do de-senvolvimento do prototipo, adicionando-se os modulos degeracao da vista exata a partir do resıduo e implementacaodos buffers no cliente e no servidor . Alem disso, sera rea-lizada uma avaliacao mais detalhada do desempenho doprototipo contemplando um parque maior de computado-res de baixo desempenho atraves da analise da taxa derenderizacao da cena 3D obtida .

Referencias

[1] D . G . Aliaga and I . Carlbom . Plenoptic Stitching: A Sca-lable Method for Reconstructing 3D Interactive Walkth-roughs . In SIGGRAPH ’01: Proceedings of the 28th AnnualConference on Computer Graphics and Interactive Techni-ques, pages 443–450, New York, NY, USA, 2001 . ACM .

[2] Apple Inc . QuickTime VR . http://www.apple.com/quicktime/technologies/qtvr/ .

[3] P . Bao and D . Gourlay . Remote Walkthrough over Mo-bile Networks using 3-D Image Warping and Streaming .IEE Proceedings - Vision, Image and Signal Processing,151(4):329–336, Aug . 2004 .

[4] P . Bao and D . Gourlay . A Framework for Remote Renderingof 3-D Scenes on Limited Mobile Devices . IEEE Transacti-ons on Multimedia, 8(2):382–389, April 2006 .

[5] P . Bao, D . Gourlay, and Y . Li . Mobile Collaborative Walkth-rough using 3D Image Warping and Streaming . In ITI 2004 -Proceedings of the 26th International Conference on Infor-mation Technology Interfaces, pages 279–285 Vol .1, June2004 .

[6] A . Boukerche and R . W . N . Pazzi . Enhancing RemoteWalkthrough for E-learning Environments on Mobile Devi-ces over Heterogeneous Networks . In Proceedings of 2006IEEE International Conference on Virtual Environments,Human-Computer Interfaces and Measurement Systems, pa-ges 13–18, July 2006 .

[7] A . Boukerche and R . W . N . Pazzi . Remote Rendering andStreaming of Progressive Panoramas for Mobile Devices . In

MULTIMEDIA ’06: Proceedings of the 14th Annual ACMInternational Conference on Multimedia, pages 691–694,New York, NY, USA, 2006 . ACM .

[8] A . Boukerche and R . W . N . Pazzi . A Peer-to-Peer Appro-ach for Remote Rendering and Image Streaming in Walkth-rough Applications . In Proceedings of 2007 IEEE Inter-national Conference on Communications - ICC ’07, pages1692–1697, June 2007 .

[9] M . Brachtl, J . Slajs, and P . Slavık. PDA based Naviga-tion System for a 3D Environment . Computers & Graphics,25:627–634, Aug 2001 .

[10] S . E . Chen . QuickTime VR - An Image-Based Approachto Virtual Environment Navigation . Computer Graphics,29(Annual Conference Series):29–38, 1995 .

[11] S . E . Chen and L . Williams . View Interpolation for ImageSynthesis . In SIGGRAPH ’93: Proceedings of the 20thAnnual Conference on Computer Graphics and InteractiveTechniques, pages 279–288, New York, NY, USA, 1993 .ACM .

[12] J . Chim, R . Lau, H . Leong, and A . Si . CyberWalk: A Web-based Distributed Virtual Walkthrough Environment . IEEETransactions on Multimedia, 5(4):503–515, Dec . 2003 .

[13] P . E . Debevec, C . J . Taylor, and J . Malik . Modeling and Ren-dering Architecture from Photographs: A Hybrid Geometry-and Image-based Approach . In SIGGRAPH ’96: Procee-dings of the 23rd Annual Conference on Computer Graphicsand Interactive Techniques, pages 11–20, New York, NY,USA, 1996 . ACM .

[14] S . J . Gortler, R . Grzeszczuk, R . Szeliski, and M . F . Cohen .The Lumigraph . In SIGGRAPH ’96: Proceedings of the23rd Annual Conference on Computer Graphics and In-teractive Techniques, pages 43–54, New York, NY, USA,1996 . ACM .

[15] M . Hachet, J . Pouderoux, S . Knodel, and P . Guitton . 3DPanorama Service on Mobile Device for Hiking . In CHIWorkshop on Mobile Spatial Interaction, pages 106–109,2007 .

[16] H . Hoppe . Progressive Meshes . In SIGGRAPH ’96: Procee-dings of the 23rd Annual Conference on Computer Graphicsand Interactive Techniques, pages 99–108, New York, NY,USA, 1996 . ACM .

[17] JPEG . Joint Photographic Experts Group . http://www.jpeg.org/ .

[18] Y . Lei, Z . Jiang, D . Chen, and H . Bao . Image-BasedWalkthrough over Internet on Mobile Devices . In Procee-dings of the Grid and Cooperative Computing - GCC 2004Workshops, pages 728–735 . Springer Berlin / Heidelberg,2004 .

[19] M . Levoy and P . Hanrahan . Light Field Rendering . In SIG-GRAPH ’96: Proceedings of the 23rd Annual Conference onComputer Graphics and Interactive Techniques, pages 31–42, New York, NY, USA, 1996 . ACM .

[20] W . Mark . Post-Rendering 3D Image Warping: Visibility, Re-construction, and Performance for Depth-Image Warping .PhD thesis, University of North Carolina, Chapel Hill, NC,USA, Apr 1999 .

[21] L . McMillan . An Image-Based Approach to Three-Dimen-sional Computer Graphics . PhD thesis, University of NorthCarolina, Apr 1997 .

Page 168: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

167

Voltar ao sumário

[22] Y . Noimark and D . Cohen-Or . Streaming Scenes to MPEG-4 Video-enabled Devices . IEEE Computer Graphics andApplications, 23(1):58–64, Jan/Feb 2003 .

[23] S . Park, W . Kim, and I . Ihm . Mobile Collaborative Medi-cal Display System . Computer Methods and Programs inBiomedicine, 89:248–260, Mar 2008 .

[24] B . Paul . Off-screen Mesa, 2008 . http://mesa3d.org/osmesa.html .

[25] B . Paul . The Mesa 3D Graphics Library, 2008 . http://mesa3d.org/ .

[26] P . Quax, B . Geuns, T . Jehaes, W . Lamotte, and G . Van-sichem . On the Applicability of Remote Rendering ofNetworked Virtual Environments on Mobile Devices . InICSNC ’06: Proceedings of the International Conference onSystems and Networks Communication, page 16, Washing-ton, DC, USA, 2006 . IEEE Computer Society .

[27] J .-C . Quillet, G . Thomas, X . Granier, P . Guitton, and J .-E .Marvie . Using Expressive Rendering for Remote Visualiza-tion of Large City Models . In Web3D ’06: Proceedings ofthe Eleventh International Conference on 3D Web Techno-logy, pages 27–35, New York, NY, USA, 2006 . ACM .

[28] G . Rogers, M . Minhazuddin, and R . Liu . Mixing UDP andTCP in a Diffserv Assured Forwarding PHB - A Program-mable Networks Scenario . In ICON ’01: Proceedings of the9th IEEE International Conference on Networks, page 529,Washington, DC, USA, 2001 . IEEE Computer Society .

[29] S . M . Seitz and C . R . Dyer . View Morphing . In SIGGRAPH’96: Proceedings of the 23rd Annual Conference on Compu-ter Graphics and Interactive Techniques, pages 21–30, NewYork, NY, USA, 1996 . ACM .

[30] J . Shade, S . Gortler, L .-W . He, and R . Szeliski . LayeredDepth Images . In SIGGRAPH ’98: Proceedings of the 25thAnnual Conference on Computer Graphics and InteractiveTechniques, pages 231–242, New York, NY, USA, 1998 .ACM .

[31] H .-Y . Shum and L .-W . He . Rendering with Concentric Mo-saics . In SIGGRAPH ’99: Proceedings of the 26th AnnualConference on Computer Graphics and Interactive Techni-ques, pages 299–306, New York, NY, USA, 1999 . ACMPress/Addison-Wesley Publishing Co .

[32] V . Vanijja and S . Horiguchi . Omni-Directional StereoscopicImages from One Omni-Directional Camera . The Journal ofVLSI Signal Processing, 42:91–101, Jan 2006 .

[33] M . Vermeer . Videoconferencing and Virtual Classrooms forGeomatics . Technical report, European Education in Geo-detic Engineering, Cartography and Surveying, 2007 .

[34] S . Yang and C .-C . J . Kuo . Robust Graphics Streaming inWalkthrough Virtual Environments via Wireless Channels .In GLOBECOM ’03: Proceedings of the IEEE Global Tele-communications Conference, volume 6, pages 3191–3195,Dec . 2003 .

Page 169: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

168

Voltar ao sumário

Uma Proposta de Categorização de TouchSensors na Definição de um Ambiente Extensível Aplicado à Área de Engenharia de Software

Souza, D.A.C.M.1, 4; Fujioka, R.C.1; Vasconcelos, C.R. 3; Azevedo, R.R. 2; Freitas, F. 2; Lima,

T.4; Barros, H. 4 1 Departamento de Informática - Universidade Federal da Paraíba – Brazil

2 Centro de Informática – Universidade Federal de Pernambuco – Brazil 3 Departamento de Exatas – Cefet Urutaí – Brazil

4 Curso Superior de Tecnologia em Desenvolvimento de Software – Faculdade Idez - Brazil {daniel.abella,rodrigo.fujioka}@di.ufpb.br;[email protected];

{rra2,fred}@cin.ufpe.br;{theo,herbertt}@faculdadeidez.com.br

Resumo

Devido à evolução de tecnologias para o desenvolvimento de ambientes virtuais, interfaces mais realistas estão sendo criadas. Nos últimos anos, ambientes virtuais se tornaram um importante elemento adotado para o desenvolvimento do conhecimento em várias áreas. Este artigo apresenta um ambiente de e-Learning aplicado a área de Engenharia de Software, porém não limitado apenas a esta área. Para prover o desenvolvimento deste ambiente, este trabalho propõe a categorização de touchSensors de maneira que a associação dinâmica de funcionalidades para o browser pode ser usada para prover a customização das atividades do usuário em tempo real.

Palavras-Chave – Ambientes Virtuais, Customização Ambientes, Aprendizado Dinâmico.

Abstract Due to the technologies evolution for development

of virtual environments, even more realistic user interfaces have been created. In the last years, virtual environments have become an important element adopted for knowledge development in several areas. This paper introduces an e-Learning environment applied to the Software Engineering area, however not limited only for this area. In order to provide the development of this environment, this work proposes the categorization of touchSensors so that the dynamic association of functionalities to the browser can be used to provide the customization of users activities in real time.

. Keywords – Virtual Environments; Environments Customization; Dynamic Learning.

1. Introdução. Atuando como um aliado ao ensino presencial, os ambientes de ensino à distância eliminam as fronteiras físicas para o aprendizado, de maneira que o desenvolvimento de habilidades seja realizado através da Internet.

Buscando a redução do impacto na adoção destes tipos de sistemas, ambientes virtuais podem ser aplicados. Nestes ambientes, a realidade pode ser simulada, de maneira a compor um ambiente interativo composto por objetos tridimensionais [1].

Nos últimos anos, ambientes virtuais tornaram-se uma das maneiras adotadas para a composição de ambientes de aprendizagem em diversas áreas do conhecimento [2]. Em decorrência disso, uma diversidade de ambientes de ensino é desenvolvida com características muito próximas da realidade.

Em ambientes virtuais aplicados ao ensino, a capacidade de gerir as funcionalidades associadas aos recursos educacionais é dificilmente considerada. Em virtude disto, podemos ter ambientes com recursos obsoletos e/ou desatualizados, desconsiderando mudanças nos aspectos educacionais.

A proposta deste artigo é a de apresentar características de um browser para a representação de ambientes tridimensionais, que permite a associação dinâmica de funcionalidades, devido à infra-estrutura desenvolvida, possibilitando assim, a definição de um ambiente extensível de ensino à distância.

O artigo está organizado da seguinte maneira. Na seção 2, é apresentada a arquitetura do browser desenvolvido e na seção 3, são apresentados os aspectos relacionados ao funcionamento do sistema desenvolvido. Na seção 4, é realizado um estudo de caso do browser desenvolvido, enquanto que na seção 5 são apresentadas as conclusões e trabalhos futuros.

Page 170: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

169

Voltar ao sumário

2. Arquitetura do Browser. A arquitetura do browser proposto dispõe de três componentes conforme apresentado na Figura 1. Nesta aplicação, estes componentes estão organizados em dois módulos, que são os módulos Task e Principal.

Figura 1. Arquitetura do browser proposto.

A implementação de funcionalidades relacionadas à manipulação de todos os ambientes apresentados está agrupada no modulo Principal. Ainda neste módulo, temos um mecanismo de notificação, que nos permite informar qualquer outra aplicação com dados relativos à navegação do usuário com o ambiente em utilização pelo usuário. Tais dados podem auxiliar durante a avaliação do usuário nestes ambientes.

Com o objetivo de facilitar o desenvolvimento das funcionalidades associadas à manipulação dos ambientes do módulo Principal, o toolkit Xj3d [3] foi utilizado. Este toolkit permite a importação de ambientes escritos nas linguagens VRML [4] e X3D [5]. A linguagem utilizada pelo browser proposto aqui é a X3D, por dispor de recursos avançados de áudio, vídeo, navegação e interação com o usuário.

No modulo Task estão relacionados todos os recursos que permitem a associação dinâmica de funcionalidades. Este módulo é composto pelo componente chamado Task Manager. De maneira não tão abrangente, este componente, após a leitura de um arquivo de configuração chamado descritor de implantação (DI), que é implementado na linguagem XML, efetuará a associação das funcionalidades ao browser com base em regras previamente definidas no DI. Este processo de associação é apresentado na Figura 2.

Figura 2. Representação do processo de

associação de uma task ao browser. A maneira com que estas funcionalidades são

adicionadas dinamicamente ao browser é apresentada na próxima seção.

3. Análise do Browser. Com o objetivo de associar dinamicamente as funcionalidades ao browser, o DI, geralmente nomeado como browser.xml, relaciona o uso de touchSensors para descrever o momento em que uma determinada funcionalidade deve ser associada (nomeada como task, nesta aplicação).

O touchSensor é uma forma de interação do usuário com os ambientes virtuais, onde temos a disposição de sensores que acionam um evento com base nas ações deste usuário. As ações detectadas podem variar desde um clique do mouse, até movimentos menos perceptíveis, como a aproximação de um objeto.

Entretanto, não são todos os touchSensors que necessitam ter funcionalidade associadas, de maneira que se torna necessário diferenciar os touchSensors que possuem funcionalidade associada e quais não possuem.

Com o intuito de satisfazer esta necessidade, é realizada a categorização de touchSensors, podendo ter um dos três tipos definidos nesta aplicação. De acordo com a sua aplicabilidade, o touchSensor pode ser classificado como:

NOTIFY: notifica todos as aplicações associadas ao browser com dados referentes a interação do usuário com o touchSensor assinalado com este tipo;

NONE: nenhuma ação é desempenhada. Este é o padrão para todos os

Page 171: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

170

Voltar ao sumário

touchSensors que não foram associados no descritor de implantação;

WINDOW: sinaliza ao Task Manager que a ação desempenhada com o touchSensor associado com este tipo, desencadeará a associação de uma nova task, permitindo assim a inclusão em tempo de execução de um recurso educacional (task) mediante interação com um touchSensor assinalado com este tipo.

Conforme dito anteriormente, o DI deste browser é descrito através da linguagem XML, cuja estrutura deste documento está descrita através de um Schema. É apresentada, na Figura 3, a representação gráfica da estrutura deste documento, enquanto que, na Figura 4, há um exemplo válido de um descritor de implantação para o browser.

De maneira a complementar a representação gráfica da estrutura do descritor de implantação apresentada, as seguintes informações podem ser relacionadas:

A tag browser descreve todos os touchSensors e seus tipos, através da tag touchSensor e do atributo type, respectivamente.

A tag touchSensor possui as tags name, description e task, que descrevem respectivamente o nome do touchSensor, descrição do mesmo e o nome qualificado da classe que contém a funcionalidade (task) que será associada dinamicamente.

A tag task é opcional, devendo apenas ser associada às tags touchSensor que possuam o atributo type configurado com WINDOW.

O atributo class da tag task conterá o nome qualificado da classe que provê a implementação da interface Task. Nesta classe, temos todas as funcionalidades da tarefa que será associada ao browser.

Figura 3. Representação Gráfica da Estrutura do

DI.

. Figura 4. Descritor de Implantação Válido para o Browser Desenvolvido. O resultado da associação de uma task é apresentado na Figura 5. Neste exemplo, uma janela que contém informações em formato texto é apresentada em complementação ao browser. Entretanto, vale lembrar que tasks complexas podem ser desenvolvidas, conforme veremos na próxima seção.

Figura 5. Demonstração da execução de uma

task.

4. Estudo de Caso: Análise do Browser Desenvolvido no Enino da Metodologia Extreme Programming.

Page 172: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

171

Voltar ao sumário

Na área de Engenharia de Software, podem ser desenvolvidas tasks que possibilitem, por exemplo, a execução de programas simples desenvolvidos com a linguagem Java, execução de scripts e até definição de testes. Além disto, tasks podem ainda ser criadas para a customização do ambientes proposto visando à aplicabilidade em outras áreas do conhecimento.

É apresentado, nesta seção, um estudo do caso, onde o browser é utilizado para o ensino de alguns tópicos da metodologia de desenvolvimento Extreme Programming (XP), que dispõe de uma série de práticas a serem estudadas.

Buscando o entendimento de cada uma destas práticas, um corredor (hall de entrada) com diversas portas é apresentado ao usuário quando o browser é inicializado, conforme ilustrado na Figura 6. Em cada uma destas portas, é garantido o acesso a uma sala em que umas das práticas da metodologia XP são apresentadas.

Cada uma destas salas é composta por objetos e atores. Os atores realizam atividades com o intuito de fornecer ao usuário, o entendimento de alguma prática da metodologia XP, enquanto os objetos representam algum conceito sobre a metodologia.

É apresentada na Figura 7, uma das práticas da metodologia XP, chamada Stand up meeting. Esta prática se refere a uma breve reunião diária, em pé, entre a equipe de desenvolvimento com o objetivo de compartilhar informações sobre o projeto. Quando o usuário entra na sala em que esta prática é apresentada, os atores deste cenário se movimentam com o objetivo de transmitir a sensação de que uma reunião está em andamento. As cadeiras que são apresentadas estão propositalmente desocupadas para que o usuário compreenda que as reuniões da prática Stand up meeting são realizadas de fato em pé.

Figura 6. Parte inicial do ambiente: hall de

entrada.

Figura 7. Demonstração da prática Stand up

meeting. Em outra sala também acessível através do corredor, temos a prática Test-Driven Development (TDD), conforme ilustrado na Figura 8. Nesta sala, temos uma sala com computadores, onde uma funcionalidade (Task) é executada caso um destes computadores seja clicado. Note que, nesta task podemos desenvolver atividadades complementares ao que fazemos no browser. Neste caso, podemos digitar um trecho de código que se refere a um teste da prática TDD.

Page 173: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

172

Voltar ao sumário

Figura 8. Demonstração da prática Test-Driven

Development com uma task associada. 5. Conclusões e Trabalhos Futuros. Este trabalho apresentou um browser, que dispõe de uma infra-estrutura que permite a associação dinâmica de funcionalidades aplicadas à área de Engenharia de Software, entretanto não limitado apenas a esta área.

O sistema proposto possui o objetivo principal de permitir que o processo de definição e associação de funcionalidades ao browser seja realizado em caráter evolutivo.

Como trabalho futuro, é proposto o desenvolvimento de um repositório público para o armazenamento de funcionalidades desenvolvidas, permitindo a reciclagem e o compartilhamento de soluções

encontradas para o desenvolvimento de funcionalidades em diversas áreas do conhecimento.

6. References [1] Kirner, C., Siscoutto, R., “Fundamentos de Realidade Virtual e Aumentada”. Proceeding of IX Symposium of Virtual Reality, Petrópolis – RJ, 2007. [2] Aquino, M. S.; Souza, F. F.; Frery, A. C.; Souza, D. A. C. M.; Fujioka, R. C. (2007), “Supporting Adaptive Virtual Environments with Intelligent Agents”. Preeding of 7th International Conference on Intelligent Systems Design and Applications, Rio de Janeiro - RJ, 2007. [3] The Web3D Consortium Specifications: Extensible 3D (X3D), Virtual Reality Modeling Language (VRML- ISO/IEC 14772:1997) http://www.web3d.org/fs_specifications.htm. [4] G. Bell, R. Carey, and C. Marrin. The Virtual Reality Modeling Language Especificação da Versão 2.0. http://vag.vrml.org/VRML2.0/FINAI, 1996. [5] Johannes Behr , Patrick Dähne , Marcus Roth, Utilizing X3D for immersive environments, Proceeding of Ninth International Conference on 3D Web technology, April, 2004, Monterey, California. DOI = http://doi.acm.org/10.1145/985040.985051.

Page 174: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

173

Voltar ao sumário

UTILIZANDO XML PARA RECONFIGURAR AMBIENTES VIRTUAIS.

Guilherme Fernando de Oliveira1, Ildeberto Aparecido Rodello2, Antonio Carlos Sementille3, José Remo Ferreira Brega3.

1 UNIVEM, Centro Universitário Eurípides de Marilia. Av. Hygino Muzzi Filho, 529 – Marília/SP, Cep 17525-901 CP 2041

[email protected]. http://www.univem.edu.br

2 USP - Faculdade de Economia, Administracao e Contabilidade de Ribeirao Preto Av. Bandeirantes 3900 • Monte Alegre • CEP 14040-900

[email protected] http://www.fearp.usp.br/

3 UNESP – Universidade Estadual Paulista Júlio de Mesquita Filho. Av. Luiz Edmundo Carrijo Coube, 14-01 – Bauru /SP, Cep 17033-360

{remo, semente}@fc.unesp.br. http://www2.fc.unesp.br/computacao

Resumo Este artigo apresenta o trabalho realizado para o desenvolvimento de um ambiente virtual reconfigurável a partir do parseamento de dados entre o sistema e estruturas XML. O sistema utiliza os dados armazenados em arquivos XML para configurar os objetos que serão adicionados no Ambiente Virtual.

Abstract This paper presents the realized work for the development of

a reconfigurable virtual environment from data parsing

between the system and XML structures. The system uses the

data stored in XML files to configure the objects that will be

added in the Virtual Environment.

1. Introdução

A Realidade Virtual (RV) vem se tornando cada vez mais utilizada. Muitas são suas aplicações em várias áreas. É possível citar alguns dos usos mais freqüentes dessa tecnologia em áreas como a Educação, Comércio, Indústria, Entretenimento, Medicina, Treinamento, dentre outras [6] [7].

A criação de interfaces em RV envolve um controle tridimensional altamente interativo de processos computacionais. O usuário entra o Ambiente Virtual (AV) e visualiza, manipula e explora os dados da aplicação em tempo real. A grande vantagem desse tipo de interface é que o conhecimento intuitivo do usuário tem a respeito do mundo físico pode ser transferido para manipular o mundo virtual. [2].

Nesse contexto, a motivação desse artigo é apresentar o trabalho que permite modificar o AV, por meio da alteração dos atributos dos objetos inseridos no ambiente e ou a criação de novos objetos, sem que seja necessária programação adicional e que, de certa forma, também auxilie a criação de um novo ambiente virtual sem que o usuário possua conhecimentos de programação ou detalhes técnicos sobre a implementação de AVs.

A idéia básica é gerar um novo AV ou alterar o existente, por meio da manipulação de registros em um arquivo de configuração XML (Extensible Markup Language) [1], sem a necessidade de se alterar o código fonte da aplicação, assim adaptando o AV as novas necessidades de seus usuários ou modificando-o quando o mesmo se tornar obsoleto ou cansativo, devido à constante uso de um único AV.

A Seção 2 apresenta conceitos básicos de AV. 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. Ambientes Virtuais Reconfiguráveis.

Os AVs permitem simular fenômenos reais (física, química, matemática, dentre outras) ou mesmo outras situações reais, por meio de experiências virtuais. Tais situações e fenômenos necessitam de reconfiguração dos objetos envolvidos, de modo que possam ser feitas diversas experiências aumentando o grau de realismo do AV [8]. Tal reconfiguração de objetos ocorre durante a navegação no ambiente, por meio da alteração das coordenadas e de dimensões dos objetos.

A idéia de Reconfiguração em AV ocorre também quando um periférico é trocado ou o AV é carregado em outra plataforma diferente aquele o qual foi projetado [3].

A inserção ou remoção, bem como a alteração das características dos objetos como dimensões e coordenadas são normalmente utilizados em AV, permitindo uma maior interação com o AV. Tais alterações modificam características individuais de alguns objetos inseridos no AV, o que mantém o AV praticamente com o mesmo cenário. A idéia básica apresentada neste artigo de reconfiguração de AV é gerar um AV que possa modificar todo o seu cenário,

Page 175: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

174

Voltar ao sumário

sem a necessidade de programação adicional, por meio de alterações de atributos que são carregados de fontes externas.

3. Fundamentos tecnológicos 3.1. Java e API 3D

A linguagem de programação Java é uma linguagem orientada a objetos, que 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) [9]. A API Java 3D pode ser utilizada para desenvolver

aplicações gráficas 3D complexas de maneira rápida e eficaz. Possui também um conjunto de características peculiares, desde a implementação em uma variedade de plataformas, até a possibilidade de carregar outros conteúdos 3D, como VRML, OBJ e outras extensões 3D externas, além da 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 [4]. 3.2. XML

XML é uma linguagem de marcação de texto, semelhante ao HTML que está sendo utilizada na WEB como padrão para troca de dados. A grande facilidade da 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 que um único arquivo XML seja utilizado por diversas aplicações, desde que seus nomes de marcações concordem entre si [1].

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 específica. No caso é apresentado um exemplo do registro de um estudante, armazenando seu nome e sua senha.

Figura 1. Exemplo de estrutura XML.

3.3. XML e Java

A linguagem de programação Java disponibiliza um conjunto de APIs 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 tais como: DOM, JAXP,

JAXB, JAXR, JDOM, JOX, JSX, SAX, StAX, XStream, Dessa gama de opções, a API XStream foi a escolhida.

A XStream é uma biblioteca para serializar objetos para XML, que 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 [5].

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 e quais os resultados obtidos a partir de sua implementação. 4.1. Descrição Geral

Como mencionado, no trabalho foi desenvolvido um ambiente reconfigurável por meio do parseamento de dados entre o sistema e estruturas XML. A Figura 2 apresenta a estrutura do projeto.

Figura 2. Estrutura do Projeto.

O Módulo Aplicação – Ambiente Virtual consiste na

aplicação que utiliza os métodos para inserção ou configuração do AV. O módulo Classes para inserção de

objetos consiste nas classes que provêem métodos que configuram o ambiente. Neste módulo são inseridos os objetos no AV. O módulo Classes Objeto Java define os atributos que serão utilizados para configuração dos objetos a serem inseridos no AV. O módulo da Biblioteca XML, por sua vez, tem a finalidade de fazer o parseamento entre o

Classes para inserção de objetos

Biblioteca XML – Parseamento de dados

Arquivo XML

Aplicação - Ambiente Virtual

Classes Objeto Java

Page 176: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

175

Voltar ao sumário

módulo Arquivo XML e a Classe de Objetos Java, ou seja, o módulo Arquivo XML consiste nas estruturas XML que armazenam os atributos que serão usados para configurar o AV. 4.2. Desenvolvimento

Como mencionado, os dados de configuração referentes ao AV são armazenados em uma estrutura XML e carregados nos objetos Java. O AV inteiro pode ser remodelado ou recriado, alterando-se coordenadas e valores nos arquivos XML que compõem e configuram o sistema. A cada geração do AV, os dados são lidos alterando os valores dos objetos que são criados. Os arquivos XML podem ser alterados utilizando qualquer editor de textos.

O módulo com as classes de Objetos Java é formada por uma classe que possui os atributos e os métodos utilizados para gravar e recuperar os valores do AV armazenados em arquivos XML (av.xml e avmov.xml). Por meio dessa classe são disponibilizados os valores dos atributos a serem utilizados pela classe que faz a inserção dos objetos no do AV.

O projeto consiste na elaboração de um AV que permite a navegação e a inserção ou remoção de objetos na cena. A inserção ou remoção de objetos durante a navegação ocorre quando um item do menu é selecionado, mudando os objetos que já estão definidos e vinculados a este item do menu. O menu e seus vínculos também são armazenados em uma estrutura XML para a navegação entre novas salas do AV, seguindo o padrão de reconfiguração do ambiente. O AV consiste em objetos fixos e objetos temporários. Os objetos fixos formam o AV e os objetos temporários permitem a interação com o ambiente pelo usuário.

A configuração dos objetos criados é armazenada nos arquivos XML. Atualmente são utilizados quatro arquivos de configuração.

A principal estrutura XML é formada pela estrutura dos itens do menu, que será utilizado para navegação. Este arquivo também contém referências a arquivos externos, que poderão ser utilizados para apresentar multimídia dentro do ambiente. No momento este recurso é apresentado externamente. Os tipos de recursos que podem ser usados no momento são apresentados Tabela 1. O sistema principal de trabalho permite a inserção de menus e referências, criando vários tipos de configurações. Os itens dos menus são interligados permitindo que um menu novo seja gerado a cada item selecionado.

Tabela 1. Tipos de recursos e os formatos disponibilizados no sistema.

Recurso Formato Texto TXT, DOC e HTML Imagem JPG, GIF, BMP e PNG Som MID, WAV e MP3 Vídeo MOV, AVI, JPEG e WMV Apresentação de Slides PPT e PPS

A configuração dos objetos fixos é armazenada no arquivo

av.xml. Este arquivo possui em sua estrutura os atributos que

identificam e configuram o objeto a ser inserido no ambiente. Suas coordenadas, tamanho, aparência (cor, transparência, textura) e o tipo de primitiva a ser utilizado para representar o objeto estão definidos neste arquivo.

O ambiente permite a criação de objetos temporários que são inseridos ou removidos conforme a disponibilização dos recursos inseridos na criação do menu. Tais objetos são armazenados no arquivo avmov.xml (Figura 3), que possui a mesma estrutura do arquivo av.xml. Este tipo de objeto está vinculado à apresentação dos recursos, sendo eles apenas apresentados no ambiente se possuírem vínculos com os registros criados para representar os recursos áudio visuais.

Os recursos são apresentados no AV por meio da representação de objetos geométricos. A configuração destes objetos segue o padrão dos arquivos anteriores, adicionando alguns campos para a replicação de tais objetos conforme a quantidade de recursos áudio visuais que se deseja representar, bem como a distância entre eles e para que criados. Estes dados são armazenados no arquivo resconf.xml. Nesta estrutura também é configurado onde será apresentado o menu. Para isso o atributo tipoav recebe os valores quadromenu e textmenu, que são valores base de coordenadas para apresentação dos itens no menu.

Figura 3. Estrutura XML com dados povoados no arquivo

avmov.xml.

Caso o arquivo av.xml seja alterado, o AV será alterado quando carregado, tendo um ambiente 3D reconfigurável. Dessa forma é possível criar qualquer ambiente desde que as coordenadas (tamanho, tipo de objeto, cor e textura), sejam especificadas ou alteradas.

Com a criação de um novo AV, alterando-se os valores do arquivo av.xml, as localizações e dimensões dos objetos temporários, menus e objetos que representam os recursos áudio visuais podem não ser mais compatíveis com o novo ambiente. Para que isso não ocorra deve-se alterar os valores de todos os arquivos XML, conforme as necessidades do novo ambiente.

Page 177: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

176

Voltar ao sumário

A Figura 4 apresenta um trecho de código utilizado para a inserção dos objetos que irão formar o AV, por meio de dados parseados do arquivo av.xml. Os dados do arquivo são lidos e carregados em uma variável do tipo ArrayList, que será utilizada para enviar os valores de configuração para o método criaobjeto().

Figura 4 – Trecho de código utilizado para inserção dos

objetos que formam o AV. O método criaobjeto() (Figura 5) tem a finalidade de

inserir o objeto na cena. Por meio deste método é feita toda a configuração do objeto a ser apresentado na cena. Conforme apresentado, todos os dados para configuração do objeto são utilizados neste método (tamanho, localização, aparência, mobilidade e o tipo de geometria primitiva que irá ser utilizado como: Colorcube, Box, Cone, Cilinder e Sphere).

Figura 5 – Método criaobjeto(). As Figuras 6 e 7 apresentam exemplos de ambientes

gerados a partir da alteração da estrutura XML, onde foram adicionados ou removidos registros ou por meio da alteração dos valores dos atributos existentes.

A Figura 6 apresenta um AV simulando uma sala com vários móveis. Cada objeto criado consta no arquivo XML. Os móveis inseridos no ambiente foram carregados pelo avmov.xml e sua apresentação está vinculada ao menu. Caso outra opção do menu seja selecionada, os móveis atuais são removidos e outros são carregados. A sala continua a mesma.

Figura 6 – Exemplo: Sala Virtual. A Figura 7 consiste de uma área livre composta por uma

rua, calçada e iluminação Este ambiente foi criado utilizando poucos objetos inseridos no arquivo av.xml. Vários outros objetos podem ser inseridos para que sejam apresentados no decorrer do percurso.

Figura 7 – Exemplo: AV de uma área livre. 4.3. Resultados Alcançados

A partir da estrutura criada no projeto, é possível criar um AV totalmente reconfigurável por meio do parseamento de informações entre os objetos e a estrutura XML sem a necessidade de alteração direta do código do AV, permitindo à geração de AV adaptáveis as necessidades dos usuários. 5. Conclusões e trabalhos futuros

Como é possível observar, o AV pode ser alterado totalmente, inclusive com modificação do tema. Atualmente o AV base consiste de uma sala virtual com móveis onde são apresentados recursos áudio visuais.

Page 178: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

177

Voltar ao sumário

Com a alteração do AV é possível utilizá-lo para treinamentos, apresentações de projetos e outras áreas que necessitam da mudança de cenários constantemente. Este ambiente pode ser alterado, gerando novos ambientes que podem ser utilizados para receber os recursos, já que todas as coordenadas, tamanhos e geometrias podem ser alteradas, adicionadas ou removidas. Com isto tem-se um sistema reconfigurável, que permite a adequação conforme as necessidades de um grupo de usuários em particular, ou mesmo quando o AV atual já se tornou obsoleto ou mesmo cansativo. Isso é feito sem que sejam necessárias profundas alterações nos códigos que implementam as classes desenvolvidas.

Utilizando XML para armazenar os dados para geração do AV, é possível implementar um editor de AVs, para que, a partir da inserção ou carregamento dos dados dos arquivos XML, novos ambientes possam ser criados de uma forma mais flexível e fácil. Dessa forma, usuários com pouco ou mesmo sem conhecimento em RV podem gerar AVs para esta aplicação ou para novas aplicações que utilizem alguma forma de treinamento ou desenvolvimento de ambientes. 6. Referências [1] E. Armstrong. Working with XML.

http://java.sun.com/webservices/jaxp/dist/1.1/docs/tutorial/index.html, Sun Microsystems, Version 1.1, Update 35, Dec 2001, acesso em 30/08/07.

[2] F.A.P. Fialho; E.L.M. Matos. Educação, comunicação e tecnologias: uma nova geometria para os diferentes espaços educativos. Revista Diálogo Educacional, Curitiba, v. 4, n.12, p.143-156, maio/ago, 2004.

[3] G. Reitmayr; D. Schmalstieg. OpenTracker - An Open

Software Architecture for Reconfigurable Tracking

based on XML. Virtual Reality, 2001. Proceedings. IEEE Volume, Issue, 17-17 March 2001 Page(s):285 – 28, Digital Object Identifier 10.1109/VR.2001.913799, 2001.

[4] H.A. Sowizral; D.R. Nadeau. Introduction to

Programming with Java 3D. Sun Microsystems, 1999. [5] http://xstream.codehaus.org/, acessado em 20/08/07. [6] M. Braga. Realidade Virtual e Educação. Revista de

Biologia e Ciências da Terra, ISSN 1519-5228, Volume 1, Número 1, 2001.

[7] N. Sala. Virtual Reality in the Educational

Environments. IEEE Virtual Reality, 0-473-08801-0/01, 2002.

[8] Q.M. SHAHAB; Y. KWON; H. KO. Collaborative

virtual experience based on reconfigurable simulation. Proceedings of SPIE, the International Society for Optical Engineering ISSN 0277-786X CODEN PSISDG, 2006.

[9] 7Sun Microsystems. The Java Language: An Overview. http://java.sun.com/docs/overviews/java/java-overview-1.html, acesso em 12/09/2007.

Page 179: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

178

Voltar ao sumário

Modelo de Rotação de Amostras Agrícolas Tridimensionais Utilizando Quatérnios e Dispositivo Não Convencional de Realidade Virtual

Leonardo C. Botega Departamento de Computação

Universidade Federal de São Carlos

[email protected]

Paulo E. Cruvinel Embrapa Instrumentação Agropecuária

Empresa Brasileira de Pesquisa Agropecuária

[email protected]

Abstract

The present work aims the implementation and

representation of the concept of three-dimensional

rotations by quatenions, applied over tomographic

images of reconstructed agricultural soil samples.

Hence, three-dimensional portions of agricultural soil,

submitted to non conventional manipulation by a data

glove, has its parameterization system converted and

implemented, with the main goal of circumvent the

issues of Euler representation and allow the execution

of smooth and intuitive scene rotations, and

consequently, a better sample exploration.

Resumo

O presente trabalho visa a implementação e representação do conceito de rotações tridimensionais por quatérnios, aplicado sobre imagens tomográficas de amostras de solos agrícolas reconstruídas. Desta maneira, porções tridimensionais de solos agrícolas, submetidas à manipulação não convencional por uma luva de dados, têm seu sistema de parametrização convertido e implementado, com o principal objetivo de contornar as deficiências da representação por Euler e possibilitar a execução de rotações suaves e intuitivas na cena virtual, e consequentemente, uma melhor exploração das amostras.

1. Introdução

Avaliando a evolução que vem ocorrendo na área de física de solos, percebe-se o crescente interesse da comunidade científica para o desenvolvimento e aplicação de técnicas não invasivas para o estudo de características do solo.

Dentre as técnicas utilizadas, destaca-se a

tomografia computadorizada (TC) de raios X, que se sobressai em relação às demais técnicas aplicadas na física de solos, como a gravimétrica e a sonda de nêutrons [1][2], devido à sua precisão na extração de atributos físicos, como densidade e umidade, e pela característica de possibilitar o exame de amostras de solo de forma não destrutiva [3] [4] [5] [6] [7] [8] [9] [10] [11]. Outra vantagem oferecida pela tomografia computadorizada em relação às demais, é a possibilidade de fazer-se uso, após uma reconstrução tridimensional, de ferramentas de visualização utilizando técnicas de Realidade Virtual, para auxiliar a investigação não invasiva dos fenômenos físicos que ocorrem no solo, através de processos imersivos e interativos.

Dentre tais técnicas, destaca-se o uso de dispositivos não convencionais de entrada de dados, destinados à manipulação direta de amostras agrícolas e à navegação do usuário na cena sintética (manipulação de câmeras). Tais operações de movimento baseiam-se em mudança de posição e orientação das entidades que compõem um ambiente virtual e usualmente utilizam o sistema de parametrização de Euler, o que acarreta em problemas de representação dos dados tridimensionais durante as rotações.

Este trabalho apresenta como objetivo a implementação de um modelo de conversão e aplicação do sistema de parametrização de Quatérnios sobre processos de manipulação de amostras agrícolas, reconstruídas em 3-D, visando contribuir com procedimentos de visualização e análise não invasiva de tais amostras, onde se busca explorar por completo diversos atributos da representação tridimensional.

Page 180: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

179

Voltar ao sumário

O modelo busca ainda prover ao usuário, respostas reais e intuitivas das entidades tridimensionais à interação dos dispositivos não convencionais ao se realizar operações de manipulação, baseando-se em interpolação de orientações. 1.2. Ângulos de Euler

A forma mais conhecida e pratica de se representar orientações no domínio tridimensional baseia-se em fornecer suas orientações aos eixos x, y e z sobre um ângulo determinado, compondo os parâmetros da chamada rotação por ângulos de Euler.

A priori, o uso de ângulos de Euler parece resolver todo o contexto, entretanto, há uma série de problemas [12][13].

1.2.1. Rotações não comutativas.

Primeiramente é necessário destacar que as

rotações, ao contrário das translações, não comutam. Em outras palavras, pode-se representar um deslocamento de um modelo através de somas de vários outros deslocamentos. Já para representar rotações, tal abordagem torna-se errônea, pois a ordem em que as rotações são aplicadas sobre os modelos influencia diretamente o resultado final das orientações [12][14][15].

Aparentemente, o uso de ângulos de Euler parece não causar problemas, uma vez que parece intuitivo pensar que ao determinar uma ordem fixa de rotações o problema estaria resolvido. Realmente, se este fosse o único objetivo de um sistema de RV controlado por dispositivos não convencionais, o uso de orientações fixas provavelmente resolveria a questão, entretanto, o problema encontra-se nas orientações mutáveis.

Em diversas ocasiões, não desejamos saltar de uma orientação para outra, e sim alterar pouco a pouco a representação para executar de forma suave uma operação de rotação mais abrangente. Sob este novo paradigma, os ângulos de Euler apresentam dois problemas principais. 1.2.2. Perda de graus de liberdade (Gimbal Lock)

Existe um fenômeno indesejado com o qual

desenvolvedores de RV se defrontam constantemente ao representar suas entidades e suas respectivas orientações utilizando ângulos de Euler, onde graus de liberdade são perdidos ao se executar determinadas combinações de rotações. Tal efeito é chamado Gimbal

Lock [12][13][16].

Uma alternativa seria simplesmente representar a orientação através de uma matriz de rotação com relação à posição inicial e simplesmente multiplica-la por cada nova rotação aplicada ao modelo representado. Tal abordagem seria falha, pois como são utilizadas matrizes 3x3 para representar três graus de liberdade, dados redundantes seriam armazenados, assim, sucessivas multiplicações acumulariam erros, fazendo com que o resultado final seja errôneo, deixando até mesmo de ser uma rotação. Tal problema poderia ser resolvido normalizando-se as matrizes a cada final de ciclo, entretanto, isso acarretaria mais custo computacional e imprecisões.

Uma outra abordagem é recalcular os três ângulos de Euler a cada pequena rotação. Contudo, esses novos ângulos não se associam com os ângulos antes da rotação, uma vez que para girar em torno de um eixo, em algumas situações é necessário executar uma rotação prévia sobre outro eixo. Desta maneira, próximos aos pontos de Gimbal Lock haveria saltos imprevistos.

Finalmente, a solução definitiva encontra-se em um sistema de representação em que as operações de rotação possam ser executadas de forma natural sob eixos aleatórios.

1.2.3. Interpolação

Outro grande problema do uso de ângulos de Euler encontra-se na interpolação de orientações, ou seja, a geração de valores intermediários entre duas outras rotações dadas. Mesmo que o Gimbal Lock não ocorra, não é nada intuitivo fazer com que um modelo execute um determinado caminho suave entre duas orientações [12].

Ao trabalhar com ângulos de Euler, a interpolação aplicada a cada um dos ângulos de rotação produzirá rotações independentes em torno desses eixos, ao invés de movimentos complementares [17].

No caso do Gimbal Lock não ocorrer, o produto final poderá até ser o correto, entretanto, as orientações intermediárias não o são. Se o sistema adotado for a interpolação linear, serão produzidos movimentos estranhos e imprevisíveis.

Dadas duas posições no espaço tridimensional, existe uma infinidade de curvas que as ligam. O modelo 3-D poderia então traçar um caminho aleatório até chegar ao destino, entretanto, no caso de transição entre duas orientações, é indesejável que tal fenômeno aconteça.

A solução para este caso configura-se através de rotação simples ao redor de um único eixo, ou seja, dadas duas orientações, executa-se uma interpolação

Page 181: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

180

Voltar ao sumário

linear simples no ângulo de rotação em torno de um eixo adotado. Tal eixo não necessariamente existe e a parametrização de Euler não realiza de forma alguma, rotações sobre eixos arbitrários. O ideal é realizar rotações sobre eixos adequados e não seguindo caminhos arbitrários.

Algebricamente, seja um ponto no 3ℜ representado por um vetor ( , , )x y zr r r r=

e seja ,nθ

ρ uma rotação anti-

horária de um ângulo θ em torno de um eixo que intercepta a origem definido por um vetor unitário

( , , )x y zn n n n=

. Deseja-se determinar uma expressão

para ( )rρ

, ou seja, para o vetor que representa o ponto

obtido após aplicar em r

a rotação ρ .

Assim o ponto resultante da realização de uma rotação ( , )nρ θ

em um ponto r

é:

( ) (cos )

(1 cos )( ) ( )( )

r r

n r n sen n r

ρ θ

θ θ

= +

− ⋅ + ×

(1.1)

1.3. Quatérnios

Um quatérnio é definido por um conjunto de quatro números reais usualmente chamados de a, b, c e d. De forma semelhante à representação dos números complexos, os quatérnios são compostos também por uma parte imaginária, chamados de i, j e k [12][18].

Assim, um quatérnio é um conjunto da forma q = (a,b,c,d) ou,

q a bi cj dk= + + + (1.2)

Pode-se também expressar um quatérnio de forma

condensada:

( , )q s v=

(1.3)

onde s é um escalar que representa a parte real e

( , , )x y zv v v v=

é um valor de três componentes que

representam a parte imaginária. A relevância da utilização de quatérnios para aplicar

rotações em modelos tridimensionais reside nas operações de multiplicação [12], onde se pode notar que o produto de dois quatérnios

1q e 2q é

representado por:

1 2 1 1 2 2

1 2 1 2 1 2 2 1 1 2

( , )( , )

( , )

q q s v s v

s s v v s v s v v v

= =

− ⋅ + + ×

(1.4)

1.4. Rotações utilizando Quatérnios

O ponto ( , , )x y zr r r r=

sobre o qual é aplicada uma

rotação é representado pelo quatérnio (0, )p r=

tendo a

parte real nula e a rotação aplicada sobre o ponto r

é representado por um quatérnio ( , )q s v=

[12][19].

Desta maneira, a rotação de p por q pode ser expressa da forma:

1( )

qR p qpq−= (1.5)

ou ( )

qR p qpq= (1.6)

sendo que q é unitário e seu inverso é igual a seu conjugado. Assim temos que:

2

( , )(0, )( , )

(0, ( ) 2( ) 2 )

qpq s v r s v

s r v v r v r r sv r

= − =

− ⋅ + ⋅ + ×

(1.7)

Como ( , )q s v=

é unitário, temos que 22 1s v+ = , ou

seja, sempre existe um ângulo θ tal que coss θ= e

v senθ=

. Assim temos que:

( , ) (cos , ), 1q s v sen n nθ θ= = =

(1.8)

2(0, ( ) 2( ) 2 )

(0, (cos 2 ) (1 cos 2 )( ) ( 2 ) )

qpq s r v v r v r r sv r

r n r n sen n rθ θ θ

= − ⋅ + ⋅ + ×

= + − ⋅ + ×

(1.9)

Desta maneira, para compor uma combinação de

duas rotações representadas por 1q e 2q aplica-se:

2 1 2 1 1 2 1 3 41 2( ( )) ( )q q qR R p R q pq q q pq q q pq= = = (1.10)

Assim, pode-se concluir que a composição de

rotações pode ser realizada de maneira natural pela simples álgebra dos quatérnios, ou seja, com dois quatérnios unitários e seus respectivos ângulos e eixos distintos, pode-se representar uma rotação pela multiplicação dos mesmos.

2. Materiais e Métodos

Para a implementação do modelo de conversão e aplicação do método de Quatérnios sobre uma amostra agrícola tridimensional, foi utilizada a linguagem de programação Java e a API Java3D.

Page 182: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

181

Voltar ao sumário

Tal modelo se divide em três principais etapas: mapeamento da posição e orientação da luva de dados, conversão do sistema de parametrização de Euler para Quatérnios e a aplicação da rotação desejada nas entidades da cena sintética. A Figura 1 apresenta um diagrama da visão geral do modelo.

Figura 1 – Visão geral do modelo de rotação

2.1. Mapeamento da luva de dados

O dispositivo não convencional de entrada de dados empregado é a luva de dados P5Glove do fabricante Essential Reality. Tal dispositivo pesa 128 gramas e possui compatibilidade mouse-like. Quando utilizada sem qualquer programação envolvida, apresenta a mesma interface (USB 1.1) de um mouse comum sob os sistemas operacionais Windows/Linux/Macintosh, o que lhe isenta do uso de cabos de energia.

A P5Glove também apresenta em sua estrutura, sensores de dobra localizados nos dedos, responsáveis por identificar os movimentos de clique, bem como ações de segurar uma amostra no ambiente sintético, a fim de prover a total exploração da mesma. Tais sensores podem ter seus parâmetros customizados através de uma API chamada Dualmode, a qual fornece subsídios para a implementação de todos os procedimentos que envolvem o funcionamento do dispositivo [17].

Seu funcionamento baseia-se em um sistema de rastreamento óptico com dois receptores fotossensíveis em sua torre, os quais realizam a correlação dos raios de luz enviados pelos oito LED’s emissores presentes na luva, para determinar a posição e orientação do dispositivo no espaço real de coordenadas, possibilitando a conversão para o espaço virtual.

Para realizar o mapeamento de posicionamento e orientação da luva de dados, sob seis graus de liberdade, foi desenvolvida uma classe, derivada de Dualmode, capaz de tratar os sinais de hardware, interpretados pelo driver fornecido pelo fabricante.

Primeiramente, na implementação desta classe de mapeamento, devem ser configuradas as constantes de inicialização do dispositivo, tais como: o filtro de dados utilizado, a precisão de leitura e o algoritmo de predição de movimentos utilizado, instanciados como filtro de média, precisão máxima e predição nula, respectivamente. Adicionalmente, todos os limites de translação e rotação são definidos, os quais informam a partir de que ponto o dispositivo está perto, longe, à esquerda, à direita, acima ou abaixo da torre de recepção, além dos ângulos mínimos que definem a inclinação dos três eixos cartesianos (x, y, z).

A partir de tais limites mínimos, foram desenvolvidos os métodos para o mapeamento da posição e orientação da luva de dados, uma vez que a posição real no espaço é definida pelo sinal correlacionado pela torre de recepção e interpretado pelo driver do dispositivo.

Assim, através de instâncias que armazenam a atual leitura para cada um dos seis graus de liberdade, tal valor é comparado aos limites estabelecidos, qualificando a orientação e posição real do dispositivo, armazenados em variáveis. 2.2. Conversão do sistema de parametrização

Após a definição dos graus de liberdade do dispositivo, as variáveis que apresentam tais valores são então testadas quanto à sua ocorrência, ou seja, qual das orientações e posições o algoritmo armazenou.

Definida a variável, ocorre então a chamada à classe de conversão, utilizando como parâmetros um ponto, sobre o qual será traçado um determinado eixo, em torno do qual um ponto no espaço irá rotacionar, sob um determinado ângulo de rotação. Tais parâmetros são definidos pela atual posição da luva, representado por um eixo que passa pela origem e atinge o centro do dispositivo, e um passo angular, definido como constante na inicialização.

Desta maneira, a conversão ocorre de acordo com o Pseudocódigo 1, o qual fornece as partes escalar e vetorial do quatérnio.

Begin

Nova rotação = seno (passoAngular/2) q1.x = rotação * eixoLuva_1; q1.y = rotação * eixoLuva_2; q1.z = rotação * eixoLuva_3; q1.w = cos (passoAngular/2);

End.

Pseudocódigo 1 – Representação da conversão Euler-Quatérnios

2. Conversão do sistema de

parametrização

3. Rotação das entidades

1. Mapeamento da luva de dados

Page 183: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

182

Voltar ao sumário

2.3. Rotação das entidades

Após a conversão do sistema de parametrização da base Euler para Quatérnio e a criação do eixo intermediário, realiza-se a rotação propriamente dita.

Para tal ação, uma nova matriz de transformação é criada à medida que uma nova rotação por quatérnio é efetuada, considerando o efeito comutativo desse sistema de parametrização. Assim, cada nova matriz, representada pelo nodo Transform3D do pacote javax.media.j3d, é associada a um método setRotation, cujo parâmetro é justamente a chamada a um quatérnio. Tal chamada por sua vez, através dos parâmetros vetoriais e escalar, respectivamente, fornece ao setRotation as coordenadas para a nova rotação.

A cada nova orientação a ser aplicada, o resultado da matriz anterior é multiplicado à nova matriz, para assim compor um conjunto de rotações e efetuar uma interpolação natural. O Pseudocódigo 2 apresenta a aplicação dos termos do quatérnio à matriz de transformação.

Begin

matrizTransformacao[0] = (1.0 - 2.0*q1.y*q1.y - 2.0*q1.z*q1.z)*scalas[0]; matrizTransformacao 4] = (2.0*(q1.x*q1.y + q1.w*q1.z))*scalas[0]; matrizTransformacao [8] = (2.0*(q1.x*q1.z - q1.w*q1.y))*scalas[0];

End; Begin

matrizTransformacao [1] = (2.0*(q1.x*q1.y - q1.w*q1.z))*scalas[1]; matrizTransformacao [5] = (1.0 - 2.0*q1.x*q1.x - 2.0*q1.z*q1.z)*scalas[1]; matrizTransformacao [9] = (2.0*(q1.y * q1.z + q1.w * q1.x))*scalas[1];

End; Begin

matrizTransformacao [2] = (2.0*(q1.x*q1.z + q1.w*q1.y))*scalas[2]; matrizTransformacao [6] = (2.0*(q1.y*q1.z - q1.w*q1.x))*scalas[2]; matrizTransformacao [10] = (1.0 - 2.0*q1.x*q1.x - 2.0*q1.y*q1.y)*scalas[2];

End;

Pseudocódigo 2 – Aplicação do quatérnio na matriz de transformação

3. Resultados

Para a obtenção dos resultados, foi utilizada uma

amostra agrícola de solo degradado, reconstruída com um algoritmo paralelo [18]. Tal amostra foi então

importada a uma interface Java e submetida aos processos descritos no modelo.

Assim, a amostra foi submetida a três processos de mudança de orientação de 180º, divididas em etapas de 45º, onde pontos específicos das amostras (posicionadas inicialmente na origem dos eixos) rotacionam em torno de três eixos intermediários, representados pelas linhas pontilhadas, os quais passam pela origem das coordenadas e atingem a posição de três das oito LED’s da luva de dados.

A Tabela 1 e a Figura 2 apresentam os resultados, visuais e matemáticos respectivamente, de uma rotação de 180º dividida em quatro outras rotações intermediárias, considerando a posição de uma LED = (-1,0, 1,0, 0,0) como o ponto pelo qual o eixo irá passar, a origem dos eixos (0, 0, 0) como o ponto que irá rotacionar em torno do eixo, e a posição inicial da amostra em um ponto específico = (0, 0, 0).

A Tabela 2 e Figura 3 apresentam outros resultados, também visuais e matemáticos, de uma rotação de 180º dividida em quatro outras rotações intermediárias, considerando a posição inicial de uma LED = (1,0, 1,0, 0,0) como o ponto pelo qual o eixo vai passar, a origem dos eixos (0, 0, 0) como o ponto que irá rotacionar em torno do eixo, e posição da amostra em um ponto específico = (0, 0, 0).

A Tabela 3 e Figura 4 apresentam os resultados de uma última rotação de 180º também dividida em quatro outras rotações intermediárias, considerando a posição inicial do LED = (0,0, 1,0, 0,0) como o ponto pelo qual o eixo vai passar, a origem dos eixos (0, 0, 0) como o ponto que irá rotacionar em torno do eixo, e a posição inicial da amostra em um ponto específico = (0, 0, 0).

Tabela 1 - resultado de uma rotação de 180º, considerando a posição inicial da LED = (-1,0, 1,0, 0,0), à partir da origem dos eixos (0, 0, 0) e da posição inicial da amostra em um ponto específico = (0, 0, 0).

Posição Inicial

(ponto da amostra)

Quatérnios

Posição Final (ponto da amostra)

(0,0, 0,0, 0,0) vetor: (0,0, 0,0,

0,0), escalar: 0,92 (-0,70, 0,70,

0,0) (-0,70, 0,70,

0,0) vetor: (-0,27, 0,27, 0,0), escalar: 0,92

(-0,99, 0,99, 0,0)

(-0,99, 0,99, 0,0)

vetor: (-0,38, 0,38, 0,0), escalar: 0,92

(-1,29, 1,29, 0,0)

(-1,29, 1,29, 0,0)

vetor: (-0,49, 0,49, 0,0), escalar: 0,92

(-1,68, 1,68, 0,0)

Page 184: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

183

Voltar ao sumário

Tabela 2 - Resultado de uma rotação de 180º, considerando a posição inicial da LED = (1,0, 1,0, 0,0), à partir da origem dos eixos (0, 0, 0) e da posição inicial da amostra em um ponto específico = (0, 0, 0).

Posição Inicial (ponto da amostra)

Quatérnios

Posição Final (ponto da amostra)

(0,0, 0,0, 0,0) vetor: (0,0, 0,0,

0,0), escalar: 0,92 (0,70, 0,70,

0,0)

(0,70, 0,70, 0,0) vetor: (0,27, 0,27, 0,0), escalar: 0,92

(0,99, 0,99, 0,0)

(0,99, 0,99, 0,0) vetor: (0,38, 0,38, 0,0), escalar: 0,92

(1,29, 1,29, 0,0)

(1,29, 1,29, 0,0) vetor: (0,49, 0,49, 0,0), escalar: 0,92

(1,68, 1,68, 0,0)

Tabela 3 - Resultado de uma rotação de 180º, considerando a posição inicial da LED = (0,0, 1,0, 0,0), sendo a origem dos eixos (0, 0, 0) e a posição inicial da amostra em um ponto específico = (0, 0, 0).

Posição Inicial

(ponto da amostra)

Quatérnios

Posição Final (ponto da amostra)

(0,0, 0,0, 0,0) vetor: (0,0, 0,0,

0,0), escalar: 0,92 (0,0, 0,70, 0,0)

(0,0, 0,70, 0,0) vetor: (0,0, 0,27, 0,0), escalar: 0,92

(0,0, 0,85, 0,0)

(0,0, 0,85, 0,0) vetor: (0,0, 0,32, 0,0), escalar: 0,92

(0,0, 0,92, 0,0)

(0,0, 0,92, 0,0) vetor: (0,0, 0,35, 0,0), escalar: 0,92

(0,0, 0,95, 0,0)

Figura 2 – Representação da rotação descrita em torno do eixo pontilhado definido pela coordenada da LED = (-1.0, 1.0, 0.0) passando pela origem dos eixos

Figura 3 – Representação da rotação descrita em torno do eixo pontilhado definido pela coordenada da LED = (1.0, 1.0, 0.0) passando pela origem dos eixos

Figura 4 – Representação da rotação descrita em torno do eixo pontilhado definido pela coordenada da LED = (0.0, 1.0, 0.0) passando pela origem dos eixos

Os resultados apresentados pelas Tabelas 1,2 e 3, e

pelas Figuras 2,3 e 4 apresentaram novos quatérnios unitários cuja parte imaginária é um vetor na direção e sentido do eixo da rotação resultante, e a parte real o cosseno do ângulo de rotação. Assim, pôde-se realizar rotações bem definidas de 180º divididas em 4 etapas cada, interpoladas em torno do eixo pontilhado, seguindo a direção e sentido determinadas pelo menor ângulo entre o ponto de partida atual e a orientação final.

Para os casos analisados, caso a rotação de 180º fosse interpretada como uma rotação única, abordagem de adotar um sentido de rotação de acordo com o menor ângulo até chegar à orientação destino, neste caso seria falha, uma vez que a distância nos dois sentidos seria a mesma. Desta maneira, uma solução seria pré-determinar uma direção e sentido, como por exemplo, uma orientação positiva no grau de liberdade de rotação x (pitch).

Page 185: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

184

Voltar ao sumário

Tais resultados também demonstraram a eficiência da comutação de rotações produzidas por quatérnios, onde as três rotações de 180 graus puderam ser compostas pela multiplicação de quatro outras rotações de ângulos menores e que a transposição de uma orientação para outra ocorreu de forma suave, sem a ocorrência de saltos ou caminhos arbitrários, compondo uma interpolação de maneira intuitiva. Adicionalmente, não houve perda com relação aos graus de liberdade, independente da ordem de execução e do eixo adotado nas rotações.

4. Conclusões

Foi proposto um modelo de implementação de rotações tridimensionais de amostras agrícolas reconstruídas e manipuladas por dispositivo não convencional de entrada de dados, utilizando o sistema de parametrização por quatérnios.

Desta maneira, a adoção de eixos intermediários para executar rotações, mapeadas de movimentos de luvas de dados, sobre modelos tridimensionais, foi verificada como alternativa viável para sistemas interativos de Realidade Virtual dedicados à análise não invasiva de amostras de solos tridimensionais. Tal fato foi considerado uma vez que qualquer orientação pôde ser alcançada e qualquer caminho para as mesmas pôde ser adotado, tornando irrestrita a movimentação de luvas de dados e tornando a experiência mais realista.

5. Referências .

[1] C. F. A. Teixeira, S. O. Moraes, and M. A. Simonete. Desempenho do tensiômetro, tdr e sonda de nêutrons na determinação da umidade e condutividade hidráulica do solo. Revista Brasileira de Ciência do Solo, 29:161–168, 2005. [2] E. Ferreira, A. S. de Resende, F. Balieiro, L. Zotarelli, L. A. da Silva, M. Bacis, M. A. Alfaro, B. J. R. Alves, and S. Urquiaga. Avaliação de diferentes tubos de acesso para medição da umidade do solo através do uso de sonda de nêutrons. Technical report, Empresa Brasileira de Pesquisa Agropecuária - Agrobiologia, Seropédica - RJ, Novembro 1998. [3] L. Aylmore and J. M. Hainsworth. The use of the computedassisted tomography to determine spatial distributionof soil water content. Australian .Journal Soil

Res, 21(4):435–443, 1983. [4] S. Crestana. A Tomografia Computadorizada com um novo método para estudos da física da água no solo. Doutorado, Instituto de Física de São Carlos - Universidade de São Paulo, São Carlos, 1985.

[5] A. Pedrotti, E. A. Pauletto, S. Crestana, P. E. Cruvinel, C.M. P. Vaz, J.M. Naime, and A.Macedo. Tomografia computadorizada aplicada a estudos de um planossolo. Pesquisa Agropecuária Brasileira, 38(7):819–826, jul 2003. [6] P. E. Cruvinel. Minitomógrafo de Raios X e Raios computadorizado para aplicações multidisciplinares. Doutorado, Universidade de Campinas, Campinas, 1987. [7] 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. IEEE. [8] J. M. Naime. Projeto e construção de um minitomógrafo portátil para estudo de ciência de solo e plantas em campo. Dissertação de mestrado, Escola de Engenharia de São Carlos – Universidade de São Paulo, São Carlos, 1994. [9] J. M. Naime. Um novo método para estudos dinâmicos, in situ, da infiltração da água na região não-saturada do solo. Tese de doutorado, Escola de Engenharia de São Carlos, Universidade de São Paulo, São Carlos, SP, Brasil, 2001. [10] Á. 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, Escola de Engenharia de São Carlos, São Carlos, 1997. [11] Á. Macedo, C. Vaz, J. Pereira, J. Naime, P. Cruvinel, and S. Crestana. Wood density determination by x-and gammaray tomography. International Journal of the Biology, Chemistry, Physics and Technology of Wood, 56:535–540, 2002. [12] S. C. de Biasi, M. Gattass. Utilização de quatérnios para representação de rotações em 3-D. Relatório técnico, TecGraf – Pontifícia Universidade Católica do Rio de Janeiro, PUC-RIO. Disponível em <http://www.tecgraf.puc-rio.br/~mgattass/ >, 2007. [13] L. Dorst, D. Fontijne, S. Mann. Geometric Algebra for Computer Science – An Object Oriented Approach to Geometry. Morgan Kaufmann Publishers, p.167-190, Amsterdam, 2007. [14] L.C. Botega, P.E. Cruvinel. Three-Dimensional Soil Physics Image Analysis based on a Virtual Reality Environment. IX Symposium on Virtual Reality, Petrópolis, 2007. [15] L.C. Botega, P.E. Cruvinel. Desenvolvimento de Ambiente de Realidade Virtual para Análise de Solos Agrícolas. Workshop de Realidade Virtual e Aumentada, Itumbiara, 2007. [16] L.C. Botega. Análise de Imagens Tomográficas da Ciência do Solo em Ambiente de Realidade Virtual.

Page 186: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

185

Voltar ao sumário

Dissertação de mestrado. Universidade Federal de São Carlos, São Carlos, 2008. [17] K. A. Stroud , Dexter Booth. Vector Analysis. Industrial Press, 2005. [18] A. S. Hardy. Elements of Quaternions. Historical Math Monographs. Cornell University Library. Disponível em <http://dlxs2.library.cornell.edu >, Boston, 1987. [19] R. H. William. Elements of Quaternions. University of California Library Collection.

[20] C. Kenner. Essential reality p5glove sumary: Dual mode driver programming. Disponível em <http://www.geocities.com/carl_a_kenner/p5.html>, 2007. [21] M. F. L. Pereira. Um modelo de reconstrução tomográfica 3D para amostras agrícolas com filtragem de Wiener em processamento paralelo. Tese de Doutorado. Universidade de São Paulo. São Carlos, 2007.

Page 187: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

186

Voltar ao sumário

PROPOSTA DE UMA ARQUITETURA DE SOFTWARE PARA ADAPTAÇÃO DE CONTEÚDO DE REALIDADE VIRTUAL PARA

DISPOSITIVOS MÓVEIS

José Barbosa Dias Júnior Marlus Dias Silva

Alexandre Cardoso Edgard Afonso Lamounier Júnior

Universidade de Rio Verde- FESURV – GO

Universidade Federal de Uberlândia – UFU - MG

[email protected]

[email protected]

[email protected]

[email protected]

[email protected]

Abstract

This paper presents a proposal for software

architecture to assist the development of Virtual Reality

applications for mobile devices, based on context

adaptation techniques of. This solution is due to offer

support on context appropriateness of Virtual Reality, to

be used by different mobile devices in accordance with

its restrictions. This adaptation is performed in a

dynamic way by the proposed solution without the need

for user interaction, providing Virtual Reality content

portability Reality for mobile applications.

1. Introdução

De acordo com [1], a evolução nas tecnologias de dispositivos computacionais portáteis e os avanços nas comunicações sem fio, permitiram o surgimento de um novo paradigma: a Computação Móvel (CM).

As constantes inovações tecnológicas nesta área permitiram o desenvolvimento de uma grande variedade

de dispositivos que levam o ambiente de trabalho para além das “paredes de escritórios e edifícios”, permitindo uma maior liberdade entre os usuários e os sistemas computacionais, devido a sua mobilidade.

O surgimento de equipamentos como: celulares com suporte a WAP, notebooks, Palms, entre outros, fizeram crescer a demanda por novas formas de serviços e aplicações nas mais diversas áreas (educação, saúde, entretenimento, entre outras).

Devido à grande evolução da CM, o desenvolvimento de aplicações para dispositivos móveis tornou-se uma área de grande interesse, em parte devido à enorme disponibilidade desses dispositivos no mercado e a sua crescente integração com as tecnologias de comunicação sem fio. Dentre elas podemos destacar aplicações de Realidade Virtual (RV) e ou Mista (RM) nas mais diversas áreas tais como: Educação, Entretenimento, Visualização, entre outras.

A mobilidade proporcionada pelos equipamentos móveis, juntamente com interação mais natural advinda da RV, permite criar um Ambiente Virtual Móvel

Page 188: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

187

Voltar ao sumário

propício à troca de experiências, informações, imagens, entre outros, de forma mais motivante para o usuário.

Entretanto, ainda existem problemas relacionados às restrições existentes nestes dispositivos, as quais continuam sendo o grande “gargalo” para a criação de aplicações móveis de RV [2].

Segundo [3] e [4], outra barreira a ser transposta no desenvolvimento de aplicações para dispositivos móveis é a heterogeneidade desses equipamentos, caracterizadas por diferentes restrições de processamento, memória, bateria, largura de banda de comunicação, e diversas plataformas de software existentes (Windows, Symbian, Palm OS, entre outras).

Devido às especificidades desses dispositivos, seria necessário desenvolver diferentes versões dos conteúdos de RV para esses ambientes de acordo com as características de cada dispositivo. Contudo a criação de diferentes versões pode se tornar inviável e não escalável a codificação humana, devido à variedade de plataformas e dispositivos disponíveis.

Nesse cenário, torna-se um desafio o desenvolvimento de aplicações de RV para dispositivos móveis, principalmente para dispositivos heterogêneos.

Este trabalho tem como propósito uma arquitetura para customização do conteúdo para estes ambientes, de forma autônoma, ou seja, sem a intervenção do usuário, por meio de uma infra-estrutura de software, facilitando o desenvolvimento de aplicação móveis de RV.

2. Adaptação

De acordo com [5] adaptação é a capacidade de adequação que uma aplicação possui de se adaptar as alterações nas circunstâncias do ambiente em que executa.

Segundo [6] dois fatores têm contribuído para o aumento do interesse pelo desenvolvimento de softwares adaptáveis. Sendo o primeiro, o paradigma da computação móvel, pelo quais as aplicações devem ter a capacidade de se adaptarem a diversos ambientes e dispositivos móveis. O segundo é o desenvolvimento da computação autônoma, cujo objetivo é a aumento de sistemas que tem a capacidade de se auto- gerenciar, utilizando todas as potencialidades das infra-estruturas tecnológicas, reduzindo a administração humana sobre eles.

Uma aplicação pode ser considerada adaptativa se for capaz de alterar automaticamente seu comportamento de acordo com seu contexto [7].

Para que as aplicações móveis de RV, possam ser utilizadas por diferentes dispositivos, o conteúdo deve ser cuidadosamente selecionado e adaptado às condições restritivas de cada equipamento destino, tais

como: dimensões do display, quantidade de cores, memória disponível, entre outras.

Portanto, o mesmo conteúdo direcionado para um notebook não deve ser enviado a um celular, por exemplo. Para isso, deve haver tanto a redução das informações, como a modificação do formato da apresentação dos dados.

3. Trabalhos relacionados

Projetos relacionados à utilização de RV e Realidade Mista (RM) em dispositivos móveis, começaram a ser explorados nos últimos anos e existem ainda muitos fatores a serem resolvidos, para que estes possam oferecer melhor qualidade e quantidade de serviços aos usuários.

Dentre estes trabalhos podem-se destacar os trabalhos nas seguintes áreas: Localização e Navegação [8], Educação [9], Entretenimento [10], Visualização e Navegação [11] e [12].

O projeto [8] utiliza RV e RM para navegação embora sejam utilizados em dispositivos diferentes, não possui critérios para adequação de conteúdo utilizado de acordo com os dispositivos, isso acontece na maior parte dos trabalhos descritos.

O Guia Virtual de Museu [11], permite certa personalização, como por exemplo: as rotas, de acordo com as escolhas usuários. Porém os critérios para realização de uma adaptação de acordo com os requisitos dos usuários seria muito complexo devido à quantidade de informações necessárias, tais como: faixa etária dos grupos, preferências, grupos com deficiência, entre outras [11] e [13].

A personalização utilizada por [11] está próxima de uma customização das preferências do usuário, porém está mais voltada para uma configuração de preferências [13] e [14].

O SignPost [12], permite visualização diferenciada de acordo com a preferência do usuário, esses dados são pré-definidos pela aplicação sem possibilidade de adequação.

Outro fator deste trabalho é que na sua versão todo processamento realizado pela aplicação fica sob responsabilidade do dispositivo móvel, isto pode comprometer o desempenho da aplicação e exigir um configuração alta do hardware.

Segundo [9], o Virtran embora tenha sido desenvolvido para celulares, pode ser utilizado por PDA.

Essa aplicação permite acréscimos de novas funcionalidades e também a possível utilização de dispositivos dos próprios usuários sem a necessidade de configurações específicas, diferentemente das outras aplicações descritas.

Page 189: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

188

Voltar ao sumário

Porém, o VirTran não fornece suporte para adaptação de conteúdo, nem a definição de perfis dos dispositivos, como a solução proposta.

4. Arquitetura proposta

A arquitetura proposta para geração de conteúdo adaptativo para aplicações móveis de RV utiliza técnicas de adaptação de contexto, para execução desta customização.

Um dos objetivos dessa abordagem é atender os diversos usuários participantes do sistema de forma dinâmica, fornecendo-os conteúdo adaptado, abrangendo dispositivos distintos.

Esta solução pretende reduzir o tempo de desenvolvimento e permitir a portabilidade de conteúdo de RV, por meio de uma metodologia que permita uma maior abstração das características de um dispositivo específico.

Portanto, pretende-se obter uma solução multiplataforma capaz de realizar a adaptação de desse conteúdo de forma automatizada, utilizando como base as informações de contexto do usuário. Dessa forma, o processo de customização é realizado totalmente pelo servidor, facilitando assim o acesso a diferentes dispositivos.

A figura 1 demonstra a visão geral do funcionamento da proposta, sendo esta composta por cinco módulos: cliente móvel, serviço de comunicação, serviço grupo, serviço adaptação e serviço de perfil.

A camada de cliente contém os dispositivos participantes do sistema. Para resolver o problema de receber, armazenar e manter a referência desses equipamentos, a arquitetura possui um serviço de comunicação, responsável também, por auferir as conexões realizadas pelos usuários identificando as características destes equipamentos em tempo de execução.

Para garantir integridade destas informações, esses dispositivos são divididos em grupos com características comuns. Esta tarefa é realizada pela camada de grupo, responsável pela sua criação e gerenciamento.

Figura 1 – Visão geral do funcionamento da

arquitetura proposta

Para realizar a customização do conteúdo de RV, são utilizadas técnicas de adaptação de contexto associadas às informações de identificação e perfis dos dispositivos participantes, vindas consequentemente das camadas de comunicação e perfil. De posse dessas informações a camada de adaptação realiza o processo de adequação de conteúdo, permitindo que esse possa ser utilizado por diferentes dispositivos.

Os perfis (características) dos equipamentos são armazenados, gerenciados e criados pela camada de perfil. Ela utiliza as informações do repositório de perfis para gerá-los de forma pré-defina.

A base de informações sobre os equipamentos é obtido de forma dinâmica, utilizando para isso a especificação Composite Capability/Preference Profiles (CC/PP) [17] e User Agent Profiling Specification (UAProf) [18].

O método utilizado para estruturação da proposta, armazenando em um banco de dados relacional os objetos que representam o domínio do problema (conteúdo, dispositivos, fabricantes, componentes, entre outros), ao contrário do que normalmente é realizado (representado no próprio código), permite sua instanciação em tempo de execução a partir de um modelo genérico.

Esta solução é baseada no modelo cliente-servidor, seguindo as diretrizes propostas por [11], sendo composta pelo cliente de adaptação móvel virtual, que é um cliente multiplataforma para dispositivos móveis, e pelo servidor de adaptação de conteúdo 3D, uma arquitetura de software responsável pela customização deste conteúdo para os equipamentos portáteis.

A figura 2 ilustra a arquitetura proposta, para o servidor de aplicação.

Page 190: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

189

Voltar ao sumário

Figura 2- Arquitetura proposta

A arquitetura é dividida em seis camadas

responsáveis pela execução dos serviços descritos anteriormente.

A camada de Persistência é responsável pelo armazenamento das informações dos dispositivos, bem como o conteúdo 3D. Garantindo a integridade dos mesmos.

O Factory Perfil utiliza as informações da camada inferior para gerar os perfis dos equipamentos, de forma pré-definida. Ela também gerencia esses perfis.

O Manager Adapter determina as políticas utilizadas para realização da adaptação do conteúdo de RV. Para isso ele possui três módulos internos, cada um deles responsáveis por atividades específicas de controle e customização de objetos 3D (módulo 3D), imagens (Módulo Image) e texto (Módulo Texto), utilizando para isso as políticas pré-definidas de adaptação.

A camada de Tratamento gerencia os eventos ocorridos nos clientes móveis, permitindo assim um controle individualizado de cada cliente.

O Grupo tem como finalidade agrupar os clientes móveis em grupos com características comuns, para facilitar o seu gerenciamento e o controle na troca de informações entre o servidor e os clientes.

A última camada é a Conexão que tem a responsabilidade de gerenciar e manter a referência das conexões dos clientes móveis.

4.1 Estrutura de funcionamento

Na estrutura proposta, todo o processamento

relacionado à adaptação é realizado pelo servidor de adaptação, baseado na arquitetura proposta.

O cliente móvel é constituído pela aplicação móvel, e uma camada de conexão, responsável por realizar a requisição e troca de mensagens necessárias para comunicação entre o cliente e servidor.

O servidor de adaptação utiliza uma mensagem de identificação vinda do cliente para identificá-lo, realizar seu agrupamento de acordo com suas características e a customização do seu conteúdo 3D.

A figura 3 ilustra o funcionamento geral estrutura proposta.

Figura 3 – Estrutura geral

O cliente móvel é um cliente multiplataforma para

dispositivos móveis, ele é responsável por realizar a requisição, contendo informações necessárias para a identificação dos dispositivos.

4.2 Cliente Móvel

O Cliente Móvel comunica-se com o servidor pela

troca de mensagens de requisição/resposta, ele é responsável pela identificação do dispositivo móvel, coletando informações sobre as características dos dispositivos e enviando-as ao servidor de forma dinâmica.

Estas informações são utilizadas pelo servidor para realizar a definição do perfil do dispositivo móvel. É função do cliente móvel também, realizar as solicitações de conteúdo de RV.

Estas atividades são realizadas pela camada de conexão cliente, como pode ser visto na figura 4.

Page 191: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

190

Voltar ao sumário

Figura 4 – Funcionamento do Cliente Móvel A camada de conexão cliente é responsável também

por toda comunicação realizada com o servidor. Ela recebe as informações customizadas vindas do servidor, controlando a troca de dados entre eles.

O processamento dos dados é realizado todo no servidor, para não sobrecarregar os dispositivos móveis, haja vista as restrições de processamento existentes nestes equipamentos. O funcionamento do servidor será detalhado no próximo item.

4.3 Servidor de Adaptação

As camadas presentes no Servidor de Adaptação são responsáveis, de forma geral, pela recepção das informações de requisição de dados vindas do Cliente Móvel e pela validação das mesmas.

Por meio destas informações, o servidor realiza a identificação dos dispositivos participantes, o que permite a sua classificação de acordo com os perfis pré-definidos, armazenados na camada de Persistência.

A camada de Factory Perfil recebe as mensagens de informações dos dispositivos e de conteúdo de RV, vindos da camada de Persistência. Ela utiliza essas informações para criar o perfil dos dispositivos de acordo com suas restrições.

Com as mensagens vindas da Factory Perfil a camada Manager Adapter aplica as políticas de adaptação de conteúdo de RV, para isso ela utiliza um conjunto de regras e as informações dos perfis armazenados na camada de Persistência, utilizando essas informações ela realiza a customização deste conteúdo, de acordo com as características de cada dispositivo.

As políticas utilizadas nesta camada impedem, por exemplo, que o mesmo conteúdo com as mesmas características seja enviado para um notebook e para um celular.

O funcionamento do Servidor de Adaptação e as trocas de mensagens entre suas camadas são ilustrados na figura 5.

Figura 5 - Funcionamento do Servidor de

Adaptação Os dispositivos são divididos em grupos criados e

gerenciados pela camada de Grupo. Este processo reduz a “quantidade” de equipamentos a serem gerenciados pelo servidor, facilitando a aplicação de regras e o controle de alterações nos estados destes equipamentos, o que melhora o gerenciamento e reduzindo a complexidade da estrutura e o processamento necessário para execução desta etapa.

A maior parte do gerenciamento dos Clientes Móveis é realizada em grupo, porém existe a necessidade de controle individual de eventos específicos (como: alterações, solicitações, entre outras) para estes clientes, esta tarefa é executada pela camada de Tratamento, que controla as especificidades necessárias para manter a integridade da estrutura.

Para realização destas atividades tanto a camada de Grupo quanto a de Tratamento utilizam as informações vindas das camadas inferiores.

A etapa de identificação, controle de solicitações e todas as outras atividades necessárias para execução da

Page 192: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

191

Voltar ao sumário

comunicação com os clientes móveis, são executados pela camada de Conexão, que utiliza para isso as informações das camadas de Grupo e Tratamento.

5. Implementação da arquitetura

A arquitetura está sendo implementada utilizando plataforma Java 2 Micro Edition (J2ME), com o perfil Mobile Information Device Profile (MIDP) versão 2.0 e o Connected Limited Device Configuration (CLDC) versão 1.1 [15].

A escolha da plataforma foi devido a sua portabilidade, o suporte oferecido a uma grande quantidade de dispositivos.

Foram desenvolvidas as camadas de Persistência e Factory Perfil, e estão sendo definas as políticas de adaptação. Algumas funcionalidades da camada de Conexão do Servidor e do Cliente Móvel também foram desenvolvidas para testar a comunicação entre ambos.

Um importante requisito não funcional para arquitetura é que o cliente móvel seja multiplataforma, um dos fatores que influenciou na escolha da plataforma de desenvolvimento. Sendo atendido este requisito a solução proposta poderá ser utilizada por uma grande variedade de dispositivos.

6. Conclusões e trabalhos futuros

Neste trabalho foi apresentada uma arquitetura, para suporte a adaptação de conteúdo de RV para dispositivos móveis. Ela encontra-se em fase de desenvolvimento.

A solução proposta permite a aquisição de forma autônoma das características do dispositivo, e com base nos perfis pré-definidos também sem a intervenção do usuário, fornece informações suficientes para realização da customização do conteúdo. Diferenciando-se dos trabalhos relacionados descritos no item 3.

De acordo com testes realizados utilizando a identificação do dispositivo móvel, obtida pelo Cliente Móvel, já foi possível selecionar o perfil do dispositivo utilizando os perfis da camada de Factory Perfil.

Foram realizados também, testes de envido de imagens para o dispositivo móvel, sem aplicar políticas de adaptação à imagem fica fora dos padrões dos dispositivos impossibilitando sua visualização, já utilizando as regras iniciais de adaptação foi possível enviar a imagem, dentro das características necessárias para sua visualização.

A utilização das especificações CC/PP e UAProf favorecem e facilitam a evolução da arquitetura.

Um problema a ser tratado no decorrer do projeto é a qualidade das imagens, pois as mesmas sofrem certa “distorção” no envio para os equipamentos móveis.

Será desenvolvido um estudo de caso de uma aplicação colaborativa de RV para treinamento utilizando dispositivos móveis, para validar a solução proposta.

7. Referências [1] Rocha, T., Toledo, Maria B. F. “Mecanismos de Adaptação para Transações em Ambientes de Computação Móvel” in IEE Latin América Transactions, Vol 5, Nº 8, December 2007. [2] Alcantara, Afonso. Principais desafios da computação móvel. Disponível em <http://www.javasoft.com.br/articles/desafios_comp_movel.pdf >. Acesso em: 20 jan. 2008 [3] Hao-hua Chu , Henry Song , Candy Wong , Shoji Kurakake , Masaji Katagiri, Roam, a seamless application framework, Journal of Systems and Software, v.69 n.3, p.209-226, 15 January 2004 [doi>10.1016/S0164-1212(03)00052-9] [4] Viana, Windson ; CAVALCANTE, Paula ; CASTRO, R. M. C. . Mobile Adapter: Uma abordagem para a construção de Mobile Application Servers adaptativos utilizando as especificações CC/PP e UAProf. In: XXV Congresso da Sociedade Brasileira de Computação, 2005, Sao leopoldo, RS-Brasil. Anais do XXXII SEMISH. [5] Raatikainen, Kimmo E. E.; Middleware for Mobile Aplications Beyond 3G. International Conference on Intelligence in Networks (SMARTNET 2002),7.,p3-18, abril de 2002. [6] Mckinley, P. K.; Sadjadi S. M.; Kasten E. P.; Cheng, B. H. C. Composing adaptive software. IEEE Computer, v.37, n.7, 2004. p.56-64. [7] Henricksen, K.; Indulska, J. Adapting the web interface: an adaptive web browser. In: AUSTRALASIAN USER INTERFACE CONFERENCE (AUIC.01), 4, 2001, Gold Coast, Queensland, Austrália. Proceedings... Gold Coast, Queensland Austrália: IEEE, 2001. [8] LOCUS - Desenvolvimento de Ferramentas de Localização de contexto para Serviços de Informação Móvel. <http://www.locus.org.uk>. Acesso em: 05 de Set. 2008 [9] Marçal, E., Filho. Tese de Mestrado. VirTraM: Um Framework para o Desenvolvimento de Treinamentos Utilizando Realidade Virtual. Universidade Federal do Ceará, 2005.Versão eletrônica <mdcc.ufc.br/component/ option,com_docman/task,doc_download/gid,85/>. Visitado em: 03 de Abr. 2008.

Page 193: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

192

Voltar ao sumário

[10] Wagner, D.; Pintaric, T.; Ledermann, F.; Schmalstieg, D. Towards Massively Multi-User Augmented Reality on Handheld Devices. In: INTERNATIONAL CONFERENCE ON PERVASIVE COMPUTING, 3. 2005, Germany, Proceedings. 2005. p. 208-219.

[11] Damala, A. Augmented Reality Based User Interfaces for Mobile Museum and Exhibition Guides, CAA 2007, Computer Applications and Quantitative Methods in Arcaheology. Deutsches Archaeologisches Institut, Berlin, In Press. [12] Schmalstieg, D., Wagner, D. First Steps Towards Handheld Augmented Reality. In: INTERNATIONAL SYMPOSIUM ON WEARABLE COMPUTERS (ISWC), 7., 2003, USA, Proceedings Washington: IEEE Computer Society, 2003. p. 127-137. [13] Proctor, N., 2004. Access in hand: providing deaf and hard-of-hearing visitors with on-demand, independent access to museum information and interpretation through handheld computers. In: J. Trant and D. Bearman (Editors), Museums and the Web 2005, Toronto, Canada. www.archimuse.com/mw2005/papers/proctor/proctor.html. Acesso: em 10 Set. 2007. [14] Bowen, J.P. and Filippini-Fantoni, S., 2004. Personalization and the web from a museum perspective. In: J. Trant and D. Bearman (Editors), Museums and the Web 2004, Toronto, electronic version. http://www.archimuse.com/mw2004/papers/ bowen/bowen.html. Acesso: em 10 Set. 2007. [15] Sun (2004) “Java 2 Platform, Micro Edition (J2ME)”. Disponível em http://java.sun.com/j2me /index.jsp. Acessado: em Jul. 2008. [16] W3C - WWW CONSORTIUM, Site do fórum de desenvolvimento de tecnologias para Web. Disponível em:<http://www.w3c.org >. Acesso: em Jan. 2008. [17] Site da especificação XML User Agent Profilling Specfication (UAProf). Disponível em: <http://www.openmobilealliance.org/ >. Acesso: em Jan. 2008.

Page 194: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

193

Voltar ao sumário

Um Framework Baseado no Protocolo IPv6 para Suporte a Ambientes Virtuais Distribuídos

Leopoldo W. Malacrida Dundes [email protected]

Ronaldo C. Messias Correia [email protected]

Rogério Eduardo Garcia [email protected]

Universidade Estadual Paulista .Júlio de Mesquita Filho – UNESP Faculdade de Ciências e Tecnologia – FCT

Presidente Prudente, SP

ABSTRACTMost of architectures proposed for developing Distributed Virtual Environment (DVE) allow limited number of users. To support the development of applications using the internet infrastructure based on IPv4 protocol, with hundred or, perhaps, thousands users logged simultaneously on DVE, several techniques for managing resources, such as bandwidth and capability of processing, must be implemented. We have proposed a framework for supporting communication on DVE using the next generation protocol: IPv6. The facilities in Ipv6, such as the scalability of multicast and anycast routing, allows for more efficient forwarding and greater flexibility to improve the communication process on a DVE. In this paper we present the results obtained by simulating a DVE using a framework based on IPv6, showing the protocol efficiency on DVE.

Keywords IPv6, Multicast, Distributed Virtual Environment, Framework

1 INTRODUÇÃOAmbientes virtuais distribuídos (AVD) devem satisfazer uma variedade de características, como: interação em tempo real; fidelidade da inserção do usuário no mundo virtual em relação a uma referência; alta taxa de quadros por segundo; reusabilidade e portabilidade; escalabilidade; ajustamento a novas interfaces e dispositivos de visualização e requisitos para capacidades adicionais [1]. O desempenho e a escalabilidade de um AVD está relacionado diretamente com o meio de comunicação. A estrutura atual da Internet, cujo protocolo de comunicação utilizado é o IPv4, não garante níveis de performance satisfatórios para aplicações em larga escala, pois em geral, a entrada de novos usuários aumenta a quantidade de dados compartilhados e o nível de interação no ambiente, exigindo mais recursos de rede para manter os dados atualizados e disseminar as interações entre os participantes. Considerando que a rede é usada para transmitir informações e sincronizar objetos compartilhados no ambiente, fazendo com que o ambiente se aproxime ao máximo de um ambiente real, a taxa de transferência e a escalabilidade desses sistemas ficam limitados aos escassos recursos do IPv4 em relação a sistemas distribuídos.

Uma solução mais adequada para atingir as características de comunicação inerentes a estes ambientes é a adoção do protocolo IPv6, que apresenta funcionalidades adicionais, comparadas ao IPv4, dentre elas: multicast nativo, roteamento mais eficiente, anycast, maior faixa de endereçamentos, IPSec (IP Security Protocol) integrado, QoS (Quality of Service) padronizado (12). Este artigo tem o objetivo de apresentar o framework AVDNet6, capaz de manipular eficientemente funcionalidades do IPv6, fornecendo estrutura e comportamento genéricos para os AVDs e podendo ser adaptado ou estendido para atender variadas necessidades.A motivação para o desenvolvimento da AVDNet6 teve origem na necessidade de estender a AVDNet – uma arquitetura de software consistente e flexível para criação e gerenciamento de aplicações de realidade virtual distribuída não específicas (7) – com o desenvolvimento de uma camada de gerenciamento mais eficaz dos limitados recursos de rede em AVDs não específicos de larga escala. Para apresentar detalhes desta pesquisa, o artigo encontra-se organizado como segue. Na Seção 2 são apresentados conceitos e características inerentes aos ambientes virtuais distribuídos. Na Seção 3 é apresentada a arquitetura AVDNet. Na Seção 4 é apresentado o protocolo IPv6 e suas características. A AVDNet6 é apresentada na Seção 5. Os resultados obtidos com as simulações de um ambiente são apresentados na Seção 6, e as conclusões e trabalhos futuros são apresentados na seção 7.

2 AMBIENTES VIRTUAIS DISTRIBUÍDOS

Ambientes Virtuais Distribuídos (AVDs) são sistemas de software que permitem que múltiplos usuários interajam em tempo real num ambiente compartilhado, independente da localização geográfica desses usuários (13). A variedade de funcionalidades que os AVDs devem apresentar torna esse tipo de sistema cada vez mais complexo à medida que se pretende aproximá-lo dos ambientes reais. Esses ambientes de simulação devem suportar intensa interação distribuída, pois com a participação de diversos usuários o ambiente deve garantir confiabilidade e desempenho satisfatórios para que participantes

Page 195: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

194

Voltar ao sumário

possam interagir entre si em tempo real, e inclusive reagir a informações do ambiente também em tempo real. A taxa máxima de transmissão e o tempo de retardo das redes de comunicação têm grande influência na qualidade dos AVDs,principalmente no que diz respeito à interação em tempo real e ao número máximo de participantes. Atualmente, o grande desafio encontrado na implementação de AVDs é o baixo desempenhodas redes de computadores em geral, principalmente das redes Wide Area Network (WAN).Os AVDs precisam garantir que a entrega de pacotes tenhalatência mínima para permitir que as imagens do ambiente virtual sejam geradas, para cada um dos usuários, numa freqüência suficiente para garantir a ilusão de realidade. A unidade básica de transmissão de dados entre os participantes em um AVD é o PDU (Protocol Data Unit). Para ocorrer troca deinformações em um AVD é necessário o uso de um padrão de mensagens para que todos os seus diversos participantes possam manipular de forma uniforme essas informações. Esse protocolo deve ser capaz de modelar todo o fluxo de informaçõesnecessárias para que o AVD funcione eficientemente. Na evolução dos AVDs, dois modelos merecem destaque: o protocolo DIS (Distributed Interactive Simulation), que consiste num grupo de padrões desenvolvidos pelo Departamento de Defesa Americano e por entidades da indústria cujo principal emprego destina-se a construção dos simuladores militares, mas especificamente para campos de batalha; e os protocolos Gamesque também são conhecidos como SRMPs (Scalable Reliable Multicast Protocols) e são inspirados em jogos multiusuários de computadores. Os protocolos Games não necessitam transmitir

definições completas do estado de um objeto, podendo apresentar diversos tipos de PDUs especializadas para cada operação realizada por uma determinada entidade virtual (mover, falar, voar, etc.), ao contrário do protocolo DIS (14). Historicamente, padrões de mensagem que são usados em AVDs são compilados por software e todas as entidades que participamdo ambiente devem implementar esses padrões para que sejapossível a interação entre todos os participantes.

3 A ARQUITETURA AVDNetA AVDNet é uma arquitetura de software consistente e flexível para criação e gerenciamento de aplicações de realidade virtual distribuída não específicas, capaz de suportar uma grande quantidade de participantes conectados ao ambiente, através da infra-estrutura disponível atualmente na Internet. Permite implementar a interação e a detecção de colisão de objetos emtempo real, mantendo a sincronia e consistência do estado dos objetos. Possibilita também o tratamento dos aspectos envolvidosna colaboração entre os participantes do mundo virtual. Ela identifica e sustenta os requisitos funcionais e não funcionais relacionados ao desenvolvimento e gerenciamento de AVDs, tais como: comunicação e interação entre os objetos e participantesdo ambiente virtual em tempo real; tráfego gerado por sistemasdesse tipo; impactos causados por atrasos adicionais que podem ser gerados pela distribuição dos dados (latência); modelagemdos objetos tridimensionais e seus comportamentos;sincronização da visualização do ambiente entre os participantese resposta rápida a novos requisitos do sistema (7).

Figura 1. Estrutura da AVDNet

Page 196: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

195

Voltar ao sumário

A escalabilidade em ambientes virtuais distribuídos é determinadapelo número de participantes simultâneos que eles podem suportar. Para isso, métodos e técnicas que gerenciam recursos de largura de banda de rede e capacidade de processamento forampropostos e integrados na AVDNet, tais como: gerenciamento de áreas de interesse ou regiões, predição da posição dos objetos através do Dead reckoning, nível de detalhamento da imagem através da distância do avatar, agregação e compressão de pacotesde atualização, balanceamento da carga através de servidores adicionais, e em especial a proposta do protocolo de comunicaçãomulticast em nível de aplicação, que permite a utilização dasaplicações por qualquer host da Internet, independente dos roteadores suportarem ou não multicast nativo. A organização da arquitetura distribui os requisitos em várioscomponentes inter-relacionados, destacando-se três módulos de acordo com suas funcionalidades: Modelagem, Gerenciamento e Comunicação. Para cada um dos módulos, destacam-se os componentes, que oferecem e utilizam serviços uns dos outros e especificam os padrões e procedimentos para a realização de suas funções, conforme apresentado na Figura 1. O módulo de Comunicação permite que as estações participemefetivamente em sessões de comunicação em grupo, fornecendo um canal de comunicação entre os grupos de participantes, deforma a aperfeiçoar e gerenciar as mensagens enviadas e recebidas entre os participantes.

Figura 2. Mapeamento da Topologia Física

A AVDNet, baseada na infra-estrutura atual da Internet, propõe o protocolo de comunicação multicast em nível de aplicação comouma técnica alternativa para o gerenciamento da comunicação emgrupo em aplicações de realidade virtual distribuída. O mapeamento da topologia física da proposta desse protocolo éapresentado na Figura 2. Em uma análise superficial, na qual é considerado somente o número de pacotes transmitidos em todos

os enlaces físicos (envio de um pacote da fonte F aos receptoresRn, considerando os roteadores RTn), identifica-se que sãoenviadas 33, 23, e 16 cópias de pacotes respectivamente para ascomunicações unicast, multicast em nível de aplicação, e IP Multicast. No unicast é enviado um pacote da fonte F para cada receptor Rn. Já no multicast em nível de aplicação, o pacote éenviado aos receptores R1 e R2 por meio do unicast, que distribuem aos demais receptores. Com o IP multicast, um únicopacote é enviado a um grupo de roteadores que encaminham aosreceptores. Assim, a respeito do unicast, o IP Multicast reduz os recursos usados em 52% e multicast em nível de aplicação em30%. Dependendo da distribuição física das estações, essespercentuais podem variar e para algumas situações o desempenhodo multicast em nível de aplicação pode ser ainda melhor.

4 PROTOCOLO IPV6 O IPv6 (Internet Protocol version 6) é o protocolo de comunicação tido como sucessor do IPv4. Apesar do tempo de uso do IPv4, que surgiu no final da década de 1970, o principalmotivo para a atualização do IP foi a limitação no espaço deendereços, que poderá ser uma barreira ao aumento potencial dos aparelhos conectados à internet, proporcionado principalmentepelos aparelhos móveis, como celulares, PDAs, câmeras, etc.Porém, o IPv6 incorporou muitas outras melhorias efuncionalidades. Apesar de muitas semelhanças conceituais entre os dois protocolos, o IPv6 muda muitos detalhes, uma vez que os projetistas aproveitaram a oportunidade para ajustar e ampliarvários aspectos do IPv4 com base na experiência operacional acumulada sobre esse protocolo. Muitas técnicas têm sido desenvolvidas para diminuir o tráfego de pacotes enviados a rede, porém poucas têm sido desenvolvidas para gerenciar o fluxo de dados de forma eficiente. A capacidade de rede é um recurso limitado, portanto deve ser cuidadosamente alocada aos fluxos gerados em um AVD. As vantagens do IPv6 são várias quando comparados ao IPv4.Dentre elas, destacam-se: capacidade de endereçamentoexpandida, cabeçalho aprimorado de 40 bytes com suporte aextensão, autoconfiguração de endereços, alocação edirecionamento de recursos, novo tipo de conexão, autenticação eprivacidade bem definidos, conexão multicast nativa. A representação de endereços IPv6 utiliza 128 bits ao invés dos 32 bits do protocolo IPv4, aumentando significativamente a possibilidade de representação de participantes em AVDs. Essenovo endereçamento exige uma notação diferente darepresentação decimal separada por pontos usada no IPv4.A seguir são apresentadas algumas funcionalidades do IPv6 quedevem ser exploradas na comunicação de AVDs para aumentar aeficiência no processo de comunicação, e que foram consideradas na AVDNet6:

4.1 MulticastConexões multicast provêem um poderoso e flexível método para distribuir mensagens para um grande número de participantes em um AVD com o mínimo esforço de distribuição e uso dos recursos de rede. Multicast é um tipo de serviço que permite a rede suportar comunicações do tipo ponto-multiponto, ou seja, um pacote pode

Page 197: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

196

Voltar ao sumário

ser enviado de um participante do ambiente virtual (ponto) endereçado para um grupo de participantes que possuem endereço único (múltiplos pontos). Neste caso, o roteador é o responsável em replicar os pacotes e encaminhá-los para um ou mais participantes presentes na sua sub-rede. Portanto, para que conexões multicast sejam estabelecidas, é necessário que os roteadores dêem suporte a este tipo de conexão (7). Essa tecnologia já está disponível em grande parte dos equipamentos de rede mais recentes. A maioria dos novos roteadores já vemcom suporte a IPv6 por meio de dual-stack, no entanto, o problema consiste em roteadores já instalados e ativos, que não dão suporte à comunicação multicast. Com o uso desses equipamentos, atualmente na rede mundial de computadores é inviável prever um determinado caminho na qual existam somente roteadores habilitados com dual-stack e multicast. O uso de túneis faz-se necessário nesses casos para que pacotes IPv6 possam trafegar sobre uma rede IPv4.

4.2 QoS – Quality of Service O suporte a QoS implementado no IPv6 disponibiliza um mecanismo robusto de colaboração entre os objetos em um AVD. A especificação possibilita uma estrutura mais aprimorada e maissimples que no IPv4, uma vez que todo cabeçalho possui umcampo Traffic Class de 8 bits e um Flow Label de 20 bits (15). Com o campo Traffic Class é possível distinguir as diferentes classes e prioridades no pacote IPv6. Dessa forma, é possível direcionar tráfegos especiais a determinados processamentos, podendo obter escalabilidade e processamento diferenciados acada nó no caminho do tráfego. Já o Flow Label é usado para rotular pacotes que pertencem a fluxos particulares para os quais o remetente requisita tratamento especial.

4.3 AnycastUm mesmo endereço anycast pode ser atribuído a múltiplasinterfaces de rede simultaneamente. Isso permite que um pacotedestinado a um endereço anycast seja enviado para a melhor interface de rede de acordo com o protocolo de roteamento(17)O anycast é geralmente usado como uma maneira de fornecer adisponibilidade elevada a determinado serviço ou servidorespecífico, além de ser usado também como forma de balanceamento de carga para serviços sem estado (6). Porém, a tecnologia requer uma infra-estrutura de controle mais complexa do que as requeridas em conexões unicast. E determinadas topologias em AVDs podem se beneficiar do uso do anycast, como topologias Cliente-Servidor de múltiplosservidores permitem que o participante possa encontrar o melhor servidor para conexão inicial ao ambiente (6).

4.4 Fragmentação/RemontagemO IPv6 não permite a fragmentação e remontagem de datagramasIP em roteadores intermediários, ao contrário do IPv4. Essas operações podem ser realizadas somente pela fonte e pelo destino do tráfego. Assim, se um datagrama for maior que a MTU (Maximum Transmission Unit) da rede, o roteador simplesmente o descarta e envia uma mensagem ICMP (Internet Control MessageProtocol) para a origem, que então o fragmenta em múltiplosdatagramas menores. A montagem e fragmentação de datagramas

IP são processos que consomem muito tempo, a execução de taistarefas apenas nos sistemas finais acelera consideravelmente o repasse de pacotes e conseqüentemente melhora a eficiência emAVDs.Para evitar que os datagramas sejam fragmentados sucessivasvezes, o IPv6 utiliza uma técnica para que um percurso seja escolhido dinamicamente de modo que seja um bom caminho a ser percorrido pelos datagramas, técnica conhecida como PMTU(Path MTU Discovery). Se o caminho entre o remetente e o destinatário não estiver situado na mesma rede, provavelmenteneste caminho existe uma rede que tenha menor MTU do que asoutras, e assim o tamanho do pacote é limitado pela menor MTU das redes presentes no caminho do pacote. Enfim, o uso de IPv6 em AVDs pode aumentar substancialmente o taxa de transferência efetiva e suprir as necessidades de criação e gerenciamento de aplicações distribuídas que necessitemsuportar uma grande quantidade de participantes conectados ao ambiente. Na Seção 6 são apresentados os resultados edesempenhos obtidos em relação aos protocolos IPv6 e IPv4.

5 FRAMEWORK AVDNet6

O desenvolvimento de um framework requer um enorme esforçode desenvolvimento, pois as principais características de umframework são, entre outras, modularidade, reusabilidade, extensibilidade e inversão de controle que eles oferecem aos desenvolvedores (7). Pela própria característica dos framework,eles não são aplicações completas, são definidos pontos deextensão que devem ser preenchidos pela aplicação que osutilizam.A organização da estrutura do framework AVDNet6 foi baseado em módulos separados de acordo com suas funcionalidades:Cliente e Servidor. Para cada módulo foram especificadoscomponentes que interagem entre si e declaram padrões e procedimentos para a realização das respectivas funçõesconforme ilustrado na Figura 3:

Figura 3. AVDNet6

O framework AVDNet6 provê características específicas a AVDNet através do acoplamento de funcionalidadesimplementadas pelo IPv6 e que contribuem para aumentar aeficiência do ambiente. O framework AVDNet6, proposto para estudo neste artigo, é utilizado como uma camada de extensão dacamada de comunicação da AVDNet. Assim como mostrado naFigura 4: Além da AVDNet6 contribuir para que a AVDNet suporte IPv6, o framework pode ser facilmente estendido para usoem AVDs não específicos.

Page 198: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

197

Voltar ao sumário

O framework AVDNet6 possui um conjunto de classes que atuam atua como uma camada intermediária que suporta a comunicaçãoentre os AVDs. As conexões pelos participantes do ambiente são efetuadas com o uso de threads de controle, fornecendo agilidade e funcionalidade inerentes à AVD. O dinamismo das threads na AVDNet6 permite que o módulo Servidor sempre fique disponível a conexões de participantes, e que o módulo Clientesempre fique disponível para o envio de mensagens.

Figura 4. Extensão da Camada de Comunicação da AVDNet

A flexibilidade da AVDNet6 permite que cada módulo atueindependentemente, tanto que garante recursos de usabilidadetanto para participantes que atuam como servidor, cliente, ouambos.A simplicidade de utilização do framework garante que o AVDNet6 seja utilizado nas mais diversas arquiteturas de AVDs com alta confiabilidade. A curva de aprendizagem de usabilidadedo framework é relativamente pequena, pois acima de tudo, o esforço de desenvolvimento na manutenção de parâmetros comosimplicidade, integração e eficiência tornam-se fundamentais.

5.1 Troca de Mensagens As interações podem ser realizadas entre participantes e entre participantes e objetos do ambiente em um AVD. Quando um objeto pode sofrer alterações de posição e orientação, e tais orientações devem ser replicadas a todos os participantes para garantir a integridade do ambiente. Além do mais, tradicionalmente, os AVDs podem operar somente com padrões de mensagens que estão definidos quando eles iniciam. Assim, se algum novo protocolo ou PDU necessite ser adicionado à arquitetura, o ambiente tem que ser parado, compilado e reiniciado para que as novas alterações tenham efeito, contrariando totalmente a dinâmica e a percepção de realidade deAVDs.Como o framework AVDNet6 foi desenvolvido para atuar em diversos AVDs, inclusive na AVDNet, um padrão de mensagens foi desenvolvido para ser utilizado e garantir a heterogeneidade. A AVDNet6 utiliza o XML (Extensible Markup Language) para encapsular todas trocas de informações entre os participantes. Na Figura 5 é apresentado o processo de comunicação da AVDNet6. A linguagem XML define uma forma padronizada para adição de marcações e documentos contendo informação estruturada (5). Acapacidade de extensão e flexibilidade da linguagem permite que

ela se adapte a qualquer tipo de documento, favorecendo quequalquer sistema que possa suportar XML poderá participar doAVD através da AVDNet6.A linguagem é adequada a AVDs cuja necessidade de trabalharcom rápidas mudanças é fundamental, além de promover o reúso de informações, permitindo que as informações possam fluir entreaplicações diversas e AVDs de arquiteturas desconhecidas.

Figura 5. Comunicação na AVDNet6

Para que a AVDNet6 seja estendida a diversos AVDs, aAVDNet6 possui um mecanismo capaz de transformar um objeto PDU, gerado pelo AVD e de estrutura desconhecida aoframework, em um documento XML que é posteriormenteencapsulado ao protocolo IPv6 para o envio aos destinatários presentes no AVD. A facilidade com que as mensagens são criadas e manipuladaspermite explorar recursos específicos de determinado ambienteobtendo uma melhor performance da rede. Como os PDUs que são utilizados em AVDs são simples, e geralmente de tamanho pequeno (3), a leitura da mensagem XML para validação e manipulação é realizada com a criação de umarepresentação na memória em forma de árvore, tambémconhecido como parser DOM (Document Object Model).Para evitar que mensagens XML inválidas possam trafegar peloAVD, as mensagens XML que trafegam pelo AVDNet6 permitem que sejam validadas por um DTD (Document Type Definition), permitindo um desenvolvimento flexível, provendoum meio não proprietário, robusto, verificável e padronizado paraarmazenamento e transmissão de dados pela rede de comunicação(3).

6 RESULTADOSPara que o AVDNet6 seja avaliado, é suficiente que o frameworkseja instanciado em algum AVD. Porém, no desenvolvimento dos AVDs pode ser implementados uma variedade de métodos e técnicas para garantir a gerência de recursos, como largura de rede e capacidade de processamento, compressão e agregação depacotes, servidores adicionais, gerenciamento de interesse, etc. Entretanto, a avaliação do framework não pode depender doprocessamento de algum AVD, já que todo o processamento egerência de recursos podem ser centralizados no AVD, o que não causaria confiabilidade nos resultados apresentados.

Page 199: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

198

Voltar ao sumário

Figura 6. EtherealPara a avaliação inicial da AVDNet6, por meio de simulações, foi criado um sistema de apoio para fornecer funcionalidade ao framework e simular o comportamento de um AVD. O sistema deapoio é capaz de gerar PDUs dinamicamente para que operações que envolvam troca de pacotes e avaliação de desempenho desses pacotes na rede de comunicação sejam avaliadas.A estrutura da rede Ethernet de comunicação utilizada para as simulações foi feita com o uso de dois computadores utilizando como Sistema Operacional GNU/Linux com Kernel 2.4.31 e com um switch interligando-os. A rede foi configurada para aceitar ambos os tipos de protocolos: IPv4 e IPv6. E para análise dos pacotes, foi utilizado um analisador de pacotes para que todo tipo de tráfego IPv6 ou IPv4 sejam capturados, chamado de Ethereal,cuja interface é apresentada na Figura 6. A partir do sistema de apoio, um único PDU de informações foigerado e repassado para a AVDNet6 que posteriormente foi enviado pela rede de comunicação em formato XML por meio de comunicação unicast. O tempo que o pacote IPv6 levou para percorrer o caminho entre os dois computadores apresentou um menor tempo e, conseqüentemente, um melhor resultado da taxa de transferência do que o mesmo PDU empacotado pelo IPv4. Opacote IPv6, mesmo tendo um cabeçalho maior do que o IPv4,obtêm um ganho significativo no roteamento pelo switch. O gráfico da Figura 7 exprime os resultados:

Entretanto no modelo de tráfego de AVD, as estações geram uma grande quantidade de pacotes. As taxas de ativação dessesserviços estão geralmente relacionadas com as ações realizadaspelos participantes do ambiente.

Figura 7. Relação entre tamanho e tempo no IPv6 e IPv4

Page 200: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

199

Voltar ao sumário

O gráfico apresentado na Figura 8 mostra a vantagem do IPv6 em relação ao tempo de tráfego de um PDU de 86 bytes empacotado.Porém, nesta simulação, diversos pacotes foram gerados para reproduzir o comportamento do modelo de tráfego de um AVD. Destaca-se que a mesma configura do ambiente foi utilizada para obter tais resultados (simulação com apenas dois computadores).

Figura 8. Tempo de vantagem em segundos do IPv6sobre o IPv4 por meio do envio crescente de PDUs de 86 bytesAlém dos resultados apresentados, obtidos com as avaliaçõesiniciais, destaca-se as vantagens da comunicação multicast nativa do IPv6. Espera-se que, com a condução de testes adicionais como uso desse protocolo, seja evidenciada a vantagem esperada,dada as características descritas do IPv6.

7 CONCLUSÃOOs resultados obtidos com as simulações da AVDNet6 mostram a potencialidade do protocolo IPv6 em integrar Ambientes Virtuais Distribuídos. Pacotes de dados de tamanho maior no IPv6apresentam melhor tempo de envio do que pacotes de dados de tamanho menor. Pacotes maiores de dados exploram melhor os recursos de rede e são roteados pelos equipamentos de rede com uma maior rapidez. A AVDNet6 permite que procedimentos e métodos responsáveis pelo processo de comunicação da AVDNet possam ser retirados,movendo toda essa responsabilidade da camada de comunicaçãopara a AVDNet6. Além da AVDNet, outros frameworks para AVDs podem usufruir dessa vantagem e retirar a carga extra do sistema no processo de comunicação.O próximo passo será a condução de avaliações envolvendo um AVD, com um número maior de participantes e com o uso demulticast. Adicionalmente, como uma evolução para o framework, técnicas de compressão podem ser usadas para produzirem mensagens de menor tamanho e possibilitar que menos recursos de redes de comunicação sejam utilizados, umavez que mensagens codificadas em XML carregam dadosdescritivos que aumentam o tamanho do pacote a ser transmitido.

8 REFERÊNCIAS[1] Balikhina, T.; Ball, F.; Duce, D.; Distributed Virtual Environments — An Active Future? The 20 th Eurographics UK Conference, De Montfort University, Leicester, UK , Junho2002.

[2] Çapin, T. K.; Pandzic, I. S.; Magnenat-Thalman, N.; Thalman, D.; Avatars in Networked Virtual Environments. John Wiley and Sons, 1999.

[3] .Correia, R. C. M., Pellegrino, S. M., Scalable Distributed Virtual Environments Using Multicast Application Level. In: 9th International Conference on Computer Supported CooperativeWork in Design (CSCWD 2005), 2005, Coventry, UK. Proceedings of the 9th International

[4] Conference on Computer Supported Cooperative Work inDesign, 2005. v. 1. p. 140-145.

[5] World Wide Web Consortium. XML W3C.http://www.w3.org/XML/ - Acessado em 16/08/2008

[6] Eraslan, M; Georganas, N. D. ; Gallardo, J. R.; Makrakis D.;A scalable network architeture for distributed virtualenvironments with dynamic QoS over Ipv6. School of Information Technology and Engineering, University of Ottawa, Ontario, Canada, 2007.

[7] Correia, R. C. M. AVDNet-Arquitetura para AmbientesVirtuais Distribuídos Escaláveis Baseada na Infra-Estrutura Atual da Internet. Tese de Doutorado, Instituto Tecnológico de Aeronáutica, São José dos Campos, SP, 2005.

[8] Greenhalgh, C., Benford, S., Reynard, G., 1999. A QoS Architecture for Collaborative Virtual Environments.Proceedings of 1999 ACM Conference on Multimedia (MM’99),pp. 121-130.

[9] Greenhalgh, C., Benford, S., 1995. Massive: A CollaborativeVirtual Environment for Teleconferencing. In ACM transactions on Computer Human Interactions. Vol. 2, No. 3, pp. 239-261.

[10] Santos, C. A. S.; Passos, C; Marques, M; Tecnologias para o processamento e documentos XML: Uma abordagem Java.CEPERC – Centro de Pesquisas Interdepartamental em Redes de Computadores – Salvador, BA, 2003.

[11] Netto, A.V.; Machado, L. S.; Oliveira, M. C.; RealidadeVirtual – Fundamentos e Aplicações. Visual Books, 2002.

[12] Kurose, J. F.; Ross K. W.; Redes de computadores e Internet. Pearson Addison-Wesley, 2006.

[13] Singhal, S.; Zyda, M. Networked Virtual Environments:Design and Implementation. 1. ed. Addison Wesley Pub CoInc,1999. 331p.

[14] Júnior, A. J. M. L.; Vidal, C. A.; ATAXIA: Uma arquiteturapara a viabilização de NVE's voltados para a Educação a Distância através da Internet. Dissertação de Mestrado,Universidade Federal do Ceará, Fortaleza, CE, 2000

[15] Network Working Group. Internet Protocol, version 6 (IPv6), 1998, http://www.ietf.org/rfc/rfc2460.txt – Acessado em 15/01/2008

Page 201: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

200

Voltar ao sumário

sessão TécnicA 6

rv: técnicas e algoritmoschair: Fátmia nunes - each/usp

Page 202: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

201

Voltar ao sumário

Hydra: Engine Modular e Extensível para Construção de Ambientes Virtuais

Ronaldo Ferreira dos Anjos Filho, Gabriel Fernandes de Almeida, Veronica Teichrieb, Judith Kelner Grupo de Pesquisa em Realidade Virtual e Multimídia (GRVM)

Universidade Federal de Pernambuco (UFPE), Centro de Informática (CIn) [email protected], [gfa, vt, jk]@cin.ufpe.br

Resumo

Atualmente, a capacidade dos processadores de propósito geral aliados com o poder das GPUs, que podem também ser usadas para processamento geral (GPGPU), tem permitido aos desenvolvedores implementarem diversos tipos de engines. Esses podem ser usados para a construção de ambientes virtuais realísticos, desde gráficos, passando por som, até de simulação física. Não é incomum que mais de um destes tipos de engine sejam combinados para o desenvolvimento de diversas aplicações, como, por exemplo, jogos, que fazem uso de engines gráficos, de som, de rede e, mais recentemente, de simulação física. Neste contexto é proposta a criação de um engine modular com o objetivo de unificar diversos aspectos relacionados à criação de ambientes virtuais realísticos, reunindo gráfico, simulação física, som, comunicação e dispositivos de entrada, facilitando assim a implementação de ambientes virtuais que usem tanto apenas alguns aspectos (simulação física e gráficos, por exemplo), quanto todas as funcionalidades possíveis.

Abstract

Currently, the capacity of general purpose processors combined with the power of GPUs, which can also be used for general processing (GPGPU), has allowed developers to implement various kinds of engines. These can be used for constructing realistic virtual environments, from graphics, through sound, even physical simulation. It is not rare combining more than one of these types of engine to develop applications, such as games, which make use of graphics, sound, networking and, most recently, physical simulation. In this context it is proposed the creation of a modular engine in order to unify various aspects related to the building of realistic virtual environments, bringing together graphics, physics simulation, sound, communication and input devices, facilitating the implementation of virtual environments

that either only use some aspects (physical simulation and graphics, for example), or all features as possible.

1. Introdução

Antes limitada pelo poder de processamento e armazenamento, recentemente a Realidade Virtual (RV) tem experimentado grandes avanços. Nos últimos anos, tanto o processador de propósito geral como o gráfico (Graphics Processing Unit - GPU) evoluíram consideravelmente, permitindo a usuários domésticos executar aplicações sofisticadas de RV em seus computadores. Este cenário se tornou ainda mais favorável após a disponibilização das GPGPUs (General-Purpose computing on GPUs) [1], permitindo que aplicações de propósito geral desenvolvidas com este paradigma utilizem o processamento paralelo oferecido pelas GPUs modernas.

A área de processamento de som tem se beneficiado também com as inovações tecnológicas citadas anteriormente, permitindo assim que um número maior de aplicações de RV utilize sons para aumentar a sensação de imersão nos ambientes virtuais. Arquivos de som podem ser gerados possuindo maior qualidade e efeitos que outrora, além de serem facilmente compactados e reproduzidos posteriormente.

Graças a estes avanços também foi possível a criação de engines capazes de simular comportamentos físicos baseados na física Newtoniana em tempo de execução. Estas ferramentas oferecem simulações realísticas que podem ser adicionadas a ambientes virtuais para aumentar o nível de realismo destes ambientes.

Os desenvolvedores de aplicações de RV também devem se preocupar com o modo como o sistema irá captar informações presentes no mundo real. Estas informações podem ser fornecidas por comandos dos usuários a partir de dispositivos específicos, como teclados, joysticks e luvas ou fornecidas por dispositivos sensoriais, como câmeras e sensores térmicos.

Page 203: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

202

Voltar ao sumário

Avanços na área de telecomunicações também têm provocado mudanças no desenvolvimento de aplicações de RV. Com o aumento da largura de banda, é possível desenvolver ambientes virtuais colaborativos, reunindo usuários que podem estar em diversas partes do mundo. Jogos no estilo MMO (Massive Multiplayer Online) [2] se tornaram populares graças ao aumento do número de usuários domésticos que possui conexões de banda larga.

Em muitos casos o desenvolvimento de uma aplicação de RV não contempla apenas um dos aspectos citados anteriormente. Na área de jogos, por exemplo, muitas vezes são utilizados engines gráficos e de sons associados com os de rede e/ou simulação física. Neste contexto, propomos um engine, chamado Hydra Engine, que reúne os principais aspectos abordados na criação de aplicações de RV. Este artigo descreve a sua concepção, e apresenta as decisões de projeto que guiarão o desenvolvimento do primeiro protótipo do engine.

Na seção 2 deste artigo são descritas as ferramentas principais relacionadas à implementação de ambientes virtuais, enquanto nas seções 3 e 4 são apresentadas, respectivamente, a proposta do engine para construção de ambientes virtuais Hydra Engine e sua arquitetura preliminar. Finalmente, na seção 5 são apresentadas a conclusão sobre o trabalho e enumerados os passos futuros previstos. 2. Trabalhos relacionados

Antes de iniciar a concepção e o desenvolvimento do projeto Hydra Engine, foi realizado um levantamento preliminar sobre os principais engines físicos, gráficos, de rede, de som e input existentes, para assim extrair características que estes possuem em comum, além de identificar alguns pontos fortes e fracos. Como este trabalho ainda se encontra em sua fase inicial, é necessário mais estudo a respeito dos engines presentes na literatura antes do desenvolvimento efetivo do Hydra Engine. Nas subseções seguintes o resultado deste levantamento preliminar é relatado. 2.1. Engines físicos

Dentre os engines físicos estudados, a biblioteca Bullet [3] possui dois módulos separados, um para simulação física e outro para detecção de colisão. Esta divisão é refletida na estrutura de diretórios e subdiretórios para representar os sub-módulos da biblioteca. Graças à sua arquitetura modular, é possível utilizar qualquer dos módulos em separado, ou seja, utilizar o módulo de simulação física associado a outro módulo de detecção de colisão ou vice-versa. Um ponto interessante a ser citado é que foi iniciado recentemente o

porte deste engine para a plataforma embarcada do iPhone [4].

A biblioteca ODE [5] (Open Dynamics Engine) é um simulador de corpos rígidos articulados. Uma estrutura articulada pode ser representada por corpos rígidos conectados através de juntas. Como exemplo, pode-se citar criaturas compostas por tronco e membros, ou ainda veículos como carros e motos.

Semelhantemente ao Bullet, a biblioteca ODE oferece também um sistema de detecção de colisão separado do módulo de simulação física. Baseado no conceito de espaços, este sistema de colisão permite rápida identificação de objetos que potencialmente podem colidir.

Ao contrário dos outros engines presentes na literatura, o Newton [6] é um engine físico que possui maior precisão nos cálculos de suas simulações. Ele foi desenvolvido para simulação realística de corpos rígidos em aplicações de tempo real. O Newton é bastante difundido, sendo popular em diversas comunidades.

O NVIDIA PhysX [7], antigo AGEIA PhysX, é um middleware de física, baseado em software, para a criação de ambientes físicos dinâmicos. O PhysX suporta as principais plataformas para jogos e aplicações gráficas, tais como PlayStation3, XBOX360, PC, entre outras. Pela abrangência de plataformas, facilidade de programação e diversas features oferecidas, o uso deste engine é bastante difundido, sendo usado em diversas aplicações e jogos comerciais. Além disto, a placa AGEIA PhysX foi a única PPU (Physics Processing Unit) dedicada para computadores desktop, construída para melhorar a física executada em aplicações que usam este engine. Atualmente a produção destas placas foi encerrada, sendo agora oferecida aceleração física diretamente nas mais recentes GPUs da NVIDIA.

Diferentemente dos outros engines de simulação física existentes atualmente, que executam suas simulações de forma discreta, o Havok Physics [8] desenvolveu um sistema de simulação contínua. Graças a essa característica, problemas de detecção de colisão entre objetos físicos estando em velocidades elevadas são minimizados, facilitando assim o trabalho dos desenvolvedores que precisarem construir simulações contendo objetos se movimentando em grande velocidade.

Recentemente o Havok foi comprado pela Intel, que permitiu a distribuição gratuita de sua SDK (Software Development Kit) para desenvolvedores de aplicações não comerciais. Este engine, assim como o PhysX, oferece suporte a várias plataformas e consoles.

Existe ainda o engine ReActive [9], desenvolvido com o principal objetivo de abstrair os diversos engines físicos presentes na literatura. Atualmente ele fornece suporte para apenas o PhyX, mas já está sendo estudado qual será

Page 204: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

203

Voltar ao sumário

o próximo engine a suportado. Com uma arquitetura baseada em plugins [10], o desenvolvedor pode adicionar facilmente a este engine novas features.

Outro diferencial do ReActive em relação aos demais é a facilidade de acoplá-lo a outros módulos do projeto sendo desenvolvido (como módulo gráfico, de som ou de colaboração) graças à sua interface de comunicação por eventos. Cada alteração ocorrida na cena física, seja realizada pelo usuário (criação de novos objetos, alterar nome dos objetos, dentre outros) ou pelo sistema (sincronização de objetos físicos e gráficos, por exemplo), é colocada em uma fila de eventos para serem tratados ao final de cada loop da simulação. 2.2. Engines gráficos

O OGRE (Object-Oriented Graphics Rendering Engine) [11] é um engine gráfico 3D desenvolvido para abstrair as bibliotecas Direct3D e OpenGL, oferecendo uma interface de programação baseada em world objects. Sua arquitetura baseada em plugins provê ao programador uma interface para implementação dos mesmos, permitindo adicionar novas features, como captura de vídeo ou processamento da cena gráfica gerada, por exemplo.

Diferentemente do OGRE, o Horde3D [12] é um engine de renderização open source (licenciado pela LGPL - GNU Lesser General Public License) desenvolvido para renderizar efeitos visuais encontrados nos jogos atualmente. Além de possuir uma interface de programação simples, o engine suporta a renderização de uma grande quantidade de objetos animados. O Horde é apoiado pela Universidade de Augsburg, na Alemanha e tem por objetivo abstrair o uso de OpenGL nas aplicações.

O Crystal Space [13], do mesmo modo que o Horde, foi desenvolvido para facilitar a construção de jogos 3D em tempo real, mas pode ser utilizado para implementação de qualquer tipo de aplicação. Independente de plataforma, este engine possui uma arquitetura baseada em plugins, conferindo assim ao programador funcionalidades comuns demandadas no desenvolvimento de jogos, tais como renderização gráfica 3D, reprodução de som, dentre outras. 2.3. Engines de som

FMOD Ex [14] é um engine de som, desenvolvido em C++ pela Firelight Technologies, capaz de reproduzir a maioria dos formatos de som existentes atualmente, comprimidos ou não. Graças à sua arquitetura baseada em plugins, o usuário deste engine pode facilmente adicionar novos codecs a ele, possibilitando a reprodução de um formato de som específico.

Dentre as diversas features que o FMOD Ex possui, pode-se citar o suporte a sons 3D e a criação de vozes virtuais. Este engine é compatível com diversas plataformas: Windows, Linux, Solaris, XBOX360, PlayStation (1, 2, 3) e Nintendo (Wii, Game Cube).

Com funcionalidades semelhantes ao FMOD, como sons 3D e reprodução de diversos formatos, o irrKlang [15] possui um diferencial importante: suporte a diversas linguagens de programação. Possuindo uma arquitetura multiplataforma e modular (plugins), este engine oferece suporte para C++ e todas as linguagens .NET (C#, VisualBasic.NET, Delphi.NET, IronPhyton, F#, Haskell.NET), além de suportar os principais compiladores, como Visual Studio e GCC. 2.4. Engines de rede

O engine de comunicação RakNet [16] oferece diversas features interessantes aos desenvolvedores de aplicações de tempo real como, por exemplo, jogos MMOs. Desenvolvido em C/C++, com a utilização deste engine é possível construir aplicações com tráfego de informação protegido (SHA1 [17], AES128 [18], SYN Cookies [19]).

O RakNet oferece ainda gerenciamento automático para criação, destruição, serialização e envio dos objetos definidos pelo usuário. Esse engine possui também voice chat, utilizando como base o engine de som o FMOD Ex.

O Ice (Internet Communication Engine) [20] é um middleware para comunicações em rede. Assim como o engine de som irrKlang, oferece suporte a diversas linguagens de programação, sendo elas: C++, linguagens .NET, Java, Python, Ruby e PHP.

Possuindo licença GNU GPL, este engine foi desenvolvido para aplicações críticas que requeiram alto desempenho nas comunicações via rede, e oferece diversos serviços e plugins implementados. 2.5. Input Engines

CIDA (Chaotic Interaction Device Abstraction) [21] foi desenvolvido com o propósito de prover fácil integração entre a aplicação e os diversos dispositivos de entrada que ela necessite.

Com sua arquitetura baseada em plugins, o CIDA abrange uma grande variedade de dispositivos, sendo estes representados em quatro classes: Keyboard (teclados, controles remotos, celulares), Joystick (joypads, microfones), Tracker (câmeras e marcadores) e Pointer Device (mouse, luvas). Dependendo da implementação do plugin, cada dispositivo pode ser mapeado em classes diferentes, como, por exemplo, um teclado pode ser mapeado tanto para a classe Keyboard quanto para a

Page 205: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

204

Voltar ao sumário

classe Joystick (podendo ser interpretado como dois joypads).

Já o OIS (Object-Oriented Input System) [22] é um engine para gerenciamento de dispositivos que suporta diversas plataformas, dentre elas Windows, Linux e MAC OS.

O OIS classifica os dispositivos em quatro classes: Keyboard, Mouse, Joystick e Other. Esta última oferece aos desenvolvedores a possibilidade de adicionar novos dispositivos na forma de plugins, como por exemplo, o Wiimote, joystick do Nitendo Wii. 2.6. Engines de jogos

O Torque [23]é um game engine, de código fechado, que possui tipos de licenças variados dependendo da natureza do projeto (uso comercial ou educacional). Além da própria documentação, é liberado também aos compradores deste engine o seu código fonte.

Ele foi criado para o desenvolvimento de jogos e outras aplicações que envolvam a criação de mundos virtuais, possuindo diversas features, tais como: construção de terrenos realísticos, comunicação robusta baseada em TCP (Transmission Control Protocol) e UDP (User Datagram Protocol), suporte a multi-bone skeleton animation, dentre outras.

Além das features citadas anteriormente, o Torque é um engine multiplataforma, com suporte para Windows, MAC OS, Linux e XBOX360.

Assim como o Torque, o C4 Engine [24] foi concebido para ser uma ferramenta multiplataforma para jogos, oferecendo suporte para as plataformas Windows e MAC OS.

As features oferecidas pelo C4 são próprias para o desenvolvimento de jogos de última geração. Algumas delas são: animações, suporte a portais, volumetric fog, simulação de tecidos e de superfície de fluidos em tempo real, efeitos de som 3D com atenuação por oclusão ou distância, rápida comunicação remota via UDP, packet encryption e voice chat. Como adicional, a licença oferece também um editor de cena para jogos desenvolvidos com o engine.

O StemCell [25] desenvolvido pela DEVCell é um game engine multiplataforma composto por diversos módulos, como gráfico, lógico e som, oferecendo uma suite de implementação com todas as funcionalidades necessárias à implementação de jogos de última geração.

Com seu módulo gráfico construído sobre o OGRE, este engine possui uma arquitetura também baseada em plugins, permitindo ao desenvolvedor utilizar apenas os módulos que forem necessários, além de facilitar a implementação de seus próprios plugins.

O SteamCell não é gratuito, mas oferece um editor completo para desenvolvimento de jogos, contemplando

desde edição de cenário e simulação física até Banco de Dados (BD) e Inteligência Artificial (IA).

2.7. Outros

Um engine estudado que apresenta uma proposta semelhante ao Hydra Engine é o VR Juggler [26]. Esse engine tem como objetivo prover a integração entre as diversas ferramentas Juggler implementadas, facilitando assim a construção de ambientes de RV que as utilizem. Algumas das ferramentas existentes são: Gadgeteer, JCCL, VPR, Sonix.

Gadgeteer é uma ferramenta para o gerenciamento de dispositivos de entrada, responsável por suas configurações, controle e representação dos dados.

O JCCL é um sistema de configuração, baseado em XML, usado para executar todas as configurações internas do VR Juggler. Já o VRP (VR Juggler Portable Runtime) provê funcionalidades básicas para threads, sockets (TCP, UDP) e serial I/O primitives.

O Sonix representa o módulo responsável pelo gerenciamento de som no VR Juggler, oferecendo uma interface simples e intuitiva para programação de ambientes virtuais com som.

3. Hydra Engine

Uma das dificuldades na implementação de aplicações de RV reside na integração das diversas ferramentas utilizadas para construção do ambiente virtual, muitas vezes possuindo atributos que representam a mesma idéia, mas possuem implementações diferentes, como, por exemplo, a posição de um objeto do módulo gráfico, que também possui uma posição no módulo físico e no de som.

Na prática, uma aplicação que oferece um mundo virtual com elementos gráficos, físicos e de som está lidando com três ambientes virtuais interconectados, mas distintos. Cabe aos desenvolvedores deste mundo virtual a sincronização dos três ambientes que o compõem. Em muitos casos essa sincronização não é trivial, causando atrasos significativos no cronograma dos projetos.

Como visto na seção anterior, existem na literatura alguns engines para construção de mundos virtuais, mas a maioria é específica para jogos e/ou possui custo para adquirir a licença.

Para o desenvolvimento de ambientes virtuais realísticos, é proposta então a construção de um engine que seja capaz de abordar os diversos aspectos presentes em aplicações de RV: o Hydra Engine.

O Hydra Engine será desenvolvido para suprir a necessidade de ferramentas completas e auto-contidas de construção de aplicações de RV, oferecendo uma interface de programação intuitiva, com o objetivo de

Page 206: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

205

Voltar ao sumário

diminuir o tempo de definição da arquitetura e implementação dos projetos.

Inicialmente, o engine dará suporte a cinco aspectos presentes em aplicações de RV: gráfico, som, rede, simulação física e dispositivos de entrada (input), gerenciando a comunicação entre eles de forma transparente aos desenvolvedores. 3.1. Arquitetura preliminar

Sendo seu diferencial em relação aos engines estudados até o momento, o Hydra Engine será composto por módulos independentes que representam os diversos aspectos presentes em uma aplicação de RV. Cada um desses módulos será implementado como plugin, facilitando assim a escolha de quais funcionalidades o usuário irá usar para desenvolver sua aplicação (apenas gráfico e física para ambientes apenas com simulação física e visualização desta, todas as funcionalidades, caracterizando assim um ambiente virtual completo, dentre outras escolhas). A Figura 1 ilustra os módulos da arquitetura preliminar definida, os quais são descritos na seqüência.

Figura 1. Arquitetura preliminar do Hydra Engine Core: Módulo responsável pela coordenação de

todos os outros módulos do Hydra Engine. A partir deste módulo é feita a configuração inicial do engine, informando quais plugins serão carregados, assim como todo o acesso dos objetos pelo usuário, obedecendo ao padrão de projeto facade [27].

Gráfico: Módulo responsável pela representação gráfica dos objetos existentes no mundo virtual, tenham eles uma representação física ou apenas uma representação visual. Para a implementação deste módulo será usado preliminarmente o engine gráfico OGRE, pois possui uma comunidade bastante ativa, tendo desenvolvimento de novas versões continuamente.

Física: Módulo responsável pela simulação física presente no ambiente virtual, oferecendo desde detecção de colisão até animação física. Uma vez que o engine ReActive fornece uma abstração para diversos outros engines de física importantes, o mesmo será usado para o desenvolvimento deste módulo.

Som: Para prover maior imersão ao ambiente virtual, será desenvolvido um módulo responsável pelo gerenciamento de sons, que irá englobar som 3D e 2D. Por possuir features diferenciadas, além da arquitetura baseada em plugins, inicialmente será usado o engine FMOD Ex para implementação deste módulo.

Rede: É comum atualmente o desenvolvimento de ambientes virtuais colaborativos, como, por exemplo, jogos MMO. Por este motivo será desenvolvido um módulo para o gerenciamento da comunicação das diversas estações de trabalho que estiverem conectadas ao ambiente virtual. O RakNet será usado como base para o desenvolvimento deste módulo por oferecer funcionalidades interessantes, como voice chat e gerenciamento dos objetos utilizados na comunicação.

Input: É importante também que os usuários possam interagir com o ambiente virtual. Para alcançar este objetivo será desenvolvido um módulo responsável por gerenciar diversos dispositivos de entrada para interação com o ambiente, desde o mouse até dispositivos mais específicos, como luvas. Por possuírem funcionalidades semelhantes, ainda não foi decidido se este módulo será implementado usando a biblioteca CIDA ou a OIS.

Além dos próprios módulos, o módulo Core oferecerá ainda uma interface de plugins para os usuários criarem suas próprias extensões do engine. Isto permitirá a criação de novas features baseadas na integração de seus módulos, como, por exemplo, um módulo de Realidade Aumentada (RA) combinando o módulo Gráfico com o de Input ou ainda a criação de novos módulos, como de IA ou BD, como mostrado na Figura 2.

Figura 2. Exemplo de plugins

Page 207: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

206

Voltar ao sumário

Para prover a integração entre todos estes módulos, será utilizada a abordagem de comunicação de threads via troca de mensagens, sendo estas últimas tratadas como eventos. Esta abordagem facilitará a comunicação entre os plugins que estiverem sendo usados na aplicação, sem interferir diretamente na execução das threads referentes a cada um deles.

Cada módulo possuirá seu próprio escalonador de eventos, sendo estes armazenados em uma estrutura FIFO (First In, First Out). O escalonador também possuirá uma lista de observadores dos eventos que ele escalona, permitindo assim ao usuário do engine adicionar seus próprios observadores. A cada processamento de evento, os observadores deste serão notificados. A Figura 3 ilustra este processo, usando como exemplo o evento de atualização de um objeto gráfico a partir de sua representação física.

Figura 3. Exemplo de escalonamento de evento

4. Conclusão e trabalhos futuros

Este trabalho teve o intuito de propor a construção de um engine para desenvolvimento de ambientes virtuais realísticos, visto a crescente demanda por aplicações de RV que englobam diversos aspectos encontrados freqüentemente nos jogos de última geração.

A especificação da arquitetura do Hydra Engine ainda necessita de refinamento. Um estudo mais detalhado é necessário para identificar possíveis pontos fortes e fracos dos outros engines existentes (gráficos, físicos, de som, de rede e input), ajudando assim na elaboração de uma arquitetura definitiva para este engine.

Como próximos passos para o desenvolvimento do Hydra Engine, a especificação da arquitetura será finalizada e a implementação será iniciada usando a linguagem de programação C++. Além disto, uma

aplicação demonstrativa será construída que englobe todos os aspectos abordados: gráfico, física, som, rede e input. Plugins específicos também devem ser desenvolvidos como, por exemplo, para IA e BD. Quando finalizado, será feita uma bateria de testes para analisar se há perda de performance em relação à utilização de outros engines com features semelhantes.

5. Agradecimentos Os autores agradecem ao CNPq, que financia parcialmente este trabalho. 6. Referências [1] GPGPU. GPGPU.org. Disponível em:

<http://www.gpgpu.org> Acesso em: 15 de setembro de 2008.

[2] MMO. Wikipedia. Disponível em: < http://en.wikipedia.org/wiki/Massively_multiplayer_online_game> Acesso em: 15 de setembro de 2008.

[3] Bullet. Physics Simulation Forum Disponível em: < http://www.bulletphysics.com/Bullet/wordpress> Acesso em: 15 de setembro de 2008.

[4] Bullet no iPhone. Bullet 2.68 Physics SDK released: Soft Bodies and iPhone support. Disponível em: < http://www.bulletphysics.com/Bullet/wordpress/uncategorized/bullet-268-physics-sdk-released-soft-bodies> Acesso em: 15 de setembro de 2008.

[5] ODE. Open Dynamics Engine. Disponível em: < http://www.ode.org/> Acesso em: 15 de setembro de 2008.

[6] Newton. Newton Game Dynamics. Disponível em: < http://www.newtondynamics.com/> Acesso em: 15 de setembro de 2008.

[7] NVIDIA PhysX. PhysX Site. Disponível em: < http://www.nvidia.com/object/nvidia_physx.html> Acesso em: 15 de setembro de 2008.

[8] Havok. Havok-Home. Disponível em: < http://www.havok.com> Acesso em: 15 de setembro de 2008.

[9] ALMEIDA, Gabriel Fernandes de ; Santos, Artur ; ANJOS FILHO, Ronaldo Ferreira dos ; Breyer, Felipe ; Almeida, Mozart Williams S. ; FARIAS, Rodrigo ; TEICHRIEB, Veronica ; KELNER, Judith . ReActive Engine Reativo de Física. In: Symposium on Virtual and Augmented Reality, 2008, João Pessoa. Symposium on Virtual and Augmented Reality. Recife : Gráfica e Copiadora Nacional, 2008. p. 251-260.

Page 208: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

207

Voltar ao sumário

[10] Plugin. Plugin Definition. Disponível em: < http://www.techterms.com/definition/plugin> Acesso em: 15 de setembro de 2008.

[11] OGRE. Ogre3d Site. Disponível em: <http://www.ogre3d.org> Acesso em: 15 de setembro de 2008.

[12] Horde. Horde: Next-Generation Graphics Engine. Disponível em: < http://www.horde3d.org> Acesso em: 15 de setembro de 2008.

[13] Crystal Space. Crystal Space Site. Disponível em: < http://www.crystalspace3d.org/main/Main_Page> Acesso em: 15 de setembro de 2008.

[14] FMOD Ex. FMOD: Music & Sound Effect. Disponível em: < http://www.fmod.org/> Acesso em: 15 de setembro de 2008.

[15] irrKang. irrKlang Site. Disponível em: < http://www.ambiera.com/irrklang/> Acesso em: 15 de setembro de 2008.

[16] RakNet. RakNet Site. Disponível em: < http://www.jenkinssoftware.com/> Acesso em: 15 de setembro de 2008.

[17] SHA1. The Hash Algorithm Directory. Disponível em: < http://www.secure-hash-algorithm-md5-sha-1.co.uk/> Acesso em: 15 de setembro de 2008.

[18] AES128. AES 128 Encryption\ Decryption. Disponível em: < http://cegt201.bradley.edu/projects/proj2005/aes128/> Acesso em: 15 de setembro de 2008.

[19] SYN Cookies. SYN Cookies. Disponível em: < http://cr.yp.to/syncookies.html> Acesso em: 15 de setembro de 2008.

[20] ICE. Internet Communication Engine. Disponível em: < http://www.zeroc.com/ice.html> Acesso em: 15 de setembro de 2008.

[21] FARIAS, Thiago ; TEIXEIRA, João Marcelo ; RODRIGUES, Carlos Eduardo ; PESSOA, Saulo ; COSTA, Nacha ; TEICHRIEB, Veronica ; KELNER, Judith . CIDA: an interaction devices management platform. In: Symposium on Virtual Reality, 2006, Belém. Porto Alegre : SBC, 2006. p. 271-284.

[22] OIS. Object-Oriented Input System. Disponível em: < http://www.wreckedgames.com/forum/> Acesso em: 15 de setembro de 2008.

[23] Torque. Torque Game Engine. Disponível em: < http://www.garagegames.com/products/111> Acesso em: 15 de setembro de 2008.

[24] C4. C4 Engine. Disponível em: < http://www.terathon.com> Acesso em: 15 de setembro de 2008.

[25] SteamCell. SteamCell Game Engine. Disponível em: < http://www.devcellsoftware.com> Acesso em: 15 de setembro de 2008.

[26] VR Juggler. VR Juggler Suite. Disponível em: <http://www.vrjuggler.org> Acesso em: 15 de setembro de 2008.

[27] FREEMAN, Eric; FREEMAN, Elisabeth; SIERRA, Kathy; BATES, Bert. Head First Design Patterns. 1. Ed. Outubro 2004. 676 p.

Page 209: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

208

Voltar ao sumário

CoReactive: Um Sistema de Colaboração para Ambientes Virtuais Distribuídos

Artur L. dos Santos, Gabriel F. de Almeida, Veronica Teichrieb, Judith Kelner Grupo de Pesquisa em Realidade Virtual e Multimídia (GRVM)

Centro de Informática (CIn) – Universidade Federal de Pernambuco (UFPE) Av. Professor Moraes Rego S/N, Prédio da Positiva, 1º Andar, Recife – PE, CEP 50670-901

{als3, gfa, vt, jk}@cin.ufpe.br

Abstract

This paper describes CoReactive, a collaborative

system for virtual environments which require physics simulation involving a large number of objects. This work proposes the creation of a communication layer implemented on top of physics engines, benefiting both from the concepts of deterministic simulation and from events synchronization in order to decrease the network data transfer rate to its minimum level, therefore enabling a distributed simulation of several physical elements. Being the deterministic simulation essential to CoReactive’s proper functioning, this paper also presents some results of determinism tests executed on main physics engines.

Resumo

Este artigo descreve o CoReactive, um sistema

colaborativo para ambientes virtuais que requerem simulação física envolvendo um grande número de objetos. Este trabalho propõe a criação de uma camada de comunicação em rede, implementada para engines físicos, tirando proveito dos conceitos de simulação determinística e sincronização de eventos para reduzir ao máximo possível a carga de transferência de dados pela rede, possibilitando uma simulação distribuída com muitas instâncias físicas. Como a simulação determinística é um requisito essencial para o funcionamento correto do CoReactive, este artigo também demonstra resultados de testes de determinismo realizados nos principais engines físicos.

1. Introdução

Este artigo apresenta um componente de colaboração relacionado ao projeto ReActive [1], um engine físico que inclui o conceito de reatividade para o desenvolvimento de aplicações que executam simulação física. Tal projeto pretende oferecer uma camada de comunicação em redes de computadores que funciona com engines físicos, objetivando a implementação de sistemas de colaboração em tempo real. Esta parte do projeto é referida como CoReactive, e será descrita neste trabalho.

Conceitos como sincronização remota de objetos e orientada a eventos [2], problemáticas no uso de sistemas estocásticos e testes de determinismo em engines físicos são temas abordados neste artigo.

Na próxima seção é fornecida uma breve visão de alguns conceitos ligados ao CoReactive. Na seção 3, são apresentados os trabalhos relacionados, como engines físicos disponíveis para uso não comercial. A seção 4 apresenta as técnicas existentes para a sincronização de estados em sistemas colaborativos. A seção 5 analisa possíveis conseqüências do uso de engines físicos na construção de um sistema colaborativo determinístico, enquanto a seção 6 descreve a proposta do CoReactive. A seção 7 demonstra os testes realizados para a verificação de quais engines físicos se comportam de maneira determinística. Na seção 8 são apresentados alguns cenários para utilização do CoReactive em sistemas colaborativos determinísticos. Por fim, a seção 9 discute algumas conclusões sobre este trabalho e sugere possíveis trabalhos futuros. 2. Conceitos relacionados

Na seqüência, alguns conceitos relevantes para o estudo de simulações em sistemas colaborativos que utilizem engines físicos são descritos brevemente.

Page 210: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

209

Voltar ao sumário

2.1. Engines físicos

Pode-se definir um engine físico como um sistema

computacional desenvolvido com a finalidade de simular computacionalmente a Física Clássica seguindo o modelo Newtoniano, ou seja, utilizando os conceitos básicos de massa, velocidade, atrito e resistência do ar [3]. Com base neste conceito, um engine físico é responsável por realizar todas as simulações relacionadas ao movimento de partículas e corpos, além das suas interações, como colisão e campos de força. Tais engines geralmente são componentes de um sistema mais abrangente que, tirando proveito das informações resultantes da simulação física, apresentam uma visualização realística dos resultados ao usuário.

O grau de realismo que um engine físico pode oferecer está diretamente relacionado com o nível de precisão matemática da sua implementação. Assim, é possível dividir os engines físicos em dois grupos: simuladores de alta precisão e simuladores em tempo real [3].

Os engines físicos de alta precisão envolvem simulações que requerem maior poder de processamento para realizar cálculos precisos e são utilizados principalmente no meio acadêmico, entre físicos e astrônomos. Tais engines, por serem partes de sistemas que requerem alto poder de processamento, não oferecem resultados imediatos, diferenciando-se da classe de engines físicos em tempo real. Como exemplo clássico do uso de simulações real-time tem-se os jogos eletrônicos, que precisam fornecer uma aparência mais realista ao produto final, mas com pouco impacto no desempenho do jogo. 2.2. Sistemas Colaborativos Determinísticos

A definição de um Sistema Colaborativo (SC) segue o conceito de um sistema de software distribuído [4], no qual os usuários podem interagir com o sistema de forma que o estado temporal do programa é resultado da colaboração dos eventos realizados pelos usuários. É importante observar que o referido conceito de colaboração se define a partir dos eventos de entrada realizados pelos usuários e não pela interação entre os mesmos. Esta observação leva ao raciocínio de que em um SC, não necessariamente os usuários estejam colaborando entre si. Um bom exemplo deste caso são os jogos de computador que fornecem ao usuário a possibilidade de jogar em rede. Tais jogos, dependendo do seu estilo podem tanto fomentar a competição como a colaboração entre os usuários. Entretanto, o estado

temporal de tais jogos depende apenas da colaboração dos eventos de entrada realizados pelo usuário.

Todo SC pode ser classificado entre dois subgrupos: Sistemas Colaborativos Determinísticos (SCD) e Sistemas Colaborativos Estocásticos (SCE) [4]. Um SCD garante que o seu comportamento é completamente previsível e conseqüentemente toda alteração neste tipo de sistema pode ser refeita tendo como base os eventos de entrada realizados. Isto significa que se uma simulação em um SCD for repetida várias vezes com os mesmos eventos de entrada, o estado final do sistema será obrigatoriamente o mesmo.

Por outro lado, um SCE não tem a capacidade de garantir tal previsibilidade. Um SCD pode facilmente ser transformado em SCE se adicionarmos elementos aleatórios, e tais elementos não pertencerem ao conjunto de eventos de entrada. Como estes dados aleatórios modificarão o estado temporal do sistema de forma que o próprio sistema é incapaz de detectar, já que estas alterações não pertencem ao grupo de eventos de entrada, o sistema se comportará de forma estocástica.

Dentre os sistemas distribuídos é bastante comum encontrar sistemas estocásticos, pois como o aplicativo está separado em diversos equipamentos, operações simples podem levar a resultados diferentes. Este é um caso comum em operações que envolvam números reais representados no formato de ponto flutuante, pois cada equipamento pode ter uma arquitetura de hardware diferente para lidar com tais números, gerando resultados com pequenas variações, mas suficientes para definir o sistema como estocástico.

Um SCD oferece algumas vantagens sobre um SCE. Como um SCD se comporta de maneira previsível, a transferência de dados em redes pode ser reduzida ao extremo para o caso de um sistema distribuído. Um SCE precisa enviar mais informações para evitar inconsistência de dados.

3. Trabalhos relacionados

Antes de iniciar o desenvolvimento do projeto CoReactive, foi realizado um levantamento dos principais engines físicos existentes, a fim de verificar quais destes atendem alguns requisitos necessários para o funcionamento correto com o CoReactive. O resultado deste levantamento é apresentado na seqüência.

A biblioteca Bullet [5] é dividida em dois módulos, um para o sistema de detecção de colisão e outro para a dinâmica de corpos rígidos. Uma característica importante desta divisão é que o módulo de detecção de colisão é independente do módulo responsável pela

Page 211: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

210

Voltar ao sumário

dinâmica, possibilitando ao desenvolvedor substituir qualquer um dos módulos por uma implementação que seja mais adequada ao seu sistema.

O ODE [6] (Open Dynamics Engine) é um simulador de corpos rígidos, que suporta corpos articulados através do conceito de juntas. Como exemplo, pode-se citar as dobradiças de uma porta ou janela. Como o Bullet, a biblioteca ODE oferece um módulo de colisão que pode ser facilmente substituído.

Por último, o PhysX [7] é um poderoso middleware de física para a criação de ambientes físicos dinâmicos. O PhysX, apesar de gratuito, possui o código fechado e suporta as principais plataformas para jogos e aplicações gráficas, tais como Playstation 3 e XBOX 360.

Pela abrangência de plataformas e facilidade de programação, o uso deste engine é bastante difundido em diversas aplicações e jogos comerciais. Além disto, a placa AGEIA PhysX foi a primeira PPU (Physics Processing Unit) dedicada para computadores desktop construída para melhorar a performance da simulação física, sendo este um diferencial do PhysX. Recentemente, foi anunciada a compra da AGEIA pela NVIDIA [7], significando que todo o processamento do PhysX, antes restrito à CPU e PPU, será agora transferido para poderosas placas gráficas GeForce da série 8 e mais modernas. 4. Técnicas de sincronização de sistemas

colaborativos com engines físicos

A simulação física é peça fundamental em muitos jogos recentes, sendo conseqüência direta da busca pelo aumento no grau de realismo em tais aplicativos. Entretanto, a inserção de tais engines em um contexto mais complexo nem sempre ocorre de maneira trivial. Um jogo multiplayer, por exemplo, traz a dificuldade adicional de se implementar uma interface entre o engine físico e a camada de comunicação. Tendo em vista tais dificuldades de integração, uma alternativa é a criação de uma interface única entre o engine físico e a camada de comunicação. Desta forma, evita-se a realização de duas integrações separadas – uma com o loop do jogo e outra com a camada de comunicação.

Para a implementação eficiente da camada de comunicação, é preciso observar dois fatores do ambiente no qual o sistema estará contextualizado. O primeiro é a largura de banda disponível, pois para algumas das técnicas de sincronização a taxa de transmissão é diretamente proporcional ao número de objetos ou instâncias físicas presentes na simulação. Assim, para simulações complexas, a largura de banda pode alcançar o nível de saturação. O segundo fator está relacionado à latência da rede, problema freqüente

nos jogos multiplayer, em que os jogadores geralmente estão conectados por diversos tipos de enlaces, como ISDN, xDSL e WiFi. Uma rede com alta latência degrada a experiência do usuário, podendo inviabilizar o uso do sistema.

Para contornar tais problemas, é preciso implementar técnicas de sincronização que busquem melhorar o desempenho do sistema e da própria rede. Em relação às simulações físicas, três técnicas são bastante utilizadas: sincronização por objetos remotos, lockstep e bucket synchronization.

4.1. Sincronização por objetos remotos

A sincronização por objetos remotos é uma das

técnicas mais utilizadas em jogos e sistemas com poucas instâncias de objetos. Utiliza a idéia de centralizar todos os cálculos importantes do sistema em uma máquina, enquanto as outras receberão os estados de todas as instâncias de objetos do programa. Desta forma, as máquinas que recebem as informações não precisam realizar os cálculos que a máquina central está executando.

Entretanto, uma grande desvantagem deste tipo de sincronização é a necessidade de largura de banda suficiente para transmitir todo o estado atual (dados das instâncias dos objetos) do sistema. Um sistema que trabalha com muitas instâncias necessitará de uma rede com grande largura de banda, o que muitas vezes não corresponde à realidade.

Para resolver este problema, podem-se utilizar técnicas que aplicam o conceito de simulação simultânea [2]. Ao invés de passar o estado de cada objeto remoto, executa-se exatamente a mesma simulação em cada máquina, passando para cada uma um conjunto idêntico de comandos ou eventos que serão calculados ao mesmo tempo nas diferentes máquinas. Esta forma de sincronização é complexa para ser implementada pelos requisitos de consistência de dados entre as máquinas, mas traz benefícios para a rede, já que é bem menos custoso enviar eventos do que todos os estados dos objetos remotos envolvidos na simulação.

Figura 1. Aplicativo demonstrativo do VisGas

Page 212: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

211

Voltar ao sumário

A técnica de sincronização por objetos remotos foi implementada e testada num aplicativo demonstrativo do projeto VisGas [8], desenvolvido pelos autores, em que se exibe a simulação de risers, estruturas utilizadas para extração de petróleo e gás entre o solo oceânico e a superfície. A Figura 1 ilustra uma visão geral de um cenário visualizado no VisGas.

Utilizando a arquitetura cliente-servidor, criou-se um sistema no qual o servidor realiza todos os cálculos da simulação física, e envia os estados de orientação e posição dos 600 objetos (cápsulas e esferas) envolvidos na simulação aos clientes. O engine físico (neste caso o PhysX) é utilizado apenas no servidor. No lado cliente, ocorre somente o funcionamento do engine gráfico OGRE [9], responsável pela renderização e exibição na camada de apresentação.

Para evitar altas taxas de transmissão, o envio dos estados foi limitado em 40 Hz. Como a visão humana é capaz de perceber diferenças de imagem no mínimo em cerca de 1/30 segundo, não ocorrem descontinuidades perceptíveis ao olho humano, já que a cada 1/40 segundo um novo quadro é processado e exibido. Entretanto, mesmo limitando o número de envios por segundo, a taxa de transmissão alcança valores em torno de 2,54 Mbps.

4.2. Lockstep synchronization

Na técnica de Lockstep [2], cada usuário espera

pelos eventos dos outros participantes do sistema. Enquanto o usuário não receber todos os eventos dos outros, o mesmo não pode passar para o próximo frame. Isto é válido para todos os usuários do sistema.

Figura 2. Técnica Lockstep Synchronization

A grande vantagem dessa técnica, explicada na

Figura 2, é a garantia de pequenas taxas de transmissão, já que apenas eventos são repassados. Para isto, é preciso que todas as partes formem um sistema determinístico, ou seja: se um evento A ocorre no usuário 1 e o mesmo vai do estado X para o estado Y, o usuário 2 também deverá processar o evento A e passar do estado X para o estado Y.

A técnica de Lockstep pode ser utilizada tanto em um modelo cliente-servidor como num modelo peer-to-peer [10]. O modelo cliente-servidor necessita que todos os clientes enviem ao servidor todos os eventos, que então serão repassados para os demais clientes. Já em peer-to-peer, cada usuário envia seus eventos diretamente para todos. Esta forma é ainda mais vantajosa em redes que suportam multicast.

Entretanto, independente da arquitetura escolhida ser cliente-servidor ou peer-to-peer, existem alguns problemas ao se utilizar Lockstep. O principal ocorre quando uma das partes da rede sofre de alta latência, pois o tempo de resposta final para cada loop corresponde ao tempo de resposta da parte mais lenta da rede.

4.3. Bucket synchronization

Em Bucket Synchronization, similarmente ao

Lockstep, cada usuário espera pelos eventos dos outros participantes do sistema. Entretanto, a diferença entre as duas técnicas está na existência de um buffer dos eventos recebidos em cada uma das partes do sistema. O próprio nome da técnica (bucket – balde em inglês) se refere a este buffer. Quando um evento chega, é armazenado no buffer e será calculado e renderizado apenas em frames futuros. Como exemplo, quando os eventos do loop 1000 chegarem, os mesmos só serão executados no loop 1002. Assim, caso aconteça um atraso em uma das partes, a simulação continuará acontecendo já que existe um buffer de eventos que fornecem as informações para que a simulação ocorra.

A técnica Bucket Synchronization foi utilizada no jogo Age Of Empires, da Microsoft [11]. Seus desenvolvedores realizaram uma pesquisa com usuários em relação à percepção dos eventos sob diferentes níveis de latência. Ao observarem que um intervalo de tempo em torno de 100 a 200 milissegundos não era perceptível aos usuários e a taxa de atualização do jogo deveria ser de 20 Hz, definiram um buffer para dois eventos, já que não seria perceptível para o usuário caso o evento ocorresse 100 milissegundos depois. 5. Conseqüências do uso de engines físicos

em sistemas colaborativos determinísticos

As técnicas de sincronização orientadas a eventos

requerem que a simulação ocorra da mesma forma em todos os nós participantes. É preciso então ter a garantia de determinismo, em que todo o código envolvido deve realizar as mesmas operações ou seqüências de instruções caso seja chamado na mesma

Page 213: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

212

Voltar ao sumário

ordem várias vezes. Sendo assim, se o mesmo conjunto de instruções for executado n vezes, os n estados finais do programa serão idênticos a cada execução.

Os problemas para alcançar estas garantias surgem quando o sistema utiliza bibliotecas externas. Muitas vezes tais bibliotecas são complexas, oferecendo uma gama de serviços difíceis de serem testados quanto ao determinismo. É preciso então realizar testes de todas as funcionalidades utilizadas em tais bibliotecas, analisando a arquitetura da máquina usada para testes, sistema operacional, e versões das bibliotecas. Tais problemas se aplicam aos engines físicos, que são complexos e nem sempre apresentam documentação descrevendo os seus comportamentos.

Um ponto preocupante em relação ao determinismo em engines físicos é a necessidade dos mesmos realizarem integrações no tempo, já que o estado de toda simulação física é dependente da variação do tempo. Como o tempo precisa ser integrado, se a forma de se implementar o contador ou timer não for bem definida, os resultados terão como conseqüência a imprevisibilidade. Não se pode então, por exemplo, utilizar o conceito de consultar a informação de tempo a um processador, pois não há garantia de que os processadores de cada nó informarão a mesma variação de tempo. Uma alternativa é simplesmente informar a variação do tempo para o simulador de forma constante, significando que o integrador receberá sempre a mesma variação de tempo. Para isto, a variação do tempo passa a fazer parte do conjunto de eventos e não de estados do sistema.

Um SC de simulação em tempo real que utiliza técnicas de sincronização como lockstep e timebucket, por ser inerentemente um SCD, precisa dispor de engines físicos que garantam o determinismo do sistema. Caso o engine físico se comporte de maneira estocástica, é preciso adaptá-lo para que se comporte de maneira determinística. Se alterar o código de tal engine não for possível por motivos como inacessibilidade, contratos ou licenças, é preciso então procurar engines alternativos ao atualmente escolhido, pois é mais fácil alterar um componente do sistema do que alterar todo o sistema. Modificar a arquitetura de um sistema determinístico pode trazer impactos indesejáveis, já que a escolha por um SCD é feita para resolver problemas críticos como limite nas taxas de transmissão em redes e consistência dos dados.

6. CoReactive

Visando obter um SC de ambientes virtuais com simulações físicas determinísticas, surge a proposta do CoReactive, uma camada de comunicação em redes de

computadores implementada no topo de diversos engines físicos.

O CoReactive utiliza conceitos de simulação determinística e sincronização de eventos para reduzir a carga de transferência de dados pela rede, já que tais ambientes virtuais podem envolver um grande número de instâncias físicas. O sistema oferecerá então lockstep e bucket synchronization como formas de sincronização de eventos. A escolha entre as duas técnicas de sincronização por parte do usuário é útil para adequar o sistema a diferentes arquiteturas de redes. Um sistema de redes menos confiável e com um nível de latência acima de 100 ms terá uma performance melhor utilizando bucket synchronization, enquanto que um sistema de rede com baixa latência será mais eficiente com o uso da técnica de lockstep, pois não terá a sobrecarga de buffers e sincronização adicional necessárias no bucket synchronization.

Figura 3. Principais classes do CoReactive Atualmente o CoReactive encontra-se na fase final

do planejamento e implementação do protótipo. As principais classes da interface para o cliente são demonstradas em alto nível no diagrama UML da Figura 3. Os cenários de testes de determinismo de engines físicos foram concluídos e os resultados estão descritos na próxima seção.

7. Testes de determinismo de engines

físicos

Como o CoReactive tem como requisito importante ser compatível com pelo menos um engine físico e a documentação da maioria destes sistemas não descreve em detalhes o comportamento de suas bibliotecas, foi preciso realizar testes exaustivos para escolher o mais estável. Desta forma, PhysX, Bullet e ODE foram os engines escolhidos para a bateria de testes. É importante observar que em relação ao PhysX foram

Page 214: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

213

Voltar ao sumário

realizados testes tanto em simulação por hardware (usando a PPU da AGEIA) como por software.

Figura 4. Cena de Testes

Para facilitar o processo de testes de colisões entre

instâncias físicas, criou-se uma cena física com uma caixa oca, visualizada na Figura 4. Na sua região interna, estão inseridos corpos rígidos, como caixas, esferas, cápsulas e pirâmides, confinados a um subespaço. Definindo movimentos que atuem sobre a caixa, causam-se diversos tipos de colisões entre os corpos. Capturando as posições de tais corpos rígidos durante uma variação de tempo e executando a mesma simulação repetidamente, torna-se possível detectar a existência ou não de variações nos resultados. No teste realizado, a caixa executava um movimento harmônico simples (MHS) [3].

A cena de simulação física da Figura 4 apresenta as seguintes características, utilizando ponto flutuante de precisão simples:

Gravidade: [ 0 -9.81 0 ]; Coeficientes de atrito: 0.5; Plano na origem da cena; Caixa oca;

o Dimensão: [ 22m 22m 22m ]; o Espessura: 2m;

Tronco de pirâmide (forma convexa); Torre de 55 cubos, esferas, cápsulas e troncos

de pirâmides.

Tabela 1. Configurações das máquinas de testes

Máquina I

Máquina II

Máquina III

Máquina IV

Processador Athlon 64 X2 Dual 4200+

Athlon 64 3200+

Athlon 64 3200+

Pentium 4 2.8 Ghz

RAM 2 GB 1 GB 1 GB 1 GB

SO Windows XP 32 bits

Windows 2000

Windows XP 64 bits

Windows XP 32 bits

Placa PhysX Não Não Sim Sim

Os testes desta cena física foram realizados em 4 máquinas diferentes, com configurações descritas na Tabela 1.

O levantamento dos dados ocorreu da seguinte forma: a cada 60 ciclos do loop da simulação, eram enviadas para um arquivo de saída as matrizes de orientação e posição de todas as formas físicas na cena. Depois de duas execuções em máquinas diferentes, os arquivos eram comparados. Se o resultado correspondesse a arquivos idênticos, significava que havia uma alta probabilidade dos tipos de objetos e tipos de colisões agirem de forma determinística. Caso contrário, significava que o sistema não é determinístico.

Após duas séries de testes de 5, 10 e 15 minutos para cada engine e cada máquina, a simulação em software no PhysX resultou em arquivos idênticos para todas as saídas. Para garantir um resultado mais preciso, outra bateria de testes foi realizada, mas desta vez com intervalos de tempo de 8 horas. Novamente, as saídas resultaram em arquivos idênticos. Tais resultados indicam alta probabilidade do PhysX se comportar de maneira determinística, pelo menos em relação à simulação de corpos rígidos e suas colisões.

Já com a simulação do PhysX em hardware, utilizando a mesma cena dos testes em software, os resultados foram diferentes. Simulando várias vezes na mesma máquina, as saídas não são semelhantes para todos os tempos de testes. Entretanto, simplificando o ambiente para apenas um cubo, a simulação se comporta de maneira determinística. Adicionando mais um cubo, a simulação começa a apresentar um comportamento aleatório. A partir destas observações, infere-se que a implementação do sistema de colisão em hardware não processa os dados de maneira estática, podendo gerar resultados completamente diferentes para entradas iguais, significando que uma simulação em hardware não poderá ser utilizada num SCD.

O ODE engine apresentou um comportamento determinístico para corpos rígidos. Entretanto, a adição de juntas na simulação gerou resultados imprevisíveis.

O Bullet apresentou ausência de determinismo em todos os tipos de elementos físicos envolvidos na simulação, apesar da variação nos resultados ser pequena e visualmente imperceptível. Entretanto, como qualquer alteração pode gerar grandes variações de resultados, o Bullet, assim como o ODE não pode ser utilizado num SCD sem alterações na implementação. A Tabela 2 sumariza os resultados dos testes de determinismo.

Page 215: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

214

Voltar ao sumário

Tabela 2. Resultados dos testes de determinismo

PhysX Software

PhysX Hardware ODE Bullet

5 minutos Deterministico Determinístico Estocástico Estocástico

15 minutos Deterministico Determinístico Estocástico Estocástico

1 hora Deterministico Estocástico Estocástico Estocástico 8 horas Deterministico Estocástico Estocástico Estocástico

A partir dos resultados encontrados, pode-se concluir que o único engine que apresenta determinismo dentre os três analisados é o PhysX quando simulado em software. Desta forma, a alternativa encontrada para desenvolver o CoReactive é utilizar como engine físico o PhysX em software.

8. Potenciais aplicações

Diante das características apresentadas num SCD, aplicativos como simuladores de vôo e sistemas dedicados ao treinamento de mão de obra em engenharia são alguns exemplos de programas que podem explorar as inovações oferecidas por um SCD como o CoReactive. Tais aplicativos normalmente demandam altas taxas de transmissão de dados, que podem ser amenizadas utilizando o conceito de sincronizações orientadas a eventos. Dentre tais aplicativos, pode-se exemplificar o projeto VisGas [8], voltado para o treinamento colaborativo em projetos de perfuração de poços de petróleo.

Projetos de novos jogos em rede que buscam elevar o grau de realismo, mas se encontram atualmente limitados pelas taxas de transmissão em rede também poderão ser beneficiados pelo uso do CoReactive nas suas implementações. O CoReactive também propõe o suporte à uma camada de abstração de rede, possibilitando a colaboração entre aplicações de simulação física de forma mais simples e otimizada. 9. Conclusão e trabalhos futuros

A principal contribuição do CoReactive para uma simulação física distribuída se define na implementação de uma camada de comunicação orientada a eventos, reduzindo as taxas de transmissão dos dados. Outro importante fator para o uso de um SCD em conjunto com o CoReactive se refere à exatidão na exibição da simulação em máquinas ou terminais diferentes, significando que a exibição será equivalente em todos os pontos de acesso do sistema distribuído.

Os resultados encontrados nos testes dos engines possibilitou a determinação do PhysX como o escolhido para ser utilizado na implementação do CoReactive. Dependendo da necessidade de adição de

um novo simulador físico, pode-se estudar a possibilidade de alteração da implementação do ODE, engine de código e licença aberta.

10. Agradecimentos Os autores agradecem ao CNPq, que financia parcialmente este trabalho. 11. Referências

[1] G.F. Almeida, A.L. Santos, R.F. Anjos, F.B. Breyer, M.W.S. Almeida, R. Farias, V. Teichrieb, e J. Kelner, “ReActive - Engine Reativo de Física”, X Symposium on Virtual and Augmented Reality, SVR 2008, 2008, João Pessoa, Brasil. [2] S. Jamin, “Class Notes – Networking Multiplayer Games”, University of Michigan, 2007. Disponível em: Computer Game Design and Implementation Course site. URL: http://ai.eecs.umich.edu/soar/Classes/494/talks/lecture-16.pdf, visitado em Maio de 2008.

[3] Eberly, D.H., Game Physics, Elsevier Science, New York, EUA, 2003.

[4] K. Drira, A. Martelli, e T. Villemur. Cooperative Environments for Distributed Systems Engineering, Springer, New York, EUA, 2002.

[5] Bullet Physics Library. Disponível em: Bullet site. URL: http://www.bulletphysics.com, visitado em Julho de 2008. [6] Open Dynamics Engine. Disponível em: ODE site. URL: http://www.ode.org, visitado em Outubro de 2008. [7] NVIDIA. Disponível em: NVIDIA site. URL: http://www.nvidia.com, visitado em Agosto de 2008.

[8] G.F. Almeida, F. Ferreira, A.L. Santos, V. Teichrieb, J. Kelner e E. Setton. “Sistema de Visualização Científica em Tempo Real para Aplicações de Engenharia”, XXIX Congresso Ibero Latino Americano de Métodos Computacionais em Engenharia, CILAMCE 2008, 2008, Maceió, Brasil. [9] OGRE. Disponível em: OGRE site. URL: http://www.ogre3D.org, visitado em Outubro de 2008. [10] El-Rewini, H., e M. Abd-El-Barr, Advanced Computer Architecture and Parallel Processing, Wiley-Interscience, Hoboken, EUA, 2005.

[11] P. Bettner, e M. Terrano, “1500 Archers on a 28.8: Network Programming in Age of Empires and Beyond”, Game Developers Conference, 2001. Disponível em: Gamasutra site. URL: http://www.gamasutra.com/features/20010322/terrano_01.htm, visitado em Março de 2008.

Page 216: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

215

Voltar ao sumário

Interface para distribuição e integração de Realidade Aumentada com Realidade

Virtual por meio da plataforma CORBA, tendo como estudo de caso ambientes

multidisciplinares de biologia e química.

Wender A. Silva1, Edgard A. Lamounier3, Marcos W. Ribeiro2, Alexandre Cardoso3

1- Faculdade Atual da Amazônia, 2 - Instituto Luterano de Ensino Superior de Itumbiara,

3-Universidade Federal de Uberlândia [email protected], 2- [email protected], 3 – [email protected], [email protected]

Abstract

This article presents an application of Virtual and

Augmented Reality in Multidisciplinary Distributed Virtual

Environments, having as transport of solutes and

photosynthesis process as a case study and communication

between environments of Biology in Virtual Reality

(scenary with plants, sun, water and land) and

environments of Chemistry in Augmented Reality

(membrane of a leaf, stem and branch anatomical cut of a

tree) provided by CORBA platform distribution,

emphasizing education for the practice.

Resumo

Este artigo apresenta uma aplicação de Realidade

Virtual e Aumentada em Ambientes Virtuais Distribuídos

Multidisciplinares, tendo o processo da fotossíntese e

transportes de solutos como estudo de caso e a

comunicação entre ambientes de Biologia em Realidade

Virtual (cenário com plantas, sol, água e terra) e

ambientes de Química em Realidade Aumentada

(membrana de uma folha, tronco cortado e galho

anatômico de uma árvore) proporcionada pela plataforma

de distribuição CORBA, dando ênfase para a prática

educacional.

1. Introdução

Este trabalho destaca o uso de Realidade Aumentada em ambientes virtuais distribuídos (AVDs). O propósito deste artigo é reproduzir o funcionamento de um ambiente virtual distribuído, por meio da Realidade Aumentada, fazendo integração com a Realidade Virtual, por meio da plataforma de distribuição CORBA[11], um ambiente virtual (Química) sofrerá interações do usuário, por meio de técnicas de Realidade Aumentada, que serão replicadas para os outros tipos de ambientes virtuais (Biologia) e vice versa. Estas interações simulam o processo da Fotossíntese e o Transporte de Solutos em plantas, mais especificamente nas árvores. Como vantagem desta implementação, pode-se

citar a sensação de imersão causada pela interação em que o usuário poderá alterar o comportamento e características de um ambiente e causar em um outro tipo de ambiente, mudanças relacionadas ao modelo multidisciplinar dos ambientes (Biologia e Química – Processo da Fotossíntese e Transporte de Solutos).

Outra vantagem na relação entre os mundos virtuais distribuídos de Química (ambiente virtual aumentado em forma de uma membrana, tronco cortado e galho transparente de uma árvore) e Biologia (cenário com plantas, sol, água e terra) é possibilidade de acompanhar em tempo real as relações entre as disciplinas, desta forma, dá-se uma ênfase também para as questões educacionais, onde o usuário e/ou aluno irá visualizar a relação entre as duas disciplinas (Biologia e Química) por meio da relação clara, demonstrada na aplicação, entre o processo da fotossíntese e o transporte de solutos no interior das árvores.

2. Arquitetura do Sistema

Esta seção apresenta um protótipo de arquitetura desenvolvido para protótipos de sistemas de distribuição de Avs, nesse protótipo, deverá ser construída uma aplicação com o modelo de dados centralizada e compartilhada com a existência de um servidor único de Química, para qualquer ambiente participante da aplicação. A plataforma CORBA foi usada sem seu serviço de eventos. Utilizou-se, aqui, apenas o modelo cliente/servidor com o serviço de localização de objetos. A figura 1, abaixo, ilustra a estrutura de funcionamento do protótipo. Essa estrutura trabalha com um fluxo de troca de informações entre o cliente e o servidor, de tal forma, que caso haja alteração no servidor, as alterações são replicadas para todos os clientes, e ao contrário se houver alterações em um dos clientes, essas alterações irão surtir efeito na aplicação servidora, assim, como há muitos clientes, as alterações deverão ir acorendo de acordo com a chamada nos clientes, ou seja, de acordo com uma lista de espera para a realização dos eventos. Desta forma, a responsabilidade de armazenar os dados de qualquer ambiente existente na rede é de uma aplicação servidora, única e exclusiva a esta tarefa.

Page 217: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

216

Voltar ao sumário

Figura 1. Distribuição dos Ambientes Virtuais

A comunicação é iniciada por meio de uma interação transformada em uma requisição ao servidor. Quando o servidor (química – RA) recebe a requisição, a informação recebida é armazenada e um retorno ao cliente é disparado e, ao mesmo tempo, todos os outros clientes (biologia - RV) são atualizados com a replicação da alteração. Independente da quantidade de cópias de clientes deverá haver sempre um servidor responsável por todos os ambientes. Para que isso aconteça, a primeira aplicação iniciada em uma rede de computadores sempre procura o servidor. Desta forma o servidor deverá estar ativo para que os clientes o encontrem. Uma vantagem desta arquitetura é que se algum cliente falhar não afetará o servidor. Por outro lado, as alterações realizadas nos ambientes de Realidade Virtual nas máquinas Clientes afetaram o ambiente servidor (Realidade Aumentada - Química).

2.1 Arquitetura Proposta para o Sistema

A Figura 2, abaixo, detalha a arquitetura proposta para este trabalho. Nessa arquitetura, CORBA é usada para suportar a comunicação entre vários (n) computadores. Cada computador pode ter um tipo de ambiente, Biologia ou Química. Haverá apenas um ambiente de Química e n

ambientes de Biologia. Sempre haverá um objeto servidor que se encarregará de gerenciar a distribuição dos ambientes. Este servidor poderá ser uma aplicação dedicada, ou até mesmo o próprio objeto cliente poderá ter papel de servidor em algum momento.

Figura 2. Arquitetura proposta para o sistema

Cada ambiente virtual pode ser executado e manipulado separadamente. Modificações em um ambiente são propagadas para todos os outros ambientes. Estas comunicações são efetuadas por meio da camada CORBA (comunicação cliente/servidor e comunicação cliente/cliente por meio do canal de eventos).

2.2. Algoritmo de Distribuição

Esta seção apresenta um algoritmo que deverá ser desenvolvido para gerenciar a comunicação entre os ambientes virtuais. Este algoritmo é responsável por permitir ao sistema, gerenciar as falhas, ou seja, permitir que o ambiente virtual distribuído seja tolerante a falhas. Levando em consideração algumas especificidades dos ambientes virtuais, este algoritmo foi denominado de Facilidade AVD. Alguns aspectos devem ser considerados na construção de um AVD, como a comunicação em rede, visões do ambiente, gerenciamento da computação, comportamento dos objetos e modelo de dados. A aplicação servidora será sempre o ambiente virtual de Química, que usa RA na visualização. Toda aplicação que for iniciada na rede sempre procurará por um servidor, desta forma, haverá sempre apenas uma aplicação do ambiente de Química. Todos os outros ambientes (Biologia) se conectarão ao servidor (Química) como clientes. Qualquer interação em Química será replicada para todos os clientes. Por outro lado, as interações realizadas por usuários Biologias alterarão a realidade do ambiente de Química. O sincronismo entre os ambientes de Biologia será proporcionado por uma comunicação cliente-cliente mediante o uso do Canal de Eventos (Serviços CORBA). A Figura 3, abaixo, ilustra o algoritmo de distribuição.

Page 218: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

217

Voltar ao sumário

O R B V isibr okerC O R B A

AV Q u ími ca

R A - A rTo o lK it

O p enG L

AV B iolog ia

Op e nG L

AV B iolog ia

Op e nG L

AV B iolog ia

O p enG L

AV B iolog ia

O p e nG L

Figura 3. Arquitetura proposta para o sistema

3. Estudo de Caso

3.1. Processo da Fotossíntese

A Fotossíntese é o processo, pelo qual as plantas verdes e alguns outros organismos transformam energia luminosa em energia química. Nas plantas verdes, a fotossíntese aproveita a energia da luz solar para converter dióxido de carbono, água e minerais em compostos orgânicos e oxigênio gasoso[10].

A fotossíntese apenas ocorre na natureza em presença de luz solar, por meio de células clorofiladas de uma folha. Na prática, é como se a planta estivesse liberando gás oxigênio e daí a sua ação ser “purificadora” do ar atmosférico[9].

3.2. Transporte de Solutos

O transporte local de solutos para dentro das células ou no interior das mesmas é regulado principalmente por membranas. O transporte de maior escala, entre a planta e o ambiente ou entre as folhas e as raízes, por exemplo, também é controlado pelo transporte de membranas celulares. Por exemplo, o transporte de sacarose da folha à raiz por meio do floema, denominado translocação, é governado e regulado pelo transporte de membrana para dentro das células do floema na folha e do floema para as células de armazenagem da raiz[12].

No transporte de água e solutos existem duas possibilidades a serem passivas de estudo mais aprofundado: Transporte passivo (difusão) ocorre espontaneamente a favor de um gradiente de potencial químico; Transporte ativo ocorre contra um gradiente de potencial químico. Assim, o movimento espontâneo de moléculas “montanha abaixo” é denominado transporte passivo. Em equilíbrio, nenhum movimento líquido adicional de soluto pode ocorrer sem a introdução de uma força propulsora[12].

3.3. Funcionamento do Sistema

O sistema deverá apresentar dois modelos de ambientes virtuais (podem existir 1 instância do ambiente de Química e n instâncias do ambiente de Biologia) com características e comportamentos independentes. Num modelo, tem-se o ambiente virtual de Biologia, e num outro modelo o ambiente virtual da Química, como se pode observar nas Figuras 4 e 5, onde é representado os estados iniciais dos ambientes.

Figura 4. Estágio inicial do ambiente de biologia

Um ambiente (Biologia) demonstra uma situação macro de um ambiente real. O outro ambiente (Química) demonstra uma situação micro de uma parte do outro ambiente. O que torna relevante esta comunicação é o fato de que cada ambiente está ligado a uma área distinta do conhecimento (Biologia e Química), permitindo a visualização real entre as mesmas (multidisciplinaridade).

Figura 5. Estágio inicial do ambiente de química – RA

Page 219: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

218

Voltar ao sumário

O ambiente virtual da Biologia apresenta alguns objetos, como o sol e as árvores. No ambiente virtual da Química, ocorre o processo da fotofosforilação acíclica, disparado durante o processo da fotossíntese, e ainda ocorre o transporte de solutos (água e sais minerais) que ocorrem devido ao processo da fotossíntese e possui uma velocidade de absorção de acordo com a temperatura ambiente e de acordo com a velocidade do processo de fotossíntese. Isso ocorre por meio de uma visão aumentada n vezes da membrana de uma das folhas das árvores, e ainda do corte de tronco da árvore (visualização do transporte de solutos dentro da árvore) e o tronco de uma árvore, onde deverá ser visualizada a ocorrência dos transportes de solutos e a fotossíntese ao mesmo tempo. E ainda, no ambiente de RA, pode-se escolher os objetos de química para adicionar em uma árvore real, onde assim, simula-se o processo de realidade aumentada. A idéia é pegar o objeto virtual e colocá-lo em uma árvore real, como a montagem de uma árvore “natalina”.

No ambiente virtual da Biologia, de acordo com a luminosidade emitida pelos raios solares (fator importante no processo da fotossíntese), as folhas das árvores podem aumentar ou diminuir em tamanho. Esta luminosidade é controlada pela interação do usuário com um clique no sol, alterando a temperatura e influenciando a quantidade de folhas nas árvores. Ao mesmo tempo, um evento é enviado ao ambiente virtual da Química e os elétrons são liberados, passando por uma cadeia transportadora e liberando energia utilizada na produção de ATP e NADP.2H, e ainda dependendo da temperatura o fluxo de transporte de solutos aumenta, pois é necessário mais líquidos para a realização da evaporação da água e do processo da fotossíntese.

O ambiente virtual da Química também interfere no ambiente virtual da Biologia. Para isto, basta, com o uso de um marcador especial (“pá”)[8] arrastar um dos objetos disponíveis na interface de R.A para serem adicionados à árvore real. A figura 6, abaixo ilustra a escolha da membrana para a realização do processo da fotossíntese.

Figura 6. Fotossíntese no ambiente de química

4. Distribuição da Informação e Resultados

Esperados

Considerando que este trabalho se encontra em fase de modelagem, entende-se que: qualquer que seja a atividade ou fenômeno simulado nos ambientes virtuais, os mesmos acontecem apenas seqüencialmente. Ou seja, não se vê uma possibilidade, por exemplo, de iniciar o processo da fotofosforilação acíclica e tentar adicionar outro objeto ou disparar uma outro evento no cliente ao mesmo tempo.

A arquitetura proposta para este trabalho deverá suportar a comunicação de um ambiente que se comunica ou interage com n ambientes diferentes. Sempre que houver alguma interação, o valor do estado do ambiente será modificado e enviado ao servidor, que replica esta informação para todas as cópias.

Além do estado inicial, valor zero, os ambientes possuem as possíveis configurações: Biologia (Estado 1 - temperatura 25 graus, árvores com folhas médias e luminosidade média. Estado 2 – temperatura 35 graus, árvores com folhas grandes e luminosidade alta. Estado 3 – árvores sem folhas). Química (Estado 1 – processo da fotofosforilação acíclica em andamento. Estado 2 – demonstração do transporte de solutos. Estado 3 – demonstração do transporte de solutos e da fotossíntese em um galho anatômico ao mesmo tempo. Com o uso do ARToolKit as cenas virtuais geradas pelo computador deverão ser combinadas com o mundo real observado pelo usuário. O marcador foi associado ao ambiente virtual de química (membrana, tronco cortado e galho anatômico), assim toda vez que este marcador for identificado pela câmera o ambiente virtual de Química é inserido na cena.

5.Conclusões

Os AVDs vem sendo objeto de estudo por pesquisadores e estudiosos desde o surgimento da Realidade Virtual. Existem várias arquiteturas que possibilitam ou oferecem suporte à distribuição. E, geralmente estas arquiteturas são usadas para distribuição de ambientes únicos, mesmo em grande escala, como é o caso de cidades virtuais. Porém, o uso de técnicas de Realidade Aumentada pode melhorar enormemente a capacidade interativa do sistema, criando potencialmente uma aplicabilidade em diversas áreas, no caso específico deste sistema, existe uma vocação natural para seu emprego na educação, melhorando o

processo de ensino-aprendizagem.

5.1. Trabalhos futuros

Como continuação deste trabalho, são considerados

aspectos importantes: Relacionada com estudo de caso:

Page 220: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

219

Voltar ao sumário

Mostrar o processo da Fotossíntese na fase escura, incluindo outras possibilidades de interação entre Biologia e Química.

Relacionada com a arquitetura proposta: Possibilitar a existência de n ambientes de Química.

6. Referências Bibliográficas

[1] 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.

[2] KATO, Hirokazu. ARToolKit. Versão 2.65. Seatle: University of Washington, [s.d] Disponível em: <http://www.hitl.washington.edu>. Acesso em 20 de outubro de 2005, 13:10:36.

[3] BILLINGHURST, M.; KATO, H., POUPYREV, I. - The

MagicBook: A Transitional AR Interface. Computers and

Graphics, November 2001, pp. 745-753.

[4] WOODS, E.; MASON, P.; BILLINGHURST, M. - MagicMouse: an Inexpensive 6-Degree-of-Freedom Mouse. Proceedings of Graphite 2003, Feb, 2003, Melbourne, Austrália, pp. 285-286.

[5] BILLINGHURST, M, - Augmented Reality in Education.

New Horizons, [s.d.] Disponível

em:<http://www.newhorizons.org/strategies/technology/billinghurst.htm>. Acesso em: 28 de dezembro de 2005, 09:45:01.

[6] TAKÁCS, Barnabás. Special education and rehabilitation: teaching and healing with interactive graphics. Computer

Graphics in Education. IEEE Computer Graphics and

Applications, [S.I], September/October, 2005.

[7] KATO, Hirokazu. BILLINGHURST, Mark. POUPYREV Ivan. The MagicBook - Moving Seamlessly between Reality and Virtuality. Projects in VR. IEEE Computer Graphics

and Applications, [S.I], May/June, 2001.

[8] AZUMA, R. et all. Recent Advances in Augmented Reality. IEEE Computer Graphics and Applications, v.21, n.6, pp.34-47, 2001.

[9] OMG e o Padrão CORBA. Disponível em: <http://www.corba.hpg.ig.com.br/>. Acesso em: 15 jan. 2004.

[10] LINHARES, S.; GEWANDSZNAJDER, F. Biologia Hoje. São Paulo: Editora Érica, 2000. 520p.

[11] TREICHEL, P. Jr.; KOTZ, J. C. Química e reações

químicas. V. 1. Rio de Janeiro: Editora LTC, 1998.

[12] TAIZ, Lincoln. Fisiologia Vegetal. São Paulo: ARTMED, 2006.

Page 221: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

220

Voltar ao sumário

Deteccao de Colisao de Objetos em Ambientes Virtuaispara Treinamento Medico Utilizando JOGL

Marcello KeraUniversidade Federal do ParanaDepartamento de Informatica

Curitiba-PR, Brasil, 81531-990

Fatima L. S. NunesUniversidade de Sao Paulo

Escola de Artes, Ciencias e HumanidadesSao Paulo-SP, Brasil, 03828-000

Helio PedriniUniversidade Estadual de Campinas

Instituto de ComputacaoCampinas-SP, Brasil, 13084-971

Resumo

O treinamento de procedimentos medicos pode ser benefi-ciado com o uso de ambientes virtuais interativos que si-mulam com realismo as acoes do usuario. A simulacaodeve emitir respostas rapidas ao usuario relativas ao en-contro de objetos, deformacao, restricao de movimentoou mesmo produzir forcas e vibracoes. Este artigo des-creve a criacao de um prototipo de ambiente virtual paratreinamento medico. Classes e metodos sao projetadose implementados no ambiente por meio da linguagem deprogramacao Java. A detecao de colisao entre objetos ebaseada na subdivisao hierarquica do espaco com octrees.

1 Introducao

Detectar uma colisao e verificar a aproximacao entre ob-jetos de um ambiente virtual. Essa aproximacao deve ser su-ficientemente pequena a ponto de possibilitar a ocorrenciade uma sobreposicao entre objetos, fornecendo assim ummaior realismo as aplicacoes de Realidade Virtual (RV).

A deteccao de colisao e um dos itens mais complexose dependentes das informacoes de interacao monitoradasem um Ambiente Virtual (AV). O problema da deteccaode colisao e fundamental em qualquer simulacao do mundofısico, sendo estudado por diversas comunidades, incluindorobotica, computacao grafica e geometria computacional.

A criacao de um metodo de deteccao de colisao de ob-jetos e um grande desafio, pois na literatura existem muitosmetodos propostos e com boa qualidade. Apesar do grandenumero de algoritmos para a deteccao de colisao [9, 13, 17],

nao ha ainda um metodo que combine satisfatoriamentedois aspectos importantes: precisao e desempenho.

Com o proposito de simular um ambiente para treinarprofissionais da area da saude, este trabalho descreve acriacao de um prototipo de ambiente virtual implementadoem linguagem de programacao Java. A ferramenta e debaixo custo, possui alta precisao na deteccao de objetos eapresenta bom desempenho computacional, conforme de-monstrado nos resultados experimentais.

A secao 2 descreve alguns metodos de deteccao de co-lisao de objetos encontrados na literatura. A metodologiaproposta e apresentada na secao 3. Os resultados obtidos apartir da metodologia sao ilustrados e discutidos na secao 4.Finalmente, a secao 5 apresenta a conclusao do trabalho ealgumas sugestoes de trabalhos futuros.

2 Metodos de Deteccao de Colisao

Devido ao fato de que a deteccao de colisao depende ex-tremamente das informacoes provenientes das interacoes dousuario com o AV, algoritmos eficientes devem ser desen-volvidos para alcancar precisao com tempos de respostasaceitaveis. Esse requisito pode demandar programas es-pecıficos para gerenciar as informacoes de interacao, en-volvendo rotinas de controle e computacao grafica [15].

As secoes a seguir descrevem sucintamente um conjuntode algoritmos de deteccao de colisao existentes na literaturae agrupados por tipo de algoritmos.

2.1 Volumes Limitantes

A deteccao de colisao por volumes limitantes sao algo-ritmos que utilizam primitivas simples para delimitacao do

Page 222: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

221

Voltar ao sumário

espaco de colisao do objeto, tais como esferas, caixas ali-nhadas aos eixos (Axis-Aligned Bounding Boxes - AABB) ecaixa orientada (Oriented Bounding Box - OBB). A princi-pal ideia desse tipo de abordagem e verificar os pontos maisafastados do objeto e inserir a primitiva nesse espaco.

2.1.1 Caixas Envoltorias Alinhadas aos Eixos (AABB)

O algoritmo de caixas envoltorias alinhadas aos eixos (AxisAlign Bounding Boxes - AABB) verifica os dois pontos maisafastados do objeto e envolve esse objeto com uma caixa,alinhando-a com os eixos de coordenada do sistema [14,19]. A figura 1 mostra um exemplo do metodo de caixasenvoltorias alinhadas (AABB).

Figura 1: Exemplo do metodo AABB. Fonte: [10].

2.1.2 Caixas Orientadas (OBB)

O algoritmo de caixas orientadas ou OBB (Oriented Boun-ding Box) corresponde a uma caixa que possui sua propriaorientacao. A OBB e definida pelos seguintes atributos:centro, tres vetores unitarios que representam a direcao dacaixa e a extensao em cada direcao. A OBB verifica os pon-tos mais afastados do objeto para definir seu volume limitee faz com que esse volume se oriente pela forma do objetoe se encaixe de tal forma que sua area fique a mais proximapossıvel da forma do objeto [8].

Em relacao ao ajuste, a OBB apresenta resultados signifi-cativamente melhores do que uma AABB, porem, o calculode intersecao e muito mais complexo e lento, requerendo as-sim muito mais processamento comparado com as esferas ecom a AABB.

A figura 2 mostra a diferenca entre o envolvimento deuma AABB com relacao a uma OBB, bem como a diferencana orientacao dos eixos de coordenadas. A AABB e ali-nhada aos eixos de coordenadas espaciais e a OBB com seuseixos alinhados as coordenadas locais do objeto.

Figura 2: Objeto envolvido com (a) uma AABB e (b) umaOBB. Fonte: [3].

2.1.3 Esferas

Similar ao algoritmo AABB, o metodo de esferas (spheres)testa os pontos mais afastados do objeto e envolve o mesmocom uma esfera. Esferas envolventes sao representadas porum centro e um raio. Uma esfera e definida pelo conjuntode todos os pontos equidistantes de um ponto central.

A desvantagem e que esse metodo pode nao envolveradequadamente um objeto longo e fino, o que pode resul-tar em falsa deteccao de colisao. Nesses casos, um segundoteste poderia ser realizado.

2.2 Subdivisao Hierarquica do Espaco

Nesta abordagem, o ambiente e subdividido em umespaco hierarquico. Objetos no ambiente sao agrupados deacordo com a regiao em que se encontram.

Quando um objeto no ambiente se movimenta e trocade posicao, movendo-se para uma outra regiao do espaco,apenas os objetos do novo espaco precisam ser verificadosse colidem ou nao com o objeto em movimento (figura 3).

Figura 3: Metodo de subdivisao hierarquica do espaco.Fonte: [10].

O ambiente virtual pode ser subdividido utilizando-sealguns metodos conhecidos, tais como octrees, arvoresk-dimensionais e arvores de particionamento do espacobinario, descritos a seguir.

2.2.1 Octrees

Segundo Hearn e Baker [11], octrees sao estruturas dearvores hierarquicas em que cada no interno tem ate oito

Page 223: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

222

Voltar ao sumário

filhos e e organizada para que cada no corresponda a umaregiao do espaco tridimensional. O esquema de codificacaodivide regioes de espacos tridimensionais, normalmente cu-bos, em octantes e armazena elementos em cada no daarvore. A figura 4 ilustra um espaco virtual particionadopor uma octree.

Figura 4: Representacao de espaco particionado por umaoctree. Fonte: [7].

2.2.2 Arvores k-dimensionais

Arvores k-dimensionais (K-d trees), em que k e o numerode dimensoes, sao estruturas de arvores multi-dimensionaisbalanceadas que particionam o espaco para organizacao depontos de um espaco k-dimensional [4].

Uma k-d tree usa apenas planos de divisao que sao per-pendiculares a um dos eixos de coordenadas do sistema,em contraste com uma arvore BSP, que pode se utilizar deplanos de divisao arbitrarios. Como consequencia, cadaplano de divisao deve atravessar um dos outros pontos daarvore [5]. A figura 5 mostra um exemplo de particiona-mento de espaco por arvores k-d.

Figura 5: Representacao de espaco 2D particionado poruma k-d tree. Fonte: [10].

2.2.3 Arvores de Particionamento do Espaco Binario

A arvore de particionamento do espaco binario (BSP tree,do ingles binary space partitioning tree) representa uma di-visao recursiva hierarquica ou a subdivisao de um espacon-dimensional em subespacos convexos. A construcao daBSP tree e um processo que considera um subespaco e oparticiona por qualquer hiperplano que intersecta o interiordo subespaco. O resultado disso sao dois novos espacos que

podem ser particionados novamente por um metodo recur-sivo.

As BSP trees podem ser usadas desde a remocao de su-perfıcies escondidas e hierarquias de ray tracing ate a mo-delagem de solidos e o planejamento de um movimento deum robo [18]. A figura 6 mostra o exemplo de uma BSPtree no espaco bidimensional.

Figura 6: Espaco particionado por uma BSP tree.Fonte: [10].

2.3 Subdivisao Hierarquica do Objeto

Na subdivisao hierarquica do objeto, este e subdivididoem regioes, sendo que a deteccao de colisao e feita quandouma dessas regioes e intersectada por um outro objeto.

A hierarquia de volumes envolventes e baseada em doistipos de nos. Nos internos e nos folhas. Cada no, indepen-dentemente do tipo, possui um volume envolvente associ-ado. Nos folhas possuem volumes envolventes que englo-bam somente a geometria (ou seja a malha de triangulos)enquanto nos internos possuem volumes envolventes queenglobam todos os volumes envolventes de seus filhos. Porisso, pode-se descartar todos os filhos se o volume envol-vente do no pai nao colidir com outro no.

Algumas abordagens para subdivisao hierarquica do ob-jeto sao sphere-trees, AABB-trees e OBB-trees. Ha outrosalgoritmos conhecidos e eficientes encontrados na litera-tura, mas sao variacoes desses metodos fundamentais uti-lizados em deteccao de colisao.

2.3.1 Sphere-trees

O metodo de sphere-trees e um dos mais simples, sendoesse um motivo por torna-lo muito popular em aplicacoes deRV. Hubbard [12] implementa esse metodo, onde o objetoe envolvido por uma esfera (nıvel 0) e, recursivamente, hauma uniao sucessiva de mais esferas fazendo com que elasse aproximem ao maximo da resolucao do objeto. Conside-rando que as esferas sao invariantes quanto a rotacao, entao,para um objeto rıgido, a hierarquia e construıda por meiode um pre-processamento e as transformacoes da hierarquiasao as mesmas transformacoes lineares aplicadas ao objeto.A figura 7 mostra um exemplo de sphere-trees.

Page 224: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

223

Voltar ao sumário

Figura 7: Exemplos do metodo de sphere-trees. Fonte: [6].

2.3.2 AABB-trees

O metodo de arvores AABB basicamente divide o objetoem sub-regioes a partir de um AABB (no raiz). Uma caixaAABB nao pode ser colocada livremente no objeto, pois oAABB e orientado aos eixos de coordenadas do espaco.

Uma arvore AABB e construıda de cima para baixo (top-down), por subdivisoes recursivas. Em cada passo da re-cursao, o menor AABB do conjunto de primitivas e com-putado e o conjunto e dividido respeitando-se a escolha domelhor plano. O processo continua ate que cada subcon-junto contenha apenas um elemento. A imagem 8 mostra asequencia para construcao de uma AABB-tree.

Figura 8: Construcao de uma AABB-tree. Fonte: [8].

2.3.3 OBB-trees

OBB-tree e uma arvore onde cada no possui uma OBB. Autilizacao de arvores OBB representa um ganho em relacaoao desempenho e precisao na deteccao de colisao. ArvoresOBB garantem um ajuste muito superior em relacao a ou-tros volumes envolventes.

A construcao de uma arvore OBB possui dois compo-nentes basicos: a colocacao da OBB ao redor do grupo depolıgonos para que estes tenham um encaixe justo e o agru-pamento das OBB encaixados em uma arvore hierarquica.A figura 9 mostra a construcao de uma arvore OBB.

3 Metodo Proposto

O metodo de colisao utilizado no ambiente virtual foibaseado no algoritmo desenvolvido por Antonio [1]. Paraa construcao do AV, utilizou-se o pacote JOGL (JavaOpenGL). A figura 10 mostra um diagrama com as princi-pais etapas do metodo de colisao desenvolvido, enumeradasa seguir:

Figura 9: Exemplo do metodo de OBB-trees em 2D.Fonte: [10].

• os objetos sao inseridos na cena, ou seja, no AV;

• o AV ou cena e dividido em octantes, utilizando o con-ceito de divisao espacial (octrees);

• os objetos na AV sao distribuıdos nos octantes;

• a cada movimento do objeto e utilizada a computacaoincremental da distancia para verificar se os objetosestao no mesmo octante;

• teste de colisao face a face.

Figura 10: Passos do metodo de colisao.

Na classe de deteccao de colisao sao implementadasfuncoes (metodos) que sao responsaveis por carregar os ob-jetos na cena, dividir a cena em octantes, dividir objetos oufaces nos octantes, calculo de colisao e verificacao da co-lisao entre os objetos.

Para carregar um objeto na cena, o ambiente desenvol-vido utiliza modelos triangulares no formato OBJ [16] ou3ds [2], que consiste em um arquivo contendo informacoesbasicas do modelo 3D: vertices, faces e normais. Com essesdados e possıvel recriar o modelo no ambiente. Os verticessao guardados em uma lista que contem as coordenadas x,y e z.

Apos carregado o objeto na cena, a mesma e dividida emoito partes (octantes). Essas partes servirao para identifi-car onde o objeto (ou parte dele) se encontra, facilitando a

Page 225: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

224

Voltar ao sumário

verificacao da colisao. A divisao da cena e feita de acordocom a posicao dos objetos, tal que os objetos mais afasta-dos na cena sao detectados e suas coordenadas maximas emınimas sao usadas na subdivisao. A figura 11 ilustra adivisao da cena.

Figura 11: Divisao do espaco utilizando octree.

Apos a divisao da cena, realiza-se o posicionamento dosobjetos em cada octante. Se um objeto ocupar mais que umoctante, as faces do objeto sao divididas entre os octantes.Ao movimentar um objeto na cena e possıvel verificar comoesses octantes sao dinamicamente alterados. Se dois objetosestiverem no mesmo octante, faz-se uma nova subdivisaodo mesmo ate que o objeto ou suas faces nao compartilhemesse octante com outro objeto.

Para verificar a colisao entre os objetos, o metodo in-clui os seguintes passos: verificacao da coplanaridade dostriangulos, teste entre os pontos dos triangulos e teste deum ponto sobre o triangulo. Esse metodo foi baseado noalgoritmo de Antonio [1].

Os pseudocodigos de 1 a 4 mostram os passos seguidospara a obtencao da colisao no ambiente virtual.

inıcioMain() {constroiCena();enquanto renderCena faca

divideCenaEmOctree();renderizaCena();verificaColisao();

fim}

fimAlgoritmo 1: Modulo principal.

inıciodivideCenaEmOctree() {calculaRaizOctree;subdivideOctree posicionaFacesNaOctree;}

fimAlgoritmo 2: Modulo de divisao da cena e posiciona-mento de faces na octree.

inıcioverificaColisao() {verificaAlturaMaximaOctree;verificaDiametroOctree;verificaColisaoFaceFace();}

fimAlgoritmo 3: Modulo de verificacao de colisao.

inıcioverificaColisaoFaceFace() {verificaCoplanaridade;testaArestasEntreTriangulos;testaPontoNoTriangulo;}

fimAlgoritmo 4: Modulo de colisao baseado em [1].

4 Resultados Experimentais

O ambiente desenvolvido neste trabalho visa a simulacao doprocedimento de puncao mamaria em exames de biopsia, o qualconsiste na extracao de pequenas partes de tecidos do orgao emquestao para auxiliar a elaboracao do diagnostico medico. A par-tir dessa experiencia, pretende-se tornar possıvel a utilizacao doambiente em novas aplicacoes para treinamento medico.

4.1 Criterios para os Testes

Pela possibilidade de o ambiente possibilitar a visualizacao dosobjetos no ambiente com as malhas poligonais destacadas (wire-frame) e esse recurso pode alterar a media de quadros por segundo(FPS, frames per second), os testes tambem mostraram a media deFPS com a visualizacao das malhas poligonais.

Os objetos carregados na cena podem estar no formato 3ds [2]ou OBJ [16], consistindo em informacoes sobre os vertices, facese vetores normais dos polıgonos que formam os objetos.

Duas plataformas diferentes foram testadas nos experimentospara avaliar o desempenho do metodo: um computador com sis-tema operacional Windows Vista com processador Intel Core2DuoT5250 1.50 GHz, 3 GB de memoria RAM e placa de vıdeo Intelx3100 on-board e um computador com sistema operacional Li-nux Debian 2.6.18-6-686 com processador Intel Pentium 4 Xeon3.20GHz, 2GB de memoria RAM e placa de vıdeo G-Force4MX4000 de 64 bits.

4.2 Deteccao de Colisao entre Objetos

Esta secao apresenta os resultados do metodo de colisao de ob-jetos nas plataformas citadas anteriormente. Duas categorias deobjetos foram utilizadas nos testes, a primeira formada por objetosregulares simples e a segunda formada por objetos complexos comgrande numero de faces poligonais.

Page 226: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

225

Voltar ao sumário

4.2.1 Testes com Objetos Simples

Estes testes utilizaram objetos com baixo numero de vertices efaces, a saber: Diamante com 18 vertices e 8 faces e Toroide com119 vertices e 140 faces. A figura 12 mostra os dois objetos emsuas posicoes iniciais na cena apos serem carregados no ambiente.

Figura 12: Objetos simples em estado inicial.

Na plataforma Windows, a taxa media de renderizacao paraesses objetos estaticos na cena e sem colisao foi igual a 62 FPS ena plataforma Linux, a taxa media de renderizacao foi de 61 FPS,ou seja, taxas similares.

Desde a etapa inicial da aplicacao que e carregar o objeto nacena, o calculo da divisao do espaco (octree) e realizada. Essecalculo consiste em verificar a posicao dos objetos na cena e di-vidir a mesma em octantes, posicionando os objetos ou parte dele(faces do objeto) nos octantes.

Com a movimentacao de um objeto em direcao a outro objeto,a aplicacao pode dividir a cena em espacos menores com a octreeate a possıvel colisao entre os objetos (verificacao face a face).A figura 13 ilustra a aproximacao dos objetos e a subdivisao doespaco, mas sem haver a colisao.

Figura 13: Movimentacao de um objeto na cena.

A taxa media de renderizacao apenas com o deslocamento dosobjetos sem se colidirem e apenas com o recalculo do particio-namento da cena foi igual a 62 FPS nas plataformas Windows eLinux, portanto, taxa similar para o teste anterior com os objetosestaticos na cena.

Como um dos objetos escolhidos possui um orifıcio (Toroide),fez-se se entao um teste no qual se introduz o Diamante nessalacuna para verificar se ha uma falsa deteccao de colisao. Arealizacao desse teste e importante pois um grande desafio encon-trado nos metodos de colisao e a deteccao de colisao em objetos

concavos, onde o espaco interno do objeto pode nao colidir comoutro objeto.

Na figura 14, o objeto Diamante esta localizado exatamente nocentro do objeto Toroide, demonstrando, assim, que a verificacaode colisao e realizada corretamente.

Figura 14: Objetos sem colisao sobrepostos com octree.

Tem-se que, durante todo o processo de movimentar o objetoDiamante ao orifıcio do objeto Toroide, nao ha uma diminuicaona quantidade media de renderizacao tanto para a plataforma Win-dows quanto para plataforma Linux, mantendo-se assim a mediade 62 FPS para ambas as plataformas.

E importante ressaltar que a movimentacao do objeto Diamanteatraves do objeto Toroide tem a mesma media de processamentoque a simples movimentacao do objeto Diamante pela cena.

A deteccao de colisao e indicada para o usuario atraves de umamensagem na cena, indicando se houve ou nao a colisao dos ob-jetos na cena. O processo de detectar colisao no ambiente segueos passos de subdivisao hierarquica do espaco, distancia entre osobjetos e verificacao face a face.

A figura 15 ilustra a colisao dos objetos na cena, cuja taxamedia de renderizacao foi de 62 FPS na plataforma Windows ede 60 FPS na plataforma Linux.

Figura 15: Objetos se colidindo.

A figura 16 ilustra uma ampliacao da regiao de colisao. Nestavisualizacao e possıvel mostrar a proximidade atingida entre osobjetos para se obter uma resposta de colisao, tendo assim umaprecisao bem proxima ao real.

4.2.2 Testes com Objetos Complexos

Nestes testes foram utilizados objetos para simulacao do proce-dimento de puncao em exames de biopsia. Este procedimento

Page 227: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

226

Voltar ao sumário

Figura 16: Deteccao de colisao com ampliacao.

consiste na extracao de pequenas partes de tecidos do orgao sobinvestigacao. O material coletado e entao enviado para examespatologicos para a elaboracao do diagnostico.

Dois objetos foram modelados: um para representar o instru-mento medico (neste trabalho, uma Seringa) e o outro para re-presentar o orgao (neste trabalho, uma Mama). A quantidade depolıgonos presentes na cena foi de 964 vertices e 1.817 faces paraa Seringa e de 8.872 vertices e 17.490 faces para a Mama.

A figura 17 mostra os objetos em suas posicoes iniciais apos se-rem carregados no ambiente. Inicialmente, a taxa de renderizacaoesta em torno de 28 FPS na plataforma Windows e de 27 FPS naplataforma Linux.

Figura 17: Objetos em posicoes iniciais.

A figura 18 mostra os objetos na cena em posicao inicial com arepresentacao octree, onde se pode notar que, mesmo estando emsua posicao inicial, a aplicacao ja determina em qual octante cadaobjeto ou parte dele esta inserido. Pode-se observar que, ja nesteprimeiro momento, uma parte da mama estava no mesmo octanteque a seringa. Com isso, esse octante foi dividido em outros 8octantes, fazendo com que cada octante contenha apenas partes domesmo objeto. A taxa media de renderizacao foi compatıvel coma mostrada na cena anterior de 28 FPS na plataforma Windows ede 27 FPS na plataforma Linux.

Ao apresentar os objetos com malhas poligonais visıveis, tem-se uma taxa media de 16 FPS na plataforma Windows e uma mediade 15 FPS na plataforma Linux. A figura 19 mostra a cena com osobjetos em suas posicoes iniciais.

Havendo uma colisao entre os objetos, verifica-se uma taxa de24 FPS para a plataforma Windows e de 23 FPS para Linux. Afigura 20 ilustra o momento da colisao entre os objetos. A co-

Figura 18: Objetos em posicoes iniciais com sobreposicaoda octree.

Figura 19: Objetos em posicoes iniciais com malhas poli-gonais visıveis.

lisao e verificada apos a divisao recursiva dos octantes ate quese atinja um tamanho mınimo. Apos essa divisao, o calculo desobreposicao de faces e efetuado. Havendo colisao entre as facesou se um valor pre-especificado de distancia mınima for alcancadoentre as faces, entao a colisao e detectada.

Figura 20: Colisao entre os objetos com sobreposicao daoctree.

A figura 21 mostra uma regiao ampliada proxima ao pontode colisao detectado pelo metodo proposto, podendo-se observara proximidade dos objetos. A figura 22 mostra uma ampliacaoda regiao de deteccao com as malhas poligonais visıveis. Nestavisualizacao, pode ser observada a colisao entre a extremidade doobjeto Seringa e a face do objeto Mama.

Page 228: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

227

Voltar ao sumário

Figura 21: Detalhe da colisao.

Figura 22: Detalhe da colisao com malhas poligonaisvisıveis.

5 Conclusoes e Trabalhos Futuros

Este trabalho apresentou o desenvolvimento de um prototipode ambiente virtual interativo para treinamento medico. O desen-volvimento utilizou pacotes livres, abertos e multiplataforma.

A subdivisao hierarquica do espaco baseada em octrees foi uti-lizada na implementacao do metodo de deteccao de colisao dosobjetos. O metodo se mostrou preciso e com adequadas taxas derenderizacao, permitindo uma simulacao com realismo.

Embora os quesitos de precisao e desempenho tenham sidoadequadamente alcancados, novos testes devem ser realizados paraotimizar os metodos por meio da modificacao dos parametros uti-lizados. Pretende-se realizar testes em conjunto com profissionaisda area de saude para auxiliar na validacao das tecnicas e melhoraro realismo da simulacao. Finalmente, outra proposta de trabalhofuturo e a incorporacao de equipamentos nao convencionais, me-lhorando a interacao entre o usuario e o ambiente.

Referencias

[1] F. Antonio. Faster Line Segment Intersection, pages 199–202. Academic Press Professional, Inc., San Diego, CA, Es-tados Unidos, 1992.

[2] AutoDesk. Autodesk 3ds Max, 2008. http://usa.autodesk.com/adsk/servlet/index?siteID=123112&id=5659302.

[3] C. Basdogan and C.-H. Ho. Principles of Hap-tic Rendering for Virtual Environments, 2008.http://network.ku.edu.tr/∼cbasdogan/Tutorials/haptic tutorial.html.

[4] J. L. Bentley. Multidimensional binary search trees usedfor associative searching. Communications of the ACM,18(9):509–517, 1975.

[5] J. L. Bentley. K-d trees for semidynamic point sets. In SCG’90: Proceedings of the sixth annual symposium on Compu-tational geometry, pages 187–197, New York, NY, EstadosUnidos, 1990. ACM Press.

[6] G. Bradshaw and C. O’Sullivan. Sphere-tree Constructionusing Dynamic Medial Axis Approximation. In SCA ’02:Proceedings of the 2002 ACM SIGGRAPH/EurographicsSymposium on Computer animation, pages 33–40, NewYork, NY, Estados Unidos, 2002.

[7] S. Giesecke. Seminar Algorithmen fur Compu-terspiele: Raumliche Sortierung, 2008. http://www.vis.uni-stuttgart.de/eng/teaching/lecture/ws04/seminar spiele/bsp/.

[8] S. Gottschalk, M. C. Lin, and D. Manocha. OBBTree: AHierarchical Structure for Rapid Interference Detection. InSIGGRAPH’96: Proceedings of the 23rd Annual Conferenceon Computer Graphics and Interactive Techniques, pages171–180, New York, NY, Estados Unidos, 1996. ACM Press.

[9] N. Govindaraju, S. Redon, M. C. Lin, and D. Manocha.CULLIDE: Interactive Collision Detection between Com-plex Models in Large Environments using Graphics Hard-ware. In ACM SIGGRAPH / Eurographics Workshop OnGraphics Hardware, pages 25–32, San Diego, CA, July2003.

[10] S. Hadap, D. Eberle, P. Volino, M. C. Lin, S. Redon, andC. Ericson. Collision Detection and Proximity Queries.In SIGGRAPH’04: ACM SIGGRAPH 2004 Course Notes,page 15, Los Angeles, CA, Estados Unidos, 2004.

[11] D. Hearn and M. P. Baker. Computer Graphics, C Version.Prentice Hall, 1996.

[12] P. M. Hubbard. Collision Detection for Interactive GraphicsApplications. IEEE Transactions on Visualization and Com-puter Graphics, 1(3):218–230, 1995.

[13] P. Jimenez, F. Thomas, and C. Torras. 3D Collision Detec-tion: A Survey. Computers and Graphics, 25(2):269–285,Apr. 2001.

[14] J. T. Klosowski, M. Held, J. S. Mitchell, H. Sowizral, andK. Zikan. Efficient Collision Detection Using Bounding Vo-lume Hierarchies of k-DOPs. IEEE Transactions on Visuali-zation and Computer Graphics, 4(1):21–36, 1998.

[15] L. Machado, M. Zuffo, M. Moraes, and R. Lopes. Mo-delagem Tatil, Visualizacao Estereoscopica e Aspectos deAvaliacao em um Simulador de Coleta de Medula Ossea.In IV Simposio de Realidade Virtual, pages 23–31, Flo-rianopolis-SC, Oct. 2001.

[16] O’Reilly. Online Mirror of the Encyclopedia of GraphicsFile Formats. http://www.fileformat.info/format/wavefrontobj/.

[17] M. Teschner, S. Kimmerle, B. Heidelberger, G. Zach-mann, L. Raghupathi, A. Fuhrmann, M.-P. Cani, F. Faure,N. Magnenat-Thalmann, W. Strasser, and P. Volino. Colli-sion Detection for Deformable Objects. Computer GraphicsForum, 24(1):61–81, Mar. 2005.

[18] W. C. Thibault and B. F. Naylor. Set Operations on Polyhe-dra using Binary Space Partitioning Trees. ACM SIGGRAPHComputer Graphics, 21(4):153–162, 1987.

[19] G. van den Bergen. Efficient Collision Detection of ComplexDeformable Models using AABB Trees. Journal of GraphicsTools, 2(4):1–13, 1997.

Page 229: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

228

Voltar ao sumário

Interação em Aplicações para Treinamento Médico Virtual: Problemas e

Soluções a partir de estudos de caso

Cléber Gimenez Corrêa1 Fátima de L. S. Nunes

2 Adriano Bezerra

1

1Centro Universitário Eurípides de Marília – UNIVEM

Av.Hygino Muzzi Filho, 529, Marília, SP, Brasil - CEP: 17.525-901 2EACH – Escola de Artes, Ciências e Humanidades da Universidade de São Paulo

Rua Arlindo Béttio, 1000, Ermelino Matarazzo, São Paulo, SP, Brasil – CEP: 03.828-000

[email protected] [email protected] [email protected]

Abstract

This paper presents the implementation of an

interaction module incorporated in a Virtual Reality

(VR) framework, which aims at facilitating the

implementation of medical training tools for biopsy

exams simulation. The specific goal is to present

problems and challenges noticed during the

implementation and expose solutions adopted in order

to obtain a higher degree of realism. The module

supports conventional devices (keyboard and mouse)

and non-conventional devices (haptic equipment and

dataglove). The applications generated through

framework were evaluated by students and teachers of

the medical area.

Keywords

Interaction, evaluation, conventional devices, non-

conventional device.

Resumo

Este artigo apresenta a implementação de um

módulo de interação incorporado a um framework de

Realidade Virtual (RV), que visa a facilitar a

implementação de ferramentas de treinamento médico

para simular exames de biópsia. O objetivo específico é

apresentar problemas e desafios percebidos durante a

implementação e expor soluções adotadas, com a

finalidade de obter um grau mais elevado de realismo.

O módulo suporta dispositivos convencionais (teclado

e mouse) e não convencionais (equipamento háptico e

luva de dados). As aplicações geradas por meio do

framework foram avaliadas por estudantes e

professores da área médica.

Palavras-Chave Interação, avaliação, dispositivos convencionais,

dispositivos não convencionais.

1. Introdução

A construção de muitas aplicações de Realidade

Virtual (RV) visa à simulação de situações do mundo

real por meio do computador, permitindo que pessoas

realizem determinadas tarefas utilizando essas

máquinas, como se estivessem no ambiente real.

Entretanto, a construção de tais aplicações não é um

procedimento trivial, visto que inúmeras pesquisas

nessa área estão sendo elaboradas, procurando

aperfeiçoar e desenvolver sistemas de RV que gerem

simulações mais próximas do real, proporcionando

benefícios às pessoas. A RV está presente em diversas

áreas do conhecimento. Na Medicina, pode auxiliar

profissionais da área (médicos e estudantes) em

simulações de cirurgias e demais procedimentos

médicos.

Alguns benefícios na simulação de tais

procedimentos são a disponibilidade do sistema,

minimizando a necessidade de cobaias; a diversidade

de casos, oferecendo diversas situações, com presença

e ausência de anomalias; a diminuição de riscos a

profissionais da área e pacientes, visto que o

treinamento pode ser realizado sem o receio de causar

danos aos pacientes [7].

Para que seja possível a aquisição de habilidades e

conhecimentos sobre determinado procedimento, a

interação entre o usuário e o computador é parte

fundamental na construção de aplicações desta

natureza. Por isso, nesta categoria de aplicações é

desejável interação com suporte a dispositivos de

entrada e saída para possibilitar a comunicação entre

homem e máquina de maneiras diversas. Além disso,

aplicações médicas virtuais precisam atender outros

requisitos, como precisão e respostas em tempo real,

para permitir uma simulação mais realista [4].

O presente artigo tem o objetivo de apresentar

alguns problemas e desafios decorrentes da

implementação de um módulo de interação em um

Page 230: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

229

Voltar ao sumário

framework para treinamento médico, e algumas

soluções adotadas até o momento. Com isto, pretende-

se contribuir para que outros pesquisadores dedicados a

esta área, economizem tempo para encontrar soluções

de questões semelhantes no desenvolvimento de suas

aplicações.

Para atingir seu objetivo, este artigo está composto

da seguinte forma: a seção 2 expõe o framework

ViMeT (Virtual Medical Training) e a implementação

do módulo de interação; a seção 3 apresenta problemas

encontrados no desenvolvimento do módulo de

interação e na avaliação do ViMeT, bem como algumas

soluções adotadas; a seção 4 apresenta resultados

obtidos com as soluções adotadas e a seção 5

disponibiliza as conclusões.

2. Desenvolvimento do projeto

O desenvolvimento do projeto considerou

inicialmente a simulação de um procedimento médico

denominado biópsia, que consiste na utilização de um

instrumento médico (uma seringa, por exemplo) a ser

manipulada por um médico, inserindo a agulha em uma

região do corpo do paciente, com o intuito de coletar

material para posterior análise laboratorial. Esse

procedimento é utilizado para a confirmação de

diagnósticos quando há suspeita de anomalias.

Uma abordagem adotada na implementação foi a

utilização de um framework para gerar aplicações

relacionadas a este tipo de treinamento. O projeto

completo é a soma de diversos trabalhos, que

constituem diferentes etapas de desenvolvimento.

Neste artigo será descrito o módulo de interação, que

dá suporte a equipamentos convencionais e não

convencionais. Além da implementação da interação

foi realizada uma avaliação do primeiro protótipo com

usuários da área médica, proporcionando a análise de

problemas considerando as aplicações geradas pelo

framework como um todo.

2.1 Framework de RV

Frameworks consistem em recursos para

reutilização de componentes de software, permitindo o

aumento da produtividade na construção de aplicações

dentro de um determinado domínio de problemas,

incluindo o projeto e a implementação destas [5].

Conforme mencionado, foi inicialmente planejada a

construção de um framework para gerar aplicações de

treinamento médico, delimitando o domínio para

simulação de exames de biópsia. O framework ViMeT

encontra-se em estágio de desenvolvimento.

O ViMeT é um framework de RV, orientado a

objetos, desenvolvido com o uso das linguagens de

programação Java e C++, e a API (Application

Programming Interface) Java3D. Com suas classes e

métodos é possível construir um Ambiente Virtual

(AV) que disponibiliza um objeto que representa o

instrumento médico virtual e outro que representa o

órgão humano. Os objetos podem ser modelados

externamente ao framework e utilizado nas aplicações.

Além disso, as seguintes funcionalidades relacionadas

ao domínio estão disponíveis: deformação do objeto

que representa o órgão humano; detecção de colisão

com precisão, que define o momento em que o objeto

virtual que representa o instrumento médico encontra o

objeto virtual que representa o órgão humano;

modelagem adequada de objetos tridimensionais,

definindo características e comportamentos dos objetos

que representarão o instrumento médico, o órgão

humano, ou qualquer outro objeto; estereoscopia,

permitindo uma sensação de imersão para proporcionar

mais realismo; suporte a dispositivos convencionais e

não convencionais para possibilitar a interação entre

usuário e sistema computacional [2].

Inicialmente, a interação do ViMeT se dava da

seguinte forma: o usuário ou participante da simulação

manipulava o instrumento médico por meio do mouse,

e a aplicação identificava a ocorrência de colisão,

realizando a deformação do local onde a colisão foi

detectada no objeto que representa o órgão humano,

conforme pode ser verificado na Figura 1.

Figura 1. Exemplo de aplicação gerada pelo

ViMeT inicial [2]

Com a implementação do módulo de interação, o

AV gerado pelo ViMeT foi adaptado para importar um

terceiro objeto, ou melhor, uma coleção de objetos

dispostos hierarquicamente para composição de uma

mão virtual, apresentada na Figura 2, que representaria

o ato de segurar e soltar o órgão humano durante o

exame de biópsia, para inserção do instrumento

médico.

Page 231: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

230

Voltar ao sumário

Figura 2. Objeto mão no AV

2.2 Módulo de interação

O módulo de interação foi planejado com o intuito

de proporcionar o uso de dispositivos convencionais e

não convencionais, tendo em vista imprimir uma

flexibilidade ao ViMeT, de tal forma que o usuário

possa selecionar as formas de interação, considerando

seus recursos disponíveis. Os dispositivos

convencionais são um mouse comum e um teclado, e os

não convencionais são 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. Cada dispositivo está

associado a um objeto presente no AV, e atua sobre ele

conforme a ação do usuário.

O mouse comum está associado ao objeto virtual

que representa o instrumento médico. O dispositivo

capta e envia à aplicação informações sobre os

movimentos realizados pelo usuário, bem como

informações sobre o pressionamento dos botões do

dispositivo, para que a aplicação realize movimentos

de translação e rotação no instrumento médico. A

Figura 3 mostra o uso do mouse.

Figura 3. Utilização do mouse

O teclado está associado à mão virtual, que é

constituída por um conjunto de objetos virtuais,

dispostos hierarquicamente para formar os dedos. A

interação ocorre por meio do pressionamento ou da

liberação de teclas específicas, que são analisadas pela

aplicação. A ação de pressionar tais teclas indica que a

mão do usuário está sendo fechada para segurar o

objeto virtual que representa o órgão humano,

resultando na rotação dos conjuntos de objetos que

representam os dedos. A ação de liberar essas teclas

indica que a mão do usuário está sendo aberta, e o

órgão humano virtual deve ser solto, resultando na

inversão da rotação dos dedos virtuais. Desta forma,

cada tecla está associada a um conjunto de objetos

virtuais que representa cada dedo do usuário. A Figura

4 apresenta a interação por meio do teclado.

Figura 4. Utilização do teclado

A 5DT DataGlove 5 Ultra é apresentada na Figura

5 e está associada à mão virtual, de forma semelhante

ao teclado. Este dispositivo possui cinco sensores de

fibra óptica, que permitem a captação de informações

como a flexão dos dedos da mão do usuário [1]. Essas

informações são transferidas à aplicação para a

realização de movimentos de rotação nos conjuntos de

objetos virtuais que representam os dedos. Desta

forma, a luva de dados indica o ato de segurar e soltar

o objeto virtual que representa órgão humano pela

flexão dos dedos do usuário.

Figura 5. Uso da 5DT DataGlove 5 Ultra

Por último, o PHANTOM Omni, é um dispositivo

háptico associado ao objeto que representa o

instrumento médico. Tal dispositivo capta dentre outras

informações, movimentos de translação e rotação nos

eixos x, y e z, caracterizando um dispositivo de seis

graus de liberdade, além de fornecer retorno de força

nos três eixos [8]. O conceito de háptico está

Page 232: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

231

Voltar ao sumário

relacionado à ciência do tato, considerando força e

sensação propiciadas por esse sentido [6].

Desta forma, a aplicação recebe tais informações do

dispositivo, e altera a translação e a rotação do objeto

virtual que representa o instrumento médico, além de

retornar força, criando uma determinada resistência,

quando a colisão é detectada, indicando que o

instrumento médico tocou o órgão humano. A interação

por meio do dispositivo PHANTOM Omni pode ser

visualizada na Figura 6.

Figura 6. Uso do PHANTOM Omni

Com o módulo de interação implementado é

possível, ao gerar a aplicação usando o ViMeT, optar

pela combinação de dispositivos, levando em

consideração a disponibilidade financeira e o realismo

necessário. Os equipamentos não convencionais

possuem custo mais elevado quando comparados com

os convencionais. O grau de realismo é maior quando

são usados dispositivos não convencionais, projetados

para que o usuário realize tarefas, interagindo com o

AV de forma natural, semelhante à execução de tais

tarefas no ambiente real.

O módulo de interação também permite que mais de

um dispositivo seja usado na interação

simultaneamente, oferecendo diversas combinações,

tais como: dispositivo háptico e teclado, dispositivo

háptico e luva de dados, mouse e teclado, mouse e luva

de dados. Na próxima seção são apresentados os

problemas e as soluções adotadas na construção do

módulo de interação e na avaliação do ViMeT.

3. Implementação e avaliação – problemas

e soluções

Esta seção apresenta os problemas encontrados

durante a implementação e as soluções adotadas para

cada um deles. O primeiro problema encontrado na

implementação do módulo de interação foi com relação

aos dispositivos não convencionais (luva de dados e

equipamento háptico), que possuem drivers e

bibliotecas com funções pré-definidas, desenvolvidas

pelos fabricantes e escritas nas linguagens de

programação C e C++.

No entanto, o ViMeT está sendo desenvolvido em

linguagem de programação Java, visto que oferece

diversos benefícios, tais como: portabilidade,

gratuidade, classes e métodos prontos. A API Java 3D

também está sendo empregada, por apresentar os

mesmos benefícios e permitir a criação de Ambientes

Virtuais.

Para resolver esse problema, duas idéias foram

consideradas: a primeira consistia na construção de

drivers para os dispositivos utilizando a linguagem de

programação Java, e a segunda consistia na integração

entre as linguagens de programação C/C++ e Java,

ambas apresentando vantagens e desvantagens.

A construção de drivers envolve questões como

conhecimento de instruções para estabelecer a

comunicação entre dispositivo e computador,

consistindo em programação de baixo nível e

operações sobre as portas de comunicação (serial,

FireWire, USB (Universal Serial Bus), entre outras),

dispêndio de tempo para desenvolvimento e testes. Já a

integração de linguagens de programação engloba o

estudo aprofundado das linguagens, bem como a

pesquisa de recursos disponíveis para realizar a

integração, além de testes.

A solução adotada foi a integração das linguagens

de programação Java e C++, visto que deduziu-se que

o tempo de implementação desta seria inferior ao

tempo de construção de drivers, além deste tipo de

procedimento não ser apresentado na literatura de

forma detalhada, podendo significar uma importante

contribuição para a comunidade científica.

O recurso escolhido para realizar a integração foi o

JNI (Java Native Interface), encontrado no JDK (Java

Development Kit) que possibilita a interoperação entre

a linguagem de programação Java e outras linguagens,

como C, C++ e Assembly [9]. Desta forma, é possível

escrever métodos em linguagem de programação Java,

denominados de métodos nativos, para acessar funções

escritas em código nativo, no caso, escritas em

linguagem de programação C++, onde estão as funções

e comandos disponibilizados em bibliotecas dos

fabricantes.

Além disso, se faz necessária a utilização de

bibliotecas de ligação, nos Sistemas Operacionais

Windows, as denominadas DLLs (Dynamic-Link

Libraries), que são geradas por meio de compiladores.

No presente projeto, o compilador adotado foi o

Microsoft Visual C++ 6.0 devido à familiaridade da

equipe de desenvolvimento com esta tecnologia,

entretanto, outros compiladores, e até mesmo outros

Sistemas Operacionais, podem ser utilizados. Os

softwares oferecidos pelos fabricantes, como o

Page 233: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

232

Voltar ao sumário

OpenHaptics Toolkit, para controle do dispositivo

háptico, possui versão para outras plataformas, como

Linux e MacOS.

A Figura 7 apresenta o diagrama do fluxo de

informações entre o usuário e o sistema computacional,

no qual os dispositivos utilizados para a comunicação

entre ambos são a luva de dados e o monitor de vídeo.

Figura 7. Diagrama de integração e interação

para a DataGlove 5 Ultra [3]

A Figura 8 mostra o diagrama de integração e

interação para o dispositivo háptico, semelhante ao

diagrama anterior, com os fluxos de informações entre

a aplicação, situada no sistema computacional e o

usuário, que atua sobre o sistema por meio do

dispositivo háptico, bem como os fluxos entre as partes

da aplicação, escritas em linguagem de programação

Java e C++, sendo que nesta última estão contidas as

funções do OpenHaptics Toolkit, e a biblioteca de

ligação Haptic.dll, para fornecer a interface de

comunicação entre ambas as partes.

A diferença entre os diagramas é a existência do

fluxo de informações em ambas as direções no

segundo, relacionado ao dispositivo háptico. Isso

indica que a parte da aplicação escrita em Java recebe

informações, que passam do dispositivo para a parte da

aplicação escrita em linguagem de programação C++,

desta para a biblioteca de ligação, e da biblioteca para

a parte da aplicação em Java, que realiza alterações no

objeto virtual de acordo com tais informações,

apresentando essas alterações no monitor de vídeo.

A parte da aplicação desenvolvida em linguagem de

programação Java calcula o retorno de força de acordo

com parâmetros pré-estabelecidos e envia essas

informações para o dispositivo, fazendo o caminho

inverso. O PHANTOM Omni realiza o feedback,

proporcionando sensações táteis no usuário.

Figura 8. Diagrama de integração e interação

para o PHANTOM Omni [3]

Outro problema identificado estava relacionado à

modelagem do objeto virtual para representação da

mão do usuário no AV, no que diz respeito ao grau de

realismo para a rotação dos dedos de acordo com as

informações da luva de dados. Como a luva de dados

possui um único sensor para cada dedo, o movimento

de qualquer parte ou falange de um dedo indica o

movimento do dedo todo. Por isso, o dedo virtual foi

modelado com uma determinada inclinação,

constituído por três objetos virtuais distintos, conforme

pode ser visualizado na Figura 9. Pode-se observar a

divisão dos membros da mão, pois há uma hierarquia

no movimento das falanges dos dedos. Na modelagem

os objetos virtuais são dispostos da seguinte forma: as

pontas dos dedos são penduradas no corpo dos

respectivos dedos, os corpos dos dedos são pendurados

nas esferas de rotação, e as esferas são penduradas na

palma da mão.

As esferas de rotação são utilizadas para que os

conjuntos que formam os dedos virtuais possam

rotacionar de forma correta, permitindo que a rotação

se limite ao centro de cada esfera, e não ao centro do

objeto dedo como um todo, propiciando um maior

realismo [3]. Os objetos que formam a mão virtual

foram modelados separadamente e conectados no AV

por meio de métodos disponíveis no Java3D,

adicionando os objetos como nós na estrutura do grafo

de cena.

Uma ação semelhante ocorreu com o objeto virtual

seringa, que representa o instrumento médico, na qual

uma esfera de rotação de tamanho reduzido foi

adicionada na ponta desta, como pode ser visualizado

na Figura 10, permitindo que a rotação do objeto

ocorra de forma correta.

Page 234: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

233

Voltar ao sumário

Figura 9. Estrutura de modelagem da mão

Figura 10. Estrutura de modelagem da seringa

Após essas etapas de implementação, a aplicação

passou a apresentar o AV com três objetos, conforme

pode-se notar na Figura 11. Uma etapa importante

deste projeto, conforme mencionado, é a avaliação de

um primeiro protótipo, testando não somente o módulo

de interação, mas a aplicação como um todo.

Figura 11. Aplicação gerada com três objetos

Assim como na implementação, alguns problemas

foram identificados na fase de avaliação, comprovando

a importância da opinião dos usuários da área de

aplicação durante o desenvolvimento de aplicações de

RV. A avaliação das aplicações geradas por meio do

ViMeT envolveu aspectos computacionais e humanos e

foi realizada com o auxílio de profissionais de

Medicina. Desta forma, foram coletados dados sobre o

desempenho da aplicação e as opiniões dos usuários

sobre conforto com os dispositivos, facilidade de uso,

bem como o conhecimento dos mesmos sobre RV e

nível de entendimento sobre a tarefa a ser realizada no

AV. A Figura 12 apresenta o AV para a avaliação.

Figura 12. AV gerado para a avaliação

Uma avaliação preliminar com um professor da

Faculdade de Medicina de Marília, que também

indicou os estudantes para os testes, relacionou

determinados problemas, sendo que alguns foram

solucionados para a segunda etapa da avaliação,

realizada com alunos, conforme apresentado a seguir.

No que diz respeito à visualização, visto que os

testes seriam realizados com objetos virtuais em

aramado e objetos com cores que simulavam textura, o

treinamento com objetos coloridos foi dispensado, pois

dificultava a visualização dos objetos e a deformação

do órgão humano, como pode-se observar na Figura

13.

Figura 13. Aplicação com objetos coloridos

Desta forma, a visualização em wireframe foi

adotada. Outro ponto discutido foi com relação ao

objeto virtual que representa o órgão humano, no caso,

a mama virtual. De acordo com a opinião do

profissional consultado, a modelagem que contempla

somente o órgão humano dificulta a percepção espacial

do aprendiz. Por isso, um objeto virtual mais completo,

incluindo o tórax, apresentado na Figura 14, foi

modelado.

Figura 14. Tórax com ductos modelados

Page 235: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

234

Voltar ao sumário

Outro problema apontado foi com respeito à

utilização simultânea da mão virtual e o instrumento

médico, que resultava em dificuldades durante a

interação. A luva usada atualmente não possui sensor

de posição e, por isso, a mão virtual é um objeto

estático no AV, permitindo somente os movimentos de

rotação dos dedos virtuais. Desta forma, optou-se pelo

treinamento com os dispositivos de forma separada,

conforme as Figuras 15 e 16, retirando a mão virtual do

AV quando a luva de dados não estava sendo

empregada. Uma solução futura e mais adequada para

esta questão é a aquisição de luvas com sensor de

posição ou o acoplamento de um sensor de posição no

dispositivo usado atualmente.

Figura 15. Treinamento com a mão virtual

Figura 16. Treinamento com o instrumento

médico, sem a mão virtual

Pode-se observar pelas figuras ao longo do trabalho,

que testes foram realizados com e sem estereoscopia.

Após ter solucionado os primeiros problemas

identificados na avaliação preliminar, passou-se à

segunda etapa da avaliação, durante a qual estudantes

de Medicina testaram o protótipo. Novos problemas

foram identificados e soluções foram sugeridas, como:

visualização com texturas mais elaboradas para os

objetos virtuais; aperfeiçoamento da visualização,

principalmente na questão da percepção de

profundidade, o que pode ser realizado com óculos

estereoscópicos; utilização de objeto físico, uma mama

de borracha, por exemplo, a ser acoplada no

dispositivo háptico, com o intuito de melhorar a

percepção; problema do retorno de força contínuo após

a identificação de colisão e a ocorrência da rotação

incorreta do objeto virtual que representa o instrumento

médico, sendo que ambos acontecem casualmente;

métodos mais precisos de colisão e deformação, bem

como métodos mais precisos para o retorno háptico,

envolvendo tecidos diversos que compõem o órgão

humano, ângulos de inclinação do instrumento médico

virtual durante a inserção.

Para coletar as opiniões dos usuários, dois

questionários foram empregados: um antes e outro após

os testes com as aplicações. O primeiro apresentava

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 biópsia,

entendimento da tarefa a ser executada no AV (parte do

procedimento de biópsia), opinião sobre a utilização de

simuladores para treinamento médico.

O segundo apresentava questões sobre facilidade de

uso, nível de satisfação e dificuldade com dispositivos

convencionais e não convencionais, e com relação à

combinação de dispositivos, bem como a contribuição

do aspecto visual do AV no treinamento, além de

idéias e sugestões.

4. Resultados e Discussões

O módulo de interação foi construído, oferecendo

suporte a dispositivos convencionais (teclado e mouse

comum) e não convencionais (luva de dados e

dispositivo háptico), que podem ser utilizados em

aplicações separadamente ou em combinações.

A integração entre linguagens de programação foi

adotada para inclusão dos dispositivos não

convencionais no módulo de interação, sendo que a

interface de programação nativa JNI foi escolhida para

permitir essa implementação. A modelagem dos

objetos que representam a mão virtual apresentou uma

elevação no grau de realismo, mesmo com as

limitações da luva utilizada. O desempenho da aplicação, calculado de acordo

com o tempo de resposta e o número de quadros por

segundo, atingiu um nível satisfatório, visto que a

sensação de realismo foi propiciada, mesmo com a

integração de linguagens de programação e a utilização

de dispositivos não convencionais.

No que diz respeito aos estudantes e professores de

Medicina, estes forneceram contribuições importantes

para o aperfeiçoamento do framework e,

conseqüentemente, da aplicação, tais como: correlação

espacial entre realidade e AV, utilização de detector de

posição para a luva de dados, alterações na

visualização, refinamento do retorno de força.

No entanto, pôde-se observar e confirmar com

relatos dos próprios voluntários, que eles tiveram

Page 236: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

235

Voltar ao sumário

dificuldades na realização da tarefa no AV, resultando

em tempos elevados de execução, devido

principalmente à visualização, que tornava difícil a

percepção de profundidade, levando a uma

desorientação durante a interação.

5. Conclusões

Um simulador construído com técnicas de RV para

treinamento médico pode auxiliar profissionais da área,

contribuindo para a aquisição de conhecimento, o que

abrange diversos benefícios, como a diminuição de

riscos à saúde de pacientes. No entanto, conforme

mencionado, a construção de aplicações desta natureza

não é uma tarefa trivial, apresentando diversos

problemas, como os encontrados no desenvolvimento

do ViMeT, objetos de análise deste artigo.

Os problemas podem ser classificados como

solucionados, parcialmente solucionados e ainda não

resolvidos. Os solucionados envolvem a diversidade de

linguagens de programação (Java e C++), resolvido

com a implementação da integração citada, que poderia

ser construída com a utilização de um middleware,

contribuindo para a portabilidade da aplicação; a

estruturação e a modelagem da mão virtual para

resolver o problema da limitação da luva de dados,

permitindo alcançar um realismo mais elevado e a

construção mais elaborada de um modelo que

represente o órgão humano.

Dentre os parcialmente resolvidos, pode-se citar: o

aumento da facilidade de uso da aplicação, realizando

o procedimento de biópsia em fases separadas,

utilizando um dispositivo de cada vez, sendo que o

ideal seria a adoção de um detector de posição para

identificar os movimentos de translação da luva de

dados e permitir a execução da tarefa com a mão

virtual e o instrumento médico simultaneamente; o

refinamento da correlação espacial, que gerou uma

ligeira melhora para o treinamento.

E, finalmente, os problemas não solucionados até o

momento, sendo que alguns foram levantados pelo

professor e pelos estudantes, a citar: visualização dos

objetos virtuais e percepção espacial, utilizando

texturas próximas da realidade e pontos de vista

diferentes do AV; percepção espacial com o emprego

de objeto físico, confeccionado com material de

borracha, por exemplo, a ser acoplado no dispositivo

háptico; retorno de força contínuo após a detecção de

colisão e a rotação incorreta do objeto virtual que

representa o instrumento médico, sendo que ambos

problemas acontecem casualmente; métodos mais

precisos de colisão e deformação, bem como métodos

mais completos para o retorno háptico, englobando

tecidos diversos que constituem o órgão humano

(camadas da pele), ângulos de inclinação do

instrumento médico virtual durante a inserção e

extração.

O estudo dos problemas e soluções adotadas é uma

questão importante para o aperfeiçoamento das

aplicações. Além de fornecer subsídios para que as

mesmas tornem-se mais realistas, pode contribuir para

a diminuição de esforços na resolução de questões já

solucionadas.

6. 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 et al. “Virtual Reality Framework

for Medical Training: Implementation of a deformation class

using Java”, Proc. of ACM SIGGRAPH International

Conference on Virtual-Reality Continuum and its

Applications in Industry, Hong Kong, 2006, pp. 347-351.

[3] C. G. Corrêa et al., “Implementação de Interação em

Sistemas Virtuais para Simulação de Exames de Biópsia”,

WIM – Workshop de Informática Médica, Belém, PA, Brasil,

CD-ROM, 2008.

[4] F. L. S. Nunes et al., “Aplicações Médicas Usando

Realidade Virtual e Realidade Aumentada”, KIRNER, C.,

SISCOUTTO, R., Realidade Virtual e Aumentada –

Conceitos, Projeto e Aplicações, Livro do 9º SVR

Symposium on Virtual and Augumented Reality, Petrópolis,

RJ, Brasil, 2007, pp.234-235.

[5] J. Bosch, M. Mattsson, “Framework problems and

Experiences”, FAYAD, M. J., JOHNSON, R., SCHMIDT,

D., Building Application Frameworks: Object-Oriented

Foundations of Framework Design, New York: John Wiley

and Sons, 1999, p. 55-82.

[6] J. M. Burns et al. “The Virtual Haptic Back for

Palpatory”, Proc. 6th International Conference on

Multimodal. Interraction, State College, PA, USA, 2004, p.

191-197.

[7] L. S. Machado et al., “SITEG – Sistema Interativo de

Treinamento em Exame Ginecológico”, Proc. 8th SVR

Symposium on Virtual. and Augumented Reality, Belém, PA,

Brasil, CD-ROM, 2006.

[8]SensAble Technologies, Disponível em:

http://www.sensable.com, acessado em 06/03/2007.

[9] Sun, “Java Native Interface Specification”, Disponível

em:

http://java.sun.com/j2se/1.4.2/docs/guide/jni/spec/jniTOC.ht

ml, acessado em 15/03/2007.

Page 237: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

236

Voltar ao sumário

Um�protótipo�de�ambiente�virtual�para�simular�objetos�2D�e�3D�referentes�a�imagens�mamográficas�

Michele�Sayuri�Noda1,�Fátima�L.�S.�Nunes2,�Adriano�Bezerra1�

[email protected],�[email protected],�[email protected],�1�UNIVEM�–�Centro�Universitário�Eurípides�de�Marília�–�Marília�(SP)�

2�Escola�de�Artes,�Ciências�e�Humanidades/Universidade�São�Paulo�–�EACH/USP�–�São�Paulo�(SP)�

�Abstract��� Computer-Aided� Diagnosis� (CAD)� systems� are� being�

developed� aiming� at� helping� the� early� detection� of� breast�

cancer�using�mammographic� images.�The�medical� training�

simulation�tools�can�help�medicine’s�students�and�doctors�to�

improve� their�knowledge,�mainly� in�relation� to�procedures’�

execution.� Nevertheless,� it� is� difficult� to� test� these� systems�

because�of� the� lack�of� real� cases� for�both� two-dimensional�

(2D)�and�three-dimensional�(3D)�images.�To�minimize�these�

limitations,� this� project� proposes� the� development� of� a�

Virtual� Environment� for� simulating� real� cases�

(mammographic� images)� from� information�provided�by� the�

user.�

Keywords�

CAD,� Mammography,� Medical� Training,� Simulation�

of�Mammography�Images,�Virtual�Reality.�

Resumo��

� Os�sistemas�de�Computer-Aided�Diagnosis�(CAD),�ou� simplesmente� Diagnóstico� Auxiliado� por�Computador,� vêm� sendo� desenvolvidos� com� a�finalidade� de� auxiliar� na� detecção� precoce� do� câncer�de� mama,� usando� imagens� mamográficas� como� a�principal�fonte�de�dados.�As�ferramentas�de�simulação�de� treinamento� médico� podem� auxiliar� estudantes� de�Medicina� e� médicos� a� aprimorarem� os� seus�conhecimentos,� principalmente� em� relação� a�habilidades�na� execução�de�procedimentos.�Porém�há�dificuldade�em�testar�esses�tipos�de�sistemas�devido�à�falta� de� casos� reais� tanto� em� relação� a� imagens�bidimensionais�quanto�a�objetos� tridimensionais.�Para�minimizar� essas� limitações,� este� artigo� propõe� o�desenvolvimento� de� um� sistema� para� simular� casos� a�partir�de�informações�fornecidas�pelo�usuário.���Palavras-Chave��CAD,� Mamografia,� Treinamento� Médico,� Simulação�de�Imagens�Mamográficas,�Realidade�Virtual.�

1.�Introdução��� O�câncer�de�mama�é�uma�das�principais�causas�de�morte� entre� as� mulheres� no� mundo� inteiro.� É� o�segundo� tipo� de� câncer�mais� incidente�no�mundo� e�o�mais�comum�entre�as�mulheres�[1].��� Quando� esse� câncer� é� detectado� precocemente,� as�chances� de� sobrevivência� do� paciente� aumentam.� As�formas� mais� eficazes� de� detectá-lo� são� os� exames�clínicos�da�mama�e�a�mamografia.�A�mamografia�é�o�método�mais� utilizado� e�principalmente� recomendado�para�mulheres�com�idade�acima�de�35�anos�[1].�� A� mamografia� é� uma� radiografia� que� permite�detectar� precocemente� as� lesões� da� mama� [1].� Neste�exame,� são� mostradas� duas� imagens� da� mama:� a�Crânio� Caudal� (CC)� e� a� Médio� Lateral� Oblíqua�(MLO),� utilizadas� pelo� radiologista� para� compor� o�diagnóstico.�Porém,�algumas�interpretações�podem�ser�equivocadas�não�condizendo�com�o�real�[2].��� A�fim�de�auxiliar�na�detecção�precoce�do�câncer�de�mama,� muitos� grupos� de� pesquisa� desenvolvem�sistemas� CAD,� que� fornecem� aos� radiologistas� uma�segunda� opinião� na� interpretação� das� imagens�mamográficas,� permitindo� construir� um� diagnóstico�com�maior�precisão�e�consistência�[2].��� Quando� é� identificado� um� sinal� ou� lesão� são�necessários�exames�complementares�para�decidir�qual�tratamento� é� o� mais� indicado.� Um� deles� é� a� biópsia,�indicada� quando� há� necessidade� de� confirmar� uma�suspeita� de� anomalia.� Consiste� em� retirar� pequenos�pedaços� da� lesão� suspeita� por� meio� de� equipamentos�próprios� e� encaminhá-los� para� análise� em� laboratório�[3].� Nesse� caso,� há� a� possibilidade� de� se� utilizar�ferramentas�de�Realidade�Virtual�(RV)�para�auxiliar�os�profissionais� da� área� na� aquisição� de� habilidades� em�relação�aos�procedimentos�necessários�para�tal�exame.��� A� dificuldade� em� obter� casos� reais� para� teste�constitui� um�desafio�no�desenvolvimento�desses� tipos�de� sistema� (CAD�e�RV).�Este� trabalho�apresenta�uma�proposta� para� minimizar� essa� questão,� constituindo� a�

Page 238: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

237

Voltar ao sumário

implementação� de� um� Ambiente� Virtual� (AV)� que�simule� esses� casos,� gerando�objetos�2D�e�3D�a�partir�de�informações�fornecidos�pelo�usuário.�Por�isso,�este�trabalho� se� justifica� principalmente� pela� contribuição�no� sentido� de� gerar� estudos� de� caso� simulados�(imagens� 2D� e� objetos� 3D)� para� serem�utilizados� em�sistemas� de� CAD� e� treinamento� médico,� utilizando�tecnologia� de� baixo� custo� e� possibilitando� ao�usuário�treinar�situações�reais�e�diversas.�� Para�isso,�o�artigo�está�dividido�da�seguinte�forma:�a�seção�2�expõe�conceitos�sobre�sistema�de�diagnóstico�auxiliado� por� computador� e� treinamento� virtual;� a�seção�3�relata�os�principais�trabalhos�existentes�na�área�de� simulação� de� imagens� médicas� e� descreve� as�informações� necessárias� para� simulá-las;� a� seção� 4�apresenta� o� protótipo�desenvolvido� até� o�momento;� a�seção�5� apresenta� resultados�obtidos�com�as� soluções�adotadas� e,� finalmente,� a� seção� 6� disponibiliza� as�conclusões�e�os�trabalhos�futuros.��

2.�CAD�e�Treinamento�Virtual��� Como�mencionado,�a�mamografia�é�a�técnica�mais�utilizada�para�a�detecção�precoce�do�câncer�de�mama.�� No�exame�mamográfico�geralmente�são�adquiridas�duas�imagens:�a�CC,�proveniente�da�visão�superior�e�a�MLO,� que� seria� a� visão� de� perfil,� representadas� na�Figura�1�(a)�e�Figura�1�(b),�respectivamente�[1].���

�Figura�1.�Representação�das�imagens�mamográficas.�(a)�

Imagem�CC.�(b)�Imagem�MLO�[4].�� �

�� Caso� o� radiologista� não� consiga� determinar� o�diagnóstico,� tenha�dúvida�de�alguma�região�ou� julgue�necessário,� pode� solicitar� uma� biópsia.� No� entanto,�muitas� vezes� as� mulheres� são� submetidas� a� biópsias�desnecessárias,�solicitadas�somente�para�que�o�médico�tenha�uma�maior�segurança�no�diagnóstico�[5].�� Como�forma�de�diminuir�as�biópsias�desnecessárias�e� auxiliar� na� detecção� precoce� do� câncer� de� mama,�atualmente� existem�várias� pesquisas� para�desenvolver�sistemas�CADs.�Conforme�definido�em�[2],�o�sistema�CAD�produz�resultados�a�partir�de�imagens�médicas�de�análises� computadorizadas.� Fornece� como� saída� uma�

segunda� opinião� para� auxiliar� radiologistas� na�interpretação� das� imagens� médicas,� melhorando� a�precisão�e�a�consistência�dos�diagnósticos.�� Porém,�esses� sistemas�ainda� são�poucos�utilizados�para�auxiliar�profissionais�da�Medicina�nas�decisões�a�respeito� de� diagnóstico.� Isso� se� deve� ao� fato� de� que�precisam� indicar� decisões� a� respeito�do�diagnóstico� e�do� tipo� de� tratamento� ao� qual� o� paciente� deve� ser�submetido�e,�por�isso,�alguns�erros�são�intoleráveis�[6].���� Existem� ainda� alguns� problemas� em� relação� aos�sistemas�CADs�que�devem�ser�observados.�Um�deles�é�a�questão�ética:�na�maioria�dos�casos,�os�mamogramas�de� pacientes� servem� de� base� para� o� teste� desses�sistemas�[5].�Por�isso,�é�necessário�que�haja�bom�senso�entre� os� pesquisadores� e� desenvolvedores� dessa� área,�para�que� todas�as�informações�de�identificação�nessas�imagens�sejam�removidas�para�preservar�a�privacidade�do�paciente.�� Outro�problema�é�o�teste�desses�sistemas.�Existem�vários�bancos�de�imagens,�porém�muitos�não�possuem�os� seus� respectivos� laudos� e,� além� disso,� o�desempenho� do� sistema� CAD� pode� variar� em� função�do� conjunto� dessas� imagens,� o� que� dificulta� a�avaliação�dos�resultados�desses�sistemas�[5].��� O�diagnóstico�de�suspeita�de�anomalias,�em�geral�é�confirmado� por�meio� de� exames� anatomopatológicos,�cujo�material�analisado�é�retirado�por�meio�de�exames�de� biópsias.� Também� nesta� questão� a� computação�pode� ser� útil,� por� meio� de� ferramentas� de� RV.� As� características� da� RV� como� visualização,�navegação�e�interação�em�tempo�real�em�um�ambiente�sintético�3D�gerado�por�computador�[7],�são�propícias�para� a� construção� de� ferramentas� de� simulação� e�treinamento.� Por� meio� da� combinação� de� imagens�tridimensionais� (3D),� exploração� do� ambiente� e�informações�táteis,�é�possível�oferecer�um�treinamento�realista,� melhorando� a� qualidade� no� atendimento� ao�paciente�[8].��� Conforme� enfatizado� em� [8]� e� [9],� uma� das�vantagens� de� utilizar� simuladores� médicos� é� a�possibilidade�de� fazer� um� treinamento� sem�risco�para�estudantes,� médicos� e� pacientes.� Com� esse� tipo� de�simulador,� o� médico� pode� praticar� e� aprender� novas�técnicas,� estudar� a� anatomia� humana�tridimensionalmente,� e� treinar� procedimentos�cirúrgicos�complexos�em�corpos�humanos�virtuais.�� Porém,� para� [8],� um� dos� maiores� desafios� é�fornecer�exatamente�aquilo�que�o�médico�vê�e�sente�de�forma� realista,� além� de� reproduzir� em� tempo� real� os�movimentos� e� alterações.�Além�disso,� os� simuladores�médicos� de� RV� devem� ser� sistemas� que� propiciem�realismo� e� ambientes� imersivos,� fornecendo� respostas�ao� usuário� em� tempo� real.� Para� isso� são� necessários�

Page 239: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

238

Voltar ao sumário

dispositivos� de� interação� e� visualização,� além� de� um�alto�poder�de�processamento�[9].�� �

3.�Simulação�de�imagens�médicas��Como� citado� na� seção� anterior,� um� dos� desafios�

para� o� desenvolvimento� dos� sistemas�CAD� e�RV� é� a�avaliação,�tanto�do�sistema�quanto�do�usuário,�devida,�principalmente,� à� dificuldade� de� se� obter� casos� reais�para� teste.� Além� de� exigir� bases� de� imagens� com�variedade� de� casos� de� interesse,� é� necessária� a�disponibilização� de� laudos� detalhados,� que�dificilmente�são�acessíveis.�

Para�minimizar�essas�limitações,�há�a�possibilidade�de� simular� imagens� médicas� de� acordo� com�parâmetros�pré-definidos.�Essa�simulação�pode,�ainda,�auxiliar� o� treinamento� médico� de� estudantes� de�Medicina,�pois�há�a�possibilidade�de�se�gerar�casos�de�acordo�com�a�necessidade�do�treinamento.�

Quando� se� trata� de� gerar� objetos� 3D,� que�representam� órgãos� humanos,� para� utilização� em�treinamento�médico,�há�basicamente�duas�abordagens:�uso�de� imagens� reais�adquiridas�por�equipamentos�de�modalidades� diversas� (Raio-X,� RM,� Ultra-som,� entre�outras)� ou� o� uso� de� imagens� simuladas.� As� imagens�reais,� obviamente,�produzem�detalhes�desejáveis,�mas�podem� apresentar� limitações� operacionais� como�obtenção� de� laudos� corretos� e� variedade� pequena� de�casos.� O� uso� de� imagens� simuladas� pode� ser� uma�alternativa�para�superar�essas�limitações,�embora�possa�proporcionar�alguma�perda�de�realismo.�

3.1�Trabalhos�Correlatos��Os� trabalhos� apresentados� a� seguir� têm� como�

enfoque� principal� a� simulação� de� imagens�mamográficas.�

Bakic� et� al.� [10]� desenvolveram�um� software� para�simular� um� phantom� de� mama� com� propriedades�físicas� da� anatomia� inerente� a� este� órgão.� Nesse�sistema� foi� desenvolvida� a� simulação� de� imagens�mamográficas,� sendo� que� os� mamogramas� sintéticos�gerados�eram�divididos�em�dois�grupos:�o�primeiro�era�composto�de�mamas�com� tecido�adiposo�e�o� segundo�era�composto�de�mamas�com�tecidos�fibroglandulares.�A�proposta�principal�foi�melhorar�o�entendimento�dos�mamogramas� em� relação� aos� efeitos� do�posicionamento� e� da� compressão� da� mama,� além� de�contribuir�na� inclusão�de�características�das�estruturas�da�mama�de�forma�realística.��

Outra� pesquisa� utilizando� também� a� metodologia�para�simulação�de�phantons�de�mama�com�modelagem�computacional�3D�foi�apresentada�em�[11].�A�partir�de�

combinações� de� primitivas� geométricas� e� matrizes,� o�modelo�da�mama�foi�composto�por�uma�modelagem�da�mama,� dos� ductos� e� unidades� ducto-lobulares� e� uma�textura� de� fundo.� Foram� simuladas� mamas� de�diferentes�tamanhos,�formas�e�composição.�

�Silva� et� al.� [12]� implementaram� um� sistema� que�

simula� os� mamogramas� de� acordo� os� padrões� de�

densidades� do� ACR� (American� College� of� Radioloy)�

BI-RADS™� (Breast� Imaging� Reporting� and� Data�

System).� O� objetivo� é� simular� as� imagens�bidimensionais�(2D)�a�partir�de�parâmetros�para�obter�imagens� de� várias� densidades.� � A� simulação� das�mamas� e� as� suas� estruturas� são� feitas� baseadas� nas�curvas� de�Bézier� e� seu� controle� é� feito� com� técnicas�NURBS� (Non� Uniform� Rational� B-Splines).� Para� se�obter� as� mamas� simuladas,� os� autores� controlaram�alguns�parâmetros,�distribuindo�as�estruturas�simuladas�como� lóbulos,� ductos� dentro� do� volume� mamário� e�variando�a�proporção�entre�elas.���

3.2�Simulação�de�Imagens�Mamográficas��

Para�simular�as�imagens�mamográficas�é�necessário�conhecer�os�parâmetros�que�o�usuário�deve�fornecer.�A�princípio,� as� informações� relevantes� são�a� respeito�da�estrutura� mamária,� dos� achados� (sinais� de� possíveis�anomalias)�e�do�aparelho�mamográfico.�

A� mama� é� uma� glândula� modificada� da� pele.�Desenvolve-se�na�parede�torácica,�entre�a�clavícula�e�a�sexta�oitava� costela.�O� tecido�da�mama�estende-se�ao�redor� da�margem� lateral� do�músculo� peitoral�maior� e�pode�ser�encontrado�até�as�porções�superiores�da�axila�[13].�

Na� Tabela� 1� são� apresentadas� as� estruturas� que�compõem�a�mama,�sendo�que�o�tamanho,�a�quantidade�e� a� distribuição� varia� conforme� a� idade� da� mulher,� a�quantidade�de�hormônios�e�o�tamanho�da�mama.�

�Tabela�1.�Estruturas�da�mama�

�Em� relação� ao� tecido� mamário,� na� maioria� das�

mulheres�o�tecido�conjuntivo�é�substituído�pelo�tecido�adiposo�com�o�aumento�da�idade.�A�quantidade�desses�dois� tipos� tecidos� é� que� classifica� a� densidade� da�mama� de� uma� mulher.� Essa� classificação� foi�desenvolvida� pelo� ACR� BI-RADS.� Conforme� [1]� e�[13],�a�classificação�da�densidade�é�a�seguinte:��� densidade� 4� -� mamas� densas,� nenhum� tipo� de�

substituição� adiposa,� ou� seja,� o� tecido� conjuntivo�

Estrutura�mamária� -��porcentagem�de�tecido�conjuntivo;�-�porcentagem�de�tecido�adiposo;�-�quantidade�de�ductos;�-�quantidade�de�vasos;�-�tamanho�da�mama.�

Page 240: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

239

Voltar ao sumário

ocupa�toda�a�mama�no�cone�parenquimal�que�tem�a�forma�de�um�triângulo�o�qual�o�vértice�é�ligado�ao�mamilo;��

� densidade�3�-��mamas�predominantemente�densas,�a�substituição� adiposa� é�menor�do�que�50%�da�área�da�mama;��

� densidade�2�-�mamas�predominantemente�adiposas,�a�substituição�é�maior�que�50%�da�área�da�mama;��

� densidade� 1� -� mamas� adiposas,� � a� substituição�adiposa�é�total.�

��Os� achados� (sinais� de� possíveis� anomalias),� ou� as�

lesões�identificadas�nas�mamografias,�são�as�principais�características� que� podem� auxiliar� na� detecção� do�câncer� de� mama.� Os� tipos� de� lesões� e� suas�características�estão�descritas�na�Tabela�2.�

�Tabela�2.�Características�das�lesões�

Nódulos� -�quantidade�de�nódulos��variada;�-�formato��esférico�ou�oval;�-�tamanho��variado;�-�contorno��regular,�lobulado,�irregular�e�espiculado;��-�limites;�-�densidade��densa,�isodensa,�baixa�densidade,�densidade�de�gordura�e�densidade�heterogênea.�

Microcalcificações� -�tamanho��igual�ou�menor�que�0,5�mm�;��-�número��variado;�-�formato��arredondada,�puntiforme,�irregular,�linear,�vermicular�e�ramificada;�-�densidade;�-�distribuição��difusas,�agrupadas,�ocupando�segmento�da�mama,�ocupando�um�quadrante�da�mama�e�disposta�no�trajeto�ductal.�

Descarga� Capilar�(Secreções�Mamárias)�

-�verificar�se�a�secreção�é�espontânea;�-�secreção�de�um�ou�de�múltiplos�ductos;�-�aspecto�da�secreção.�

�Em�relação�aos�mamógrafos,�estes�são�aparelhos�de�

raios-X� específicos� para� a� execução� da� mamografia.�Atualmente� os� mamógrafos� utilizados� possuem� alta�resolução,� o� que� proporciona� a� detecção� de� um�número� cada� vez� maior� de� lesões� mamárias,�principalmente�de� lesões�pequenas,�aquelas�que�ainda�não�são�palpáveis�[1].�

A�mamografia�requer�que�todos�os�componentes�da�seqüência�de�imagens�(dispositivo�de�raios-X,�tubo�de�raios-X,� seu� cátodo� e� ânodo,� ponto� focal,� janela,�filtragem,� colimação,� distância� fonte-imagem� e� o�controle� automático� de� exposição)� representados� na�Figura�2,�sejam�definidos�ou�calibrados�corretamente,�pois�cada�componente�influencia�a�imagem�resultante.�A� imagem� é� formada� pelo� detector� e� são� as� suas�exigências�que�ditam�os�parâmetros�da�imagem�[13].��

�Figura�2.�Os�componentes�da�seqüência�da�imagem�[5].�

��Na� Tabela� 3,� são� apresentadas� as� informações�

necessárias�do�mamógrafo�para� se�obter�uma� imagem�mamográfica.��

��

Tabela�3.�Informações�do�mamógrafo�

Aparelho�Mamográfico�

-�tamanho�do�ponto�focal;�-�distância�do�ponto�focal��em�relação�ao�objeto;�-�compressão�da�mama��entre�13�e�15�kgf;�-�quilovoltagem;�-�miliamperagem.�

��Em� relação� à� nitidez� radiográfica,� esta� é� dividida�

em� contraste� e� borramento� (falta� de� nitidez).� O�contraste� é� a� diferença� na� atenuação� dos� raios-X� dos�vários� tecidos� da� mama,� determinada� pela� sua�espessura,� densidade� e� composição� anatômica.� O�borramento� pode� ser� reduzido� com� a� compressão� da�mama,�a�sua�imobilização�na�exposição,o�tamanho�do�ponto�focal,�a�distância�da�fonte-imagem�e�a�distância�do�objeto�ao�detector�[13]��

Na� realização� da� mamografia,� a� visibilidade� das�lesões� está� relacionada� não� só� à� resolução� espacial�como� também�ao�contraste�das� lesões�em�relação�aos�tecidos� vizinhos� e� na� nitidez� das� estruturas�transformadas� em� imagens.� � Essa� resolução� é�determinada� pelo� tamanho� do� ponto� focal,� por� sua�distância� da� estrutura� de� dentro� da� mama� a� ser�reproduzida,� pela� distância� até� o� detector� e� pela�capacidade� do� detector� em� reproduzir� essa� imagem.�Quanto� mais� próximo� o� ponto� focal� está� do� objeto,�melhor�a�resolução�espacial�possível�do�sistema�[13].��

Além� disso,� deve-se� utilizar� uma� compressão�eficiente,�isto�é,�a�menor�espessura�da�mama�possível.�

Page 241: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

240

Voltar ao sumário

Essa� compressão� deve� ser� entre� 13� e� 15� KGF�(Kilograma/Força)� ou� até� a� mama� ficar� com� uma�pequena� espessura.� Além� disso,� a� tensão� da�mamografia� deve� utilizar� um�baixo�quilovolt� (kVp)� e�alto�miliampere�(mAs)�para�gerar�alto�contraste�[13].��

Por� isso� a� visualização� da� mamografia� e� seu�diagnóstico�vão�depender�da�distância�do�ponto�focal,�da�compressão�da�mama�e�da�quantidade�de�contraste�utilizado�no�momento�do�exame.��

4.�Metodologia��

� O� presente� artigo� tem� como� objetivo� apresentar�uma� proposta� para� implementação� de� um� AV� que�simule� objetos� 2D� e� 3D� a� partir� de� informações�fornecidas�pelo�usuário.�A�Figura�3�ilustra�o�diagrama�do�sistema�em�construção�com�todos�os�seus�módulos,�sendo�que�os�quadrantes�cinzas�referem-se�ao�presente�projeto.��

�Figura�3.�Diagrama�do�sistema.�

�� Para� o� funcionamento� dessa� simulação� são�realizadas� as� seguintes� etapas:� (1)� o� usuário� fornece�parâmetros� da� estrutura� da� mama� e� do� nódulo;� (2)� a�partir�dessas�informações,�ocorre�a�simulação�da�mama�3D�permitindo�ao�usuário�interagir�com�o�sistema�por�meio� de� técnicas� de� RV;� (3)� o� modelo� 3D� gerado� é�armazenado�em�um�Banco�de�Dados�(BD)�de�modelos�3D;� (4)� é� realizada� a� simulação� de� compressão� da�mama,� baseada� nas� informações� da� compressão� da�mama�em�um�aparelho�mamográfico;�(5)�o�modelo�3D�após�o�cálculo�de�compressão�será�utilizado�no�módulo�de� simulação� de� imagens� 2D.� As� imagens� geradas�serão�armazenadas�em�um�outro�BD.�� Para� o� desenvolvimento� do� projeto� está� sendo�utilizada�a�tecnologia�Java�[14],�pois�é�uma�tecnologia�gratuita,� possibilitando� desenvolver� projetos� de�baixo�custo.�Além�de�utilizar�as�características�de�orientação�a� objeto,� possui� as� APIs� (Application� Programming�

Interfaces)� que� reduzem� o� tempo� e� o� custo� de�desenvolvimento�do�programador.�� Para�a�implementação�deste�projeto�e�a�integração�com� outros� trabalhos� estão� sendo� utilizadas� as� APIs�JAI�[15],�específica�para�o�processamento�de�imagens�bidimensionais� e� � JAVA� 3D� [16]� para� criação� e�manipulação�de�AV.��

5.�Resultados�preliminares��� A� partir� do� que� foi� apresentado� do� protótipo� de�simulação,� as� etapas� desenvolvidas� até� o� momento�foram:�� definição�dos�parâmetros�da�estrutura�da�mama;��� desenvolvimento� da� simulação� da� estrutura�

tridimensional�da�mama;��� Para� o� desenvolvimento� foi� utilizada� uma� mama�modelada� em� um� aplicativo� para� modelagem�tridimensional�e�exportada�com�extensão�.OBJ�para�ser�utilizada�na� linguagem�Java.�A�mama�modelada�pode�ser�visualizada�na�Figura�4�(a)�com�textura�e�na�Figura�4�(b)�em�aramado.���

�(a)� � � (b)�

Figura�4.�Modelo�3D�da�mama.�(a)�Com�textura.�(b)�Mama�aramada�

��� O� usuário� tem� como� objeto� inicial� o� modelo� 3D�apresentado.� Nesse� modelo� poderão� ser� feitas� as�modificações,� conforme� os� parâmetros� que� o� usuário�fornecer.�� O� usuário� pode� fornecer� os� seguintes� parâmetros:�porcentagem�que�irá�aumentar�ou�diminuir�a�altura�e�a�largura� da� mama.� A� partir� dessas� informações,� o�modelo�3D�fornecido�será�modificado.�Na�Figura�5�foi�realizada�a�simulação�de�aumento�na�largura�da�mama�e� na� Figura� 6� foi� realizada� o� mesmo� aumento� na�largura�e�na�altura�da�mama.�

Page 242: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

241

Voltar ao sumário

�Figura�5.��Resultado�da�mama�após�a�simulação�de�

aumento�na�sua�largura��

� �

�Figura�6.�Resultado�após�a�simulação�de�aumento�da�sua�

largura�e�da�sua�altura.�

� �� Esse�tipo�de�simulação�desloca�com�o�mesmo�valor�todos� os� vértices� em� relação� a� um� eixo.� Assim,� não�não�há�a�possibilidade�de�modificar�uma�determinada�área�da�mama.��� A� solução� encontrada� foi� de� complementar� a�simulação� anterior,� fornecendo� ao� usuário� a�possibilidade�de�alterar�algumas�áreas�pré-definidas�da�mama.�As�áreas�pré-definidas�são:�lado�esquerdo,�lado�direito,� lado� superior� e� o� lado� inferior� da� mama,�apresentado�na�Figura�7.����

�Figura�7.��Áreas�da�mama�que�podem�ser�alteradas�

�� Em�cada�uma�dessas�áreas�foram�definidos�pontos�de� controle� e� os� vértices� vizinhos� que� sofrerão� as�modificações.� O� usuário� escolhe� qual� área� deseja�modificar� e� serão� fornecidas� algumas� opções� de�escolha�em�relação�à�área�escolhida.�Por�exemplo,�se�o�usuário�escolher�o�lado�superior�para�modificar,�serão�habilitadas� as� opções� de� levantar/abaixar� a� área� e�valores�pré-definidos.�Para�essas�opções�o�resultado�é�apresentado�na�Figura�8.���

�Figura�8.�Resultado�após�alterar�a�parte�superior�da�

mama.�

� ��� Após�a�simulação,�o�usuário�pode�gravar�o�modelo�3D�em�um�BD�ou�descartar�o�modelo�e�começar�uma�nova�simulação.�� Após� a� implementação� desta� fase� foi� encontrado�um� problema� em� relação� ao� tamanho� da� mama.� Pois�caso�o�usuário�deseje�simular�uma�mama�muito�grande�ou� uma� mama� muito� pequena,� em� relação� a� mama�disponibilizada,� a� mama� gerada� poderá� ficar�deformada.�Para� isso,� foi�definida�a�utilização�de� três�modelos� de� mamas:� uma� pequena,� uma�média� e� uma�grande.�Com� isso,� o� usuário�poderá� escolher� a�mama�de�acordo�com� tamanho�desejado�e�então�assim�fazer�as�modificações�necessárias.�� Alem� disso,� estuda-se� uma� terceira� forma� de�modificar� a� mama.� Essa� terceira� solução� seria� do�usuário�modificar�a�mama�manipulando-a�diretamente�no�AV,�com�o�auxílio�do�mouse.�Com�isso,�o�usuário�terá� uma� maior� liberdade� de� escolher� exatamente� o�local�que�deseja�modificar,�aumentando�ou�diminuindo�a�mama.�� Após�a�simulação�da�mama�3D,�o�modelo�gerado�é�armazenado�em�um�BD�de�modelos�3D�com�o�formato�.OBJ� para� ser� utilizado� posteriormente� nos� outros�módulos.�� ��

Page 243: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

242

Voltar ao sumário

6.�Conclusões�e�Trabalhos�Futuros��� O� objetivo� deste� trabalho� é� contribuir� com� a�elaboração� de� casos� de� estudo� simulados� de� acordo�com� as� necessidades� médicas.� Ao� final,� pretende-se�utilizar� as� imagens� 2D� em� sistemas� de� auxílio� ao�diagnóstico� e� os� objetos� 3D� em� sistemas� de�treinamento� médico.� Além� disso,� pretende-se�contribuir� com�o�protótipo�de�uma� ferramenta�de�RV�para� a� simulação� no� exame� de� punção� de� mama,�permitindo� que� estudantes� de� Medicina� e� médicos� o�utilizem� como� forma� de� treinamento� e� simulação�médica.�� Para� a� comunidade� da� Computação� espera-se�contribuir� com� um� sistema� que� gere� casos� reais�padronizados� de� imagens� mamográficas� a� fim� de�serem�utilizados�em�casos�de�testes�em�sistemas�CADs�que�estão�em�desenvolvimento.�� Em�relação�aos�nódulos�e�estruturas�internas,�serão�utilizados�os�mesmos�procedimentos�da�mama.��� Depois� de� finalizada� a� etapa� de� simulação� de�objetos� 3D,� será� feita� a� simulação� da� compressão� da�mama� 3D� e� a� simulação� da� imagem� 2D,� baseada� no�modelo� 3D� simulado.�Serão� simulados�o� contorno�da�mama,� as� estruturas� internas,� os� achados� e� o� tecido�mamário�que�formam�as�imagens�CC�e�MLO.�� �

7.�Agradecimentos��� Os� autores� agradecem� ao� CNPq,� entidade�governamental� brasileira� promotora� do�desenvolvimento� científico� e� tecnológico,� pelo� apoio�financeiro.� À� CAPES� (Coordenação� de�Aperfeiçoamento� de� Pessoal� de�Nível�Superior),� pelo�apoio�financeiro.��

8.�Referências��[1]� INCA.� Instituto� Nacional� do� Câncer.� 2007.� Disponível�

em:�<www.inca.org.br>.��[2]� DOI,� K.� Current� Status� and� Future� Potential� of�

Computer-Aided� Diagnosis� in� Medical� Imaging.� In:�The� British� Journal� of� Radiology,� 78,� S3-S19.� DOI:�10.1259/bjr/82933343,�2005.�

��[3]�UNIFESP�-�Universidade�Federal�de�São�Paulo,�2007.�

Disponível�em:�www.virtual.epm.br/pacientes/camama/diagnostico.�Acessado�em�maio�2007.�

�[4]� DELFINO,� S.� R.� Geração� de� Estudos� de� Caso� para�

Treinamento� Médico� Virtual� a� partir� de� Técnicas� de�Processamento� de� Imagens� e� Realidade� Virtual.�Dissertação� (Mestrado)� –� Centro� Universitário�

Eurípides� de�Marília� –�UNIVEM,�Marília� –�SP,�Abril�2007.��

�[5]�NUNES,�F.�L.�S.;�SCHIABEL,�H.�Projeto�de�Pesquisa�-�

Construção� e� Disponibilização� de� uma� Base� de�Imagens� Mamográficas� via� Internet:� Ferramenta� para�Suporte� a� Esquemas� de� Diagnóstico� Auxiliado� por�Computador� e� Auxílio� ao� Ensino.� Departamento� de�Engenharia�Elétrica�–�USP,�São�Carlos�–�SP,�2002.�

�[6]� NUNES,� F.� L.� S.� Mini-Curso� de� Processamento� de�

Imagens� Médicas� para� Sistemas� de� Auxílio� ao�Diagnóstico.� Em:� II� Escola� Regional� de� Informática�SP/Oeste� –� ERI.� ISBN� 85-87937-05-7,� p.� 83-137,�2006.�

��[7]� BURDEA,� G.� C.� Virtual� Reality� Technology.�

Disponível� em:� www.vrtechnology.org.� Acessado� em�maio,�2007.�

��[8]� MACHADO,� L.� S.� A,� ZUFFO,� M.� K.�

Desenvolvimento� e� Avaliação� de� um� Simulador� de�Procedimentos� Médicos� Invasivos� Baseado� em�Realidade�Virtual� para�Treinamento�de�Transplante�de�Medula� Óssea� In:� V� Symposium� on� Virtual� Reality,�2002,� Fortaleza.� Proceedings� of� SVR� 2002.� ,� 2002.�p.416�–�418.��

�[9]� �L.�S.�Machado�et� al.,� “SITEG�–�Sistema� Interativo�de�

Treinamento� em� Exame� Ginecológico”,�Proc.� 8th� SVR�

Symposium� on� Virtual.� and� Augumented� Reality,�Belém,�PA,�Brasil,�CD-ROM,�2006.�

�[10]� BAKIC,� P.;� ALBERT,� M,;� BRZAKOVIC,� D.;�

MAIDMENT,� A.� D.� A.� Generation� and�Evaluation� of�Physically� Inspired� Synthetic� Mammograms.� In:�Engineering� in� Medicine� and� Biology� Society,� 2000.�Proceedings� of� the� 22nd� Annual� International�Conference� of� the� IEEE.� Chicago� –IL,� USA,� v.� 2,� p.�1047-1050,�2000.�

�[11]� BLIZNAKOVA,� K.;� BLIZNAKOVA,� Z.;� BRAVOU,�

V.;� KOLITSI,� Z.;� PALLIKARAKIS,� N.� A� three-dimensional� breast� software� phantom� for�mammography� simulation.� Physics� in� medicine� and�biology,�v.�48,�p.�3699-3719,�2003.�

�[12]�SILVA,�F.�C.;�OLIVEIRA,�H.�J.�Q.;�FALCONI,�R.�R.;�

BORGES,�R.�A.;�SCARANELLO,�A.�M.;�CONDE,�D.�M.� Simulador� Computacional� de� Mamografia�Contemplando� a�Classificação�de�Densidades�do�ACR�BI-RADS™,� CBIS� -� X� Congresso� Brasileiro� de�Informática�em�Saúde,�Florianópolis�–�SC,�2006.�

�[13]�KOPANS,�D.�B.�Imagem�da�Mama.�2o�Edição.�Rio�de�

Janeiro:�MEDSI�–�Médica�Científica�Ltda,�2000.��[14]�JAVA.�Disponível�em:�java.sun.com/j2se.�Acessado�em�

Maio�2007.��

[15]� JAI� Java� advanced� image� api.� Disponível� em:�java.sun.com/products/java-media/jai/.� Acessado� em�Maio�2007.�

�[16]�JAVA�3D.�Disponível�em:�java.sun.com/products/java-

media/3D.�Acessado�em�Maio�2007.���

Page 244: AnAis do wrvA’08 - ckirner.comckirner.com/download/anais/AnaisWRVA-2008.pdf · Alexandre Cardoso e Cláudio Kirner ... Nadabe Cardoso Oliveira Alves Fortes Proposta de desenvolvimento

243

Voltar ao sumário

Adriano Bezerra. . . . . . . . . . . . . . . . . . . . . . 228, 236Afonso Junior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85Alexandre Cardoso 25, 31, 85, 92, 98, 120, 126, 133,

140, 186, 215Alexandre Cardoso. . . . . . . . . . . . . 25, 31, 85, 92, 98Aline Cavalcanti. . . . . . . . . . . . . . . . . . . . . . . . . . . 52Alvaro Lima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Ana Cláudia Gomes de Oliveira . . . . . . . . . . . . . 105Ana Emília Lelis da Silva. . . . . . . . . . . . . . . . . . . 126Antonio Carlos Sementille . . . . . . . . . . . 19, 154, 173Arthur Augusto Bastos Bucioli. . . . . . . . . . . . . . . . 31Artur Santos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208Bernardo Reis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46César Vasconcelos . . . . . . . . . . . . . . . . . . . . . . . . 168Claudio Kirner . . . . . . . . . . . . . . . . . . . . . . . . . . . 66Cléber Corrêa . . . . . . . . . . . . . . . . . . . . . . . . . . . 228Cleberson Forte . . . . . . . . . . . . . . . . . . . . . . . . . . . 66Cleia Gallert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81Cristina Haguenauer . . . . . . . . . . . . . . . . . . . . . . . 16Daniel Abella . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168Daniel Stefany Duarte Caetano . . . . . . . . . . . . . . 120Danielly de Medeiros . . . . . . . . . . . . . . . . . . . . . . . 98Diego Nascimento . . . . . . . . . . . . . . . . . . . . . . . . . 39Edgard Lamounier Jr. . 25, 31, 85, 92, 98 , 120, 126,

133, 140, 186, 215Elvis Fusco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19Fátima Nunes . . . . . . . . . . . . . . . . 147, 236, 220, 228Felipe Breyer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52Fernanda Francielle de Oliveira . . . . . . . . . . . . . 133Francisco Oliveira . . . . . . . . . . . . . . . . . . . . . . . . . 66Francisco Simões . . . . . . . . . . . . . . . . . . . . . . . . . . 60Fred Freitas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168Gabriel Almeida. . . . . . . . . . . . . . . . . . . . . . . . . . 201Gerson Cunha . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Gilberto Marchioro . . . . . . . . . . . . . . . . . . . . . . . . 74Guilherme Fernando Oliveira . . . . . . . . . . . . . . . 173Gustavo Jobim Carvalho . . . . . . . . . . . . . . . . . . . 39Helio Pedrini . . . . . . . . . . . . . . . . . . . . . . . . 160, 220Hugo Rocha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25Ildeberto Rodello . . . . . . . . . . . . . . . . . . 19, 154, 173

João Lima. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60João Marcelo Teixeira . . . . . . . . . . . . . . . . . . . 46, 52Jose Brega . . . . . . . . . . . . . . . . . . . . . . . . . . 154, 173José Júnior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186José Remo Ferreira Brega . . . . . . . . . . . . . . . . . . . 19Judith Kelner . . . . . . . . . . . . . . . . . . . 46, 52, 60, 201Kelly Silva Aquino . . . . . . . . . . . . . . . . . . . . . . . . 140Leonardo Castro Botega . . . . . . . . . . . . . . . . . . . 178Leopoldo Dundes . . . . . . . . . . . . . . . . . . . . . . . . . 193Luciana G. R. Lima . . . . . . . . . . . . . . . . . . . . . . . . 16Lucimara Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105Luís Fernando Fortes Garcia . . . . . . . . . . . . . . . . 74Maikon dos Santos . . . . . . . . . . . . . . . . . . . . . . . . 160Marcello Kera . . . . . . . . . . . . . . . . . . . . . . . . . . . 220Marcos Wagner Souza Ribeiro. 25, 92, 98, 126, 133,

140, 215Maria Carolina Moretti . . . . . . . . . . . . . . . . . . . . 105Marlon Luz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74Marlus Dias Silva . . . . . . . . . . . . . . . . . . . . . . . . 186Mateus Leonardo Castro Botega . . . . . . . . . . . . . 105Michele Noda. . . . . . . . . . . . . . . . . . . . . . . . . . . . 236Murilo Borges de Oliveira . . . . . . . . . . . . . . . . . . 133Nadabe Cardoso Oliveira Alves Fortes . 92, 98, 126,

133, 140, 215Paulo Cruvinel . . . . . . . . . . . . . . . . . . . . . . . 105, 178Rafael Santin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66Ricardo José Sabatine . . . . . . . . . . . . . . . . . . . . . 147Rodrigo Fujioka . . . . . . . . . . . . . . . . . . . . . . . . . . 168Rodrigo Vasconcelos Arruda . . . . . . . . . . . . . . . . . 92Roger Luz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25Rogério Eduardo Garcia . . . . . . . . . . . . . . . . . . . 193Ronaldo Correia . . . . . . . . . . . . . . . . . . . . . . . . . 193Ronaldo dos Anjos Filho . . . . . . . . . . . . . . . . . . . 201Rosa Maria Costa . . . . . . . . . . . . . . . . . . . . . . . . . 39Ryan Ribeiro de Azevedo . . . . . . . . . . . . . . . . . . . 168Silvia Santos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147Theoziran Lima . . . . . . . . . . . . . . . . . . . . . . . . . . 168Veronica Teichrieb . . . . . . . . . . . . . . . 46, 52, 60, 201Wender Silva . . . . . . . 25, 92, 98, 126, 133, 140, 215

Índice autor