Upload
gustavo-jordan
View
747
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Interação com ambientes de realidade virt
Citation preview
Interação com ambientes
de realidade virtual por gestos
corporais
Gustavo Jordan Castro Brasil
Ao meu anjo da guarda
laviic.dc.ufscar.br 2
Índice
Evolução das interfaces de usuário e de seus dispositivos
•CLI
•GUI
•NUI
•OUI
Dispositivos de captura de gestos baseados em imagens de profundidade
•Como funciona
•Dispositivos Atuais
•Possibilidades de uso
Desenvolvimento
•Framework e Middlewares
•Aplicações práticas
laviic.dc.ufscar.br
• Interface de usuário é o sistema pelo qual as pessoas
(usuários) interagem com uma máquina.
• Interface do usuário inclui hardware (físico) e software
(lógico) componentes. – Entrada: permitindo que os usuários manipulem um sistema
– Saída: permitindo que o sistema para indicar os efeitos da manipulação
dos utilizadores
3
Desenvolvimento Dispositivos de captura de gestos
baseados em imagens de
profundidade
Evolução das interfaces de usuário e de seus
dispositivos
laviic.dc.ufscar.br 4
Humanos possuem a capacidade de comunicação pela linguagem corporal
Gestos do corpo podem representar algum tipo de significado
Desenvolvimento Dispositivos de captura de gestos
baseados em imagens de
profundidade
Evolução das interfaces de usuário e de seus
dispositivos
laviic.dc.ufscar.br 5
Como representar os gestos do corpo humano para uma interface que possa
interpretar por meio de dispositivos computacionais?
Desenvolvimento Dispositivos de captura de gestos
baseados em imagens de
profundidade
Evolução das interfaces de usuário e de seus
dispositivos
laviic.dc.ufscar.br 6
CLI
•Estática
•Desconectada (abstrata)
•Baixo-nível
•Estrita
•Direta
•Difícil
GUI
• Responsiva
• Indireta
• Exploratória
• Limitada
NUI
•Evocativa
• Imediata (direta)
•Contextual
• Interativa
• Intuitiva
OUI
• Fluida
• Extensiva
• Antecipada
• Sintética
Desenvolvimento Dispositivos de captura de gestos
baseados em imagens de
profundidade
Evolução das interfaces de usuário e de seus
dispositivos
laviic.dc.ufscar.br 7
Segundo Weiyuan (2010), a NUI possuí as seguintes características
Design centrado
no usuário
Largura de banda alta
Multi canal Simples e natural
Interação baseada
por imagens
Interação baseada por voz
Interação baseada
no comporta
mento
Desenvolvimento Dispositivos de captura de gestos
baseados em imagens de
profundidade
Evolução das interfaces de usuário e de seus
dispositivos
laviic.dc.ufscar.br 8
• A evolução dos computadores e das suas interfaces permitiram que o ser
humano possa se comunicar cada vez mais de uma maneira intuitiva e
natural.
• O desenvolvimento de ferramentas e soluções para que essa comunicação
se torne efetiva tem sido o foco de pesquisas nos últimos anos.
• A capacidade de monitorar e reconhecer os movimentos de uma pessoa
pode ser alcançado através de vários sensores.
• Com o surgimento de câmeras de luz estruturada com informação de
distância/profundidade (Z-buffer) e não apenas cor (RGB) foi possível
realizar esta tarefa Gnecco et al (2012).
Desenvolvimento Dispositivos de captura de gestos
baseados em imagens de
profundidade
Evolução das interfaces de usuário e de seus
dispositivos
laviic.dc.ufscar.br 9
• Modelagem tridimensional por luz estruturada
• São padrões de luz com características conhecidas que são projetados
sobre a superfície do objeto e um instrumento sensor captura a imagem
dos padrões que são distorcidos pela superfície de projeção.
• Pela medição desta distorção e pelo conhecimento das características
geométricas (e/ou radiométrica) dos padrões que são projetados se faz a
determinação das coordenadas de pontos que compõem a superfície do
objeto.
Desenvolvimento Evolução das interfaces de usuário e de seus
dispositivos
Dispositivos de captura de gestos baseados em
imagens de profundidade
laviic.dc.ufscar.br 10
• Dispositivos referência PrimeSense
Desenvolvimento Evolução das interfaces de usuário e de seus
dispositivos
Dispositivos de captura de gestos baseados em
imagens de profundidade
laviic.dc.ufscar.br 11
• Dispositivos referência PrimeSense
Desenvolvimento Evolução das interfaces de usuário e de seus
dispositivos
Dispositivos de captura de gestos baseados em
imagens de profundidade
laviic.dc.ufscar.br 12
• Dispositivos referência PrimeSense
Desenvolvimento Evolução das interfaces de usuário e de seus
dispositivos
Dispositivos de captura de gestos baseados em
imagens de profundidade
PRO LIVE
US 199,00
PRO
US 150,00
for Windows
US 240,00
for Xbox 360
US 110,00
laviic.dc.ufscar.br 13
• Dispositivos referência PrimeSense
Desenvolvimento Evolução das interfaces de usuário e de seus
dispositivos
Dispositivos de captura de gestos baseados em
imagens de profundidade
CARMINE
1.08
CARMINE
1.09
CARMINE
1.25
laviic.dc.ufscar.br
• Suas características e benefícios são amplos, podendo ser aplicados em áreas como :
• Robótica
• Realidade virtual
• Vigilância
• Educação (fisioterapia etc..)
• Captura de movimento de pessoas ou objetos
• Rastreamento
• Captura de vídeo ou imagem 3D
14
Desenvolvimento Evolução das interfaces de usuário e de seus
dispositivos
Dispositivos de captura de gestos baseados em
imagens de profundidade
laviic.dc.ufscar.br
• Existem diversas ferramentas de
desenvolvimento para dispositivos
referência PrimeSense, cada uma com
suas características.
15
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
laviic.dc.ufscar.br 16
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
laviic.dc.ufscar.br 17
• O projeto surgiu na corrida para ganhar acesso do Microsoft Kinect no PC
• Héctor Martin liberou o código da libfreenect no Github
• Primeiro commit em 10 Novembro de 2010
• 17 de dezembro já foi implementado libfreenect plataforma win32
• A libfreenect compõe classes de desenvolvimento para acesso ao hardware do dispositivo.
• OpenKinect é uma comunidade de pessoas interessadas em utilizar o Microsoft Kinect em
computadores e outros dispositivos criando bibliotecas livres para que o Kinect seja utilizada em
diferentes plataformas
Google Groups: OpenKinect
#openkinect - Freenode Código fonte disponível em: https://github.com/OpenKinect/libfreenect
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
laviic.dc.ufscar.br 18
• Captura de histogramas para geração de imagens de profundidade e RGB
• Controle do Motor (posição de orientação vertical)
• Captura de dados do Acelerômetro
• LED de status
• Áudio
• Bindings (C#, C++ , Python, Java , AS3)
• Suporte nas plataformas Windows, GNU/Linux e OS X
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
laviic.dc.ufscar.br 19
• Não possui integração com a NITE (middleware NUI)
• Derivada da engenharia reversa do driver oficial do
Kinect
• A OpenKinect não é um framework
• A libfreenect é apenas um modulo (driver), uma API para
acesso ao hardware do dispositivo Microsoft Kinect
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
laviic.dc.ufscar.br 20
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
laviic.dc.ufscar.br 21
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
laviic.dc.ufscar.br 22
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
● PrimeSense reconhece o interesse e as realizações da comunidade
de código aberto
● Surgi um mês depois da libfreenect ser lançada em 09 de dezembro
2010
● Lança seus drivers do PrimeSensor em (LGPLv3+)
● Surgi fork do PrimeSensor para o Kinect (SensorKinect by Avin2)
● Lança sua OpenNI framework, atualmente 2.(LGPLv3+)
● Promove iniciativas, sem fins lucrativos de utilização da NUI
laviic.dc.ufscar.br
• É um framework que fornece uma API para o desenvolvimento de aplicações que necessitam de interação natural.
• API abrange a comunicação com dispositivos de baixo nível (por exemplo, sensores de visão e áudio), bem como soluções de alto nível (por exemplo, o acompanhamento visual utilizando visão computacional).
• O framework está escrito e distribuído sob a GNU Lesser General Public License (LGPL)
23
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
laviic.dc.ufscar.br 24
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
laviic.dc.ufscar.br 25
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
laviic.dc.ufscar.br
• O NITE é um middleware usado pela interface OpenNI, e desenvolvido pela PrimeSense.
• Apesar de possuir código fechado, é gratuito e pode ser usado comercialmente.
• Responsável por identificar os usuários nas imagens de profundidade e rastrear seus movimentos, além de prover uma API que detecta gestos.
• Modos de operação: • Rastrear mãos, com detecção de gestos em particular
• Rastrear o corpo todo (esqueleto)
26
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
laviic.dc.ufscar.br 27
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
Captura e rastreia o centro da mão e oferece coordenadas X, Y e Z do plano
cartesiano em tempo real. Detecção de gestos (Push, swipe, steady, wave, circle)
laviic.dc.ufscar.br 28
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
Captura e rastreia 15 joints (juntas) e oferece coordenadas X, Y e Z do plano cartesiano do corpo
em tempo real.
laviic.dc.ufscar.br 29
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
laviic.dc.ufscar.br 30
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
• O Microsoft Kinect SDK 1.0 para Windows
• Destinado aos sistemas operacionais Windows 7 e Windows
Embedded Standard
• O SDK fornece suporte para os componentes de hardware do
dispositivo Kinect.
• É um SDK proprietário, sendo a distribuição de licença, para o uso
comercial, vinculada ao somente ao dispositivo Microsoft Kinect
para Windows.
laviic.dc.ufscar.br 31
OpenKinect OpenNI Microsoft Kinect SDK v1.0
Licença LGPLv3+ LGPLv3+ (Nite tem código fechado mas que pode ser usado comercialmente)
Proprietária e uso não comercial para o Microsoft Kinect para Xbox360.
Hardware Microsoft Kinect para Xbox360 e Microsoft Kinect para Windows
Qualquer compatível com padrão OpenNI
Microsoft Kinect
Driver libfreenect SensorKinect Avin2 Microsoft Kinect SDK v1.0
Multiplataforma de S.O Sim Sim Não
Múltiplos Kinects Sim Sim Sim
Câmera RGB Sim Sim Sim
Câmera Infravermelho Sim Sim Sim
Projetor Infravermelho Sim Sim Sim
LED de estatus Sim Sim Não
Motor de inclinação vertical Sim Não Sim
Vetor de microfones Implementado Não Sim
Detecção de gestos Implementação a partir do OpenCV
Sim, pelo middleware *
Detecção do esqueleto Não Sim, pelo middleware Sim
Detecção da mãos e módulos de reconhecimento de gestos
Não Sim, pelo middleware Não
Análisador de cena Não Sim Não
laviic.dc.ufscar.br 32
Dispositivo
Microsoft Kinect XBOX 360
Framework/Middleware OpenNI 1.X/NITE
Linguagem de programação
Dispositivos de captura de gestos baseados
em imagens de profundidade Evolução das interfaces de usuário e de seus
dispositivos Desenvolvimento
laviic.dc.ufscar.br
Agradecimentos Referências Trabalho Futuros Conclusão Lições Aprendidas
33
GNECCO, B. B. ; BRASIL, G. J. C. ; DIAS, D. R. C. ; GUIMARÃES, M. P. . Desenvolvimento de Interface
Naturais de Interação usando o hardware Kinect. Tendências e Técnicas em Realidade Virtual e
Aumentada, v. 2, p. 1-264, 2012.
Weiyuan Liu. Natural user interface- next mainstream product user interface.Computer-Aided
Industrial Design & Conceptual Design (CAIDCD), IEEE 11th International Conference on , vol.1, no.,
pp.203-205, 17-19 Nov. 2010.
OpenNI Documentation. http://openni.org/Documentation/
OpenKinect. http://openkinect.org
Kinect SDK EULA. http://www.microsoft.com/en-us/kinectforwindows/develop/sdkeula.aspx
PrimeSense. “PrimeSense has delivered an important component to the technology, helping us
deliver revolutionary controller-free entertainment experiences”. http://www.primesense.com
WAVI Xtion. Intuitive living room experience. http://event.asus.com/wavi/