Realidade Misturada José Remo F. Brega Ildeberto A. Rodello Antonio Carlos Sementille Silvio Ricardo Rodrigues Sanches 1 Roteiro Apresentação/Introdução Conceitos Básicos Tipos e Classificações Dispositivos Especiais Linguagens, Bibliotecas e Ferramentas Áreas de Aplicação Exemplos/Demonstrações 2 Introdução 3 Introdução Realidade Virtual (RV) ?!? Termo atribuído a Jaron Lanier “Realidade Virtual é um péssimo nome para uma boa idéia.” Olin Lathrop 4 Definição Existem várias definições para o termo. Mais aceita: “É a forma mais avançada de interface do usuário com o computador até agora disponível.” Hancock, 1995 5 Interfaces... Prompt – MS DOS Eniac – Chaves e Relês WIMP 6 Interfaces...RV! 7 Outra Definição... “É uma técnica avançada de interface onde o usuário pode realizar imersão, navegação e interação em um ambiente sintético tridimensional gerado por computador” Claudio Kirner 8 Definição Realidade Misturada RM Caracterização do espaço de transição entre o mundo real e um mundo artificial. 9 Caracterização da RM 10 Continuum de Virtualidade Proposto por Milgram et al (1994). Realidade Misturada Ambiente Real Realidade Aumentada Virtualidade Aumentada Ambiente Virtual 11 Continuum de Virtualidade Quando há predominância do virtual sobre o real Virtualidade Aumentada Quando há predominância do real sobre o virtual Realidade Aumentada 12 Contínuo Virtual-Real 13 Contínuo Virtual-Real 14 Realidade Misturada Segundo Azuma (1997), três características são essenciais para que um sistema seja considerado um sistema de RM: Combinação de algo real e virtual; Interação em tempo real e; Alinhamento e sincronização precisos dos objetos virtuais tridimensionais com o ambiente real (Registro). 15 Realidade Misturada 16 Meta da Realidade Misturada criar um ambiente tão realista que faça com que o usuário não perceba a diferença entre os elementos virtuais e os reais participantes da cena 17 Caracterização da RV 18 Histórico da Realidade Virtual 19 Histórico Em termos de área de estudo pode-se situar o provável inicio da RV no século XIX com o aparecimento dos primeiros simuladores de vôo. Em 1929, Edward Link desenvolve um simulador de vôo mecânico simples para treinar pilotos em recinto fechado.. 20 Simulador de vôo de Edward Link 21 Histórico 1960: Morton Helig - Sensorama 1961: Comeau e Bryan - Circuito de TV com visor montado em um capacete 1968: Ivan Sutherland desenvolveu, na Universidade de Harvard, o primeiro capacete com imagens geradas por computador 22 Sensorama 23 Experimentos de Sutherland Quint Foster (por volta de 1967) Fonte: http://www.sun.com/960710/feature3/alice.html#pics 24 Histórico 1977 e 1982: Primeiras luvas, desenvolvidas respectivamente pelo grupo levado por Dan Sandin, Richard Soyre e Thomas Defanti na Universidade de Illinois e por Thomas Zimmerman para serem acoplados a computadores. 25 Histórico 1987, VPL Research Inc, empresa fundada Zimmernam colocou pela primeira vez produtos de realidade virtual no mercado com a comercialização da luva "Data Glove” e do capacete "Eye Phones". 26 Histórico no Brasil Primeiro grupo de Pesquisas em RV no Brasil foi criado em 1995 pelo Prof. Claudio Kirner na UFSCar. Primeiro Congresso em 1997. Hoje existem em torno de 25 grupos no Brasil. 27 Conceitos Básicos de RV 28 Imersão Sensação de “estar dentro” do ambiente Obtida por meio do uso de: Capacetes Óculos Estereoscópicos Cavernas Digitais (CAVE) Obs: Um Ambiente Virtual pode ser não imersivo também!! 29 Interação Capacidade do computador detectar as entradas do usuário e modificar instantaneamente o mundo virtual e as ações sobre ele. Obtida por meio de: Objetos 3D simulados, sons, luvas, rastreadores, joysticks, mouse, teclado, dispositivos de tato e força. 30 Envolvimento Grau de motivação Pode ser: Passivo: Ler um livro, assistir TV Ativo: Participar de um jogo com algum parceiro 31 Outros conceitos relacionados 32 Imersão - Estereoscopia É o nome dado a técnica ou ao conjunto de técnicas utilizadas para a simulação do mecanismo biológico humano de visualização Do grego: “stereos” + “skopein” “sólido” ou “relevo” “olhar” ou “ver” 33 Estereoscopia 34 Avatar O termo avatar é oriundo do sânscrito (avatãr) e na teogonia indiana significa cada uma das encarnações de um deus, especialmente de Vixnu. É usado para representar um humano virtual controlado pelo usuário. A representação destes humanos sintéticos pode ser feita através de ícones 2D, filmes, formas 3D ou até corpos 3D completos 35 Avatares - Exemplos 36 Exemplos 37 Exemplos 38 Exemplos 39 6 Graus de Liberdade (6DOF) Objetos podem se movimentar (translação): Para frente ou para trás (eixo X) Para cima ou para baixo (eixo Y) Para esquerda ou direita (eixo Z) Também podem girar ao redor desses eixos principais (rotação): Roll (rotação ao redor de X) Yaw (rotação ao redor de Y) Pitch (rotação ao redor de Z) 40 RV - Classificações 41 Classificações São várias as formas pelas quais um AV pode ser classificado: Modelo de participação do usuário e; Grau de imersão proporcionado usuário. ao 42 Modelo de participação De acordo com o modelo de interação, RV pode ser classificada em: Passiva; Exploratória e; Interativa. 43 Passiva Permite ao usuário somente a exploração pré-definida, sem a possibilidade de interferência. A rota e o ponto de vista é controlado pelo software. 44 Exploratória O usuário tem a liberdade de escolher a rota e o ponto de vista, entretanto não tem liberdade para interação com o ambiente. 45 Interativa Oferece todas as possibilidades que eram restritas nas participações passiva e exploratória. O usuário tem liberdade de escolher rota, ponto de vista e interagir com os objetos do ambiente. 46 Grau de Imersão Sob o grau de imersão, a RV pode ainda ser classificada em: RV de Simulação; RV de Projeção; Displays Visualmente Casados (Visually Coupled Displays ); RV de Mesa (Desktop VR) 47 RV de Simulação Representa o tipo mais antigo de sistema de RV; Originou-se com os simuladores de vôo desenvolvidos pelos militares americanos depois da Segunda Guerra Mundial. Os jogos simuladores são exemplos dessa classificação. 48 RV de Projeção Também conhecida como Realidade Artificial . Foi criada nos anos 70 por Myron Krueger. Na RV de Projeção o usuário está fora do mundo virtual, mas pode se comunicar com personagens ou objetos dentro dele. 49 Displays Visualmente Casados Ligada ao uso de equipamentos onde as imagens são exibidas diretamente ao usuário como por exemplo, headmounted displays (HMDs). É o modelo mais relacionado a RV imersiva. 50 RV de Mesa Ao invés do uso de head-mounted displays (HMDs), são utilizados grandes monitores ou algum sistema de projeção para apresentação do mundo virtual. É o modelo mais relacionado a RV não imersiva. 51 Exemplo - Vídeo 52 Caracterização da Realidade Aumentada (RA) 53 Realidade Aumentada De acordo com Azuma (1997), a RA é uma variação da RV. A RA permite que o usuário visualize os objetos virtuais sobrepostos ou compondo com o mundo real. RA é também pode ser considerada uma melhoria do ambiente real com textos, imagens e objetos virtuais gerados por computador. 54 Realidade Aumentada Em termos de interface, a RA se diferencia da RV por aumentar a percepção do usuário e conseqüentemente contribuir para que a interação seja mais intuitiva. 55 Pequena Comparação RV Ambiente totalmente gerado por computador RA Visa enriquecer o ambiente real com objetos virtuais A sensação visual é O usuário tem o sentido de controlada pelo computador presença no ambiente real É preciso um dispositivo para proporcionar a imersão. É necessário um dispositivo para combinar o real com o virtual 56 Exemplo - Vídeo 57 Dispositivos não convencionais 58 Dispositivos ? 59 Dispositivos Não-Convencionais Capacetes Luvas (gloves) Óculos Estereoscópicos Cavernas Digitais (CAVEs) See-through Displays Workbenchs Spaceballs Joysticks... 60 Capacetes HMD (head-mounted display) Óculos ou capacetes com pequenos monitores que emitem imagens, posicionando cada monitor diante de cada olho do usuário. 61 Capacetes Geração de imagens diretamente nos olhos Proporciona a imersão 62 Capacetes 63 64 HMD- Head Mounted Display Video display 65 Capacetes Possíveis problemas: Fadiga; Náuseas; Mobilidade (se não for wireless). 66 Head-mounted see-through 67 Óculos Estereoscópicos Proporciona visão “saltada” da tela Técnicas: Geração de uma imagem para cada olho Sobreposição de cores (anaglifos) 68 Head-up carro 69 Head-up avião 70 Luvas Possibilita o aparecimento de uma “mão virtual” dentro do ambiente Feedback: quente, frio, peso. 71 Cyber Glove 72 73 Luvas Para dar mais realismo, algumas luvas procuram estimular as sensações físicas, como o tato, tensão muscular e temperatura, sendo entendidos como: Feedback tátil; Feedback de força; Feedback térmico. 74 Feedback tátil Transmitem sensações que atuam sobre a pele. Visam fornecer sensação do toque. A simulação tátil pode ser alcançada por meio de pressão de ar e por meio de vibrações. 75 Feedback de força Permitem as sensações de pressão ou peso, por meio de uma espécie de exoesqueleto mecânico que oferece alguma resistência ao braço e/ou a mão do usuário. 76 CyberGrasp 77 78 Feedback térmico Usado para oferecer sensação de quente/frio. Tem custo alto e ainda não é muito evoluído. 79 Cavernas Digitais CAVE (Cave Automatic Virtual Enviroment) É um sistema complexo de realidade virtual que permite que simulações tridimensionais realizadas em computador sejam exibidas ampliadas em tamanho próximo do natural. 80 Cavernas Digitais A primeira Caverna Digital foi desenvolvida em 1991, na Universidade de Ilinois, em Chicago. Existe cerca de 160 cavernas digitais espalhadas pelo mundo (1 na escola Politécnica da USP em São Paulo). 81 Cavernas Digitais É uma sala composta por três, quatro ou cinco paredes medindo 3 X 3 metros, onde o sistema realiza a multiprojeção nas paredes internas por meio de supercomputadores que geram imagens 3D com resolução superior a 2000 X 2000 pixels. 82 Cavernas Digitais 83 Cavernas Digitais 84 Workbenchs Mesa onde imagens são projetadas Também utilizada em conjunto com capacete e luva. 85 86 ImmersaDesk 87 Vídeo 88 Spaceballs Mouse que capta os movimentos no espaço. 89 Mouses e Joysticks Mouses 3D possuem a capacidade de movimentação não apenas em um plano!! 90 Magellan 91 Workwall 92 93 Dispositivos Hápticos Estimular sensações como o tato, tensão muscular e temperatura. Úteis em simulações em que não existe informação visual 94 Dispositivos Hápticos 95 Phanton 96 Dispositivos de Rastreamento (tracking) Utilizam técnicas eletromagnéticas, ultrassônicas, mecânicas ou óticas para o cálculo de posição ou orientação em relação a um ponto ou estado de referência. 97 Dispositivos de Rastreamento 98 Linguagens, Bibliotecas e Ferramentas 99 Linguagens, Bibliotecas e Ferramentas Existem várias possibilidades. Escolha depende principalmente da finalidade da aplicação a ser desenvolvida. 100 OpenGL Open Graphics Library É uma biblioteca gráfica de baixo nível, que oferece ao desenvolvedor um pequeno conjunto de primitivas geométricas. Linguagens de programação C/C++ como base. 101 OpenGL Se compõe de duas bibliotecas: Opengl32.lib ou libGL.so e; Arquivos com configurações do driver da placa de vídeo. OpenGL Utility Library. Pode ser glu32.lib, libGLU.so ou libMesaGLU.so Oferece funções para o desenvolvimento de aplicações. 102 OpenGL Pró Controle detalhado dos mecanismos de renderização. Contra Complexidade. 103 Um exemplo Fonte: http://www.neilturner.me.uk/2006/May/08/i_predict_a_teapot.html 104 VRML - Virtual Reality Modeling Language A última versão da VRML foi padronizada pela ISO (ISO/IEC 14772:1997) É uma linguagem geral para a descrição de cenas 3D, usando uma grande quantidade de nós gráficos preestabelecidos. Nós são organizados em uma estrutura hierárquica denominada grafo de cena. 105 VRML Prós Facilidade de desenvolvimento Gratuidade Contras Sem atualizações 106 Exemplo de Código #VRML V2.0 utf8 Shape { appearance Appearance { material Material { } } geometry Box { size 2.0 2.0 2.0 } } 107 Um exemplo mais elaborado 108 X3D Padronizado (ISO/IEC 19775:2004). Tido como o sucessor da VRML Sua principal característica é a capacidade de codificar a cena usando a sintaxe da XML (eXtensible Markup Language). 109 Um exemplo http://www.bitmanagement.com/documents/XML_com%20Extensible%203D%20XML%20Meets%20VRML%20%5BAug_%2006,%202003%5D.htm 110 Java 3D API inicialmente desenvolvida pela Sun Microsystems com o objetivo de ser uma interface para o desenvolvimento e apresentação de programas em Java com conteúdo tridimensional. Também estruturada em grafo de cena. 111 Java 3D Prós Implementação somente em Java; Suporte para aplicações distribuídas; O modelo de grafo de cena facilita o entendimento, o reuso, o desenvolvimento e a manutenção da aplicação; Suporte para dispositivos não convencionais; Abstração dos mecanismos de renderização; 112 Java 3D Contras: Algumas características oferecidas por linguagens gráficas mais apuradas como OpenGL podem não ser alcançadas em Java 3D. A abstração dos mecanismos de renderização também pode não ser desejável. O coletor automático de lixo de Java pode depreciar o desempenho da cena. A distribuição da aplicação para os usuários pode tornar-se difícil. 113 Exemplo de código import com.sun.j3d.utils.universe.SimpleUniverse; import com.sun.j3d.utils.geometry.ColorCube; import javax.media.j3d.BranchGroup; public class Hello3d { public Hello3d(){ SimpleUniverse universo = new SimpleUniverse(); BranchGroup grupo = new BranchGroup(); grupo.addChild(new ColorCube(0.3)); universo.getViewingPlatform().setNominalViewingTransform(); universo.addBranchGraph(grupo); } public static void main( String[] args ) { new Hello3d(); } } 114 Um exemplo 115 ARToolkit Biblioteca de software da linguagem C e C++ sob responsabilidade da Universidade de Osaka, no Japão, apoiada pelo Human Interface Technology Laboratory (HITLab) da Universidade de Washington, nos Estados Unidos e pelo HITLabNZ na Universidade de Canterbury, na Nova Zelândia 116 ARToolkit Oferece um conjunto de funções que realizam algumas das tarefas mais complexas das aplicações de RA. Distribuída livremente para fins não comerciais sob a licença GNU É suportado por várias plataformas Possui uma excelente documentação e; É utilizada em conjunto com alguns softwares gráficos. 117 ARToolkit - Funcionamento 118 Exemplos 119 Aplicações 120 Aplicações... Pode ser aplicada em praticamente qualquer área do conhecimento: Medicina Ensino Simulação Visualização de dados Jogos e Entretenimento... 121 Turismo 122 Indústria 123 Indústria da Construção 124 Visualização 125 Visualização 126 Visualização 127 Simulações 128 Entretenimento 129 Treinamento 130 Treinamento 131 Treinamento 132 Treinamento 133 Auditórios virtuais 134 Sistemas de Manutenção 135 Exemplos Laboratório Virtual de Química 136 137 Exemplos Geração de Estruturas de Feto 138 139 Exemplos Sistema LIBRAS 140 Colocar Figura 141 Exemplos Sistema de Rastreamento com Realidade Aumentada 142 143 Demos... 144 The invisible train 145 Race Simulator 146 Intraoperative Augmented Reality Applied To Laparoscopic Right Adrenalectom 147 Tangible Augmented Reality Interface for Eletronic Music 148 Handheld Augmented Reality 149 ARMouse 150 ARKeyboard 151 RV Border Guards Com quicktime 152 Futuro: Hiper Realidade Perguntas? 154 Realidade Misturada José Remo F. Brega Ildeberto A. Rodello Antonio Carlos Sementille Silvio Ricardo Rodrigues Sanches 155