Profª Marta Becker Villamil

Slides:



Advertisements
Apresentações semelhantes
Capitulo 6: Entrada e Saída
Advertisements

Augusto NevesJoão CarlosRodrigo Paula Linguagem de Programação C++ Componentes do Grupo.
Redes de computadores I
DCA-0114 Computação Gráfica
Entrada e Saída Introdução.
Projeto conceitual Mostra ao cliente exatamente o que o sistema fará
Realidade Aumentada (RA) Aline de Oliveira Machado Márcio Cerqueira de Farias Macedo INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA BAHIA Análise.
Rational Unified Process(RUP)
JOGOS.
Processos no Unix e Linux
COMPUTAÇÃO GRÁFICA.
Captura de Texto em um Quadro Branco
Concepts and Capabilities
Paulo Sérgio Rodrigues PEL205
Análise e Projeto de Sistemas
Threads.
Professor Fernando Luís
“Simulação de dispositivos dinâmicos para jogos”
DIAGRAMA DE COMPONENTES
Revisão de Conceitos Básicos Hardware (Parte 1)
JAVA: Conceitos Iniciais
Projetar Serviços Vítor Braga –
Princípios de Orientação à Objetos
PCS - Departamento de Engenharia de Computação e Sistemas Digitais Projeto de Formatura – Turmas 2008 Integrantes: Anderson José Perottoni Fernando Y.
Linguagem de Programação C#
RECONSTRUÇÃO 3D Equipe: Amora Cristina (acat) Anália Lima (alc5)
SISTEMAS OPERACIONAIS
Sistemas Operacionais
APLICANDO OPENGL COM ARTOOLKIT EM JOGOS DE LABIRINTO
MapReduce Conceitos e Aplicações
Análise e Projeto de Sistemas
Faculdade de Tecnologia SENAC Pelotas
Professor: Márcio Amador
Sistemas Operacionais
Banco de Dados Aplicado ao Desenvolvimento de Software
O que é? É o processo de investigação técnica com intuito de identificar a qualidade, a segurança e a exatidão do software desenvolvido. A validação do.
Introdução à Informática Conceitos Básicos de Editores de Texto
Projeto Arte, Ciência e Tecnologia
Introdução O que se espera de um sistema de computação?
Decisão #1 Decisão-chaveUtilização de C para desenvolvimento do MCTCore. DriversRNF: O código deve ser escrito na linguagem C. Descrição O sistema legado.
Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,
ARToolkit Ademir José de Carvalho Junior Danilo Cavalcanti Torres
Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.
ARToolkit André Braga (ab2) Alysson Feitoza (afs5) Danilo Lima (dlv)
Adriano Melo Filipe Melo Mateus Araújo Philippe Neves Renato Parente Samuel Arcoverde Wesley Davison.
PLATAFORMAS MULTIMÍDIA
OGRE 3D Open Source Graphics Engine Seminário Introdução à Multimídia.
Realidade Virtual Aula 2 Remis Balaniuk. Enxergando grande, começando pequeno Quem começa a aprender RV normalmente sofre um primeiro impacto negativo.
Aula Prática de ARToolKit
Tarciane Andrade Análise de Casos de Uso Tarciane Andrade
PCS - Departamento de Engenharia de Computação e Sistemas Digitais Projeto de Formatura – Turmas 2009 Integrantes: Professor Orientador: Co-orientador:
Alinhamentos Múltiplos
CloudSim Um framework para modelagem e simulação de infraestrutura e serviços de Computação em Nuvem.
Introdução à multimídia
1 Edgar Marçal de Barros Filho Orientador: Riverson Rios Co-Orientadora: Rossana Andrade Aprendizagem utilizando Dispositivos Móveis com Sistemas de Realidade.
1 Introdução a Multimídia Bruno D’Ambrosio - bgda Cyrus Dias – cds Diego César – dcfq Diogo Severo – dss2 Flávia Chaves – frcc Thiago Carvalho – tjcps.
Prof. Wallace Borges Cristo
Módulo II Capítulo 1: Orientação a Objetos
Fundamentos da Animação Gráfica Prof° Ms. Claudio Benossi
Sistemas de Informação Inteligentes Aula 1 Nadilma Nunes
Pré-Projeto Multimídia
Influencias sobre o Projeto da Linguagem
Capítulo 5 Entrada/Saída 5.1 Princípios do hardware de E/S
Desenvolvimento WEB II Ajax – Utilização de Frameworks Javascript Professora: Kelly de Paula Cunha.
Proposta de trabalho: Rastreamento da movimentação de uma câmera.
ARToolkit Equipe: David Emannuel – desc Phillip Cesar – pcas Rodrigo Siqueira – rss4 Yuri Pereira - ycssp.
COMPILADORES 02 Prof. Marcos. COMPILADORES Do Programa à Execução Computadores das mais variadas arquiteturas têm funcionamento:
1 Computação Gráfica Prof. Dr. Júlio C. Klafke UNIP-Objetivo
OpenCL Eliane Siegert. Estrutura – Princípio Geral de Funcionamento – Exemplos de Aplicações – Modelo de Programação – Linguagens Suportadas – Exemplos.
Transcrição da apresentação:

