ARToolkit

30
ARToolkit ARToolkit André Braga (ab2) André Braga (ab2) Alysson Feitoza Alysson Feitoza (afs5) (afs5) Danilo Lima (dlv) Danilo Lima (dlv) Felipe Franco Felipe Franco (fanf) (fanf) Felipe Ebert (fe) Felipe Ebert (fe) Igor Goes (igp) Igor Goes (igp) Patrícia Lustosa Patrícia Lustosa (plvr) (plvr)

description

ARToolkit. André Braga (ab2) Alysson Feitoza (afs5) Danilo Lima (dlv) Felipe Franco (fanf) Felipe Ebert (fe) Igor Goes (igp) Patrícia Lustosa (plvr). Roteiro. Introdução Realidade Aumentada História Funcionamento Calibração da Câmera Framework Desenvolvendo uma aplicação Exercícios. - PowerPoint PPT Presentation

Transcript of ARToolkit

Page 1: ARToolkit

ARToolkitARToolkit

André Braga (ab2)André Braga (ab2)Alysson Feitoza (afs5)Alysson Feitoza (afs5)

Danilo Lima (dlv)Danilo Lima (dlv)Felipe Franco (fanf)Felipe Franco (fanf)

Felipe Ebert (fe)Felipe Ebert (fe)Igor Goes (igp)Igor Goes (igp)

Patrícia Lustosa (plvr)Patrícia Lustosa (plvr)

Page 2: ARToolkit

RoteiroRoteiro

IntroduçãoIntrodução Realidade AumentadaRealidade Aumentada HistóriaHistória FuncionamentoFuncionamento Calibração da CâmeraCalibração da Câmera FrameworkFramework Desenvolvendo uma aplicaçãoDesenvolvendo uma aplicação ExercíciosExercícios

Page 3: ARToolkit

IntroduçãoIntrodução

ARToolkit é uma biblioteca de suporte a ARToolkit é uma biblioteca de suporte a aplicações de RA desenvolvidas em C e aplicações de RA desenvolvidas em C e C++.C++.

Objetivo de incluir elementos virtuais no Objetivo de incluir elementos virtuais no mundo real dentro da perspectiva de mundo real dentro da perspectiva de algum usuário .algum usuário .

Page 4: ARToolkit

Realidade AumentadaRealidade Aumentada

É uma tecnologia de sobreposição de É uma tecnologia de sobreposição de elementos gerados pelo computador no elementos gerados pelo computador no mundo real.mundo real.

Objetiva aumentar a quantidade e Objetiva aumentar a quantidade e qualidade das informações do ambiente.qualidade das informações do ambiente.

Duas tecnologias: Duas tecnologias: Video See ThroughVideo See Through e e Optical See ThroughOptical See Through. .

Page 5: ARToolkit

Realidade AumentadaRealidade Aumentada

Limitações:Limitações: Objetos só são exibidos depois que os Objetos só são exibidos depois que os

marcadores forem rastreados, isso limita o marcadores forem rastreados, isso limita o tamanho e movimento dos objetos virtuais.tamanho e movimento dos objetos virtuais.

Marcadores não podem ser muito inclinados.Marcadores não podem ser muito inclinados. Marcadores grandes: mais fácil de perceber, Marcadores grandes: mais fácil de perceber,

porém difícil de enquadrar.porém difícil de enquadrar.

Page 6: ARToolkit

Realidade AumentadaRealidade Aumentada

Video See ThroughVideo See Through

Page 7: ARToolkit

Realidade AumentadaRealidade Aumentada

Optical See ThroughOptical See Through

Page 8: ARToolkit

Realidade AumentadaRealidade Aumentada

Aplicações:Aplicações: The Ambient Wood ProjectThe Ambient Wood Project

Page 9: ARToolkit

Realidade AumentadaRealidade Aumentada

Aplicações:Aplicações: DARPADARPA

A Agência Americana de Projetos de Pesquisa de A Agência Americana de Projetos de Pesquisa de Defesa Avançada (DARPA) criou um projeto de Defesa Avançada (DARPA) criou um projeto de vídeo-capacete (HMD) com um visor que pode ser vídeo-capacete (HMD) com um visor que pode ser acoplado a um sistema de informação portátil.acoplado a um sistema de informação portátil.

Sistema fornece informações úteis aos soldados.Sistema fornece informações úteis aos soldados.

Page 10: ARToolkit

Realidade AumentadaRealidade Aumentada

Aplicações:Aplicações: QuakeQuake

Pesquisador australiano criou um protótipo de jogo Pesquisador australiano criou um protótipo de jogo que combina o famoso jogo que combina o famoso jogo QuakeQuake com realidade com realidade aumentadaaumentada..

O jogo o envolve de tal forma que ele se sente O jogo o envolve de tal forma que ele se sente como se estivesse caminhando pelo campus sendo, como se estivesse caminhando pelo campus sendo, ao mesmo tempo, um personagem do jogo.ao mesmo tempo, um personagem do jogo.

Page 11: ARToolkit

Realidade AumentadaRealidade Aumentada

Aplicações:Aplicações: Ensino de mecânica quânticaEnsino de mecânica quântica

Problema de se ensinar Mecânica Quântica pois Problema de se ensinar Mecânica Quântica pois envolvem conceitos 3D.envolvem conceitos 3D.

Motivados por estas idéias, está sendo Motivados por estas idéias, está sendo desenvolvido, aplicado e avaliado um programa desenvolvido, aplicado e avaliado um programa baseado em realidade aumentada para ajudar no baseado em realidade aumentada para ajudar no estudos dessa matéria.estudos dessa matéria.

