Top Banner
Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml
38

Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Apr 07, 2016

Download

Documents

Giulia Borge
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Equipe:Alan José de Moura

Alana BritoAna Cecília Martins

Marcelo CostaMaria Marcela Meira Lins

Onde achar a apresentação: www/~mmsml

Page 2: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Um pouco sobre a Realidade Aumentada

Um pouco sobre o ARToolKit Ferramentas necessárias Processos de desenvolvimento de

aplicação utilizando ARToolKit Exemplos

Page 3: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.
Page 4: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Enriquecimento do real com o virtual Presença do mundo real (não há

imersão total no mundo virtual) Uso de marcadores. Ou não (MAR).

Page 5: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Tecnologia ainda em pleno desenvolvimento, ganhando espaço e com grandes perspectivas

Tecnologia que se adapta a nossa maneira natural de interação

Ao invés de mudar nossa maneira de ver o mundo, ela acrescenta.

Page 6: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Biblioteca para construção de aplicativos baseados em Realidade Aumentada (baseada em marcadores!)

Desenvolvida em C/C++

Page 7: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.
Page 8: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Possibilita a utilização de uma ou mais câmeras para captura da imagem

Fácil calibragem de Câmera Reconhecimento de múltiplos

marcadores Compatível com diversos Sistemas

Operacionais Distribuída com código fonte completo

Page 9: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Ambiente de Desenvolvimento das linguagens C e C++ (e.g. Microsoft Visual Studio)

Entrada de Vídeo (WebCam) Biblioteca para comunicação com a

entrada de vídeo (DSVideoLib) Para sintetizar as imagens: Glut e

OpenGL Para compatibilidade entre câmeras e

placas de aquisição de vídeo: DirectX Runtime

Page 10: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.
Page 11: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.
Page 12: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Inicialização

1. Inicializações do glut e OpenGL2. Abrir um input de vídeo3. Armazenar tamanho do vídeo capturado4. Carregar os parâmetros intrínsecos da câmera (retorno do passo de calibragem)5. Modificar o tamanho do vídeo nos parâmetros da câmera6. Inicializar os parâmetros da câmera (especificados da estrutura de parâmetros da câmera)7. Carregar o bitmap do marcador especificado como parâmetro8. Inicializar a biblioteca gsub

arVideoOpen

arVideoInqSize

arParamLoad

arParamChangeSize

arInitCParam

arLoadPatt

argInit()

Page 13: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Loop Principal

1. Captura um frame de vídeo2. Define o contexto de renderização (2D ou 3D), definindo uma projeção ortográfica3. Mostra a imagem na tela como um bitmap4. Detecta os marcadores5. Captura próximo frame de vídeo – tal situação só pôde ocorrer porque todas as informações necessárias já foram coletadas

6. Verifica se o objeto deve ou não ser visível7. Realiza as transformações da câmera em relação à posição dos marcadores8. Desenha os objetos virtuais no marcador

arVideoGetImage

argDrawMode2D

argDispImagearDetectMark

er

arVideoCapNext

Vide algoritmo no

exemplo simpleTest.c

arGetTransMat

draw

Page 14: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Finalização

1. Finaliza a captura de vídeo2. Fecha a ligação com a fonte de vídeo3. Fecha a biblioteca gsub

arVideoCapStop

arVideoClose

argCleanup

Page 15: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.
Page 16: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

É desejável saber os parâmetros da câmera para posicionar com mais precisão os objetos virtuais sobre a cena real

Principais propriedades extraídas da calibragem: • distorções de lente, • ponto central da câmera• distância focal da câmera

Técnicas:• Dois passos: maior precisão• Um passo: mais prático

Page 17: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Imprimir a imagem calib_dist.pdf Rodar o exemplo calib_dist.exe Capturar imagem e marca os 24

pontos em ordem Repetir o último procedimento de 5 a

10 vezes em diferentes ângulos Clicar no botão direito do mouse para

calcular Distorsão ESCREVER EM ALGUM CANTO OS

RESULTADOS OBTIDOS

Page 18: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.
Page 19: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Imprimir a imagem calib_cparam.pdf Rodar calib_cparam.exe Capturar imagem e define as linhas

horizontais e verticais seqüencialmente. Repetir o último procedimento 5 vezes,

afastando, a cada interação, a câmera em 10 cm.

Definir o nome do arquivo como camera_para.dat

Substituir o arquivo criado no diretório bin/Data

Page 20: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.
Page 21: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Apenas executa a segunda parte do processo de calibrar em dois passos.

O arquivo usado para a calibragem é o calib_camera2.exe

Page 22: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Edite em um editor de imagens o arquivo blankPatt.gif, localizado no diretório patterns

Crie uma imagem em preto e branco do padrão desejado que caiba no meio deste quadrado, os melhores padrões são assimétricos e sem muitos detalhes

Page 23: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Imprima a imagem Vá para o diretório bin e execute o programa

mk_patt. Entre com o nome do arquivo camera_para.dat

(este é o nome default para o arquivo de parâmetros de câmera)

Page 24: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

O programa abrirá então uma janela de vídeo

Coloque o padrão a ser treinado em uma superfície plana em boas condições de iluminação.

Coloque a câmera de vídeo apontando diretamente para o padrão e vire-o até que um quadrado com dois lados vermelhos e dois lados verdes apareça em torno do padrão

Page 25: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Rotacione a câmera até que os lados vermelhos do quadrado estejam no topo e à esquerda do quadrado na imagem de vídeo

Clique no botão esquerdo do mouse.

Escolha um nome de arquivo para o padrão. é gerada uma imagem em mapa de bits do padrão que é criado e copiado para este arquivo.

Page 26: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

• Outros podem ser treinados simplesmente apontando a câmera para novos padrões e repetindo o processo, ou clicando o botão direito do mouse para sair da aplicação.

• É preciso copiar os novos arquivos de padrões no diretório bin/Data antes de usá-los.

Page 27: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.
Page 28: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

www.cin.ufpe.br/~mmsml Baixar e descompactar o ARToolKit.zip

Quem ficar até o final da aula poderá ganhar uma surpresa!!

Page 29: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Infelizmente, como o computador que vocês estão logados não tem webcams, terão que utilizar um vídeo gravado por nós para realizar os testes.

Execute o vídeo presente no diretório: …\dsvl\media\opa.avi

Page 30: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.
Page 31: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.
Page 32: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.
Page 33: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.
Page 34: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.
Page 35: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Vamos mudar o vídeo usado no simpleTest.

www.cin.ufpe.br/~mmsml

Page 36: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Alterar centro do marcador

Movimentar o objeto virtual sem usar funções OpenGL

Mudar o objeto virtual do marcador

Page 37: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.

Documentação: http://www.hitl.washington.edu/artoolkit/

API: http://artoolkit.sourceforge.net/apidoc/index.html

Page 38: Equipe: Alan José de Moura Alana Brito Ana Cecília Martins Marcelo Costa Maria Marcela Meira Lins Onde achar a apresentação: www/~mmsml.