Profª Marta Becker Villamil Realidade Aumentada Profª Marta Becker Villamil Outubro de 2011

Avisos!!! Grau B A Proposta Uma aplicação interativa usando RA Mais de um marcador Interação com os marcadores Diferentes disposições, ou diferentes marcadores disparam eventos, como: Animações (md2) Novos modelos Modelos incrementados Pensar na ideia e apresentar no dia (11/11) 1 ponto

Avisos!!! Grau B A Implementação Implementar o que foi proposto Em aula, veremos como funciona o AR Toolkit No entanto, o aluno é livre para escolher a plataforma de desenvolvimento, desde que possa ser realizado em laboratório (durante as aulas) Ao fim de cada aula de laboratório, mostrar o andamento para o professor Vinícius 1,0 ponto O que não der tempo de fazer em aula, fazer em casa

Avisos!!! Grau B O Relatório 3 pontos O que escrever no artigo? (Seções) Introduzir o problema (que jogo, idéia geral) Explicar o modelo (etapas de como se resolve o problema) Detalhes relevantes sobre a implementação do modelo (protótipo) e gameplay Mostrar os resultados (screenshots, algum dado coletado) Considerações finais (ressaltar os pontos fortes, relatar problemas encontrados) e trabalhos futuros (como poderia ser melhorado) É muito importante saber documentar os projetos, vocês precisarão disso a vida inteira!

Realidade Aumentada O que é? É uma variação da Realidade Virtual convencional Combina objetos do mundo real com objetos do mundo virtual Implica em interatividade em tempo real Meio termo entre Telepresença e Ambientes Colaborativos

Realidade Aumentada Para que serve? Amplia a percepção do usuário Pode mostrar ao usuário informações que não estão presentes no mundo real Ex.: “sixt-sense” – informação adicional sobre um produto Auxilia usuários a fazer tarefas reais Ex.: dirigir

Realidade Aumentada Como funciona? Três componentes básicos são necessários para a existência da Realidade Aumentada:  Objeto real com algum tipo de marca de referência, que possibilite a interpretação e criação do objeto virtual; Câmera ou dispositivo capaz de transmitir a imagem do objeto real; Software capaz de interpretar o sinal transmitido pela câmera ou dispositivo.

RA – Como funciona? O processo de formação do objeto virtual Coloca-se o objeto real em frente à câmera, para que ela capte a imagem e transmita ao equipamento que fará a interpretação. A câmera “enxerga” o objeto e manda as imagens, em tempo real, para o software que gerará o objeto virtual. O software já estará programado para retornar determinado objeto virtual, dependendo do objeto real que for mostrado à câmera. O dispositivo de saída (que pode ser uma televisão ou monitor de computador) exibe o objeto virtual em sobreposição ao real, como se ambos fossem uma coisa só.

RA – Exemplos!!!

ARToolkit

O que é ARToolkit ? É uma biblioteca de programação para o desenvolvimento de aplicações de realidade aumentada Utiliza técnicas de visão computacional para calcular precisamente a posição e orientação da câmera relativa a um marcador em tempo-real

Características Open Source C/C++ Suporte à OpenGL e VRML

Aplicações Objetos virtuais aparecem sobre os marcadores

Aplicações Interação entre objetos: colocando-se dois marcadores próximos um do outro, na ordem correta, eles serão juntados.

Aplicações Interação usando propriedades dos marcadores. Quando ele é pressionado, aciona-se o scroll.

Aplicações Sobreposição de informações

Como funciona ? PASSO 1: A imagem real de vídeo é transformada em imagem binária. Imagem Real (Input Video) Imagem Binária Capturada

Como funciona ? PASSO 2: Encontra-se todos os quadrados da imagem binária e compara-os com os gabaritos pré-treinados. Essas regiões são chamados de marcadores. Suas posições são calculadas em relação à câmera e são armazenadas numa matriz 3x4. PASSO 3: Os símbolos contidos nos marcadores são mapeados como templates na memória. PASSO 4: Modelos gráficos são desenhados precisamente sobre os marcadores

Como Funciona ? PASSO 4: A posição dos marcadores é usada para alinhar os objetos 3D PASSO 5: Os objetos virtuais serão desenhados no video frame

Como funciona ?

Desenvolvendo... Library C++ http://www.hitl.washington.edu/artoolkit/ http://www.hitl.washington.edu/artoolkit/documentatio n/devstartup.htm http://www.hitl.washington.edu/artoolkit/documentatio n/devmulti.htm 