Page 12: ARToolkit

Realidade AumentadaRealidade Aumentada

Aplicações:Aplicações: LIRA LIRA (Livro Interativo de RA)(Livro Interativo de RA)

Page 13: ARToolkit

Realidade AumentadaRealidade Aumentada

Aplicações:Aplicações: Engenharia BiomédicaEngenharia Biomédica

Page 14: ARToolkit

HistóriaHistória

Desenvolvido inicialmente pelo Dr. Desenvolvido inicialmente pelo Dr. Hirokazu Kato da Universidade de Osala, Hirokazu Kato da Universidade de Osala, Japão.Japão.

Hoje em dia é mantido pelo Human Hoje em dia é mantido pelo Human Interface Technology Laboratory, na Interface Technology Laboratory, na University of Washington e pelo HIT Lab University of Washington e pelo HIT Lab NZ, na universidade de Canterbury, Nova NZ, na universidade de Canterbury, Nova Zelândia Zelândia

Page 15: ARToolkit

FuncionamentoFuncionamento

Captura da imagem real do vídeo e Captura da imagem real do vídeo e transformação para imagem bináriatransformação para imagem binária

Page 16: ARToolkit

FuncionamentoFuncionamento

Encontra-se todos os quadrados da imagem Encontra-se todos os quadrados da imagem binária e compara-os com os gabaritos pré-binária e compara-os com os gabaritos pré-treinados. Essas regiões são chamados de treinados. Essas regiões são chamados de marcadores.marcadores.

Suas posições são calculadas em relação à Suas posições são calculadas em relação à câmera e são armazenadas numa matriz 3x4.câmera e são armazenadas numa matriz 3x4.

Modelos gráficos são desenhados precisamente Modelos gráficos são desenhados precisamente sobre os marcadoressobre os marcadores

Page 17: ARToolkit

FuncionamentoFuncionamento

Resumo:Resumo:

Page 18: ARToolkit

Calibração de CâmeraCalibração de Câmera

Propriedades default ARToolKit estão contidas Propriedades default ARToolKit estão contidas no arquivo de parâmetros da câmera, no arquivo de parâmetros da câmera, "camera_para.dat“", que é lido sempre que a "camera_para.dat“", que é lido sempre que a aplicação é iniciada.aplicação é iniciada.

Contudo, usando uma técnica de calibração de Contudo, usando uma técnica de calibração de câmera é possível gerar um arquivo de câmera é possível gerar um arquivo de parâmetros para câmeras especificas.parâmetros para câmeras especificas.

Page 19: ARToolkit

Calibração de CâmeraCalibração de Câmera

Processo:Processo: Impressão dos arquivos de padrões de calibração: Impressão dos arquivos de padrões de calibração:

"calib_cpara.pdf" e "calib_dist.pdf"."calib_cpara.pdf" e "calib_dist.pdf". Eles deverão ser colados separadamente em algum Eles deverão ser colados separadamente em algum

material plano e rígido, tais como dois pedaços de material plano e rígido, tais como dois pedaços de papelãopapelão

Page 20: ARToolkit

Calibração de CâmeraCalibração de Câmera

As figuras (a) e (b) mostram estes padrões como vistos pelas lentes das câmeras.

Page 21: ARToolkit

Calibração de CâmeraCalibração de Câmera

Principais propriedades de câmera que devem Principais propriedades de câmera que devem ser extraídas:ser extraídas: O ponto central da imagem da câmeraO ponto central da imagem da câmera As distorções da lenteAs distorções da lente A distância focal da câmeraA distância focal da câmera

Essas propriedades são extraídas com o auxílio Essas propriedades são extraídas com o auxílio de dois programas:de dois programas: calib_dist calib_dist calib_paramcalib_param

Page 22: ARToolkit

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)

Page 23: ARToolkit

FrameworkFramework

Arquitetura:Arquitetura:

Page 24: ARToolkit

FrameworkFramework

Estrutura interna:Estrutura interna: Módulo de Realidade Aumentada: módulo Módulo de Realidade Aumentada: módulo

principal com rotinas para rastreamento de principal com rotinas para rastreamento de marcadores e calibração.marcadores e calibração.

Módulo de Vídeo: uma coleção de rotinas de Módulo de Vídeo: uma coleção de rotinas de vídeos para capturar os frames do vídeo de vídeos para capturar os frames do vídeo de entrada.entrada.

Módulo Gsub: uma coleção de rotinas gráficas Módulo Gsub: uma coleção de rotinas gráficas baseadas em OpenGL e GLUT.baseadas em OpenGL e GLUT.

Módulo Gsub_Lite: substitui Gsub com uma Módulo Gsub_Lite: substitui Gsub com uma coleção de rotinas gráficas mais eficientes, coleção de rotinas gráficas mais eficientes, independente do sistema de janelas.independente do sistema de janelas.

Page 25: ARToolkit

FrameworkFramework

Estrutura interna:Estrutura interna:

Estrutura interna com Gsub

Estrutura interna com Gsub_Lite

Page 26: ARToolkit

Desenvolvendo uma aplicação

Executar um vídeo avi contendo os marcadores hiro e adicionar objetos gráficos ao vídeo em tempo de execução.

Page 27: ARToolkit

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;

Page 28: ARToolkit

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;

Page 29: ARToolkit

Desenvolvendo uma aplicação

Passo Seis:

- Fechar a entrada de vídeo.

Page 30: ARToolkit

Exercício

Modificar o código SimpleTest.c para que ele passe a ler os marcadores hiro e kanji, ao mesmo tempo, e exibam sob os marcadores um cone e um quadrado, respectivamente.