You are on page 1of 300

Claudio Kirner Robson Siscoutto Editores

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Livro do

Pr-Simpsio
IX Symposium on Virtual and Augmented Reality Petrpolis RJ, 28 de Maio de 2007.

Apresentao
Somos uma comunidade jovem, multidisciplinar, criativa, aberta a idias e desafios, a qual atrai e acolhe novos talentos, sejam eles estudantes ou profissionais migrando de outras reas. Foi pensando nesses novos e bem-vindos participantes do SVR que criamos o Pr-Simpsio (PS), apresentado pela primeira vez em So Paulo junto ao SVR 2004. O sucesso da iniciativa fez com que a Comisso Especial de Realidade Virtual da SBC, responsvel pela organizao e promoo do SVR, inclusse de forma definitiva o PS na programao de atividades do evento. O principal objetivo do Pr-Simpsio oferecer um curso rpido e abrangente sobre os principais conceitos e tecnologias das reas de RV e RA, de tal forma a estabelecer um repertrio bsico que ajude o participante a melhor aproveitar tudo o que ser exibido e discutido ao longo dos trs dias de atividades principais do SVR. Criado, desenvolvido e apresentado por professores e pesquisadores seniores da comunidade de RV e RA, o PrSimpsio oferece aos participantes, alm das 8 horas-aula, material complementar na forma de um texto abrangente que cobre os principais conceitos e tecnologias da rea, cujo contedo vai muito alm do que apresentado ao vivo. No SVR 2004, o PS deu origem ao livro Realidade Virtual: Conceitos e Tecnologia. Esse livro, j esgotado, tem sido usado como referncia em cursos tcnicos e superiores, no s da rea de computao e informtica, mas tambm de design, comunicao e artes. Aps um processo de reestruturao e reviso da publicao do Pr-Simpsio do SVR 2004, bem como a ampliao e criao de novos captulos, foi publicado, no SVR 2006, o livro denominado Fundamentos e Tecnologia de Realidade Virtual e Aumentada. Esse livro foi fruto do trabalho colaborativo de representantes de uma comunidade jovem e atuante, que est

crescendo em nmero e qualidade, podendo ser constatado em cada nova edio do Symposium on Virtual and Augmented Reality (SVR). Com o intuito de continuar a democratizao e a disseminao do conhecimento sobre RV e RA, o PS do SVR 2007, lana este livro denominado Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes contribuindo para a expanso desta comunidade. assim, com grande prazer, que apresentamos o resultado do trabalho de 34 autores da comunidade brasileira de RV, que no mediram esforos para produzir este texto didtico e de qualidade, e aos quais muito agradecemos. Sem similares em lngua portuguesa, estas obras dos PrSimpsios oferecem uma viso geral e abrangente de conceitos, tecnologias, arquiteturas e aplicaes, constituindo-se em obras de referncia para profissionais e pesquisadores, e til porta de entrada para estudantes, iniciantes e profissionais de outras reas do conhecimento interessados em ingressar no fascinante mundo da tecnologia de realidade virtual e aumentada. Esperamos que voc aprecie e aproveite bastante este trabalho. Divirta-se. Claudio Kirner1 e Robson Siscoutto2 EDITORES
1 2

ckirner@unimep.br robson.siscoutto@poli.usp.br

Copyright 2007 by editors and authors Todos os direitos reservados pelos respectivos detentores Figuras e citaes referenciadas: direitos reservados aos respectivos detentores Coordenao de Produo e Editorao: Robson Augusto Siscoutto - UNIC Criao da Capa: Emanuel Santana - Faculdade de Comunicao Social UNIAGNCIA - UNIC (65) 8411-4787 Dados Internacionais de Catalogao na Publicao (CIP) (Cmara Brasileira do Livro) Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes Claudio Kirner, Robson Siscoutto - editores. Petrpolis RJ, Editora SBC Sociedade Brasileira de Computao, Porto Alegre, 2007. Livro do pr-simpsio, IX Symposium on Virtual and Augmented Reality Bibliografia. 1. Realidade Virtual, Realidade Aumentada I. Kirner, Claudio II. Siscoutto, Robson. ISBN 85-7669-108-6 ndice para catlogo sistemtico: 1. Realidade Virtual e Aumentada: Cincia da Computao 006 Este livro foi especialmente editado, em tiragem limitada, a partir de contedos desenvolvidos para o curso Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes apresentado no pr-simpsio, em 28 de Maio de 2007, associado ao IX Symposium on Virtual and Augmented Reality, realizado em Petrpolis RJ de 28 a 31 de Maio de 2007, promovido pela Sociedade Brasileira de Computao e organizado pelo Laboratrio Nacional de Computao Cientfica (LNCC). Petrpolis RJ 2007

Sumrio
Apresentao e Prefcio
Claudio Kirner e Robson Augusto Siscoutto - editores

Seo A: Conceitos ............................................................................. 01 1. Fundamentos de Realidade Virtual e Aumentada ....................... 02


Claudio Kirner e Robson Augusto Siscoutto

2. Rastreamento ptico para Sistemas de Realidade Virtual e Aumentada ..................................................................... 22


Lus Augusto Consularo, Regina Clia Coelho e Nivaldi Calonego Jr.

3. Tcnicas de Interao para Ambientes de Realidade Virtual e Aumentada .................................................................... 52


Judith Kelner e Veronica Teichrieb

Seo B: Tecnologia e Projeto ........................................................... 71 4. Ambientes de Hardware e Software para Aplicaes de Realidade Virtual e Aumentada ............................................... 72
Bruno Barberi Gnecco, Marcelo de Paiva Guimares e Rodrigo Damazio

5. Desenvolvimento de Ambientes Virtuais ..................................... 90


Tereza Gonalves Kirner e Valria Farinazzo Martins Salvador

6. Ferramentas para Desenvolvimento de Aplicaes de Realidade Virtual e Aumentada ................................................. 108


Marcelo de Paiva Guimares, Bruno Barberi Gnecco e Rodrigo Damazio

7. Sistemas Distribudos de Realidade Virtual e Aumentada ........ 129


Ildeberto Aparecido Rodello, Antonio Carlos Sementille, Jos Remo Ferreira Brega e Ftima L. S. Nunes

Seo C: Aplicaes .......................................................................... 151 8. Dispositivos Hpticos para Interfaces de Realidade Virtual e Aumentada ................................................................... 152
Liliane dos Santos Machado

9. Ambientes Colaborativos de Realidade Virtual e Aumentada ... 168


Denise Filippo, Alberto Raposo, Markus Endler e Hugo Fuks

10. Jogos e Entretenimento com Realidade Virtual e Aumentada . 192


Romero Tori, Ricardo Nakamura, Joo Luiz Bernardes Jr, Roberto Cezar Bianchini, Eduardo Costa Jacober, Daniel Calife e Alexandre Nascimento Tomoyose

11. Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada .............................................................................. 223
Ftima L. S. Nunes, Rosa M. E. M. Costa, Ana Cludia M. T. G. Oliveira, Srgio R. Delfino, Larissa Pavarini, Ildeberto A. Rodello, Jos Remo F. Brega e Antnio C. Sementille

12. Visualizao de Informao com Realidade Virtual e Aumentada .............................................................................. 256


Ezequiel Roberto Zorzal, Luciano Ferreira Silva, Alexandre Cardoso, Claudio Kirner e Edgard Lamounier Jr.

Seo D: Autores ............................................................................... 276


Robson Augusto Siscoutto (Organizador)

SEO

CONCEITOS

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Captulo

1
Fundamentos de Realidade Virtual e Aumentada
Claudio Kirner1,2 e Robson Augusto Siscoutto3
1

Faculdade de Cincias Exatas e da Natureza Universidade Metodista de Piracicaba (UNIMEP) Rodovia do Acar, Km 156 13400-911 Piracicaba - SP Brasil Centro Universitrio Adventista de So Paulo (UNASP) Est. de Itapecerica, 5859 CEP 05858-001 - So Paulo-SP - Brasil ckirner@unimep.br
2

Faculdade de Cincia e Tecnologia Universidade de Cuiab (UNIC) Av. Beira Rio, 3100 78015-480 Jardim Europa - Cuiab - MT Brasil robson@unic.br

Abstract Virtual reality and augmented reality are areas related to new user interface generation, making easy and improving the user interaction with computational applications. This chapter presents the concepts of virtual and augmented reality, showing the aspects of technology, design and application to be addressed in this book.

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Resumo Realidade Virtual e Realidade Aumentada so duas reas relacionadas com as novas geraes de interface do usurio, facilitando e potencializando as interaes do usurio com as aplicaes computacionais. Este captulo apresenta os conceitos de realidade virtual e aumentada, mostrando os aspectos de tecnologia, projeto e aplicao a serem abordados neste livro.

1.1. Introduo
Antes do advento do computador eletrnico, com o desenvolvimento do ENIAC em 1945, as pessoas utilizavam interfaces naturais para interagir com o mundo no seu dia-a-dia, usando seus sentidos. Em raras ocasies, elas necessitavam interagir com mquinas, apertando botes ou acionando alavancas. O computador eletrnico trouxe um novo processo sofisticado de interao com as aplicaes, exigindo conhecimento simblico (abstrato) e necessidade de treinamento, uma vez que o conhecimento do mundo real j no era suficiente. Apesar dos benefcios da tecnologia, a sofisticao das interfaces do usurio fez com que as pessoas tivessem que se ajustar s mquinas, durante muitas dcadas. Felizmente, os pesquisadores, desde o incio da era dos computadores, buscaram maneiras de fazer com que as mquinas se ajustassem s pessoas, o que foi se conseguindo com a evoluo das tecnologias de hardware, software e telecomunicaes. Surgiram ento interfaces de voz, interfaces tangveis, interfaces hpticas, etc, possibilitando, aos usurios, acessarem aplicaes como se estivessem atuando no mundo real, falando, pegando, apertando, fazendo gestos, etc. H vrios pontos importantes nessa evoluo, envolvendo invenes como: computador eletrnico vlvula, transistor, 3

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

circuito integrado, monitor de computador, computao grfica, rede, computador pessoal (PC), Internet, Web, software livre, alm de outros inventos tecnolgicos, cuja integrao permitiram o uso transparente da tecnologia, por parte do usurio. O usurio j no precisa perceber a presena da tecnologia, pois ela trabalha para ele de forma invisvel em qualquer lugar, dando origem aos termos: ubquo e pervasivo. Nesse contexto, a realidade virtual [Burdea, 1994] e a realidade aumentada [Azuma, 1997] tm um papel importante, pois so interfaces computacionais avanadas, que ainda no foram implantadas de forma expressiva na sociedade. As primeiras interfaces computacionais, usadas nas dcadas de 40 e 50, eram baseadas em chaves e lmpadas, que permitiam uma comunicao com o computador baseada em linguagem de mquina. Na dcada de 60, surgiram as consoles com vdeo, dando incio s interfaces grficas rudimentares. Com a utilizao de microprocessadores, nas dcadas de 70 e 80, os microcomputadores se popularizaram, usando interface baseada em comando, como o DOS. A evoluo desta interface resultou no Windows, que, explorando tcnicas de multimdia, persiste at hoje. Apesar de interessante e de ter bom potencial de uso, a interface Windows fica restrita limitao da tela do monitor e ao uso de representaes como menus e cones. A realidade virtual surge ento como uma nova gerao de interface, na medida em que, usando representaes tridimensionais mais prximas da realidade do usurio, permite romper a barreira da tela, alm de possibilitar interaes mais naturais. A realidade virtual teve suas origens na dcada de 60, com o desenvolvimento do ScketchPad por Ivan Sutherland [Sutherland, 1963], mas s ganhou fora na dcada de 90, quando o avano tecnolgico propiciou condies para a execuo da computao 4

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

grfica interativa em tempo real. Apesar das vantagens da realidade virtual, ela necessitava de equipamentos especiais como capacete, luva, culos estereoscpicos, mouses 3D, etc, para fazer com que o usurio fosse transportado para o espao da aplicao, onde realiza suas interaes. Alm disso, o transporte do usurio para o ambiente virtual (desconhecido) causava um desconforto inicial e dificuldades de interao, exigindo, muitas vezes, treinamento. Esses problemas inibiram a popularizao da realidade virtual como uma nova interface do usurio. Por outro lado, a evoluo tecnolgica tambm propiciou , na dcada de 90, o aparecimento da realidade aumentada, permitindo a sobreposio de objetos e ambientes virtuais com o ambiente fsico, atravs de algum dispositivo tecnolgico. Essas aplicaes ficaram mais acessveis somente no incio dos anos 2000, com a convergncia de tcnicas de viso computacional, software e dispositivos com melhor ndice de custo-benefcio. Alm disso, o fato dos objetos virtuais serem trazidos para o espao fsico do usurio (por sobreposio) permitiu interaes tangveis mais fceis e naturais, sem o uso de equipamentos especiais. Por isso, a realidade aumentada vem sendo considerada uma possibilidade concreta de vir a ser a prxima gerao de interface popular, a ser usada nas mais variadas aplicaes em espaos internos e externos. Enquanto a realidade virtual depende de equipamentos de visualizao, como monitor, projetor e capacete, normalmente utilizados em ambientes fechados, a realidade aumentada no apresenta esta restrio com dispositivos misturadores, podendo ser usada em qualquer ambiente (fechado ou aberto), sendo, portanto mais abrangente e universal. Por outro lado, tanto a realidade virtual quanto a realidade aumentada podem ser usadas em aplicaes individuais e em aplicaes coletivas locais ou remotas, propiciando experincias colaborativas [Billinghurst, 1999] 5

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

[Benford, 1998; Kirner, 2004]. No entanto, a realidade aumentada apresenta a vantagem de permitir o uso de aes tangveis [Kawashima, 2001] e de operaes multimodais, envolvendo voz, gestos, tato, etc, facilitando o trabalho do usurio sem a necessidade de treinamento. Assim, a convergncia tecnolgica e o desenvolvimento de interfaces esto apontando para a nova gerao de interfaces computacionais baseadas em realidade aumentada para uso nas mais variadas reas, desde entretenimento, como jogos, at experimentos cientficos coletivos, constituindo verdadeiros laboratrios de pesquisa.

1.2. Conceitos e Definies


Em funo da abundncia de termos e de interesses das reas de realidade virtual e aumentada, em funo de sua multidisciplinaridade, sero abordados em seguida alguns conceitos e definies envolvidos com o assunto. 1.2.1. Multimdia Multimdia consiste na integrao, controlada por computador, de textos grficos, imagens, vdeo, animaes, udio e outras mdias, que possam representar, armazenar, transmitir e processar informaes de forma digital [Marshal, 2001]. Aplicaes multimdia so potentes e simples de usar, mas restringem a visualizao do usurio tela do computador (2D). Esta deficincia pode ser atenuada com o aproveitamento do espao da tela do monitor, atravs de mltiplas janelas sobrepostas ou espalhadas.

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

1.2.2. Realidade Virtual A Realidade Virtual (RV) uma interface avanada do usurio para acessar aplicaes executadas no computador, propiciando a visualizao, movimentao e interao do usurio, em tempo real, em ambientes tridimensionais gerados por computador. O sentido da viso costuma ser preponderante em aplicaes de realidade virtual, mas os outros sentidos, como tato, audio, etc. tambm podem ser usados para enriquecer a experincia do usurio. A modelagem dos ambientes virtuais, usando linguagens como VRML (Virtual Reality Modeling Language) [VRML97, 2007] e sua sucessora, X3D [Walsh, 2001; Web3d, 2007], alm de outras linguagens e ferramentas de autoria, permite, ao usurio, visualizar ambientes tridimensionais, movimentar-se dentro deles e manipular seus objetos virtuais. Os objetos virtuais podem ser animados, apresentando comportamentos autnomos ou disparados por eventos. A Figura 1.1 mostra um exemplo de ambiente virtual visto no monitor.

Figura 1.1. Exemplo de aplicao de realidade virtual.

A interao do usurio com o ambiente virtual um dos aspectos importantes da interface e est relacionada com a capacidade do computador detectar e reagir s aes do usurio, promovendo alteraes na aplicao [Bowman, 2005]. O usurio, interagindo com um ambiente virtual tridimensional realista, em 7

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

tempo-real, vendo as cenas serem alteradas como resposta aos seus comandos, como ocorre nos videogames atuais, torna a interao mais rica e natural, gerando mais engajamento e eficincia. Nos ambientes virtuais, a interao mais simples a navegao, decorrente da movimentao do usurio no espao tridimensional, atravs de algum dispositivo, como o mouse 3D, comandos de voz ou de gestos detectados por algum dispositivo de captura, resultando na visualizao de novos pontos de vista do cenrio. Nesse caso, no h mudanas no ambiente virtual, mas somente um passeio exploratrio. Interaes, propriamente ditas, com alteraes no ambiente virtual, ocorrem quando o usurio entra no espao virtual das aplicaes e visualiza, explora, manipula e aciona ou altera os objetos virtuais, usando seus sentidos, incluindo os movimentos tridimensionais de translao e rotao naturais do corpo humano. A interface baseada em realidade virtual permite que habilidades e conhecimento intuitivos do usurio possam ser utilizados para a manipulao dos objetos virtuais. Esse tipo de interao realizado, atravs de dispositivos no convencionais, como capacete de visualizao ou luvas, o prprio corpo, como gestos e comandos de voz, ou at mesmo dispositivos convencionais como mouse, teclado e monitor de vdeo. O usurio deve ter a impresso de estar atuando dentro do ambiente virtual, apontando, pegando, manipulando e executando outras aes sobre os objetos virtuais, em tempo-real. Normalmente, os atrasos admissveis para que o ser humano tenha a sensao de interao em tempo-real esto em torno de 100 milisegundos, tanto para a viso, quanto para as reaes de tato, fora e audio. Isto impe um compromisso do sistema (processadores, software, dispositivos, complexidade do ambiente virtual, tipo de interao, etc) em funcionar com taxas mnimas de 10 quadros por segundo na renderizao das imagens (sendo desejado algo em torno de 20 8

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

quadros por segundo para suportar melhor as cenas animadas) e de 100 milisegundos de atraso nas reaes aos comandos do usurio. Assim, a complexidade do mundo virtual, os dispositivos usados, o software e a configurao do sistema devem ser ajustados para funcionar com as taxas mnimas de renderizao e reao. Existem muitas definies de realidade virtual, envolvendo diversos aspectos [Burdea, 1994; Vince, 1995, 2004; Kirner, 1996; Sherman, 2003]. Uma definio, sintetizando as vrias considerando as discusses apresentadas at agora, a seguinte: Realidade virtual uma interface avanada para aplicaes computacionais, que permite ao usurio navegar e interagir, em tempo real, com um ambiente tridimensional gerado por computador, usando dispositivos multisensoriais. Apesar da realidade virtual tambm usar mltiplas mdias, ela enfatiza a interao do usurio com o ambiente tridimensional e a gerao das imagens em tempo real. Para que isso ocorra, a plataforma computacional deve ser apropriada para aplicaes de realidade virtual, apresentando boa capacidade de processamento grfico para a renderizao de modelos tridimensionais em tempo real, e suportando dispositivos no convencionais de interao para atender demanda multisensorial. A comparao entre multimdia e realidade virtual pode ser vista da seguinte maneira: Multimdia envolve imagens capturadas ou prprocessadas; prioriza a qualidade das imagens; exige alta capacidade de transmisso; usa tcnicas de compresso de dados; atua no espao 2D; e funciona com dispositivos convencionais. Realidade virtual envolve imagens calculadas em tempo real; prioriza a interao com o usurio; exige alta capacidade de 9

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

processamento; usa tcnicas e recursos de renderizao de modelos tridimensionais e funciona com dispositivos especiais. Tanto na multimdia, como na realidade virtual, o usurio tem de ser transportado para o domnio da aplicao (ambiente virtual), podendo causar-lhe desconforto frente ao desconhecido, alm da necessidade de adaptao e treinamento. 1.2.3. Realidade Aumentada A realidade aumentada definida de vrias maneiras: a) o enriquecimento do ambiente real com objetos virtuais, usando algum dispositivo tecnolgico, funcionando em tempo real; b) uma melhoria do mundo real com textos, imagens e objetos virtuais, gerados por computador [Insley, 2003]; c) a mistura de mundos reais e virtuais em algum ponto da realidade/virtualidade contnua, que conecta ambientes completamente reais a ambientes completamente virtuais [Milgran, 1994]; d) um sistema que suplementa o mundo real com objetos virtuais gerados por computador, parecendo coexistir no mesmo espao 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 audio, tato e fora e cheiro [Azuma, 2001]. A Figura 1.2 apresenta um exemplo de aplicao de realidade aumentada com uma mesa real enriquecida com vaso e carro virtuais. 10

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Figura 1.2. Realidade aumentada com vaso e carro virtuais sobre a mesa.

Essa tecnologia dever ter grande impacto no relacionamento das pessoas, atravs de novas maneiras de realizar visualizao, comunicao e interao com pessoas e informao. A realidade aumentada e a realidade virtual [Bimber, 2004] podem ser comparadas da seguinte forma: - a realidade aumentada enriquece a cena do mundo real com objetos virtuais, enquanto a realidade virtual totalmente gerada por computador; - no ambiente de realidade aumentada, o usurio mantm o sentido de presena no mundo real, enquanto que, na realidade virtual, a sensao visual controlada pelo sistema; - a realidade aumentada precisa de um mecanismo para combinar o real e o virtual, enquanto que a realidade virtual precisa de um mecanismo para integrar o usurio ao mundo virtual. 1.2.4. Hiper-realidade O prximo passo da evoluo das interfaces incrementar a combinao do mundo real com o mundo virtual, atravs de novos

11

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

elementos e comportamentos para facilitar e potencializar a interao do usurio com os recursos que ele necessita no dia a dia. Nesse contexto, surge o conceito de hiper-realidade [Tiffin, 2001], cuja definio a seguinte: hiper-realidade a capacidade tecnolgica de combinar realidade virtual, realidade fsica, inteligncia artificial e inteligncia humana, integrando-as de forma natural para acesso do usurio. Ambientes de hiper-realidade permitiro que habitantes reais interajam com habitantes remotamente localizados, bem como com objetos ou formas de vida imaginrias ou artificiais, gerados por computador, em um mundo misturado. Esse mundo ser formado por pessoas, animais, insetos, plantas, terrenos, construes e objetos virtuais inteligentes, todos integrados. Com a viso do mundo misturado, cada usurio poder enxergar o que lhe interessa, de acordo com seu perfil ou sua necessidade, e interagir com os objetos, de forma a ter suas necessidades satisfeitas. Como exemplo, o usurio, ao caminhar ou dirigir seu automvel por uma cidade (usando um capacete de viso ptica direta), poder fazer solicitaes por comandos de voz e ver legendas virtuais nos prdios e ruas orientando-o ou mostrando opes como: o melhor caminho para chegar a um destino; restaurantes de determinados tipos ou padres; entretenimentos especficos; lojas; supermercados; hospitais; e assim por diante. Muito do que se desenvolveu na Internet para facilitar a vida do usurio, poder ser transportado para o mundo misturado de forma grfica e seletiva. Assim, nesse mundo misturado com hiper-realidade, as pessoas devero satisfazer muitas de suas necessidades, atuando num ambiente integrado inteligente, sendo atendidas de forma explcita ou implcita.

12

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

1.2.5. Rastreamento O rastreamento, em ambientes de realidade virtual e aumentada, tem a funo de identificar a posio da mo, da cabea, do prprio usurio ou de algo atrelado a ele, como uma placa. Com isto, o sistema permite que o usurio exera um controle de posicionamento em ambientes virtuais ou aumentados, podendo, por exemplo, movimentar-se e tocar, agarrar, mover e soltar objetos virtuais. Para uso em aplicaes de realidade virtual, muitos dispositivos de rastreamento foram desenvolvidos, usando princpios mecnicos, magnticos, de ultrasom, etc. Cada tipo apresenta vantagens e desvantagens, mas em geral so caros. Mais recentemente, com a popularizao da webcam e com o avano das tcnicas de viso computacional e do poder de processamento dos microcomputadores, o rastreamento ptico passou a ser uma realidade, em funo da disponibilidade e do baixo custo. A biblioteca ARToolKit [Lamb, 2007], usada em aplicaes de realidade aumentada, utiliza esse tipo de rastreamento. Assim, o captulo 2 deste livro explora, em detalhes, os conceitos, tecnologia e uso de rastreamento ptico para aplicaes de realidade virtual e aumentada. 1.2.6. Interao A interao consiste na capacidade do usurio atuar em ambientes virtuais e aumentados, promovendo alteraes e reaes s suas aes. Esta a principal caracterstica dos jogos por computador, sendo o fator determinante para o envolvimento do usurio e o sucesso da aplicao.

13

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Para que uma interao tenha efeito, necessrio um controle de posicionamento do usurio (rastreamento) e outros atributos do sistema como: apontamento e seleo de objetos, ativao de aes, etc. O captulo 3 deste livro trata dos detalhes da interao em ambientes e realidade virtual e aumentada, mostrando conceitos, implementao e exemplos.

1.3. Tecnologia, Projeto e Aplicaes


As reas de realidade virtual e realidade aumentada, assim como outras reas, s se desenvolveram com a convergncia de uma srie de fatores, incluindo as pesquisas, a tecnologia, a disponibilidade de produtos e os custos acessveis. Nesse sentido, tiveram papel fundamental os pesquisadores que disseminaram essas reas com o desenvolvimento de recursos disponibilizados sociedade gratuitamente. A linguagem VRML - Virtual Reality Modeling Language [VRML97, 2007] para uso em realidade virtual e a biblioteca ARToolKit [Lamb, 2007] para realidade aumentada so os exemplos mais marcantes de recursos gratuitos e livres, mas existem vrios outros disponibilizados por pesquisadores e, mais recentemente, por empresas. Em seguida, o leitor dever ter uma viso geral sobre as sees deste livro, envolvendo os aspectos de tecnologia, projeto e aplicaes. 1.3.1. Ambientes de Hardware e Software O hardware de um computador o ncleo de qualquer aplicao, oferecendo os recursos a serem usados. Suas caractersticas, ajustadas s necessidades da aplicao, so responsveis pela obteno do melhor ndice de custo-benefcio.

14

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

O hardware envolve muitos elementos, consistindo de: processador; placas especiais, como placas grficas e sonoras; perifricos, incluindo dispositivos especiais multisensoriais; e infraestrutura de rede. Para fazer o hardware funcionar adequadamente, so usados ambientes de software, denominados ncleos ou sistemas operacionais, que constituem mquinas virtuais poderosas encarregadas de suportar as necessidades de aplicaes especficas de realidade virtual e aumentada. O captulo 4 deste livro aborda as questes de hardware e software bsicos, mostrando suas caractersticas, exemplos e potencial de utilizao. 1.3.2. Desenvolvimento e Avaliao de Sistemas O processo de desenvolvimento de aplicaes de realidade virtual e aumentada requer a utilizao de tcnicas de engenharia de software adaptadas ao contexto dessas reas. Alm das tcnicas de desenvolvimento, importante usar tcnicas de avaliao das aplicaes, no sentido de afer-las sob pontos de vista especficos. O captulo 5 deste livro trata desse assunto para a rea de realidade virtual, servindo como ponto de partida para o processo de desenvolvimento e avaliao de aplicaes de realidade aumentada. 1.3.3. Ferramentas O desenvolvimento de aplicaes de realidade virtual e aumentada pode ser facilitado, quando so usadas ferramentas apropriadas para cada caso, como linguagens, bibliotecas, ambientes visuais de 15

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

desenvolvimento, etc, constituindo ferramentas de autoria das aplicaes. A escolha certa das ferramentas depende de um bom conhecimento do domnio da aplicao e da disponibilidade de recursos de hardware e de software, alm de recursos financeiros, quando se tratar de ferramentas comerciais. O captulo 6 deste livro faz uma anlise de ferramentas para desenvolvimento de aplicaes de realidade virtual e aumentada, citando exemplos e potencialidades de uso. 1.3.4. Sistemas Distribudos Aplicaes simples de realidade virtual e aumentada costumam ser voltadas a um nico usurio. No entanto, a demanda por trabalho colaborativo, envolvendo vrios usurios remotos, vem crescendo e exigindo o desenvolvimento de aplicaes sobre redes de computadores ou constituindo sistemas distribudos. Em funo dos requisitos especficos das aplicaes de realidade virtual e aumentada, importante que os ambientes de rede sejam apropriados para dar-lhes suporte, fornecendo o comportamento esperado pelos usurios. O captulo 7 deste livro trata das questes de sistemas distribudos de realidade virtual e aumentada, considerando seus requisitos e mostrando exemplos, aplicaes e ferramentas. 1.3.5. Dispositivos Hpticos Quando se trabalha com ambientes de realidade virtual e aumentada, manipulando objetos virtuais, sente-se falta da sensao de toque (hptica) que impe mais realismo s aplicaes. Em alguns casos, a sensao hptica, envolvendo tato e fora, pode

16

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

at ser dispensada, mas, em outros, ela essencial, como ocorre em situaes de treinamento. O treinamento mdico um exemplo tpico, no qual o cirurgio deve ter as mesmas sensaes de toque nos tecidos virtuais e nos tecidos reais. Para isto, so usados os dispositivos hpticos e os modelos geomtricos deformveis para se ajustarem s vrias situaes de presso e ruptura. O captulo 8 deste livro discute os aspectos dos dispositivos hpticos e sua utilizao em aplicaes de realidade virtual e aumentada. 1.3.6. Ambientes Colaborativos A evoluo das tecnologias de informtica e de telecomunicaes vem propiciando a computao ubqua ou pervasiva, que faz com que as aplicaes computacionais estejam em vrios lugares ao mesmo tempo. Isto ocorre com telefones celulares, Internet e outras aplicaes. Como resultado dessas facilidades, as aplicaes colaborativas esto tendo um grande desenvolvimento, principalmente em educao, treinamento, projeto e entretenimento, demandando ambientes mais realistas e potencializados como ocorre com realidade virtual e aumentada. O captulo 9 deste livro aborda os conceitos, caractersticas, exemplos e potencialidades de ambientes colaborativos de realidade virtual e aumentada. 1.3.7. Jogos e Entretenimento Jogos e entretenimento sempre tiveram um apelo muito grande nas pessoas. Com o surgimento da realidade virtual e da realidade aumentada, usando cenrios e comportamentos mais realistas, 17

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

recursos dessas reas passaram a ser usados para o desenvolvimento de novas aplicaes ou para a remodelagem de aplicaes j existentes. O captulo 10 deste livro trata do uso de realidade virtual e aumentada em jogos e entretenimento, mostrando suas caractersticas, exemplos e tendncias. 1.3.8. Aplicaes Mdicas A medicina uma das reas que mais demandaram o uso de realidade virtual e aumentada em educao, treinamento, diagnstico, tratamento e simulao de cirurgia. Realidade virtual e realidade aumentada, pelas suas caractersticas de visualizao 3D e de interao em tempo real, permitem a realizao de aplicaes mdicas inovadoras, que antes no podiam ser realizadas. O captulo 11 deste livro discute como a realidade virtual e a realidade aumentada podem ser usadas em aplicaes mdicas, mostrando exemplos e explorando os recurso de visualizao e de sensaes multisensoriais em situaes fsicas e psicolgicas. 1.3.9. Visualizao As imagens sempre foram usadas para melhorar as condies de visualizao de informao das pessoas, atravs de grficos e figuras. Por outro lado, ambientes de realidade virtual e aumentada amplificam as capacidades das pessoas em avaliarem informaes tridimensionais, na medida em que flexibilizam a atuao no espao 3D e permitem o uso de interaes multimodais, possibilitando maior riqueza de detalhes, melhores tcnicas de interao e mais desempenho.

18

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

O captulo 12 deste livro aborda as questes de visualizao apoiada por realidade virtual e aumentada, mostrando exemplos e tendncias.

1.4. Concluses
Realidade virtual e realidade aumentada so reas recentes do conhecimento que vm dando, aos usurios, melhores condies de interao com aplicaes computacionais, propiciando a eles interaes naturais e potencializao de suas capacidades. Para isso, muitos recursos so utilizados, envolvendo hardware, software, perifricos, redes, tecnologias especiais, tcnicas de projeto e avaliao e o desenvolvimento de aplicaes. Este livro agrupa vrias questes envolvidas com o uso de realidade virtual e realidade aumentada para facilitar a vida das pessoas, considerando os conceitos e tendncias, assim como os aspectos de tecnologia, projeto e aplicaes. Este captulo teve como objetivo dar uma viso conceitual de realidade virtual e aumentada, incluindo tendncias, alm de apresentar um resumo do que o leitor ir encontrar na sequncia de leitura.

1.5. Referncias Bibliogrficas


Azuma, R. (1997) A Survey of Augmented Reality", Presence: Teleoperators and Virtual Environments, v .6, n.4, August, p. 355-385. Azuma, R. et al. (2001) Recent Advances in Augmented Reality. IEEE Computer Graphics and Applications, v .21, n.6, p. 34-47.

19

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Benford, S. et. al. (1998) "Understanding and Constructing Shared Spaces with Mixed Reality Boundaries". ACM ToCHI, v.5, N.3, p. 185-223. Billinghurst, M., Kato, H. (1999) "Collaborative Mixed Reality", Proc. of the International Symposium on Mixed Reality, ISMR'99, Springer -Verlag, p. 261-284. Bimber, O., (2004) "Augmented Reality - Part 1 - Introduction and Overview" <http://www.uni-weimar.de/~bimber/Pub/AR/> Bowman, D., et al. (2005). 3D User Interfaces: Theory and Practice. Boston, MA: Addison-Wesley. Burdea, G., Coiffet,P. (1994) Virtual RealityTechnology", John Wiley & Sons. Insley, S. (2003) "Obstacles to General Purpose Augmented Reality" <http://islab.oregonstate.edu/koc/ece399/f03/final/insley2.pdf> Kawashima, T. et. al. (2001) "Magic Paddle: A Tangible Augmented Reality Interface for Object Manipulation", Proc. of ISMR2001, p. 194-195. Kirner, C., Pinho, M.S. (1996) Introduo a Realidade Virtual. Mini-Curso, JAI/SBC, Recife, PE. Kirner, C. (2004) Mos Colaborativas em Ambientes de Realidade Misturada Anais do 1o Workshop de Realidade Aumentada, Piracicaba, SP, p. 1-4. Lamb,P. (2007) ArtoolKit <www.hitl.washington.edu/artoolkit/> Marshall, D. (2001) What is Multimedia? http://www.cs.cf.ac.uk/Dave/Multimedia/node10.html 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. 20

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Sherman, W.R., Craig, A.B. (2003) Understanding Virtual Reality, Morgan Kaufmann. Sutherland, I. E. (1963) SKETCHPAD: A MAN-MACHINE GRAPHICAL COMMUNICATION SYSTEM AFIPS Conference Proceedings, Spring Joint Computer Conference, Detroit <faculty.cs.tamu.edu/hammond/courses/SR/papers/ Sutherland/Sutherland1963Sketchpad.pdf> Tiffin, J., Terashima, N. ed. (2001) Hyper-reality: Paradigm for the Third Millennium. Routledge. Vince, J. (1995) Virtual Reality Systems, Addison-Wesley. Vince, J. (2004) Introduction to Virtual Reality, Springer-Verlag, 2nd edition. VRML97 (2007). The Virtual Reality Modeling Language. <http://www.web3d.org/x3d/specifications/vrml/ISO-IEC14772-VRML97/> Walsh, A.E., Bourges-Svenier, M. (2001), Core WEB3D, Prentice Hall. Web3D Consortium (2007) <http://www.web3d.org/x3d/> X3D Documentation.

21

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Captulo

2
Rastreamento ptico para Sistemas de Realidade Virtual e Aumentada
Lus Augusto Consularo1, Regina Clia Coelho1 e Nivaldi Calonego Jr.2 Universidade Metodista de Piracicaba (UNIMEP) Rodovia do Acar, km 156 13400-911 Piracicaba SP {consularo,rccoelho}@unimep.br
2 1

Universidade Estadual do Mato Grosso (UNEMAT) nivaldi.calonegojr@gmail.com

Abstract The camera tracking is particularly useful for Virtual and Augmented Reality systems because tracked objects may serve as interaction devices in 3D scenes. Real object representations are built from the optical tracking of real object projections on photosensor arrays. Cameras as tracking devices have the advantage of not having mechanical contact. However, their effective application requires the knowledge of the main parameters and features involved in the tracking process. This chapter is a very short introduction to the camera tracking problem with an ARToolkit-based example for punctual objects.

22

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Resumo O rastreamento ptico til para sistemas de Realidade Virtual e Aumentada, pois objetos rastreados servem como dispositivos de interao em cenas 3D. Representaes de objetos reais so construdas com o rastreamento de suas projees sobre uma matriz de fotossensores. As cmeras tm a vantagem de no exigir contato mecnico para o rastreamento, porm sua aplicao de maneira efetiva requer o conhecimento dos parmetros e variveis envolvidas em um processo de rastreamento. Este captulo introduz o rastreamento ptico, ilustrando-o com um exemplo de rastreamento de um objeto pontual.

2.1. Introduo
Recuperar a posio 3D em uma cena real, a partir de uma ou vrias imagens, um problema inverso, isto , no possvel resolv-lo sem a construo de um modelo baseado em dados observados [Chalmond, 2003]. No problema deste trabalho, os dados observados so os pixels, de uma ou vrias imagens, capturados com um instrumento, a cmera. A cena real projetada sobre a geometria em que os pixels esto dispostos. Para a grande maioria das cmeras, esta geometria uma superfcie plana (bidimensional) e com os pixels dispostos em uma grade regular. Os pixels nada mais so que os resultados numricos da transduo de um dos muitos fotossensores dispostos naquela superfcie plana. Transduo a transformao de um tipo de energia em outra e a energia que se quer transformar a dos ftons que, depois de interagirem com os objetos da cena real, caem na superfcie fotossensorial da cmera. Esta energia dos ftons , de fato, transformada em energia eltrica, refletindo a quantidade de ftons da cena que colidiram com aquele fotossensor especfico. Portanto, de cada fotossensor resultar um sinal que indica, no tempo, a variao da quantidade de luz (quantidade de ftons) detectada por 23

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

aquele fotossensor. preciso, portanto, determinar de quanto em quanto tempo se deve recuperar essa medida, ou seja, para uma fotografia digital (imagem parada) determina-se qual o tempo de exposio dos fotossensores a uma cena. Para imagens em movimento, este tempo de exposio deve ser suficientemente pequeno para que outra imagem seja obtida, com a sensibilidade desejada. Esta superfcie, geralmente no seria muito til sem um conjunto ptico associado, isto , sem um conjunto de lentes. Estas lentes permitem selecionar quais ftons provenientes da cena real devem cair sobre os fotossensores. As lentes, portanto, funcionam como filtros que selecionam qual parte da cena ser privilegiada na interao com a cmera. A Figura 2.1 ilustra a geometria intrnseca de uma cmera. Todos os parmetros intrnsecos cmera so aqueles relacionados s caractersticas do instrumento. Portanto, somente conhecer tais parmetros no basta. Se quisermos, resolver o problema proposto por este trabalho, esta (ou estas) cmera deve mergulhar (ou flutuar) em uma cena 3D, isto , um plano 2D deve mergulhar em um espao 3D. O posicionamento da cmera no espao 3D gera um outro conjunto de parmetros que, no mais, depende do instrumento, mas sim de uma operao que altere sua posio e sua pose, isto , sua orientao no espao 3D. Considerando ento um espao euclideano, cujos eixos dimensionais chamaremos de xw, yw e zw, possvel estabelecer, pelo menos, dois sistemas de coordenadas: aquele que toma como referncia a cmera e um outro arbitrrio.

24

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

(a)

(b)

Figura 2.1. Parmetros intrnsecos de uma cmera. Em (a) aparecem a distncia focal e as medidas espaciais da superfcie fotossensorial. Em (b) so indicados tambm o nmero de pixels em cada dimenso da altura e largura da superfcie fotossensorial.

Obviamente est faltando o objeto de interesse nisso tudo, pois justamente esta a posio que se quer encontrar. Iniciando-se a partir de um objeto pontual, sua posio na cena 3D representada por uma tripla PO=(xO, yO, zO). Por outro lado, tudo que se tem a projeo da imagem deste objeto na cmera, representada por pI=(xI, yI). O problema inverso a ser resolvido : encontrar PO conhecendo-se pI. Claro que isso no seria possvel se no houvesse mais informaes sobre a geometria do objeto. Da relao entre estes dois pontos (PO e pI) s possvel obter a equao da reta que passa pelos pontos PC (ponto central) e o ponto pI.

Figura 2.2. Geometria da projeo de um objeto pontual sobre uma nica superfcie plana.

25

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

No entanto, se duas cmeras, C1 e C2, forem posicionadas de forma a capturar a projeo do objeto, teremos ento duas retas 1 e 2, respectivamente. Encontrar o ponto em que estas duas retas se encontram resolver o nosso problema.

Figura 2.3. Geometria da projeo de um objeto pontual sobre duas superfcies planas.

Ao longo das sesses a seguir ser relatado um experimento que pode ser reproduzido com dispositivos e artefatos de baixo custo. Este experimento se baseou na biblioteca de realidade aumentada ARToolkit [Lamb, 2007], seja para fazer a aquisio do vdeo, bem como para visualizar a resoluo do problema proposto. A ferramenta para desenvolvimento utilizada foi o MS Visual Studio (verso 6) sobre plataformas PC (Athlon 2600+ com 1GB de memria RAM e Athlon 2400+ com 1GB de memria RAM) com Windows XP Professional. Uma rede local Ethernet de 100 Mbps foi utilizada para conectar os computadores.

2.2. Aquisio e Processamento de Vdeo


O requisito bsico para se fazer rastreamento ptico a aquisio de vdeo em tempo real. As cmeras, ou seja, os dispositivos para se adquirir vdeo em tempo-real, variam muito suas caractersticas 26

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

e estaria fora do escopo deste captulo detalhar suas configuraes e caractersticas. As opes mais simples so as webcams, conectadas a um PC por meio de interfaces seriais tais como USB ou IEEE-1394. Neste caso, preciso estar atento ao tempo de varredura e ao desempenho do prprio PC. Cmeras mais simples, geralmente, possuem drivers reconhecidos pelos sistemas operacionais por concentradores de drivers, tais como o WDM (Windows Device Manager) [Cant, 2005] ou V4L (Video for Linux) [Dirks, 2003]. H tambm a opo pelas camcorders, que permitem a aquisio de vdeos com maior resoluo de pixels e de cores [Jack, 2005]. Porm preciso reconhecer que um PC nem sempre conseguir processar vdeos da melhor qualidade, pois isto implicaria em acrscimos, muitas vezes drsticos, da quantidade de memria necessria para se armazenar dados temporrios, bem como, de processamento desta grande quantidade de dados. Se conectarmos duas webcams (USB ou IEEE-1394) em um nico PC, dificilmente ser possvel adquirir quadros de cada cmera de maneira satisfatria, pois este mesmo PC teria que conseguir ainda realizar o processamento de cada uma das cmeras. Embora seja possvel, os resultados no so adequados. Uma sada seria utilizar placas de aquisio de vdeo para se conectar as cmeras. As interfaces entre as cmeras e estas placas so normalmente de vdeo analgico (S-Video, Vdeo Composto, RGB+sinais de sincronismo) ou ento digital (DV, IEEE-1394) [Jack, 2005]. Estas placas so capazes de entregar os quadros de maneira rpida. preciso saber se o PC ter capacidade de process-las. Uma outra sada seria estabelecer que cada PC processa uma nica cmera. Neste caso, cada PC estaria conectado a uma rede e sua tarefa seria calcular a reta do objeto projetado em sua imagem. Ao final do clculo da reta, para cada quadro, os coeficientes da reta seriam enviados para um terceiro PC calcular o cruzamento entre as retas. Um problema dessa abordagem que no h a garantia de que os coeficientes de um par de retas gerados 27

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

pelos PCs conectados as suas respectivas cmeras correspondam a quadros gerados no mesmo instante. Por isso, antes, deve ser resolvido o problema de sincronismo: as cmeras devem identificar seus quadros de acordo com o instante da aquisio. H cmeras de baixo custo que fornecem sinais de sincronismo que podem ser enviados a outras cmeras conectadas [Point Grey, 2006]. Ainda assim, preciso que dados sobre este sincronismo (por exemplo, um identificador do quadro) sejam propagados juntamente com os coeficientes da reta correspondente. No experimento deste trabalho no houve a preocupao com o sincronismo, pois um dos objetivos futuros justamente avaliar o impacto da falta do sincronismo em PCs conectados a uma cmera e ligados a uma rede Ethernet de 100 Mbps. A aquisio de vdeo foi suportada pela biblioteca DirectShow (DSVideoLib) [Pintaric, 2003], utilizada pela verso 2.65 do ARToolkit [Lamb, 2007] e que disponibiliza uma interface chamada libARvideo, para controlar a captura dos quadros [Lamb, 2006]. O ARToolkit disponibiliza trs funes para controlar o tempo de vida da aplicao: (i) inicializao (init()); (ii) lao principal (MainLoop()); e (iii) finalizao (cleanup()). Na primeira, dentre outras eventuais inicializaes, a cmera configurada com a chamada da funo arVideoOpen, que toma como parmetro uma cadeia de caracteres. Esta cadeia de caracteres deve abrigar uma sentena cuja sintaxe permite determinar parmetros intrnsecos da cmera tais como: nmero de pixels na largura (videoWidth) e na altura (videoHeight); tipo de cmera e alguns de seus identificadores; a escolha sobre mostrar ou no uma GUI (showDlg) quando a cmera estiver sendo iniciada, entre outros. Nas verses mais atuais do ARToolkit (2.7 em diante [Lamb, 2007]), estes parmetros so configurados em um arquivo XML. Uma vez configurada a cmera, recomendvel que sejam recuperadas as resolues (largura e altura) com que realmente a 28

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

cmera foi configurada. possvel configurar qualquer dimenso em arVideoOpen, porm o hardware da cmera pode no oferecer exatamente a resoluo desejada. A funo arVideoInqSize retorna o nmero de pixels na largura e altura como parmetros passados por referncia. Cmeras so dispositivos que, normalmente, dispem de mecanismos mveis para ajustar a distncia focal, ou aproximando, ou distanciando as lentes da superfcie sensorial. Alm disso, suas caractersticas intrnsecas e extrnsecas devem ser reconhecidas por um processo chamado calibrao, que ser melhor explicado mais adiante, na sesso 2.3.2. Grosso modo, a calibrao determina parmetros da cmera que permitem corrigir distores, bem como determinar como a cmera estava posicionada, ou ainda, como as lentes estavam ajustadas. A funo arParamLoad recupera os parmetros salvos em um processo anterior de calibrao. Para isso, fornecido o caminho e o nome do arquivo contendo estes parmetros e a varivel contendo a estrutura lida desse arquivo. Esta estrutura no abriga todos os dados intrnsecos lidos pela configurao, tais como a largura e altura, que por sua vez, so includos em outra varivel de calibrao juntamente com os parmetros lidos. Este agrupamento realizado pela funo arParamChangeSize e logo aps, a funo arInitCparam carrega estes parmetros em uma varivel alocada em memria, podendo ser exibidos com a funo arParamDisp. A cmera finalmente configurada com estes parmetros, chamando-se a funo argInit, junto do qual so indicados alguns modos de exibio, tais como a magnificao da imagem a ser exibida na tela, opes de tela cheia, entre outras. No lao principal, a primeira instruo executada a de aquisio de um quadro. Esta aquisio ocorre na chamada da funo arVideoGetImage, que retorna um ponteiro de memria para o local onde a imagem adquirida est armazenada. Esta chamada ocorrer neste lao, at que a aplicao termine. O 29

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

ponteiro de memria no define uma estrutura matricial da imagem. Na verdade, preciso utilizar a informao das dimenses de largura e altura recuperadas na configurao para reconhecer esta estrutura. Alm disso, as informaes sobre o nmero de canais de cores devem ser conhecidas antecipadamente. Geralmente as cmeras permitem que se configure estas caractersticas em uma GUI, exibida durante o processo de inicializao. Se a cmera disponibilizar a imagem em 3 canais de cores, com 256 nveis para cada canal, preciso ter em mente que os dados estaro agrupados em pixels, cada um ocupando 3 bytes. Uma imagem que tivesse 320 pixels na largura e 240 pixels na altura, nesse formato de 3 canais de cores, teria ento 320 240 3 = 230.400 bytes ou 225 Kbytes. possvel tambm que, alm dos canais de cores, haja um canal de transparncia, conhecido como canal alfa. Neste caso, a imagem ficaria um pouco maior, ocupando 300 Kbytes. Bem maior que os 75 Kbytes, se a imagem tivesse apenas um canal monocromtico. A ordem em que estas informaes de cores aparecem tambm importante para que se consiga processar a imagem do vdeo. Em formatos de 4 canais, h modos BGRA, para os quais o canal azul (B) o primeiro byte do pixel, o canal verde (G) o segundo, o canal vermelho (R) o terceiro e o canal alfa (A) o quarto. Outro formato comum o RGB, cuja ordem a mesma da sigla. Maiores detalhes sobre espaos de cores podem ser encontrados em [Sharma, 2003; Poynton, 1995; Jack, 2005]. Uma vez obtido o ponteiro para a imagem com a funo arVideoGetImage, o processamento torna-se a tarefa de reconhecer ou identificar os pixels nesta estrutura. Por exemplo, se o objetivo for reconhecer um objeto vermelho na imagem adquirida e, sabendo-se que um quadro de imagem esteja no formato BGRA, tudo o que necessrio fazer percorrer cada um dos pixels, ou seja, grupos de 4 bytes, e verificar se o valor do canal R uma vez e meia maior que os canais B e G, por exemplo. Claro que, 30

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

dependendo das caractersticas do ambiente em que a cmera se encontra, e tambm da intensidade do vermelho do objeto que se quer reconhecer, ao invs de uma vez e meia, talvez seja melhor usar um fator maior ou menor que 1.5. Ao longo das discusses a seguir, apenas para efeito de simplicidade, os objetos de interesse sero vermelhos. Para realizar experimentos, essa restrio pode at ser vlida e til. Contudo, para se conseguir um rastreamento mais robusto recorre-se a imagens formadas por fotossensores de radiao fora do espectro visvel. A mais comum delas o infra-vermelho (IR) e a imagem formada por este tipo de radiao tipicamente monocromtica [Dorfmller, 1999; Sato et al., 2000; Reitinger et al., 2004]. Portanto, para aplicar as abordagens discutidas neste trabalho, troque a deteco de pixels vermelhos pelo processo de limiarizao, que funciona como uma deteco de pixels brancos e, todo o restante continuaria vlido. Existem dois grandes grupos de solues usando IR: (a) um dispositivo que reflete bastante as radiaes produzidas por uma fonte; (b) um dispositivo que emite ativamente a radiao. As fontes de IR so LEDs (Diodos Emissores de Luz), e os materiais IR-reflexivos so pelculas construdas especialmente para esse fim [Dorfmller, 1999]. As cmeras de IR possuem fotossensores mais sensveis a esse tipo de radiao. Embora as cmeras convencionais construdas com tecnologia CMOS tenham sensibilidade radiao IR, elas precisam de filtros para que a luz visvel no participe da formao da imagem a ser rastreada [Johnson, 2007]. O Cdigo 2.1 mostra uma funo que identifica os pixels de um objeto vermelho em uma cena. Neste cdigo, os parmetros so: imPtr, o ponteiro para a imagem adquirida; rsPtr, o ponteiro para um vetor de inteiros com o mesmo nmero de pixels da imagem, para o qual cada elemento ter um valor 255, se o pixel na posio correspondente for reconhecido como vermelho, ou 0 caso

31

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

contrrio; W, o nmero de pixels na largura; H, o nmero de pixels na altura.


void redTracking(ARUint8 *imPtr, int *rsPtr, int W, int H) { int i, j; double mx, my, nv; mx = 0; my = 0; nv = 0; for (j=0; j < H; j++) for (i=0; i < 4*W; i+=4) { int sr = (int)(imPtr[i+j*4*W+2]); int sg = (int)(imPtr[i+j*4*W+1]); int sb = (int)(imPtr[i+j*4*W]); if ((sr > 1.6*sg) && (sr > 1.6*sb) && (sr > 100)) rsPtr[i/4+j*W] = 255; else rsPtr[i/4+j*W] = 0; } }

Cdigo 2.1. Cdigo de uma funo para identificar pixels vermelhos na memria do quadro adquirida com a biblioteca DSVideoLib.

Perceba que esta funo pressupe que a imagem ter 4 bytes por pixel e tambm que os bytes esto dispostos na ordem BGRA. O canal A ignorado e o critrio ad hoc para reconhecer um pixel como vermelho que o valor do canal R deve ser maior que 100 (cada canal pode assumir valores entre 0 e 255) e este mesmo valor deve ser 1.6 vezes maior que os canais G e B. O que o Cdigo 2.1 realiza a classificao dos pixels de uma imagem como vermelhos ou no. No entanto, para reconhecer um objeto da cena, que est sendo projetada nesta imagem, conveniente determinar uma representao para este objeto. Se o objetivo for reconhecer um objeto pontual vermelho, a representao mais conveniente um ponto nico, ou seja, 32

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

buscamos aqui a posio de um pixel deste objeto. Mas, qual? A funo do Cdigo 2.1, muito provavelmente, classificar muitos pixels desta imagem como vermelhos e, portanto, como pertencentes ao objeto de interesse. Uma soluo para este problema segmentar a imagem e usar representaes que propiciem a distino entre objetos de interesse e outros que no sejam relevantes para a aplicao. Para isso lana-se mo de tcnicas de anlise de formas para caracterizar os objetos [Costa et. al., 2000].

2.3. Modelos de Projeo


Modelo uma abstrao, ou seja, uma idealizao da realidade. A realidade de uma cmera, por exemplo, que o dispositivo fabricado pode distorcer a cena projetada, tanto na disposio dos pixels distribudos espacialmente na imagem, quanto das cores que podem no corresponder ao convencionado. Nesta seo ser apresentado o modelo de projeo em perspectiva. Este um modelo simples e corresponde a uma simplificao da geometria da cmera, chamado modelo pin hole, por no considerar as caractersticas das lentes [Ma et alli, 2004]. Retomando a Figura 2.2, o objetivo encontrar a equao de uma reta que passe pelos pontos pI e PO. Para isso, preciso relacionlos.

33

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Figura 2.4. Modelo de projeo em perspectiva mostrando a geometria da formao da imagem e os 3 pontos de interesse deste trabalho: PO, as coordenadas do objeto pontual na cena; PI, as coordenadas da projeo do objeto na imagem; e PC, o centro de projeo da cmera.

Na Figura 2.4 est ilustrada a geometria deste modelo onde, de um lado esto as coordenadas referentes ao objeto pontual PO e de outro as coordenadas do centro de projeo da cmera PC. Entre estes dois pontos, mas na mesma reta, est o ponto projetado na imagem PI. fcil perceber que h um conjunto de tringulos semelhantes. Em particular, os tringulos APCG e BPCH so semelhantes, assim como os tringulos APCC e BPCD. Portanto direto estabelecer a relao entre os tamanhos de segmentos de retas de acordo com (1). Se PC for adotado como a origem deste espao de coordenadas, ou seja, se PC =(0, 0, 0), obtem-se um relacionamento entre estas coordenadas, no qual o valor de f determina a proporcionalidade entre a posio desse objeto (inclusive seu prprio tamanho) e a posio de sua projeo na imagem. Em outras palavras, f um fator de escala entre o objeto e sua imagem. Desenvolvendo algebricamente estas propores triangulares e reconhecendo nos segmentos de reta destes tringulos as

34

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

respectivas coordenadas de um sistema cuja origem PC, ento o relacionamento pode ser escrito como (1). BH BD BPC x y f = = I = I = xO yO zO AG AC APC Destas propores resultam as duas equaes em (2). (1)

y y xI xO = e I = O f zO f zO

(2)

Este modelo ficaria mais sinttico se fosse representado na forma matricial (3).
xI f y = z I C O xO y O C

(3)

A representao do modelo de projeo por coordenadas homogneas particularmente til, pois neste sistema de coordenadas um ponto em um plano representado como uma linha no espao. Qualquer representao em coordenadas cartesianas, para ser transformada em coordenadas homogneas, deve ter uma dimenso a mais que escale as dimenses originais. No exemplo em (4), um ponto como coordenada cartesiana em duas dimenses transformado em um ponto como coordenada homognea, com as dimenses originais acrescidas de um fator de escala w [Schalkoff, 1989].
x / w x x y / w = y y C 1 H w H

(4)

Analogamente, para um ponto de trs dimenses em coordenadas cartesianas, o exemplo (5) mostra a transformao para coordenadas homogneas usando o fator de escala w.

35

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

x / w x x y / w y = y z / w z z C 1 H w H

(5)

Perceba que as coordenadas com fator de escala normalizado (w=1) ou no, representam o mesmo ponto. Voltando ao relacionamento entre pI e PO, observe que (3) poderia ser reescrito em coordenadas homogneas de acordo com (6).
f xI y = 0 zO I 1 H 0 0 f 0 x 0 0 O f yO z p = 0 0 0 O I z 0 1 0 O 1 H 0 f 0 0 0 0 0 PO 1 0

(6)

A profundidade do objeto (zO) que multiplica pI pode ser interpretada como um fator de escala, ou seja, uma constante que pudesse ser arbitrariamente definida, pois o que possvel se saber sobre a posio onde est o objeto de interesse que ele reside sobre a linha . O modelo acima pode ainda desmembrar a matriz de projeo (7), isolando o modelo de projeo, representado pela matriz O do parmetro intrnseco envolvido, que por enquanto apenas a distncia focal f e representado pela matriz Kf.

(7)

Tudo o que preciso para calcular a equao de uma reta um par de pontos. No nosso caso, teremos que conhecer PC e PI. Se PC a origem adotada, ento PC=(0, 0, 0). Por sua vez, PI resultante da identificao do rastreamento da projeo do objeto sobre a imagem (veja Seo 2.2), acrescida da coordenada zI=f. As
36

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

coordenadas de PI so facilmente reconhecidas no plano da imagem, contudo preciso transformar esta posio de pixels em coordenadas de um sistema que deve incluir o objeto. Alm disso, o modelo deve incorporar as caractersticas da lente da cmera. As retas 1 e 2 da Figura 2.5 devem residir em um nico espao de coordenadas, pois no cruzamento entre elas que estar o objeto. Portanto, necessrio encontrar uma referncia nica para as duas cmeras. sobre isso que trataremos na prxima seo.

Figura 2.5. Modelo de projeo binocular que obedece a restrio epipolar. Observe que o plano 1, contendo a linha base e a reta 1, e o plano 2, contendo a linha base e a reta 2, so coincidentes.

2.3.1. A Restrio Epipolar

Se a cmera estiver apontada para o objeto de interesse, ou melhor, se o objeto de interesse estiver dentro do campo de viso da cmera, ento possvel calcular uma reta que passe pelo centro de projeo (PC) e pela projeo do objeto na imagem (PI), de acordo com a referncia da cmera (origem em PC). O prximo passo colocar outra cmera, cujo campo de viso inclua o objeto de

37

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

interesse. Porm ainda falta: 1) estabelecer a restrio epipolar e tambm 2) encontrar uma referncia nica. A linha que liga os dois centros de projeo das duas cmeras chamada linha-base. Se duas retas residem em um plano, ento fcil perceber que a reta passando pela linha-base e aquela passando pelo centro de projeo (PC) e pelo objeto (PO) residem em um plano, chamado plano epipolar (veja Figura 2.5). A restrio epipolar estabelece que os planos de cada cmera devem ser coincidentes, ou de outra forma, as trs retas: a que passa por PC1 e PO1, a que passa por PC2 e PO2 e a que passa pela linha-base devem pertencer a um mesmo plano. No final das contas, o que esta restrio impe que as linhas dos objetos se cruzem. Veja na Figura 2.5, que os eixos das cmeras devem tambm residir em um mesmo plano.

Figura 2.6. Modelo de projeo binocular que no obedece a restrio epipolar. Observe que o plano 1, contendo a linha base e a reta 1, e o plano 2, contendo a linha base e a reta 2, so distintos.

38

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Para garantir essa restrio, ou pelo menos minimiz-la, preciso criar um mecanismo que possa medir a distncia d12 entre as duas retas (1 e 2) dos objetos de cada cmera, ou ento construir uma montagem suficientemente precisa e acurada, que permita localizar a cmera em ngulos e posies fixas e mensurveis (veja a Figura 2.6). A alternativa proposta neste trabalho usar, como referncia comum, um marcador. Embora o ARToolkit recupere a posio do marcador com pouca preciso, este exerccio permitir que se prescinda de uma estrutura montada em uma trave ou mecanismos que assegurem o posicionamento e a pose das cmeras. O sistema de coordenadas do marcador obtido com o rastreamento desse marcador, do qual identificado, na imagem, aquele objeto mais similar a um quadrado e ento, seus quatro cantos so extrados. Cada um destes quatro cantos so origens de 3 vetores nas direes dos outros 3 cantos. Esta abordagem exposta com mais detalhes em [Kato et. al., 1999]. No ARToolkit a matriz que transforma o sistema de coordenadas, cuja origem o centro de projeo da cmera, no sistema de coordenadas com origem no centro do marcador calculada pela funo arGetTransMat. Para resolver o problema deste trabalho preciso, para cada cmera, encontrar a representao dos pontos correspondentes ao centro de projeo (PC1 e PC2) e projeo do objeto na imagem (PI1 e PI2). Desta maneira, residindo em um sistema de coordenadas nico esto as duas retas cujo cruzamento seria a posio procurada.

39

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Figura 2.7. Modelo de projeo binocular com um ponto de referncia comum calculado a partir de um marcador (PM).

Na verdade, no to simples assim, pois se estivssemos procurando este cruzamento, seria pouco provvel encontr-lo, pois dificilmente conseguiramos um posicionamento de cmeras que obedecesse restrio epipolar. Por isso, o que possvel calcular a distncia d12 (veja Figura 2.6) entre as duas retas. Esta distncia ser tanto melhor quanto menor e, ainda pode ser utilizada como uma indicao de qualidade do rastreamento. Para calcular d12, preciso recorrer a dois pontos da reta 1 e dois de 2, representados aqui como vetores. Um dos vetores em r r 1 pode ser PC1 ( p11 ) e o outro PI1 ( p12 ). Analogamente para 2, PC2 r r ( p21 ) e PI2 ( p22 ) podem ser os vetores utilizados [Goodman et. al., 2004].

40

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

2
Figura 2.8. Distncia entre duas retas que no se cruzam.

Inicialmente representa-se as retas 1 e 2 conforme uma r r reta no espao tridimensional no qual residem p11 , p12 e um ponto r r r r pa qualquer de 1 e p21 , p22 e um ponto pb qualquer de 2. Estas retas tambm so parametrizadas por um coeficiente de inclinao ma e mb, respectivamente para 1 e 2. As equaes para as duas retas podem ser visualizadas em (8).
1 : pa = p11 + ma ( p12 p11 ) r r r r 2 : pb = p21 + mb ( p22 p21 )
r r r r

(8)

A ilustrao da Figura 2.8 mostra que estas retas no necessariamente se cruzam e, portanto, calcular d12 , de fato, calcular a distncia entre elas. A distncia entre duas retas definida pelos pontos de cada uma destas retas, pelos quais seja possvel construir um segmento de reta perpendicular a ambas, denotada como r.
r r r r ( pa pb ) ( p12 p11 ) = 0 r r r r ( pa pb ) ( p22 p21 ) = 0

(9)

r r Na representao apresentada, pa e pb so os dois vetores que, agora, poderiam ser impostos como representantes destes dois pontos. Portanto, tomando-se os vetores resultantes das diferenas r r r r r r r r entre pa e pb ( pa pb ) em r, entre p12 e p11 em 1 ( p12 p11 ) e entre r r r r p22 e p21 em 2 ( p22 p21 ), impe-se as restries da perpendicularidade entre as retas 1 e r; e entre 2 e r. Desta

41

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

maneira, em (9) os produtos escalares entre os vetores diferena que direcionam r e 1 devem ser nulos, assim como os que direcionam r e 2.
r11 v21 = ( p11 p21 ) r 22 v21 = ( p22 p21 ) r12 v11 = ( p12 p11 )

(10)

Manipulando algebricamente a expresso resultante da substituio de (8) em (9) e assumindo os trs vetores obtidos pela diferena entre os pontos das retas 1 e 2 em (10), possvel chegar ao valor de ma, conforme (11).
r r r r r11 r12 r 22 r 22 (v 11 v 22 )(v 22 v 12 ) (v21 v11 )(v21 v21 ) ma = r21 r21 r21 r11 r 22 r12 r 22 r12 12 12 22 22 (v11 v11 )(v21 v21 ) (v21 v11 )(v21 v11 )

(11)

O valor de mb obtido a partir do valor de ma e tambm dos vetores diferena em (10), como pode ser visto em (12).
mb = r11 r 22 r12 r 22 (v21 v21 ) + ma (v11 v21 ) r 22 r 22 (v21 v21 )

(12)

r r Uma vez obtidos ma e mb, para encontrar pa e pb basta apenas substitu-los em (8). O valor de d12 nada mais que o r r tamanho (ou mdulo) do vetor pa pb , como est mostrado em (13).

r r d12 = pa pb

r r r r = ( pa pb ) ( pa pb )

(13)

Ao final, as coordenadas do objeto pontual rastreado podem r r ser escolhidas como sendo pa ou pb , ou ainda o ponto mdio.
2.3.2. Consideraes sobre Calibrao de Cmeras

Cmeras so dispositivos totalmente dependentes de instrumentos pticos que, por suas caractersticas de fabricao, ou por sua interao com o operador, ou ainda pelas condies ambientais, podem distorcer a projeo sobre a superfcie fotossensorial. Na tentativa de corrigir estas distores, a formao da imagem sobre 42

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

as cmeras idealizada considerando algumas caractersticas que sejam conhecidas e que possam reduzir o erro de suas projees. O modelo de projeo em perspectiva de uma cmera pin hole uma destas idealizaes (veja Seo 2.3), mas como o prprio nome diz, no considera o uso das lentes. Veja bem que em (7) a matriz de projeo foi desmembrada em duas: Kf, a matriz de calibrao e O, a matriz de projeo. Kf considerava, naquela seo, apenas a distncia focal e, portanto, um objeto mais distante apareceria f vezes menor, quando projetada sobre a superfcie fotossensorial. Outras caractersticas, no entanto, podem ser consideradas, tais como o tamanho do pixel, a distoro radial ou qualquer outro parmetro que caracterize a cmera. Claro que, quanto mais parmetros forem considerados, mais complexo o modelo e mais difcil ser tambm calibrar a cmera. Dependendo do parmetro, nem sempre uma matriz Kf 33 ser suficiente para comport-los. Para o propsito deste trabalho, o processo de calibrao de cmeras resume-se em encontrar os parmetros da cmera e displos na forma matricial Kf 33, para que se corrija a posio pI, ainda no sistema de coordenadas cuja referncia o centro de projeo da cmera. Existem muitos processos de calibrao de cmeras, uns muito simples outros nem tanto [Silva, 2003]. Tudo depende dos requisitos de qualidade para a resposta. H aplicaes que so crticas quanto a preciso, outras nem tanto. O ARToolkit disponibiliza um processo de calibrao que salva os parmetros em um arquivo. Este processo se encontra descrito em [Consularo et al, 2004]. um processo simples, porm trabalhoso e sem possibilidade de contorn-lo. Uma vez com a cmera calibrada, possvel confiar melhor nas coordenadas de pI obtidas, porm sempre tendo em mente que a cmera um instrumento e todo e qualquer instrumento apresenta incertezas. 43

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

2.4. Usando o ARToolkit para visualizar o rastreamento


Modelo de projeo em perspectiva, calibrao de parmetros intrnsecos e extrnsecos, tudo isso j faz parte da implementao do ARToolkit e est disponvel na forma de bibliotecas. A biblioteca ARToolkit para Realidade Aumentada, ARlib, implementa o modelo de projeo e a prpria calibrao, pois estas tarefas so exigidas para a deteco da posio e da pose de um marcador. O marcador um quadrado preto em fundo branco, que reconhecido na chamada da funo arDetectMarker, cujos parmetros de entrada so: um ponteiro para os pixels da imagem de entrada e um limiar para distinguir o fundo de objetos. A sada ocorre passando-se duas referncias: um ponteiro para uma estrutura, que conter dados sobre o marcador reconhecido, e um outro ponteiro para um valor inteiro que receber o nmero que identifica o marcador reconhecido [Lamb, 2006]. A funo MainLoop, no exemplo exview disponvel nas distribuies do ARToolkit, abriga uma seqncia de tarefas para cada quadro em processamento: 1) os dados da imagem do quadro que foi capturado so apontados por um ponteiro obtido pela chamada da funo arVideoGetImage; 2) deve ser realizado o processamento da imagem deste quadro, tal como aquele do Cdigo 2.1; 3) se este processamento implicar em alterao desta imagem, esta alterao deve ocorrer logo aps o processamento; 4) configuraes sobre o modo como o OpenGL ser utilizado; 5) a imagem aumentada com os objetos 3D exibida chamando-se a funo argDispImage; 6) um marcador buscado na imagem com a chamada de arDetectMarker; 7) se o marcador foi detectado, ento suas posio e pose so recuperadas com a chamada da funo arGetTransMat; 8) uma cena desenhada com o OpenGL, cena esta contendo um objeto sobre o marcador representando os 3 eixos ortogonais de seu espao, uma cmera na posio e na pose

44

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

relativa ao marcador detectado e uma superfcie plana, coplanar superfcie do marcador. Com o propsito de ilustrar este trabalho, o exemplo do exview foi desmembrado em duas aplicaes: uma servindo apenas como rastreador (ARTracker) e outra servindo como um visualizador 3D da geometria do rastreamento (ARViewer). O ARTracker funciona como um servidor em uma arquitetura clienteservidor (veja Figura 2.9), que pode ser requisitado para enviar dois tipos de informao, i) os parmetros de cmera: a matriz de calibrao 33 (Kf), a matriz de projeo 34 (MT) e os fatores de distoro 14 (D); ii) as coordenadas atualizadas da projeo do objeto sobre a imagem (xI, yI). O servio realizado por uma thread iniciada quando a aplicao tambm iniciada. Na linha de comando, se nenhum nmero de porta for informado, assume-se o identificador 1200. Se dois computadores estiverem, cada um com uma cmera conectada, o ARTracker deve ser executado em cada um deles.
sx Kf = 0 0 0 sy 0 ox oy 1

(14)

A matriz de calibrao formada por parmetros dispostos de acordo com (14), onde sx e sy so os fatores de magnificao da imagem nas direes x e y, respectivamente e ox e oy so as coordenadas do centro de projeo na imagem. A matriz de projeo MT o operador de rotao e translao que, transforma o sistema de coordenadas da cmera para o sistema de coordenadas cuja origem o centro do marcador. Ela obtida com a chamada da funo arGetTransMat, que toma como entrada as informaes sobre o marcador (tamanho, centro, identificador, entre outras). O fator de distoro D um vetor

45

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

formado por 4 valores: as coordenadas cx e cy do centro de projeo da imagem, a distncia focal (f) e a taxa de aspectos do pixel. O ARViewer (veja Figura 2.9) pode executar em um terceiro computador, ou ainda como uma tarefa de um dos dois computadores executando o ARTracker. Convm salientar que, se a conexo de duas cmeras em um mesmo computador for possvel, os trs processos, ou seja, os dois ARTrackers para as cmeras esquerda e direita, mais o ARViewer podem operar em um nico computador, tomando-se o cuidado de adotar identificadores diferentes para a porta de cada ARTracker. O ARViewer um cliente de dois computadores ligados, cada um a uma cmera que requer, na sua chamada, os endereos IP de cada um dos computadores executando os ARTrackers, acompanhados de suas respectivas portas. Novamente, duas threads executam estas requisies continuamente. Nestas threads podem ser requisitados continuamente os parmetros de cmera e as coordenadas do ponto rastreado na imagem, ou ento apenas as coordenadas do ponto rastreado, se os parmetros da cmera j foram anteriormente requisitados. Uma vez com os dados requisitados, as duas cmeras so desenhadas em uma cena OpenGL que j contm um plano de referncia do marcador, representada por uma superfcie plana quadriculada e um eixo ortogonal sobre a origem. As cmeras so visualizadas em conjunto, com linhas que indicam: o seu eixo ptico, o frustrum, e uma linha passando pelo centro de projeo da cmera e pela coordenada da projeo do objeto pontual na imagem (veja Figura 2.1a). Estas linhas so desenhadas conforme recebem os dados de cada requisio, ficando limitada ao trfego da rede e tambm de suas caractersticas.

46

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Figura 2.9. Execuo do ARTracker mostrando as duas cmeras conectadas, cada uma a um computador (coluna da esquerda). Execuo do ARViewer (coluna da direita) mostrando o eixo ortogonal sobre o plano quadriculado que representa o eixo de coordenadas de referncia do marcador. Os frustrums de cada cmera tambm so exibidos, bem como as retas do eixo ptico de cada cmera, 1 e 2.

Depois de receber os dados de cada instncia do ARTracker, ou seja, de posse dos parmetros da cmera e das coordenadas pI da projeo do objeto sobre a imagem, o problema passa a ser apenas encontrar os pontos PC e PI de cada cmera, de acordo com o sistema de coordenadas do marcador. Para se obter o PC basta recuperar a ltima coluna da matriz de projeo MT. Note que existe uma matriz de projeo para cada cmera. A informao que se tem sobre os pontos pI, no entanto, ainda residem no plano da imagem e, portanto, so bidimensionais com coordenadas (xI, yI). preciso, antes de tudo corrigir sua distoro aplicando-se a matriz de calibrao, ou seja, calcular ( x , y ) de acordo com (15). I I

47

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

x = f I

( xI c x )

y = f I

( yI c y )

(15)

Uma vez corrigida a distoro, deslocadas as coordenadas do centro, a coordenada z deve ser determinada como f, pois no I sistema de coordenadas da cmera a essa distncia que o plano da imagem se encontra do ponto PC. Portanto, agora as coordenadas do ponto projetado na imagem so ( x , y , f ) . A matriz de projeo I I MT , na verdade, o operador que transforma o sistema de coordenadas da cmera no sistema de coordenadas do marcador. No entanto, o que queremos justamente o inverso, ou seja, obter o ponto PI de acordo com o sistema de coordenadas do marcador. Portanto, invertendo-se MT e aplicando este resultado coordenada homognea de PI (ainda em coordenadas da cmera) obtemos suas coordenadas tendo como referncia o marcador, conforme (16).
xI r00 1 PI = M T PI y I = r10 z I r20

r01 r11 r21

r02 r12 r22

x tx I y ty I f tz 1

(16)

A inverso de uma matriz 3x4 no nica e tambm no um processo trivial. O ARToolkit disponibiliza uma funo arUtilMatInv, cuja entrada uma matriz 3x4 e sua sada outra matriz 3x4, ambas como parmetros por referncia. Com PC e PI calculados para cada cmera, encontra-se o cruzamento entre as duas retas de cada cmera, como explicado na Seo 2.3.1.

2.5. Consideraes Finais


Neste trabalho, foram apresentados didaticamente, os passos necessrios para o rastreamento de pontos em um espao real por um arranjo binocular de cmeras, tendo como referncia um marcador detectado pelo ARToolkit.

48

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

O trabalho proposto permite estabelecer uma mtrica de desempenho, que pode ser realimentada para minimizar a distncia d12, na tentativa de satisfazer a restrio epipolar. A construo de dispositivos de rastreamento para realidade virtual e aumentada usando cmeras pode partir das tcnicas simples explicadas neste trabalho. Se, por exemplo, solues algortmicas do problema da correspondncia entre pontos das duas imagens, forem adicionadas, possvel construir dispositivos compostos, possibilitando um rastreamento mais rico. Cmeras menos limitadas podem ser utilizadas, muito provavelmente tornando mais precisas e rpidas as respostas. O uso de redes de alta velocidade para a comunicao das posies e parmetros entre os computadores permitiria garantir dispositivos mais confiveis. A garantia, por exemplo, oferecida pelo sincronismo entre as cmeras fator determinante para uma maior confiabilidade. O espao de interao do dispositivo limitado pela interseco dos frustrums das cmeras. Um dispositivo que permitisse a deteco do volume dessa interseco entre frustrums e, posteriormente, realimentasse dispositivos de movimentao da cmera (vergncia, proximidade e inclinao) poderia resolver este problema, na busca de mais robustez da resposta. Cmeras com campos de viso mais amplos poderiam ser experimentadas para contrapor a construo de um dispositivo para movimentar as cmeras, conforme a soluo do pargrafo anterior. Como se percebe, este tipo de trabalho ponto de partida para a construo de dispositivos de interao baseados em cmera, com aplicaes que tipicamente exijam pouca preciso na interao, como o caso de interfaces com o usurio.

49

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

2.7. Referncias Bibliogrficas


Cant, C. (2005) Writing Windows WDM Device Drivers, Academic Press, 580pp. Chalmond, B. (2003) Modeling and Inverse Problems in Image Analysis, Springer, 328pp. Consularo, L. A.; Coelho, R. C.; Fernandes, M. M. (2004) Tutorial sobre o ARToolKit, http://www.consularo.com/artoolkit, (visitada em 04/03/2007). Costa, L. F.; Cesar Jr., R. M. (2000) Shape Analysis and Classification. Theory and Practice, CRC Press, 659pp. Dirks, R. (2003) Video for Linux Two, http://www.thedirks .org/v4l2/, (visitada em 04/03/2007). Dorfmller, K. (1999) Robust Tracking for Augmented Reality using Retroreflective Markers, Computers and Graphics, v23, p795-800. Goodman, J. E.; ORourke, J. (2004) Handbook of Discrete and Computational Geometry, 2a ed., Chapman and Hall/CRC Press, 1512pp. Jack, K. (2005) Video Demystified. A Handbook for Digital Engineer, Newnes, 927pp. Johnson, G. (2007) How to make a webcam work in infrared, http://www.hoagieshouse.com/IR/, (visitada em 04/03/2007). Kato, H.; B., Mark (1999) Marker Tracking and HMD Calibration for a Video-based Augmented Reality Conferencing System, Proceedings of the 2nd IEEE and ACM International Workshop on Augmented Reality, p85-94. Lamb, P. (2006) ARToolKit Documentation, http://artoolkit. sourceforge.net/apidoc/, (visitada em 04/03/2007).

50

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Lamb, P. (2007) ARToolKit Developer Page, http://source forge.net/projects/artoolkit, (visitada em 04/03/2007). Lamb, P. (2007) ARToolKit Home Page, http://www.hitl. washington.edu/artoolkit, (visitada em 04/03/2007). Ma, Y.; Soatto, S.; Kosecka, J.; Sastry, S. (2004) An Invitation to 3D Vision. From Images to Geometric Models, Springer, 526pp. Pintaric, T. (2003) DSVideoLib, http://sourceforge.net/ projects/dsvideolib, (visitada em 04/03/2007) Point Grey Research (2006) Dragonfly Express, http://www.pt grey.com/products/dx, (visitada em 04/03/2007). Poynton, C. (1995) A Guided Tour of Color Space, Proceedings of the SMPTE Advanced Television and Electronic Imaging Conference, p165-170. Reitinger, B.; Bornik, A.; Beichel, R.; Werkgartner, G.; Sorantin, E. (2004) Augmented Reality based Measurement Tools for Liver Surgery Planning, Bildverarbeitung fr die Medizin (BVM), Springer, p274-278. Sato, Y.; Kobayashi, Y.; Koike, H. (2000) Fast Tracking of Hands and Fingertips in Infrared Images for Augmented Desk Interface, Proceedings of Fourth IEEE International Conference on Automatic Face and Gesture Recognition, p462467. Schalkoff, R. J. (1989) Digital Image Processing and Computer Vision, John Wiley and Sons, 489pp. Sharma, G. (2003) Digital Color Imaging Handbook, CRC Press, 764pp. Silva, L. C. (2003) Mtodo Robusto para a Calibrao de Cmeras em Estereofotogrametria, Tese de Doutorado COPPE UFRJ, 117pp. 51

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Captulo

3
Tcnicas de Interao para Ambientes de Realidade Virtual e Aumentada
Judith Kelner e Veronica Teichrieb Grupo de Pesquisa em Realidade Virtual e Multimdia, Centro de Informtica Universidade Federal de Pernambuco (GRVM CIn UFPE) Av. Prof. Moraes Rego, S/N Prdio da Positiva 1 Andar Cidade Universitria 50670-901 Recife PE Brasil {jk,vt}@cin.ufpe.br

Abstract Software usability is highly dependent on the supported interaction at the interface level. A number of techniques have been described in the literature, and some of those used in the context of virtual and augmented realities together with implementation aspects are presented in this chapter. Resumo A usabilidade de um software dependente das tcnicas de interao disponveis na sua interface. Vrias dessas tcnicas encontram-se descritas na literatura, e algumas usadas nos ambientes de Realidade Virtual e Aumentada, com uma breve descrio sobre sua implementao, so descritas neste captulo.

52

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

3.1. Introduo
A interao entre pessoas existe desde o surgimento das primeiras civilizaes humanas. Diferentes culturas utilizaram diversas formas para a troca de informaes, numa evoluo contnua que teve incio com os primeiros desenhos rupestres nas cavernas, passando pelos sinais de fumaa, os sons dos tambores, as pinturas nas telas, a imprensa escrita e falada, o telefone, a televiso e, finalmente, o computador e toda parafernlia tecnolgica existentes atualmente. No contexto de interface homem-mquina, interao a maneira com que o usurio se comunica com a aplicao, podendo esta comunicao ocorrer atravs de dispositivos ou de forma simblica [Schneiderman e Plaisant, 2004]. De acordo com Bowman, interao um mtodo que permite a um usurio realizar uma tarefa atravs da interface do usurio. Uma tcnica de interao inclui tanto componentes de hardware (dispositivos de entrada/sada) quanto de software. As tcnicas de interao utilizadas nos componentes de software so responsveis por mapear a informao de um dispositivo de entrada em alguma ao dentro do sistema, e por mapear a sada do sistema de forma que esta possa ser interpretada pelos dispositivos de sada [Bowman et al., 2004]. Existe um dito popular, que no se deve adquirir um livro apenas pela aparncia da sua capa. Isto pode ser vlido no contexto dos livros, mas considerando-se software, a experincia indica que vrios usurios deixam de usar um software sofisticado por causa de uma interface mal projetada e das dificuldades de interagir atravs da mesma. No incio da era computacional, no se deu muita importncia ao processo de interao homem-mquina (HCI). A prioridade era obter um processamento preciso dos dados. Com a evoluo e disseminao dos computadores pessoais cresceu a

53

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

necessidade de serem adotadas metodologias especficas para a HCI. Os usurios no esto dispostos a consumir seu tempo precioso com aplicaes que possuam interfaces que utilizam tcnicas primrias de interao. A busca por estratgias avanadas de interao contempla, atualmente, grande parte do tempo dos projetistas quando se inicia o processo de desenvolvimento de um novo software ou de um novo dispositivo. Inmeros so os benefcios que um bom projeto de interao pode agregar a um software. Entre estes, podem-se citar a usabilidade do sistema, menor curva de aprendizagem, localizao e uso de todas as potencialidades da aplicao, otimizao do tempo do usurio na busca pela informao, entre outros. Nas aplicaes que exploram o espao bidimensional (2D) as tcnicas de HCI j esto consolidadas e incluem as comumente encontradas nas interfaces do tipo WIMP - Windows, Icons, Menus and Pointing Device. Atravs desse tipo de interao os usurios normalmente podem gerenciar os sistemas operacionais, armazenar e gerenciar textos, apresentaes, bitmaps, udios, vdeos, entre outros. A interao via dispositivo de apontamento, ou simplesmente mouse, bastante explorada na maioria das interfaces projetadas para desktops 2D. De acordo com Trevisan, um dos aspectos centrais na HCI consiste em como combinar objetos reais e virtuais dentro de um ambiente real, de tal forma que os usurios possam realizar as suas tarefas e interagirem simultaneamente com os objetos reais e virtuais [Trevisan et al., 2002]. Utilizando os mtodos j consolidados de projetos de interfaces em ambientes 2D, o usurio ser levado a interagir com dois ambientes, um real e outro virtual, o que poder acarretar numa quebra do seu fluxo natural de interao, quando solicitado ora a interagir com o ambiente real ora com o mundo virtual. Como conseqncia destas dificuldades, os mtodos tradicionais no so vlidos para projetar e avaliar interfaces em ambientes tridimensionais (3D).

54

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Nas aplicaes de Realidade Virtual (VR) tcnicas especiais de interao que lidam com o espao 3D so demandadas. A interao pode ocorrer tanto no sentido usurio-aplicao, quanto no sentido aplicao-usurio. Como exemplos desta ltima, cenrios virtuais utilizados em VR podem dar retorno ao usurio atravs de dispositivos chamados hpticos. Neste caso, o usurio sente a reao do mundo virtual e pode reagir de forma diferente dependendo dos estmulos providos pela VR. Ainda considerando os ambientes de VR, deve ser avaliado se a interao ser no-imersiva, ou imersiva. Para os ambientes imersivos as tcnicas de interao introduzem novos paradigmas para o usurio, estimulando outros sentidos que normalmente no poderiam ser explorados em ambientes no-imersivos, como por exemplo, a viso estereoscpica [Bowman et al., 2004]. Nos ambientes de Realidade Aumentada (AR) a mudana ainda mais drstica, principalmente do ponto de vista do usurio, onde os computadores tradicionais com os seus dispositivos e interfaces j bem definidas praticamente no so mais utilizados. Com a introduo de alguns dispositivos especializados, tais como trackers e luvas de dados, resolvem-se problemas especficos para algumas aplicaes, mas estes dispositivos no podem ser reutilizados ou adaptados em outras reas de aplicao [Broll et al., 2005]. O design de tcnicas de interao visa trs objetivos principais: desempenho, usabilidade e utilidade. Desempenho diz respeito quo bem as atividades esto sendo realizadas pelo usurio e pelo sistema, em cooperao, alm de eficincia, preciso e produtividade. Usabilidade trata da facilidade em informar o sistema sobre as intenes do usurio, bem como a facilidade de uso e de aprendizado, alm do conforto do usurio. Utilidade mostra que a interao ajuda o usurio a atingir os seus objetivos, podendo focalizar na tarefa. A prxima seo descreve as principais tcnicas de 55

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

interao para interfaces 3D, apresentadas utilizando a classificao definida por Bowman (2004) para tcnicas comumente adotadas em ambientes de VR, alm de uma breve discusso sobre a adaptao destas tcnicas para ambientes de AR.

3.2. Mtodos e Tcnicas de Interao


Interao 3D crucial em sistemas de VR, assim como de AR. Nesta seo so apresentadas algumas tcnicas de interao 3D que foram, originalmente, desenvolvidas para ambientes virtuais. importante ressaltar que a maioria destas tcnicas pode ser adequadamente utilizada em ambientes de AR e Virtualidade Aumentada, com poucas ou sem adaptaes. As tcnicas de interao para VR foram classificadas em quatro categorias principais, de acordo com a tarefa realizada pelo usurio: tcnicas para seleo e manipulao, para controle do sistema, para navegao e de entrada simblica. Esta classificao foi definida em Bowman (2004), e tem sido amplamente aplicada pela comunidade de interface homem-mquina. 3.2.1. Manipulao 3D A efetividade das tcnicas de manipulao 3D depende das tarefas de manipulao para as quais elas so aplicadas. A mesma tcnica pode ser intuitiva e fcil de usar em algumas condies, porm inadequada em outras. necessrio que a interao seja realista, o que significa que o usurio, por exemplo, agarra e move o objeto virtual como manipularia esses objetos no mundo real. A tarefa de manipulao trata de seleo, ou seja, especificar um ou mais objetos a partir de um conjunto de objetos, para algum propsito. Alm disto, o usurio especifica propriedades de um objeto, como posio, orientao, escala, forma, textura e cor. Os objetivos da seleo so consultar um objeto, navegar at este objeto, tornar o objeto ativo e definir a manipulao a ser realizada. Por outro lado, os objetivos da 56

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

manipulao so posicionar objetos (design de objetos, agrupamento de objetos, layout do ambiente virtual), navegar pelo ambiente e realizar uma determinada ao. Muitas das tcnicas de manipulao podem ser usadas em combinao com tcnicas de interao para outras tarefas, no diretamente relacionadas com manipulao. Algo a observar que tcnicas de manipulao preservam a forma dos objetos. As tcnicas de interao para manipulao 3D so Apontamento, Manipulao Direta, Mundo em Miniatura, Agregao e Integrao e Manipulao 3D para Desktop. Cada uma destas categorias possui vrias tcnicas associadas. As caractersticas destas tcnicas so detalhadamente descritas em Bastos (2006). A Figura 3.1 apresenta a ferramenta DEMEditor, uma aplicao que permite a visualizao, manipulao e edio de superfcies 2D/3D construdas a partir de dados de sensoriamento remoto, coletados por radar [Teichrieb e Kelner, 2004]. Esta ferramenta utiliza a tcnica Widgets 3D (descrita em [Bastos et al., 2006]) como forma de interao com um dos objetos que compe o cenrio, um holofote, mostrado no canto inferior direito da figura. Quando o holofote selecionado, o widget se torna visvel, podendo ser transladado, e sua direo ou rea de iluminao pode ser modificada. A Figura 3.1a ilustra o holofote apagado; a caixa branca ao seu redor da Figura 3.1b, c e d significa que o usurio selecionou o holofote e o acendeu. Os retngulos (Figura 3.1b), crculos (Figura 3.1c) e eixos (Figura 3.1d) vermelhos indicam que o holofote foi selecionado no modo de translao, rotao e escala, respectivamente, de forma que o mesmo pode ser transladado para qualquer lugar no ambiente virtual, ou rotacionado em alguma direo ou escalado. 3.2.1.1. Consideraes sobre Implementao Uma questo bastante importante quando da implementao de 57

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

tcnicas de manipulao 3D como indicar um evento de seleo ou manipulao. A dificuldade aumenta quando o ambiente possui intersees entre objetos. Por isso, importante que o sistema fornea algum tipo de retorno para o usurio, que pode ser grfico, auditivo ou ttil, de forma que o mesmo saiba quando um objeto est selecionado e pronto para ser manipulado.

Figura 3.1. DemEditor: tcnica Widgets 3D, para manipulao 3D de objetos em aplicaes desktop. (Imagem cortesia Grupo de Pesquisa em Realidade Virtual e Multimdia da Universidade Federal de Pernambuco, 2006)

58

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Exemplos clssicos de retorno visual so o avatar da mo virtual e o avatar caneta, que representam a mo do usurio manipulando objetos na cena, ou ento uma caneta que pode ser usada para apontar para o objeto em questo. Uma abordagem bastante utilizada na implementao de tcnicas para manipulao a que especifica que o sistema possui uma lista dos objetos selecionveis, o que impede a seleo de objetos que no podem ser manipulados pelo usurio. A integrao da tcnica de seleo com a de manipulao tambm uma questo de implementao importante. Para iniciar a manipulao, a seleo deve ser desabilitada, e o estado da seleo deve ser informado durante a manipulao. Um aspecto da especificao da interface definir claramente o que acontece no sistema aps a manipulao. 3.2.2. Controle do Sistema Tcnicas de interao para controle do sistema servem basicamente para modificar o estado do sistema ou o modo de interao utilizado pelo mesmo. Normalmente, estas aes so realizadas atravs de comandos disponveis na interface. Comandos de controle do sistema muitas vezes so integrados com outras tarefas de interao, quando modificam o estado do sistema, ou com todas as outras atividades de interao disponveis no sistema, quando o usurio os utiliza para controlar o modo de interao a ser utilizado. Um exemplo clssico so comandos acessveis via menus, como salvar um arquivo, entre outros. As tcnicas de interao para controle do sistema so Menus Grficos, Comandos de Voz, Comandos de Gestos e Ferramentas. Estas categorias possuem vrias tcnicas associadas e uma descrio mais detalhada das mesmas encontra-se em Bastos (2006). A Figura 3.2 ilustra a utilizao de menus 2D adaptados para um cenrio 3D. Neste caso, o usurio pode utilizar o menu 59

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

como est habituado a faz-lo em aplicaes 2D, para diversas tarefas de manipulao de arquivos em um cenrio 3D. A figura apresenta um dos menus da aplicao mivaDesk [Teixeira et al., 2007].

Figura 3.2. mivaDesk: tcnica Menus 2D Adaptados, para controle de sistemas atravs de menus grficos. (Imagem cortesia Grupo de Pesquisa em Realidade Virtual e Multimdia da Universidade Federal de Pernambuco, 2006)

3.2.2.1. Consideraes sobre Implementao A implementao das tcnicas de controle do sistema deve facilitar o foco na tarefa a ser realizada pelo usurio, evitando que sua ateno seja desviada do objetivo inicial. Alm disto, importante usar uma referncia espacial consistente, posicionando corretamente os comandos no ambiente virtual. Este tipo de tcnica de interao fortemente embasado em entrada multimodal, permitindo o uso de voz, gestos, alm dos

60

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

menus grficos posicionados na cena. A utilizao destas modalidades variadas de entrada de dados deve ser cuidadosamente avaliada, de acordo com o domnio da aplicao e o perfil do usurio. 3.2.3. Navegao sabido que movimentao fsica tem uma influncia positiva nos nveis de presena relatados por usurios quando da interao em ambientes virtuais. neste contexto que so importantes as tcnicas de interao para navegao. O usurio, ao navegar pelo ambiente virtual, pode realizar aes como viajar (explorar) pela cena ou procurar um caminho especfico. Ao viajar (travel), o usurio se movimenta entre dois lugares, pela definio da posio (e orientao) do seu ponto de vista. Atravs desta ao o usurio pode realizar tarefas de explorao do ambiente virtual, de busca por algum local especfico do ambiente, e de manobra. No caso da busca, a posio do alvo pode ou no ser conhecida; quando a posio no conhecida, a busca chamada ingnua (naive), e quando conhecida e o usurio quer encontrar novamente um local especfico diz-se que uma busca privilegiada (primed). Esta tarefa de navegao amplamente realizada nas aplicaes. A ao conhecida como wayfinding, que permite procurar um caminho especfico, visa o uso e a aquisio por parte do usurio de conhecimento espacial para definir um caminho no ambiente. O auxlio de pistas e dicas disponveis no ambiente virtual facilita a realizao desta tarefa. Usurios possuem habilidades de orientao diferentes, o que deve ser levado em considerao quando da utilizao de tcnicas para navegao. As tcnicas de interao para navegao so Locomoo Fsica, Direcionamento, Planejamento de Rotas, Baseadas em Alvo, Manipulao Manual, Travel-by-Scaling, Orientao do Viewpoint, Especificao da Velocidade e Controles Integrados da 61

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Cmera para Ambientes Desktop 3D. Em Bastos (2006) encontrase uma descrio detalhada de cada uma destas categorias com suas tcnicas associadas, bem como suas caractersticas. A Figura 3.3 ilustra o uso da tcnica Zoomback para navegao por um cenrio de planejamento de poos de petrleo, gerado pela ferramenta Vis-Petro [Barros et al., 2006]. Esta navegao realizada escolhendo o ponto de vista desejado no boto Sel da barra de ferramentas lateral, que levar o usurio diretamente ao local definido por aquele ponto de vista. Esta tcnica permite explorar o cenrio sob diversos ngulos de visualizao; na figura o usurio tem uma viso em perspectiva do cenrio completo.

Figura 3.3. Vis-Petro: tcnica Zoomback, para navegao baseada em alvo. (Imagem cortesia Grupo de Pesquisa em Realidade Virtual e Multimdia da Universidade Federal de Pernambuco, 2006).

62

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

3.2.3.1. Consideraes sobre Implementao Existe uma quantidade bastante variada de tcnicas de interao para navegao, disponveis na literatura. Por isso, a simplicidade do uso da tcnica deve ser levada em considerao; por exemplo, tcnicas baseadas no alvo so simples para se movimentar at um objeto especfico, enquanto tcnicas de direcionamento so mais apropriadas quando se deseja realizar uma busca. 3.2.4. Entrada Simblica Existem diversas situaes onde entrada simblica em aplicaes seria til, tais como deixar uma carta, uma anotao precisa para o projetista em um passeio arquitetnico, entrar nomes de arquivos para operaes de abrir/salvar, adicionar nomes a objetos virtuais, especificar propriedades numricas (por exemplo, largura e posio) e especificar parmetros em uma visualizao cientfica. Estas aplicaes podem ser generalizadas em cenrios que envolvem mundos virtuais imersivos ou mundos aumentados. Nestes mundos uma tcnica comum de entrada de texto/nmero demandada (entrada via teclado, por exemplo), e uma entrada de voz somente no seria suficiente para o usurio interagir com o mundo. Tcnicas de entrada simblica para interfaces 3D so diferentes de tcnicas tradicionais (por exemplo, teclado) pelas diferenas inerentes entre interfaces 3D (no desktop) e 2D. Plataformas mveis usam entrada baseada em caneta, na qual o usurio escreve caracteres, smbolos ou outros gestos com uma caneta no dispositivo. Algumas dessas tcnicas j foram usadas em interfaces 3D, utilizando este tipo de dispositivo para interao. As tcnicas de interao para entrada simblica so Baseadas em Teclado, Baseadas em Caneta, Baseadas em Gestos e Baseadas na Fala. Estas categorias e suas caractersticas so detalhadamente descritas em Bastos (2006).

63

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

A Figura 3.4 ilustra um teclado virtual que aplica a tcnica de interao Teclado Soft para entrada de texto na aplicao mivaDesk [Teixeira et al., 2007]. O usurio interage com o mesmo simulando o toque nas teclas de um teclado convencional colocando o cursor controlado por um tracker sobre a tecla virtual desejada e fazendo uma postura de seleo com uma luva.

Figura 3.4. mivaDesk: tcnica Teclado Soft, para entrada simblica baseada em teclado. (Imagem cortesia Grupo de Pesquisa em Realidade Virtual e Multimdia da Universidade Federal de Pernambuco, 2006).

3.2.5. Tcnicas de Interao Especficas para Realidade Aumentada Tcnicas de interao especficas para interfaces de AR foram concebidas, a fim de aproveitar caractersticas inerentes deste tipo de interface, tais como a possibilidade de interao do usurio tanto com objetos virtuais quanto reais durante a utilizao da aplicao, e a mobilidade. 64

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Atualmente, ainda no existe um consenso, na literatura, sobre como estas tcnicas de interao devam ser adequadamente classificadas. No entanto, alguns autores publicaram propostas de classificaes, tais como Trevisan (2002), Bowman (2004) e Broll (2005). Nesta seo sero ilustradas algumas tcnicas de interao amplamente empregadas em aplicaes de AR, e ser traado um paralelo com suas classificaes correspondentes em VR. 3.2.5.1. Interfaces Tangveis Da mesma forma que as tcnicas de interao para manipulao utilizadas em VR permitem ao usurio selecionar e manipular objetos virtuais, em AR tem-se as interfaces tangveis. Esta tcnica permite a manipulao de objetos virtuais atravs da manipulao de objetos reais. Em interfaces tangveis os usurios manipulam objetos fsicos, ferramentas, superfcies ou espaos para interagir com as aplicaes. A forma como os usurios manipulam os objetos reais natural e intuitiva. Em sistemas de AR, os objetos fsicos so mapeados usando-se uma funo um-para-um com operaes sobre objetos virtuais. Para ilustrar, pode-se assumir como exemplo uma aplicao que disponibiliza um servio de leilo virtual no qual o usurio interage utilizando um cubo tangvel [Teichrieb et al., 2007]. Em leiles reais o arrematador provavelmente desejar ver o lote ou alguns de seus itens antes de finalizar o processo de compra. Ele se sentir confortvel se for possvel tocar os objetos com as mos e observar todos os seus detalhes. Dessa forma, o servio de leilo virtual foi desenvolvido permitindo ao usurio interagir com os itens do lote a ser leiloado, visualizando os mesmos em 360, alm de ser possvel escalar os objetos para uma visualizao mais detalhada, se for o caso.

65

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Rotacionando um cubo de marcadores em sentido horrio, o objeto escalado at o valor mais alto definido na aplicao, e para reduzir seu tamanho o usurio gira em sentido anti-horrio. A Figura 3.5 ilustra o usurio manipulando um item do lote, utilizando para isso um cubo tangvel cujas faces so marcadores fiduciais.

Figura 3.5. Interface tangvel para manipulao de objetos. (Imagem cortesia Grupo de Pesquisa em Realidade Virtual e Multimdia da Universidade Federal de Pernambuco, 2007)

3.2.5.2. Interfaces Baseadas em Gestos Este tipo de interface usa como entrada gesticulaes espontneas do usurio, mmicas e gestos simblicos. Um exemplo que ilustra esta tcnica, quando baseada em posturas (gestos estticos), uma aplicao onde o usurio veste um wearable computer e uma luva para interagir com a aplicao. A interao ocorre realizando diferentes posturas pr-

66

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

definidas para desempenhar tarefas, tais como abrir e fechar a mo (Figura 3.6). Gestos so identificados pelo uso de uma luva, que detecta diferentes nveis de presso para todos os dedos, e um tracker. A combinao da ativao de sensores de um ou mais dedos se configura num gesto, controlando algum aspecto da aplicao.

Figura 3.6. Interface baseada em gestos para controle do sistema. (Imagem cortesia Grupo de Pesquisa em Realidade Virtual e Multimdia da Universidade Federal de Pernambuco, 2006).

3.2.5.3. Walking A tcnica Walking simplesmente prev o andar fsico atravs do mundo 3D, sendo bastante natural para o usurio. Ela classificada como uma tcnica de interao para navegao em ambientes de VR, mas mostra-se muito adequada para aplicaes mveis de AR. Um aspecto importante a considerar o fornecimento de avisos que auxiliem no equilbrio do usurio durante a caminhada, de forma a promover entendimento espacial. O caminhar no mundo real no sempre prtico ou factvel, uma vez que limitado por obstculos espaciais e tecnolgicos. Alm disto, a margem de movimentao do usurio diretamente dependente da tecnologia de tracking utilizada. Um exemplo que ilustra o uso desta tcnica de interao uma aplicao de AR que permite ao usurio visitar a galeria de arte de um museu virtual. Para isto, o usurio veste um wearable computer (com um Head Mounted Display translcido para

67

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

visualizao e uma luva com tracker para interao) e caminha por um espao fsico [Teixeira et al., 2007]. Uma vez tendo marcadores fiduciais no seu campo de viso, a aplicao reconhece os mesmos e exibe as obras de arte virtuais na cena. A Figura 3.7 ilustra o usurio andando fisicamente pelo ambiente.

Figura 3.7. Tcnica Walking para navegao. (Imagem cortesia Grupo de Pesquisa em Realidade Virtual e Multimdia da Universidade Federal de Pernambuco, 2006).

3.2.5.4. Reconhecimento de Gestos Pen-Stroke Esta tcnica reconhece o movimento de uma caneta, por exemplo, sobre a tela touch-screen de um handheld ou smartphone (Figura 3.8). Com o uso crescente de dispositivos mveis em aplicaes de AR, esta tcnica, classificada como tcnica para entrada simblica em ambientes virtuais, tem sido amplamente utilizada em AR.

68

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Figura 3.8. Tcnica Reconhecimento de Gestos Pen-Stroke para entrada simblica. (Imagem cortesia Grupo de Pesquisa em Realidade Virtual e Multimdia da Universidade Federal de Pernambuco, 2006).

3.3. Consideraes Finais


Este captulo apresentou alguns conceitos relativos a tcnicas de interao para ambientes 3D, descrevendo questes relacionadas ao design e implementao de tcnicas utilizadas em VR e AR. O intuito do que foi exposto contribuir para uma difuso do conhecimento em reas onde a literatura ainda escassa, e ilustrar atravs de alguns cenrios que plenamente possvel adaptar as tcnicas j utilizadas em VR para ambientes aumentados.

3.4 Referncias Bibliogrficas


Schneiderman, B. e Plaisant, C., Designing the User Interface: Strategies for Effective Human-Computer Interaction, AddisonWesley Publishers, 2004.

69

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Bowman, D. A., Kruijff, E., LaViola Jr, J. J. e Poupyrev, I., 3D User Interfaces: Theory and Practice, Addison-Wesley, 2004. Trevisan, D. G., Vanderdonckt, J. e Macq, B. (2002) Analyzing Interaction in Augmented Reality Systems, ACM Multimedia International Workshop on Immersive Telepresence, p. 56-59. Broll, W., Lindt, I., Ohlenburg, J., Herbst, I., Wittkmper, M. e Novotny, T. (2005) An Infrastructure for Realizing CustomTailored Augmented Reality User Interfaces, IEEE Transactions on Visualization and Computer Graphics, v. 11, n. 6, p. 722-733. Bastos, N. C., Teichrieb, V. e Kelner, J., Interao com Realidade Virtual e Aumentada, SBC, 2006. Teichrieb, V. e Kelner, J. (2004) DEMEditor: a Virtual Reality System to Enhance the Precision of Digital Elevation Models, American Society for Photogrammetry & Remote Sensing, Maryland, American Society for Photogrammetry & Remote Sensing, p. 228-236. Teixeira, J., Silva, D., Moura, G., Costa, L., Teichrieb, V. e Kelner, J. (2007) miva: Constructing a Wearable Platform Prototype, Symposium on Virtual and Augmented Reality. Barros, P., Pessoa, D., Leite, P., Farias, R., Teichrieb, V. e Kelner, J. (2006) Three-Dimensional Oil Well Planning in Ultra-Deep Water, Symposium on Virtual Reality, Porto Alegre, Sociedade Brasileira de Computao, p. 285-296. Teichrieb, V., Gomes Neto, S., Farias, T., Teixeira, J., Lima, J., Almeida, G. e Kelner, J. (2007) Augmented Ambient: an Interactive Mobility Scenario, HCI International.

70

SEO

TECNOLOGIA E PROJETO

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Captulo

4
Ambientes de Hardware e Software para Aplicaes de Realidade Virtual e Aumentada
Bruno Barberi Gnecco1, Marcelo de Paiva Guimares1,2 e Rodrigo Damazio2 Faculdade de Campo Limpo Paulista Caixa Postal Campo Limpo Paulista SP Brasil brunobg@gmail.com Centro Universitrio Adventista de So Paulo Est. de Itapecerica, 5859 CEP 05858-001 - So Paulo-SP marcelodepaiva@gmail.com, rodrigo@damazio.org
2 1

Abstract This chapters objective is to present the most common hardware and software environments that can be used for Virtual and Augmented Reality applications. We begin by presenting and commenting on the use of several hardware systems for processing, such as: personal computers, commodity computer clusters and supercomputers. Then we proceed to present input/output devices, such as head mounted devices, graphical boards, cameras, mice, trackers and gloves, which allow the user to interact with the environment. 72

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Last but not least, we comment on the kinds of software available for Virtual and Augmented Reality: modeling tools, graphical engines, specific frameworks for Virtual Reality and for Augmented Reality and hardware administration systems. Resumo Este captulo tem como objetivo apresentar os principais ambientes de hardware e software que podem ser utilizados para Aplicaes de Realidade Virtual e Aumentada. Inicialmente, apresenta-se e discute-se a utilizao dos diversos sistemas hardware para processamento, tais como: computadores pessoais, aglomerados de computadores comuns e os supercomputadores. Em seguida, apresenta-se os dispositivos de entrada/sada, como capacetes de visualizao, placas grficas, cmeras, mouses, rastreadores e luvas, que provm a parte interativa do ambiente para o usurio. Finalmente, comenta-se sobre os gneros de software disponveis atualmente para a Realidade Virtual e a Realidade Aumentada, como: ferramentas de modelagem, engines grficos, frameworks especficos para Realidade Virtual e Realidade Aumentada e sistemas de administrao do hardware.

4.1. Introduo
Os cinco sentidos (viso, audio, tato, olfato e paladar) fundamentais do corpo humano formam um conjunto de funes que propicia o relacionamento dos usurios com o ambiente [Aparelhos Sensoriais, 2007]. Por meio deles, o usurio percebe tudo o que o rodeia; e, de acordo com as sensaes, interage com o ambiente. A Realidade Virtual (RV) e a Realidade Aumentada (RA) utilizam os dispositivos de sada para enviar estmulos aos sentidos humanos e os dispositivos de entrada para receber os estmulos dos usurios, o que possibilita a integrao dos usurios com os mun-

73

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

dos virtuais. Os sentidos so mais utilizados na seguinte ordem: viso, audio, tato, olfato e paladar, apesar do tempo de resposta dos mesmos seguir outra ordem (sabe-se, por exemplo, que o tato e a audio oferecem menor latncia neural que a viso, sendo mais adequados dessa forma a estmulos que necessitem de resposta rpida). A RV e RA desejam envolver todos os sentidos do seres humanos de forma combinada. Embora diversos avanos j tenham ocorrido, ainda existem muitos a serem feitos, como, por exemplo, o desenvolvimento de sistemas hpticos mais fiis realidade. Os diversos dispositivos de entrada/sada buscam tornar o ambiente virtual o mais real possvel, no caso da RV, e mais natural possvel, no caso da RA. Alm disso, importante ressaltar que alguns dispositivos oferecem recursos que os seres humanos no possuem naturalmente, como, por exemplo, os dispositivos hpticos exosqueletais, que habilitam os seres humanos a carregarem mais peso do que podem com seu prprio corpo. Os ambientes de RV e RA podem ser divididos em quatro partes bsicas: um Ambiente Fsico (iluminao, ar condicionado, eletricidade); um Sistema Computacional de processamento (hardware); um Sistema de Visualizao (sada: incluindo vdeo, udio, retorno ttil etc.); e um Sistema de Interao (entrada: joysticks, trackers, cmeras etc.). Para a integrao das trs ltimas partes, necessrio um sistema de software que una os sistemas de forma apropriada. Existe um falso conceito destes sistemas serem excessivamente complexos e caros, que no totalmente verdade nos dias de hoje. Atualmente, diversas aplicaes de RA e RV podem ser pesquisadas e desenvolvidas em laboratrios com poucos recursos financeiros, desde que o hardware seja capaz de suportar as entradas/sadas e processamento desejados, e que o software realize a integrao requerida. 74

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Cada aplicao de RV e RA exige certos recursos e podem ser compostas por diversos sistemas distintos. preciso, ento, preocupar-se com todos os seus aspectos, incluindo o ambiente em si (como, por exemplo, com a iluminao, espao para os usurios e isolao sonora), passando pelo sistema de software at os equipamentos de gerao de imagens e som.

4.2.

Hardware

Pode-se dividir os itens de hardware de um ambiente de RV e RA em: Ambiente Fsico: construo civil, rea de interao, iluminao, ar-condicionado, espao dos usurios etc.; Dispositivos de Processamento: responsveis pela computao, gerao de imagens, processamento de entradas etc.; Dispositivos de Entrada: responsveis pelo recebimento das interaes dos usurios, como, por exemplo, mouses, luvas e cmeras; Dispositivos de Sada: eles que apresentam as imagens, sons e respostas tteis aos usurios, como exemplo, dispositivos de force-feedback, som 3D e de visualizao de imagens. 4.2.1. Ambiente Fsico O ambiente fsico onde o sistema de RV ou RA ser instalado deve ser preparado corretamente, de forma que nenhuma limitao do ambiente fsico atrapalhe a experincia imersiva do sistema ou seu desenvolvimento. Deve-se estar atento ao local de montagem do sistema. A preparao da sala ou salas usadas pode requerer obras, que so sempre custosas e trabalhosas.

75

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

A preocupao inicial em relao ao espao fsico; este deve ser grande o suficiente para que se possa instalar as telas, mesas de trabalho, os computadores, os projetores etc., sem que se limite a movimentao de pessoas e equipamentos. O ambiente de RV e RA ser um espao de trabalho, e portanto, deve ser confortvel para desenvolvedores e usurios. Estaes de trabalho com mesas e cadeiras apropriadas devem estar disponveis para o desenvolvimento, porm sem invadir o espao destinado ao uso do sistema. Os usurios do sistema podem ficar sentados ou em p, dependendo dos dispositivos de interao utilizados. O ideal que exista isolamento sonoro na sala, assim o sistema no sofrer com rudos externos. Outro item a ser observado que o sistema eltrico deve ser suficiente para suprir a potncia requerida dos equipamentos. Alm disto, deve se preocupar com a iluminao - o ideal que o sistema seja montado em um ambiente com luz controlada. Assim, em um sistema de RV, a luz no interferir nas imagens projetadas na tela; e em um sistema de RA, a iluminao poder ser corretamente calibrada para que os marcadores sejam detectados pela cmera do sistema sem problemas. Como os computadores e equipamentos so fontes geradoras de calor, a temperatura ambiente deve tambm ser controlada, requerendo ento o uso de ar-condicionado. Se houver uma quantidade grande de mquinas como um cluster, servidores, roteadores deve-se pensar em isolar as mquinas em uma sala especial. Alm de geram uma quantidade aprecivel de calor, eles so ruidosos, e em raras ocasies necessrio acessa-los fisicamente, de forma que o isolamento tambm uma medida de segurana e controle. Todos os cabos devem estar organizados (fora, genlock, rede, udio, dispositivos de entrada, vdeo) para que estes possam 76

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

ser identificados e/ou trocados de maneira fcil. Recomenda-se agrupar cabos com cintas e presilhas, e identificar ambas as pontas com etiquetas ou identificadores plsticos. Os cabos devem ser preferencialmente passados em guias apropriadas, e testados antes de sua instalao. No caso de ambientes com uma grande quantidade de equipamentos, sugere-se o uso de pisos elevados ou guias presas ao teto, de forma a facilitar o acesso fsico aos equipamentos, j que cabos para ambientes de RV e RA costumam ser bastante longos (verifique as especificaes do padro para ver o comprimento mximo de cada tipo de cabo), sendo tambm importante que sejam blindados e de boa qualidade, para evitar rudos. 4.2.2. Dispositivos de Processamento Durante muito tempo usou-se computadores fortemente acoplados para controlar sistemas de RV. Estes computadores tinham foco em aplicaes grficas e eram projetados especificamente para lidar com computao grfica, com suporte a hardware e arquitetura especializada, como era o caso por exemplo dos sistemas da Silicon Graphics, Inc. Na segunda metade da dcada de 1990, os computadores pessoais passaram a ser suficientemente poderosos para serem usados para aplicaes grficas complexas, especialmente com a disponibilidade de placas de vdeo aceleradoras, com suporte a primitivas 3D. Mesmo assim, PCs solitrios no eram capazes de substituir supercomputadores completamente; mas, se unidos em rede, com software especial para a distribuio dos dados e das tarefas tornando-se os chamados clusters (ou aglomerados) de computadores seu desempenho era equiparvel ou mesmo superior a eles. Com isso, houve nos ltimos anos um enorme crescimento do uso de clusters, principalmente para as aplicaes de RV [Guimares, 2004].

77

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

O princpio por trs do uso de clusters est na diviso da tarefa total (a sntese de imagens e simulao do mundo virtual) em outras tarefas menores, que so distribudas entre os ns, e, quando terminado seu processamento, realizam a sincronizao das informaes obtidas. Clusters tm algumas vantagens quando comparados com sistemas fortemente acoplados: Menor custo: por serem compostos de equipamentos amplamente disponveis no mercado, clusters tm baixo custo quando comparados a supercomputadores. Seu custo de manuteno tambm menor, pois no depende de suporte especializado nem reposio de peas customizadas; Melhor escalabilidade: supercomputadores so projetados para escalarem de uma determinada forma, enquanto clusters so mais amorfos e sua escalabilidade mais simples (em geral, apenas a adio de mais ns e possvel reconfigurao do software). Maior flexibilidade: como clusters podem ser compostos de acordo com as necessidades do sistema, modificados e atualizados com o tempo, permitindo substituio de apenas algumas de suas partes, so mais flexveis. Em compensao, clusters so mais difceis de serem programados, j que no tm uma memria compartilhada global e precisam que os processos executem de forma paralela, transmitindo informaes pela rede. O que diferencia um cluster de um grupo de computadores ligados em rede um sistema de gerenciamento e controle, capaz de prover o que conhecido como Single System Image (SSI). Em outras palavras, o usurio deve enxergar o cluster no como uma srie de computadores, mas como um nico sistema.

78

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Um outro sistema atraente nos dias de hoje so as mquinas multi-sadas. Com o crescimento da capacidade de processamento dos computadores, hoje possvel controlar ambientes de multiprojeo com uma nica mquina. Boa parte das placas de vdeo atuais tm duas sadas de vdeo (algumas possuem at quatro), e pode-se usar vrias placas de vdeo no mesmo PC. Um PC pode facilmente controlar oito ou mesmo dezesseis sadas de vdeo. H, obviamente, uma queda de desempenho devido ao compartilhamento de CPUs e barramentos, mas para sistemas que no precisam de grande processamento, uma soluo muito atraente. Cabe ressaltar que os PCs atuais, principalmente quando possuem placas acelerados de vdeo, so capazes de atender os requisitos de processamento de boa parte das aplicaes de RV e RA, sendo ainda que as ltimas tecnologias lanadas, como CPUs multi-core, tm proporcioado muitos avanos. Entretato, deve-se estar atento programao, pois esta deve ser feita de tal maneira que realmente usufrua destes recursos, possibilitando o desenvolvimento de pesquisas em laboratrios com poucos recursos disponveis. 4.2.3. Dispositivos de Entrada Para permitir a manipulao e/ou visualizao dos mundos virtuais, os usurios utilizam dispositivos no convencionais como capacete de visualizao, luvas, trajes, mouse, rastreadores, dentre outros. O mouse e o teclado so os dispositivos mais comuns de entrada de dados em computadores. Tm a vantagem de serem bem conhecidos por usurios de computadores e fceis de encontrar, configurar e programar. Para a maior parte das aplicaes de RV e RA, no entanto, so pouco prticos, provendo uma forma no intuitiva de manipulao do mundo e restringindo o usurio a uma mesa fixa e entradas bidimensionais.

79

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

O prximo dispositivo mais comum o joystick. Um exemplo de aplicao que geralmente o utilizar so os simladores de vo, por assemelhar-se ao controle real de uma aeronave. H uma infinidade de modelos e tipos - gamepads, por exemplo, so muito prticos para navegao em ambientes virtuais que sejam relativamente planos. Um dispositivo que costuma estar associado RV o de luvas com sensores, das quais h vrios modelos com sensibilidades a movimentos distintos; a maioria no requer calibragem. Luvas tm a desvantagem de no serem muito confortveis e provocarem fadiga dos braos, j que os movimentos se tornam mais livres quando os usurios mantm as mos frente do corpo. Outra desvantagem est na necessidade de treinamento dos usurios para us-las: preciso memorizar posies e movimentos dos dedos e das mos. Usurios treinados, no entanto, conseguem manipular objetos virtuais facilmente. Para suprir estas restries, foram criados os dispositivos hpticos, nos quais os usurios podem tocar e sentir os objetos virtuais, sendo ento especialmente teis para realar a informao visual, como por exemplo numa tela de cdigos em Braille. Estes dispositivos possuem sensores que monitoram as aes dos usurios e atuadores que aplicam vibraes ou presses em alguma parte do corpo deles. Eles so capazes de atuar tanto como dispositivos de entrada quanto de sada. Quando atuando como dispositivos de entrada, a princpio tm como objetivo detectar a posio e orientao dos usurios. Como exemplo de tais dispositivos, pode-se citar SideWinder Joystick, WingMan Mouse, Phantom e CyberForce. Seu uso mais comum em simuladores, como, por exemplo, os de cirurgia e de treinamento mdico, que reproduzem texturas, vibraes, inclinao e acelerao sofridas no mundo virtual. Eles geram um altssimo grau de imerso e interao com o ambiente virtual, mas costumam ser caros e especficos para algumas das aplicaes. 80

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Os rastreadores so dispositivos que permitem aplicao rastrear a posio e/ou orientao tridimensional de partes do corpo do usurio. H vrios mtodos usados para o rastreamento: campos eletromagnticos, sonar, conjuntos de cmeras associados a marcadores reflexivos no corpo, etc. Rastreadores costumam ser caros e precisam ser calibrados, o que uma tarefa tediosa e por vezes bastante trabalhosa, mas permitem uma interao tridimensional completa. possvel tambm rastrear movimentos dos usurios sem que estes usem equipamentos em seu corpo (ou com pequenos marcadores para auxiliar na segmentao das imagens), somente com cmeras dispostas no ambiente. Sistema deste gnero tm a vantagem de ser pouco ou no-intrusivos. Enquanto sistemas simples usam uma nica cmera, sistemas mais complexos chegam a usar dezenas de cmeras para evitar ocluso (uma pessoa na frente da outra, por exemplo), que devem ser sincronizadas e calibradas, tornando sua instalao e seu software mais complexos. Uma proposta recente de dispositivo de entrada em ambientes virtuais o uso de PDAs (Personal Digital Assistant). PDAs so pequenos e leves, fceis de manipular e possuem conectividade sem fios. Suas telas permitem manipular facilmente a simulao, e so fceis de integrar aos aplicativos existentes, sendo que sua desvantagem consiste na perda de imerso que ocorre quando o usurio move seus olhos das telas do ambiente para a tela do PDA [Guimares et. al., 2004]. Por fim, outra possibilidade de interao o uso de reconhecimento de voz, onde comandos ditos em voz alta so processados pelo aplicativo. uma forma natural, e tem a vantagem de liberar as mos e braos para outras tarefas, mas as limitaes atuais de compreenso de linguagem por computadores fazem-na limitada; h tambm o problema do rudo ambiente (ou o prprio som emitido pelo aplicativo) interferindo com a captura do udio.

81

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Um dos dispositivos de entrada mais importante para as aplicaes de RA so as cmeras, pois as imagens delas possibilitam a localizao dos objetos reais e o alinhamento espacial do mundo real com o virtual. O principal fator que influncia o uso das cmeras sua resoluo, sendo tambm importante notar que o sistema de iluminao do ambiente tem alta influncia no processamento das imagens. 4.2.4. Dispositivos de Sada O sentido humano mais estimulado por ambientes de RV e RA a viso. Nossa percepo tridimensional gerada a partir de diversas informaes recebidas por nossos olhos, combinadas com informaes auditivas, que provem informao espacial mais limitada. Isso possvel porque esses sistemas utilizam o fato de que cada um dos olhos dos usurios serem afastados um do outro (disparidade binocular), de forma que a imagem de cada olho ligeiramente diferente da do outro. Estas imagens so combinadas no crebro e compreendidas com caractersticas de profundidade, distncia, posio e tamanho. As informaes mais importantes so a paralaxe estereoscpica, ou seja, ver perspectivas diferentes com cada um de nossos olhos, e a paralaxe de movimento, que consiste em ver imagens diferentes quando movemos nossas cabeas. A estereoscopia acrescenta a dimenso de profundidade s telas de projeo dos mundos virtuais e, conseqentemente, tornaos mais prximos e realistas da forma que os usurios os vem no mundo real no caso de aplicaes de RV, permitindo visualizar objetos 3D no mundo real no caso de aplicaes de RA. Enquanto a paralaxe de movimento gerada pelo aplicativo grfico, a paralaxe estereoscpica (ou simplesmente estereoscopia) requer suporte do sistema projetor para conseguir apresentar uma imagem diferente para cada olho. Na prtica, ilude-se o crebro humano produzindo artificialmente as duas vises, uma para o olho direito e uma para o olho esquerdo. 82

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Existem diversas formas de prover estereoscopia. Na estereoscopia passiva, as imagens do par estreo so reproduzidas superpondo-se, e utiliza-se algum culos com um filtro passivo (como polarizao da luz, ou separao das cores do espectro) para que cada olho veja apenas uma das imagens. Na estereoscopia ativa os usurios utilizam culos obturadores (shutter glasses), controlados em geral por sinal infravermelho, trabalhando em sincronia com os projetores ou monitores. As lentes alternam entre dois estados, transparentes ou opacas. Quando o projetor exibe a imagem esquerda os culos fecham a passagem de luz para o olho direito, permitindo que a imagem referente ao olho esquerdo seja somente captada por ele, e vice versa. Auto-estereoscopia significa obter viso estereocpica sem a necessidade de nenhum dispositivo ligado ao corpo do usurio, como culos ou capacetes. Existem vrios sistemas autoestereoscpicos disponveis no mercado, entretanto os principais fatores limitantes desta tecnologia so o custo e a quantidade de usurios que podem visualizar a projeo ao mesmo tempo, alm do tamanho da tela. Os monitores com auto-estereoscopia baseiamse em reas de visualizao que o usurio deve permanecer, que fazem com que uma imagem seja visvel para o olho direito e outra para o esquerdo. Existem diversos modelos de monitores de plasma e LCD disponveis e com boa qualidade, porm o seu tamanho ainda no suficiente para ambientes imersivos (aplicaes de RV), podendo ser compostos em video-walls para grandes ambientes. Sua limitao principal no suportar estreo passivo, e raramente terem uma taxa de refresh alta o suficiente para estreo ativo. Por outro lado, so mais simples de se instalar do que projetores e podem ser utilizados para a maioria das aplicaes de RA.

83

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Projetores de boa qualidade so hoje fceis de se encontrar. Os mais comuns usam tecnologia digital (DLP, ou Digital Light Processing) compostos de micro-espelhos que modulam a luz. Os mais caros usam tecnologia CRT (Cathode Ray Tubes), a mesma de televisores e monitores convencionais, sendo sua vantagem ter uma varredura mais rpida e suportar resolues maiores, apesar de serem maiores e mais caros que projetores DLP. A qualidade da projeo tambm depende das telas: elas devem ser de um material de cor uniforme, de preferncia branca ou bastante clara (prateada ou metalizada). As mais simples so as de acionamento manual, que permitem a fixao do estojo metlico na parede ou no teto, e tambm permitem o ajuste da altura desejada com mltiplos pontos de parada. As telas especiais com superfcies lenticulares proporcionam ganho na luminosidade da imagem, gerando ento uma projeo tima, mesmo mantendo-se a iluminao do ambiente. No caso em que se utiliza projeo com estereoscopia passiva por polarizao, ainda, necessrio utilizar telas especiais que no alterem a polarizao da luz nelas projetadas. Enquanto a viso oferece aos usurios uma percepo do espao visual sua frente em um ngulo mximo de 180, a audio permite a eles a obter informaes do ambiente em 360, alm de alguma informao de altura relativa. Tanto a viso quanto a audio compartilham o mesmo objetivo numa simulao, que o de enganar o crebro, j que em um sistema de som 3D perfeito no possvel diferenciar realidade e simulao. Quando o crebro recebe o som vindo de qualquer direo, ele processa as caractersticas deste som a fim de determinar e/ou localizar a fonte sonora. A localizao espacial que d ao som o aspecto tridimensional, sendo por isso conhecido como som 3D ou som espacial. O som pode agregar diversas informaes, como, por exemplo, distncia do objeto (pelo volume da emisso), localizao

84

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

do objeto (pela diferena do som recebido pelos dois ouvidos), tipo de objeto (pelo timbre do som) e tamanho do ambiente (pela sua caracterstica de reverberao). Assim, estimular a audio nas simulaes de RV pode aumentar a percepo do ambiente virtual, bem como a imerso. A presena de sons nos ambientes virtuais faz com que o realismo do ambientes seja maior, principalmente com som 3D, que conta com caractersticas como posicionamento, reflexo/absoro e geradores sonoros mveis (clculo do efeito Doppler). Os sons podem ser gerados em alto-falantes ou fones de ouvido, fazendo parte ou no de capacetes. Apesar de poder existir em um ambiente virtual diversas fontes sonoras, os seres humanos concentram-se em apenas uma fonte de cada vez, dentro de um conjunto limitado de estmulos gerados de maior importncia, para as quais a ateno do usurio desviada. Por isso, para criar ambientes virtuais prximos dos reais necessrio o posicionamento das fontes de som, com as devidas caractersticas no espao 3D.

4.3.

Software

Existe uma grande gama de software disponvel para a confeco, processamento e sntese de ambientes virtuais. Esta seo apresenta uma viso geral dos gneros de software existentes, sem detalhar as particulares implementaes. O captulo Ferramentas para Desenvolvimento de Aplicaes de Realidade Virtual e Aumentada descreve as ferramentas em mais detalhes. 4.3.1. Ferramentas de Modelagem A criao de um mundo virtual requer a modelagem da cena: o ambiente virtual, os personagens, os objetos etc. Para fazer essa modelagem, usa-se programas de modelagem, capazes de manipular a geometria, texturas e preparar animaes dos objetos. 85

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Em alguns casos, possvel ainda atribuir aes ou compartamentos aos objetos dentro do prprio programa de modelagem. 4.3.2. Engines grficos A sntese de imagens de um aplicativo de RV ou RA coordenada pelo engine (motor) grfico. Apesar de engines grficos tentarem ser genricos, o gnero de aplicativo pode influenciar na escolha do engine; jogos costumam ter requerimentos de recursos e desempenho bastante diferentes de aplicativos cientficos de visualizao de dados, por exemplo. Entre as caractersticas que devem ser buscadas em um engine, ressalta-se: Suporte leitura de formatos de arquivos necessrios ou integrao com softwares de modelagem; Suporte a texturas e animaes; Suporte a dispositivos de entrada e sada (sendo que muitos bons engines optam por no oferecer suporte algum, obrigando o usurio a utilizar outra ferramenta ou biblioteca que seja mais apropriada para seu aplicativo); Existncia de efeitos grficos necessrios ou desejados para o aplicativo (como animao de partculas ou sombras); Possibilidade de ser executado facilmente em toda a gama de hardware que for ser utilizada para o ambiente virtual; Fcil utilizao.

86

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

4.3.3. Frameworks para RV e RA Com a popularizao de aplicativos de RV e RA, frameworks especficos comearam a ser desenvolvidos. Esses frameworks apresentam funcionalidades especficas para cada tipo de aplicativo, como: Suporte a dispositivos de entrada no convencionais (rastreadores, luvas etc.) de forma abstrata, permitindo que novos dispositivos sejam usados sem modificao (ou com poucas modificaes) do software; Suporte a dispositivos complexos de sada, por exemplo com mltiplas sadas de vdeo em disposio arbitrria, algo raramente suportado por engines. 4.3.4. Software de administrao de hardware Sistemas de RV e RA podem se tornar consideravelmente complexos, e sua administrao deve ser reduzida ao mnimo. No mercardo praticamente no existem softwares que suportem uma vasta gama de dispositivos para RV e RA. Geralmente, utiliza-se o prprio software do fabricante ou constro-se o mesmo no prprio laboratrio, conforme os recursos humanos e de hardware disponveis. O ideal automatizar todo o possvel: Iluminao: fcil fazer o controle de iluminao por computador hoje em dia, controlando luzes com um mnimo de eletrnica, via porta serial ou paralela. Som: controle de volume de todo o sistema unificado. Projetores, telas, switches de vdeo, teclado e mouse: ligar, desligar, configurar e chavear por software. Disparo de processos: de maneira simples, de preferncia com cones em uma interface grfica, sem a necessidade de se pre87

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

ocupar com o fato da execuo no se dar em um aglomerado computacional. Administrao dos computadores: instalao e atualizao de programas, configurao, disparo de processos remotos, monitoramento do estado do hardware e servios, devendo ser tudo controlado por um sistema nico e de fcil utilizao.

4.4.

Concluso

Ambientes de RV e RA tm continuamente melhorado em qualidade. O crescimento da capacidade computacional, a melhora dos dispositivos de visualizao, como monitores e projetores e o desenvolvimento de novos dispositivos de entrada (trackers, joysticks, sistemas com cmeras) ocorrem continuamente. Do ponto de vista de software, h um contnuo refinamento dos algoritmos usados, com melhora do desempenho, da qualidade de reconhecimento de padres em RA e da qualidade de imagem final gerada; h tambm maior suporte a problemas especficos da rea, como renderizao estereoscpica ou deformada, suporte transparente a dispositivos de entrada e a computao distribuda. Com a maior disponibilidade, menor custo e maior uso pelos pesquisadores, a montagem de ambientes para RV e RA tem se tornado mais fcil, j que o desenvolvimento de tcnicas, produtos e sistemas por outros pesquisadores reaproveitado. Equipamentos de RV e RA esto com custo acessvel a qualquer entidade com um mnimo de verba disponvel, sendo acessvel at mesmo a alguns usurios caseiros. As ferramentas hoje permitem que, com um pouco de criatividade e empenho em desenvolvimento, um sistema original e estado da arte seja implementado, para a realizao de pesquisas teis e inditas.

88

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

A evoluo dos sistemas na ltima dcada impressionante - enquanto h dez anos havia pouqussimas solues para RV e RA, sempre de alto custo, hoje h uma gama de solues disponveis sob licenas de custo baixo ou zero. Essas solues permitem montar sistemas rapidamente, sem a necessidade de especialistas nem de grandes oramentos.

4.5. Referncias Bibliogrficas


Aparelhos sensoriais: OS SENTIDOS (Integumentary System) (2007). Disponvel em http://www.corpohumano.hpg.ig.com.br/apr_sensoriais/apr_sens oriais.html. Consultado em 28/02/2007. Guimares, M. P.; Gnecco, B. B.; Zuffo, M.(2004). Graphical Interaction Devices for Distributed Virtual Reality Systems. ACM Press. Virtual-Reality Continuum and its Applications in Industry. Singapura.pp 363-367. Guimares, M. P. (2004) Um ambiente de desenvolvimento de aplicaes de Realidade Virtual baseadas em aglomerados grficos. Tese de doutorado. Escola Politcnica da Universidade de So Paulo. Dezembro.

89

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Captulo

5
Desenvolvimento de Ambientes Virtuais
Tereza Gonalves Kirner1 e Valria Farinazzo Martins Salvador2
1

Universidade Metodista de Piracicaba So Paulo SP - Brasil tgkirner@unimep.br


2

Universidade So Camilo - So Paulo SP - Brazil valeria@scamilo.edu.br

Abstract This chapter presents a process of development for virtual environments, based on software engineering concepts as well as on specific characteristics of virtual reality applications. The process follows an iterative approach of software development, which includes a series of steps and phases. Resumo Este captulo apresenta um processo de desenvolvimento de ambientes virtuais, proposto com base nos conceitos de engenharia de software e nas peculiaridades das aplicaes de realidade virtual. O processo segue uma abordagem iterativa de desenvolvimento de software, composta por diferentes etapas e fases. 90

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

5.1. Introduo
Realidade Virtual (RV) compreende tecnologias avanadas de interface, que permitem ao usurio realizar imerso, navegao e interao em um ambiente sinttico tridimensional gerado por computador, utilizando canais multi-sensoriais [Kalawsky, 1993; Kirner and Pinho, 1996]. Uma vantagem importante da realidade virtual sobre outras formas de interao humano-computador, que o ambiente pode ser visualizado a partir de qualquer ponto de vista, medida que vo sendo feitas alteraes em tempo-real. Comportamentos e atributos podem ser dados a objetos pertencentes ao ambiente, o que propicia a simulao de funes e comportamentos do mundo real enfocado. Para suportar esse tipo de interao, o usurio utiliza dispositivos no convencionais, tpicos da rea de RV, como capacete de visualizao e controle, luvas, spaceball, joystick tico, etc. Estes dispositivos do ao usurio a impresso de que a aplicao est funcionando no ambiente tridimensional real, permitindo a explorao do ambiente e a manipulao natural dos objetos - por exemplo, apontar, pegar, arrastar e rotacionar objetos. [Stuart, 1996; Vince, 2004]. Um ambiente envolve um determinado espao e uma situao delimitada, incluindo todos os componentes neles inseridos, como o conjunto de objetos e de condies passveis de serem percebidos e com os quais possvel interagir. Um ambiente virtual um ambiente interativo, gerado por um computador e disponibilizado atravs de um sistema de realidade virtual [Stuart, 1996]. De acordo com Martins (2000) e Vince (2004), um ambiente virtual tpico deve agregar caractersticas que o tornem:

91

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Sinttico. Significa que o ambiente gerado em temporeal por um sistema computacional. No , por exemplo, prgravado, como acontece com sistemas de multimdia.
Tri-dimensional. Significa que o ambiente que cerca o usurio representado em trs dimenses (3D) e, alm disso, que existem recursos que do a idia de que o ambiente possui profundidade e que o usurio pode mover-se atravs dele. Multisensorial. Significa que mais de uma modalidade sensorial usada para representar o ambiente, como sentido visual, sonoro, espacial (de profundidade), de reao do usurio com o ambiente, etc. Imersivo. Entende-se, aqui, mais do que olhar e ouvir um display vindo de um monitor; o display necessita criar a impresso de que se est dentro do ambiente produzido computacionalmente. Normalmente, um sistema imersivo obtido com o uso de capacetes de visualizao, mas outros sentidos, como o som e controles reativos, so tambm importantes. Interativo. Refere-se capacidade do computador detectar as entradas do usurio e modificar instantaneamente o mundo virtual e as aes realizadas sobre ele.

Realstico. Envolve a preciso com que o ambiente virtual reproduz os objetos reais, as interaes com os usurios e o prprio modelo do ambiente.
Com presena. Caracteriza-se como sendo um sentido subjetivo, responsvel por dar ao usurio a impresso de que ele est fisicamente dentro do ambiente virtual.

Como para qualquer sistema de software, a construo de ambientes virtuais requer um processo de desenvolvimento 92

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

adequado s suas peculiaridades. Este captulo apresenta um processo de desenvolvimento que atende as caractersticas de ambientes virtuais e aplicaes de realidade virtual em geral. O processo proposto segue uma abordagem de desenvolvimento iterativo de sistemas de software, adaptado s especificidades de sistemas de RV. Esta abordagem combina caractersticas de desenvolvimento top-down e bottom-up, buscando a gerao de verses (ou prottipos) que vo sendo sucessivamente refinados, at se chegar a uma implementao que atenda aos requisitos inicialmente identificados [Stuart, 1996; Sommerville, 1997]. As etapas e fases que compem o processo de desenvolvimento compreendem desde a definio dos requisitos at a implementao e avaliao do sistema. O desenvolvimento de ambientes virtuais requer um esforo conjugado envolvendo temas relacionados com modelagem grfica 3D e interface humano-computador (IHC), j que sua construo est ligada ao realismo visual e interao atravs de outros sentidos humanos distintos [Martins, 2000]. Assim sendo, o processo ora proposto explora, ao mximo, os recursos de RV e IHC, modelagem grfica e visualizao de informao para validar este processo de desenvolvimento. Os objetivos principais da abordagem so:
Permitir a participao dos usurios, para que eles possam experimentar o software que est sendo criado e opinar sobre possveis melhorias.

Gerar um sistema que possa ser utilizvel e de fcil manuteno, em um perodo de tempo adequado e a custos aceitveis. A realizao dos objetivos buscados requer, principalmente: 93

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Que os projetistas saibam quem sero os usurios, identificando-os em termos de atitudes, comportamentos e necessidades.
Que a equipe de desenvolvimento atue em conjunto com os usurios. Que os prottipos sejam criados rapidamente, avaliados pelos usurios e consecutivamente corrigidos, refinados e melhorados.

O objetivo do presente captulo , portanto, apresentar um processo de desenvolvimento de ambientes virtuais, definido e sistematizado atravs de um conjunto de etapas, fases e atividades. A seo 5.2 descreve o processo de desenvolvimento proposto, a seo 5.3 indica alguns ambientes virtuais desenvolvidos sob a tica do processo descrito e, por fim, a seo 5.4 apresenta as concluses do trabalho.

5.2. Processo de Desenvolvimento de Ambientes Virtuais


5.2.1. Exigncias O processo de desenvolvimento de software para aplicaes de realidade virtual baseia-se em duas exigncias essenciais {Stuart 1996]: O ambiente virtual e sua interface devem ser adaptados para a tarefa, isto , esta exigncia est inserida no reconhecimento do fato de que a imerso, no ambiente tridimensional gerado por computador, apresenta oportunidades que no so encontradas na computao grfica convencional. Para tanto, necessrio que se analisem questes de todo o projeto, projeto da interface e questes importantes de fatores humanos;

94

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Limites rigorosos de desempenho devem ser cumpridos para que os benefcios de RV sejam alcanados. Isto se refere ao fato de que RV deve ser executada com certa velocidade mnima, a fim de ser utilizvel, admitindo-se a taxa adequada de quadros/segundo suficiente para no frustrar o usurio. Estas duas exigncias esto, freqentemente, em conflito, mas um desenvolvimento bem sucedido de uma aplicao de RV deve atender, simultaneamente a ambos os requisitos. Assim, o desenvolvimento de aplicaes de RV deve ter tanto uma abordagem top-down (para atender as tarefas totais do projeto), quanto bottom-up (para os componentes e desempenho). 5.2.2. Metforas A maneira como uma aplicao ser implementada depender muito de cada aplicao. Entretanto, algumas questes podem ser discutidas levando-se em conta as metforas em RV que sero adotadas [Martins, 2000]. Metfora significa a maneira como o usurio se relaciona com o ambiente virtual. A idia permitir ao usurio pensar em termos de interao com objetos que esto diretamente relacionados a tarefas disponveis, em vez de pensar em termos de interao com um computador. Em RV, o usurio est imerso no ambiente e as metforas convencionais, tais como interface grfica do usurio, esto fora do ambiente, no sendo, portanto, apropriadas para tais sistemas. Construir uma boa metfora para o ambiente virtual, numa aplicao, uma tarefa crtica, visto que necessrio saber como esta metfora determinar a aparncia e o comportamento do ambiente e, tambm, como o usurio interagir com tal ambiente. Uma boa metfora permitir ao usurio interagir eficaz e 95

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

confortavelmente com o ambiente virtual para executar as tarefas da aplicao. evidente que uma nica metfora no cobrir todas as aplicaes de RV ou todos os domnios, sendo necessrio que estas metforas sejam construdas com base em cada caso. Uma metfora, tambm, no deve derivar do mundo real, mas de uma linguagem convencional do domnio da aplicao para que o ambiente seja construdo. Pode-se definir vrios nveis de uma metfora num ambiente virtual: Metfora(s) para todo o ambiente. Determina a aparncia total do ambiente, incluindo os tipos de objetos que aparecero no ambiente e tipos de comportamentos;
Metfora(s) para representao de informao. Como a informao ser apresentada ao usurio;

Metfora(s) de interao. Como o usurio interagir com o ambiente e com os objetos no ambiente. Cada nvel de metfora pode conter vrias metforas. Por exemplo, a metfora de representao de informao pode incluir textos que aparecem no ambiente (talvez numa janela de informao ou texto 3D) assim como a informao mostrada pela cor de objetos. A metfora de interao pode incluir a manipulao direta de objetos, tais como seleo e botes do menu atravs de controle. Experincias com RV e computao grfica convencional mostram que pode ser interessante mesclar metforas das duas reas, facilitando muito a usabilidade do ambiente virtual.

96

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Uma viso geral do processo proposto apresentada na Figura 5.1. As etapas que compem o processo so detalhadas a seguir. 5.2.1. Engenharia de Requisitos Esta etapa tem como objetivo identificar e descrever as necessidades de informao do ambiente virtual pretendido [Sommerville, 1997; Kirner, 2004]. As principais fases e atividades constantes da etapa so: Elicitao dos Requisitos. Envolve aes que visam capturar e registrar as informaes necessrias para o entendimento correto e completo das necessidades e expectativas dos usurios Para isso, importante considerar trs elementos essenciais: Potenciais usurios do sistema, identificando-se aspectos como: caractersticas especficas do usurios, por exemplo, se j possuem experincia com o uso de ambientes virtuais, se a aplicao ser mono ou multi-usurio, se os usurios acessaro o ambiente virtual remotamente, se ser um ambiente colaborativo, etc.

97

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Figura 5.1. Processo de Desenvolvimento de Ambientes Virtuais

Tarefas a serem executadas no ambiente virtual e como essas tarefas sero realizadas. Por exemplo, os usurios podero caminhar pelo ambiente virtual, pegar e arrastar objetos, ouvir determinados sons, etc.

98

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Ambiente da aplicao, que pode ser definido sob diferentes aspectos, como ambiente fsico, ambiente de trabalho, ambiente social, etc. Para ambientes virtuais, a definio do ambiente fsico em que o sistema funcionar deve merecer ateno especial. Ele pode ser definido com maior ou menor grau de realismo, dependendo da situao, dos usurios e de restries especficas.

Especificao dos Requisitos. Envolve, principalmente, a modelagem e descrio detalhada dos requisitos elicitados [Sommerville, 1997]. Definio dos requisitos gerais do ambiente virtual, geralmente representados atravs de modelos conceituais (sob a forma de texto ou por meio de notaes grficas ou formalismos).
Definio dos requisitos especficos, ligados s caractersticas intrnsecas da realidade virtual. Aqui importante analisar trs possveis alternativas: quando a tarefa a ser executada corresponde a do mundo real; quando a tarefa for executada de maneira diferente do mundo real; e quando a tarefa no corresponde a uma tarefa no mundo real. Definio dos requisitos no funcionais, que so relacionados a aspectos de software, de hardware e de fatores externos, que determinam condies ou restries ao comportamento do ambiente virtual considerado. Deve-se levar em conta tanto os fatores de qualidade exigidos pela aplicao (como usabilidade, portabilidade, confiabilidade, manutenibilidade, etc.) quanto as exigncias das aplicaes de realidade virtual (como imerso, interao, navegao, sentido de presena, etc.).

99

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Seguindo a abordagem de prototipao, os requisitos levantados e especificados devem ser avaliados e refinados, antes de se partir para a etapa de projeto. 5.2.2. Projeto Esta etapa tem por objetivo principal, especificar as tecnologias de entrada, de sada e computacionais a serem empregadas no desenvolvimento do ambiente virtual [Martins, 2000; Stuart, 1996].
Tecnologias de entrada. Estas tecnologias, cruciais para sistemas de realidade virtual, podem incluir: capacetes, luvas, cmeras de vdeo, rastreadores de posicionamento, etc.

Tecnologias de sada. Seu objetivo apresentar informaes ao usurio de tal forma que elas possam ser percebidas apropriadamente para a tarefa, dadas as consideraes descritas na definio dos requisitos. As tecnologias de sada podem ser: dispositivos visuais, fones de ouvido, dispositivos de tato e fora entre outros. Tecnologias de hardware. Aqui devero ser definidos quais equipamentos sero empregados, incluindo computadores e dispositivos especficas de realidade virtual.
Tecnologias de software. Um software que atenda aos requisitos de realidade virtual deve ser: interativo, de navegao, de interao, autnomo, que permita o uso de scripting e que permita a integrao com multimdia. Projeto de objetos, comportamentos e interaes. Aqui devero ser definidos os objetos, tendo em mente algumas questes como: qual sua geometria, tamanho, escala, cor e textura; os comportamentos que um objeto possa demonstrar; e as interaes necessrias para o ambiente virtual, tais como

100

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

movimentao, seleo, manipulao, escalonamento, modificao de objetos e de propriedades do mundo, etc. Em resumo, nesta etapa, so definidas todas as tecnologias a serem empregadas no desenvolvimento do ambiente virtual. 5.2.3. Implementao Esta etapa tem por objetivo construir o ambiente virtual, compreendendo as atividades descritas a seguir [Martins, 2000; Stuart, 1996]: Obteno e preparao de imagens. As imagens necessrias podem ser obtidas atravs de um scanner, cmera de vdeo ou software de desenho. Com a ajuda de um editor apropriado, as imagens devem ser preparadas e convertidas para um formato de arquivo compatvel com o software de realidade virtual. Construo dos objetos 3D. Os objetos geomtricos so criados usando-se softwares de modelagem 3D e ferramentas de criao de mundos virtuais.
Execuo do ambiente virtual. Consiste em se criar, propriamente, o ambiente virtual. Ou seja, nesta fase que os objetos 3D so incorporados ao ambiente, assim como os pontos de vista, a luz que iluminar o ambiente, os sensores, a animao, etc.

5.2.4. Avaliao As principais atividades compreendidas na avaliao so descritas a seguir [Martins, 2000; Stuart; 1996]: Avaliao do desempenho do sistema. Alguns quesitos para se avaliar o desempenho do sistema so: 101

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Latncia total, isto , o acmulo de atrasos introduzidos por cada componente do sistema, necessrio para gerar uma resposta do sistema como: taxa de dados e de atualizao dos rastreadores de posicionamento e tempo gasto para executar a simulao;
Taxa de atualizao do display que a freqncia com que sucessivas imagens visuais aparecem no display (embora esta taxa contribua para a latncia total, deve ser analisada individualmente);

Robustez que altamente especfica da aplicao, em que suas mtricas devem ser aplicadas para cada aplicao; Tolerncia a falhas que no uma caracterstica especfica de sistemas de RV, mas que necessria para um emprego real de aplicaes, tais como telepresena. Avaliao da usabilidade. Como em outras IHCs, avaliar a usabilidade, incluindo taxa de erro, carga de trabalho, realizao da tarefa e aprendizado, pode contribuir para melhorar o projeto. Entre as abordagens mais conhecidas, a avaliao emprica a mais usada para avaliar a usabilidade de ambientes virtuais. Pode-se utilizar tcnicas como anlise de videotape, entrevistas, questionrios e monitoramento psicolgico. Atravs destas tcnicas, possvel medir as taxas de erros, carga de trabalho, aprendizado, tempo e taxa de realizao de tarefas. Avaliao da segurana. A segurana de software uma atividade que garante a qualidade de software. Estas atividades tentam encontrar e avaliar casualidades que possam agir negativamente sobre o software e provocar uma falha em todo o sistema. Se as casualidades puderem ser identificadas prontamente no processo de engenharia de software, possvel especificar

102

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

caractersticas de projeto de software para eliminar ou tratar essas casualidades. A modelagem e anlise podem ser usadas como parte da segurana de software. Primeiro, estas casualidades so identificadas. Ento, tcnicas de anlise so utilizadas para determinar a gravidade e a probabilidade de ocorrncia. Finalmente, a especificao pode conter uma lista de eventos indesejveis que devem ser gerenciados (dar respostas desejadas do sistema aos eventos). Avaliao do valor da tarefa e aplicao. Para avaliar o valor de um sistema de RV para a aplicao para o qual foi desenvolvido, necessrio que, primeiramente, defina-se um critrio em que o valor ser considerado. Desde que a anlise da tarefa j tenha sido feita durante o processo de especificao de requisitos, uma abordagem avaliar o sistema atravs da anlise do sucesso para cada sub-tarefa. Uma falha desta abordagem para avaliar o valor do sistema para a aplicao que se assume, em alguns casos, erroneamente, que os usurios realizaro tarefas da mesma maneira que antes, apenas um pouco melhor devido ao sistema de RV. Esta abordagem erra quando os usurios podem realizar tarefas com este sistema que no poderiam fazer antes ou de maneira indiscutivelmente diferente da anterior.

5.3. Exemplos de Ambientes Virtuais


Uma srie de ambientes e aplicaes de ambientes virtuais foram desenvolvidos, valendo-se do processo de desenvolvimento proposto nas sees anteriores. Alguns desses ambientes virtuais so destacados a seguir. Museu Virtual. um ambiente virtual que representa um Museu Histrico, de visitao pblica, representando uma rplica das salas e objetos existentes no museu [Kirner, 1999].

103

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Ambiente de Visualizao de Informao. um ambiente que combina recursos de realidade virtual e visualizao de informao, servindo como uma ferramenta de visualizao de dados [Kirner, 2000].
Ambiente de Comrcio Eletrnico. Trata-se de um ambiente virtual que segue uma metfora de um shoping center, para vendas atravs da Internet [Kirner, 2003]. Ambiente Colaborativo para a Educao. um ambiente multi-usurio, baseado na teoria pedaggica do construcionismo, funcionando na Internet, para suporte a diferentes aplicaes educacionais [Kirner, 2001; Kawamoto, 2006].

Mquina de Medir por Coordenadas. O ambiente virtual simula a mquina, sendo de grande utilidade para o ensino da engenharia na rea de engenharia [Calonego, 2004]. Ambiente de Simulao de Sistema de Tempo Real. Trata-se de um ambiente virtual para simulao de uma aplicao na rea de manufatura [Kirner, 2005]. Visualizao de Dados. um ambiente virtual, com realidade aumentada, que suporta a visualizao de dados em um sistema de pedgio rodovirio [Kirner, 2006]. O uso de um processo sistemtico no desenvolvimento dos ambientes e aplicaes de realidade virtual teve impactos positivos, em termos de produtividade na execuo das etapas e fases e em termos de qualidade do produto final obtido.

104

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

5.4. Concluso
Este trabalho apresentou um processo sistemtico de desenvolvimento de ambientes virtuais, baseado nos conceitos de engenharia de software e nas caractersticas especficas das aplicaes de realidade virtual. O processo proposto segue uma abordagem iterativa, atravs da qual se vai criando prottipos, que so avaliados e refinados, visando obter o produto final desejado. Vrios ambientes e aplicaes de realidade virtual, alguns incluindo realidade aumentada, tm sido criados com o suporte do processo apresentado. Tal abordagem tem as vantagens de possibilitar um desenvolvimento rpido e mais econmico, e de produzir aplicaes de boa qualidade e de fcil manuteno. Avaliaes especficas do processo proposto, envolvendo, por exemplo, estudos empricos, poderiam indicar mais precisamente os pontos positivos da abordagem e apontar aspectos a serem melhorados.

5.5. Referncias Bibliogrficas


Calonego Jr, N.; Kirner, C.; Kirner, T.G.; Abackerli, A.J. (2004) Implementation of a virtual environment for interacting with a numeric command machine, Proceedings of the 3rd IEEE VECIMS International Conference, Boston, MA, p. 125-130. Kalawsky, Roy S. (1993) The Science of Virtual Reality and Virtual Environments, Addison-Wesley, Reading, MA, 1993. Kawamoto, A.L., Kirner, T.G. and Kirner, C.(2006) Experience on the Implementation of a Collaborative Virtual Environment for Educational Applications. Proceedings of the XXIX IEEE 105

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

International Conference on Systems, Man and Cybernetics, Taipei, Taiwan, p.315-321. Kirner, C., and Pinho, M.(1996) Introduo Realidade Virtual, Minicurso JAI/SBC, Recife, PE. Kirner, T.G., Martins, V.F. (1999) A Model of Software Development Process for Virtual Environments: definition and a case study. Proceedings of the 2nd IEEE ASSET International Symposium, Richardson, TX, pp. 155-161 32. Kirner, T.G., Martins, V.F. (2000) Development of an Information Visualization Tool Using Virtual Reality. Proceedings of the 15o ACM Symposium on Applyed Computing, Como, IT, p.604 607. Kirner, T.G., Kirner, C., Kawamoto, A.L. and Wazlawick, R.S. (2001). Development of a Collaborative Virtual Environment for Educational Applications. Proceedings of the ACM WEB3D International Conference, Paderborn, Germany, pp. 61-68. Kirner, T.G., Kirner, C., Aquino Jr., P.T. (2003) Development of a Virtual Reality-Based Interface to Support E-Commerce Applications Proceedings of the 3rd IFIP Conference on eCommerce, e-Business, and e-Government, Guaruj, SP, p.640 649. Kirner, T.G., Martins, V.F. (2004) Contribuio Engenharia de Requisitos de Ambientes Virtuais. Proceedings do 7o Workshop de Engenharia de Requisitos, Tandil, Argentina, p.263 273. Kirner, T.G. and Kirner, C. (2005) Simulation of Real-Time Systems: an object-oriented approach supported by a virtual reality-based tool. Proceedings of the 38th Annual Simulation Symposium, San Diego, p.188 195. 106

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Kirner, C., Kirner, T.G. (2006) A Data Visualization Virtual Environment Supported by Augmented Reality, Proceedings of the XXIX IEEE International Conference on Systems, Man and Cybernetics. Taipei, Taiwan, p.97-102. Martins, V.F. (2000) Processo de Desenvolvimento de Ambientes e Aplicaes de Realidade Virtual. Dissertao de Mestrado (Cincia da Computao), Universidade Federal de So Carlos. Sommerville, I; Sawer, P. (1997) Requirements Engineering: A Good Practice Guide, John Wiley & Sons, England. Stuart, R. (1996) The Design of Virtual Environments, McGrawHill, Fairfield, PA. Vince, J. (2004) Virtual Reality Systems, Addison-Wesley, Reading, MA.

107

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Captulo

6
Ferramentas para Desenvolvimento de Aplicaes de Realidade Virtual e Aumentada
Marcelo de Paiva Guimares1,2, Bruno Barberi Gnecco1 e Rodrigo Damazio2 Faculdade de Campo Limpo Paulista Caixa Postal Campo Limpo Paulista SP Brasil marcelodepaiva@gmail.com, brunobg@gmail.com Centro Universitrio Adventista de So Paulo Est. de Itapecerica, 5859 CEP 05858-001 - So Paulo-SP rodrigo@damazio.org
2 1

Abstract This chapter presents an overview of how to use existing tools to develop Virtual Reality and Augmented Reality applications. These tools make development of new applications easier, by abstracting software complexity and reducing development time. We describe the most important features to be considered and sought for in those tools, allowing the developer to make the best choice for his particular needs. We also discuss, for each tool, their main advantages and disadvantages, types of applications they are 108

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

better suited for, the developer knowledge required for their use and their future perspective. Resumo Este captulo apresenta uma viso geral do uso de ferramentas j existentes para o desenvolvimento de aplicaes de Realidade Virtual e Realidade Aumentada. Estas ferramentas facilitam a criao de novas aplicaes, abstraindo a complexidade do software e reduzindo o tempo de desenvolvimento. So abordados os principais aspectos a serem considerados e buscados nelas, o que permite ao desenvolvedor realizar a escolha conforme o seu problema. Tambm so discutidas as suas principais vantagens e desvantagens, tipos de aplicaes a que melhor se prestam, o perfil do desenvolvedor para utiliz-las e suas perspectivas futuras.

6.1. Introduo
A necessidade de ferramentas para o desenvolvimento de aplicaes de Realidade Virtual (RV) e Realidade Aumentada (RA) evidente. Estas bibliotecas devem atender os requisitos bsicos de software, como: usabilidade, suporte a novas tecnologias, desempenho, manutenibilidade, tolerncia a falhas, portabilidade e reusabilidade. Alm disso, devem fornecer recursos especficos para as reas de RV e RA, como suporte a dispositivos de entradas no convencionais (cmeras e mouses 3D) e gerao de imagens em tempo real. Ferramentas de alto nvel evitam a necessidade de conhecimento profundo de material de base (como computao grfica, interface com o sistema operacional etc.), permitindo que o desenvolvedor foque apenas no seu aplicativo em si. Alm disso, promovem o reuso de estruturas e algoritmos comuns para gerncia dos recursos utilizados. Este captulo contribui, inicialmente, com 109

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

uma viso clara dos principais itens a serem analisados nas ferramentas de desenvolvimento de RV e RA, como, por exemplo, questes de desempenho, escalabilidade, facilidade de uso, expanso, documentao e exemplos disponveis. Em seguida, as ferramentas mais populares na rea sero avaliadas e comentadas, incluindo: Blender, Panda3D, Ogre, ARtoolKit e ARtoolKit Plus, entre outras. Cada uma das ferramentas apresentadas ser analisada conforme os itens desejveis em tais ferramentas. Para que o leitor tenha uma noo do que cada uma delas capaz. Ao terminar a leitura deste captulo, o leitor estar apto a fazer uma escolha consciente da ferramenta mais apropriada para sua pesquisa. A Figura 6.1 mostra uma viso geral da hierarquia das principais ferramentas de desenvolvimento. Esta hierarquia composta de: sistemas operacionais; bibliotecas de comunicao e sincronizao (utilizadas somente em aplicaes distribudas); bibliotecas e pacotes grficos (coleo de classes que oferecem um conjunto de servios); e pacotes desenvolvimento (conjunto de softwares e demais artefatos usados para criar as aplicaes). Notase que existe uma vasta gama de opes disponveis para cada um dos graus da hierarquia, e que essas opes podem ser combinadas para criar um aplicativo. Todas as opes podem ser utilizadas tanto para as aplicaes de RV quanto de RA. Quanto mais alta na hierarquia, a ferramenta oferece maior abstrao dos detalhes de desenvolvimento. A maioria dos projetos atuais tem utilizado os pacotes grficos, pois requerem menos esforo para o desenvolvimento, em comparao com o uso direto de APIs como OpenGL ou DirectX, alm de serem mais flexveis, possibilitando a customizao conforme os requisitos do projeto. Quanto aos pacotes de desenvolvimento de contedo, estes evoluram muito nos ltimos anos. A soluo livre mais comumente usada, o Blender, oferece alm dos servios de modelagem recursos de interao via linguagem de programao 110

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Python, alm de ferramentas para criao de aplicativos simples sem o uso de programao. Em geral, contudo, prefervel utilizar ferramentas externas para a criao do aplicativo propriamente dito, devido maior flexibilidade e desempenho. Atualmente, tornou-se comum todas as ferramentas de desenvolvimento fornecerem wrappers para linguagens interpretadas como Python e Lua, permitindo que o desenvolvimento utilizando essas linguagens seja feito dentro de um ambiente de alto desempenho e sem as limitaes de aplicaes de criao de contedo. Aplicaes de Realidade Virtual e Realidade Aumentada Pacotes de Desenvolvimento Pacotes Grficos Bibliotecas Grficas Bibliotecas de comunicao

Aplicaes centralizadas, aplicaes distribudas VRjuggler, Blender, Dart

Ogre, Panda3D, OpenSG, ArToolkit, ArTag, OpenSceneGraph OpenGL, DirectX PVM, MPI Windows, Linux, MacOS das ferramentas de

Sistema Operacional
Figura 6.1 Hierarquia desenvolvimento.

6.2 Aspectos gerais


Existem fatores desejveis nas ferramentas de desenvolvimento de aplicaes de RV e RA, como: facilidade de uso, confiabilidade, 111

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

desempenho, legibilidade, robustez, escalabilidade, expansibilidade, documentao, compatibilidade e reusabilidade do cdigo que as utiliza. Esses fatores devem servir como requisitos e preocupaes a serem avaliados durante o processo de escolha de qual ferramenta que ser utilizada em um determinado projeto. Para atender a esses requisitos e preocupaes, so necessrias ferramentas de desenvolvimento que acompanhem a rpida evoluo a que esto sujeitas as reas envolvidas. Estas ferramentas devem direcionar o desenvolvimento de aplicaes de alta flexibilidade e qualidade, a fim de que possam adequar-se com mais facilidade ao dinamismo das tecnologias e dos ambientes onde so utilizadas. difcil encontrar uma ferramenta que englobe todas as caractersticas desejveis, pois, geralmente, cada uma delas mais apropriada para um certo tipo de aplicao, levando necessidade de uma escolha cuidadosa e consciente por parte do desenvolvedor. Uma escolha comum, por exemplo, a deciso entre uma ferramenta de uso simples com recursos limitados e outra de uso mais complicado, porm que oferece mais recursos. No desenvolvimento de aplicaes de RV e RA, essas preocupaes tambm devem estar presentes, e os principais requisitos que um ambiente de desenvolvimento deve fornecer so [Guimares, 2004; Rocha, 2003]: Desempenho: a ferramenta deve fornecer recursos que possibilitem alto desempenho das aplicaes: caso contrrio, pode causar baixa interatividade e falta de imerso. Alm disto, o baixo desempenho do sistema pode causar uma baixa taxa de apresentao dos quadros, o que pode gerar problemas conhecidos como cybersickness (dores de cabea, nusea e instabilidade postural) aos usurios. Um desempenho suficiente do subsistema grfico fundamental;

112

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Extensibilidade: como novos recursos surgem constantemente, importante que a ferramenta possibilite a extenso das funcionalidades j disponveis. Viabilizando que, por exemplo, um novo tipo de rastreador ou joystick seja usado nas aplicaes ou que novos recursos de uma placa grfica mais moderna sejam incorporados sem modificao do cdigo do aplicativo; Flexibilidade: a ferramenta deve permitir a alterao de parmetros das aplicaes em tempo de execuo; fcil incorporao ou modificao de funcionalidades. Assim, as ltimas tecnologias, como algoritmos de reconhecimentos de imagens especficos ou efeitos grficos que necessitem de hardware de ltima gerao, podem ser incorporados facilmente, e simplesmente desativados quando no for possvel utiliz-los; Simplicidade: embora as aplicaes de RV e RA sejam naturalmente complexas, pois envolvem conhecimento de diversas tecnologias, o ambiente de desenvolvimento no precisa s-lo. O ambiente deve possibilitar a criao de aplicaes da forma mais fcil possvel, permitindo ento o desenvolvimento sem o conhecimento de todas as particularidades do ambiente. Por exemplo, um editor de cenrios, sistema de gerenciamento de objetos e o suporte a linguagem scripts podem auxiliar muito no processo de desenvolvimento de um jogo, fazendo com que a lgica e contedo do jogo sejam isolados de sua infra-estrutura; Robustez: as aplicaes de RV e RA so complexas, o que aumenta a possibilidade de ocorrncia de falhas, sejam elas de hardware (defeito de uma placa, queda da rede, queda de um n) ou de software, como bugs, deadlocks, excees e falta de recursos. Por isso, necessrio que o ambiente fornea recursos para o tratamento de falhas, permitindo que as aplicaes continuem executando mesmo se algumas destas ocorrerem; 113

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Portabilidade: em sistemas que necessitem ser executados em mltiplas plataformas, como comum no caso de jogos, esta caracterstica pode ser um requisito importante. Ela consiste na possibilidade do ambiente fornecer recursos para que as aplicaes de RV e RA possam ser instaladas e facilmente portadas para diferentes arquiteturas de hardware (Personal Computers PCs, Personal Digital Assistant PDAs, consoles de jogos) e de software sistemas operacionais (Linux, Irix, Windows) e linguagem (C/C++/C#, Java). Todavia, outras caractersticas podem ser consideradas determinantes de portabilidade, como suporte a dispositivos, a habilidade de abrir e converter uma variedade de formatos de entrada e outros. Mesmo nos sistemas que no so planejados para mltiplas plataformas, recomendvel um mnimo de considerao desse fator, caso ele venha a ser um requisito; Processos-leves seguros (Thread safety): suporte de forma simples e automtica a processos-leves, que no exige um trabalho ou a utilizao de outras solues em vez de processosleves. Esse recurso especialmente importante para que os aplicativos possam tomar vantagem da utilizao de CPUs com mltiplos ncleos, que vm se tornando comuns tanto em PCs quanto em consoles de jogos; Heterogeneidade: se possvel, desejvel que a mesma aplicao possa ser executada em mquinas heterogneas. Assim, pode-se, por exemplo, ter alguns usurios utilizando a mesma aplicao do Windows, enquanto outros no Linux, e que ambos obtenham a mesma experincia, alm de poderem interagir uns com os outros sem diferenas. Um ambiente de desenvolvimento ideal seria aquele que alm de resolver os problemas pertinentes s aplicaes de RV e RA atendesse os requisitos bsicos de software. Visando 114

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

principalmente o uso comercial, em que os ambientes geralmente no so de alta qualidade como os dos laboratrios de pesquisas, esses requisitos tornam-se caractersticas fundamentais para uma ferramenta de desenvolvimento de tais aplicaes.

6.3 Ferramentas de Realidade Virtual


Todas as ferramentas voltadas para RV podem ser utilizadas para RA. Geralmente, as ferramentas de RA oferecem tambm recursos adicionais de Viso Computacional, para que possam se integrar facilmente com o ambiente. 6.3.1 Panda3D Panda-3D um engine para jogos desenvolvida pela Disney e pela Universidade Carnegie Mellon. Um engine uma coleo de mdulos de simulao que no especifica diretamente o comportamento ou ambiente do jogo. Engines incluem recursos como, por exemplo: captura de eventos de entrada; gerao de sada grfica e de udio; gerencia dinmica do mundo de jogo; facilidades para criao de lgica da aplicao. Panda-3D permite o desenvolvimento de aplicaes 3D e de jogos. Ela foi desenvolvida em C++, mas fornece um binding para a linguagem Python, uma linguagem interpretada, interativa, tipada dinamicamente e fortemente, orientada a objetos, e pensada e estruturada para o ensino de programao. Por isso, tem uma compreenso simples da estrutura para o fcil aprendizado (baixa curva de aprendizagem) [Netto et al., 2006]. O processo de desenvolvimento com o Panda3D consiste em escrever programas em Python para controlar esta biblioteca, e a programao se baseia na manipulao de cenrios e atores prcriados. Utilizando Panda 3D possvel navegar em cenas 3D, utilizar sada estereoscpica, utilizar diversos dispositivos de interao, como capacetes de visualizao (HMD Head- Mounted 115

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Display), sensores de posio e outros. Cabe ressaltar que esta biblioteca de cdigo livre http://panda3d.org/. Para a modelagem das peas e do ambiente pode-se utilizar ferramentas de modelagem como o Blender e o 3DStudio Max. Alm dos recursos para manipulao de imagens e ambientes desta biblioteca, como a capacidade de adio de estereoscopia, destaca-se a baixa curva de aprendizagem, o rpido desenvolvimento de ambientes, a fcil instalao, a documentao e os exemplos disponveis, e o suporte dos sistemas operacionais Windows e Linux. 6.3.2 Ogre OGRE (Object-oriented Graphics Rendering Engine) um engine grfico que funciona em Windows, Linux e MacOS X, e trabalha tanto com OpenGL como DirectX. Ele prov uma vasta gama de plugins, ferramentas e add-ons, que favorecem a criao de vrios tipos de aplicaes grficas, empregando diversos conceitos inerentes ao desenvolvimento destas. Este software licenciado sob os termos da GNU Lesser Public License (LGPL) e pode ser encontrado em http://www.ogre3d.org/ [Farias et al., 2006; Netto et al., 2006]. Foi desenvolvido em C++ e designado a tornar a implementao de aplicaes mais fcil e intuitiva para os desenvolvedores, utilizando grficos 3D acelerados por hardware. Ele possibilita a utilizao de diversas configuraes de hardware 3D (GPUs) disponveis no mercado, desde as mais obsoletas s mais sofisticadas. O OGRE fornece uma interface que permite que o desenvolvedor verifique se o hardware disponvel tem capacidade mnima para executar a aplicao. Isto possibilita o ajuste de uma 116

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

tcnica alternativa a ser utilizada para que se tenha um melhor proveito dos recursos disponveis. Este ajuste de tcnica tambm pode ser aplicado aos materiais e efeitos, incluindo verses de shaders e texturas multicamadas. Esta biblioteca possui uma boa documentao e est bastante difundida pela comunidade. A interface nativa em C++, mas existem wrappers para Java, .Net e Python, o que facilita a sua utilizao em diversos ambientes. OGRE no um game engine, mas um rendering engine genrico que pode ser incorporado a bibliotecas de tratamento de entradas, de processamento de som e as plataformas que disponibilizem algoritmos de inteligncia artificial. 6.3.3 OpenSceneGraph O OpenSceneGraph (OSG) uma biblioteca de gerncia de cena baseada em grafos em cena, que implementa vrios algoritmos de otimizao: descarte por campo de viso, plano de ocluso, descarte de pequenos objetos, suporte a nveis de detalhe discretos, ordenao por estado, suporte a diversos tipos de arquivos atravs de uma interface plugvel, shaders, vertex arrays, display lists e vertex buffers, sendo os trs ltimos otimizaes especficas do OpenGL [Silva et al, 2003]. A biblioteca foi projetada com uma viso clara de engenharia de software, utilizando diversos padres de projeto para permitir que a biblioteca seja facilmente expansvel e que suporte todos os recursos que podem ser necessrios a aplicaes de RV. Justamente devido a essa expansibilidade, o OSG oferece uma vasta gama de plug-ins que permitem integr-lo facilmente com outras bibliotecas, tais como OpenDE para simulao fsica, OpenAL para som e a OSGART (disponvel em duas verses, uma 117

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

livre e outra comercial), que oferece funes especficas para RA. Alm disso, muitas engines foram criadas por cima do OpenSceneGraph, como o caso da Delta3D e Cooki3D. Apesar da grande expansibilidade, o OpenSceneGraph preso com a API OpenGL, de forma que no pode ser usada em algumas plataformas (notadamente Xbox 360). Em todas as plataformas onde o OpenGL suportado, como Windows, Linux, MacOS X, Playstation 3, Irix e outras, o OpenSceneGraph pode ser utilizado diretamente, inclusive com suporte a renderizao em processos-leves, de forma a no bloquear o processamento principal do aplicativo devido comunicao com o hardware 3D. Finalmente, vale notar que a biblioteca acompanha uma grande quantidade de exemplos para demonstrar todas as suas funcionalidades, e um projeto de ampla documentao est em progresso. Disponvel em http://www.openscenegraph.org/. 6.3.4 OpenSG Desenvolvida por diversos grupos de pesquisa, sendo a maioria da Alemanha, a OpenSG uma biblioteca que utiliza grafo de cena para a gerao de imagens em tempo real. O seu principal objetivo fornecer um ambiente de manipulao de estrutura de dados em mltiplos processos-leves seguros (multithreaded-safe), que no comprometa o desempenho. Para isso, o controle dos processosleves realizado de maneira explcita, ou seja, os desenvolvedores devem se preocupar com os travamentos (lock) e destravamentos (unlock) dos processos-leves, o que dificulta o uso desta biblioteca. A OpenSG fornece recursos para que um grafo de cena seja manipulado por processos-leves independentes [Guimares, 2004]. Esses processos-leves geram a necessidade de replicao de dados, mas o esquema de organizao de dados (dados separados 118

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

da estrutura da cena) faz com que apenas os dados necessrios sejam replicados. Alm disso, cada uma delas possui uma lista de atributos alterados. Esta lista utilizada para que a sincronizao seja feita apenas dos dados que foram alterados. OpenSG possui diversos recursos para a criao de objetos, sendo possvel construir um vetor com a indicao de como as estruturas devem ser criadas, como por exemplo, tringulos, linhas, pontos e malhas de tringulos. Alm disso, permite a reorganizao dos dados por intermdio de ndices. Essa biblioteca fornece a possibilidade de ser estendida. Por exemplo, pode ser utilizada para escrever novos leitores de formatos de imagem. Atualmente, ela disponibiliza leitores de VRML e OBJ. O OpenSG tem como base um conjunto de bibliotecas bsicas, que so compostas por funes de baixo nvel e classes bases, por exemplo, vetores e volumes. Ainda, contm uma abstrao do sistema operacional e empacotadores (wrappers) bsicos para os mltiplos processos-leves. Alm das bibliotecas bsicas, possui as bibliotecas de sistema, que contm os objetos de alto nvel, como, os mtodos de manipulao de grafos de cena, os leitores de imagens e cenas, e as classes de manipulao de janelas. As aplicaes OpenSG podem ser executadas atualmente nos sistemas operacionais Windows, Linux, MacOSX, Solaris e outros. Pode ser encontrada em http://www.opensg.org/. 6.3.5 Crystal Space Crystal Space um engine para o desenvolvimento de aplicaes 3D escrito em C++. Ele um software open source que suporta Microsoft Windows, Linux, Unix e Mac OS X. Sua documentao boa, com exemplos de suas capacidades bsicas, e h um editor 119

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

de cenrios. Destaca-se nesta ferramenta a modularidade de seus componentes, visto que funcionam de maneira independente uns dos outros. Seu site http://www.crystalspace3d.org/. Crystal Space disponibiliza diversas funcionalidades, como: suporte a OpenGL (em todas as plataformas), SDL (em todas as plataformas SDL), X11 (UNIX e Linux) e SVGALib (Linux); mapeamento de texturas com perspectiva de sombreamento; mipmapping; preciso de sub-pixel e sub-texel ; uso de portais para delimitao de reas permitindo renderizao seletiva da geometria do ambiente; iluminao esttica com sombreamento prcalculado; iluminao dinmica colorida com sombreamento transparente e semitransparente; espelhamento; suporte a rvores BSP; suporte a superfcies curvas; suporte a correo de profundidade e neblina volumtrica colorida; sistema hierrquico de deteco de coliso; teste de visibilidade baseado em z-buffer; suporte a sons 3D; movimentao de objetos e scripts para controle da movimentao; suporte a LOD. 6.3.6 Irrlicht Irrlicht um engine 3D escrito em C++ de alto desempenho e licenciado sob a licena zlib. Possui uma boa documentao, com diversos exemplos, e implementa diversas caractersticas desejveis em um engine moderno, como sombras dinmicas, sistemas de partculas, animao de personagens, suporte a cenas internas e externas e deteco de coliso. Suporta tanto Direct3D quando OpenGL, e roda em Windows, Linux e MacOs X. Outras caractersticas importantes desta biblioteca incluem: uma larga e extensvel biblioteca de materiais, incluindo vertex e pixel shaders; binding para linguagens .NET, renderizao por software para plataformas sem acelerao grfica, API nativa para GUI 2D (botes, listas etc.) e funes de desenho 2D, suporte a 120

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

uma larga gama de formatos de modelos e imagens, e outros. A biblioteca possui boa documentao e exemplos. Pode ser baixado de http://irrlicht.sourceforge.net/ 6.3.7 VRJuggler VR Juggler um framework que esconde a complexidade da infraestrutura e das especificaes dos ns (dispositivos, monitores e computadores). As aplicaes so independentes dos dispositivos de entrada/sada. Os desenvolvedores podem acessar diretamente as API grficas (OpenGL ou OpenGL Performer) e utilizar diversos dispositivos como luvas, mouses, monitores e capacetes de visualizao. Foi projetado como uma soluo padro para aplicativos de RV [Guimares 2004]. Seu site http://www.vrjuggler.org. 6.3.8 Blender Blender um software (editor grfico) de modelagem e animao 3D, que est sob a licena GNU-GPL. Ele oferece uma gama enorme de recursos e funcionalidades para criao de objetos 3D, renderizao de cenas, animao com um editor de vdeo integrado e ps-produo, tudo em um nico ambiente de trabalho. Ele est disponvel para vrias plataformas, como Microsoft Windows, Mac OS X, GNU/Linux, IRIX, Solaris, FreeBSD, SkyOS e MorphOS. Esta ferramenta high-end fornece funcionalidades similares s encontradas em softwares comerciais como XSI, Cinema 4D, 3D Studio Max e Maya. Estas caractersticas incluem avanadas ferramentas de simulao tais como dinmica dos corpos rgidos, dinmica de fluidos, dinmica de corpos flexveis, avanadas ferramentas de modelagem, poderosas ferramentas de animao de personagens, e sistema de materiais baseados em Node e um wrapper para a linguagem Python [Brito 2006, Alves 2006 ].

121

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Apesar do arquivo nativo do Blender ser .BLEND, ele fornece recursos para leitura e escrita der muitas extenses tais como .3DS, .DXF, .WRL (VRML 2.0, VRML 95), .X (Directx), .MD2, entre muitas outras. Os avanos realizados nos ltimos anos permitem que o Blender seja comparado com softwares high-end comerciais, tais como Maya e 3D Studio Max. A documentao sobre ele bastante farta. Disponvel em http://www.blender.org. 6.3.9 FluxStudio Flux Studio (conhecido como Vizx3D) uma ferramenta grfica (editor) de modelagem e animao voltada para o desenvolvimento de aplicaes para Web (3D) e contedo de mundos virtuais. Ela suporta apenas Windows. A licena deste software pertence Media Machines. Como um editor grfico, de fcil utilizao e orientado a visualizao, sendo capaz de abrir contedos X3D, VRML97 e vrios outros formatos de arquivos. Utilizando a sua interface grfica possvel definir animaes, regras de interatividade que podem disparar luzes, sons e animaes. A GUI tambm fornece recursos para depurar as aplicaes e wizards. Disponvel em http://www.mediamachines.com/.

122

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Tipo Documentao Panda3D Ogre API, GUI API ++ +++ + +++ ++ ++ +++ +++ +++

Fcil de RecursosCustos usar ++ + ++ + + ++ + + +++ ++ +++ +++ ++ +++ +++ ++ +++ ++ +++ +++ +++ +++ +++ +++ +++ +++ -

Linguagem de Programao C++, Python Java, .Net, Python C++, Lua, Python, Java, .NET C++, Python C++ C++, .NET C++ Python No oferece

OpenSceneGraph API OpenSG Crystal Space Irrlicht VRJuggler Blender FluxStudio API API, GUI API GUI, API GUI GUI

Tabela 6.1 - Tabela de comparao de ferramentas de RV.

6.4 Ferramentas de Realidade Aumentada


As ferramentas voltadas para RA auxiliam a construo dos objetos virtuais e sua integrao ao ambiente real, incluindo alguns comportamentos, como, por exemplo, quando um marcador detectado um certo objeto adicionado na cena. A seguir so apresentadas algumas ferramentas voltadas para RA. Alm destas, existem outras como o ARStudio, JARToolKit e o DART. 6.4.1 ARToolkit O ARToolKit um software para a deteco dos marcadores nas imagens e adio dos objetos virtuais nas imagens do mundo real. Este software utiliza mtodos de viso computacional para fornecer a posio e o rotao 3D de padres em imagem do ambiente. Estes

123

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

padres so expressos por marcadores 2D e so previamente cadastrados antes da execuo da aplicao. As seguintes etapas so executadas para a deteco dos marcadores: inicialmente, a imagem capturada pela cmera ou por outro processo transformada em uma imagem binria (com valores em preto e branco). Logo aps, o software analisa a imagem e encontra os marcadores, e os compara com os previamente cadastrados. Quando encontrado um marcador, um objeto tridimensional virtual adicionado imagem real, na posio e orientao do marcador original. As principais caractersticas do ARToolKit so: tracking para posicionamento e orientao de uma cmera; marcadores que tm como padro um quadrado de bordas pretas; possibilidade de uso de qualquer marcador, desde que o mesmo obedea ao padro; cdigo simples para calibrao da cmera; bom desempenho para aplicaes de RA em tempo real; distribuio multi-plataforma (por exemplo, SGI IRIX, Linux, MacOS e Windows) e distribuio do cdigo fonte completo, que pode ser encontrado em http://www.hitl.washington.edu/artoolkit/. 6.4.2 ARToolkit Plus O ARToolKitPlus baseia-se no ARToolkit. Esta ferramenta fornece algumas otimizaes, como, por exemplo, possibilidade de se utilizar computaes de ponto fixo ao invs de ponto flutuante, com o objetivo de gerar aplicaes eficientes para dispositivos mveis, tais como PDAs e smartphones. O sistema de marcadores semelhante ao do ARToolKit, porm o desenho no interior do marcador a sua identificao. Esta codificao possibilita que o usurio utilize at 512 marcadores diferentes, facilitando a identificao dos marcadores (diminui a incidncia de confuso de identificao). 124

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Destaca-se no ARToolKitPlus a utilizao da tcnica de limiar adaptativo, que permite o ajuste dos sistema de deteco dos marcadores conforme a luz do ambiente sofre alteraes. Disponvel em http://studierstube.icg.tugraz.ac.at/handheld_ar/artoolkitplus.php. 6.4.3 ARTag O ARTag tambm teve como base o ARTookit. Seu objetivo foi resolver alguns problemas encontrados nesta ltima ferramenta, principalmente no processo de deteco de marcadores, tais como o falso positivo quando o sistema acusa a presena de um marcador, mas ele no existe; falso negativo quando o sistema no acusa a presena de um marcador, mas ele existe; e o de confuso quando o marcador no ambiente um e o sistema o identifica como sendo outro [Fiala, 2005]. ARToolKit e o ARTag utilizam padres para identificao dos marcadores, porm ARTag compara cdigos digitais compostos de 0s e 1s, ao invs de imagens como o ARTookit, diminuindo o processamento requerido para sua identificao. Outra caracterstica do ARTag que ele detecta a presena de ocluso e controle de luz, que so pontos falhos do ARToolkit, alm de apresentar menor jitter da posio detectada em caso de perda de foco. O ARTag est disponvel para Windows e Linux, sem cdigo fonte. Disponvel em http://www.artag.net. 6.4.4 Dart Designers Augmented Reality Toolkit (DART) um editor grfico. Ele foi desenvolvido como um conjuto de extenses do ambiente de programao multimdia Macromedia Director. Ele composto por behaviors (extenses do Director escritas na linguagem LINGO) e Xtras (plugins para o Director escritos na linguagem 125

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

C++). Esta ferramenta utiliza o ARToolKit para a captura de vdeo, tracking e para o processo de reconhecimento de marcadores [MacIntyre, 2004]. Este projeto voltado para aplicaes onde a mdia gerada por computador diretamente integrada percepo dos participantes. Ele suporta Windows e MacOSX. Apesar de estar disponvel para uso livremente, ele exige o Macromedia Director, que um software comercial. Disponvel em http://www.gvu.gatech.edu/dart/.
Tipo Documentao Fcil de Recursos Custos usar ARToolkit ARToolkit Plus ARTag DART API API API GUI ++ ++ + ++ ++ ++ ++ +++ ++ +++ ++ ++ +++ +++ + + Linguagem de Programao C C++ C++, C# No oferece

Tabela 6.2 - Tabela de comparao de ferramentas de RA.

6.5 Concluso
O desenvolvimento das ferramentas de RV e RA tem sido contnuo, e estas tendem a se tornar cada vez mais sofisticadas e completas. Esto sendo constantemente melhoradas graas ao desenvolvimento de hardwares grficos cada vez mais sofisticados, que tm melhorado a qualidade e desempenho de gerao das imagens. As ferramentas de RV tm adquirido maior realismo grfico, suporte a formas mais avanadas de animao e programabilidade por meio de scripts. J as ferramentas de RA tm adquirido maior velocidade de processamento e maior estabilidade no reconhecimento de objetos. Da mesma forma, os processos de desenvolvimento de software e os kits tm tambm evoludo muito, restando ainda, no entanto, muitos problemas ainda em aberto e 126

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

que devem ser pesquisados. Espera-se que os leitores desenvolvam aplicaes com estas ferramentas, contribuindo assim com os testes e aprimoramento das solues de software disponveis.

6.6. Referncias Bibliogrficas


Alves, W.P. Modelagem e Animao com Blender. Editora rica. So Paulo. 2006. Brito, A. Blender 3D:Guia do Usurio. Editora Novatec. So Paulo. 2006. Farias, T.S.M.C. and Pessoa, S.A and Teichrieb, V. and Kelner, J. O Engine Grfico OGRE, In: SRV 2006 - VIII Symposium on Virtual Reality. Belm. Par. Fiala,M."ARTag, a fiducial marker system using digital techniques".Proceedings of the 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05) - Volume 2 - Volume 02.Pages: 590 596. Guimares, M. P. Um ambiente de desenvolvimento de aplicaes de Realidade Virtual baseadas em aglomerados grficos. Tese de doutorado. Escola Politcnica da Universidade de So Paulo. Dezembro. 2004. MacIntyre, B. , Gandy, M., Dow, S., Bolter, J.D. "Tools: DART: a toolkit for rapid design exploration of augmented reality experiences". Proceedings of the 17th annual ACM symposium on User interface software and technology UIST '04. Publisher: ACM Press.2004. Netto, J. C. M.; Moraes, R. M.; Machado, L. S. Um Estudo Comparativo de Ferramentas para a Criao de Jogos Educacionais Baseados em Realidade Virtual. Anais do II Workshop de Aplicaes de Realidade Virtual (WARV'2006). Novembro, Recife, Brasil.2006. 127

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Rocha, E.J.T.S. Forge 16V: Um Framework para Desenvolvimento de Jogos Isomtricos. Dissertao de mestrado.Universidade Federal de Pernambuco. Recife. Dezembro. 2003. Silva, R.J.M.; Wagner, G.N.; Raposo, A.B.; Gattass, M. Experincia de Portais em Ambientes Arquitetnicos Virtuais".SVR 2003 - VI Symposium on Virtual Reality, Ribeiro Preto, SP, Brasil, Out. 2003, pp.117-128.

128

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Captulo

7
Sistemas Distribudos de Realidade Virtual e Aumentada
Ildeberto Aparecido Rodello1, Antonio Carlos Sementille1,2, Jos Remo Ferreira Brega1,2 e Ftima L. S. Nunes1
1

Programa de Ps-Graduao em Cincia da Computao (PPGCC) Centro Universitrio Eurpides de Marilia (UNIVEM) Caixa Postal 2041 17525-901 Marlia SP Brasil Laboratrio de Sistemas de Tempo Real (LSTR) - Departamento de Computao (Dco) - Universidade Estadual Paulista - Unesp Caixa Postal 473 - 17.033-360 - Bauru - Brasil {rodello,semente, remo, fatima}@univem.edu.br

Abstract This chapter aims at presenting the main concepts related to the design and implementation of Distributed Virtual and Augmented Reality Systems. Related to the design, the factors that should be considered in the definition of the environment are presented. The modalities of implementation are discussed, as well as, the factors that could have impact on the perfect running. About implementation, are highlighted the models of communication, the involved protocols, the ways of implementation and some used indicatives for the performance evaluation.

129

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Resumo Este Captulo tem como objetivo apresentar os principais conceitos relacionados ao projeto e implementao de Sistemas Distribudos de Realidade Virtual e Aumentada. Relacionado ao projeto, so apresentados fatores que devem ser considerados quando da definio do ambiente. So discutidas as possveis modalidades de implementao, bem como os fatores que podem ter impacto no perfeito funcionamento. Sobre a implementao so destacados os modelos de comunicao, os protocolos envolvidos, as formas de implementao e os indicativos que podem ser utilizados para avaliar o desempenho.

7.1. Introduo
Em virtude da expanso e do desenvolvimento tecnolgico das redes de comunicao, a concepo e implementao de sistemas que tm o aspecto distribudo e/ou compartilhado como principal agente motivador tem crescido. Atualmente possvel utilizar-se da rede para diversas atividades, incluindo negcios, entretenimento e disseminao de conhecimento, entre outros. Dentro desse contexto, a utilizao da Realidade Virtual (RV) e da Realidade Aumentada (RA) de forma distribuda tem exigido estudos e discusses a respeito dos fatores que podem ser levados em considerao para atingir o sucesso no desenvolvimento de tais tipos de ambiente. interessante destacar que tais fatores devem ser considerados tanto para o uso dos modelos de comunicao comuns (face s aplicaes cotidianas), quanto para aspectos especficos de ambientes de RV e/ou RA. Assim, o presente Captulo procura apresentar e discutir esses fatores, disponibilizando ao leitor a base necessria para a tomada de decises no que diz respeito ao projeto e a implementao de Sistemas Distribudos de Realidade Virtual (SDRV) e Aumentada.

130

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

7.2. Projeto
O projeto de um SDRV envolve uma srie de requisitos que compreendem principalmente a modalidade adotada e os cuidados com uma srie de fatores que afetam seu desempenho. Essa seo apresenta e discute tais requisitos. 7.2.1 Modalidades Considerando-se a finalidade do ambiente virtual (AV) possvel classificar um SDRV e Aumentada em: multiusurio, colaborativo, de grande escala ou de realidade aumentada. Ambientes Virtuais Multiusurio Os AVs multiusurio compreendem aqueles AVs que simplesmente utilizam a infra-estrutura de uma rede de computadores para simular a interao em tempo real entre vrios usurios em um mundo virtual tridimensional compartilhado. Nessa categoria considera-se que no h qualquer ao de auxlio entre os participantes. Cada usurio representado no AV compartilhado por uma entidade (avatar) que visvel, possivelmente sob outro ponto de vista, no computador de cada outro participante. Ambientes Virtuais Colaborativos Em AVDs os participantes podem compartilhar um mesmo espao virtual de trabalho (workspace), onde podero ajudar-se na execuo de uma determinada tarefa, usando os princpios de trabalho cooperativo baseado em computador (CSCW Computer Supported Cooperative Work). Nesse sentido, classificar-se- o sistema como um Ambiente Virtual Colaborativo (AVC) [Benford et al., 1994].

131

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Observa-se que o principal diferencial de um AVC a possibilidade de cooperao entre os usurios na execuo de uma determinada tarefa. Em resumo, as propriedades desse ambiente relacionam-se com: espao, presena e tempo compartilhados; comunicao entre os participantes e; interao com o ambiente [Snowdon et al., 2001]. Ambientes Virtual de Grande Escala Os Ambientes Virtuais de Grande Escala (AVGEs) caracterizam aqueles ambientes que ganham grandes propores no que diz respeito ao seu tamanho, quantidade de objetos presentes, quantidade de participantes e complexidade de gerenciamento, tanto que, por questes de desempenho, o AV pode ser dividido e o controle sobre estas partes ser exercido por diferentes mquinas. Durante a navegao pelo ambiente, o usurio pode penetrar em parties fora do seu domnio, de forma que sua mquina ou servidor dever receber uma rplica dessa partio. Se existirem vrios participantes em uma mesma regio do AV, esse grupo de participantes receber uma cpia dessa regio e, qualquer alterao no AV feita por um membro do grupo, ser retransmitida somente para o restante do grupo. Ambientes Virtuais Distribudos de Realidade Aumentada A interface para aplicaes de RA ainda no tem um grau de desenvolvimento tal como as tradicionais de RV. A insero de objetos virtuais no ambiente real requer diferentes formas de interao, em adio quelas do ambiente gerado computacionalmente. Da mesma forma, os aspectos inerentes distribuio tambm necessitam de cuidados especiais, uma vez que deve haver uma maneira de compartilhar o mundo real entre os participantes.

132

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Assim, os requisitos necessrios para ambientes de RA distribudos tm, adicionalmente, a preocupao com transmisso de imagens do mundo real em tempo real. Assim, os requisitos necessrios para a transmisso de informaes so diferentes, exigindo principalmente, mais largura de banda e qualidade de servio. 7.2.2. Fatores de influncia Assim como qualquer outro AV, a criao de AVDs est bastante ligada com realismo visual e interao. Dessa forma, assuntos como modelagem grfica tridimensional e interao homemmquina constituem uma parte fundamental. Em especial destacase o suporte de comunicao em rede. Por meio de uma rede fornecida a base para que unidades computacionais separadas fisicamente sejam unificadas para implementar um nico AV. Alm disso, os fatores adiante apresentados e comentados afetam, de alguma forma, o desempenho e/ou a complexidade de um AVD. A complexidade, por sua vez, tambm afeta o desempenho, prejudicando o realismo, na forma de atrasos ou lentido. Dessa forma, procura-se estabelecer um nvel de complexidade que torne o AVD aceitvel, tanto em realismo quanto em desempenho. Os principais fatores que devem ser levados em considerao para que isso ocorra so [Greenhalgh, 1996b]: Nmero de participantes De acordo com a quantidade de participantes que o AV pode suportar de forma simultnea, os sistemas de RV podem ser classificados em monousurio (single user) ou multiusurios (multi-user).

133

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Em um sistema monousurio possvel a existncia de outros usurios que so, entretanto, somente meros espectadores, uma vez que a interao com e a navegao pelo ambiente somente so disponveis a um nico usurio. Nota-se que os sistemas multiusurios so mais complexos e exigem um poder maior de computao, relacionando-se, entre outros, a aspectos como gerenciamento desses usurios (login, segurana, etc.). Alm disso, o nmero de tarefas que podero ser executadas pelos usurios outro fator de interferncia. Percepo Em um AVD de fundamental importncia que os participantes tenham a percepo da presena de outros participantes e das aes que estes executam sobre o AV. Quando um participante entra em um local compartilhado, este se torna uma pessoa virtual, denominado de avatar, ou seja, assume uma representao grfica dentro do ambiente. Uma vez dentro de um AVD, cada participante pode visualizar outros avatares localizados no mesmo espao e suas interaes no ambiente. Similarmente, quando um participante deixa o AVD, os outros participantes vem seu avatar partir. Nem todos os avatares precisam ser controlados por participantes. Alguns podem ser entidades sintticas controladas por modelos de simulao dirigidos por eventos. Quantidade de Objetos Presentes no AV Os objetos que compem cada AV tambm so fatores a serem discutidos em termos de quantidade, nvel de detalhes e comportamento. Eles esto relacionados de forma que um equilbrio contribui para o desempenho do sistema. A quantidade de objetos corresponde a quantos objetos estaro presentes na cena,

134

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

de acordo com certo nvel de detalhamento e um comportamento permitido. Objetos mais prximos necessitam de um nvel de detalhes maiores, implicando em um nmero maior de polgonos. Tal nvel, entretanto, no deve ser mantido para o mesmo objeto, quando a uma distncia maior, uma vez que o realismo tende a ser mantido, reduzindo-se os detalhes dos objetos medida que o ponto de vista deles se afasta. O comportamento de um objeto depende principalmente do nvel de interao que o usurio pode ter. Objetos que o usurio pode somente observar tm um nvel de complexidade menor que aquele com o qual o usurio pode interagir, modificar e ajustar. O padro de comportamento, entretanto, depende da finalidade do mundo virtual. AVCs necessitam de um padro comportamental mais apurado, principalmente se estiver sendo utilizado para treinamento [Oliveira et al., 2000]. Em um AVC, o usurio pode ainda ter a possibilidade de explorao do objeto segundo dois aspectos: objetivo ou subjetivo [Greenhalgh, 1996a]. No aspecto objetivo, os usurios esto em consenso a respeito de um determinado objeto, todos interessados nas mesmas informaes. No aspecto subjetivo, o usurio poder ter acesso a informaes exclusivas e adicionais a respeito do objeto, isto , alm daquelas presentes no aspecto objetivo. O modelo subjetivo leva o usurio a conseguir uma maior interao com o ambiente, de forma que este passa a oferecer um conjunto maior de operaes disponveis. Dentre as operaes pode-se citar o acesso base de dados exclusivos de onde o usurio possa filtrar informaes. Particionamento Pelo fato de os seres humanos serem orientados visualmente, 135

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

espera-se ver a representao grfica do AV com todos os detalhes. Porm, o computador no precisa necessariamente renderizar o mundo virtual completo, uma vez que a capacidade visual humana no permite receber um grande nvel de detalhe de objetos distantes e ocultos. Somente os objetos ao redor de uma determinada regio onde se encontra o participante, precisam ser renderizados com um grande nvel de detalhe. Em alguns casos, como na deteco de coliso, pode-se necessitar de taxas de atualizaes que se aproximem das taxas de quadros executados localmente, de maneira a alcanar um maior realismo. Assim, uma soluo vivel dividir o AV em reas menores, melhor gerenciveis, de acordo com o interesse do usurio, aumentando a escalabilidade e o processamento das informaes. Segundo Macedonia et al. (1995), possvel particionar o AVD em grids (retngulos) ou em hexgonos. A associao baseada em grids tem a desvantagem de ter muitos pontos em que vrios retngulos se encontram, apesar de ser mais fcil a implementao. Quando um avatar se aproxima de qualquer um desses pontos, o host precisa renderizar (como forma de antecipao das clulas) os quatro retngulos prximos interseco. Para diminuir esta dificuldade de processamento, pode-se dividir o AV em hexgonos, nos quais somente trs regies se cruzam em um determinado ponto, ao invs de quatro.

7.3. Questes de Implementao


Consciente das questes relacionadas ao projeto necessrio tomar decises de como implement-las. Nessa seo so abordados aspectos relativos aos modelos de comunicao que podem ser adotados, aos protocolos que podem ser utilizados, aos modelos de suporte a implementao e, por fim, os indicativos para avaliao de desempenho. 136

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

7.3.1. Modelos de Comunicao Esses tpicos referem-se s formas como as mquinas se organizam para suportar a troca de mensagens entre os AVs. Cliente/Servidor O paradigma Cliente/Servidor em um AVD implica na comunicao direta somente do cliente com o servidor ou viceversa, no havendo a troca de mensagens entre os clientes. o modelo mais simples. As vantagens e desvantagens deste modelo esto associadas aos fatores bsicos de qualquer modelo Cliente/Servidor. Uma desvantagem a possibilidade de falha no servidor, o que tornaria o sistema inoperante. Para contornar esse problema, a tcnica da replicao de servidores pode ser utilizada. Alm disso, o servidor um gargalo em potencial e, em se tratando de um AVD onde coexistem vrios usurios, danos podem ser causados em termos de latncia. Um eficiente mecanismo de balanceamento de cargas pode solucionar esse problema. Peer to Peer O modelo Peer-to-Peer implica na comunicao direta entre os hosts, sem intermdio de um ou mais servidores. O ponto de estudos neste modelo refere-se complexidade de gerenciamento do ambiente, uma vez que alm do gerenciamento local, cada host deve tambm tratar os acessos remotos. 7.3.2. Protocolos Segundo Kurose e Ross (2006) um protocolo define o formato e a ordem das mensagens trocadas entre duas ou mais entidades comunicantes, bem como as aes realizadas na transmisso e/ou 137

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

no recebimento de uma mensagem ou outro evento. Por envolver comunicao, o protocolo um importante componente de um SDRV e Aumentada. Essa seo apresenta uma viso geral do protocolo TCP/IP, que , de maneira geral, o protocolo mais utilizado na transmisso de informaes. Apresenta tambm alguns protocolos especficos para SDRVs e, por fim, discute superficialmente dois protocolos para redes sem fio (wireless), visto que a mobilidade se torna cada vez evidente no cotidiano. TCP/IP A arquitetura TCP (Transmission Control Protocol) / IP (Internet Protocol) representa um grupo de protocolos que funcionam em conjunto para transmitir informaes pela Internet. Assim, no se usa somente um protocolo, combinam-se protocolos de diferentes camadas para diferentes propsitos. O TCP e o IP so apenas dois dos protocolos de transmisso abrangidos pela arquitetura TCP/IP. O Internet Protocol (IP) o protocolo que define o mecanismo de transmisso no confivel e no orientado conexo. O IP define a unidade bsica de transferncia e o formato exato de todos os dados que passam atravs da Internet. Ele escolhe o caminho pelo qual sero enviados os pacotes ou datagramas (roteamento) do host origem ao host destino [Comer, 1998]. Os hosts so identificados por endereos de tamanho fixo, chamados endereos IPs. Apesar dos esforos para entregar o datagrama no destino, o IP no garante essa entrega. A garantia de entrega, assim como o controle de ordenao do fluxo de dados de responsabilidade dos protocolos de camada mais alta, como o protocolo TCP da camada de transporte [Albuquerque, 2001]. O User Datagrama Protocol (UDP), em contraste com o TCP, no garante que as mensagens sero entregues na ordem

138

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

correta nem se elas sero recebidas. As mensagens so limitadas ao tamanho de um nico pacote (datagrama), que utiliza a transmisso de dados pela rede sem conexo, ou seja, o envio de mensagens consecutivas sem a espera de uma confirmao do destinatrio. Desse modo, o UDP no um protocolo confivel e para certas aplicaes necessria a retransmisso de mensagem. Apesar dessa desvantagem, o UDP muito mais rpido que o TCP e pode ser usado para aplicaes em que os pacotes perdidos no tenham tanta importncia como na transmisso de udio e vdeo [Diehl, 2001]. DIS Em 1985, o Departament of Defense dos Estados Unidos (DoD) iniciou um projeto chamado SIMNET [Macedonia, 1996] com o objetivo de desenvolver um sistema de treinamento de guerra com tanques, aeronaves, projteis e outros que suportassem muitos computadores simultneos em rede. Aps o SIMNET, iniciou-se o projeto Distributed Interactive Simulation (DIS) em 1989, de onde surgiu um protocolo padro com o mesmo nome, reconhecido IEEE em 1993. Baseado em experincias com o DIS, surgiu o projeto High-Level Architecture (HLA) [Dahmann et al., 1997] utilizado para aplicaes distribudas juntamente com o Common Object Request Broker Architecture (CORBA) [Corba, 2001]. Apesar de sua aplicao restrita, o DIS introduziu idias que influenciaram o surgimento de outros protocolos. A especificao do DIS contm 27 formatos de mensagem PDU. H PDUs para cada servio especfico, por exemplo, detonao, disparos de projteis ou marcao de campos minados. A PDU mais importante a de estado da entidade, utilizada para transmitir o estado completo do objeto, posio, orientao e velocidade.

139

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

O DIS exige que cada entidade envie constantemente mensagens de estado dos objetos que esto ativos, para todos os hosts. Ele um protocolo peer-to-peer, mas devido s transmisses constantes das entidades ativas, ele no suporta grande nmero de usurios e, assim, no pode melhorar sua escalabilidade [Diehl, 2001]. VRTP O Virtual Reality Transfer Protocol (VRTP) foi desenvolvido pela DARPA, e espera-se que tenha o mesmo papel em AVD para o VRML (Virtual Reality Modeling Language), quanto o HTTP (Hyper Text Transfer Protocol) tem para as pginas HTML (Hypertext Markup Language). So necessrios outros recursos alm do HTTP na realizao dessa tarefa, que combinem a comunicao peer-to-peer, cliente/servidor e monitoramento da rede [Brutzman et al., 1997]. Um computador consegue executar vrias tarefas ao mesmo tempo no VRTP. Ele pode ser um cliente, um host ou um peer, isto , um participante com direitos iguais. A tarefa de um cliente representar uma cena, por exemplo, no navegador VRML. Um servidor gerencia uma cena e envia para os clientes, por exemplo, pelo HTTP. A parte crucial da arquitetura do VRTP a comunicao peer-to-peer e o multicast. DWTP O Distributed Worlds Transfer and Communication Protocol (DWTP) foi desenvolvido na German National Research Center for Information Tecnology (GMD) para a camada de aplicao de AVGEs. Em contraste com o DIS, o DWTP heterogneo e independente da aplicao, isto , dados de diferentes tipos podem ser transmitidos. Esses protocolos utilizam mensagens de reconhecimento negativo (NACK Negative Acknowledgement) em uma 140

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

comunicao fim-a-fim, ou seja, precisa ser confirmado o no recebimento correto da mensagem. Os erros na transmisso podem ser causados por roteadores multicast, e estes roteadores so sobrecarregados, devido aos NACKs adicionais de cada cliente. Alguns protocolos tentam evitar isso, atravs de um tempo de espera antes do envio de um NACK; similar ao usado no protocolo Ethernet para resolver os conflitos de barramento. No DWTP, um nmero pequeno de destinos envia o reconhecimento de mensagem contendo o nmero de todos os participantes que esto registrados. Assim, um participante pode detectar o problema ao receber um ACK de um pacote e no o prprio pacote. Nesse caso, o pacote retransmitido por unicast confivel (TCP) para o participante que o solicitou [Diehl, 2001]. Multi-user 3D Protocol O protocolo Multi-user 3D Protocol (Mu3D) foi desenvolvido por Galli e Luo na University of Balearic Islands, para um projeto de arquitetura colaborativa. Em contraste com o DWTP, o protocolo Mu3D peer-to-peer; j em contrate com o DIS, ele no envia os dados completos, somente as atualizaes [Diehl, 2001]. Suponha-se, por exemplo, um jogo de tabuleiro distribudo em que s possa haver um objeto em um quadrado por vez. Suponha que a ordenao da origem foi violada: o cliente 2 no recebe a mensagem na ordem em que foi enviada pelo cliente 1. Pode-se forar a ordenao na origem ao se usar nmeros seqenciais. Se um cliente receber uma mensagem com um nmero de seqncia maior que o ltimo, ele espera at que tenha recebido todas as mensagens intermedirias. O cliente bloqueia o n, enquanto estiver fazendo alteraes, e libera somente depois de enviar a mensagem da alterao para todos os clientes. Devido ao fato do Mu3D enviar atualizaes e no o estado completo da entidade, o tamanho das mensagens,

141

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

incluindo todos os overheads das camadas inferiores do protocolo, pequena (200 a 300 bytes) [Diehl, 2001]. IEEE 802.11 O padro 802.11 apareceu na dcada de 90, mais especificamente em 1997, tornando-se uma das tecnologias principais no mundo wireless. Este padro define as camadas de Controle de Acesso ao Meio (MAC) e fsica (PHY) para uma LAN com conectividade wireless. A arquitetura 802.11 compreende diversos componentes e servios que se interagem para fornecer, mobilidade e transparncia s camadas mais elevadas da pilha de protocolos da rede. Basicamente composto por [Kurose e Ross, 2006]: 802.11: Usando FHSS (Frequency Hopping Spread Spectrum) ou DSSS (Direct Sequence Spread Spectrum), fornece taxa de transmisso de 1 a 2 Mbps, operando na faixa de freqncia de 2.4GHz. 802.11a: Usando OFDM (Orthogonal Frequency Division Multiplexing) fornece taxa de transmisso de at 54Mbps e opera na faixa de freqncia de 5GHz. 802.11b: Tambm conhecido como Wi-Fi ou a High Rate 802.11, usa DSSS e aplica-se a LANs wireless. geralmente utilizado para uso confidencial, em residncias. Fornece uma taxa de transmisso de 11 Mbps. 802.11g: Fornece uma taxa da transmisso de 20+ Mbps e aplica-se a LANs. Funciona na faixa de 2.4GHz. O padro 802.11 pode assumir ainda diversas topologias de interconexo, que compreendem: Independent Basic Service Set (IBSS) ou Ad-Hoc, Basic Service Set (BSS) e Extended Service Set (ESS). 142

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

BlueTooth Bluetooth um tipo simples de rede wireless que permite a formao de uma pequena rede com os at oito dispositivos que conectados de uma vez. Tais dispositivos incluem PDAs, Laptops, telefones mveis e computadores pessoais. Entretanto, o Bluetooth pode tambm ser encontrado nos teclados, mouses, headsets e jogos hands-free de telefone mvel, entre outros. Foi inventado originalmente por Ericsson em 1994. Dentre suas principais vantagens possvel destacar o baixo custo e a configurao dinmica. interessante citar que o Bluetooth, ao contrrio de outros padres, compreende no apenas as camadas mais baixas da rede, mas tambm a camada da aplicao. 7.3.3. Formas de Implementao So vrios os modelos de suporte de comunicao que podem ser utilizados. Geralmente o desenvolvedor procura um ambiente que lhe abstraia detalhes de comunicao. So vrios os pacotes de software que oferecem tais servios. Pode-se dividi-los em quatro categorias: baseados em sockets, toolkits, middlewares e frameworks. Os sockets so primitivas que estabelecem um canal de comunicao inter-processos, por meio de chamadas de sistemas. No socket estabelece-se uma porta de comunicao onde mensagens so enviadas e recebidas, baseando-se em um domnio de endereo (Unix Domain ou Internet Domain) e em um tipo (Stream Sockets ou Datagram Sockets). Como exemplo pode-se citar aplicaes desenvolvidas na linguagem Java e VRML [Kubo, 2000; Kirner et al., 2001].

143

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Na categoria toolkits se enquadram suporte os modelos desenvolvidos especificamente para um conjunto de aplicaes. Como exemplo pode-se citar o World2World (W2W) e WorldToolKit (WTK) [Sense8, 1998], DIVE [Hagsand, 1996], MASSIVE [Greenhalgh; Benford, 1995], entre outros. O World2World, por exemplo, uma soluo em rede baseada no modelo cliente/servidor para simulaes 3D interativas em tempo real. Os componentes clientes do World2World integram-se tanto com WorldToolKit quanto WorldUp [Sense8, 1998], facilitando o desenvolvimento de simulaes multiusurios em ambos os produtos. Os middlewares so solues independentes de plataformas e de domnio de aplicao. Como exemplo pode-se citar o modelo CORBA (Common Object Request Broker Architecture) [Corba, 2001], Java RMI (Remote Method Invocation) [Javarmi, 2002] alm de outros. Por fim, tm-se os frameworks, que so solues especficas para um determinado domnio de aplicao. Nesta linha, o AVOCADO, atualmente denominado AVANGO apresenta um framework orientado a objetos para o desenvolvimento de ambientes virtuais interativos e distribudos [Tramberend, 1999]. Ele foi baseado no SGI Performer, tendo as linguagens de programao C++ e Scheme como plataformas para desenvolvimento. Uma abordagem que est sendo cada vez mais usada segue somente a adoo da plataforma Java. Nesse modelo pretende-se tirar proveito do paradigma Java "write once, run anywhere", aliado a seu baixo custo. O framework DISCIPLE [Krebs, 2003] um exemplo que procura prover colaborao em redes heterogneas (como a web), suportando inclusive, computao mvel.

144

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Existem ainda trabalhos como o Extensible Modeling and Simulation Framework (XMSF), que tem por objetivo definir um conjunto de tecnologias baseadas na web, dentro de um framework extensvel, para permitir a criao de uma nova gerao de aplicaes de modelagem e simulao, especificamente aquelas apoiadas em XML (Extensible Markup Language) [Xsmf, 2003]. A utilizao de solues proprietrias tem o custo como um fator negativo. As aplicaes conseguem alcanar bons ndices de atrasos e escalabilidade, porm tem-se alto custo com licenas. Segundo Deriggi (1998) e [Deriggi, et al., 1999], os sistemas desenvolvidos com base em toolkits tendem a ter um desempenho melhor em comparao com outras plataformas, entretanto apresentam problemas relacionados a portabilidade e dependncia de plataforma especfica. Propostas tm sido apresentadas como em Deriggi et al. (1999), Sementille [Sementille, 1999] e Kubo [Kubo, 2000]. A desvantagem associada ao desenvolvimento de AVD com sockets refere-se principalmente a escalabilidade. 7.3.4. Indicativos para Avaliao de Desempenho A grande maioria dos aspectos discutidos at o momento, afeta de alguma forma o desempenho do AVD, podendo ento ser analisados segundo o prisma de confiabilidade e atraso. A confiabilidade da rede uma medida que reflete a quantidade de dados que so perdidos pela rede durante o trajeto do host origem para o host destino. O dado perdido pode ser classificado como: dado interrompido e dado corrompido. O dado interrompido quando o dado no chega por completo ao host destino. O dado corrompido quando o contedo dos pacotes de dados alterado durante a transmisso e o que chega ao host destino basicamente intil. Muitos pesquisadores consideram a interrupo e a corrupo de dados essencialmente 145

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

equivalentes, isto porque, em ambos os casos, o dado no atinge efetivamente a aplicao destino. A confiabilidade da rede freqentemente fora um compromisso entre a largura de banda e a latncia [Singhal e Zyda, 1999]. Em geral, o atraso um dos principais fatores limitantes para aplicaes de Realidade Virtual. Segundo Wloka (1995) as principais fontes de atraso encontradas em sistemas de RV so: atraso de dispositivos de entrada do usurio, atraso do processamento, atraso de sintetizao, atraso de sincronizao e atraso induzido pela taxa de quadros por segundo. Alm desses fatores, a escalabilidade [Tanenbaum, 1995] um outro ponto a ser analisado. Ela consiste em se analisar a capacidade de crescimento de um sistema em termos de usurios conectados ao mundo. Quanto maior a quantidade de usurios, maiores sero as dificuldades de gerenciamento do mundo e por conseqncia, o sistema fica sujeito a atrasos empobrecendo o desempenho.

7.4. Ambientes Virtuais Distribudos de RV e RA e os Dispositivos Mveis


Com o advento e a propagao das redes wireless e dos dispositivos mveis, vrias aplicaes de RV e, principalmente RA, tm surgido com suporte dessa tecnologia. Segundo Wagner e Schmalstieg (2003) a RA um complemento natural computao mvel, uma vez que sistemas de RA mveis podem ajudar o usurio em diversas situaes. Nesse sentido, os autores destacam diversos projetos como o MARS (Mobile Augmented Reality Systems) [Hllerer et al., 1999] que permite o usurio caminhar livremente, com todo o equipamento colocado nas suas costas e o Bat System [Newman at al., 2001] pertencente a AT&T.

146

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

7.5. Consideraes Finais


O objetivo final de um AVD reunir usurios geograficamente dispersos e permitir que eles tenham capacidade de utilizao do sistema. Nesse aspecto os fatores aqui apresentados e discutidos influem diretamente, de forma que o desenvolvedor deve estar atento a eles. Sugere-se uma anlise com o intuito de equilibr-los, construindo um sistema com um bom grau de realismo e que tenha desempenho aceitvel. Como cada vez mais a heterogeneidade dos sistemas se torna um fator destacvel, sugere-se que o modelo de suporte para comunicao abranja a maior quantidade possvel de arquiteturas. Destaca-se ainda que, procurou-se apresentar os aspectos mais gerais, no se relacionando a um modelo especfico, que pode ter suas peculiaridades e aspectos especficos. A Bibliografia recomendada aos que desejarem se aprofundar nos assuntos aqui tratados.

7.6. Referncias Bibliogrficas


Albuquerque, F. (2001) TCP/IP Internet: Programao de Sistemas Dstribudos HTML, Javascript e Java. Rio de Janeiro: Axcel Books do Brasil Editora. Benford, J. B., Fahln, L. E., Mariani, J., Rodden, T. (1994) Supporting Cooperative Work in Virtual Environments, The Computer Journal, V. 37, N. 8, pp. 653-667. Brutzman, D.; Zyda, M.; Watsen K.; Macedonia, M. (1997) Virtual reality transfer protocol (VRTP) design rationale. In: Proc. f the IEEE Sixth Workshop on Enabling Technologies: Infrastructure for Collaborative Enterprise. (WETICE97). IEEE Computer Society. p. 179-186.

147

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Comer, D. E. (1998) Interligao em rede com TCP/IP: Princpios, protocolos e arquitetura. Rio de Janeiro.Editora Campus. Corba. (2001). Common Object Request Broker Architecture. Disponvel em <http://www.corba.org>. Dahmann, J. S.; Fujimoto, R. M.; Weatherly, R. M. (1997) The department of defese high level architecture. In: Winter Simulation Conference. Disponvel em: <http://www.cc.gatech.edu/computing/pads/PAPERS/DOD_Hig h_Level_Arch.pdf>. Acesso em: 04 mar. 2003. Deriggi Jr., F. V. (1998) Suporte de Comunicao para Sistemas Distribudos de Realidade Virtual, Dissertao (Mestrado), UFSCar, Agosto. Deriggi Jr., F., Kubo, M.M., Sementille, A.C., Santos, S.G., Brega, J.R.F., Kirner, C. (1999) CORBA Platform as Support for Distributed Virtual Environment. In: Proc. of the IEEE VR. Diehl, S. (2001) Distributed Virtual Worlds: Foundations and Implementation Techniques Using VRML, Java, and Corba. Verlag; Berlin; Heidelberg; Springer. Greenhalgh, C. (1996a) Approaches to Distributed Virtual Reality Systems. Relatrio Tcnico (NOTTCS-TR-96-5); Universidade de Nottingham. Greenhalgh, C. (1996b) Supporting Complexity in Distributed Virtual Reality Systems. Relatrio Tcnico (NOTTCS-TR-966); Universidade de Nottingham. Greenhalgh, C., Benford, S. (1995) MASSIVE: A Collaborate Virtual Environment for Teleconferencing. ACM Transactions on Computer-Human Interaction, V. 2, N. 3, pp. 239-261. Hagsand, O. (1996) Interactive Multiuser Ves in the DIVE System, IEEE Multimedia, Spring, V. 3, N. 1, pp. 30-39.

148

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Hllerer T., Feiner S., Terauchi T., Rashid G., Hallaway D., (1999) Exploring MARS: Developing Indoor and Outdoor User Interfaces to a Mobile Augmented Reality System, Computers and Graphics, 23(6), Elsevier Publishers, pp. 779-785. JavaRMI. (2002) Getting Started using RMI . Disponvel em: <http://java.sun.com/j2se/1.4/docs/guide/rmi/getstart.doc.html>. Kirner T.G., Kirner C., Kawamoto A.L.S., Canto J., Pinto A. Wazlawick R.S. (2001) Development of a Collaborative Virtual Environment for Educational Applications. In: Proceedings of the ACM Web3D 2001 Symposium, pp. 61-67. Kurose, J. F., Ross, K. W., (2006) Redes de Computadores e a Internet. Addison Wesley. Krebs, A. M., Ionescu, M., Dorohomceanu, B., Marsic, I. (2003) The DISCIPLE System for Collaboration over the Heterogeneous Web. In: Proceedings of the Hawaii International Conference on System Sciences. Kubo, M.M. (2000) Suporte de Comunicao para Sistemas Colaborativos Interoperveis de Realidade Virtual. Dissertao (Mestrado). UFSCar. So Carlos. SP. Macedonia, M. R., Zyda, M. J. (1996) A Taxonomy for Networked Virtual Environments. IEEE Multimedia. V. 4, N. 1. pp. 48-56. Macedonia, M. R., Zyda, M. J., Pratt, D. R., Brutzman, D. P., Barham, P. T. (1995) Exploiting Reality With Multicast Groups. IEEE Computer Graphics and Applications. V. 15. N. 9. Newman J., Ingram D., Hopper A., (2001). Augmented Reality in a Wide Area Sentient Environment. Proceedings of the 2nd International Symposium on Augmented Reality (ISAR 2001). Oliveira, J. C.;.Shen X, Georganas N.D. (2000) Collaborative Virtual Environment for Industrial Training and e-Commerce. In: Workshop on Application of Virtual Reality Technologies

149

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

for Future Telecommunication Systems. IEEE Globecom'2000 Conference. Sementille, A. C. (1999) A Utilizao da Arquitetura CORBA na Construo de Ambientes Virtuais Distribudos, Tese (Doutorado) - Instituto de Fsica de So Carlos - USP, So Carlos, 186p. Sense8 Corporation. (1998). WorldToolKit Reference Manual Release 7. Mill Valley. CA. Snowdon, D., Churchill, E. F., Munro, A. J. (2001) Collaborative Virtual Environments: Digital Spaces and Places for CSCW: An Introduction. Springer Verlag. Tanenbaum, A. S. (1995) Distributed Operating Systems. PrenticeHall. Tramberend, H. (1999) Avocado: A Distributed Virtual Reality Framework. Proceedings of the IEEE Virtual Reality. Houston. Texas. Wagner, D., Schmalstieg, D. (2003) First Steps Towards Handheld Augmented Reality. Proceedings of the 7th International Conference on Wearable Computers, White Plains, NY, USA. Wloka, M. M. (1995). Lag in Multiprocessor Virtual Reality. Presence. Vol. 4, Nro.1. pp. 50-63. Xsmf. (2003). Extensible Modeling and Simulation Framework. Disp. em <http://www.movesinstitute.org/xmsf/xmsf.html>. Zyda, M.; Singhal, S. (1999) Networked Virtual Environments: Design an Implementation. Addison Wesley Pub.

150

SEO

APLICAES

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Captulo

8
Dispositivos Hpticos para Interfaces de Realidade Virtual e Aumentada
Liliane dos Santos Machado Departamento de Informtica Universidade Federal da Paraba (UFPB) Cidade Universitria s/n 58052-900 Joo Pessoa PB Brasil liliane@di.ufpb.br

Abstract This chapter presents the main technologies related to the use of interaction devices for touch and force feedback in virtual and augmented reality systems. Thus, devices and control packages that compose haptic systems are presented, as well as their use in some applications. Resumo Este captulo visa apresentar os conceitos relacionados utilizao de interao com sensao de toque e fora em sistemas de realidade virtual e realidade aumentada. Assim, sero abordados aspectos relacionados aos equipamentos e aos pacotes de controle que formam os sistemas hpticos, alm de serem apresentadas algumas aplicaes que os utilizam. 152

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

8.1. O que hptico?


A explorao do mundo real muitas vezes depende do sentido do tato. Esta necessidade evidencia-se em situaes onde a viso e/ou a audio no so suficientes para permitir o reconhecimento de objetos, como quando os objetos ficam ocultos visualmente atrs de outros ou o ambiente est escuro. Em mundos virtuais esta mesma situao pode ocorrer. Neste caso, necessrio o uso de sistemas hpticos acoplados aos sistemas de RV ou RA para que a identificao dos objetos seja possvel. O termo hptico deriva-se da palavra grega hapthai (toque) e relaciona-se informao sensorial recebida atravs do toque ou contato fsico. Sabe-se que o toque o nico sentido humano bidirecional, ou seja, recebe e envia informaes: ao realizar um toque, uma fora aplicada sobre algo e sua resultante percebida por quem a aplicou (Figura 8.1). Assim, devido s caractersticas do sistema sensorial ttil, realizar ou perceber um toque depende necessariamente do contato direto com o objeto tocado [Sherman e Craig, 2003].

Figura 8.1. Comparao entre o sentido do toque em relao a outros sentidos na comunicao humanocomputador.

A percepo do toque est relacionada a duas componentes: tato e cinestesia. O tato permite identificar sensaes como 153

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

temperatura, presso ou vibraes, e depende da sensibilidade cutnea. Esta sensibilidade varia de acordo com a regio utilizada para realizar o contato. Por exemplo, sabe-se que a ponta dos dedos possui uma elevada capacidade de reconhecer detalhes, superior palma das mos [Seow, 1988], devido quantidade de receptores nela localizados. A cinestesia, por sua vez, refere-se percepo das tenses aplicadas aos msculos e juntas. Esta percepo tambm chamada de propriocepo ou force feedback (retorno de fora) [Sherman e Craig, 2003] e permite identificar a rigidez de objetos. No ser humano, as sensaes de tato e force-feedback no podem ser separadas, mas o mesmo no acontece com os equipamentos desenvolvidos para simular estas sensaes. Por esta razo h dispositivos que fornecem ambas ou apenas uma delas. Em sistemas computacionais, a identificao do ttil e de force-feedback depende de duas partes igualmente importantes que formam os sistemas hpticos: os dispositivos, responsveis por receber aes do usurio e apresentar-lhe as propriedades relacionadas ao toque, e as rotinas de controle, responsveis por calcular e enviar as propriedades do toque ao dispositivo. Inicialmente desenvolvidos para auxiliar pessoas cegas e surdas [Tan e Pentland, 2001], estes sistemas passaram a ser utilizados em aplicaes de RV e RA para adicionar realismo. Em geral, so utilizados apenas em partes do mundo virtual, mas seus resultados potencializam a sensao geral de realismo para o usurio. Na sesso a seguir sero apresentadas algumas das tecnologias utilizadas na criao de dispositivos hpticos, com exemplos de dispositivos encontrados no mercado. Em seguida sero apresentadas aplicaes de sistemas hpticos em sistemas de RV e RA.

154

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

8.2. Tecnologias
Nos ltimos anos, uma srie de dispositivos hpticos vm sendo desenvolvidos com o objetivo de oferecer meios de reconhecer e manipular objetos em sistemas de RV e RA. Estes dispositivos podem ser divididos em trs categorias principais, de acordo com seu uso: para as mos, para os braos ou pernas, e para o corpo. Os dispositivos para as mos geralmente oferecem apenas retorno ttil e permitem sentir as propriedades trmicas ou da superfcie de objetos (vibraes, por exemplo). Entretanto, alguns so adicionados de mecanismos que permitem tambm simular forcefeedback. Os dispositivos para braos ou pernas visam permitir sentir as foras de resistncia relacionadas ao material que compe o objeto e oferecem retorno de fora, ou seja, se utilizam da tenso de msculos ou juntas para permitir sentir a densidade de um objeto ou do ambiente, por exemplo. J os dispositivos para o corpo, trabalham com o equilbrio corporal e com a tenso muscular. Por se tratarem de equipamentos atravs dos quais o usurio atua e recebe resposta, os dispositivos hpticos so compostos por sensores e atuadores. Os sensores so responsveis por capturar e enviar ao computador os dados do movimento que sero tratados pelas rotinas hpticas para calcular as informaes de resposta enviadas ao dispositivo atravs dos atuadores. 8.2.1. Dispositivos para mos Os dispositivos para mos costumam fornecer sensaes de tato para os dedos ou para as mos do usurio, como presso, calor ou vibraes. Para as sensaes de presso, atuadores pneumticos podem ser utilizados instalados em uma luva. Estes atuadores so compostos por bolsas de ar que se inflam quando h contato com objetos do ambiente virtual, criando uma presso sob os dedos do usurio (Figura 8.2). O mesmo sistema de colocao de atuadores

155

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

em uma luva pode ser utilizado para disponibilizar sensao trmica ou vibratria. Os atuadores trmicos, entretanto, possuem um funcionamento diferente e utilizam semicondutores para emitir a variao de temperatura ao usurio (Figura 8.3).

Figura 8.2. Exemplo de posicionamento de um atuador pneumtico em uma luva para oferecer sensao ttil.

Figura 8.3. Esquema de um atuador termoeltrico. Adaptado de Burdea e Coiffet (2003), pgina 101.

Os atuadores vibratrios, por suas vez, utilizam pequenos motores eltricos, micro-auto-falantes ou mesmo materiais piezoeltricos [Khoudja et al., 2004] que emitem vibraes durante o contato com algum objeto. Tais atuadores so encontrados em luvas e em dispositivos 2D como o mouse (Figura 8.4a). A Figura 8.4b apresenta uma luva dotada de atuadores vibratrios localizados nas pontas dos dedos e na palma das mos. A partir da deteco dos movimentos por sensores localizados nas juntas 156

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

espalhadas ao longo dos dedos e da mo, a luva capaz de retornar as sensaes de tato [Burdea e Coiffet, 2003].

(a)

(b)

Figura 8.4. Dispositivos tteis baseados em atuadores vibratrios: (a) o mouse iFeel e (b) a luva CyberTouch. Fonte: http://www.logitech.com e http://www.immersion.com

Quando dotados de algum tipo de ponto de apoio, os dispositivos para as mos podem oferecer force-feedback. O ponto de apoio a estrutura responsvel por oferecer resistncia ao movimento do usurio. Atualmente, vrios modelos de luvas so dotados desta capacidade. A diferena o tipo de componente utilizado para oferecer resistncia. A luva CyberGrasp, por exemplo, a luva CyberTouch (Figura 8.4b) adicionada de um exoesqueleto [Immersion, 2007]. Um exoesqueleto tambm usado pela luva Dextrous HandMaster (no oferece sensao ttil, apenas force-feedback). Uma outra luva, a Rutgers Master [Bouzit et al., 2002], baseia-se no uso de atuadores pneumticos, compostos por pistes, que so os responsveis pelas tenses fornecidas aos dedos do usurio atravs da compresso do ar. Uma das caractersticas deste dispositivo a presena de uma nica estrutura para medir a flexo dos dedos e oferecer as tenses. A Figura 8.5 apresenta a Rutgers Master e um exemplo de sua utilizao em um ambiente de RV.

157

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Figure 8.5. Luva com sistema unificado de captura de movimento e emisso de fora com exemplo de aplicao. Fonte: Bouzit et al. (2002).

Mais recentemente, tem sido utilizada uma tecnologia baseada em pranchas para oferecer sensao ttil e force-feedback. Estas pranchas so dotadas de pinos ou jatos de ar que estimulam a superfcie da pele do usurio. So utilizadas principalmente para a identificao de texturas ou transies entre objetos com a ponta dos dedos. Ento, de acordo com a posio do dedo do usurio, pinos que se elevam ou ar jateado passam a fazer presso no dedo [Khoudja et al., 2004]. A Figura 8.6 apresenta um dispositivo deste tipo.

Figure 8.6. Prancha de pinos para reconhecimento de texturas e transies entre objetos. Fonte: Khoudja et al. (2004).

158

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

8.2.2. Dispositivos para braos ou pernas Os dispositivos para braos ou pernas visam oferecer, na sua grande maioria, force-feedback. Uma das razes deles no serem to voltados para as sensaes de tato que as mos so mais utilizadas e sensveis para esta atividade. Desse modo, apesar de alguns oferecerem tato e force-feedback, sua principal funo restringir as aes do usurio, de acordo com suas aes, quando utilizados. Estes dispositivos costumam ter um custo proporcional sua capacidade de suportar e retornar mais ou menos fora. Apesar disso, h modelos desenvolvidos para uso popular, como mouse e joystick. Um exemplo o mouse vibratrio que, montado sobre uma base, capaz de limitar as aes do usurio. H alguns anos atrs a Logitech desenvolveu um mouse deste tipo chamado Wingman (Figura 8.7a) mas interrompeu sua produo em pouco tempo. Entretanto, diversos modelos de joystick, como o SideWinder Pro, so dotados desta capacidade e utilizados por fabricantes de jogos para aumentar o nvel de envolvimento do usurio (Figura 8.7b). Neles so adicionando motores ou eixos uma esfera localizada em sua base [Burdea e Coiffet, 2003].

Figura 8.7. Dispositivos de baixo custo com forcefeedback. Fonte: fotos da autora.

Outra categoria de dispositivos disponveis no mercado utiliza-se de uma espcie de brao mecnico para oferecer sensaes de tato e force-feedback. Uma das vantagens deles 159

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

permitir movimentos com 6DOF, bastante adequados a aplicaes com visualizao estereoscpica. O Phantom Personal Haptic Interface Mechanism, da empresa Sensable, um deles. Este dispositivo composto por uma base qual est atrelado o brao mecnico e cuja extremidade assemelha-se a uma caneta. Disponvel em diferentes verses (Figura 8.8), utiliza potenciomtros para oferecer force-feedback com diferentes intensidades em 3 (translaes) ou 6 graus (translaes + rotaes) [Massie e Salisbury, 1994]. Sua popularidade deve-se sua empunhadura, que permite naturalmente simular diversos instrumentos puntiformes. Princpio similar de funcionamento usado na CyberForce, que acoplado luva CyberTouch + CyberGrasp permite reconhecer objetos com tato e force-feedback para as mos e para o brao [Immersion, 2006].

Figura 8.8. Duas verses do dispositivo PHANToM: Omni e Desktop 1.0. Fonte: fotos da autora.

Cabos metlicos so utilizados em outros dispositivos para tambm oferecer force-feeback. Nesta categoria, um pequeno objeto conectado a cabos no interior de uma molduta. Estes cabos so atrelados a polias e so tensionados conforme os movimentos do usurio. A posio do objeto identificada a partir do comprimento de cada cabo. Um dispositivo desta categoria o SPIDAR Space Interface Device for Virtual Reality [Sato, 2002]. Inicialmente desenvolvido para acoplar um nico dedo, possui vrias verses, inclusive para uso nas duas mos. O esquema da Figura 8.9 apresenta a primeira verso do dispositivo, onde podem 160

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

ser vistos os atuadores e cabos utilizados para capturar os movimentos do usurio e oferecer force-feedback.

Figura 8.9. O dispositivo SPIDAR e sua verso com 7DOF. Fonte: Sato (2002).

Outro de dispositivo para brao o Delta comercializado pela empresa Force Dimension (Figura 8.10). Fruto de um projeto de pesquisa francs, oferece nas suas verses mais recentes forcefeedback com 6DOF de at 25N [Grange et al., 2001].

Figura 8.10. Dispositivo Delta. Fonte: Grange et al. (2001).

Alm dos dispositivos citados, existem vrios outros disponveis no mercado. As principais diferenas entre eles, no entato, no so apenas quanto tecnologia utilizada, mas tambm esto relacionadas ao espao de atuao, quantidade de fora que so capazes de apresentar, empunhadura e ao custo. 161

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

8.2.3. Dispositivos para o Corpo Os dispositivos hpticos para o corpo so na realidade plataformas que visam oferecer vibraes ou mexer com a sensao de equilbrio de seu usurio. Em alguns casos no so tratados como dispositivos hpticos pelo fato de no permitirem perceber objetos e sim mexerem com o equilbrio do corpo. So comumente conhecidos como plataformas mveis e so largamente utilizados pela indstria do entretenimento na confeco de videogames. O VFlight um exemplo destas plataformas e fornece movimentao em 185 graus [VFlight, 2007]. Outra plataforma utilizada para jogos a X-Vector que oferece 360 graus de rotao para os eixos X e Z [EnTCo's, 2007]. A Figura 8.11 mostra uma imagem destas duas plataformas dedicada a jogos.

Figura 8.11. Plataformas mveis para jogos. Fonte: VFlight (2007) e EnTCo's (2007).

A aviao civil, por sua vez, faz uso destas plataformas h muitos anos para construir simuladores de vo. Neste caso, a cabine a do prprio avio simulado montada sobre uma plataforma mvel, composta por sistemas hidrulicos, acionada pelo sistema de RV que gera a simulao [Netto et al., 2002].

8.3 Pacotes de Programao


O controle de dispositivos hpticos depende do uso de pacotes de programao especificamente desenvolvidos para permitir gerar as

162

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

cenas hpticas. Este processo de gerao semelhante ao de desenvolvimento de uma cena grfica, onde o programador deve definir o mundo (2D ou 3D), seus objetos e as propriedades destes. A diferena que estas propriedades no iro se referir s caractersticas visuais do objeto, como a cor, mas sim s suas propriedades de material: rugosidade, elasticidade, etc. Assim, os pacotes de programao so constitudos por um conjunto de rotinas especficas para o controle dos dispostivos e envolvem, de modo geral, o reconhecimento do contato entre dispositivo (sua representao) e objetos, das caractersticas deste contato, o clculo das foras de reao e o envio destas ao dispositivo. Cada dispositivo disponvel comercialmente costuma ter seu prprio pacote de programao que implementa as rotinas de processamento hptico. Um dos problemas relacionados esta especificidade que o programador de uma aplicao que envolva o uso de dispositivos hpticos deve aprender o pacote do dispositivo para poder utiliz-lo, o que acaba sendo uma rdua tarefa quando diferentes dispositivos so utilizados na aplicao. Com o intuito de facilitar o processo de programao, tem sido desenvolvidos diferentes conjuntos de bibliotecas que abstraem as funcionalidades especficas de cada pacote de programao, de modo que as funes sejam nicas, independentes do dispositivo utilizado. O CyberMed um destes pacotes [Souza et al., 2007]. Com distribuio livre e voltado para o sistema operacional Linux, o CyberMed contm um conjunto de classes C++ que permitem integrar sistemas hpticos em aplicaes de RV. O Chai3D faz tarefa semelhante e, tambm com distribuio livre, voltado ao sistema operacional Windows [Conti et al., 2003]. Um outro pacote desenvolvido e comercializado pela empresa ReachIn permite programadores C++, Phyton ou VRML desenvolverem aplicaes sob Windows em rotinas pr-definidas [ReachIn, 2007].

163

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

8.4. Aplicaes
A necessidade de oferecer sistemas mais realistas, fez com que uma srie de aplicaes passassem a ser desenvolvidas utilizando sistemas hpticos. Uma das reas que vem utilizando com freqncia tais dispositivos a medicina. A principal vantagem neste caso, que assim torna-se possvel simular procedimentos mdicos com a finalidade de treinar novos profissionais. Nestes treinamentos, dispositivos hpticos simulam as sensaes sentidas durante a manipulao das ferramentas mdicas e auxiliam na aquisio de destreza manual, por exemplo. A Figura 8.12 apresenta uma aplicao desenvolvida pata o treinamento de cirurgias minimamente invasivas. Neste tipo de aplicao, dois dispositivos hpticos so utilizados na realizao de um procedimento laparoscpico [Basdogan et al., 2004].

Figura 8.12. Simulao de laparoscopia. Fonte: Basdogan et al., (2007) e Burdea e Coiffet (2003) pg. 300.

As engenharias tambm tem se utilizado dos sistemas hpticos para auxiliar em tarefas de desenvolvimento e de manuteno. Na aplicao apresentada por Borro (2004), uma plataforma computacional oferece uma simulao de manuteno de aeronaves a partir de um modelo CAD. A Figura 8.13 mostra o sistema em uso e o esquema da plataforma utilizada.

164

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Figura 8.13. Manuteno de uma aeronave com auxlio de RV e sistemas hpticos. Fonte: Borro (2004).

Na aviao o uso de simuladores para o treinamento de pilotos tm sido largamente utilizado h vrios anos. Atualmente, um piloto precisa ter um nmero mnimo de horas nestes simuladores para poder receber seu brev. A empresa de aviao brasileira VARIG possui um destes sistemas para o modelo de avio Boeing 747. Neste simulador posvel simular pousos e decolagens com riqueza de sensaes fsicas (Figura 8.14).

Figura 8.14. Simulador de vo da VARIG. Fonte: http://pauloribeiro.tripod.com/simulador.html. Acesso em maro de 2007.

8.5. Referncias Bibliogrficas


Basdogan, C. et al. (2004) Haptics in Minimally Invasive Surgical Simulation and Training. IEEE CG&A, v. 24, n. 2, pp. 56-64. 165

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Borro, D. et al. (2004) A Large Haptic Device for Aircraft Engine Maintainability. IEEE CG&A, v. 24, n. 6, pp. 70-74. Bouzit, M.; Popescu, G.; Burdea, G. and Boian, R. (2002) The Rutgers Master II-ND Force Feedback Glove. Proc. 10th Symp. On Haptic Interfaces For Virtual Envir. & Teleoperator Systs. IEEE. Burdea, G.; Coiffet, P. Virtual Reality Technology, 2a edio. Wiley-Interscience, 2003. Conti, F. et al. (2003) The CHAI libraries. Eurohaptics, 2003. Online: http://www.eurohaptics.vision.ee.ethz.ch/2003/75.pdf. EnTCo's Monster Roll Cage Homepage. Online: http://mrc.idryonis.com/overview.php. Acesso em maro de 2007. Grange, S. et al. (2001) Overview of the Delta Haptic Device. Eurohaptics, 2001. Immersion Corp. (2007) Online: http://www.immersion.com. Acesso em maro de 2007. Khoudja, M. et al. (2004) Tactile interfaces: a state-of-the-art survey. In: Proc. 35th Int. Symp. on Robotics. Frana. Massie, T.; Salisbury, K. (1994)PHANToM Haptic Interface: A Device for Probing Virtual Objects. In: ASME Winter Annual Meeting, Vol 55-1, pp 295-300. Netto, A.; Machado, L.; Oliveira, M. Realidade Virtual: Conceitos e Aplicaes. Visual Books, 2002. ReachIn Technologies (2007) ReachIn API. Online: http://www.reachin.se/products/ReachinAPI/. Acesso em maro de 2007.

166

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Sato, M. (2002) SPIDAR and virtual reality. In: Proceedings of the Fifth Biannual World Automation Congress, v. 13, pp. 1723. Seow, K. (1988) Physiology of Touch, Grip and Gait, In: J. Webster Ed., Tactile Sensing for Robotics and Medicine, John Wiley & Sons, New York, pp. 13-40. Sherman, W e Craig, A., Understanding Virtual Reality. Morgan Kaufmann, 2003. Souza, D.; Souza, L.; Cunha, I.; Moraes, R.; Machado, L. (2007) Development of a VR Simulator for Medical Training Using Free Tools: A Case Study. SVR'2007. (no prelo). Tan, H. e Pentland, A. (2001) Tactile Displays for Sensory Substitution and Wearable Computers. In: Fundamentals of Wearable Computers and Augmented Reality, captulo 18. Lawrence Erlbaum Associates, 2001. VFlight (2007) Online: http://www.noonco.com/flyer/index.html. Acesso em maro de 2007.

167

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Captulo

9
Ambientes Colaborativos de Realidade Virtual e Aumentada
Denise Filippo, Alberto Raposo, Markus Endler e Hugo Fuks Departamento de Informtica Pontifcia Universidade Catlica do Rio de Janeiro (PUC-Rio) Av. Marqus de So Vicente, 225 RDC Gvea - 22453-900 Rio de Janeiro RJ Brazil denise@les.inf.puc-rio.br, abraposo@tecgraf.puc-rio.br, {endler, hugo}@inf.puc-rio.br

Abstract This chapter deals with Virtual and Augmented Reality (VR and AR) Collaborative Environments from the point of view of collaborative systems, presenting them as a class of applications with specific workgroup-directed characteristics and demands. Environment exploiting the particularities of VR and AR applied to different collaborative scenarios are presented. Regarding trends, mobile supporting collaborative environments are emphasized. Resumo Este captulo trata os Ambientes Colaborativos de Realidade Virtual (RV) e Realidade Aumentada (RA) sob a perspectiva de Sistemas Colaborativos, apresentando-os como uma classe de 168

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

aplicaes com caractersticas, demandas e desafios especficos dos softwares direcionados para apoiar o trabalho em grupo. So apresentados e discutidos ambientes que exploram as particularidades das tecnologias de RV e RA quando aplicados a diferentes cenrios de colaborao. No campo das tendncias, dada nfase em ambientes colaborativos com suporte mobilidade.

9.1. Introduo
A disseminao do uso dos computadores e da Internet fez surgir a questo de como estes recursos podem ser aproveitados para promover a colaborao entre usurios de grupos co-localizados e distribudos. Com este objetivo, so desenvolvidas pesquisas na rea de Trabalho Colaborativo Apoiado por Computador (CSCW Computer Supported Collaborative Work), uma rea de estudo interessada no trabalho em conjunto de grupos de pessoas com o apoio de computadores. Groupware (sistema ou ambiente colaborativo) a tecnologia baseada em mdia digital que d suporte s atividades de pessoas organizadas em grupos. Aplicaes de bate-papo, mensagem instantnea, sites de relacionamentos, blogs, sistemas de recomendao e ferramentas de compartilhamento de arquivos so exemplos de groupware. Neste contexto, os Ambientes Colaborativos de RV e RA abrem uma nova perspectiva para a colaborao em grupo, ao possibilitar que seus participantes interajam atravs da simulao de um mundo real ou imaginrio ou atravs da manipulao de objetos virtuais no mundo real. O objetivo deste captulo , por um lado, apresentar o que as tecnologias de RV e RA podem agregar aos sistemas colaborativos de hoje em dia e, por outro lado, discutir como as aplicaes de RV e RA podem ser beneficiadas pelos avanos na rea de sistemas colaborativos.

169

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Na seo 9.2 apresentada uma viso geral da Colaborao e dos sistemas colaborativos. As sees 9.3 e 9.4 abordam, respectivamente, as caractersticas dos ambientes colaborativos de RV e de RA. Na seo 9.5 so apresentadas tendncias para estes ambientes. A seo 9.6 conclui este captulo.

9.2. Sistemas Colaborativos


Neste captulo so introduzidos os conceitos bsicos de Colaborao e, em especial, o relacionamento dos sistemas colaborativos com a RV e RA. O Modelo 3C de Colaborao e possveis classificaes para estes sistemas so apresentados. 9.2.1. Dimenses da colaborao Colaborao designa a ao de trabalhar em conjunto ou a realizao de um trabalho em comum com uma ou mais pessoas [Ferreira, 1986]. Para que haja colaborao, os membros de uma equipe precisam trocar informaes (se comunicar), organizar-se (se coordenar) e operar em conjunto num espao compartilhado (cooperar). Baseado nestes conceitos, na Figura 9.1 apresentado o diagrama do Modelo 3C de Colaborao [Fuks et al, 2005], um refinamento do modelo proposto por Ellis, Gibbs e Rein (1991).

Figura 9.1 - Modelo 3C de Colaborao.

170

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Comunicao a ao de trocar mensagens para que haja entendimento comum das idias discutidas. Na Colaborao, a Comunicao direcionada para a ao [Fuks et al., 2003]. Os participantes de um grupo de trabalho trocam idias e pontos de vista, apresentam seus argumentos e discutem com a finalidade de realizar negociaes, tomar decises e firmar compromissos. Coordenao a ao de dispor segundo uma certa ordem e mtodo, organizar, arranjar. A Coordenao tambm est associada idia de planejamento. Fazem parte da Coordenao a identificao de objetivos, o mapeamento dos objetivos em tarefas, a seleo dos participantes e a distribuio das tarefas. Atravs da Coordenao, as tarefas atribudas aos diferentes participantes so realizadas na ordem e no tempo previstos e de acordo com os objetivos e restries determinados [Raposo e Fuks, 2002]. Cooperao a ao de operar simultaneamente. Ao cooperarem, os participantes do grupo produzem, modificam e utilizam de maneira compartilhada um conjunto informaes e artefatos reais ou virtuais, tais como um documento, uma planilha, ou a pea de um carro. A Cooperao ento esta operao conjunta dos membros do grupo no espao compartilhado a fim de que as atividades possam ser realizadas [Fuks et al., 2002]. O Modelo 3C evidencia a necessidade de os participantes terem informaes sobre o que est ocorrendo. Atravs das informaes de percepo disponibilizadas pelo ambiente, os participantes de um grupo tomam cincia, por exemplo, de quais etapas j foram terminadas e de quem a responsabilidade de uma tarefa. Informaes como estas so necessrias para que cada participante seja capaz de avaliar seu trabalho e dos demais participantes e de redirecionar suas atividades se necessrio.

171

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

9.2.2. Sistemas colaborativos e sua classificao DeSanctis e Gallupe (1987) utilizam a noo de tempo e de espao, entendidos como 2 eixos, para classificar um sistema colaborativo. O eixo do tempo indica se os participantes interagem de maneira sncrona ou assncrona, enquanto o eixo do espao indica se eles esto fisicamente prximos ou no. Quando os interlocutores precisam estar simultaneamente conectados ao ambiente para que a colaborao se efetive, o sistema considerado sncrono. Quando esta simultaneidade no for necessria, o sistema considerado assncrono. Na figura 9.2 so mostrados exemplos de sistemas colaborativos classificados de acordo com seu posicionamento nos 2 eixos de tempo e espao.
mesmo tempo (sncrono) TEMPO tempo diferente (assncrono)

mesmo lugar (local) ESPAO local diferente (distribudo)

Interaes sncronas face-a-face


Brainstorming

Interaes assncronas locais


Post-It Notes

Interaes sncronas distribudas


Ba te -pa po Vide o co nfe r ncia

Interaes assncronas distribudas


C o rre io e le tr nico F rum

Figura 9.2 Exemplo da classificao dos sistemas colaborativos em funo de tempo e espao.

Os diferentes sistemas colaborativos tambm so classificados quanto sua maior tendncia de oferecer itens de Comunicao, Coordenao e Cooperao (Teufel et al., 1995; Borghoff e Schlichter, 2000). A Figura 9.3 esquematiza como esta classificao pode ser feita.

172

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Figura 9.3 - Classificao dos sistemas colaborativos de acordo com as dimenses do Modelo 3C.

Deve-se notar que o fato de uma aplicao ser classificada segundo uma das 3 dimenses do Modelo 3C no implica que ele no contenha funcionalidades das demais dimenses. 9.2.3. Realidade virtual e aumentada para a colaborao A idia de colaborar em espaos virtuais no nova. Sistemas experimentais utilizando RV para Colaborao so usados h dcadas, mas apenas recentemente comearam a sair das esferas acadmicas e militares. Esse aumento de popularidade se deve principalmente ao aumento da capacidade de processamento das mquinas e sua reduo de custos, bem como a disponibilidade cada vez maior de redes com alta velocidade. Assim, ambientes virtuais colaborativos tm conseguido bastante popularidade com os jogos multi-usurios e comunidades virtuais, tais como o Second Life [Secondlife, 2007].

173

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Em paralelo, o desenvolvimento de sistemas de RA tambm se volta para aplicaes colaborativas. Com a RA, usurios colocalizados podem compartilhar objetos reais e virtuais em meio a um espao comum no mundo real, no precisando estar diante de um computador. A introduo de objetos virtuais no espao compartilhado til no s para possibilitar que o grupo manipule objetos inexistentes no mundo real, mas tambm para aumentar os objetos reais com informaes que so consultadas e modificadas pelos usurios medida que o trabalho progride. Apesar da crescente popularidade, sistemas colaborativos de RV e RA ainda apresentam uma srie de desafios em seu desenvolvimento. Entre esses desafios, podem ser mencionados os problemas relacionados ao gerenciamento de recursos de rede, ao processamento grfico em tempo real e sincronizao de viso em aplicaes multi-usurios (por exemplo, manuteno de consistncia do estado de objetos compartilhados entre os usurios). Existem tambm as dificuldades especficas de RV e RA. Em RV, por exemplo, h a dificuldade de se manipular os objetos do mundo virtual e a necessidade de se criar avatares realistas para ampliar tanto a capacidade de comunicao entre os participantes quanto o sentimento de presena no grupo. Em RA, por exemplo, h o problema da preciso de registro (i.e., alinhamento preciso dos objetos virtuais sobre os objetos reais) e do desenvolvimento de dispositivos de apresentao para misturar os objetos virtuais e reais [Filippo et al., 2005]. Somado a tudo isso, h tambm as dificuldades especficas da rea de aplicao, tais como a integrao com grandes bases de dados (por exemplo, para as informaes geogrficas de simulaes militares) e questes de segurana (para aplicaes de comrcio eletrnico, por exemplo). Normalmente, a literatura de ambientes virtuais colaborativos enfoca os problemas ligados infra-estrutura 174

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

tecnolgica para o desenvolvimento dos mesmos [Singhal e Zyda, 1999; Macednia e Zyda, 1997; Rodrigues et al., 2004]. Neste captulo, os ambientes colaborativos de RV e RA so analisados conforme suas caractersticas para Colaborao apresentadas nas sees anteriores.

9.3. Ambientes Colaborativos de Realidade Virtual


Os ambientes virtuais colaborativos (CVEs Collaborative Virtual Environments) apresentam grande potencial para o suporte ao trabalho colaborativo. Um CVE definido como uma simulao em tempo real de um mundo real ou imaginrio, onde usurios esto simultaneamente presentes e podem navegar e interagir com objetos e outros usurios [Hagsand, 1996]. Em CVEs, os usurios so representados por avatares (Figura 9.4). De uma maneira geral, os CVEs so usados para Colaborao com usurios localizados remotamente e, do ponto de vista temporal, podem ser tanto sncronos quanto assncronos. Nos ltimos anos, tm sido realizados trabalhos no sentido de desenvolver CVEs para usurios no mesmo local, criando ambientes fisicamente compartilhados [Mulder e Boschker, 2004; Kitamura et al., 2001]. Porm, este captulo se restringir aos CVEs para usurios remotamente localizados.

175

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Figura 9.4 Exemplo de CVE: Walkinside Viewer, para visualizao de modelos CAD de engenharia [VRContext, 2007].

CVEs tambm apresentam caractersticas bastante interessantes no que diz respeito a Comunicao, Coordenao e Cooperao. A Comunicao geralmente realizada atravs de ferramentas de bate-papo, que acompanham os CVEs mais simples, ou na forma de udio e videoconferncia, que acompanham os CVEs mais sofisticados. A Coordenao elemento-chave em CVEs usados para fins especficos, como os militares e os jogos multi-usurios. A Cooperao, por sua vez, faz parte da prpria natureza dos CVEs, que so literalmente espaos de trabalho compartilhados. Nas prximas sees sero apresentados alguns CVEs, classificados de acordo com seu propsito principal, dentre as dimenses do Modelo 3C de Colaborao. 9.3.1. Comunicao em CVEs Em CVEs, os usurios, na forma de seus avatares, so livres para navegar no espao virtual, encontrando-se uns com os outros. 176

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Dessa forma, um canal de comunicao verbal ou no-verbal uma necessidade primria em CVEs. A comunicao verbal est presente em chats e canais de udio e vdeo que podem acompanhar o CVE. Alm dessas possibilidades, que tambm so tpicas de aplicaes colaborativas de desktop, a Comunicao ampliada em CVEs pela capacidade de comunicao no-verbal, tais como gestos, expresses faciais, e postura do avatar. A noo de espao e a metfora de mundo real oferecidas por CVEs tambm trazem possibilidades de percepo que no so triviais em aplicaes de desktop. Por exemplo, a movimentao dos avatares antecipa intenes dos usurios e revela a expectativa que os demais usurios tm a seu respeito (por exemplo, um avatar se aproximando do outro pode indicar que ele deseja se comunicar). Os CVEs voltados para Comunicao so plataformas de interao social, onde os usurios normalmente se encontram casualmente e se comunicam. Um exemplo de CVE focado na Comunicao o Active Worlds [Active Worlds, 2007], uma ferramenta para a criao de chats 3D na Web. Outro CVE voltado para a Comunicao o FreeWalk [Nakanishi, 2004]. Em sua primeira verso, o FreeWalk apresentava-se como uma videoconferncia espacial, voltada para o suporte a encontro casuais. Cada avatar representado por uma janela 2D no ambiente 3D, que transmite seu udio e vdeo aos demais. A noo espacial acrescenta os conceitos de localizao e direo do olhar s videoconferncias tradicionais. Em sua segunda verso, foi acrescentado um agente autnomo participante do ambiente, cujo objetivo facilitar a encontro casual entre estranhos (recurso de Coordenao). Em sua terceira verso, o sistema apresenta simulaes de situaes reais: uma situao de desastre

177

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

onde os participantes (humanos e agentes) assumem papis em um processo de evacuao (foco na Cooperao). Apesar de poder ser feita de forma assncrona (devido possibilidade de alterar e deixar recados em artefatos do mundo virtual), a Comunicao nos CVEs geralmente sncrona. 9.3.2. Coordenao em CVEs Alm da potencialidade dos CVEs para a Comunicao, tambm reconhecido seu potencial para a Colaborao baseada em artefatos (Cooperao), uma vez que CVEs disponibilizam objetos e dados no espao virtual [Zhang e Furnas, 2002]. Coordenao, dentre as 3 dimenses da colaborao, ainda a menos explorada nos CVEs. Entretanto, CVEs voltados para simulaes militares e jogos multi-usurios so exemplos de aplicaes colaborativas que necessitam de sofisticados mecanismos de Coordenao para garantir a realizao das tarefas [Capps et al., 2001]. Um uso relativamente comum de CVEs que permite classific-los como ferramenta focada em Coordenao o treinamento. O SAVE [Holm et al., 2002], por exemplo, uma aplicao para treinar trabalhadores em situaes de emergncia em refinarias de petrleo. Tais situaes so simuladas no ambiente virtual e o treinamento usa uma metfora de Deus Grego, onde a pessoa a ser treinada o heri, que realizar as tarefas no ambiente virtual, e o instrutor o Deus no Olimpo, que coordena toda a simulao (altera parmetros, move objetos e o heri, etc) 9.3.3. Cooperao em CVEs Cooperao a dimenso da colaborao mais prxima dos CVEs. Mesmo nos CVEs focados na Comunicao e na Coordenao, a Cooperao est sempre materializada no espao virtual, onde 178

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

ocorrem as interaes entre os usurios. Por outro lado, possvel conceber CVEs apenas com servios de Cooperao, como o caso do Walkinside Viewer [VRContext, 2007], ilustrado na Figura 4. Neste CVE, vrios usurios podem acessar o ambiente virtual (na verdade, um modelo CAD) e navegar por ele, sem qualquer recurso de Comunicao ou Coordenao (assume-se que isto feito por meios externos aplicao, como o telefone). CVEs trazem novas possibilidades a vrios aspectos essenciais Cooperao, tais como a noo de contexto compartilhado e a percepo mtua entre os usurios [Snowdon et al., 2001]. A noo de contexto compartilhado est relacionada s informaes perceptuais dos objetos e eventos que podem ser explorados e manipulados no espao de trabalho. Por exemplo, quando a Cooperao se baseia em artefatos (documentos compartilhados, por exemplo), a visualizao das alteraes nesses artefatos que direciona as aes futuras dos usurios. A percepo est ligada a entender as atividades dos outros para prover o contexto para suas prprias atividades [Dourish e Bellotti, 1992]. Nesses aspectos, a representao dos avatares e os recursos de visualizao no espao 3D podem ampliar a capacidade de entender o que os outros usurios esto fazendo, em que objetos eles esto atuando, o que se espera que eles vo fazer em seguida (por exemplo, se eles esto indo para outro lugar), etc. Esta capacidade dos CVEs est ligada ao fato deles estarem mais prximos da representao do mundo real do que as aplicaes de desktop, onde a transmisso de todas essas informaes no to natural.

9.4. Ambientes Colaborativos de Realidade Aumentada


Azuma (2001) define um sistema de Realidade Aumentada como sendo aquele que possui as seguintes caractersticas: combina objetos reais e virtuais num ambiente real; opera interativamente e 179

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

em tempo real, e registra (alinha) objetos reais e virtuais uns com os outros. Uma vez que a RA , por definio, fortemente direcionada para a apresentao e manipulao de objetos virtuais, os ambientes prestam-se naturalmente ao compartilhamento destes objetos e, consequentemente, ao suporte Cooperao (Figura 9.5). Quando estes objetos so utilizados para orientar e direcionar o usurio nas atividades do seu trabalho, os sistemas de RA esto provendo suporte Coordenao. A Comunicao atravs de objetos virtuais a menos explorada em ambientes colaborativos de RA, pois estes aproveitam as tecnologias j mais estabelecidas de udio e vdeo-conferncia.

Figura 9.5 Exemplo de ambiente colaborativo de RA.

Para Billinghurst and Kato (2002), a principal caracterstica de ambiente colaborativos de RA a natureza sem cortes da interface RA, onde usurios vem-se uns aos outros ao mesmo tempo em que vem objetos virtuais em meio a eles. A transio entre o real e o virtual mais suave, no ficando delimitada pela tela do computador ou pelo mundo virtual dos CVE. Billinghurst and Kato tambm ressaltam que as interfaces RA para usurios co-localizados, ao contrrio de outras tecnologias de CSCW, no fazem a separao entre o espao de comunicao e

180

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

o espao de tarefas (sob a tica do Modelo 3C, espao de Cooperao). Em RA, diferentes objetos virtuais podem ser apresentados para diferentes usurios, possibilitando a existncia de espaos pblicos e privados e de diferentes vises do espao compartilhado. Por exemplo, enquanto um usurio v sobre uma parede a tubulao de gua, o outro v o cabeamento eltrico. As diferentes vises do espao compartilhado em ambientes colaborativos de RA co-localizados introduz o problema de se ter que garantir um entendimento comum sobre este espao [Azuma, 2001]. Deve-se evitar, por exemplo, que um usurio aponte para um objeto e o outro usurio veja um objeto diferente naquele lugar. Outras questes a serem tratadas so compartilhamento e coliso de objetos virtuais e o fato de que o uso de capacetes ou culos do tipo vdeo-through em ambientes co-localizados ou em vdeoconferncias impede que os usurios vejam os olhos uns dos outros. 9.4.1. Comunicao em RA A operao em tempo real caracterstica da RA, presente em sua prpria definio, reflete-se no uso freqente de comunicao sncrona nestes ambientes. Nos casos em que os usurios esto colocalizados, a comunicao realizada diretamente, sem necessidade do ambiente para intermedi-la. No caso de se ter interlocutores fisicamente distantes, audio-conferncia [NetAttack, 2007] e vdeo-conferncia [Etl, 2007] tm sido a soluo adotada. Observa-se, porm, que no udio e na videoconferncia a troca de mensagens no faz uso de objetos virtuais, isto , nestes casos a Comunicao no baseada na tecnologia de RA.

181

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Um exemplo clssico sistema de comunicao de RA propriamente dito apresentado no filme Guerra nas Estrelas de George Lucas. Neste filme, os personagens conversam com interlocutores remotos apresentados como uma imagem virtual de corpo inteiro e em tamanho real. Um sistema de videoconferncia RA que segue esta abordagem apresentado em [Billinghurst, et al., 2002]. Neste sistema, o rosto do interlocutor remoto apresentado como um objeto virtual sobre um marcador. Vrios interlocutores, mveis ou em desktops, podem participar da conferncia simultaneamente. Os marcadores funcionam como monitores virtuais, com a vantagem de poderem ser rearrumados livremente na mesa de trabalho e de serem carregados por usurios mveis. Um ambiente de Comunicao RA como este evita a limitaes da udio conferncia, como falta de viso dos interlocutores, da vdeo-conferncia, como dificuldade de capturar movimentos sutis e de obter informaes sobre o espao em que esto os participantes, e dos CVE, como desconexo do mundo real, mas ainda requer melhorias devido necessidade de uso do capacete e de rastreamento e registro [Billinghurste e Kato, 2002]. Outra opo para a realizao de comunicao sncrona o uso de quadros-brancos virtuais [Etl, 2007]. Embora este seja um artefato destinado para desenhar esboos e esquemas, ele tambm usado como suporte para a troca de mensagens. Os ambientes de RA j apresentam diferentes solues para a comunicao em ambientes sncronos. Estas podem ser estendidas para os cenrios assncronos: nos exemplos acima, disponibilizando um replay da imagem dos interlocutores falando uma mensagem ou mantendo entre sesses de trabalho as mensagens escritas no quadro-branco.

182

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

9.4.2. Coordenao em RA No contexto dos ambientes colaborativos de RA, servios de Coordenao so usualmente oferecidos em conjunto com outros servios e diferenciam-se das aplicaes tpicas de Coordenao oferecidas nos desktops, como workflow e agenda compartilhada. Este o caso dos ambientes MARS - Mobile Augmented Reality Systems [Feiner, 2006] e OCAR - Outdoor Collaborative Augmented Reality [Reitmayr, 2004], que so sistemas colaborativos mveis, sensveis localizao, em que usurios visitam uma rea externa e consultam informaes sobre ela. Nestes ambientes, objetos virtuais como bandeiras, caminhos e estacas so utilizados para que usurios conhecedores do ambiente coordenem os visitantes at que estes cheguem ao seu destino. Outro exemplo de suporte Coordenao est presente em funcionalidades do sistema de busca de informaes do OCAR. Esta aplicao possibilita que um guia de turismo coordene um grupo de turistas, selecionando e disparando em seus visores objetos virtuais que chamam a ateno para pontos de interesse que devem ser observados a cada momento. Assim como no caso dos sistemas focados na Comunicao, ambientes colaborativos de RA co-localizados ou em ambientes remotos no precisam necessariamente prover mecanismos de Coordenao explcitos. A Coordenao de um grupo pode se dar atravs do protocolo social, isto , atravs da habilidade dos participantes de mediar as interaes. 9.4.3. Cooperao em RA Assim como nos CVEs, os ambientes colaborativos de RA esto fortemente associados Cooperao. Na essncia da tecnologia RA est a apresentao e manipulao de objetos virtuais no mundo real, provendo o suporte necessrio para que a operao conjunta 183

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

no espao compartilhado (Cooperao) ocorra. Mais que isto, este espao compartilhado o mundo real e a manipulao dos objetos no necessariamente delimitada por uma tela de monitor nem precisa ficar presa em torno de uma mesa, abrindo novas possibilidades de suporte Cooperao. A maioria dos ambientes colaborativos de RA trabalha com o aumento do sentido da viso em cenrios sncronos colocalizados ou remotos. Uma exceo o AGroove, voltado para a criao conjunta de msica com instrumentos reais e virtuais [Poupyrev et al. 2000]. H ainda algumas aplicaes que fazem uso simultneo de RA e RV [Magic Book, 2007; Etl, 2007]. A visualizao dos diferentes participantes de um grupo pode se dar de diferentes formas. Em ambientes co-localizados, usurios com capacetes ou culos especiais podem trabalhar em grupo com objetos virtuais como se eles existissem num mesmo ponto do espao fsico [Billinghurst et al., 2001, Kaufmann, 2006]. Outra maneira cada participante ver os objetos de trabalho atravs do visor do PDA, celular ou monitor [Wagner et al., 2005; Wagner et al., 2006]. A tecnologia de projeo possibilita que o grupo opere com objetos fsicos sobre os quais so projetados objetos virtuais, alm de prover meios para que objetos reais sejam camuflados [Inami et al., 2000]. No caso de usurios remotos, no h alternativa: as imagens do mundo real tm que ser transmitidas e, junto com as imagens dos objetos virtuais, devem ser visualizadas atravs de uma tela de vdeo [Feiner, 2006; Etl, 2007].

9.5. Concluses e Tendncias


Considerando o Modelo 3C de Colaborao, a Comunicao apresenta-se como elemento importante nos ambientes de RV, visto que eles so desenvolvidos em sua maioria para usurios 184

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

remotamente localizados, o que no acontece na maioria dos sistemas colaborativos de RA. J os servios de Coordenao, quando existentes, so usualmente oferecidos em conjunto com outros tipos de servios. O grande potencial dos sistemas colaborativos de RV e RA, principalmente se comparado aos sistemas em desktop, est no suporte Cooperao, tendo em vista que eles tm como base a interao e manipulao de objetos em espaos compartilhados. Os ambientes colaborativos de RV e RA so, por si s, uma tendncia nos sistemas de software e, da mesma forma, os sistemas colaborativos fazem parte cada vez mais do dia-a-dia das pessoas. A difuso e, principalmente, a fuso destas tecnologias abrir novas oportunidades para que participantes de um grupo trabalhem em conjunto, pois possibilitam que este grupo interaja no ambiente real ou em simulaes de ambientes tridimensionais, ao invs das telas bidimensionais do computador. Desta forma aumenta-se o grau de percepo mtua e de compartilhamento de contexto, fatores importantes para que a Colaborao se realize. Mark Weiser, considerado o pai da Computao Ubqua, observou que a Realidade Virtual apresenta-se como o oposto da Computao Ubqua: segundo ele, a Realidade Virtual tenta colocar o mundo real dentro do computador, simulando-o parcialmente e envolvendo o usurio neste mundo virtualizado, enquanto na Computao Ubqua so os equipamentos computacionais que permeiam o mundo real do usurio, enriquecendo-o [Weiser, 1991]. interessante, portanto, situar a Realidade Aumentada sob esta tica: ao utilizar a tecnologia da Realidade Virtual no mundo real, a Realidade Aumentada, especialmente no caso dos sistemas que fazem uso de equipamentos mveis, tambm enriquece e permeia o ambiente real. Uma vez que a tecnologia produz equipamentos cada vez menores, mais poderosos, mais portteis, vestveis e com 185

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

capacidade de estarem continuamente conectados, a tendncia que um grande nmero dos sistemas de Realidade Aumentada se tornem Sistemas de Realidade Aumentada Ubqua. Desta forma, a Realidade Aumentada Ubqua dever diminuir cada vez mais a distncia entre a Realidade Virtual e a Computao Ubqua (mundo real), no sentido de que a transio entre os extremos do Contnuo de Milgram [Milgram, 1994] ir se tornar cada vez mais suave e transparente ou, como na proposta de Tecnologia Calma de Weiser [Weiser, 1995], mais calma e invisvel. Com a possibilidade de mobilidade dos usurios, outra tendncia dos ambientes de RV e RA o das aplicaes sensveis localizao. O uso de servios e informaes disponibilizados em funo da localizao do usurio apresenta grande potencial para novas formas de Colaborao. Em ambientes como o OCAR e MARS, o usurio tem acesso informao no prprio local, ancorado ao mundo fsico e com possibilidade de interagir e de modific-la. Ao observar isto, Hllerer [1999] chega a afirmar que o mundo se torna a interface. Estes sistemas podem significar o incio do WorldBoard proposto por Spohorer [1997]: um hipertexto espacial, com abrangncia mundial, de informaes ancoradas a locais e objetos fsicos.

9.6. Referncias Bibliogrficas


Active Worlds, http://www.activeworlds.com/ Acesso em Jan/2007 Azuma, R.; Baillot, Y.; Behringer, R.; Feiner, S.; Julier, S.; Macintyre, B. (2001) Recent advances in augmented reality. IEEE Computer Graphics and Applications, v.21, n.6, Nov/Dez, pp 34-47 Billinghurst, M. Cheok, A. Prince, S. Kato, H. (2002) Real world teleconferencing. Computer Graphics and Applications, IEEE, v.22, n.6, Nov/Dez, ISSN: 0272-1716, pp 11-13 186

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Billinghurst, M.; Kato, H. (2002) "Collaborative Augmented Reality". Communications of the ACM, Vol. 45, No. 7, July, ISSN:0001-0782, pp.64 70 Billinghurst, M., Kato, H., Poupyrev, I. (2001) The MagicBook: Moving Seamlessly between Reality and Virtuality, IEEE Computer Graphics and Applications, Maio/Jun, pp. 2-4 Borghoff, U.M.; Schlichter, J.H. (2000) Computer-Supported Cooperative Work: Introduction to Distributed Applications, Springer, USA. DeSanctis, G.; Gallupe, B. (1987) A foundation for the study of group decision support systems, Management Science, v. 33, n. 5, pp. 589-609 Dourish, P.; Belloti, V. (1992) Awareness and Coordination in Shared Workspaces Conference on Computer-Supported Cooperative Work (CSCW), eds: Turner e Kraut, pp. 107-114. Ellis, C. A., Gibbs S. J.; Rein, G. L. (1991) Groupware Some Issues and Experiences, Communications of the AM, Jan, vol 34, n.1, pp 38-58 Etl - http://www.automation.hut.fi/projects/etala/index.html Acesso em: Jan/2007. Feiner, S.; Hllerer T.; Gagas, E.; Hallaway, D.; Terauchi T.; Gven, S.; MacIntyre B. MARS Mobile Augmented Reality System http://www1.cs.columbia.edu/graphics/projects/mars, Acesso em Jan/2007 Ferreira, A.B.H. (1986) Novo Dicionrio da lngua portuguesa. 2. ed. Rio de Janeiro, Nova Fronteira. Filippo, D., Endler, M.; Fuks, H. Colaborao mvel com realidade aumentada. Monografias em Cincia da Computao 01/05 Ed: Carlos Jos Pereira de Lucena, Jan 2005, ISSN 01039741, 33 p., http://bib-di.inf.puc-rio.br/techreports/2005.htm 187

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Fuks, H., Raposo, A.; Gerosa, M.A. (2002) Engenharia de Groupware: Desenvolvimento de Aplicaes Colaborativas, XXI Jornada de Atualizao em Informtica, Anais do XXII Congresso da Sociedade Brasileira de Computao, v.2, Cap. 3, ISBN 85-88442-24-8, pp 89-128. Fuks, H., Gerosa, M.A.; Pimentel, M. (2003) Projeto de Comunicao em Groupware: Desenvolvimento, Interface e Utilizao, XXII Jornada de Atualizao em Informtica, Anais do XXIII Congresso da Sociedade Brasileira de Computao, v.2, cap. 7, ISBN 85-88442-59-0, pp. 295-338. Fuks, H., Raposo, A., Gerosa, M.A.; Lucena, C.J.P. (2005) Applying the 3C Model to Groupware Development. International Journal of Cooperative Information Systems (IJCIS), v.14, n.2-3, Jun-Sep 2005, World Scientific, ISSN 0218-8430, pp 299-328 Hagsand, O. Interactive Multiuser VEs in the DIVE System, IEEE Multimedia, 3(1):30-39. Spring 1996. Hllerer T.; Feiner S.; Terauchi T.; Rashid, G.; Hallaway, D. (1999) Exploring MARS: developing indoor and outdoor user interfaces to a mobile augmented reality system Computers and Graphics, v. 23, n.6, Elsevier Publishers, Dez, p. 779-785 Holm, R., Priglinger, M. , Stauder, E., Volkert, J., Wagner. R. (2002) A Combined Immersive and Desktop Authoring Tool for Virtual Environments. IEEE Virtual Reality 2002, USA, pp. 93-100. Inami M., Kawakami, N., Sekiguchi, D. Yanagida, Y. (2000) Visuo-Haptic Display Using Head-Mounted Projector IEEE Virtual Reality 2000, USA, pp. 233-240. Kaufmann, H. (2006) The potential of augmented reality in dynamic geometry education, 12th International Conference On Geometry and Graphics (ISGG), Ago 6-10, Salvador, Brasil 188

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Kitamura, Y., Konishi, T., Yamamoto, S.; Kishino, F. (2001) Interactive stereoscopic display for three or more users, Computer Graphics (SIGGRAPH 2001 Proceedings), v.35, pp 231239. Macedonia, M. R.; Zyda, M. J. (1997) A Taxonomy for Networked Virtual Environments. IEEE Multimedia, vol. 4 n.1 Jan/Mar, pp 48-56 Capps, M.; McDowell, P.; Zyda, M. (2001) A future for entertainment-defense research collaboration, IEEE Computer Graphics and Applications, v. 21, n.1, pp. 3743 Milgram, P.; Kishino, F. (1994) A taxonomy of mixed reality visual displays, IEICE Transactions on Information Systems, v. E77-D, n.12, Dez, pp. 1321-1329 Mulder, J. D.; Boschker, B. R. (2004) "A Modular System for Collaborative Desktop VR/AR with a Shared Workspace", IEEE Conference on Virtual Reality (VR' 04), Amsterdam, pp. 75-82. Nakanishi, H. (2004) FreeWalk: a social interaction platform for group behaviour in a virtual space. International Journal of Human-Computer Studies, v.60, n.4, April, pp. 421-454. NetAttack http://www.fit.fraunhofer.de/projekte/netattack/ index_en.xml?aspect=spielidee, Acesso em Jan/2007 Poupyrev, I., Berry, R., Kurumisawa, J., Nakao, K., Billinghurst, M., Airola, C., Kato, H., Yonezawa, T. e Baldwin, L. (2000) Augmented Groove: Collaborative Jamming in Augmented Reality, SIGGRAPH 2000 Conference Abstracts and Applications, pp. 77 Raposo, A.; Fuks, H. (2002) Defining Task Interdependencies and Coordination Mechanisms for Collaborative Systems. in: BlayFornarino, M., Pinna-Dery, A. M., Schmidt, K. & Zarat, P.; Cooperative Systems Design (vol 74 of Frontiers in Artificial 189

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Intelligence and Applications), ISBN 1-58603-244-5 IOS Press, Amsterdam, pp 88-103. Reitmayr, G.; Schmalstieg, D. (2004) Collaborative augmented reality for outdoor navigation and information browsing, 2nd Symposium on Location Based Services and TeleCartography, Viena, Jan, p. 53 - 62 Rodrigues, L. C. R., Kubo, M. M., Rodello, I. A., Sementille, A. C., Tori, R., Brega, J. R. F. (2004) Ambientes Virtuais Distribudos. Realidade Virtual: Conceitos e Tendncias PrSimpsio SVR 2004, C. Kirner & R. Tori (eds.), SBC, pp 43-59 Second Life - http://secondlife.com/ Acesso em Jan/2007 Singhal, S.; Zyda, M. (1999) Networked Virtual Environments: Design and Implementation, Addison-Wesley, USA, 1999. ISBN 0-201-32557-8 Snowdon, D., Churchill, E. F.; Munro, A. J. (2001) "Collaborative Virtual Environments: Digital Spaces and Places for CSCW: An Introduction", Collaborative Virtual Environments: Digital Places and Spaces for Interaction, E. F. Churchill, D. Snowdon and A. J. Munro (eds), cap 1, Springer-Verlag, pp. 3-17 Spohrer, J. (1997) What comes after the WWW?. ISITalk 1997 http://www.worldboard.org/pub/spohrer/wbconcept/default.html Acesso em Jan.2007 Teufel, S., Sauter, C., Mhlherr, T. e Bauknecht, K. (1995) Computeruntersttzte Gruppenarbeit. Bonn: Addison-Wesley Wagner, D. Pintaric, T. Ledermann, F.; Schmalstieg, D. (2005) Towards Massively Multi-User Augmented Reality on Handheld Devices. 3rd International Conference on Pervasive Computing (Pervasive 2005), Munique Wagner, D., Schmalstieg, D., Billinghurst, M.. (2006) Handheld AR for Collaborative Edutainment. In Proceedings of the 16th 190

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

International Conference on Artificial Reality and Telexistence (ICAT 2006), Nov, 29 Dec,1, Hangzhou, China. Weiser, M. (1991) The computer for the twenty-first century, Scientific American, Set, pp. 94-100 Weiser, M. (1995) Designing Calm Technology, Dez, 21, www.ubiq.com/weiser/calmtech/calmtech.htm, Acesso em: Jan/2007 VRContext. Walkinside Visualization for the Industry. http://www.walkinside.com, Acesso em Jan/2007 Zhang, X.; Furnas, G. (2002) Social interactions in multiscale CVEs. 4th International Conference on Collaborative Virtual Environments, CVE02, ACM Press, pp 31-38

191

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Captulos

10
Jogos e Entretenimento com Realidade Virtual e Aumentada
Romero Tori, Ricardo Nakamura, Joo Luiz Bernardes Jr, Roberto Cezar Bianchini, Eduardo Costa Jacober, Daniel Calife e Alexandre Nascimento Tomoyose Laboratrio de Tecnologias Interativas (Interlab) Departamento de Engenharia de Computao e Sistemas Digitais Escola Politcnica da Universidade de So Paulo (USP) {romero.tori, ricardo.nakamura, joo.bernardes, roberto.bianchini, eduardo.jacober, daniel.calife, alexandre.tomoyose}@poli.usp.br

Abstract In this chapter the evolution of computer games and its industry, the major related concepts, and the relationship among videogame, Virtual Reality and Augmented Reality technologies will be discussed. Game engines, their use in computer game and virtual environments development, and the use of tangible user interfaces are among other important novel technologies that will be analyzed here. Resumo Este captulo discute evoluo e mercado dos jogos de computador e principais conceitos envolvidos, relacionando essa tecnologia 192

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

com as de realidade virtual e aumentada. Sero destacados os motores de jogos (game engines) e sua utilizao no desenvolvimento de jogo e ambientes virtuais, bem como as interfaces tangveis, importantes em sistemas de realidade virtual e aumentada .

10.1. Introduo
Jogos Eletrnicos (JE) e Realidade Virtual (RV) so reas que tm sua origem no incio da dcada de 1960, e que acabaram se desenvolvendo de forma independente. Algum tempo aps o surgimento desses dois campos, a rea de Realidade Aumentada (RA) tambm se juntou s outras duas e s muitas outras que estudam a forma como se pode representar e simular situaes e ambientes em computadores. A Computao Grfica (CG) a principal tecnologia por trs de JE, RV e RA. Dessa forma a evoluo da CG impacta as outras trs reas, assim como demandas provenientes de cada uma delas influenciam a indstria e pesquisas de CG. Devido ao grande avano ocorrido no hardware grfico e na diminuio do seu custo, pesquisas que englobam JE, RV e RA tendem a produzir resultados cada vez mais interessantes que aumentam o grau de interatividade homem-computador. A gigantesca indstria de jogos impulsiona a criao de ferramentas, dispositivos de interao e game engines que podem ser aproveitados tambm para o desenvolvimento de prottipos e/ou aplicaes finais de RV e RA. Dessa forma, conhecer a tecnologia de desenvolvimento de jogos interessante para profissionais, estudantes e pesquisadores da rea de RV e RA, mesmo que esses s pretendam desenvolver aplicaes srias. Este captulo apresenta conceitos e tecnologia de JE e analisa algumas de suas relaes com RV e RA.

193

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

10.2. Conceitos
Esta seo trata da conceituao e discusso sobre a aplicao das tecnologias de JE, RV e RA no entretenimento digital, com maior nfase na realidade aumentada, por se tratar de tecnologia mais recente e ainda pouco explorada pela indstria do entretenimento. Sero tambm discutidas semelhanas e diferenas entre tcnicas e tecnologias de RV e JE. 10.2.1. Jogos Eletrnicos Definir jogos eletrnicos simples, ou seja, so jogos que utilizam dispositivos eletrnicos (como computadores, consoles de videogame, - inclusive os portteis e celulares ou PDAs) como seu meio, ou seja, para permitir a interao com ele, mostrar seu estado, armazenar suas regras etc. J a definio de jogo mais problemtica. Embora reconhecer intuitivamente se determinada atividade ou no um jogo parea tarefa simples, diversos autores vm tentando fornecer definies que consideram adequadas, muitas vezes conflitantes entre si, sem que a comunidade de desenvolvimento e pesquisa de jogos tenha chegado a um consenso. No livro publicado dois anos aps sua morte, o filsofo Ludwig Wittgenstein (1953) argumenta que uma nica definio, baseada em seus elementos, no suficiente para determinar o conceito de jogo, que deveria ser representado por um conjunto de definies. Uma das principais dificuldades est na diferenciao entre jogo, brincadeira, competio, entretenimento e atividades artsticas. Outra se refere s diferenas culturais e lingsticas que tratam tais conceitos de forma diferente em diferentes sociedades. Por exemplo, em portugus jogo engloba trs diferentes palavras da lngua inglesa ( play, game e gambling ). Por outro lado play possui um sentido mais amplo que o nosso jogar. Para evitar dvidas, quando nos referirmos a jogo neste texto estaremos tratando 194

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

desse sentido mais estrito, equivalente ao game da lngua inglesa. Atualmente h tambm correntes que preferem excluir da classificao de jogos os programas de simulao (como o The Sims) e de histrias interativas. Do ponto de vista tecnolgico, no entanto, h muitas similaridades entre essas aplicaes e jogos eletrnicos, de forma que sob esse ponto de vista as tecnologias discutidas neste captulo tambm se aplicam a esse tipo de produto de entretenimento. A maioria dos autores concorda com alguns elementos que devem estar presentes em uma atividade para que seja considerada um jogo: interatividade, regras bem definidas, um ou mais objetivos a serem alcanados, obstculos para alcan-los e o entretenimento do jogador. Walther (2003) define jogo como transgresses que levam da realidade a um "modo de jogo", basicamente em funo de limites sobre local, tempo e objetos e da existncia de regras e estrutura no-convencionais. Mesmo esses elementos so fonte de discordncia. Os objetivos de um jogo, por exemplo, nem sempre so explcitos e fechados (close-ended), mas podem ser implcitos ou abertos (open-ended), ou seja, esto de alguma forma previstos nas regras mas so escolhidos pelo jogador conforme seu desejo. Por contar somente com objetivos open-ended, escolhidos pelo usurio e no impostos pelo jogo, muitos jogos no foram classificados como tal no passado. Os produtos da srie "Sim" e boa parte dos MMOs contam principalmente com objetivos desse tipo. Chris Crawford (2003), em sua definio baseada em dicotomias, tenta separar jogo de quebra-cabea e competio com base na natureza dos obstculos apresentados ao jogador, mas atinge uma definio muito restrita para jogo que constantemente desafia a intuio. A finalidade da atividade outro aspecto que gera dvidas, j que atualmente bastante comum o uso de jogos com objetivos alm do entretenimento, dentre eles destacando-se o treinamento de 195

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

profissionais. Mesmo quando o entretenimento no a principal finalidade de um jogo, aquele componente deve existir para caracteriz-lo como tal. difcil concordar com Roger Caillois (1957) que inclui a no-produtividade como elemento de sua definio de jogo. Se complexo classificar atividades como jogo ou no, classificar os jogos eletrnicos em si tambm no unanimidade. Uma classificao comum (mas nem sempre consistente) do mercado: First Person Shooter (FPS): jogos de ao em que o jogador tem viso em primeira pessoa e tem como objetivo eliminar adversrios (controlados pelo computador ou por outros jogadores) utilizando diversos tipos de armas ou golpes. No existe evoluo do personagem controlado pelo jogador, exceto atravs da posse de itens que coleta ao longo do jogo; Estratgia: o jogador controla (mais ou menos diretamente) diversos personagens (normalmente chamados de unidades) e estruturas (usadas para criar ou melhorar unidades ou para defesa) que so criados dentro do jogo a partir de recursos limitados. A estratgia est no gerenciamento desses recursos, na escolha do que criar e no uso das unidades; RPG: A principal caracterstica desses jogos a possibilidade de evoluo do personagem controlado pelo jogador ( menos comum que o jogador controle mais de um personagem, mas existem jogos em que controla grupos pequenos), cujas capacidades melhoram conforme se alcana algum objetivo. Essas capacidades normalmente so representadas numericamente por estatsticas como atributos fsicos, sociais ou mentais, habilidades, "nveis" etc. comum, mas no necessrio, que a forma como essa evoluo acontece, desde a criao do personagem, tambm esteja 196

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

sob controle do jogador, permitindo a sua customizao (a forma como os personagens interagem com o jogo pode ser bem diferente dependendo de quais estatsticas foram privilegiadas). Parte da evoluo normalmente tambm a aquisio e uso de "equipamentos" melhores para o personagem, cuja disponibilidade normalmente limitada pelo estgio de evoluo dos mesmos; Simulao: jogos que simulam alguma atividade real, como o crescimento e gerenciamento de uma cidade ou a vida de um indivduo. Alguns tipos especficos de simulao so to populares que podem ser considerados como categorias separadas:
Esportes (normalmente esportes populares de equipe

e esportes radicais como skate e snowboard);


Simuladores de vo; Corrida (quase sempre refere-se a corrida de automveis e no classificado como jogo de esporte).

Ao: Jogos eletrnicos em que ao intensa (normalmente violenta) o principal componente, sem grande preocupao com elementos como gerenciamento de recursos ou evoluo do personagem, mas com mais obstculos a vencer que os FPS (a mera locomoo no jogo e a aquisio de equipamentos podem ter obstculos complexos, puzzles so comuns fazendo com que muitos desses jogos sejam classificados como actionadventure); Aventura: Jogos eletrnicos em que o principal obstculo so puzzles e onde o elemento de ao quase inexistente. Normalmente o desenrolar do jogo conta uma histria (e essa histria costuma ser um dos maiores atrativos desses jogos) bastante linear;

197

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

interessante notar que um dos principais fatores para essa classificao parece ser o tipo de desafio ou obstculo que o jogador deve enfrentar. So comuns classificaes que so combinaes dessas, como Action-RPG ou o j mencionado Action-Adventure. Outras classificaes so feitas com relao plataforma do jogo (computador, consoles especficos, jogos para celular...) ou sua finalidade (jogos para treinamento, jogos educativos, advergames para divulgao de produtos ou conceitos etc.). Outro conceito relacionado, e que raramente tratado com rigor o da jogabilidade. Para o escopo deste texto, considera-se como sendo o anlogo da usabilidade, no contexto dos jogos. Ou seja, como a usabilidade a capacidade de um sistema computacional de atender s metas dos seus usurios, a jogabilidade a capacidade do jogo eletrnico de atender s metas (normalmente de entretenimento) dos seus jogadores. 10.2.2. Game Engines Em diferentes reas da Computao, o termo engine utilizado para denominar o ncleo de um sistema de software responsvel por uma tarefa especfica. Desta forma, existem engines de busca para bancos de dados, engines de inferncia relacionados inteligncia artificial, entre outros. Na rea de JE, existem divergncias sobre o que define o que um game engine, ou seja um engine para jogos eletrnicos. Por exemplo, a abordagem de Eberly (2000) limitada s tcnicas de gerao de imagens e gerenciamento de cenas. Para McShaffry (2003), existem diferentes tipos de game engines, tais como engines de renderizao 3D e engines de simulao fsica. Lewis e Jacobson (2002) definem engine como uma coleo de mdulos de cdigo de simulao que no especificam diretamente o comportamento ou o ambiente do jogo. A definio adotada neste texto um pouco mais abrangente: 198

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

um conjunto de sistemas de software parametrizveis, integrveis e reutilizveis, que fornecem servios utilizados em um jogo eletrnico. A principal motivao para o surgimento e proliferao dos game engines a reutilizao de cdigo. A evoluo dos computadores leva a um aumento na complexidade dos softwares desenvolvidos e isto tambm se aplica aos jogos eletrnicos. Como resultado, hoje em dia projetos de JE podem durar vrios anos, consumindo milhes de dlares e envolvendo dezenas de pessoas. Neste contexto, os game engines surgem como ferramenta para reduzir o tempo de desenvolvimento e os riscos de projeto, ao fornecerem servios fundamentais necessrios para os jogos eletrnicos. Como ilustrado na figura 10.1, o game engine implementa os seus servios sobre a plataforma computacional na qual o JE ser executado. Sobre o game engine fica o JE que o utiliza, responsvel por controlar a execuo de seus servios e fornecer os dados necessrios, tais como modelos 3D e sons. interessante observar que em geral, os game engines no abstraem muitos detalhes das plataformas de hardware em que so executados. Isso leva a um maior acoplamento entre o game engine e o hardware, mas feito para no comprometer o desempenho do JE.

199

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Figura 10.1. Estrutura de desenvolvimento de um jogo eletrnico que utiliza um engine.

A maioria dos game engines implementa algum tipo de gerao de imagens, normalmente renderizao de elementos tridimensionais. Isto se deve, principalmente, ao fato de que a maioria dos jogos eletrnicos atuais depende predominantemente da sada visual para interagir com o jogador. Uma conseqncia desta abordagem que, em muitos game engines, a representao de entidades lgicas e visuais se confunde, sendo implementada de maneira fortemente acoplada. Apesar da nfase que se observa na capacidade de gerao de imagens pelos game engines, existem muitos outros servios que podem ser fornecidos por eles, tais como: gerao de udio, comunicao em rede, inteligncia artificial, coliso e simulao fsica e tratamento de dispositivos de entrada. Ao se utilizar game engines em aplicaes de Realidade Virtual ou Aumentada, preciso ter em mente o fato de que,

200

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

mesmo sendo flexveis, esses sistemas de software so produzidos e otimizados para JE. Isto traz conseqncias como: Muitos game engines geram imagens adequadas para visualizao em monitores convencionais. No caso de se utilizar dispositivos diferentes, tais como HMDs e CAVEs, preciso avaliar a compatibilidade do game engine; A representao de objetos 3D e renderizao freqentemente otimizada para determinados tipos de ambientes virtuais (cenrios fechados ou terrenos amplos, por exemplo) e sua utilizao em outros casos pode ser difcil ou mesmo invivel; Muitos game engines utilizam formatos prprios para modelos 3D, efeitos sonoros etc. e disponibilizam ferramentas de converso entre formatos. No entanto, preciso avaliar se os formatos suportados por tais ferramentas so adequados para o ambiente de produo especfico (questes de licenciamento de software, tempo de processamento, converses incompletas, etc); A tolerncia latncia nos jogos eletrnicos tende a ser maior do que em ambientes virtuais multi-usurios, e os sistemas de comunicao em redes dos game engines so feitos de acordo com este fato. Portanto, pode ser necessrio avaliar o desempenho do game engine caso seja utilizado para este tipo de aplicao; Os sistemas de coliso e simulao fsica utilizados nos game engines buscam gerar resultados visualmente corretos. Ao se utilizar tais sistemas em aplicaes de RV e RA envolvendo simulao, deve-se avaliar se os resultados so adequados (fatores como confiabilidade e preciso). Em resumo, os game engines possuem algumas caractersticas que os tornam semelhantes aos toolkits para 201

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

aplicaes de Realidade Virtual. No entanto, sua implementao direcionada para o desenvolvimento de JE e portanto seu uso em aplicaes de RV e RA requer uma avaliao cuidadosa das caractersticas do game engine. 10.2.3. Interfaces Tangveis Influenciados pelo surgimento de duas novas tecnologias promissoras, a Realidade Aumentada e a Computao Ubqua, Ishii e Ullmer (1997) definiram um novo tipo de interface homemmquina muito mais ligada ao mundo fsico (assim como RA e Computao Ubqua): a Interface Tangvel (TUI, Tangible User Interface). Esta interface se baseia no princpio da utilizao de interaes fsicas para manipulao direta do mundo virtual, desta forma um objeto fsico real e um objeto virtual so associados, quando ocorre alguma mudana em um deles (normalmente no objeto fsico) o outro afetado da mesma maneira, permitindo que o usurio manipule um objeto virtual em um ambiente 3D atravs da manipulao de um objeto real, de uma maneira muito mais intuitiva. Atravs das interfaces tangveis, a manipulao de contedos digitais se torna muito mais natural, como por exemplo rotacionar um cubo real e obter as mesmas transformaes em um cubo virtual em um ambiente tridimensional. Um exemplo de aplicao da interface tangvel apresentado por Underkoffler e Ishii (1999), em uma aplicao chamada Illumination Light, nesta aplicao os usurios podem manipular objetos fsicos que representam componentes pticos (espelhos, lasers, lentes, etc) em uma superfcie aumentada. Quando o usurio posiciona o objeto que representa o laser nesta superfcie, projetado um raio luminoso que parece sair deste objeto, caso seja posicionado o objeto que representa o espelho, este raio ser refletido de acordo com sua posio. 202

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

A colaborao entre os usurios permitida e at mesmo incentivada com o uso das interfaces tangveis, isto ocorre devido ao fato de as interaes e movimentos terem menos limitadores, por exemplo, as interaes com os marcadores fsicos podem ser realizadas com as duas mos e at mesmo com o corpo [Brave et al, 1998]. Para que o uso das interfaces tangveis seja intuitivo e natural, sem a necessidade de um treinamento especfico para sua utilizao, necessria a escolha de objetos fsicos e metforas comuns aos usurios que iro utiliz-las, assim os usurios podem basear-se nas suas habilidades e experincias desenvolvidas durante o curso de sua vida [Billinghurst et al, 2005]. Existem muitas aplicaes e pesquisas de interfaces tangveis aplicadas a JE [Bernardes et al, 2005; Paiva et al, 2003; Tangible Media Group, 2007]. Alguns jogos eletrnicos comerciais fazem uso deste tipo de interface, como o uso de pistolas, pedais, volantes, manches e at baquetas de bateria. Nem todas as aplicaes de controles no-convencionais caracterizam-se como interface tangvel, pelo simples fato de que nem sempre o controle mapeado diretamente e unicamente com o elemento virtual correspondente. Assim, um controle na forma de cabo de raquete usado em um jogo de tnis virtual da mesma forma que um jogador desse esporte movimentaria uma raquete real uma interface tangvel. J esse mesmo basto usado para movimentar o curso na tela no seria uma interface tangvel. O console de videogame recentemente lanado Wii [Nintendo Wii, 2007], com seu controle sem fio com sensores de movimentos, pode atuar em alguns jogos eletrnicos como uma interface tangvel, como por exemplo no jogo eletrnico Wii Sports, onde o controle pode ser utilizado como uma raquete de tnis ou como um taco de baseball. 203

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

10.2.4. Agentes Inteligentes e Vida Artificial As aplicaes em JE e RV so povoadas no apenas por seres humanos mas tambm por agentes artificiais, conhecidos em JE como Non-Player Characters, ou apenas NPCs. Estes agentes so objetos autnomos no ambiente, isto possuem comportamento que no depende apenas da interao com os outros objetos para se manifestar, possuem a mesma representao no ambiente que os habitantes humanos (por avatares), mas seu comportamento controlado por tcnicas de Inteligncia Artificial (IA). Dado a complexidade na gerao das imagens grficas em taxas de quadros por segundos adequadas, acima de 30 quadros por segundo, em JE e RV, durante muito tempo os algoritmos de IA utilizados foram muito simples, gerando comportamentos muito previsveis e superficiais, no obstante pudessem ser divertidos em JE. Com o aumento no realismo grfico, os usurios tanto de JE quanto de RV tendem a ter tambm uma expectativa alta em relao aos demais elementos que podem interagir no ambiente. Comportamentos muito artificiais e pobres para os agentes em JE e RV esto comeando a quebrar o sentido de imerso dos usurios [Bianchini, 2005]. Alm das tcnicas sofisticadas para os comportamentos dos agentes, certas situaes em JE e RV exigem comportamentos consistentes, que no quebrem a imerso, mas que so aplicados no a um, mas a um grupo de agentes. O importante no o comportamento individual de cada agente, mas o seu comportamento global como um grupo. Neste sentido, tcnicas de Vida Artificial (VA) trazem realismo para simulao de grupos, como um grupo de animais ou uma multido de pessoas. Tcnicas de VA tambm podem ser utilizadas na evoluo do comportamento dos agentes. Resultados muito interessantes destas tcnicas podem surgir devido ao seu carter emergente: situaes no previstas explicitamente inicialmente pelos desenvolvedores

204

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

podem emergir da interao dos diversos agentes entre si e com o meio, levando a experincias mais ricas e dinmicas nestes ambientes.

10.3. Jogos e Realidade Virtual


Est cada vez mais freqente o uso de JE como ferramentas ou objetos de pesquisa no meio cientfico [Rosenbloom, 2003]. Devido grande popularizao e demanda por poder de processamento visual, os jogos eletrnicos se tornaram o norteador do desenvolvimento de microcomputadores com alta capacidade grfica. Por serem explorados como produto de massa, os jogos eletrnicos ainda se limitam a plataformas computacionais de baixo custo. Por influncia desta condio, os computadores pessoais que custam alguns milhares de dlares so capazes de renderizar cenas altamente complexas, custando dezenas, at mesmo centenas de vezes menos que uma estao grfica utilizada em renderizaes mais elaboradas, como em animaes pra o cinema ou visualizao cientfica de dados (Swartout and van Lent, 2003). As grandes empresas que produzem hardware grfico visam primeiro antecipar e atender os requisitos dos estdios desenvolvedores de JE, enquanto se contentam em atender s necessidades de visualizao cientfica como um efeito colateral [Rhyne, 2002]. Uma vez tendo ajudado a popularizar o acesso a recursos grficos em sistemas computacionais, a indstria de JE est influenciando o ambiente cientfico, sendo utilizados sistemas oriundos dos jogos eletrnicos (como os game engines) nas mais diversas aplicaes, passando por propsitos militares [Kumagi, 2001], educativos e teatrais [Jacobson and Hwang, 2002]. Olanda descreve um sistema feito em RV com objetivos de entretenimento 205

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

que simula a explorao da superfcie do planeta Marte [Olanda, 2006]. Em muitos casos game engines comerciais criados para JE servem de plataforma para a visualizao de dados e simulaes fsicas. Um outro uso resultante da melhoria grfica dos jogos eletrnicos a criao de novas formas de visualizao de arte. Jacobson e Hwang (2002) adaptaram um game engine comercial para ser utilizado em uma CAVE ao invs de um monitor. Com o auxlio deste sistema possvel a exibio de mostras de arte de forma panormica, isto , com um grande campo de viso. Aplicaes na rea mdica tambm so comuns. Slater et al (2001) descreve o uso de JE e RV no tratamento de fobias e traumas. Neste sistema, o paciente exposto a um ambiente virtual, no qual so realizadas simulaes de forma a auxiliar o paciente a superar o problema. A grande vantagem que o paciente no est exposto situao real, que poderia causar algum tipo de dano fsico ou psicolgico maior. Losh (2006) descreve um sistema de simulao em RV chamado Virtual Iraq que tenta diminuir os efeitos de estresse ps-traumtico de soldados americanos aps a invaso do Iraque por foras lideradas pelo EUA em 2003.

10.4. Jogos e Realidade Aumentada


Em sua primeira importante review sobre Realidade Aumentada, Azuma (1997) no mencionava jogos eletrnicos. Citava entretenimento como uma das aplicaes dessa tecnologia, mas referindo-se principalmente produo de filmes para o cinema. J em 2002, jogos eletrnicos so citados por ele como uma importante aplicao, com diversos exemplos [Azuma, 2002]: uma mudana causada principalmente pelo barateamento do hardware usado em aplicaes de RA, tornando-as apropriadas para o entretenimento domstico. Treinamento tambm uma importante 206

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

aplicao de RA citada por Azuma e muitos jogos tm sido usados para esse fim. Atualmente, at mesmo a indstria mainstream de jogos eletrnicos investe em RA, como evidenciado pelo EyeToy para Playstation2. Uma preocupao constante da indstria de jogos atualmente, no entanto, como obter jogabilidade original em seus produtos [BusinessWeek, 2006], o que se torna cada vez mais difcil conforme os paradigmas com sucesso de jogos e interao so explorados incessantemente. Novas formas de interao, como o uso do controle do Wii como interface tangvel e o j citado uso de RA com o EyeToy, so solues interessantes para esse problema, que exemplificam as vantagens que a RA pode trazer ao universo dos jogos eletrnicos. Outra vantagem a possibilidade de combinar as caractersticas de jogos e brincadeiras clssicos (que no usam o meio eletrnico, como por exemplo jogos de cartas ou tabuleiro), como seu forte componente de socializao, com as dos jogos eletrnicos (grficos e sons dinmicos e atraentes, IA, comunicao em rede, manuteno das regras) atravs da combinao de elementos reais e virtuais [Magerkurth et al., 2004]. Por outro lado, jogos so uma aplicao bastante adequada para testar novas formas e dispositivos de interface, como RA [Starner et al., 2000]. Devido ao carter ldico e metforas bem conhecidas em JE, os usurios se dispem com mais facilidade a lidar com metforas e tecnologias de interface mesmo quando ainda em estgio de prottipo e certamente com problemas. Alm disso, a popularidade dos jogos auxilia na divulgao da nova tecnologia. A principal classificao de jogos em realidade aumentada proposta nesse trabalho refere-se rea de jogo, separando os que fazem uso de grandes reas, os que precisam de reas limitadas e preparadas e os que se aproveitam da mobilidade de dispositivos 207

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

como celulares ou PDAs. As caractersticas, principalmente o tamanho, da rea em que se passa um jogo em realidade aumentada tm grande influncia no s em sua jogabilidade como na tecnologia usada em sua implementao. Jogos projetados para reas relativamente grandes (muitas vezes chamados jogos outdoor"), como um campus universitrio, ou um grande edifcio, dependem de computadores vestveis (normalmente carregados nas costas dos jogadores, em uma montagem especial similar a uma mochila). A sada grfica normalmente realizada atravs de HMDs , portteis e mais viveis do que distribuir monitores ou projetores em grandes reas. Alm disso, esses HMDs normalmente so do tipo semi-transparente, por razes de segurana. Um dos problemas mais complexos em realidade aumentada, o registro, torna-se ainda mais desafiador em grandes reas e normalmente necessria a combinao de vrias tcnicas de registro para trat-lo. Um conhecimento prvio do ambiente, seja na forma de um modelo 3D ou planta em 2D, bem como o uso de GPS so constantes na implementao desses jogos eletrnicos, normalmente auxiliadas por tcnicas de viso computacional ou sensores de movimento e orientao. Em relao jogabilidade, a metfora fsica prevalece nos jogos para grandes reas. Uma das maiores motivaes para esses jogos justamente trazer um jogo eletrnico para o mundo real e interagir de acordo. Sendo assim, para deslocar-se ou mudar seu ponto de vista em um desses jogos, o jogador anda, corre, pula ou vira a cabea na realidade e assim por diante. J os jogos projetados para reas menores e delimitadas podem fazer uso de diversas opes de tecnologia para sua implementao. Enquanto HMDs so comuns, a composio das imagens real e virtual por vdeo to comum quanto a tica, ao contrrio dos jogos para grandes reas, e monitores e projetores em 208

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

diversas configuraes tambm so largamente utilizados. Raramente h a necessidade de se usar computadores portteis ou vestveis, e a tarefa de registro pode ser feita de forma mais simples, utilizando-se uma nica tcnica isoladamente (normalmente viso computacional, muitas vezes com cmeras em posies fixas e conhecidas, mas sensores de posio e outras tcnicas tambm so usados). Alm disso, o jogo normalmente faz uso de algum elemento do ambiente, como uma mesa, caixas sobre uma grade desenhada no cho, uma parede de cor uniforme, um cenrio etc. Um terceiro tipo de jogo envolve dispositivos mveis e no depende do local onde esteja sendo jogado. Essa independncia que caracteriza esse tipo de jogo, e no somente o uso de dispositivos mveis, visto que os mesmos tambm podem ser usados em jogos eletrnicos em pequenas reas. A principal dificuldade para esse tipo de aplicao a capacidade de processamento consideravelmente mais baixa, atualmente, dos dispositivos portteis. Os principais jogos em RA para grandes reas so o NetAttack [Fraunhofer, 2007], o Human Pacman [Cheok et al., 2004] e o ARQuake [Thomas et al., 2002]. Todos utilizam HMDs semi-transparentes, computadores vestveis, GPS e comunicao por rede sem fio. O NetAttack e o Human Pacman utilizam mapas 2D do ambiente real, enquanto o ARQuake necessita de um modelo 3D. O Human Pacman o nico que no utiliza viso computacional e marcadores fiduciais para auxiliar no registro, utilizando sensores ativos. Cada um dos jogos tem peculiaridades interessantes, como o uso de uma "arma" com force feedback como dispositivo de entrada no ARQuake, de interfaces tangveis no Human Pacman e de colaborao com jogadores utilizando interfaces convencionais nele e no Net Attack.

209

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Parte da equipe responsvel pelo desenvolvimento do ARQuake, em conjunto com a iniciativa privada, est desenvolvendo um hardware e um game engine em "Realidade Aumentada" [A_RAGE, 2007]. A expresso est entre aspas pois, embora o A_RAGE combine elementos reais e virtuais atravs de um HMD semi-transparente e tenha interao em tempo real atravs de um gamepad, no h registro 3D entre os objetos reais e virtuais, no satisfazendo a definio de RA de Azuma (1996). Jogos de RA em reas limitadas, alm de normalmente terem uma implementao mais simples e de menor custo, permitem uma maior variedade de metforas. Talvez devido a esses fatores so bem mais numerosos que os para grandes reas e sero apresentados de forma resumida na Tabela 10.1. muito comum que jogos sejam apresentados como sendo de RA, inclusive em trabalhos cientficos, mesmo quando no combinam elementos reais e virtuais ou quando no fazem o registro 3D desses elementos, meramente por usarem HMDs ou marcadores fiduciais. Tais projetos no foram considerados aqui.
Nome/ referncia KnightMage, CandyLand, Monopoly/ Magerkurth et al. (2004) Visualizao/ composio Registro Interao

Metfora de Jogos de Tabuleiro


Monitores (Presentation Manager)/vdeo Viso computacional Tangvel (peas (limitada), RFID, com RFID), PDA sensores magnticos Viso computacional Tangvel, apontar e (ferramenta DTrack voz, laptop, PDA da ART) Tangvel Viso computacional (marcadores ou sensor magntico fiduciais ou "puck"

Projeo simples, Herding Sheep/ monitor (laptop, MacWilliams PDA), HMD et al. (2003) /vdeo e tica Monkey Bridge /Barakonyi et HMD/tica al. (2005)

210

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

False prophets/ Mandryk et al. (2002) AR Mahjong/ Szalavri et al. (1998) Ulbricht e Schmalstieg (2003) Jumanji Singapore/ Zhou et al. (2004) Kanji Learning /Wagner e Barakonyi (2003) TARBoard/Lee et al. (2005)

Projeo simples/tica HMD/tica

HMD/tica

magntico) Tangvel (peas Diodos e sensores com diodo infravermelho infravermelho) Personal interaction sensores magnticos panel (Szalavri e Gervautz, 1997) Tangvel Viso computacional (marcadores fiduciais) Tangvel (cubos Viso computacional com marcas fiduciais) Tangvel Viso computacional (marcadores fiduciais) Viso computacional Tangvel (cartas, tabuleiro)

HMD/vdeo

Monitor (PDA)/vdeo Monitor/Vdeo

Perceptive Workbench (viso e Tangvel (peas) ou / Starner et al. no tabuleiro ou infravermelho) ou gestos e voz (2000) HMD/tica rdio Metfora de Esportes Rastreamento AR2Hockey/ magntico da cabea Ohshima et al. HMD/tica Tangvel (mallets) e viso (1998) computacional Golf Simulator/ Govil et al. HMD/vdeo Viso computacional Tangvel (taco, bola) (2000) Viso AR Bowling/ computacional, Matysczok et HMD/vdeo No-tangvel (bola) dataglove e sensor al. (2004) magntico AR Billiards/ HMD/vdeo Viso computacional Tangvel (o prprio
MIND-Warping Projeo simples

211

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Jebara et al. (1997) Ping Pong Projeo Plus/ Ishii et al. simples/tica (1999) CamBall/ Woodward et Monitor/vdeo al. (2004) RV Border Guards, AcquaGauntlet HMD/tica / Ohshima et al. (1999) Bladeships/ Takemura et al. (2004) HMD/tica

(cor)

jogo de bilhar) Tangvel (o prprio jogo de ping-pong)

Som

Viso computacional Tangvel (raquete)

Metfora Fsica
Sensores magnticos e modelo 3D do Gestos ambiente Sensores magnticos (mo, cabea) e No-tangvel (os modelo 3D do bladeships) ambiente Viso computacional No-tangvel (oponente)

Kick Ass Kung Projeo Fu/Hamalainen simples/vdeo et al. (2005) Touch Space/ Cheok et al. (2002)

HMD/vdeo

AR PushPush/ Kim et al. HMD/vdeo (2005) ARHockey/ Projeo Vieira et al. simples/tica (2006) Cmera Kombat/ Paula Monitor/vdeo et al. (2006)

Sensores magnticos e viso Gamepad, posio e computacional co-localizao, (marcadores tangvel (caixas) fiduciais) Viso computacional (marcadores Gestos fiduciais) Outros Sensores infravermelhos Viso computacional Tangvel (batedores) Gestos (posio corporal)

212

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Invisible Train/ Wagner et al. (2005) Glass Xylophone /Kim et al (2004) Interactive Storytelling/ Charles et al. (2004)

Monitor (PDA)/vdeo Projeo simples/vdeo Projeo simples/vdeo (cromaqui)

Viso computacional (marcadores Touchscreen fiduciais) Viso computacional Tangvel (baquetas) (infravermelho) Gestos, no-tangvel Viso computacional e interpretao de (features) linguagem natural

Tabela 10.1 - Jogos em reas Limitadas

O SymBall [Hakkarainen e Woodward, 2005], uma verso mvel do CamBall [Woodward et al., 2004], e o chute a gol mobile" [Paelke et al., 2004] so os principais representantes dos jogos independentes de local. Ambos utilizam a cmera do porttil como dispositivo de entrada, atravs de tcnicas de viso computacional, e a sua tela como sada grfica.

10.5. Tendncias
Uma tendncia tanto para JE quanto RV o aparecimento de ambientes virtuais tridimensionais genricos, acessveis por microcomputadores padro pela internet, como o Second Life [Second Life, 2006]. Tais ambientes genricos no tm um objetivo especfico, fica a cargo de seus inmeros partipantes (habitantes) decidir se utilizaro sua infra-estrutura para fins de comunicao (como pontos de encontro, propaganda, etc), fins de entretenimento (como jogos, exibies, etc), comerciais (venda de contedo ou servios dentro do ambiente) ou de aprendizado (museus virtuais, ensino a distncia, etc). Assim como os game engines, podem ser adotados como base para as aplicaes cientficas de RV e, da mesma forma, essa prtica deve ser analisada com cautela, devido s suas caractersticas e restries. 213

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

No campo dos game engines, novas oportunidades aparecem com relao democratizao ao acesso plataforma de consoles, atravs de SDKs pblicos (como o XNA Game Studio Express da Microsoft) e o formato de distribuio por digital downloads. Ao mesmo tempo, os novos consoles Nintendo DS e Wii, bem como a srie EyeToy da Sony, criam uma ampla base instalada de dispositivos anteriormente no-convencionais de interface, como telas sensveis ao toque, microfones, sensores de posio e movimento, force-feedback, conexo sem-fio, captura de imagens e viso computacional. Ou seja, tais dispositivos podem facilitar tanto seu uso em projetos de pesquisa de RV, quanto diminuir o distanciamento do grande pblico a esses novos estilos interativos. Alguns exemplos foram citados, anteriormente neste texto, da atividade batizada como serious games, ou seja, a utilizao das ferramentas e mtodos caractersticos do desenvolvimento de jogos para aplicaes diferentes do entretenimento. De modo geral, essa tendncia se apresenta cada vez mais forte e mostrando ainda um grande potencial de crescimento, exemplificado por resultados favorveis em um nmero crescente de aplicaes e reas do conhecimento. Peters e Itti (2006) apresentam pesquisas voltadas a prever o comportamento do usurio e a possibilitar a criao de agentes com um comportamento mais humano. Este um exemplo de evoluo conjunta que pode ser aplicada tanto aos jogos eletrnicos como em aplicaes cientficas. Neste aspecto, a tendncia atual aumentar a complexidade dos comportamentos fazendo uso de tcnicas de aprendizagem, para que os agentes possam se adaptar melhor s diversas situaes que surgem nestes ambientes; incluir conceitos de computao afetiva tanto no processo de inferncia quanto na representao externa que os usurios tm acesso; tcnicas que permitam aos agentes apresentar comportamentos 214

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

mais voltados a objetivos, como no modelo Belief Desire Intention de agentes; tcnicas de Sistemas Multi Agentes para a cooperao entre os agentes na soluo de problemas.

10.6. Concluso
Este captulo apresentou os principais conceitos relacionados tecnologia de jogos eletrnicos, com destaque para game engines e interfaces tangveis. Foi analisada a interao entre as reas de RV e RA com a de jogos eletrnicos, tendo-se apresentado o estado da arte dos jogos baseados em tecnologia de RA. Finalmente foram discutidas algumas das principais tendncias da indstria e pesquisa de jogos eletrnicos e suas relaes com RV e RA. Para o leitor interessado em se aprofundar no assunto apresentada a seguir uma vasta bibliografia, utilizada como referncia para a elaborao deste texto.

10.7. Referncias Bibliogrficas


A_RAGE A_RAGE: Augmented Reality Gaming Engine [stio web]. Disponvel em: <http://www.a-rage.com>. Acesso em: maro de 2007. Azuma, R. A Survey of Augmented Reality. In: Presence: Teleoperators and Virtual Environments, n. 6, p. 355-385, 1997. Azuma, R.; Baillot, Y.; Behringer, R.; Feiner, S.; Julier, S. Macintyre, B. Recent Advances in Augmented Reality. In: IEEE Computer Graphics and Applications, v. 21, n. 6, p. 34-47, 2001. Barakonyi, I.; Markus W.; Thomas P.; Schmalstieg D. MonkeyBridge: Autonomous Agents in Augmented Reality Games. In: ACM SIGCHI INTERNATIONAL CONFERENCE ON ADVANCES IN COMPUTER ENTERTAINMENT TECHNOLOGY, 2005. Anais... ACM, 2005. 215

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Bernardes Jr., J. L.; Dias, J. S.; Tori, R. (2005). Exploring Mixed Reality User Interfaces for Eletronic Games, In: Proceedings of WJOGOS 2005, 353-358. Bianchini, R.C. Uma Arquitetura Bdi para Comportamentos Interativos de Agentes em Jogos Computacionais, [tese de doutorado], 2005. Bianchini, R. C.; Bernardes Jr., J. L.; Cuzziol, M.; Jacober, E,; Nakamura, R.; Tori, R. (2006) Jogos Eletrnicos e Realidade Virtual, Fundamentos e Tecnologia de Realidade Virtual e Aumentada, R. Tori e C. Kirner (org.), Porto Alegre, SBC, p. 199-219. disponvel em www.interlab.pcs.poli.usp.br Billinghurst, M.; Grasset, R.; Looser, J. (2005). Designing augmented reality interfaces, ACM SIGGRAPH Computer Graphics, 39, 1, 17-22. Brave, S.; Ishii, H.; Dahley, A. (1998). Tangible interfaces for remote collaboration and communication, In: Proceedings of the 1998 ACM conference on Computer supported cooperative work, 169-178. Businessweek. Electronic Arts: A Radical New Game Plan. Disponvel em: <http://www.businessweek.com/magazine/content/06_12/b3976 086.htm>. Acesso em: maro de 2006. Caillois, R. Les jeux et les homes. Gallimard, 1957. Charles, F.; Cavazza, M.; Mead, S.; Martin, O.; Nandi, A.; Marichal, X. Compelling Experiences in Mixed Reality Interactive Storytelling. In: ACM SIGCHI ADVANCES IN COMPUTER ENTERTAINMENT, 2004. Anais... ACM, 2004. p. 32-41. Cheok, A. et al. Human Pacman: a Sensing-Based Mobile Entertainment System with Ubiquitous Computing and Tangible Interaction. In: WORKSHOP ON NETWORK AND SYSTEM SUPPORT FOR GAMES, 2, 2003. Anais... 2003. p. 106-117 216

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Crawford, C. Chris Crawford on Game Design. New Riders, 2003. Eberly, D. H., 3D Game Engine Design: A Practical Approach to Real-Time Computer Graphics, Morgan-Kaufmann, 2000. Fraunhofer F. NetAttack Homepage. [stio web] Disponvel em: <http://www.fit.fraunhofer.de/projekte/netattack/index_en.xml? aspect=ar-gaming>. Acesso em: abril de 2006. Govil, A.; You, S.; Neumann, U. A Video-Based Augmented Reality Golf Simulator. In: ACM INTERNATIONAL CONFERENCE ON MULTIMEDIA, 8, 2000. Anais... ACM, 2000. Hakkarainen, M.; Woodward, C. SymBall: Camera Driven Table Tennis for Mobile Phones. In: ACM SIGCHI INTERNATIONAL CONFERENCE ON ADVANCES IN COMPUTER ENTERTAINMENT TECHNOLOGY, 2005. Anais... 2005. Hamalainen, P.; Ilmonen, T.; Hoysniemi, J.; Lindholm, M.; Nykanen, A. Martial Arts in Artificial Reality. In: INTERNATIONAL CONFERENCE FOR HUMANCOMPUTER INTERACTION, 2005. Anais... 2005. Hause, K. What to Play Next: Gaming Forecast 1999-2003. In: CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS, 2003. Anais... 2003. p. 894-895. Ishii, H.; Ullmer, B. (1997). Tangible bits: towards seamless interfaces between people, bits and atoms, In: Proceedings of the SIGCHI conference on Human factors in computing systems, 234-241. Ishii, H. Et Al. PingPongPlus: Design of an Athletic-Tangible Interface for Computer-Supported Cooperative Play. In: ACM CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS, 1999. Anais... 1999.

217

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Jacobson, J. and Hwang, Z. UnrealTournament for Immersive Interactive Theater. In: Communicatins of the ACM, 45(1):39 42, 2002. Jebara, T.; Eyster, C.; Weaver, J.; Starner, T.; Pentland, A. Stochasticks: Augmenting the Billiards Experience with Probabilistic Vision and Wearable Computers. In: INTERNATIONAL SYMPOSIUM ON WEARABLE COMPUTERS, 1, 1997. Anais... IEEE, 1997. p. 138-145. Kim, I.; Lee, H.; Kim, H. Magic Mirror: A new VR platform design and its applications. In: ACM SIGCHI ADVANCES IN COMPUTER ENTERTAINMENT, 2004. Anais... ACM, 2004. p. 343-348. Kim, K. et al. ARPushPush: Augmented Reality Game in Indoor Environment. In: INTERNATIONAL WORKSHOP ON PERVASIVE GAMING APPLICATIONS, 2005. Anais... 2005. Kumagi, J. Fighting in the streets. In: IEEE Spectrum, 38(2):68 71, 2001. Lee, W.; Woo, W.; Lee, J. TARBoard: Tangible Augmented Reality System for Table-top Game Environment. In: INTERNATIONAL WORKSHOP ON PERVASIVE GAMING APPLICATIONS, 2005. Anais... 2005. Lewis, M., Jacobson, J. (2002), Game Engines in Scientific Research, In: Communications of the ACM, Vol. 45, No. 1, p. 27-31. Losh, E. Making Things Public: Democracy and Government Funded Videogames and Virtual Reality Simulations, In: Sandbox Symposium July 29-30, 2006, Macwilliams, A.; Sandor, C.; Wagner, M.; Bauer, M.; Klinker, G.; Bruegge, B. Herding Sheep: Live System Development for Distributed Augmented Reality. In: IEEE AND ACM INTERNATIONAL SYMPOSIUM ON MIXED AND AUGMENTED REALITY, 2, 2003. Anais... ACM, 2003. 218

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Magerkurth, C.; Engelke, T.; Memisoglu, M. Augmenting the Virtual Domain with Physical and Social Elements. In: ACM SIGCHI ADVANCES IN COMPUTER ENTERTAINMENT, 2004. Anais... ACM, 2004. p. 163-172. Mandryk, R.; Maranan, D.; Inkpen, K. False Prophets: Exploring Hybrid Board/Video Games. In: CONFERENCE OF HUMAN FACTORS IN COMPUTING SYSTEMS, 2002. Anais... 2002. p. 640-641. Matysczok, C.; Radkowski, R.; Berssenbruegge, J. AR-Bowling: Immersive and Realistic Game Play in Real Environments Using Augmented Reality. In: ACM SIGCHI ADVANCES IN COMPUTER ENTERTAINMENT, 2004. Anais... ACM, 2004. p. 269-274. McShaffry, M., Game Coding Complete, Paraglyph Press, 2003. Nintendo Wii.Nintendo.com. [stio web] Disponvel em: <http://wii.nintendo.com/home.html>, acessado em Fevereiro de 2007. Olanda, R.; Prez, M.; Morillo, P. et al. Entertainment Virtual Reality System for Simulation of Spaceflights Over the Surface of the Planet Mars, In, VRST 06, November 1-3, 2006. Ohshima, T. et al. AR2Hockey: A Case Study of Collaborative Augmented Reality. In: VIRTUAL REALITY ANNUAL INTERNATIONAL SYMPOSIUM, 1998. Anais... IEEE, 1998. p. 268-275. Ohshima, T.; Satoh, K.; Yamamoto, H.; Tamura, H. RV-Border Guards: A Multi-player Entertainment in Mixed Reality Space. In: IEEE AND ACM INTERNATIONAL WORKSHOP ON AUGMENTED REALITY, 2, 1999. Anais... ACM, 1999. Paelke, V.; Reimann, C.; Stichling, D. Foot-based mobile Interaction with Games. In: ACM SIGCHI ADVANCES IN COMPUTER ENTERTAINMENT, 2004. Anais... ACM, 2004. p. 321-324. 219

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Paiva, A.; Chaves, R.; Vala, M.; Bullock, A.; Andersson, G.; Hook, K. Towards Tangibility in Gameplay: Building a Tangible Affective Interface for a Computer Game, In: Proceedings of International Conference on Multimodal Interfaces ICMI03, 60-67. 2003. Paula, L.; Bonini, R.; Miranda, F. Camera Kombat Interao Livre para Jogos, In: Anais SBGames 2006. Peters, R. J.; Itti, L. Computational mechanisms for gaze direction in interactive visual environments. In: ACM:27-29, Maro 2006 Rhyne, T. Computer Games and Scientific Visualization. In: Communications of the ACM, 45(7):4044, 2002. Rosenbloom, A. A Game Expirience in Everyday Application. In: Communications of the ACM, 46(7):2831, 2003. Second Life Second Life: Your World. Your Imagination. [stio web] Disponvel em: http://secondlife.com Acessado em Fevereiro, 2007. Slater, M., Pertaub, D. P. and Baker, C. Medicine Meets Virtual Reality 2001: Outer Space, Inner Space, Virtual Space, volume Studies in Health Technology Studies In: IOS Press, Amsterdam, Netherlands, 2001. Starner, T. et al. Mind-Warping: Towards Creating a Compelling Collaborative Augmented Reality Game. In: INTERNATIONAL CONFERENCE ON INTELLIGENT USER INTERFACES, 5, 2000. Anais... ACM, 2000. p. 256259. Swartout, W.; van Lent, M. Making Game of a System Design. In: Communications of the ACM, 46(7):3239, 2003. Szalavri, Z.; Eckstein, E.; Gervautz, M. Collaborative Gaming in Augmented Reality. In: ACM SYMPOSIUM ON VIRTUAL REALITY SOFTWARE AND TECHNOLOGY, 1998. Anais... 1998. p. 195-204. 220

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Takemura, M.; Haraguchi, S. ; Ohta, Y. An Interactive Attraction in Mixed Reality: Bladeships. In: INTERNATIONAL CONFERENCE ON VIRTUAL SYSTEMS AND MULTIMEDIA, 10, 2004. Anais... 2004. Thomas, B.; Close, B.; Donoghue, J.; Squires, J.; De Bondi, P.; Piekarski, W. First Person Indoor/Outdoor Augmented Reality Application: ARQuake. In: Personal and Ubiquitous Computing, n. 6, p. 75-86, 2002. TMG MIT Media Lab - Tangible Media Group. [stio web] Disponvel em: <http://tangible.media.mit.edu/>, acessado em Fevereiro de 2007. Ulbricht, C.; Schmalstieg, D. Tangible Augmented Reality for Computer Games. In: THE IASTED INTERNATIONAL CONFERENCE ON VISUALIZATION, IMAGING AND IMAGE PROCESSING, 2003. Anais... IASTED, 2003. p. 950954. Underkoffler, J.; Ishii, H. (1998). Illuminating light: an optical design tool with a luminous-tangible interface, In: Proceedings of the SIGCHI conference on Human factors in computing systems, 542-549. Vieira, B.; Theodoro, C.; Trias, L.; Miranda, F.; Tori, R. ARHockey: Um jogo de Realidade Aumentada Baseada em Projetores, In: Anais SBGames 2006. Wagner, D.; Barakonyi, I. Augmented Reality Kanji Learning. In: IEEE AND ACM INTERNATIONAL SYMPOSIUM ON MIXED AND AUGMENTED REALITY, 2, 2003. Anais... ACM, 2003. 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. Anais 2005.

221

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Walther, B. K.; Playing and Gaming: Reflections and Classifications. In: GAME STUDIES THE INTERNATIONAL JOURNAL OF COMPUTER GAME RESEARCH, vol. 3, issue 1, May 2003. Disponvel em: <http://www.gamestudies.org/0301/walther>. Acesso em Maro, 2007. Woodward, C.; Honkamaa, P.; Jppinen, J.; Pykkimies, E. CamBall Augmented Networked Table Tennis Played with Real Rackets. In: ACM SIGCHI ADVANCES IN COMPUTER ENTERTAINMENT, 2004. Anais... ACM, 2004. p. 275-276. Wittgenstein, L. Philosophical Investigations. 1953. Zhou, Z.; Cheok, A.D.; Chan, T.; Li, Y. Jumanji Singapore: An Interactive 3D Board Game Turning Hollywood Fantasy into Reality. In: ACM SIGCHI ADVANCES IN COMPUTER ENTERTAINMENT, 2004. Anais ACM, 2004. p. 362-363.

222

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

Captulo

11
Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada
Ftima L. S. Nunes1, Rosa M. E. M. Costa2, Ana Cludia M. T. G. Oliveira1, Srgio R. Delfino1, Larissa Pavarini1, Ildeberto A. Rodello1, Jos Remo F. Brega1 e Antnio C. Sementille1 Programa de Ps-Graduao em Cincia da Computao Centro Universitrio Eurpides de Marlia (UNIVEM) Avenida Hygino Muzzi Filho, 529 - CEP 17525-901, Marlia SP, Brasil {fatima,lpavarini,rodello,remo,semente}@univem.edu.br, {anatiessi, srdelfino}@gmail.com Universidade do Estado do Rio de Janeiro IME Dept de Informtica e Cincia da Computao Rua So Francisco Xavier 524- 6o Bl. B, CEP 20550-013 Rio de Janeiro - RJ - Brasil rcosta@ime.uerj.br
2 1

Abstract Virtual Reality (VR) and Augmented Reality (AR) application for health area are developed with the most different purposes. Independent of the application objectives, requirements for its building can exceed that ones requested for application in other 223

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

areas. This chapter presents a practical vision of the important requirements to building VR and AR applications for health area, motivating a reflection and offering subsidies for planning tools for those people who desire start develop or are already developing application in this knowledge area. Resumo As aplicaes de Realidade Virtual (RV) e Realidade Aumentada (RA) para a rea de sade so desenvolvidas para as mais diversas finalidades. Independente da finalidade da aplicao, os requisitos para constru-la muitas vezes podem ir alm daqueles exigidos para aplicaes destinadas a outras reas. Este captulo apresenta uma viso prtica dos requisitos importantes para construir aplicaes de RV e RA para a rea de sade, motivando uma reflexo e oferecendo subsdios para o planejamento de ferramentas daqueles que desejam adentrar ou esto desenvolvendo aplicaes neste campo de conhecimento.

11.1. Introduo
Os computadores e tecnologias de comunicao vm sendo utilizados de maneira crescente em diferentes reas do conhecimento, sendo que, na ltima dcada estes equipamentos se disseminaram fortemente na rea mdica. A tecnologia de Realidade Virtual (RV) vem despertando grande interesse neste domnio, pois amplia as possibilidades de estudo e prtica de variadas tcnicas e procedimentos mdicos. Por outro lado, a difuso das redes favorece as aplicaes de telemedicina, onde grficos de alta resoluo, imagens e udio podem ser transmitidos e integrados em diferentes tipos de sistemas.

224

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

A conjuno destes avanos impulsiona o crescimento do nmero de experimentos e pesquisas que, por sua vez, exploram sofisticadas tcnicas de visualizao, incorporando equipamentos especficos capazes de gerar nos seus usurios sensaes semelhantes s do mundo real. Este captulo discute a utilizao dos computadores na rea mdica, aponta a explorao da Realidade Virtual e Realidade Aumentada (RA) como tendncias para esta rea, descreve requisitos e equipamentos necessrios para o desenvolvimento dos trabalhos neste domnio e destaca vrias aplicaes. Como as questes ticas associadas s novas tecnologias extrapolam as fronteiras da tecnologia e atingem a sociedade de maneira direta, este captulo apresenta, ainda, os valores ticos envolvidos no uso das novas tecnologias na rea medica.

11.2. Aplicaes caractersticas, requisitos e exemplos


As aplicaes desenvolvidas para a rea mdica esto inseridas em um contexto que exige ambientes virtuais realsticos e respostas a aes que permitam ao usurio ter a sensao de estar vivenciando uma situao ou procedimento como se fosse, de fato, real. Logo, um dos aspectos fundamentais para a utilizao de ambientes virtuais neste domnio a necessidade de gerao de sensaes prximas s reais, ou seja, gerar presena em seus usurios. A presena ou telepresena pode ser definida como a sensao que a pessoa tem de realmente estar dentro do Ambiente Virtual, ou seja, estar em um local diferente do que fisicamente se encontra [Baos, 2000]. A presena pode ser obtida atravs do estmulo dos sentidos humanos (tato, viso e audio). O senso de presena dependente no somente das qualidades fsicas (resoluo, realismo, interatividade, tempo de resposta), mas tambm o que o usurio traz como bagagem

225

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

psicolgica. Cada pessoa reage de maneira diferente quando expostas a mesma situao real ou virtual [Baos, 2000]. Neste sentido, North et al. (1998) observam que a concentrao nas atividades realizadas no ambiente virtual est diretamente relacionada com o nvel de interao e a adequao dos equipamentos de entrada e sada. A seguir, so apresentados alguns dos equipamentos mais utilizados em aplicaes de RV e RA na rea mdica. 11.2.1. Equipamentos de Entrada e Sada 11.2.1.1. Equipamentos de Entrada Em geral, os rastreadores so equipamentos muito utilizados em aplicaes mdicas, pois fornecem posicionamento em tempo-real e orientao de movimento de objetos ou pessoas, explorando diferentes tecnologias. Eles podem ser do tipo mecnico, que fica preso cabea do usurio dando-lhe pouca mobilidade; ultra-snicos, que trabalham por meio da emisso de ondas sonoras para determinar a posio do usurio e dando-lhe liberdade de movimentos, mas tendo pouca preciso; luminosos, que capturam, com o uso de cmeras, pequenas luzes acopladas ao corpo do usurio, sendo de uso confortvel, mas consumindo muito tempo de processamento dos sinais; ticos, que trabalham de forma contrria aos rastreadores luminosos, com a cmera ficando presa cabea do usurio e as luzes em pontos estratgicos do ambiente fsico; entre outros. Estes rastreadores podem estar acoplados a instrumentos de manipulao cirrgica [Aras, 2007], permitindo ao usurio ter preciso no controle dos seus movimentos e do mesmo tempo, gerando resistncia. Estes equipamentos so classificados no grupo de interfaces hpticas e so essenciais na gerao de sensaes

226

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

prximas das obtidas em uma simulao real. O Captulo 8 apresenta os equipamentos hpticos de forma detalhada. As luvas tambm tm sido utilizadas em experimentos onde necessria a manipulao de objetos [Haluck, 2007]. Capturam os movimentos das mos e dos dedos, fazendo com que as respostas do ambiente sejam compatveis com estes movimentos. Existem vrios tipos de luvas funcionando com diferentes mecanismos de captura dos movimentos: tinta condutiva, esqueletos externos e medidores de luminosidade. 11.2.1.2. Equipamentos de Sada Para a gerao de telepresena, os ambientes virtuais necessitam de viso estereoscpica, que possibilitam a visualizao de imagens com um mais alto grau de realismo, fornecendo sensao de profundidade ao observar o AV. Um dos equipamentos que geram viso estereoscpica mais utilizados na rea mdica o HMD (Head-mounted display), tambm conhecido como capacete. Permite isolar o usurio do mundo real e projetar imagens que geram um alto grau de presena. Entretanto, est no grupo de equipamentos de sada que gera mais problemas de sade em seus usurios, tais como nuseas e tonturas. Os HMDs so utilizados em variados tipos de aplicaes mdicas, desde tratamentos de fobias e problemas neuropsiquitricos [Costa, 2004] at a visualizao de imagens para procedimentos cirrgicos, por meio de tcnicas de RA [Reitinger, 2006]. As Mesas de Projeo integram duas telas verticais em formato de L. Os usurios tm possibilidades de visualizao estereoscpica e de interao com os objetos da cena [Barco, 2007]. A Caverna ou Cave uma pequena sala onde imagens so projetadas sobre paredes translcidas. Existem sensores de posio que capturam os movimentos dos usurios e atualizam as imagens 227

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

projetadas. Em geral, possuem som 3D, gerando sensaes bastante reais. Sua grande vantagem permitir que vrias pessoas compartilhem a mesma experincia [Diffusion, 2007].

11.3. Criao de objetos tridimensionais


Em aplicaes mdicas, objetos tridimensionais (3D) so usados para representar pacientes, equipamentos, ambientes (consultrios, salas de cirurgia) e rgos humanos. Ferramentas para modelagens 3D oferecem inmeros recursos para a construo desses objetos sintticos. No entanto, necessria uma certa dose de arte para constru-los, tarefa nem sempre trivial para profissionais de Computao. Alm disso, algumas aplicaes, como treinamento de procedimentos, podem exigir preciso em tempo real. Nesses casos, o ideal que os objetos 3D sejam modelados a partir de dados provenientes de imagens mdicas reais. Uma soluo para implementar objetos realsticos a utilizao de imagens geradas por meio de equipamentos mdicos. A seguir apresentada uma conceituao sobre algumas modalidades mdicas que podem gerar imagens para a criao de um Ambiente Virtual (AV). Exemplos de mtodos de utilizao dessas imagens so apresentados na seo 11.9. As modalidades de diagnstico por imagens se estabeleceram h algum tempo, valendo-se de uma variedade de equipamentos de aquisio como Tomografia Computadorizada (TC), Ressonncia Magntica Nuclear (RMN) e Ultra-Som (US). Na TC a imagem deriva do tratamento informatizado dos dados obtidos numa srie de projees angulares de raios-X. De maneira simplificada, traduz uma seco transversal (uma "fatia") do corpo do indivduo (Figura 11.1a) [Wagner, 2002]. A Ressonncia Magntica Nuclear (RMN) uma tcnica que permite determinar propriedades de uma substncia por meio do co-relacionamento da energia absorvida com a freqncia, na 228

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

faixa de megahertz (MHz) do espectro eletromagntico. Usa propriedades dos ncleos dos tomos ou ons para mapear os tecidos, sob a influncia de um campo magntico, produzindo imagens de alta qualidade (Figura 11.1b) [Hennel, 1993]. A ultra-sonografia um mtodo diagnstico que aproveita o eco produzido pelo som para ver, em tempo, real as sombras produzidas pelas estruturas e rgos do organismo. As ondas sonoras, ao encontrarem um anteparo, batem e so refletidas, retornando ao seu ponto de origem. Se for medido o tempo dispendido desde a emisso at a recepo do sinal de retorno, pode-se determinar com boa preciso a distncia que ele percorreu, sendo possvel a traduo em uma escala de cinza, que formar a imagem dos rgos internos (Figura 11.1c) [Handolin, 2007].

(a)

(b)

(c)

Figura 11.1 Imagens de CT, RMN e US : (a) crebro, obtida por CT; (b) crebro, obtida por RMN; (c) crebro de feto, obtida por US [Sayeg, 2007].

As modalidades que geram sees transversais (RMN, CT, entre outras) permitem um mapeamento direto para objetos virtuais 3D, por meio de tcnicas de reconstruo de imagens. Para aquelas que geram apenas algumas vises, como US bidimensional (2D) e mamografia, possvel aplicar tcnicas de simulao dos objetos 3D a partir de medidas extradas das imagens 2D, como ser visto na seo 11.9. 229

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

11.4. Deteco de coliso


Em aplicaes mdicas, preciso, tempo de resposta, conhecimento do local de impacto e verificao de interpenetrao entre os objetos so fundamentais para a simulao de procedimentos de forma realstica. Por isso, a deteco de coliso torna-se um fator extremamente relevante nesta classe de aplicaes. Lau et al. (2002) classificam este fator em dois grandes grupos: deteco em objetos rgidos, que envolve o teste de penetrao de um objeto em outro e deteco em objetos deformveis (superfcies flexveis), que trata, alm da interao entre os objetos, das deformaes causadas por esta interao. Na deteco de coliso em objetos rgidos, podem ser utilizadas trs aproximaes: subdiviso hierrquica do espao, subdiviso hierrquica do objeto e clculo incremental da distncia [Lau, 2002]. Os mtodos de coliso em objetos deformveis, por sua vez, so baseados na subdiviso hierrquica do objeto, a qual pode ser de dois tipos: objetos representados por polgonos encadeados e por superfcies paramtricas (mapeamentos de algum subconjunto do plano ao espao). No primeiro caso, os objetos so deformados alterando-se as posies dos vrtices dos polgonos. J os representados por superfcies paramtricas so, geralmente, deformados pela alterao do controle de pontos da superfcie.

11.5. Deformao
Um AV pode ser composto de objetos estticos, os quais mantm a mesma forma durante toda sua existncia e dinmicos, que mudam de posio, forma ou aparncia devido a alguma interao ocorrida. Para que um AV seja realstico, necessrio planej-lo da forma mais prxima ao cotidiano, definindo suas aes e reaes. A deformao uma das reaes a serem analisadas, sendo que o comportamento dos objetos deformados representado por uma 230

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

simulao geomtrica, fsica ou hbrida. Choi et al. (2002) definem a simulao geomtrica como aquela baseada em manipulaes de dados geomtricos como vrtices e pontos. Usa artifcios matemticos para obter resultados visualmente convincentes que permitem mudana na estrutura do objeto. A simulao fsica utiliza a dinmica, ramo da fsica que estuda as relaes entre as foras e os movimentos que so produzidos por estas, ou seja, se preocupa com a causa e a conseqncia dos estmulos causados [Ramalho, 1993]. Na literatura trs tcnicas so as mais citadas para se obter deformao de objetos em aplicaes de RV: Free Form Deformation (FFD) [Gibson, 1997], Mass Spring (MS), popularmente conhecido como Massa-Mola [Zill, 2003] e Elementos Finitos [Gladilin, 2003]. Free Form Deformation (FFD) uma tcnica geomtrica que prov um alto nvel de ajuste e controle individual dos pontos do objeto. O objeto envolvido por uma grade que sofre deformao (Figura 11.2). Mesmo sendo verstil, Choi et al. (2002) afirmam que neste mtodo difcil limitar as deformaes para pequenas regies, dificultando a obteno de realismo na cena quando empregado em um treinamento cirrgico. O Mtodo dos Elementos Finitos originou-se da necessidade de resolver elasticidade complexa e anlise de estruturas. Sua caracterstica principal a discretizao da malha de um domnio contnuo em um conjunto de subdomnios discretos. A discretizao do domnio o primeiro passo em qualquer anlise de elementos finitos, pois a maneira na qual o domnio discretizado afetar as exigncias de armazenamento no computador, o tempo de processamento e a preciso dos resultados numricos [Hirota et al., 1999].

231

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

A teoria da elasticidade afirma que a deformao de um corpo proporcional tenso aplicada desde que o limite elstico do material no seja excedido [Zill, 2003]. A anlise de qualquer tipo de estrutura pode ser feita pela integrao das equaes da teoria da elasticidade. As dificuldades para realizar essa integrao levam, porm, formulao de modelos matemticos aproximados. Os passos bsicos para implementar este mtodo podem ser obtidos em [Hirota et al., 1999].

Figura 11.2 Exemplo de objeto deformado utilizando o mtodo FFD [Hirota et al. 1999].

O mtodo Massa-Mola uma tcnica baseada na fsica que permite a remodelagem de objetos deformados atravs de ns de massa conectados por molas, como mostra a Figura 11.3 [Gibson, 1997]. Envolve formulao de matrizes e sistemas de equaes diferenciais governadas por modelos dinmicos para prevenir a instabilidade numrica. A mola pode ser considerada como uma estrutura que possui elasticidade e permite a deformao quando uma presso exercida nela. A fora de uma mola normalmente linear, baseada na lei de Hooke [Zill, 2003], mas molas no lineares podem ser usadas para simularem tecidos como pele humana, que exibem um comportamento no elstico.

232

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

Figura 11.3 Molas conectadas a um ponto de massa que exercem foras nos pontos vizinhos quando a massa deslocada do resto das posies [Gibson, 1997].

11.6. Estereoscopia
Nas aplicaes de RV e RA para proporcionar a sensao, denominada imerso, so empregados conceitos de estereoscopia. A viso estreo um dos principais mecanismos que permite ao ser humano perceber a noo de profundidade. O olho esquerdo e o olho direito sempre vem imagens diferentes (apesar de muito parecidas). Santos (2000) lembra que o crebro usa esta diferena para montar a imagem. O princpio de funcionamento da maioria dos dispositivos estereoscpicos a projeo de imagens distintas aos olhos esquerdo e direito do observador, proporcionando sensao de profundidade. H vrios mtodos para obter esta sensao. Johanson (2001) apresenta a tcnica de vdeo estereoscpico, no qual posicionam-se cmeras separadas uma da outra que geram imagens distintas. O mtodo de polarizao da luz baseia-se na utilizao de filtros, fazendo com que as imagens de um par estereoscpico sejam polarizadas em planos verticais e horizontais [Machado, 2003]. culos obturadores com lentes de cristal lquido so dispositivos especiais, cujas lentes ficam instantaneamente 233

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

transparentes ou opacas de acordo com um sistema de controle prvio, sincronizados com a imagem projetada. Existe tambm a visualizao do par estreo [Lipton, 1982], na qual so apresentadas duas imagens, lado a lado, de forma com que cada imagem seja posicionada levando em conta a distncia entre os olhos do observador. Ao mtodo de estereoscopia que utiliza cores e diferentes profundidades codificadas, d-se o nome de Disparidade Cromtica. Esta tcnica baseia-se na utilizao de lentes especiais denominadas ChromaDepth, as quais realizam a codificao das profundidades atravs de suas cores. As lentes mudam a trajetria da luz que as atravessa de acordo com a cor do objeto, gerando o efeito estreo. O uso de anaglifos apresentado por Schwartz (2004), explicando que os objetos so obtidos por uma combinao finita (azul-vermelho ou verde-vermelho) de cores, gerando uma sensao de profundidade e imerso no ambiente. Cada um dos olhos utiliza um filtro diferente de cor, dependendo da cor das lentes dos culos estereoscpicos feito de papel celofane ou semelhante, para a visualizao do par estreo.

11.7. Preciso e tempo de resposta


Para que os simuladores sejam realsticos, necessrio que a resposta ocorra em tempo real e que os mtodos implementados forneam preciso. Na Cincia da Computao, a expresso tempo real, em geral, refere-se interao simultnea entre sistemas ou pessoas, com intervalos muito curtos ou com implicaes srias ao nvel do atraso. , portanto, uma operao em que o par ao/reao deve demorar menos tempo que o atraso mximo permitido pelo sistema [Shaw, 2003]. Essa conceituao de tempo real importante em sistemas de treinamento mdico que utilizam RV e RA, visto que 234

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

tais aplicaes devem atender ao requisito de fornecer uma resposta dentro de um tempo mximo a fim de que usurio tenha a sensao de que a reao do sistema imediata ao que executou no AV. Este fator no obtido trivialmente, visto que modelagem e manipulao de objetos 3D, a interao por meio de dispositivos convencionais e no convencionais e o uso de bibliotecas grficas contribuem para a insero de atrasos ao sistema. O fator preciso outro requisito que merece destaque. Ao contrrio de outros campos de aplicaes, como indstria e entretenimento, a rea mdica, muitas vezes, trabalha com partes do corpo humano de tamanho diminuto. Em uma aplicao de telecirurgia, por exemplo, erros na ordem de milmetros so inadmissveis. A necessidade de realismo exige que muitos sistemas, principalmente aqueles que simulam procedimentos, forneam preciso em relao modelagem e manipulao de objetos. E este requisito pode vir de encontro necessidade de tempo real, citada nesta seo. Desta forma, tempo e preciso so dois fatores quase que conflitantes. Planejamentos adequados de aplicaes devem prever uma relao coerente entre eles a fim de que a utilizao dos sistemas desenvolvidos torne-se vivel.

11.8. Exemplos de Aplicaes


Inmeros projetos de RV e RA esto sendo desenvolvidos com tecnologias e finalidades diversas, como pode ser verificado nos trabalhos destacados a seguir. 11.8.1. Educao e treinamento mdico Atualmente, a educao mdica encara diversos desafios, seja no campo das cincias biolgicas ou na rea tecnolgica e esto relacionados tanto formao de futuros mdicos, quanto atualizao de profissionais j formados.

235

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

A conjuno do rpido aumento dos novos resultados na rea biomdica e da constante evoluo das tecnologias associadas aos procedimentos clnicos, demanda uma constante atualizao por parte dos profissionais da sade. Para que o conhecimento adquirido no se torne rapidamente obsoleto, imprescindvel expandir e reforar formas de educao permanente. Por outro lado, o ensino da prtica clnica requer contato direto entre estudantes de medicina e pacientes, com a superviso de mdicos e professores. Entretanto, os riscos de erros mdicos envolvidos nesta prtica so bastante significativos, podendo ocasionar problemas de sade para os pacientes e problemas ticos e judiciais para os profissionais mdicos. Apesar da pouca difuso da educao apoiada em computadores nas escolas mdicas, existem vrias experincias sendo desenvolvidas. Estes sistemas podem simular casos clnicos em diferentes especialidades, diminuindo a necessidade de contatos reais entre mdico e pacientes em fases iniciais do aprendizado mdico. Segundo Moline (1997) os ambientes virtuais provem ferramentas educacionais que cobrem os aspectos experimentais atravs de uma abordagem didtica, que explora principalmente, a visualizao 3D de partes do corpo humano. O estudo da anatomia em mdulos virtuais diminui a necessidade do uso de cadveres e oferece imagens com cores e comportamentos mais reais. Em um humano virtual possvel observar os rgos em pleno funcionamento, diminuir os riscos de erros de seco e os efeitos psicolgicos adversos gerados pelo contato com cadveres reais. Em geral, os Atlas para estudos da anatomia apresentam desenhos e fotos que no permitem uma viso mais integrada de rgos e sistemas. Os Atlas digitais vm suprindo algumas carncias observadas nos Atlas em papel, entretanto, no possvel 236

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

a visualizao estereoscpica, nem possibilidades de observao cooperativas. O AnotomI [Monteiro, 2006] um Atlas digital de uso livre e permite, de forma interativa, a manipulao e o estudo de estruturas tridimensionais do corpo humano com descritivos contendo informaes textuais sobre cada estrutura. Este Atlas como recursos de RV e estereoscopia, imerso simultnea de vrias pessoas, baixo custo de desenvolvimento e processamento e aplicao de transparncias, entre outras. Permite, ainda, a consulta cooperativa que favorece o estudo e a discusso das estruturas estudadas. O Visible Human Project [Visible, 2007] disponibiliza uma representao tridimensional de um corpo feminino e outro masculino, obtidas a partir da seco milimtrica de corpos humanos. Ramos et al (2005) desenvolveram um Atlas virtual da mama para estudo da anatomia mamria e fisiopatologia do cncer de mama, atravs da visualizao de estruturas, antes s disponveis em imagens de livros ou estudo em cadveres. A RV aplicada cirurgia abrange uma srie de situaes que vo desde o planejamento de um procedimento at o treinamento de tcnicas e assistncia para a sua realizao. Neste sentido, o primeiro simulador cirrgico desenvolvido no Brasil [Machado, 2003] visa a coleta de medula ssea. O sistema possui visualizao esteroscpica e manipulao tridimensional de um modelo do osso ilaco, dotado de camadas que possuem propriedades fsico-elsticas, que so percebidas pelo usurio atravs da manipulao de dispositivos hpticos. Na rea de simulao de procedimentos merecem destaque a simulao de ortopedia de Sourin et al. (2000) e diagnstico de cncer de prstrata de Burdea et al. (1999). Recentemente, Balanuik et al. (2006) desenvolveram uma ferramenta de 237

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

visualizao de cirurgias plsticas dos seios, voltada para a educao do paciente e o planejamento cirrgico. 11.8.2. Telecirurgia A telecirurgia exige equipamentos sofisticados que possibilitam comunicao rpida e manipulao cirrgica segura. Isto envolve o uso tanto de equipamentos de visualizao 3D quanto de manipulao do campo cirrgico, que disponibilizem ao cirurgio recursos para a realizao dos procedimentos adequados, mesmo estando distante do paciente. No local aonde a cirurgia realizada, necessrio um conjunto de itens que realizem a cirurgia no paciente. Neste caso os robs so imprescindveis, assim como uma rede que permita o envio e a recepo dos comandos de maneira rpida e segura [Current, 2007]. Estas tecnologias abrem novas possibilidades de tratamento para pessoas que se encontram distantes de grandes centros urbanos ou em situaes de guerras. Algumas dessas cirurgias podem utilizar os recursos da RA, que superimpe imagens geradas a partir de exames de RMN ou TC em imagens reais. 11.8.3. Suporte a deficincias Um outro tipo de aplicao mdica da RA ajuda pessoas que possuem degeneraes na retina (que geram manchas negras sobre as cenas) e requerem a integrao de cmeras aos HMDs, permitindo que o usurio visualize imagens reais alteradas para suprir essa deficincia visual. A Figura 11.4 apresenta um exemplo de aplicao onde as imagens reais (a) esto sofrendo um deslocamento em direo s bordas de uma rea cega(b), permitindo que o usurio enxergue as imagens que estariam localizadas dentro dessa rea (mancha negra) [Farago, 2005].

238

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

(a)
Figura 11.4 transformada(b). Imagem original(a)

(b)
e imagem

11.8.4. Reabilitao A RV tambm tem sido explorada para apoiar o tratamento de diferentes seqelas motoras e cognitivas, derivadas de distrbios ou danos cerebrais. Em geral, os ambientes virtuais possibilitam uma variedade de associaes no possveis com outras interfaces homem-mquina, devido s qualidades multisensoriais e espaciais destes ambientes, contribuindo para o enriquecimento das aplicaes na rea de reabilitao. Se uma pessoa sofre algum dano cerebral, uma ou vrias funes motoras ou cognitivas podem se tornar deficientes. Para recuper-las preciso empreender estratgias teraputicas especficas para cada tipo de deficincia detectada. As pessoas que sofreram um Acidente Vascular Cerebral (AVC), em geral, sofrem de seqelas motoras que so facilmente observadas, mas tambm, funes cognitivas podem ser danificadas. Neste sentido, Holden et al. (2006) propem um sistema voltado para a telereabilitao. O ambiente permite ao terapeuta conduzir sesses interativas para o tratamento de pessoas com problemas motores nas mos e que esto em suas casas. Um grupo de pesquisadores da UFRJ e UERJ vm desenvolvendo 239

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

experimentos com ambientes virtuais 3D para estimular a realizao de atividades de vida diria de pessoas com seqelas de ateno e percepo causadas por AVC. Os pacientes tm aceitado com muito entusiasmo o trabalho nos ambientes virtuais e os resultados obtidos tm apresentado uma significativa recuperao dos nveis de ateno e concentrao nas atividades cotidianas [Cardoso, 2006]. Costa e Carvalho (2004) apresentam os resultados da aplicao de um programa de reabilitao cognitiva para pacientes com esquizofrenia e insuficincia mental. As atividades propostas contemplam tarefas que estimulam a ateno e a memria. No experimento, verificou-se que os pacientes tiveram uma boa aceitao do trabalho com o computador e demonstraram um bom nvel de motivao para usar a mquina.

11.9. Reconstruo de modelos a partir de imagens reais


Reconstruir um objeto significa recuperar suas informaes geomtricas e topolgicas e seus atributos a partir do conjunto de amostras que o representa. Esta reconstruo feita por meio de algum tipo de interpolao sobre as amostras. Existem vrios mtodos de reconstruo e visualizao de objetos tridimensionais. Os principais deles podem ser classificados em duas categorias: baseados em volume e baseados em superfcie. Em aplicaes de RV e RA para a rea mdica, a fonte de dados so as imagens provenientes de modalidades, como as citadas na seo 11.3. Os mtodos baseados em volume percorrem o conjunto de dados, gerando uma imagem a partir de alguns parmetros como densidade, opacidade, textura e campos de vetores normais. Tais parmetros indicam como os dados internos do volume so combinados e processados para gerar a imagem final, atravs da interao com a luz. Um exemplo pode ser visualizado na Figura 240

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

11.5. Uma das principais vantagens da reconstruo de volumes a qualidade das imagens geradas. Um dos grandes problemas desta categoria de reconstruo a grande quantidade de dados a processar [Peixoto, 2000].

Figura 11.5 Reconstruo volumtrica a partir de imagens de crebro geradas por RMN (Neuroimage 2006].

A reconstruo da borda ou superfcie que delimita um objeto slido, a partir de uma srie de sees planares paralelas, tem recebido bastante ateno nas ltimas duas dcadas [Peixoto, 2000]. A Figura 11.6 mostra um exemplo de contornos paralelos distribudos em trs fatias e a superfcie reconstruda. Atravs de tecnologias como TC e RMN so obtidas informaes sobre rgos e tecidos humanos, armazenadas em fatias. As informaes das fatias so utilizadas para definir o conjunto de contornos que, por sua vez, podem ser interpolados para gerar superfcies. Estas superfcies seriam as bordas dos rgos ou tecidos humanos que, desta forma, podem ser exibidos e utilizados em aplicaes grficas. Na reconstruo por superfcie d-se importncia somente s fronteiras que delimitam o objeto volumtrico. A partir de atributos como a funo de densidade, feita uma busca nas fatias do volume, a fim de definir o conjunto de contornos que delimitaro a superfcie (exemplo na Figura 11.7). As tcnicas desta categoria so utilizadas principalmente para reconstruir superfcies de objetos morfologicamente bem definidos. Uma das grandes vantagens dos mtodos de reconstruo de superfcies em relao aos mtodos de reconstruo volumtrica a menor 241

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

quantidade de informaes armazenadas. Uma vez construda a superfcie, pode-se aplicar tcnicas de renderizao conhecidas para visualizar o objeto.

Figura 11.6 Reconstruo de uma superfcie a partir de contornos [Peixoto, 2000].

11.10. Deteco de coliso


Como introduzido na seo 11.4, a deteco de coliso com preciso um fator relevante para proporcionar realismo em aplicaes para a rea mdica. A seguir so citadas algumas solues para alcanar este requisito. O uso de hierarquias, juntamente com o conceito de volumes limites, freqentemente empregado para uma rpida deteco de coliso. Um volume limite representa a extenso espacial mxima de um objeto, podendo ser representada por um cubo ou esfera [Sense8, 2006]. Esta abordagem consiste em criar aproximaes geomtricas para objetos complexos, permitindo eliminar reas dos objetos que no esto em contato.

242

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

Figura 11.7 Reconstruo por superfcie a partir de imagens mamogrficas: (a) e (b) imagens originais; (c) objeto com textura e (d) objeto wireframe [Delfino, 2006].

OSullivan et al. (2001) apresentam as tcnicas mais comuns: (a) Octrees: hierarquias criadas recursivamente subdividindo o volume que contm um objeto em oito octantes (cubos ou esferas) e retendo somente aqueles octantes que contm alguma parte do objeto original; (b) Sphere-trees: parecida com Octrees, esta tcnica envolve os objetos por esferas, tendo como vantagem a rotao invarivel; (c) OBB-trees: consistem no uso de volumes limites orientados com o objeto (Oriented Bounding Boxes) tendo como vantagem a proximidade com a forma do objeto e (d) AABB-trees: volumes limites alinhados aos eixos (Axis Aligned Bounding Boxes), consistindo em hierarquias mais simples de criar e realizar testes de sobreposio. Especificamente na rea mdica, vrios projetos encontrados na literatura buscam uma deteco de coliso precisa e com o menor custo computacional possvel a partir de refinamentos ou combinao de mtodos e algoritmos j existentes. Em Garcia-Alonso et al. (1994) foram utilizados trs mtodos para determinar uma coliso entre dois objetos: Minimax,Voxels e Faces. Ponamgi et al. (1995) combinaram um algoritmo baseado no uso de volumes limites com aproximaes 243

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

incrementais de suas caractersticas (lados, bordas e vrtices) para deteco de coliso entre slidos em ambientes dinmicos. Burdea et al. (1999) utilizaram o clculo de distncia entre vrtices para a deteco de coliso entre a superfcie de uma prstata virtual e um dedo virtual. Em [Machado, 2003], a opo adotada foi o refinamento das rotinas de deteco de coliso contidas na biblioteca hptica GHOST. Riquelme (2005) realizou um estudo comparativo dos mtodos oferecidos pelas bibliotecas Java3D e WorldToolkit [Sense8, 2006] para deteco de coliso. Observou-se que os mtodos fornecidos por essas tecnologias no eram suficientes para uma deteco de coliso com preciso e rapidez e, por isso, props uma nova tcnica que utiliza a equao do plano para refinar os mtodos fornecidos.

11.11. Deformao
Como mencionado na seo 11.5, h mtodos clssicos na literatura para simular deformao em tecidos flexveis. O grande desafio continua sendo a relao preciso versus tempo de resposta. Em aplicaes mdicas, o conceito de Elementos Finitos foi utilizado em Shi e Yan (2001), que desenvolveram tcnicas para deformao de objetos e cortes em aplicaes de cirurgia virtual, Costa e Balaniuk (2002), que se concentraram em mtodos para deformar objetos em tempo real e Dimaio e Salcudean (2002), que apresentaram uma simulao de insero de agulha virtual em tecidos flexveis. Exemplos de utilizao do mtodo Massa-Mola so Delingette et al. (1999), que apresentam aplicaes de simulaes de cirurgias crnio-faciais e Oliveira et al. (2006), que implementaram um sistema em Java para simular a deformao em exames de bipsia de mama.

11.12. Estereoscopia
244

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

Em aplicaes mdicas, muitas vezes a implementao de estereoscopia esbarra no custo de equipamentos sofisticados que podem fornecer sensao de imerso mais adequada. A seguir so apresentadas algumas solues para proporcionar esta sensao. Meneses et al. (2002) desenvolveram um estudo para comparar as tcnicas anaglfica e de polarizao quanto nitidez e realismo de um segmento neuroanatmico, concluindo que a melhor tcnica em percentagem de eficcia foi a de polarizao, apresentando melhor efeito de profundidade e maior nitidez. culos estereoscpicos obturadores foram usados para simular o treinamento de cirurgias ortopdicas [Sourin, 2000] e coleta de medula ssea [Machado, 2003]. Montanha e Nunes (2005) optaram por uma abordagem de baixo custo, desenvolvendo o mtodo de anaglifos em Java, aplicado em um Atlas Virtual. Apesar de constituir uma soluo barata, os autores observaram que mtodos mais adequados devem ser aplicados em sistemas da rea mdica, pois os anaglifos causam distoro nas cores das imagens, prejudicando a sensao de realismo to desejada neste tipo de sistema.

11.13. Construo de frameworks


Um framework definido como um conjunto de classes abstratas e concretas usadas para o desenvolvimento de uma aplicao com domnio especfico. Framework orientado a objetos representa uma categoria de artefatos de software potencialmente capazes de promover reso de alta granularidade [Johnson, 1988]. Tm sido pesquisados devido a sua capacidade de alterabilidade, extensibilidade e, em longo prazo, rapidez no desenvolvimento de novas aplicaes, diminuio de erros e aumento de qualidade do produto final. Alguns frameworks na rea de RV e RA aparecem na literatura, mas poucos deles so direcionados especificamente 245

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

construo de aplicaes na rea mdica. Bastos et al. (2005) afirmam que esses frameworks permitem que o usurio se concentre no desenvolvimento da aplicao, pois no necessrio se preocupar com a gerncia do sistema de RV. Tais frameworks podem oferecer abstrao de dispositivos e sistemas de projeo, grafos de cena especializados, interao com o AV, suporte a sistemas distribudos e renderizao distribuda. Dentre os frameworks direcionados construo de aplicaes genricas de RV, interessante destacar o Avango [Tramberend, 2001], o IVORY [Sprenger, 1998] e o ViRAL [Bastos, 2005]. Especificamente para a rea mdica, interessante citar o VPat (Virtual Patients), apresentado por Freitas et al. (2003) e desenvolvido com o propsito de suportar aplicaes de computao grfica na rea mdica e o ViMeT (Virtual Medical Training), descrito por Oliveira et al. (2006), cujo conjunto de classes permite criar e manipular um ambiente de RV com o objetivo de simular exames de bipsia. O ViMeT tem como principal motivao a possibilidade de reso de cdigo que pode facilitar a construo de aplicaes de RV para treinamento mdico a partir do ViMeT. Tambm faz parte do projeto uma ferramenta de instanciao automtica [Oliveira et al., 2006].

11.14. A tica no uso da RV na rea mdica


O avano dos preceitos de biotica tem gerado impactos em vrios domnios das cincias mdicas e perpassa, de maneira incisiva, o uso das novas tecnologias nesta rea. Neste sentido, a utilizao e a construo de artefatos tecnolgicos devem receber especial ateno de maneira a no colocar em risco a sade de seus usurios. Vrias dimenses devem ser consideradas na construo e uso destes artefatos e englobam aspectos tecnolgicos e humanos. As questes tecnolgicas esto centradas nos aspectos tcnicos

246

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

relacionados, principalmente, ao desempenho do programa que controla procedimentos mdicos, definio e implementao dos meios de armazenamento de dados, aos meios de comunicao utilizados, estrutura lgica, metodologias e padres de qualidade do processo de desenvolvimento. As questes humanas tratam dos impactos dos programas nos seus usurios, verificam se o programa est resolvendo o problema almejado pelos usurios e se o est resolvendo de maneira correta, ou ainda, se est expondo o usurio a algum tipo de risco ou desconforto, dentre outros. O uso de ambientes virtuais 3D na rea de sade pressupe o respeito aos pacientes, considerando estes fatores ticos. No caso da tecnologia de RV, vrios trabalhos focam nas questes envolvidas na imerso [Lewis, 1997]. Existem variados fatores que podem influenciar a gerao de problemas, sendo que alguns so associados a aspectos tcnicos do equipamento e construo do ambiente, enquanto outros, so inerentes ao prprio usurio. Pessoas de idade mais avanada podem ter problemas ao usar um capacete de projeo estereoscpica. A limitao do campo de viso gerada por estes equipamentos tambm pode contribuir para a ocorrncia de sensaes desagradveis nos usurios. Logo, precaues especiais devem ser tomadas para assegurar a segurana e o bem-estar de pacientes em ambiente virtuais 3D. Neste sentido, antes de expor os pacientes a estes ambientes virtuais, fundamental que sejam verificadas suas caractersticas individuais, assegurando que eles no estejam sofrendo de infeces ou gripes; alcoolizados; sob o efeito de medicamentos que afetem as funes visuais ou perceptivas; sob o efeito de drogas; com histrico de desordens de equilbrio ou com deficincias visuais.

11.15. Comentrios Finais

247

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

Este captulo apresentou uma viso da RV e da RA aplicadas rea da sade, destacando os requisitos fundamentais para a construo e utilizao de ambientes virtuais cada vez mais realsticos, exemplos de sistemas voltados para o apoio da educao mdica, das telecirurgias e de tratamentos especficos, dentre outros. A partir do que foi exposto, percebe-se o potencial da RV e RA para impulsionar o crescimento do nmero e da qualidade dos procedimentos mdicos apoiados nestas novas tecnologias. Cabe destacar a necessidade de um trabalho cada vez mais interdisciplinar, integrando os diferentes especialistas envolvidos na concepo e uso destes produtos. Desafios como custo da tecnologia de hardware e software, capacidade de processamento das mquinas, manipulao de grande volume de dados e familiarizao dos usurios com as novas tecnologias ainda devem ser vencidos. Logo, uma vasta rea de pesquisa se descortina, trazendo desafios tanto tecnolgicos, quanto mdicos e educacionais.

11.16. Referncias Bibliogrficas


ARAS Augmented Reality Aided Surgery, em:
http://www.vrvis.at/vr/aras/, visitado em janeiro de 2007.

Balaniuk, R.; Costa, I.; Melo, J.; (2006), Cosmetic Breast Surgery Simulation, VIII Symposium on Virtual Reality, pp. 387-396. Baos, R. M., Botella, C., Garcia-Palacios, A., Villa, H., Perpia, C., Alcaiz, M. (2000), Presence and Reality Judgment in Virtual Environments: A Unitary Construct?, CyberPsychology & Behaviour vol. 3, n. 3, pp. 327-335. BARCO, Em:
http://www.barco.com/VirtualReality/en/products/

248

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

product.asp?element=313, visitado em janeiro de 2007.

Bastos, T. A., Raposo, A. B., Gattas M. (2005), Um Framework para o Desenvolvimento de Aplicaes de Realidade Virtual Baseados em Componentes Grficos, Anais do XXV Congresso da Sociedade Brasileira de Computao, pp. 213-223. Burdea, G., Patounakis, G., Popescu, V., Weiss, R. E. (1999) Virtual Reality-Based Training for Diagnosis of Prostate Cancer, IEEE Transactions on Biomedical Engineering, v. 46, n. 10, pp. 1253-1260. Cardoso, L.; Costa, R. M.; Piovesana, A.; Costa, M.; Penna, L., (2006), Using Virtual Environments for Stroke Rehabilitation. IEEE- 5th International Workshop on Virtual Rehabilitation, New York, pp. 1-5. Choi, K.S et al. (2002), Scalable Force Propagation Approach for Web Based Deformable Simulation of Soft Tissues, Web3D02, Arizona, ACM Proceedings, pp.185-193. Costa, I. F., Balaniuk, R. (2001), LEM - An Approach for Real Time Physically based Soft Tissue Simulation, International Conference in Automation and robotics, SeulKorea do Sul. Costa, R. M.; Carvalho, L., (2006), The Acceptance of Virtual Reality Devices for Cognitive Rehabilitation: a report of positive results with schizophrenia, Computer Methods and Programs in Biomedicine, v. 73, n. 3, pp. 173-182. Current Status of Telesurgery, http://www2.telemedtoday.com/articles/telesurgery.shtml, visitado em janeiro de 2007. em:

Delingette, H., Cotim, S., Ayache, N. (1999). A Hibrid elastic 249

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

model allowingreal-time cutting, deformations and forcefeedback for surgery training and simulation, In: Computer Animation 1999. Anais IEEE Computer Society, p.70-81. Diffusion Tensor MRI Brain Visualization, em: http://www.nature.com/neuro/journal/v5/n11s/full/nn948.html, visitado em janeiro de 2007. Dimaio, S.P., Salcudean, S.E. (2002), Needle Insertion Modelling and Simulation, Proceedings of The IEEE International Conference on Robotics and Automation, pp.2098-2105. DirectX, (2006), http://www.microsoft.com/ windows/directx/default.mspx, visitado em novembro de 2006. Site Oficial

Farago, P.; Barros, L.; Landau, L.; Cunha, G.; Costa, R. M. (2005), ATDV: An Image Transforming System. Lecture Notes in Computer Science, v. 3414, pp. 727-734. Freitas, C. M. D. S., Manssour, I. H., Nedel, L. P., Gavio, J. K.,Paim, T. C., Maciel, nderson (2003) Framework para Construo de Pacientes Virtuais: Uma aplicao em Laparoscopia Virtual, Symposium On Virtual Reality- 2003, Ribeiro Preto. v. 6, pp. 283-294. Garcia-Alonso, A., Serrano, N., Flaquer, J. (1994), Solving the Collision Detection Problem, IEEE Computer Graphics and Applications, v.14, n.3, pp. 36-43. Gibson, S.F.F., Mirtch, B. (1997), A Survey of Deformable Modeling in Computer Graphics, Mitsubishi Electric Information Technology Center America, pp.1-22. Gladilin, E. (2003) A Biomechanical Modeling of Soft Tissue and Facial Expressions for Craniofacial Surgery Planning, Tese de 250

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

Doutorado, FUBerlin. Haluck R., Webster R., Wang W., LeFever A., Mohler B., (2007) Tracking Laparoscopic Surgical Motions Using the 5DT DataGlove, em: http://cs.millersville.edu/~webster/haptics/handproject/handproj ect.html, visitado em janeiro de 2007. Handolin, L., Partio, E. K. , Arnala, I., Pajarinen, J., Ptil, H., Rokkanen, P. (2007), The effect of low-intensity pulsed ultrasound on bone healing in SR-PLLA rod fixed experimental distal femur osteotomy in rat, J Mater Sci Mater Med, February. Hennel, J. W., Klinowski J. (1993), Fundamentals of Nuclear Magnetic Resonance, Longman Scientific & Technical, Essex England. Hirota, G., Maheshwari R., Lin M.C. (1999), Fast VolumePreserving Free Form Deformation Using Multi-Level Optimization, SIGGRAPH: ACM Special Interest Group on Computer Graphics and Interactive Techniques, Michigan, pp.234 245. Johanson, M. (2005), Stereoscopic Video Transmission over the Internet, Proceedings of WIAPP'01, San Jose, Julho. Johnson, R. E., Foote, B. (1988), Designing reusable classes, Journal of Object Oriented Programming, v.1, n.2, pp.22-35. Lau, R.W.H., Chan, O., Luk, M., Li, F. W. B. (2002), A collision detection framework for deformable objects, ACM VRST02, pp.113-120. Lewis, C.; Griffin, M., (1997), Human Factors Consideration in 251

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

Clinical Applications of Virtual Reality, Virtual Reality in Neuro-Psycho-Physiology; Ed. Giuseppe Riva, IOS Press. Lipton, L. (2005), Foundations of the Stereoscopic Cinema, Van Nostrand Reinhold Co. pp.77-79. Machado, L. S. (2003), A Realidade Virtual no modelamento e Simulao de Procedimentos Invasivos em Oncologia Peditrica: Um estudo de caso no Transplante de Medula ssea, Tese de Doutorado, Escola Politcnica de So Paulo, So Paulo. Meneses, M.S. et al. (2002), Estereoscopia aplicada Neuroanatomia: estudo comparativo entre tcnicas de filtro de cores e de polarizao, Directory of Open Access Journals, vol.60, pp.769-774. Moline, J., (1997), Virtual Reality for Health Care: a Survey; Virtual Reality in Neuro-Psycho-Physiology; Ed. Giuseppe Riva, IOS Press, Holanda. Montanha, F., Nunes, F. L. S. (2005), Construo de Atlas de Anatomia e Fisiopatologia do Cncer de Mama utilizando Realidade Virtual, XVIII Sibgrapi - IV WTDCGPI. Monteiro, B.; Valdek, M.; Cunha, I.; Moraes, R.; Machado, L.; (2006), AnotomI 3D: Um Atlas digital baseado em realidade Virtual para o ensino de medicina, VIII Symposium on Virtual Reality, pp 3-14. Neuroimage, (2006), Ressonncia magntica de crnio convencional, Em: www.neuroimaging.com, Visitado em dezembro de 2006. North, M.M., North, S. M., Coble, J. R. (1998), Virtual Reality 252

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

Therapy: an effective treatment for phobias. Virtual Environments in Clinical Psychology and Neuroscience, Ios Press, Amsterdam. OSullivan, C., Dingliana, J., Ganovelli, F., Bradshaw, G. (2001), Collision Handling for Virtual Environments, Eurographics Tutorial. Oliveira, A. C. M. T. G., Pavarini, L., Nunes, F. L. S., Botega, L. C., Justo, D. R., Bezerra, A. (2006), Virtual Reality Framework for Medical Training: Implementation of a deformation class using Java, ACM SIGGRAPH International Conference on Virtual-Reality Continuum and its Applications in Industry. Hong Kong China. Peixoto, A., Gattass, M. (2000) Reconstruo de Superfcies a partir de Sees Bidimensionais, Dissertao de Mestrado, Pontifcia Universidade Catlica do Rio de Janeiro, Rio de Janeiro. Ponamgi, M., Manocha, D., Lin, M.C. (1995) Incremental Algorithms for Collision Detection Between Solid Models. ACM Siggraph, Utah. Ramalho Jr., F., Ferraro, N. G., Soares, P. A. T. (1993), Os fundamentos da Fsica, Editora Moderna. Ramos, F.; Nunes, F.; Botega, L.; Damasceno, E.; Pavarini, L.; (2005), Atlas Virtual da Mama e Fisiopatologia do Cncer de Mama utilizando Java3D. Workshop de Aplicaes de Realidade Virtual, Uberlndia. Reitinger B., Bornik A., Beichel R., Schmalstieg D., (2006), Liver Surgery Planning Using Virtual Reality, IEEE Computer Graphics and Applications, Vol 26, n. 6, pp 36-47. 253

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

Riquelme, F. (2005), Estudo comparativo de solues para deteco de coliso em tecnologias de Realidade Virtual para o desenvolvimento de ferramentas para treinamento mdico Dissertao de Mestrado, Centro Universitrio Eurpides de Marlia, Marlia. Santos, E.T. (2000), Uma Proposta para uso de Sistemas Estereoscpicos Modernos no Ensino de Geometria Descritiva e Desenho Tcnico, Graphica 2000, Ouro Preto, pp. 1-8. Sayeg, N. (2007), Avaliao Morfofuncional, em: www.alzheimermed.com.br/m3.asp?cod_pagina=1058, visitado em janeiro de 2007. Schwartz, J. (2004), Special topics in CS: intro to Bioinformatics 2004. http://www.settheory.com/bioinformatics_syllabus/ bioinformatics_syllabus.html>,Julho. Sense8 (2006), WorldToolKit, visitado em: em
http://www.inition.co.uk/inition/product.php?URL_=product_soft

ware_sense8_worldtoolkit&SubCatID_=54>, dezembro de 2006.

Shi, J.Y, Yan, L.X. (2001), Deformation and Cutting in Virtual Surgery, Proceedings of the Intern. Workshop on Medical Imaging and Augmented Reality, IEEE Computer Society. Sourin, A. et al. (2000), Virtual Orthopedic Surgery Training, IEEE Computer Graphics and Applications, vol.20, n.3, pp.6-9. Sprenger, T. C., Gross, M., Bielser, D., Strasser, T., (1998), IVORY - An Object-Oriented Framework for Physics-Based Information Visualization in Java, Proceedings of the IEEE Symposium on Information Visualization, IEEE CS Press, pp. 79-86. 254

Aplicaes Mdicas usando Realidade Virtual e Realidade Aumentada

The Visible Human Project, em: http://www.nlm.nih.gov/research/ visible/visible_human.html, visitado em janeiro de 2007. Tramberend, H. (2001), Avango: A Distributed Virtual Reality Framework. Proceedings of Afrigraph '01, ACM. Wagner, J. M., Noo, F., Clackdoyle, R., Bal, G, Christian, P. (2002), Attenuation Correction for Rotating Slant-Hole (RSH) SPECT using Exact Rebinning, IEEE Transactions on Nuclear Science. Zill, D.G. (2003), Equaes Diferenciais com aplicaes em Modelagem, Thomson.

255

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Captulo

12
Visualizao de Informao com Realidade Virtual e Aumentada
Ezequiel Roberto Zorzal1, Luciano Ferreira Silva1, Alexandre Cardoso1, Claudio Kirner2 e Edgard Lamounier Jr.1
1

Programa de Ps Graduao em Engenharia Eltrica Universidade Federal de Uberlndia (UFU) CEP 38.400-902 Uberlndia MG Brasil ezorzal@gmail.com, luciano@mat.ufu.br, alexandre@ufu.br, lamounier@ufu.br

Programa de Ps Graduao em Cincia da Computao - Universidade Metodista de Piracicaba (UNIMEP) CEP 13.400-911 Piracicaba SP Brasil ckirner@unimep.br

Abstract Using Visualization of Information techniques, by computational resources, it is possible to convert numerical data and to show them visually by the use of images or other sensorial stimulus providing a better comprehension. Recent studies have shown that the three-dimensional visualization of information brings advantages for the people, being able efficiently to be carried through the use of Virtual and Augmented Reality environment. 256

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

There are a lot of developed applications making use of some of these methods. This chapter presents definitions, techniques, methodologies and the state of art of applications for threedimensional visualization that use the technology of Virtual and Augmented Reality. Resumo Utilizando tcnicas de Visualizao de Informao, por meio de recursos computacionais, possvel converter dados numricos e apresent-los visualmente ao usurio por meio de imagens ou outros estmulos sensoriais, de forma que possam ser melhor compreendidos. Estudos recentes tm mostrado que a visualizao tridimensional de informao traz vantagens para as pessoas, podendo ser eficientemente realizada utilizando ambientes de Realidade Virtual e Aumentada. Existem vrias aplicaes desenvolvidas que fazem uso de algum desses mtodos. Este captulo apresenta definies, tcnicas, metodologias e o estado da arte de aplicaes para visualizao tridimensional que utilizam a tecnologia de Realidade Virtual e Aumentada.

12.1. Introduo
De acordo com a etimologia da palavra informao sua origem provm do latim informationem, delinear, conceber idia [Houaiss and Villar, 2001]. O seu conceito carrega uma diversidade de significados que so aplicveis a eventos que variam do nvel cotidiano ao tcnico. Por exemplo, informao pode ser definida como o estado de um sistema de interesse, a qual a mensagem a informao materializada. Floridi (2005) define informao como qualquer tipo de padro que influencia a formao ou transformao de outros padres. J Bekenstein (2003) enuncia informao com o resultado do processamento, manipulao e organizao de dados de tal forma que represente um acrscimo ao

257

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

conhecimento da pessoa que a recebe. As palavras informao e dados so intercambiveis em muitos contextos. Todavia, no so sinnimos. Por exemplo, de acordo com a observao de Gadomski (1993), dados referem-se a tudo que pode ser processado e informao refere-se a dados que descrevem um domnio fsico ou abstrato. No final do sculo XX, ocorreu a denominada exploso informacional, que caracteriza-se pela acelerao dos processos de produo e a disseminao da informao e do conhecimento. O aumento da demanda de informaes ocorrera principalmente devido: ao desenvolvimento da tecnologia de comunicao; ao avano dos equipamentos de aquisio de imagens, de dados e sinais; e ao surgimento de computadores que permitem simular sistemas cada vez mais complexos. Esta sobrecarga de informaes dificulta o processo de anlise, compreenso e utilizao de dados. Por exemplo, plausvel ressaltar que tomar uma deciso correta, em qualquer rea do conhecimento, com uma enorme quantidade de dados e pouco tempo, quase sempre uma tarefa difcil de realizar. O computador pode, em poucos segundos, recuperar informaes que um ser humano demoraria muito tempo para fazer a mesma coisa. Contudo, muitas destas informaes so irrelevantes para o usurio, ou as informaes consideradas teis podem simplesmente ser perdidas, devido ao usurio no conhecer o relacionamento entre os dados. Fatos como estes motivaram a pesquisa em diversas reas de estudo, envolvendo novos paradigmas para melhorar a representao de informaes. Uma abordagem advinda dessas pesquisas consiste na aplicao de tcnicas de Visualizao de Informao. Estas tcnicas estudam formas de transformar dados abstratos em imagens reais, de forma a facilitar o seu entendimento e/ou ajudar 258

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

na descoberta de novas informaes contidas nestes dados [Nascimento, 2005]. O objetivo final deste processo auxiliar no entendimento de um assunto, o qual, sem uma visualizao, seria mais difcil de ser compreendido. Neste contexto, a rea de Visualizao de Informao se apresenta como um campo de estudo de grande utilidade, uma vez que faz uso de tcnicas que facilitam o entendimento de informaes a partir de representaes visuais de dados. Estas representaes podem ser distribudas em trs classes: unidimensional, bidimensional ou tridimensional, que so definidas de acordo com a dimenso do espao, onde os elementos geomtricos utilizados estejam situados [Freitas, 2001]. As aplicaes que utilizam o espao tridimensional podem causar um impacto visual e despertar o interesse em diversos tipos de usurios, no somente pela maneira que os dados so representados na interface grfica, mas tambm pelas novas formas de interao. A visualizao tridimensional de informaes pode ser realizada por meio de ambientes de Realidade Virtual e Realidade Aumentada. Estas formas de visualizao podem facilitar a anlise e a compreenso dos dados, j que os mesmos podem ser dispostos de maneira intuitiva e interativa. O presente captulo aborda detalhadamente aspectos importantes da Visualizao de Informao, por meio de Realidade Virtual e Realidade Aumentada, e descreve conceitos e definies essenciais para a compreenso deste tema, alm de demonstrar as principais tcnicas de visualizao de dados aplicados em ambientes virtuais. Este captulo, ainda disserta sobre o estado da arte de aplicaes que utilizam estas tecnologias na rea de

259

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Visualizao de Informao, ressaltando suas caractersticas e metodologias de desenvolvimento.

12.2. Tcnicas de Visualizao de Informao


Existem diversas tcnicas que apiam a Visualizao de Informao, de acordo com a classificao de Keim (2002), estas tcnicas podem ser divididas em: Projees 2D/3D convencionais: abragem um grande nmero de tcnicas mais simples e amplamente utilizadas como plotagem em planos e espaos, grficos de barras, grficos de pizza, grficos de linhas, etc; Tcnicas baseadas em projees geomtricas: tm como princpio o mapeamento de dados multidimensionais para padres bidimensionais atravs da utilizao dos valores presentes na base de dados como parmetros para a gerao de formas geomtricas. Estas formas devem ser tais que o contedo da informao representada possa ser percebido e analisado visualmente em suas propriedades grficas, sendo que quanto maior o nmero de propriedades percebidas individualmente, maior ser o nmero de atributos dos dados discriminados. Como exemplos, tm-se as Coordenadas Paralelas [Inselberg and Dimsdale, 1990], as Star Coordinates [Kandogan, 2000] e os Scatter Plots como descrito em [Ward, 1994]; Tcnicas baseadas em cones: cada item de informao representado como um cone, cuja aparncia deve ser familiar ao ser humano, para que os atributos das entidades grficas possam ser prontamente associados aos itens de dados em anlise. Segundo [Pickett and Grinstein. 1988], cor, forma e textura so caractersticas amplamente exploradas no design dos cones, pois podem ser utilizadas simultaneamente sem perda de informao.

260

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Como exemplos, tm-se as clssicas Faces de Chernoff [Chernoff, 1973], os Star Glyphs [Chambers, Cleveland et al., 1983] e as Stick Figures [Pickett and Grinstein, 1988]; Tcnicas orientadas a pixels: apresenta-se cada atributo de um dado multidimensional, atravs de pixels do dispositivo de exibio, e faz-se o uso de cores para representar os valores dos dados. Tambm se calcula um fator, denominado Fator de Relevncia [Keim and Kriegel, 1994], baseado na ordem de apresentao dos elementos. Cada dimenso apresentada em uma janela individual, onde os elementos so comparados em relao a um atributo especfico. A visualizao pode ser gerada sobre todos os elementos de dados ou sobre um subconjunto especificado; Tcnicas hierrquicas: nesta abordagem, o espao kdimensional subdividido e os subespaos resultantes so apresentados de forma hierrquica, como por exemplo, na tcnica denominada Dimensional Stacking [LeBlanc, Ward et al., 1990] que apresenta bidimensionalmente as dimenses em sucessivos nveis hierrquicos. Existe ainda a possibilidade de combinao entre estas tcnicas, que permite o surgimento de novas tcnicas denominas hbridas.

12.3. Tcnicas de Interao


Um conhecido ditado popular diz que uma imagem vale por mil palavras, sendo assim, pressupe-se que um sistema interativo, com riqueza de imagens vale por muito mais. Sobre esta perspectiva, a cincia da Visualizao de Informao define suas diretivas, com o objetivo de facilitar a anlise de dados complexos: a Visualizao de Informao deve ser interativa.

261

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

A interao capaz de potencializar enormemente o poder elucidativo de uma dada tcnica de visualizao. Interagindo dinamicamente, o usurio pode alterar a visualizao de forma que suas metas de explorao possam ser alcanadas. Meios adequados de interao permitem ao usurio criar diversos arranjos de estrutura da base de dados que esta sendo explorada, comparar suas dimenses e gerar conhecimento, a partir da anlise das projees geradas em cada passo do processo. Existem diversos recursos, tcnicas de interao e vrias classificaes. Grinstein and Ward (2002) procuram delinear a natureza das tcnicas de interao e no classific-las de forma explcita. Eles discutem os fatores que podem ser utilizados para agrupar os dados, segundo propriedades comuns. De acordo com Grinstein and Ward (2002), o usurio, acessando os dados em uma cena de visualizao, pode fazer uso da interao, atravs de recursos de navegao, isto , alternando parmetros grficos que lhe permitem ver a imagem por diferentes ngulos, buscando um quadro mais revelador. O usurio pode tambm utilizar a interao por amostragem dos dados para reduzir as propores do processo de anlise que viria a ser realizado sobre um conjunto menor de informaes. H tambm a interao direta, atravs da qual possvel fazer consultas para fins especficos, que surjam durante o processo de anlise. E, por fim, apontada a interao associativa que permite o acesso relacionado dos dados em diferentes tcnicas de visualizao.

12.4. Visualizao de Informao com Realidade Virtual


Existem diversas tecnologias aplicveis rea de Visualizao de Informao e a Realidade Virtual vem se destacando nesse sentido. Esta expresso possui diversas definies, devido sua natureza interdisciplinar e a sua evoluo. Segundo Kirner (1997), pode-se definir Realidade Virtual como uma forma das pessoas 262

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

visualizarem, manipularem e interagirem com computadores e dados extremamente complexos, na qual idias como imerso, interao e envolvimento com o ambiente virtual so consideradas bsicas e fundamentais. Uma das principais vantagens desta tecnologia o envolvimento amplo de sentidos do ser humano na interao homem-mquina. Sendo assim, um dos seus principais diferenciais o seu avanado modo de interao. Abaixo, so descritos alguns exemplos da aplicao da Realidade Virtual na Visualizao de Informao. Ferramenta Colaborativa para Visualizao Tridimensional de Dados Desenvolvida pelo Centro Universitrio do Par, em conjunto a Universidade Federal do Par, a Ferramenta Colaborativa para Visualizao Tridimensional de Dados [Sousa Junior, 2006] tem como funo criar um ambiente, em que os usurios possam compartilhar a visualizao e trocar informaes pela Web. A visualizao dos dados feita em um ambiente virtual tridimensional, no qual o usurio pode interagir com as representaes por meio de zoom, rotao, translao, etc. Ao passar o mouse sobre um determinado grfico, possvel verificar os seus detalhes especficos. Alm disso, existe a possibilidade de personalizar algumas caractersticas da visualizao dos dados, como, por exemplo, pode-se escolher os atributos dos eixos e os valores de seus intervalos. Aps a visualizao construda, o usurio poder remover ou adicionar dados e/ou atributos. Existem duas vises, uma compartilhada e outra individual, onde o usurio pode realizar as interaes com o sistema.

263

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Os usurios devem ser identificados por login e senha e a troca de informao entre eles feita em modo texto. Todos os usurios tm permisses iguais, no ambiente compartilhado, e como no possuem nenhum mecanismo para o controle de concorrncia, faz-se necessrio o uso de um protocolo social, ou seja, os usurios devem conversar entre si e decidir quem vai alterar o ambiente compartilhado em determinado momento. O prottipo tem como objetivos: a) Permitir a anlise dos dados simultaneamente por mais de um usurio; b) Eliminar a barreira geogrfica quando necessrio; c) Eliminar a necessidade de conhecimento de tecnologia de acesso a banco de dados; d) Facilitar a anlise de grande quantidade de dados; e) Facilitar a colaborao entre usurios. Nas visualizaes geradas, foram utilizadas cores e formas geomtricas diferentes para representar os dados e suas grandezas. As cores fornecem os diversos atributos e a forma est relacionada ao valor numrico do dado. Para saber o valor real de qualquer atributo, basta passar o mouse sobre o dado desejado. A Figura 12.1 apresenta a interface desta aplicao.

Figura 12.1. Interface do software [Sousa Junior, 2006].

264

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

InfoVis Desenvolvido pela Universidade Federal de So Carlos, o InfoVis (Information Visualizer) [Martins, 2000] uma ferramenta construda para visualizar informaes, em um ambiente virtual, do Museu de Cerqueira Csar situado na cidade de So Carlos, Brasil. O objetivo do sistema gerar representaes grficas sobre o Museu de informaes como: a freqncia de visitas dirias, semanais e mensais do Museu; tipos e caractersticas dos objetos armazenados; informaes sobre os retratos e pinturas; etc. O usurio poder navegar no sistema e visualizar as informaes do seu interesse por meio dos grficos, em formato pizza ou barra, apresentados na tela. As cores dos grficos so distintas a ponto de diferenciar os tipos de dados a serem representados. A Figura 12.2 ilustra uma das interfaces da aplicao.

Figura 12.2. Ambiente do InfoVis (Martins, 2000).

3D Active Chart A ferramenta 3D Active Chart, desenvolvido pela First Information Systems [Systems, 2004], um visualizador tridimensional de informaes, no qual os dados so obtidos por meio de tabelas exportadas de um banco de dados.

265

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

As informaes so apresentadas por grficos construdos em VRML (Virtual Reality Modeling Language) [Ames, 1997] e pelos registros apresentados em uma grade. A cor das linhas dos registros apresentados nesta grade so as mesmas utilizadas nos grficos. Ao clicar em um grfico na cena, possvel visualizar seus valores correspondentes na grade. Alm disso, pode-se ainda selecionar um ou mais registros na grade e visualiz-los como grficos tridimensionais na cena. possvel agrupar e filtrar os registros, de forma que facilite a manipulao e visualizao. O usurio pode modificar o grfico, alterando as informaes que sero mostradas, a ordem de apresentao, a cor e o formato do grfico. A Figura 12.3 apresenta a interface do 3D Active Chart.

Figura 12.3. Interface do 3d Active Chart [Systems, 2004].

266

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

12.5. Visualizao Aumentada

de

Informao

com

Realidade

Para implementar interfaces tridimensionais, propiciando visualizao e manipulao parecidas com as aes no mundo real, a Realidade Virtual faz uso de dispositivos especiais como luvas e capacetes. Isto se deve ao fato do usurio ter que entrar no contexto da aplicao executada dentro do computador, exigindo que ele conhea, ou seja, treinado no uso desses [Kirner and Tori, 2004]. Assim, apesar dos benefcios de uma interao mais natural, a necessidade de equipamentos especiais e de treinamento para seu uso acaba limitando o alcance da Realidade Virtual. Uma soluo para esse tipo de problema foi dada pela tecnologia de Realidade Aumentada que, misturando o cenrio real com objetos virtuais gerados por computador, produz um nico ambiente, sobreposto ao ambiente fsico disposto na frente do usurio [Azuma, 1997], produzindo facilmente a anlise e a interao com grficos e a explorao de aspectos cognitivos, relatados com a compreenso da informao. Alm disso, o usurio, utilizando as mos, consegue manipular os objetos reais e virtuais do cenrio misturado [Billinghurst, 2005], sem a necessidade de equipamentos especiais. Abaixo so descritos alguns exemplos da aplicao da Realidade Aumentada na Visualizao de Informao. Visualizao de Informao de Dados Multidimensionais Usando Realidade Aumentada Foi desenvolvida pela Universidade Federal do Par, uma aplicao para visualizar dados multidimensionais com Realidade Aumentada [Meiguins, 2006]. O sistema foi construdo utilizando a biblioteca ARToolKit [Kato, 2000] como suporte, nesta aplicao o usurio pode interagir de forma natural e direta com a 267

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

representao, manipulando filtros e objetos tridimensionais. Cada objeto visualizado possui caractersticas especficas de cor, forma e tamanho, que representam diretamente valores dos atributos da base. Por meio de obstruo dos marcadores, possvel acessar qualquer funo do sistema. Esta ao consiste em interromper, por algum instante, o processo de captura da cmera sobre o marcador. Algumas destas funes consistem na utilizao de filtros e transformaes geomtricas. Os filtros implementados foram idealizados nos conceitos de consultas dinmicas e contemplam tanto valores discretos, quanto contnuos. Os atributos discretos normalmente esto mapeados para caractersticas configurveis de cor, forma e tamanho. J os atributos contnuos podem ser representados nos eixos do grfico. possvel tambm, interagir com o sistema por meio de mecanismos de zoom, rotao e translao. Alm das representaes tridimensionais apresentadas pelo sistema, possvel visualizar grficos 2D, que tem como objetivo auxiliar o usurio com novas informaes sobre os dados que esto sendo visualizados. Existem dois tipos de grficos bidimensionais, em formato pizza e no modelo de histograma. A Figura 12.4 elucida o ambiente da aplicao.

268

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Figura 12.4. Interface do Sistema [Meiguins, 2006].

DataVis-AR Desenvolvido pela Universidade Metodista de Piracicaba, o DataVis-AR (Data Visualization Virtual Environment Using Augmented Reality) [Buk, 2005] um sistema interativo de visualizao de dados com Realidade Aumentada, que utiliza como ferramenta de apoio o software ARToolKit. O DataVis-AR permite a anlise de diferentes tipos de dados por meio de representaes grficas. O software pode ser configurado, de acordo com a necessidade do usurio, alm de possuir um mdulo de controle que permite a manipulao de dados no mundo real. Para isto, basta apenas posicionar um marcador pr-cadastrado no campo de viso da cmera e visualizar as informaes virtuais no ambiente. A Figura 12.5 apresenta o ambiente desta aplicao.

269

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Figura 12.5. Interface do DataVis-AR [Buk, 2005].

Meta3D++ Desenvolvido pela Universidade Federal de Pernambuco, o Meta3D++ uma ferramenta de visualizao de dados multidimensionais em ambiente de Realidade Aumentada [Bueno, 2005]. A ferramenta foi idealizada para que o usurio utilize em conjunto tcnicas estatsticas e de Visualizao de Informao, de uma forma integrada, agilizando o processo de criao de uma visualizao mais efetiva. Um recurso disponvel na Meta3D++ a categorizao de variveis, isto , o usurio pode mapear as classes de uma tabela de distribuio de freqncias em categorias. O sistema Meta3D++ permite a criao de visualizaes 3D, por meio de tcnicas de faces de Chernoff, coordenadas paralelas e coordenadas paralelas extrusivas. O usurio pode construir as visualizaes no sistema e export-las para o formato VRML, possibilitando uma fcil visualizao e distribuio, Figura 12.6.

270

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Figura 12.6. Interface do Meta3D++ [Bueno, 2005].

12.6. Consideraes
A Realidade Virtual oferece muitos recursos para a visualizao de informaes, particularmente para a visualizao de um grande volume de dados, uma vez que no limita o espao de explorao dos dados a serem representados. Observa-se, entretanto, que a interao com a Realidade Virtual requer a familiarizao, treinamento e, eventualmente, o uso de dispositivos especiais para a navegao no ambiente tridimensional. A Realidade Aumentada se apresenta como soluo a tais problemas, uma vez que dispensa aprendizado e treinamento com as formas de interao tradicionais e/ou suportadas por Realidade Virtual. Nos moldes do proposto com algumas tecnologias, encontra-se o problema relativo ao reconhecimento de marcadores (marcas fiduciais que fazem o mapeamento do objeto virtual para o cenrio real), principalmente porque exige recursos de iluminao e posicionamento de cmera e/ou observador de forma adequada. Ademais, do ponto de vista da implementao e da concepo, fatores complicadores esto associados dificuldade de programar os ambientes e as associaes necessrias.

271

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Ao se desenvolver um sistema tridimensional para visualizao de informao devem ser considerados problemas como o da ocluso das mesmas. Em face disto, a mudana de viso e o mtodo de navegao so essenciais para melhorar a interao e a percepo do usurio. importante ressaltar que nem sempre a melhor soluo o uso de ambientes tridimensionais para a visualizao de dados. s vezes, as informaes a serem visualizadas so to simples que uma apresentao com tais recursos torna-se fator complicador e prejudica, ao invs de melhorar, o bom entendimento das informaes.

12.7. Referncias Bibliogrficas


Ames, L. A.; Nadeau, R.D.; Moreland D. VRML Sourcebook Second Edition, John Wisley & Sons, Inc - USA, 1997. Azuma, R. T. A Survey of Augmented Reality. UNC Chapel Hill, In Presence: Teleoperators and Virtual Environments 1997. Bekenstein, J. D. Informao no universo hologrfico. Scientific American 2003. Billinghurst, M. et al. The MagicBook - Moving Seamlessly between Reality and Virtuality. Computer Graphics and Applications, 2001. 21(3), 2-4. Disponvel em http://www.hitl.washington.edu/publications/r-2002-29/r-200229.pdf. Acesso em 30/03/2005. Bueno, M. A. S., et al. Meta 3D++-Visualizao de Informao em Realidade Aumentada. II Workshop sobre Realidade Aumentada. Unimep, Piracicaba, SP 2005. Buk, C. V. Ambientes Virtuais para Visualizao Dinmica de Informao. 2005. Dissertao (Cincia da Computao) Universidade Metodista de Piracicaba.

272

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Chambers, J. M., Cleveland, W. S.; et al. (1983). Graphical Methods for Data Analysis. Belmont, CA, Wadsworth International Group. Chernoff, H. (1973). "The Use of Faces to Represent Points in kDimensional Space Graphically." Journal of the American Statistica Association 68(342): 361 - 368. Do Nascimento, H. A. D. Visualizao de Informao - Uma Abordagem Prtica. XXV Congresso da Sociedade Brasileira de Computao - XXIV JAI. UNISINOS - So Leopoldo - RS 2005. Floridi, L. Is Information Meaningful Data? Philosophy and Phenomenological Research, 2005. 351-370 p. Freitas, C. M. D. S., et al. Introduo Visualizao de Informao. Revista de Informtica Terica e Aplicada, v.2, p.143-158. 2001. Gadomski, A. M. Patterns for Conceptualization of Knowledge on Technological Systems and Human Organizations. 9th PolishItalian-Finnish Conference on Systems Analysis and Decision Support in Economics and Technology. Poland 1993. Grinstein, G. G.; Ward, M. O. (2002). Introduction to Data Visualization. Information Visualization in Data Mining and Knowledge Discovery. U. Fayyad, G. G. Grinstein and A. Wierse, Morgan Kaufmann Publishers: 21-45. Houaiss, A.; Villar, M. D. S. Dicionrio Houaiss da Lngua Portuguesa. Dicionrio Houaiss da Lngua Portuguesa. Objetiva. Rio de Janeiro - RJ: 2925 p. 2001. Inselberg, A.; Dimsdale, B. (1990). Parallel Coordinates: A Tool for Visualizing Multidimensional Geometry. IEEE Visualization, IEEE Computer Press.

273

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Kandogan, E. (2000). Star Coordinates: A Multi-dimensional Visualization Technique with Uniform Treatment of Dimensions. IEEE Symposium on Information Visualization 2000, Salt Lake City, Utah. Kato, H.; Billinghurst, M.; Poupyrev, I. ARToolKit version 2.33 Manual, Novembro. 2000. Keim, D. A. (2002). "Information Visualization and Visual Data Mining." IEEE Transactions on Visualization and Computer Graphics 8(1):1-8. Keim, D. A.; Kriegel, H. P. (1994). "VisDB: Database Exploration Using Multimensional Visualization." IEEE Computer Graphics and Application 14(5): 16-19. Kirner, C.; Tori, R. Introduo Realidade Virtual, Realidade Misturada e Hiper-realidade. In: (Ed.). Realidade Virtual: Conceitos, Tecnologia e Tendncias. So Paulo - SP, 2004. Introduo Realidade Virtual, Realidade Misturada e Hiperrealidade, p.3-20 Kirner, C. Virtual Environment for Shared Interactive Visualization. In: IV Workshop on Information Technology Cooperative Research with Industrial Partners between Germany and Brazil, 1997. Proceedings of the 4th Workshop on Information Technology Cooperative Research with Industrial Partners between Germany and Brazil. Porto Alegre - RS. LeBlanc, J. ; Ward, M. O.; et al. (1990). Exploring N-Dimensional Databases. Proc. IEEE Visualization'90, San Francisco, CA. Martins, V. F. Processo de Desenvolvimento de Ambientes e Aplicaes de Realidade Virtual. 2000. Dissertao (Cincia da Computao) - Universidade Federal de So Carlos.

274

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Meiguins, B. S. et al. Multidimensional Information Visualization Using Augmented Reality. VIII Symposium on Virtual Reality. Belm - PA 2006. Pickett, R. M.; Grinstein, G. G. (1988). Iconographic Display for Visualizing Multimensional Data. IEEE Conf. on Systems, Man and Cybernetics, Piscataway, NJ, IEEE Press. Sousa Junior, R. D., Meiguins, B. S.; Filho, M. R.. Ferramenta Colaborativa para Visualizao Tridimensional de Dados. VIII Symposium on Virtual Reality. Belm - PA 2006. Systems, F. I. 3D ACTIVE CHART. http://www.rinvoice.com/activechart.htm. 28/02/2004. Disponvel Acesso em: em

Ward, M. O. (1994). XmdvTool: Integrating Multiple Methods for Visualizing Multivariate Data. Proceedings of IEEE Conference on Visualization.

275

SEO

AUTORES

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Seo

D
Autores e Editores
Robson Augusto Siscoutto (Organizador)

Editores do Livro
Claudio Kirner graduou-se em Engenharia Eltrica, em 1973, na
Escola de Engenharia de So Carlos - USP (EESC/USP), concluiu o mestrado em Engenharia Eletrnica, em 1978, no Instituto Tecnolgico da Aeronutica (ITA) e o doutorado em Engenharia de Sistemas e Computao, em 1986, na Universidade Federal do Rio de Janeiro (UFRJ). Realizou Ps-doutorado na Universidade do Colorado em Colorado Springs (UCCS), Estados Unidos, no perodo de 1993 a 1995, desenvolvendo trabalhos sobre Realidade Virtual. Coordenou o I Workshop de Realidade Virtual, em 1997 e o I Workshop de Realidade Aumentada, em 2004 e outros subseqentes. Foi coordenador da Comisso Especial de Realidade Virtual da SBC, no perodo de 2001 a 2004. Publicou cerca de 130 trabalhos cientficos, 5 livros e 15 captulos de livro. Orientou 7 doutorados e 22 mestrados e coordenou projetos de pesquisa financiados num montante superior a R$600K. reas de interesse: Realidade Virtual e Aumentada, Ambientes Colaborativos e Educao Distncia. Filiao: Programa de Ps-Graduao em Cincia da Computao, Universidade Metodista de Piracicaba (UNIMEP), e Centro Universitrio Adventista de So Paulo (UNASP). Contato: ckirner@unimep.br

Robson Augusto Siscoutto professor titular da Faculdade de


Cincia e Tecnologia da Universidade de Cuiab UNIC, onde coordena

277

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

o grupo de pesquisa em realidade virtual. Obteve grau de doutor na rea de Engenharia da Computao e Sistemas Digitais pela Escola Politcnica da USP-SP em 2003. Membro do grupo de Tecnologias Interativas da USP-SP (INTERLAB). Outros graus acadmicos so: Mestre em Cincia da Computao pela USP de So Carlos em 1997 e Bacharel em Cincia da Computao pela UNOESTE de Presidente Prudente em 1994. Publicou 3 livros e diversos artigos na rea. Editor de dois livros na rea de Realidade Virtual e Aumentada. reas de Interesse: Realidade Virtual, Realidade Misturada, Tecnologias Interativas, Educao Virtual Interativa e Multimdia. Filiao: INTERLAB - Laboratrio de Tecnologias Interativas do Departamento de Engenharia de Computao e Sistemas Digitais da Escola Politcnica da Universidade de So Paulo. Grupo de Pesquisa em Realidade Virtual da Universidade de Cuiab MT. LAVI Laboratrio de Ambientes Virtuais Interativos da Universidade Federal do Mato Grosso UFMT. Contato: robson.siscoutto@poli.usp.br e robson@unic.br

Autores dos Captulos


Alberto Raposo coordenador de rea do Tecgraf (Grupo de
Tecnologia em Computao Grfica), Departamento de Informtica da Pontifcia Universidade Catlica do Rio de Janeiro. Obteve o grau de Doutor em Engenharia Eltrica, rea de Engenharia da Computao pela Universidade Estadual de Campinas em 2000. Outros graus acadmicos so Mestre em Engenharia Eltrica, rea de Automao, UNICAMP, 1996; Engenheiro Eletricista, UNICAMP, 1994. rea de Interesse: Realidade Virtual, Groupware e Ambientes Virtuais Colaborativos. Filiao: Tecgraf (Grupo de Tecnologia em Computao Grfica), Departamento de Informtica da Pontifcia Universidade Catlica do Rio de Janeiro. Contato: abraposo@tecgraf.puc-rio.br

Alexandre Cardoso engenheiro eletricista pela Universidade


Federal de Uberlndia (UFU) e doutor pela USP (POLI) na rea de

278

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Sistemas de Informao. Docente da Faculdade de Engenharia Eltrica da UFU, foi coordenador de curso e coordenador do Ncleo de Engenharia de Computao. Atualmente, coordenador da Comisso Brasileira de Realidade Virtual (CERV) da SBC. Atuou como coordenador dos laboratrios de Informtica e de Computao Grfica e como assessor do Centro de Processamento de Dados. co-autor e editor do livro "Ambientes Virtuais - Projeto e Implementao" (SBC, 2003) e do livro "Realidade Virtual - Uma Abordagem Prtica" (Ed. Mania do Livro, 2004). Participa de projetos na rea de Realidade Virtual (RV) e Realidade Aumentada (RA), entre eles "Lab. Virtual de Fsica" (Interlab USP, 2001), "RV no controle de consumo de Energia Eltrica", "Motor Eltrico Virtual", "Utilizao de mapas conceituais e RV na educao (ensino mdio e superior)", RA aplicada ao ensino e em jogos. reas de Interesse: Educao Virtual Interativa, Tecnologias Interativas, Realidade Virtual, Realidade Aumentada. Filiao: Grupo de Realidade Virtual da Faculdade de Engenharia Eltrica - Universidade Federal de Uberlndia (UFU) Contato: alexandre@ufu.br - http://www.alexandre.eletrica.ufu.br

Alexandre N. Tomoyose mestrando na Universidade de So Paulo


(USP) e tambm pesquisador do Interlab (Laboratrio de Tecnologias Interativas). Graduado em Engenharia de Computao pela Escola Politcnica (Poli-USP) com um projeto na rea de engines de alto nvel para jogos eletrnicos e trabalha com desenvolvimento web e jogos online desde ento. Co-lder do projeto Robot ARena do Interlab, que consiste em um framework para reduzir o tempo de desenvolvimento de aplicaes que implementem Realidade Aumentada Espacial. reas de Interesse: Aplicaes Web, Jogos Eletrnicos e Entretenimento Digital, Realidade Aumentada, Interface Homem-Computador. Filiao: Interlab Departamento de Engenharia de Computao e Sistemas Digitais Escola Politcnica da Universidade de So Paulo. Contato: alexandre.tomoyose@poli.usp.br e alextomoyose@gmail.com

Ana Cludia Melo Tiessi Gomes de Oliveira professora


auxiliar da Faculdade de Tecnologia de Gara FATEC Gara. Obteve grau de mestre em Cincia da Computao na rea de Realidade Virtual em 2007, no UNIVEM. Membro do LApIS Laboratrio de Aplicaes

279

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

de Informtica em Sade. Outros graus acadmicos so: Tecnloga em Processamento de Dados pela Faculdade de Tecnologia de Ourinhos FATEC Ourinhos em 2003. reas de Interesse: Realidade Virtual, Treinamento Mdico, Linguagens de Programao. Filiao: LApIS - Laboratrio de Aplicaes de Informtica em Sade do Centro Universitrio Eurpides de Marlia (UNIVEM). FATEC Gara. Contato: anatiessi@gmail.com

Antonio Carlos Sementille Doutor em Fsica Computacional


(IFSC/USP), Mestre em Cincia da Computao (UFSCAR) e Graduado em Cincia da Computao (UNESP Bauru). pesquisador na rea de Realidade Virtual desde 1995. Atualmente docente no curso de Bacharelado em Cincia da Computao e no Programa de PsGraduao em Cincia da Computao do Centro Universitrio Eurpides de Marlia. membro da Comisso Especial de Realidade Virtual (CERV) da Sociedade Brasileira de Computao. reas de Interesse: Realidade Virtual, Realidade Misturada, Ambientes Virtuais Distribudos e Compartilhados. Filiao: LRV - Laboratrio de Realidade Virtual - Centro Universitrio Eurpides de Marlia (UNIVEM). Contato: semente@univem.edu.br

Bruno Barberi Gnecco graduado em Engenharia Eltrica na Escola Politcnica da Universidade de So Paulo em 2002, onde adquiriu tambm o ttulo de Mestre em Engenharia Eltrica em 2005. Participou do Ncleo de Realidade Virtual do Laboratrio de Sistemas Integrveis da Universidade de So Paulo (LSI - USP), trabalhando em nas reas de realidade virtual e computao distribuda. Atualmente trabalha em consultoria e desenvolvimento de tecnologias.
reas de interesse: realidade virtual, realidade aumentada, jogos, jogos on-line, sistemas distribudos e de alto desempenho. Filiao: Faculdade de Campo Limpo Paulista Contato: brunobg@gmail.com

280

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Daniel Calife mestrando de engenharia eltrica (sistemas digitais)


pela Escola Politcnica da Universidade de So Paulo e pesquisador do Laboratrio de Tecnologias Interativas Interlab, com interesse na aplicao de realidade aumentada em jogos e entretenimento digital. Bacharel em Cincia da Computao pela Universidade Cruzeiro do Sul. reas de Interesse: Jogos e Entretenimento Digital, Realidade Virtual, Realidade Aumentada, Computao Grfica e Tecnologias Interativas. Filiao: Interlab Laboratrio de Tecnologias Interativas Departamento de Engenharia de Computao e Sistemas Digitais Escola Politcnica da Universidade de So Paulo. Contato: daniel.calife@poli.usp.br

Denise Filippo aluna de doutorado do Departamento de Informtica


da PUC - Rio desde 2004 e desenvolve tese sobre suporte computacional coordenao em sistemas colaborativos. mestre em Sistemas de Computao (1991) e engenheira eletrnica e de telecomunicaes (1986), tambm pela PUC-Rio. Trabalha na rea de projeto e gerncia de redes na Universidade do Estado do Rio de Janeiro (UERJ) desde 1992. rea de interesse: Suporte Computacional Colaborao, Aprendizagem Colaborativa e m-learning Filiao: Departamento de Informtica da PUC-Rio e Instituto Politcnico - Campus Regional da Universidade do Estado do Rio de Janeiro em Nova Friburgo, RJ Contato: denise@les.inf.puc-rio.br

Edgard Lamounier Jr. obteve o ttulo de PhD em Cincia da


Computao pela Universidade de Leeds-Inglaterra. Atualmente, ele professor associado da Faculdade de Engenharia Eltrica da Universidade Federal de Uberlndia, onde desenvolve trabalhos de ensino, pesquisa e extenso. Ele j publicou diversos artigos nacionais e internacionais na rea de Realidade Virtual e foi co-editor do livro Ambientes Virtuais Projeto e Implementao (SBC/SVR'2003). Alm disso, ele membro efetivo da Sociedade Brasileira de Computao e membro da Comisso Especial de Realidade Virtual da SBC. reas de Interesse: Computao Grfica, Realidade Virtual, Educao Distncia via Internet.

281

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Filiao: Grupo de Realidade Virtual da Faculdade de Engenharia Eltrica - Universidade Federal de Uberlndia (UFU) Contato: lamounier@ufu.br

Eduardo Costa Jacober engenheiro formado pela USP, cursando


mestrado pelo departamento de computao e sistemas digitais da Escola Politcnica da USP. Faz parte do grupo Interlab Games, voltado a pesquisas sobre jogos eletrnicos. Dentre os projetos do grupo, destaque para o game engine 3D enJine e o jogo FootBot, desenvolvidos em Java, e na organizao e participao de seminrios e palestras sobre o assunto. Possui experincia profissional em projeto de redes de computadores, com certificaes dos fabricantes Cisco e Nortel. reas de Interesse: Jogos Eletrnicos, Interao Humano-Computador, Projetos Multidisciplinares, Criatividade. Filiao: INTERLAB Departamento de Engenharia de Computao e Sistemas Digitais Escola Politcnica da Universidade de So Paulo Contato: eduardo.jacober@poli.usp.br

Ezequiel Roberto Zorzal professor contratado da Faculdade de


Computao da Universidade Federal de Uberlndia (UFU). Graduado em Cincia da Computao pelo Centro Universitrio Adventista de So Paulo (2005). Atualmente dissente do curso de mestrado em Engenharia Eltrica da Universidade Federal de Uberlndia, atuando como pesquisador na rea de Computao Grfica, Realidade Virtual e Aumentada. reas de Interesse: Realidade Virtual, Realidade Aumentada, Visualizao de Informaes. Filiao: Grupo de Realidade Virtual UFU Ps-graduao em Engenharia Eltrica UFU. Contato: ezorzal@gmail.com http://www.realidadeaumentada.com.br

Ftima L. S. Nunes professora do Centro Universitrio Eurpides


de Marlia (UNIVEM), onde coordena os Cursos de Bacharelado em Cincia da Computao e Bacharelado em Sistemas de Informao. Fez ps-doutorado no Departamento de Engenharia Eltrica (EESC/USP) e Doutorado em Fsica Computacional (IFSC/USP). Coordena o

282

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Laboratrio de Aplicaes de Informtica em Sade do Univem. Outros graus acadmicos so: Mestre em Engenharia Eltrica (EESC/USP) e Bacharel em Cincia da Computao (UNESP Bauru). pesquisadora nvel 2 do CNPq. reas de Interesse: Realidade Virtual, Processamento de Imagens, Banco de Dados, Engenharia Biomdica, Aplicaes de Informtica em Sade. Filiao: LApIS - Laboratrio de Aplicaes de Informtica em Sade Centro Universitrio Eurpides de Marlia (UNIVEM) e LRV Laboratrio de Realidade Virtual - Centro Universitrio Eurpides de Marlia (UNIVEM). Contato: fatima@univem.edu.br, fatima.nunes@pesquisador.cnpq.br

Hugo Fuks professor associado do Departamento de Informtica da PUC-Rio, Pesquisador 1D do CNPq e bolsista FAPERJ do programa Cientista do Nosso Estado - na categoria Pesquisador Inovador. Graduouse em Engenharia de Produo pela UFRJ e obteve o doutorado em Computao pelo Imperial College London. Seu objetivo de pesquisa dar suporte computacional colaborao entre humanos. Na parte conceitual desenvolve uma Engenharia de Groupware baseada no modelo 3C de colaborao cujas dimenses so a comunicao, coordenao e cooperao, usando desenvolvimento baseado em componentes de programao. Na parte prtica desenvolveu o AulaNet, um ambiente de ensino e aprendizagem na web, e mais recentemente vem desenvolvendo jogos didticos, voltados para adolescentes em temas como educao financeira e ecologia. reas de interesse: Suporte Computacional Colaborao, Aprendizagem Colaborativa; Projeto de Interao Filiao: Departamento de Informtica da PUC-Rio Contato: hugo@inf.puc-rio.br Ildeberto Aparecido Rodello Doutor em Fsica Computacional pelo Instituto de Fsica da Universidade de So Paulo (IFSC-USP), Campus So Carlos, Mestre em Cincia da Computao pela Universidade Federal de So Carlos (UFSCar) e Graduado em Tecnologia em Processamento de Dados pela Universidade Estadual de Campinas (Unicamp). pesquisador na rea de Realidade Virtual desde
283

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

1998. Atualmente docente nos cursos de Bacharelado em Cincia da Computao e Bacharelado em Sistemas de Informao e no Programa de Ps-Graduao em Cincia da Computao do Centro Universitrio Eurpides de Marilia (Univem), SP, sendo membro do Grupo de Realidade Virtual. reas de Interesse: Realidade Virtual, Realidade Misturada, Ambientes Virtuais Distribudos e Compartilhados, Realidade Virtual e Educao . Filiao: Centro Universitrio Eurpides de Marilia, UNIVEM, Marlia, SP. Contato: rodello@univem.edu.br

Joo Luiz Bernardes Jr. engenheiro formado em 1998 pela Escola


Politcnica da USP. Desde 1995 faz parte de projetos de pesquisa envolvendo desenvolvimento de software. Conclui em 2004 o mestrado na Escola Politcnica, englobando principalmente Visualizao Cientfica e Realidade Virtual. Atualmente est no programa de Doutorado da mesma escola, desenvolvendo sua tese nas reas de jogos eletrnicos e realidade aumentada. um dos fundadores do grupo de pesquisa de jogos do Laboratrio de Tecnologias Interativas da USP, onde tem participado de projetos (por exemplo, Jogo do Museu, enJine e FootBot), de pesquisas e aplicao de uso de jogos no ensino e da elaborao de artigos explorando tecnologias relacionadas a jogos eletrnicos, bem como ministrado palestras sobre o tema. Tem ainda experincia de 3 anos no ensino tanto para graduao como para ps-graduao. Filiao: INTERLAB Departamento de Engenharia de Computao e Sistemas Digitais Escola Politcnica da Universidade de So Paulo Contato: joao.bernardes@poli.usp.br

Jos Remo Ferreira Brega Doutor em Engenharia Civil


(EESC/USP), Mestre em Engenharia Civil (EESC/USP), Graduado em Engenharia Civil (EESC/USP) e Tecnologia em Processamento de Dados (UFSCAR). pesquisador na rea de Realidade Virtual desde 1995. Atualmente docente no curso de Bacharelado em Cincia da Computao e no Programa de Ps-Graduao em Cincia da Computao do Centro Universitrio Eurpides de Marlia, sendo membro do Grupo de Realidade Virtual. membro da Comisso Especial de Realidade Virtual (CERV) da Sociedade Brasileira de Computao.

284

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

reas de Interesse: Realidade Virtual, Realidade Virtual e Educao. Filiao: LRV - Laboratrio de Realidade Virtual - Centro Universitrio Eurpides de Marlia (UNIVEM). Contato: remo@univem.edu.br

Judith Kelner recebeu seus ttulos de Mestre e Doutora em Cincia da Computao do CIn UFPE, em 1981, e da University of Kent at Canterbury, Inglaterra, em 1993, respectivamente. Atualmente, professora adjunta do CIn, onde iniciou suas atividades em 1977, e bolsista de produtividade em pesquisa do CNPq. De 1998 a 2005 exerceu o cargo de Chefe de Departamento e Vice-Diretora de Centro. lder do GRVM e vice-lder do GPRT(Grupo de Pesquisa em Redes e Telecomunicaes), e suas reas de pesquisa incluem redes de ambiente, interfaces avanadas e realidade virtual e aumentada. Publicou 7 artigos em peridicos, 91 artigos em conferncias e 4 captulos de livro. Orientou 22 alunos de mestrado e co-orientou 1, e orientou 2 alunos de doutorado. Participou de 26 bancas examinadoras de mestrado e 8 de doutorado. reas de Interesse: Realidade Virtual, Realidade Aumentada, Interfaces 3D e Comunicao Mvel. Filiao: Centro de Informtica (CIn) da Universidade Federal de Pernambuco (UFPE) Contato: jk@cin.ufpe.br Larissa Pavarini professora no Centro Universitrio de Marlia
UNIVEM nos cursos de ensino superior de Tecnologia (IST), e professora na FATEC de Gara, atuando nas reas de computao. Obteve grau de mestre em Cincia da Computao na rea de Realidade Virtual pelo Centro Universitrio Eurpides de Marlia (UNIVEM), em 2006. membro do LApIS (Laboratrio de Aplicaes de Informtica em Sade) do UNIVEM. Outros graus acadmicos: Bacharel em Cincia da Computao pela UNIVEM, em 2003. reas de Interesse: Realidade Virtual, Realidade Misturada, Tecnologias Interativas, Educao Virtual Interativa e Multimdia. Filiao: LApIS - Laboratrio de Aplicaes de Informtica em Sade do Centro Universitrio Eurpides de Marlia (UNIVEM) e LRV Laboratrio de Realidade Virtual do UNIVEM. Contato: lpavarini@univem.edu.br

285

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Liliane dos Santos Machado professora do Departamento de Informtica da Universidade Federal da Paraba. Atua junto ao LabTEVE - Laboratrio de Tecnologias para o Ensino Virtual e Estatstica - onde coordena projetos na rea de realidade virtual. Doutora em Engenharia Eltrica pela Universidade de So Paulo (USP), mestre em Computao Aplicada pelo Instituto Nacional de Pesquisas Espaciais (INPE) e Bacharel em Cincias da Computao pela Universidade Estadual Paulista (UNESP). rea de Interesse: Realidade Virtual, Sistemas Hpticos, Ensino Virtual, Jogos Multiplataforma Afiliao: LabTEVE - DE/CCEN - http://www.de.ufpb.br/~labteve; Grupo de Pesquisa de Tecnologias em Sistemas Interativos e Inteligentes para Ensino Virtual Universidade Federal da Paraba Contato: liliane@di.ufpb.br ou http://www.di.ufpb.br/liliane Luciano Ferreira Silva professor contratado da Faculdade de Matemtica da Universidade Federal de Uberlndia (UFU). Graduado em Matemtica em 2003, obteve grau de mestre no setor de Engenharia da Computao na rea de processamento da informao Realidade Virtual pela Eng. Eltrica UFU MG em 2006. reas de Interesse: Realidade Virtual, Educao, Matemtica aplicada. Filiao: Grupo de Realidade Virtual UFU Ps-graduao em Engenharia Eltrica UFU. Contato: luciano@mat.ufu.br e fsluciano@hotmail.com Lus Augusto Consularo professor do curso de Mestrado em
Cincia da Computao da UNIMEP, contribuindo para a linha de pesquisa em Realidade Virtual deste curso. doutor em Fsica Computacional pelo IFSC-USP, mestre e bacharel em Cincia da Computao pela UFSCar. Foi docente do Departamento de Informtica na UEM-Maring-PR, atuando no Mestrado em Cincia da Computao. reas de Interesse: Viso Computacional, Reconhecimento de Padres e Realidade Virtual e Aumentada. Filiao: Universidade Metodista de Piracicaba - UNIMEP (PiracicabaSP) Contato: consularo@unimep.br

286

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Marcelo de Paiva Guimares professor da Faculdade de Campo


Limpo Paulista (FACCAMP) e do Centro Universitrio Adventista de So Paulo (UNASP). Obteve grau de doutor na rea de Engenharia de Engenharia Eltrica pela Escola Politcnica da USP-SP em 2004. Outros graus acadmicos so: Mestre em Cincia da Computao pela Universidade Federal de So Carlos em 2000, Especialista em Sistemas de Informao pela Universidade Federal de So Carlos e Instituto Municipal de Ensino Superior de Assis em 1996 e Tecnlogo em Processamento de Dados pelo Instituto Municipal de Ensino Superior de Assis em 1994. reas de Interesse: Realidade Virtual, Realidade Aumentada, e Sistemas Distribudos e de Alto Desempenho. Filiao: Grupo de Pesquisa em Computao da Faculdade de Campo Limpo Paulista e Centro Universitrio Adventista de So Paulo Contato: marcelodepaiva@gmail.com

Markus Endler Bacharel em Matemtica e Mestre em Informtica


pela PUC-Rio (1995 e 1997), e obteve os ttulos de Dr.rer.nat. pela Universidade Tcnica de Berlim (TU Berlin) em 1992, e de Professor livre-docente da Universidade de So Paulo em 2001. De 1994 a 2000 foi professor de tempo integral do Instituto de Matemtica e Estatstica da USP, onde foi membro fundador do Laboratrio de Computao Paralela e Distribuda. L orientou 8 dissertaes de mestrado e uma tese de doutorado. Desde maro de 2001 professor de tempo integral do Departamento de Informtica da PUC-Rio, onde atualmente orienta 10 alunos de ps-graduao e vrios alunos de graduao. Em 2003 fundou o Laboratory for Advanced Collaboration (LAC), que desde ento est sob sua coordenao. Desde 2003 Coordenador de Desenvolvimento do DI na PUC-Rio. autor de um livro, co-editor de um volume da srie Lecture Notes in Computer Science, e publicou mais de 50 artigos. membro da SBC e da ACM, e participa de comits tcnicos de vrios simpsios e workshops nacionais e internacionais na rea de Redes e Sistemas Distribudos. reas de interesse: Protocolos e Sistemas Distribudos, Computao Mvel e Ubqua, Middlewares, Servios baseados em localizao e Colaborao entre usurios Mveis.

287

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Filiao: Departamento de Contato: endler@inf.puc-rio.br

Informtica

da

PUC-Rio

Nivaldi Calonego Jr professor do curso de Cincia da Computao


da UNEMAT. doutor em Fsica Computacional pelo IFSC-USP, mestre e bacharel em Cincia da Computao pelo ICMC-USP. Atuou como docente do ICMC-USP, e ento na UNIMEP-Piracicaba - SP, no curso de Mestrado em Cincia da Computao. reas de Interesse: Realidade Virtual e Aumentada e Sistemas Distribudos. Filiao: Universidade Estadual de Mato-Grosso - UNEMAT (CuiabMT) Contato: nivaldi.calonegojr@gmail.com

Regina Clia Coelho professora do curso de Mestrado em Cincia


da Computao da UNIMEP, atuando na linha de pesquisa em Realidade Virtual. doutora em Fsica Computacional pelo IFSC-USP, mestre em Cincia da Computao pela UFSCar e bacharel em Cincia da Computao pela UNESP Bauru. Atuou como docente do Mestrado em Cincia da Computao na UEM-Maring-PR. reas de Interesse: Computao Grfica, Viso Computacional, Redes Neurais e Realidade Virtual e Aumentada. Filiao: Universidade Metodista de Piracicaba - UNIMEP (PiracicabaSP) Contato: rccoelho@unimep.br

Ricardo Nakamura formado em engenharia mecnica e mestre em


engenharia eltrica (sistemas digitais) pela Escola Politcnica da USP (EPUSP). Atualmente dedica-se ao doutorado na rea de Entretenimento Digital, participando do Laboratrio de Tecnologias Interativas (Interlab), no Departamento de Computao e Sistemas Digitais da EPUSP. J atuou como professor de graduao em disciplinas relacionadas a computao, especialmente Computao Grfica. reas de Interesse: Entretenimento Digital, Realidade Virtual, Computao Grfica, Tecnologias Interativas Aplicadas Educao. Filiao: INTERLAB Departamento de Engenharia de Computao e

288

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Sistemas Digitais Escola Politcnica da Universidade de So Paulo Contato: ricardo.nakamura@poli.usp.br Roberto Cezar Bianchini, Doutor em Engenharia da Computao, ttulo obtido junto Escola Politcnica da Universidade de So Paulo em 2005. Tambm bacharel em Fsica, concluda em 1996, e Mestre em Fsica, ttulo obtido em 2000. um dos fundadores do grupo de pesquisa de jogos do Laboratrio de Tecnologias Interativas da USP, onde tem participado de projetos de pesquisas e aplicao de uso de jogos no ensino e da elaborao de artigos explorando tecnologias relacionadas a jogos eletrnicos. Alm de ministrar palestras sobre jogos colunista regular da revista especializada em games Game Master desde outubro de 2005. Experincia docente inclui disciplinas em cursos de graduao e ps-graduao h 7 anos. reas de Interesse: Inteligncia Artificial, Sistemas Emergentes, Computao Grfica, Realidade Virtual e Aumentada. Filiao: INTERLAB Departamento de Engenharia de Computao e Sistemas Digitais Escola Politcnica da Universidade de So Paulo Contato: roberto-bianchini@hotmail.com

Rodrigo Damazio graduado em Engenharia Eltrica na Escola


Politcnica da Universidade de So Paulo em 2005. Participou do Ncleo de Aprendizagem, Trabalho e Entretenimento do Laboratrio de Sistemas Integrveis da Universidade de So Paulo (NATE - LSI - USP), onde desenvolveu diversos projetos na rea de realidade virtual, realidade aumenta e jogos. J ministrou disciplinas de desenvolvimento de jogos em diversos cursos e faculdades, e atualmente engenheiro de software no Google.
reas de interesse: realidade virtual, realidade aumentada, jogos, jogos on-line, sistemas distribudos e de alto desempenho. Filiao: Centro Universitrio Adventista de So Paulo Contato: rodrigo@damazio.org

Romero Tori Professor Ttitular do Centro Universitrio Senac, onde


coordena o Programa Institucional de Iniciao Cientfica, e Professor Associado da Escola Politcnica da Universidade de So Paulo, onde coordena o Laboratrio de Tecnologias Interativas (Interlab). Livre-

289

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

docente pela Universidade de So Paulo, na rea de tecnologias interativas. membro do Conselho Deliberativo da Escola do Futuro da USP. Foi General Chair do SVR 2004, Program Chair do SBGames 2005 e Program Chair do SVR 2007. presidente eleito da Comisso Especial de Realidade Virtual (CERV) da SBC para o mandato 2007-2008. reas de Interesse: Realidade Virtual, Realidade Aumentada, Tecnologias Interativas, Educao Virtual Interativa e Games. Filiao: INTERLAB - Laboratrio de Tecnologias Interativas do Departamento de Engenharia de Computao e Sistemas Digitais da Escola Politcnica da Universidade de So Paulo. LPAI-Grupo de Pesquisa Processos & Linguagens Emergentes: Design & Tecnologia, do Centro Universitrio Senac de So Paulo. Contato: tori@acm.org

Rosa Maria Esteves Moreira da Costa Professora adjunta da


Universidade do Estado do Rio de Janeiro. Obteve o grau doutora pela Coppe-Programa de Engenharia de Sistemas e Computao da UFRJ em 2000. reas de interesse: Realidade Virtual aplicada Medicina e Educao; Inteligncia Artificial aplicada aos ambientes virtuais e Realidade Aumentada. Filiao: Universidade do Estado do Rio de Janeiro, Instituto de Matemtica e Estatstica, Departamento de Infromtica e Cincia da Computao. Contato: rcosta@ime.uerj.br

Srgio Roberto Delfino concluiu o Bacharelado em Cincia da


Computao pelo Centro Universitrio Eurpides de Marlia em 2004. Cursa mestrado em Cincia da Computao pela mesma instituio desde 2005. Atualmente professor auxiliar da Faculdade de Tecnologia de Ourinhos e professor efetivo das Faculdades Integradas de Ourinhos. reas de Interesse: Realidade Virtual, Computao Grfica, Processamento de Imagens e Treinamento Mdico. Filiao: LApIS - Laboratrio de Aplicaes de Informtica em Sade. Grupo de Pesquisa em Realidade Virtual do Centro Universitrio Eurpides de Marlia. Contato: srdelfino@gmail.com

290

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

Tereza Gonalves Kirner graduada pela Universidade Federal de So Carlos (UFSCar), com mestrado pela Universidade Federal do Rio de Janeiro (UFRJ) e doutorado pela Universidade de So Paulo (USP). Realizou ps-doutorado de 2 anos no Center for Software and Systems Engineering (CSSE) da Universidade do Colorado em Colorado Springs (UCCS), Estados Unidos, desenvolvendo trabalhos sobre engenharia de requisitos de software. reas de interesse: Engenharia de Software e Sistemas de Informao, incluindo o desenvolvimento e avaliao de ambientes e sistemas de realidade virtual. Filiao: Programa de Ps-Graduao em Cincia da Computao, Universidade Metodista de Piracicaba (UNIMEP). Contato: tgkirner@unimep.br Valria Farinazzo Martins Salvador graduada em Cincia da
Computao pela Universidade Estadual Paulista Jlio de Mesquita Filho (1995) e possui mestrado em Cincia da Computao pela Universidade Federal de So Carlos (2000). doutoranda em Engenharia Eltrica na Escola Politcnica da Universidade de So Paulo, POLI/USP. Filiao: Professora do Centro Universitrio So Camilo e da Universidade Presbiteriana Mackenzie, So Paulo. reas de Interesse: Engenharia de Software, Realidade Virtual e Interfaces Humano-Computador. Contato: valeria@scamilo.edu.br

Veronica Teichrieb recebeu seus ttulos de Mestre e Doutora em


Cincia da Computao do CIn UFPE, em 1999 e 2004, respectivamente. Realizou o doutorado-sanduche na empresa Aero-Sensing Radarsysteme GmbH, na Alemanha. Atualmente, vice-lder do GRVM, aonde vem trabalhando com projetos de pesquisa e desenvolvimento. Suas reas de pesquisa incluem realidade virtual, realidade aumentada e interao 3D. Vernica lecionou na Poli UPE, na Universidade Salgado de Oliveira e na URCAMP, entre 1996 e 2006. Publicou 1 artigo em peridico internacional, 3 captulos de livro, e 37 artigos em conferncias nacionais e internacionais. Ministrou 8 cursos de curta durao. Est co-

291

Realidade Virtual e Aumentada: Conceitos, Projeto e Aplicaes

orientando2 alunos de doutorado, co-orientou 2 e est co-orientando outros 3 alunos de mestrado, e orientou 1 e co-orientou outros 7 trabalhos de concluso de graduao e est co-orientando outros 2. Participou de 2 bancas de defesa de mestrado e 1 de trabalho de concluso de graduao. reas de Interesse: Realidade Virtual, Realidade Aumentada, Interao. Filiao: Departamento de Sistemas Computacionais (DSC), Escola Politcnica de Pernambuco (Poli), Universidade de Pernambuco (UPE). Contato: vt@cin.ufpe.br

Revisores
Cludio Kirner
Filiao: UNIMEP / UNASP Contato: ckirner@unimep.br

Robson Augusto Siscoutto


Filiao: UNIC / FATEC Faculdade de Cincia e Tecnologia Contato: robson.siscoutto@poli.usp.br e robson@unic.br

292

You might also like