Desenvolvendo... Pacote Core Pacote Util Pacote VideoInput Núcleo da lib detectMarker() Pacote Util Classes que encapsulam patterns Pacote VideoInput Responsável pela “imageSource” Responsável pelo Buffer

Desenvolvendo... Pacote videoInput.videoCapturing Classes responsáveis pela captura de vídeo usando DirectX no windows

Calibração de Câmera Propriedades default ARToolKit estão contidas no arquivo de parâmetros da câmera, "camera_para.dat“", que é lido sempre que a aplicação é iniciada. Contudo, usando uma técnica de calibração de câmera é possível gerar um arquivo de parâmetros para câmeras específicas.

Calibração de Câmera Processo: Impressão dos arquivos de padrões de calibração: "calib_cpara.pdf" e "calib_dist.pdf". Eles deverão ser colados separadamente em algum material plano e rígido, tais como dois pedaços de papelão

Calibração de Câmera As figuras (a) e (b) mostram estes padrões como vistos pelas lentes das câmeras.

Calibração de Câmera Principais propriedades de câmera que devem ser extraídas: O ponto central da imagem da câmera As distorções da lente A distância focal da câmera Essas propriedades são extraídas com o auxílio de dois programas: calib_dist calib_param

Framework Biblioteca escrita em C/C++ Plataformas Linux, Windows e Mac OS Usa técnicas de visão computacional Suporta VRML Open Source (licença GPL)

Framework Arquitetura:

Framework Estrutura interna: Módulo de Realidade Aumentada: módulo principal com rotinas para rastreamento de marcadores e calibração. Módulo de Vídeo: uma coleção de rotinas de vídeos para capturar os frames do vídeo de entrada. Módulo Gsub: uma coleção de rotinas gráficas baseadas em OpenGL e GLUT. Módulo Gsub_Lite: substitui Gsub com uma coleção de rotinas gráficas mais eficientes, independente do sistema de janelas.

Framework Estrutura interna: Estrutura interna com Gsub Estrutura interna com Gsub_Lite

Desenvolvendo uma aplicação Uma aplicação em artoolkit deve seguir os seguintes passos: Passo Um: Inicializar o caminho dos parâmetros de vídeo; Ler os arquivos de padrões de marcadores; Ler os parâmetros de câmera; Passo Dois: Capturar uma quadro da entrada de vídeo;

Desenvolvendo uma aplicação Passo Três: Detectar os marcadores e reconhecer os padrões no quadro capturado da entrada de vídeo; Passo Quatro: Calcular a transformação da câmera em relação aos padrões detectados; Passo Cinco: Desenhar os objetos virtuais nos padrões detectados; Passo Seis: Fechar a entrada de vídeo.

Bibliotecas Baseadas no ARToolkit Irrlicht - http://sourceforge.net/projects/irrar/ OGRE3D - http://www.ogre3d.org/forums/viewtopic.php?t=22584 OSGart - http://www.osgart.org/ Flash/AS3 - http://space.geocities.jp/flashr0d/artoolkit.html http://www.libspark.org/wiki/saqoosha/FLARToolKit/en Java - http://sourceforge.net/projects/jartoolkit NyARToolkit (Java, C#, Android, SilverLight4) - http://nyatla.jp/nyartoolkit/wiki/index.php?FrontPage.en

OSGART A biblioteca OSGART facilita o desenvolvimento de aplicações de Realidade Aumentada, ela combina as funções de detecção e rastreamento de marcadores do ARToolKit com as funções para construção de modelos virtuais da biblioteca OpenSceneGraph. A OSGART apresenta alta qualidade na renderização dos objetos virtuais e permite a importação e exportação de arquivos gerados pelo 3D Studio Max e Maya.

OSGART Dentre as características da OSGART, as que mais se destacam são: a facilidade de integração com vídeos; suporte a várias entradas de vídeo; suporte a técnicas de renderização de sombras; suporte a diferentes tecnologias de tracking (artoolkit, artoolkit++, arttag, bazar, etc.) suporte a múltiplos marcadores; orientado a objeto e possui suporte a várias linguagens de programação. http://www.osgart.org http://www.artoolworks.com

Avisos!!! Grau B A Proposta Uma aplicação interativa usando RA Mais de um marcador Interação com os marcadores Diferentes disposições, ou diferentes marcadores disparam eventos, como: Animações (md2) Novos modelos Modelos incrementados

Avisos!!! Grau B O Relatório O que escrever no artigo? (Seções) Introduzir o problema (que jogo, idéia geral) Explicar o modelo (etapas de como se resolve o problema) Detalhes relevantes sobre a implementação do modelo (protótipo) e gameplay Mostrar os resultados (screenshots, algum dado coletado) Considerações finais (ressaltar os pontos fortes, relatar problemas encontrados) e trabalhos futuros (como poderia ser melhorado) É muito importante saber documentar os projetos, vocês precisarão disso a vida inteira!