construção de aplicações de realidade cruzada projetiva utilizando openframeworks e arduino
Post on 09-Jun-2015
357 Views
Preview:
DESCRIPTION
TRANSCRIPT
fb.com/RVA.BR 11/05/2014 1 fb.com/RVA.BR
Preâmbulo
Introdução
• oF
• Definições
• Equipamentos
Casos
• Caso 1
• Caso 2
• Caso 3
• Caso 4
Finalização
11/05/2014 fb.com/RVA.BR 2
“The product is no longer the basis of value. The experience
is.”
Venkat Ramaswamy
The Future of Competition
3
Pre
âmb
ulo
11/05/2014 fb.com/RVA.BR
Valor de uma boa experiência
4
Pre
âmb
ulo
11/05/2014 fb.com/RVA.BR
IHC – Interação Homem-Computador
• Estudo da interação entre pessoas e computadores.
• Onde são formadas as experiências.
5
Pre
âmb
ulo
11/05/2014 fb.com/RVA.BR
Mas quem desenvolve experiência?
• UX Developer – User Experience
– A pessoa que caminha entra o design e a tecnologia.
http://blog.alexandremagno.net/2013/02/o-que-seria-um-ux-developer/
6
Pre
âmb
ulo
11/05/2014 fb.com/RVA.BR
Interação
7
Texto, som, cores, visual, mecânico ou
fisico.
Interface
Mensagens
Usuário Sistema
Pre
âmb
ulo
11/05/2014 fb.com/RVA.BR
Exemplo:
• Usabilidade:
1. Facilidade de aprendizado
2. Eficiência
3. Facilidade de memorização
4. Erros
5. Satisfação subjetiva
8
Meta-Mensagens
Usuário Sistema
Pre
âmb
ulo
11/05/2014 fb.com/RVA.BR
3 níveis
Lógico: Resolvem, solucionam, facilitam.
Emocional: Satisfazem necessidades e desejos afetivos.
Visceral: resolvem questões fundamentais, sem consciência. Impulso.
9
Pre
âmb
ulo
11/05/2014 fb.com/RVA.BR
Espera.... Visceral?
10
Pre
âmb
ulo
11/05/2014 fb.com/RVA.BR
11
Pre
âmb
ulo
11/05/2014 fb.com/RVA.BR
Pre
âmb
ulo
11/05/2014 12 fb.com/RVA.BR
Construção de aplicações de
Realidade Cruzada Projetiva utilizando openFrameworks e
ARDUINO
13
Claudio Kirner1 and Christopher S. Cerqueira12
1Federal University of Itajubá – Universidade Federal de Itajubá (UNIFEI) 2National Institute for Space Research – Instituto Nacional de Pesquisas Espaciais (INPE)
1ckirner@gmail.com ,2christophercerqueira@gmail.com 1http://realidadevirtual.com.br/, 2http://cscerqueira.com.br
11/05/2014 fb.com/RVA.BR
Autores
Christopher Shneider Cerqueira – é graduado na Universidade Federal de Itajubá e pesquisador da área de realidade virtual e aumentada desde 2009, atuando no desenvolvimento de aplicações baseadas em ARToolKit, para o desenvolvimento de ferramentas de autoria de realidade aumentada com cross-reality. É um dos desenvolvedores da ferramenta de autoria comportamental basAR. Atualmente é aluno de pós-graduação do INPE desenvolvendo um sistema de simulação de satélites distribuídos com visualização em realidade virtual.
Claudio Kirner – é graduado em Engenharia Elétrica pela Universidade de São Paulo (1973), mestre em Engenharia Eletrônica pelo Instituto Tecnológico de Aeronáutica (1978), doutor em Engenharia de Sistemas e Computação pela Universidade Federal do Rio de Janeiro (1986) e Pós-doutor pela University of Colorado at Colorado Springs – UCCS (1993-1995). Atualmente é Professor Adjunto na Universidade Federal de Itajubá (UNIFEI). Tem experiência em Realidade Virtual e Realidade Aumentada, Interação Humano-Computador, Ambientes Colaborativos e educação à Distância. Coordenou o I Workshop de Realidade Virtual, em 1997, e o I Workshop de Realidade Aumentada, em 2004, e outros subsequentes. Orientou 30 alunos de mestrado e 8 de doutorado; coordenou Projetos CNPq, FAPESP, RHAE e FAPEMIG; publicou cerca de 270 artigos científicos e 40 livros e capítulos.
Dúvidas: christophercerqueira@gmail.com 14
Intr
od
uçã
o
11/05/2014 fb.com/RVA.BR
Intr
od
uçã
o
11/05/2014 15 fb.com/RVA.BR
ERA TROGLODITA
• Graduação (2010): – ARToolKit
– PTAMM
• Bolsista DTI (2011): – basAR
Conectar com ARDUINO em C++
Literatura indica FIRMATA: http://firmata.org/wiki/Download
Intr
od
uçã
o
11/05/2014 16 fb.com/RVA.BR
Processing
Adobe Flash
Unity
Cinder
openFrameworks
17
Intr
od
uçã
o
11/05/2014 fb.com/RVA.BR
openframeworks.cc
18
• Vídeo oF1..\videos\1_openFrameworks1.mp4
• Vídeo oF2..\videos\1_openFrameworks2.mp4
Intr
od
uçã
o
11/05/2014 fb.com/RVA.BR
oF
• Criado para artistas e designers
• Desenvolvido por: Zach Liberman, Theo Watson, Artuno Castro e Chris O’Shea
• Proposta: Arrumar a falta de comunicação entre diversas bibliotecas em C++, e permitir portabilidade.
• Escrita em C++
• Licença: MIT (educacional e venda)
19
Intr
od
uçã
o
11/05/2014 fb.com/RVA.BR
utilizar oF quando:
• O projeto renderiza muitos gráficos 3D, e/ou;
• Utilizar muita visão computacional, e/ou;
• Controlar equipamentos, como, por exemplo, o ARDUINO.
20
Intr
od
uçã
o
11/05/2014 fb.com/RVA.BR
Libs no pacote padrão
• OpenGL, GLEW, GLUT, libtess2 e cairo para gráficos.
• rtAudio, PortAudio ou FMOD e Kiss FFT para entrada, saída e análise de áudio.
• FreeType para fontes.
• FreeImage para salvar e carregar imagens.
• Quicktime e videoInput para playback e aquisição de vídeo.
• Poco, que contém uma variedade de utilidades.
21
Intr
od
uçã
o
11/05/2014 fb.com/RVA.BR
C++ Portável!!!!
22
Intr
od
uçã
o
11/05/2014 fb.com/RVA.BR
Página Principal – openframeworks.cc
23
Intr
od
uçã
o
11/05/2014 fb.com/RVA.BR
• Introdução à utilização de openFrameworks para o desenvolvimento de aplicações de RVA
• cscerqueira.com.br
• ppt disponível em:
http://pt.slideshare.net/christophercerqueira/svr2013-o-frev
Intr
od
uçã
o
11/05/2014 24 fb.com/RVA.BR
ERA TROGLODITA (C++)
• Graduação (2010): – ARToolKit
– PTAMM
• Bolsista DTI (2011): – basAR
ERA DO FOGO (C++/oF)
• Mestrado (2012):
• Doutorado (2014):
Intr
od
uçã
o
11/05/2014 25 fb.com/RVA.BR
Billinghurst Vision
Intr
od
uçã
o
11/05/2014 26 fb.com/RVA.BR
Realidades – Realidade Aumentada
uma interface baseada na
sobreposição de informações virtuais geradas por computador (envolvendo imagens estáticas e dinâmicas, sons
espaciais e sensações hápticas) com o ambiente físico do usuário, percebida através de dispositivos tecnológicos e
usando as interações naturais do usuário, no mundo físico.
Claudio Kirner
SOURCE: Adapted from ESA (2009) and Capua (2008)
Intr
od
uçã
o
11/05/2014 27 fb.com/RVA.BR
Christopher Vision
Informação virtual
Interação Natural
dispositivos tecnológicos
11/05/2014 28 fb.com/RVA.BR
Realidades – Realidade Cruzada
é um ambiente de realidade misturada ubíqua, que vem da
fusão de uma rede de sensores e atuadores (que coletam e enviam
dados relacionados ao mundo real) com mundos virtuais
compartilhados, usando a
interface da realidade aumentada.
Claudio Kirner
Intr
od
uçã
o
11/05/2014 29 fb.com/RVA.BR
Milgram Continuum - interfaces
SOURCE: Milgram et al. (1995)
Aumento de elementos reais Aumento de elementos virtuais
Intr
od
uçã
o
11/05/2014 30 fb.com/RVA.BR
Kirner’s Diagram – elementos
Source: (KIRNER et al., 2012) Intr
od
uçã
o
11/05/2014 31 fb.com/RVA.BR
M$
GRU
Lego
Cave
2L
Realidade Cruzada
Objetos reais
Sensores e Atuadores
Realidade Aumentada
OC
R
NO
CR
NO
CR
Intr
od
uçã
o
11/05/2014 32 fb.com/RVA.BR
Intr
od
uçã
o
11/05/2014 33 fb.com/RVA.BR
Construção de aplicações de Realidade Cruzada Projetiva
utilizando openFrameworks e ARDUINO
Intr
od
uçã
o
11/05/2014 34 fb.com/RVA.BR
Equipamentos
Rastreio
• Visão Computacional
• Câmeras
Interface de Hardware
• Prototipagem rápida
Projetor
Intr
od
uçã
o
11/05/2014 35 fb.com/RVA.BR
Rastreio
• Óptico
• Via webcam
Logitech HD Webcam C525 720P Foco Automático USB 2.0
Intr
od
uçã
o
11/05/2014 36 fb.com/RVA.BR
Projetor
Intr
od
uçã
o
11/05/2014 37 fb.com/RVA.BR
Interface de Hardware
Intr
od
uçã
o
11/05/2014 38 fb.com/RVA.BR
Construção de aplicações de Realidade Cruzada Projetiva
utilizando openFrameworks e ARDUINO
Intr
od
uçã
o
11/05/2014 39 fb.com/RVA.BR
CASOS
11/05/2014 fb.com/RVA.BR 40
Construção da Aplicação
Caso 1 – Programa Vazio.
Caso 2 – Rastreio de Cores.
Caso 3 – Projeção Calibrada.
Caso 4 – Uso de Hardware no loop de interação.
DEV
EL
11/05/2014 41 fb.com/RVA.BR
Caso 1: Montagem do programa vazio
• oF na versão 0.8.0
• Windows 8.1
• Visual C++ 2012 Express
• Componentes:
– ofxCv
– ofxGlWrapper
DEV
EL –
Cas
o 1
11/05/2014 42 fb.com/RVA.BR
projectGenerator: Onde inicia tudo (easy way)
DEV
EL –
Cas
o 1
11/05/2014 43 fb.com/RVA.BR
projectGenerator:
DEV
EL –
Cas
o 1
11/05/2014 44 fb.com/RVA.BR
projectGenerator
Código no oF
• oF baseia-se em OO
• Arquivo de cabeçalho
• Arquivo de métodos
– Setup
– Update
– Draw
DEV
EL –
Cas
o 1
11/05/2014 45 fb.com/RVA.BR
Algoritmo
DEV
EL –
Cas
o 1
11/05/2014 46 fb.com/RVA.BR
pointCloud pointPicker particle
Caso 2: Rastreio de cores
1. Breve teoria de cores e rastreio de blobs em openCV,
2. Construção dos artefatos de manipulação,
3. Algoritmo de rastreio,
4. Algumas sugestões de usos para este caso.
DEV
EL –
Cas
o 2
11/05/2014 47 fb.com/RVA.BR
Cores
RGB-A (red, green, blue)-alfa HSV (hue (cor), saturation, value)
DEV
EL –
Cas
o 2
11/05/2014 48 fb.com/RVA.BR
Blobs
• Método de busca de caracteristicas.
• Blobs compartilham propriedades constantes que podem ser “percebidas” na imagem.
DEV
EL –
Cas
o 2
11/05/2014 49 fb.com/RVA.BR colorTrack
Construção dos artefatos
DEV
EL –
Cas
o 2
11/05/2014 50 fb.com/RVA.BR
Para infraestrutura
• Foi considerado estático, então é proposto (no caso 3) uma calibração fixa (versão easy).
DEV
EL –
Cas
o 2
11/05/2014 51 fb.com/RVA.BR
Algoritmo
DEV
EL –
Cas
o 2
11/05/2014 52 fb.com/RVA.BR
Resultado do Rastreio de cores
DEV
EL –
Cas
o 2
11/05/2014 53 fb.com/RVA.BR
exemplo
Usos
• Reconhecimento de gestos
• Interação 2D
• Realidade Aumentada
* Sem projeção calibrada.
DEV
EL –
Cas
o 2
11/05/2014 54 fb.com/RVA.BR
sixthSense
Robot
AirDraw
HandTracking
Caso 3: Projeção Calibrada
1. Teoria simplificada de calibração
2. Algoritmo
3. Resultados
4. Usos
DEV
EL –
Cas
o 3
11/05/2014 55 fb.com/RVA.BR
Teoria simplificada
DEV
EL –
Cas
o 3
11/05/2014 57 fb.com/RVA.BR
Algoritmo
DEV
EL –
Cas
o 3
11/05/2014 58 fb.com/RVA.BR
Resultados
DEV
EL –
Cas
o 3
11/05/2014 59 fb.com/RVA.BR
Usos
• Table-tops
• Projeções em paredes
DEV
EL –
Cas
o 3
11/05/2014 60 fb.com/RVA.BR
SketchSynth
Sensetable
L.A.S.E.R. Tag
Coca-Cola Case
Climbing
OASIS
Missile Command
Caso 4: Uso de hardware no loop de interação
• Teoria (super reduzida) sobre ARDUINO
• Algoritmos
• Resultados
• Sugestões de uso
DEV
EL –
Cas
o 4
11/05/2014 61 fb.com/RVA.BR
O que tem no ARDUINO?
11/05/2014 62 fb.com/RVA.BR
Outras versões
11/05/2014 63 fb.com/RVA.BR
Shields
11/05/2014 64 fb.com/RVA.BR
FIRMATA
Literatura indica FIRMATA: http://firmata.org/wiki/Download
11/05/2014 65 fb.com/RVA.BR
O que a FIRMATA faz!?
• Transforma o ARDUINO numa interface de controle, podendo ser modificado por um host.
• Quais as vantagens?
– O host controla a execução!
– O host tem mais memória.
• Desvantagens?!
– Tem que ficar atrelado ao host!
11/05/2014 66 fb.com/RVA.BR
Métodos para conectar com o ARDUINO
connect()
disconnect()
getAnalog()
getAnalogPinReporting()
getDigital()
getDigitalPinMode()
getPwm()
getString()
isArduinoReady()
isInitialized()
sendAnalogPinReporting()
sendByte()
sendDigital()
sendDigitalPinMode()
sendPwm()
sendReset()
sendString()
setUseDelay()
update()
11/05/2014 67 fb.com/RVA.BR
“esquemático”
11/05/2014 68 fb.com/RVA.BR
Montando o circuito
11/05/2014 69 fb.com/RVA.BR
Algoritmo conceitual
11/05/2014 70 fb.com/RVA.BR
Algoritmo
11/05/2014 fb.com/RVA.BR 71
Resultados
11/05/2014 72 fb.com/RVA.BR exemplo
Usos
• Bancadas interativas
• Interação com projeção
• Objetos inteligentes
11/05/2014 73 fb.com/RVA.BR
inForm
SandStation
Space Glasses
MYU
Project Tango
FECHAMENTO Considerações finais.
11/05/2014 fb.com/RVA.BR 74
• oF é indicado quando é necessário alto desempenho, controle de hardware, distribuição, etc.
• Foi visto: – Estrutura básica
– Color tracking
– Calibração da projeção
– Uso de hardware
11/05/2014 fb.com/RVA.BR 75
• No material fornecido:
– Apresentação.
– Vídeos.
– Capítulo (corrigido).
– Códigos usados.
– Códigos de alguns exemplos.
– Compilador usado (VS 2012).
– oF e add-nos utilizados.
11/05/2014 fb.com/RVA.BR 76
Uma idéia
• ..\videos\fechamento_ibm.avi
11/05/2014 fb.com/RVA.BR 77
Dúvidas Sites:
cscerqueira.com.br realidadevirtual.com.br
E-mails: christophercerqueira@gmail.com
ckirner@gmail.com Facebook:
fb.com/RVA.BR
Aproveitem o evento! 11/05/2014 fb.com/RVA.BR 78
79
Informação virtual
Interação Natural
dispositivos tecnológicos
11/05/2014 80 fb.com/RVA.BR
top related