A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Introdução à multimídia

Apresentações semelhantes


Apresentação em tema: "Introdução à multimídia"— Transcrição da apresentação:

1 Introdução à multimídia
ARToolKit Introdução à multimídia {ajss, agsj, clac, faas, jggxm, lams,

2 Roteiro Princípios da Realidade Aumentada Limitações/problemas da RA
Áreas de aplicação Tecnologias e sistemas de RA O que é ARToolkit? Como surgiu? Processo de desenvolvimento Calibragem da Câmera Arquitetura e pacotes

3 Introdução O que é ARToolkit? O que é RA? O que são marcadores?
Biblioteca open-source para RA com marcadores. O que é RA? Realidade Aumentada Integração de elementos virtuais com o mundo real O que são marcadores? Objetos reais (geralmente cartões) que servem para posicionar os elementos virtuais no mundo real

4 Dois mundos Mundo real Mundo virtual

5 Diagrama realidade/virtualidade
Realidade Misturada Ambiente Real Realidade Aumentada Virtualidade Aumentada Ambiente Virtual

6 Realidade aumentada (RA)
Inserção de objetos virtuais no mundo real Aumento de informações Interação em tempo real

7 Objetivo utópico “Tecnologia que objetiva combinar o mundo real com um mundo interativo gerado-por-computador de modo que pareçam um único ambiente” O usuário, nesta utopia, não consegue distinguir o mundo real do virtualmente aumentado

8 RA versus RV Realidade aumentada Realidade virtual
A imersão no mundo real é total Adicionar informações Aumentar a capacidade de interação A imersão no mundo virtual é total Simular a realidade Dependente da imaginação do usuário

9 Problemas e limitações
Tamanho e movimento dos objetos virtuais Posição e tamanho dos marcadores Defasamento espacial Defasamento temporal Tracking (usuário e objetos móveis) Aparência dos objetos virtuais Vemos bem demais

10 Aplicações em RA Mara (Mobile Augmented Reality Applications)
The Invisible Train Tinmith project Lira (Livro Interativo de Realidade Aumentada) The Ambient Wood Project

11 Aplicações em RA - (Mara)
Projeto desenvolvido pela Nokia com objetivo de colocar aplicações de realidade aumentada por vídeo see-trough, utilizando a câmera de celulares O projeto foi acabado, mas hoje em dia, o Visual Computer User Interface group desenvolve pesquisas nesta área

12 Aplicações em RA - (The Invisible Train)
Aplicação multiusuário que simula a brincadeira de “trenzinho” em palms, utilizando RA através de uma mesa de madeira com marcadores.

13 Aplicações em RA - (Tinmith Project)
Projeto desenvolvido com objetivo de fazer aplicações de RA para ambientes outdoor Constituido de um hardware, o tinmith backpack, e das diversas aplicações

14 Aplicações em RA - (Lira)
Projeto desenvolvido no Brasil com o objetivo de criar um livro interativo Utiliza marcadores no livro e uma webcam, podendo sincronizar sons com a aplicação

15 Aplicações em RA (The Ambient Wood Project)
Projeto desenvolvido com o objetivo de criar uma floresta aumentada, para ajudar no aprendizado de crianças A RA poderia tanto ser inserida em PDA’s carregados pelas crianças, quanto em monitores espalhados pela floresta

16 Tecnologias e sistemas de RA
A maioria das tecnologias desenvolvidas em RA é para ambientes fechados Existem diversos tipos de arquiteturas de sistemas de RA, contudo quatro componentes são comuns a todos: Displays, Sistemas de Tracking, Dispositivos de Interação e Sistemas Gráficos

17 Sistemas Baseados em Monitor
Os objetos virtuais e reais são misturados e exibidos no monitor É bastante utilizada em laboratórios para testar sistemas e exibições de baixo custo

18 Sistemas Baseados em Monitor

19 Sistemas de RA see-trough
São bem mais complexos e passam para o usuário uma sensação de imersão muito maior Esses sistemas são envolvidos na maior parte da pesquisa e desenvolvimento em RA

20 Optical see-trough

21 Optical see-trough

22 Optical see-through O mundo real é processado diretamente pelo olho do usuário Só o canal virtual é processado, isso torna o controle de defasamento com o mundo real mais complexo Vem sendo substituído pelo video see-through

23 Video see-trough

24 Video see-trough

25 Video see-trough Tanto o mundo real quanto o virtual são processados eletronicamente É mais fácil inserir objetos virtuais na cena real Existe um pequeno atraso entre o que é observado pelo usuário e o mundo real

26 Tecnologias de Tracking
“Permite captar a posição, ações e movimentos que o usuário faz no momento da sua interação” Rastreamento Magnético: Utiliza transmissores que emitem campos magnéticos de freqüência baixa e pequenos receptores. A partir dos receptores são determinadas a posição e a orientação relativa do objeto rastreado em relação à fonte magnética. Objetos condutores (metálicos) não podem estar presentes no espaço de rastreamento

27 Tecnologias de Tracking

28 Tecnologias de Tracking
Rastreamento Optico: É implementado com base em técnicas de visão computacional e no uso de sensores ópticos, como câmeras de vídeo, e emissores ou diodos de luz infravermelha. Baseia-se na captura pelas câmeras dos emissores de luz que, após a aplicação de técnicas de visão computacional sobre as imagens capturadas, dão como resultado a posição e orientação dos objetos rastreados no espaço 3D.

29 Tecnologias de Tracking

30 Tecnologias de Tracking
Outras tecnologias de tracking: Rastreamento mecânico Rastreamento acústico Rastreamento inercial Rastreamento Híbrido

31 O que é ARToolkit? ARToolkit é uma biblioteca de software, escrita em C/C++, utilizada para construção de aplicações de Realidade Aumentada Realidade Aumentada é basicamente a imagem real com uma camada de sobreposição (gráfica) virtual Esse modelo de interface tem mostrado potencial para muitas aplicações em pesquisa industrial e acadêmica

32 Breve Histórico O ARToolKit Foi desenvolvido inicialmente pelo Dr. Hirokazu Kato da Universidade de Osala, Japão. Hoje em dia é mantido pelo Laboratório de Tecnologia de Interface Humana, na Universidade de Washington A primeira demonstração de suas funcionalidades foi em 1999, mesmo ano em que foi criado, na conferência da SIGGRAPH Muitas modificações têm sido feitas nos últimos anos, incluindo propriedades como a do ARToolKit ser multiplataforma e a melhora do seus algoritmos de rastreamento. Tais modificações não têm sido feitas somente pelos seus criadores oficiais, H. Kato e M. Billinghurst, mas por toda uma comunidade de utilizadores

33 Plataformas suportadas
Atualmente, o ARToolKit executa nas plataformas SGI Irix, PC Linux, PC Windows 95/98/NT/2000/XP e Mac OS X, com versões separadas para cada uma destas plataformas A funcionalidade de cada versão do kit é a mesma, mas o desempenho pode variar conforme as diferentes configurações de hardware

34 Dificuldades e Soluções
Uma das partes mais trabalhosas no desenvolvimento de uma aplicação em RA é calcular precisamente o ponto de vista do usuário em tempo-real para que imagens virtuais sejam alinhadas com precisão às imagens dos objetos do mundo real O ARToolKit usa técnicas de visão computacional para calcular a posição no espaço real da câmera e sua orientação em relação aos cartões marcadores, permitindo ao programador sobrepor objetos virtuais aos cartões O pacote inclui bibliotecas de rastreamento e disponibiliza o código fonte completo, tornando possível o transporte do código para diversas plataformas ou adaptá-los para resolver as especificidades de suas aplicações

35 Mais... Várias aplicações simples são fornecidas com o ARToolKit para que programadores comecem rapidamente a desenvolver suas aplicações O ARToolKit é livre para uso em aplicações não-comerciais e é distribuído com código aberto

36 Onde encontrar o ARToolkit...
A biblioteca ARToolkit, que atualmente encontra-se na sua versão 2.72, pode ser baixada no seu site oficial, As versões anteriores também podem ser encontradas no site oficial, bem como um FAQ contendo perguntas e respostas valiosas para os desenvolvedores que estão começando a trabalhar com ARToolkit Foi incluída também após a versão 2.68 o suporte a objetos 3D no formato VRML, utilizando a biblioteca auxiliar openVRML

37 IDE´s Suportadas Por se tratar de uma biblioteca desenvolvida em c/c++, qualquer IDE que suporte essa linguagem, e qualquer máquina que possa executá-las, pode servir como ferramenta para a construção de aplicações de ARToolkit Os requisitos básicos de hardware para desenvolver e executar aplicações do ARToolKit são: uma câmera de vídeo e uma interface ou um dispositivo de aquisição de vídeo com seus respectivos drivers

38 Funcionamento do ARToolkit
Após ser capturada, a imagem real é convertida numa imagem binária A busca e a identificação dos marcadores, bem como o posicionamento dos objetos virtuais são feitos levando-se em conta esta imagem binária e sua posição relativa a câmera Imagem binária Objeto virtual sobre o marcador real

39 Etapas do processo (1/5) A imagem real é transformada em imagem binária Busca-se todos os quadrados da imagem e compara-os com os gabaritos Os marcadores são localizados e demais quadrados, descartados

40 Etapas do processo (2/5) As posições dos marcadores são calculadas em relação à câmera

41 Etapas do processo (3/5) Os símbolos dentro dos marcadores são comparados com templates na memória – os marcadores são identificados

42 Etapas do processo (4/5) As posições dos marcadores são usadas para alinhar os objetos 3D

43 Etapas do processo (5/5) Os objetos virtuais são desenhados no video frame E, finalmente, é feito o stream para o usuário

44 Calibração de Câmera As propriedades padronizadas da câmera estão contidas no arquivo “camera_para.dat” , que é lido toda vez que uma aplicação é inicializada. Os parâmetros devem ser suficientes para um grande número de câmeras. Portanto, usando uma técnica de calibração de câmera é possível gerar um arquivo de parâmetros para câmeras especificas.

45 Calibração de Câmera O ARToolKit dispõem de dois métodos para calibração de câmeras: “Two Step Calibration Approach” “One Step Calibration Approach”

46 Calibração de Câmera - Two Step Calibration Approach
Impressão dos arquivos padronizados “calib_cpara.pdf” e “calib_dist.pdf”. Depois de serem impressas, as figuras devem ser coladas em algum material plano e rígido. Fig. 1: calib_cpara.pdf impresso Fig. 2: calib_dist.pdf impresso

47 Calibração de Câmera - Two Step Calibration Approach
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

48 Calibração de Câmera – Usando o calib_dist
A distorção da lente da câmera causa um espaçamento desigual entre os pontos capturados por ela. Ao rodar o programa, será mostrado o vídeo capturado. Devemos posicionar a câmera para visualizarmos todos os pontos e congelar a imagem (clicando no mouse). Devemos clicar com o botão esquerdo do mouse em cada ponto, começando pelo do topo na esquerda. Ao clicar, o ponto será marcado com uma cruz vermelha. Fig. 3: Marcando os pontos

49 Calibração de Câmera – Usando o calib_dist
Depois, devemos realizar mais 5 à 10 vezes o mesmo processo utilizando ângulos e posicionamentos diferentes. Quanto mais imagens utilizarmos, maior será a precisão. Após terminar esta parte da calibração, a seguinte imagem será mostrada: Fig. 4: Dois exemplos de imagens calibradas

50 Calibração de Câmera – Usando o calib_cparam
Ele é utilizado para encontrar a distância focal da lente e outro parâmetros. Ao rodar o programa, a imagem capturada pela câmera será mostrada. A imagem é colocada perpendicularmente em relação à câmera e deve ser totalmente vísivel. Ao clicar com o mouse, uma linha irá aparecer. Devemos marcar todas as linhas. Depois, repetir o mesmo processo para distância maiores. Fig. 5: Passos dessa etapa

51 Calibração de Câmera - One Step Calibration Approach
Está utiliza apenas o mesmo processo mostrado em “calib_dist”, porém usando o executável “calib_camera2”. calib_cparam2 Input the length between each markers: 40 Mouse Button Left : Grab image. Right : Quit Fig. 6: calib_dist.pdf impresso

52 Módulos Modulo RA : módulo principal com rotinas para rastreamento,calibração e coleção de parâmetros . Módulo Video: coleção de rotinas de vídeo para captura de frames (como entrada). Ele é um wrapper para a plataforma standart de Captura de vídeo. Modulo Gsub: uma coleção de rotinas gráficas baseado nas biblioteca do GLUT e OpenGL Módulo Gsub_Lite: substitui GSub com uma coleção de rotinas mais eficientes, independente de qualquer sistema de janelas.

53 FrameWork Arquitetura

54 FrameWork

55 Pipeline principal

56 Fluxo de dados

57 Bibliotecas São 3: libAR.lib libARvideo.lib libARgsub.lib

58 Bibliotecas Bibliotecas adicionadas v2.43 libARvrml.lib
libvrml97core.lib libvrml97js.lib libvrml97gl.lib

59 Considerações Finais Acreditamos que aplicações que utilizam realidade aumentada deverá trazer novos desafios para os pesquisadores e desenvolvedores que desejam aumentar a capacidade do raciocínio humano, utilizando recursos que possam fornecer-lhes mais informações a cerca do mundo ao seu redor A interação com modelos virtuais, em cenas reais, irá enriquecer ainda mais a capacidade do ser humano de tomar decisões, facilitando a realização das tarefas do dia a dia, sem erros significativos de medição ou contextualização

60 ? Dúvidas


Carregar ppt "Introdução à multimídia"

Apresentações semelhantes


Anúncios Google