300 likes | 421 Views
Ademir José de Carvalho Junior Danilo Cavalcanti Torres David Lucena Aragão Ronaldo Ribeiro Marques {ajcj,dct,dllaa,rrm}@cin.ufpe.br. ARToolkit. Roteiro. Realidade Aumentada ARToolkit Funcionamento Framework Limitações Trabalhos Conclusões. Realidade Aumentada.
E N D
Ademir José de Carvalho Junior Danilo Cavalcanti Torres David Lucena Aragão Ronaldo Ribeiro Marques {ajcj,dct,dllaa,rrm}@cin.ufpe.br ARToolkit
Roteiro • Realidade Aumentada • ARToolkit • Funcionamento • Framework • Limitações • Trabalhos • Conclusões
RealidadeAumentada • Área da computação que trabalha com a combinação do mundo real com elementos virtuais gerados por computador. • Mundo real é “aumentado” com a adição de objetos virtuais.
RealidadeAumentada • Aplicações de RA: • Saúde: Cirurgias médicas aumentadas • Militar: Informações extras sobre o ambinete podem ser visualizadas pelo soldado em tempo real.
ARToolkit • Biblioteca para construção de aplicações de Realidade Aumentada • Promove alto nível de abstração, permitindo desenvolvedor focar no objetivo da aplicação
ARToolkit • Primeiramente desenvolvido pelo Dr. Hirokazu Kato da universidade de Osaka, Japão. • Hoje é mantido pelo HITLab(Human Interface Technology Laboratory) na universidade Washington e pelo HITLab NZ na universidade de Catembury, Nova Zelândia
ARToolkit • Escrita em C/C++ • Open-Source • Multi-Plataforma(SGI IRIX, PC Linux, Mac OS X, e PC Windows (95/98/NT/2000/XP)) • Produz aplicações de tempo real • Utiliza algoritmos de Visão Computacional
ARToolkit • Desafio: • Rastreamento exato da visão do usuário em tempo real para alinhar objetos virtuais com os reais • Cálculo da posição e orientação da câmera
ARToolkitFuncionamento • Captura da imagem de entrada • Sequência de imagens da câmera de video • Busca pelos marcadores • As imagens capturadas são convertidas para uma imagem binária para a identificação de padrões (quadrados pretos) • Cálculo da posição/orientação da câmera • Relativas aos quadrados pretos
ARToolkitFuncionamento • Identificação de marcadores • Verifica se o símbolo dos marcador casa com algum padrão na memória. • Inserção de imagens virtuais • Usando transformações 3D, a imagem é orientada e posicionada para ser posta no marcador. • Renderização da imagem final • A imagem é renderizada em cima do marcador
ARToolkitFramework • API C/C++ • Conjunto de funções predefinidas • Portabilidade sem perda de eficiência: • OpenGL • GLUT • Standard API • Biblioteca de Vídeo (Dependente de Hardware)
ARToolkitFramework • Arquitetura:
ARToolkitFramework • Estrutura interna: • AR Module: módulo principal com rotinas de rastreamento de marcadores e calibração. • Video Module: conjunto de rotinas que encapsulam a captura de frames de vídeo padrão • Gsub Module: conjunto de rotinas gráficas baseadas nas bibliotecas OpenGL e GLUT
ARToolkitFramework • Estrutura interna:
ARToolkitFramework • Gsub_Lite Module: substitui o Gsub Module com rotinas gráficas mais eficientes e independentes do sistema de janelas • Gsub Module... Deprecated!
ARToolkitFramework • Metáfora de pipeline: • Video -> Tracking -> Display • Permite fácil troca de módulos
ARToolkitFramework • Inicialização • Inicializa a captura de video, lê os marcadores e os parametros de câmera • Loop principal • Recebe os frames de entrada • Detecta e reconhece os marcadores dos frames • Calcula as transformações de câmera em relação aos marcadores
ARToolkitFramework • Loop principal (cont.) • Desenha os objetos virtuais nos marcadores • Finalização • Encerra a captura dos frames
ARToolkitFramework • Funcionalidades principais: • Biblioteca multiplataforma • Biblioteca de video multiplataforma • Routina simples de calibração • Suporte à Biblioteca Gáfica GLUT • Renderização ágil em OpenGL • Suporte a 3D VRML • API modularizada em C; suporte à JAVA e Matlab
ARToolkitLimitações • Marcadores devem estar sempre e totalmente a mostra, limitando o tamanho e o movimento dos objetos virtuais • Orientação do marcador relativa a câmera • Quanto mais horizontal o marcador, menos visível é o centro da imagem.
ARToolkitLimitações • Condições de iluminação • Deve-se evitar reflexões da luz no marcador • Complexidade do marcador • Figuras simples e não simétricas
ARToolkitTrabalhos • Projetos que o utilizam: • The Black Magic kiosk: Um livro “virtual” • AR Groove: interface musical • 3D-Live: interface de colaboração • Publicações
Conclusões • Desenvolvimento rápido de aplicações de Realidade Aumentada • O alto nível de abstração permite que o programador se preocupe mais com o foco da aplicação • Permite modificações e extensões(Open-Source)
Referências • Site do ARToolkit http://www.hitl.washington.edu/artoolkit/ • Realidade Aumentada – Wikipedia http://en.wikipedia.org/wiki/Augmented_reality • Disciplina de Introdução à Multimídia http://www.cin.ufpe.br/~if687
Exercícios • Abrir o Virtual Camera • Carregar SingleFrame • Abrir o Visual Studio.NET • Abrir o projeto do ARToolkit • Compilar • Rodar o simpleTestd (...\bin) • Rodar o exviewd(...\bin)
Exercícios • Exercício 1 • Explique os passos de funcionamento do ARToolkit, inclusive do ponto de vista de uma aplicação. • Exercício 2 • Altere o exemplo simpleTest para que a aplicação passe a reconhecer os marcadores Hiro e Kanji ao mesmo tempo, exibindo um cone e um cubo respectivamente.
Ademir José de Carvalho Junior Danilo Cavalcanti Torres David Lucena Aragão Ronaldo Ribeiro Marques {ajcj,dct,dllaa,rrm}@cin.ufpe.br ARToolkit