Desenvolvimento em Leap Motion

Gabriel Toledo Peregrino
Lilian Coutinho Alves Meiga
Eng. De Controle de Automação
O Aparelho
Calibrando o Dispositivo
•
•
•
•

Abra a aplicação Leap Motion Settings
Selecione a página Troubleshooting
Clique em Recal...
Sistema de Coordenadas
Campo de Visão
• 120º de Profundidade
• 150º de Largura
Coleta de Dados
•
•
•
•

Mãos – Ambas as mãos
Dedos – Todos os dedos
Ferramentas – Todas as ferramentas
Gestos – Todos os ...
Coleta de Dados
Utiliza-se as seguintes funções para o uso de objetos
específicos:
•
•
•
•
•

Frame.Hand()
Frame.Finger()
...
Movimentos
Movimentos são derivados da comparação
entre um frame anterior e o atual
Movimentos
Utiliza-se os seguintes atributos:

•
•
•
•
•

RotationAxis
RotationAngle
RotationMatrix
ScaleFactor
Translatio...
Mãos
A API é capaz de fornecer uma série de
informações sobre uma mão. Porém, nem
sempre é possível determinar todos os
at...
Mãos
O Leap não determina se a mão é a direita ou
esquerda
É possível que mais de duas mãos apareçam
no sensor, embora iss...
Mãos - Atributos
• PalmPosition – O centro da palma medido em
milimetros a partir da origem do Leap
• PalmVelocity – Veloc...
Mãos - Atributos
• PalmNormal – Um vetor perpendicular ao plano
formado pela palma da mão
• Direction – Um vetor do centro...
Mãos - Atributos
• SphereCenter – O centro de uma esfera em função
da curvatura da mão
• SphereRadius – O Raio de uma esfe...
Dedos e Ferramentas
Pode-se acessar dedos e ferramentas associados a
uma mão usando uma das três listas:
• Apontáveis – Am...
Dedos e Ferramentas - Modelos
O Leap diferencia dedos de ferramentas de acordo
com a forma. Uma ferramenta é mais longa, f...
Dedos e Ferramentas - Modelos
As características físicas de “apontáveis” incluem:
• Length – Comprimento da porção visível...
Dedos e Ferramentas - Modelos
• Direction – Vetor que aponta para a mesma
direção que o objeto
• TipPosition – Posição, em...
Gestos
O Leap Motion reconhece certos padrões de
movimento, que podem indicar um comando do
usuário
Gestos
Os seguintes movimentos são reconhecidos pelo
dispositivo:
• Circle – Único dedo traçando um circulo
Gestos
• Swipe – Movimento linear da mão
Gestos
• Key Tap – Toque para baixo, semelhante ao
apertar de uma tecla
Gestos
• Screen Tap – Toque para frente, semelhante ao
pressionar de uma tela vertical
Arquitetura
A SDK do Leap Motion oferece duas opções de coleta
de dados:
• Interface nativa – Biblioteca dinâmica que pode...
Interfaces
Interface Nativa
USB

Serviço Leap

1

Aplicativo de
Ajustes do Leap

Aplicação em
Primeiro Plano

3

Aplicação em
Segundo...
Interface Nativa
Serviço Leap

1

1. O serviço Leap Motion recebe os dados
do controlador pela porta USB, processa
as info...
Interface Nativa

2. Executado separadamente do
serviço, permite que o usuário
configure a instalação do Leap
Motion

Apli...
Interface Nativa

Aplicação em
Primeiro Plano
3. A aplicação conecta-se ao
serviço usando a biblioteca nativa
do Leap Moti...
Interface Nativa
4. Quando uma aplicação perde o foco no
sistema operacional, o Leap pára de enviar
dados a ela. Aplicaçõe...
Interface WebSocket
USB

Serviço Leap
____________________
Servidor WebSocket
Domínio: localhost
Porta: 6437
1
3

Mensagen...
Interface WebSocket
Serviço Leap
____________________
Servidor WebSocket
Domínio: localhost
Porta: 6437
1

1. O serviço fo...
Interface WebSocket

Aplicativo de
Ajustes do Leap
2. O painel de controle permite
que o usuário final ative ou
desative o...
Interface WebSocket

3 Mensagens

Formatadas JSON

3. O servidor envia os dados rastreados
na forma de mensagem JSON. Uma
...
Interface WebSocket
4. A biblioteca do cliente leap.js
pode ser usada em aplicações
da Web. A biblioteca estabelece
a cone...
Desenvolvimento em Leap Motion Parte 1
Próximos SlideShares
Carregando em…5
×

Desenvolvimento em Leap Motion Parte 1

684 visualizações

Publicada em

Um guia inicial sobre como desenvolver programas utilizando Leap Motion, para obter o código mostrado no slide, dúvidas e sugestões, entre em contato conosco (informações para contato nos slides)

Publicada em: Educação, Negócios, Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
684
No SlideShare
0
A partir de incorporações
0
Número de incorporações
4
Ações
Compartilhamentos
0
Downloads
19
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Desenvolvimento em Leap Motion Parte 1

  1. 1. Desenvolvimento em Leap Motion Gabriel Toledo Peregrino Lilian Coutinho Alves Meiga Eng. De Controle de Automação
  2. 2. O Aparelho
  3. 3. Calibrando o Dispositivo • • • • Abra a aplicação Leap Motion Settings Selecione a página Troubleshooting Clique em Recalibrate Device Siga as instruções na tela
  4. 4. Sistema de Coordenadas
  5. 5. Campo de Visão • 120º de Profundidade • 150º de Largura
  6. 6. Coleta de Dados • • • • Mãos – Ambas as mãos Dedos – Todos os dedos Ferramentas – Todas as ferramentas Gestos – Todos os gestos iniciados, terminados ou que sofreram alteração
  7. 7. Coleta de Dados Utiliza-se as seguintes funções para o uso de objetos específicos: • • • • • Frame.Hand() Frame.Finger() Frame.Tool() Frame.Pointable() Frame.Gesture()
  8. 8. Movimentos Movimentos são derivados da comparação entre um frame anterior e o atual
  9. 9. Movimentos Utiliza-se os seguintes atributos: • • • • • RotationAxis RotationAngle RotationMatrix ScaleFactor Translation Estes são usados para manipular objetos sem a necessidade de rastrear mãos e dedos durante múltiplos frames
  10. 10. Mãos A API é capaz de fornecer uma série de informações sobre uma mão. Porém, nem sempre é possível determinar todos os atributos em um único frame
  11. 11. Mãos O Leap não determina se a mão é a direita ou esquerda É possível que mais de duas mãos apareçam no sensor, embora isso não seja recomendado para uma melhor qualidade do rastreamento dos gestos e movimentos
  12. 12. Mãos - Atributos • PalmPosition – O centro da palma medido em milimetros a partir da origem do Leap • PalmVelocity – Velocidade da palma, em mm/s
  13. 13. Mãos - Atributos • PalmNormal – Um vetor perpendicular ao plano formado pela palma da mão • Direction – Um vetor do centro da palma em direção aos dedos
  14. 14. Mãos - Atributos • SphereCenter – O centro de uma esfera em função da curvatura da mão • SphereRadius – O Raio de uma esfera um função da curvatura da mão
  15. 15. Dedos e Ferramentas Pode-se acessar dedos e ferramentas associados a uma mão usando uma das três listas: • Apontáveis – Ambos dedos e ferramentas como objetos apontáveis • Dedos – Apenas dedos • Ferramentas – Apenas ferramentas
  16. 16. Dedos e Ferramentas - Modelos O Leap diferencia dedos de ferramentas de acordo com a forma. Uma ferramenta é mais longa, fina e reta que um dedo.
  17. 17. Dedos e Ferramentas - Modelos As características físicas de “apontáveis” incluem: • Length – Comprimento da porção visível do objeto • Width – Largura média da porção visível do objeto
  18. 18. Dedos e Ferramentas - Modelos • Direction – Vetor que aponta para a mesma direção que o objeto • TipPosition – Posição, em milímetros, da ponta do objeto • TipVelocity – Velocidade, em mm/s, da ponta do objeto
  19. 19. Gestos O Leap Motion reconhece certos padrões de movimento, que podem indicar um comando do usuário
  20. 20. Gestos Os seguintes movimentos são reconhecidos pelo dispositivo: • Circle – Único dedo traçando um circulo
  21. 21. Gestos • Swipe – Movimento linear da mão
  22. 22. Gestos • Key Tap – Toque para baixo, semelhante ao apertar de uma tecla
  23. 23. Gestos • Screen Tap – Toque para frente, semelhante ao pressionar de uma tela vertical
  24. 24. Arquitetura A SDK do Leap Motion oferece duas opções de coleta de dados: • Interface nativa – Biblioteca dinâmica que pode ser usada para criar novas aplicações compatíveis com o Leap • Interface WebSocket – Permite criar aplicações na web
  25. 25. Interfaces
  26. 26. Interface Nativa USB Serviço Leap 1 Aplicativo de Ajustes do Leap Aplicação em Primeiro Plano 3 Aplicação em Segundo Plano 4 2
  27. 27. Interface Nativa Serviço Leap 1 1. O serviço Leap Motion recebe os dados do controlador pela porta USB, processa as informações e envia para as aplicações em execução. Por padrão, o serviço só envia os dados de rastreamento para as aplicações em primeiro plano
  28. 28. Interface Nativa 2. Executado separadamente do serviço, permite que o usuário configure a instalação do Leap Motion Aplicativo de Ajustes do Leap 2
  29. 29. Interface Nativa Aplicação em Primeiro Plano 3. A aplicação conecta-se ao serviço usando a biblioteca nativa do Leap Motion 3
  30. 30. Interface Nativa 4. Quando uma aplicação perde o foco no sistema operacional, o Leap pára de enviar dados a ela. Aplicações podem requerir permissão para receber dados enquanto no segundo plano Aplicação em Segundo Plano 4
  31. 31. Interface WebSocket USB Serviço Leap ____________________ Servidor WebSocket Domínio: localhost Porta: 6437 1 3 Mensagens Formatadas JSON Navegador Biblioteca de cliente Leap.js _________________________ Aplicação Web 4 Aplicativo de Ajustes do Leap 2
  32. 32. Interface WebSocket Serviço Leap ____________________ Servidor WebSocket Domínio: localhost Porta: 6437 1 1. O serviço fornece um provedor WebSocket em http://127.0.0.1:6437
  33. 33. Interface WebSocket Aplicativo de Ajustes do Leap 2. O painel de controle permite que o usuário final ative ou desative o servidor WebSocket 2
  34. 34. Interface WebSocket 3 Mensagens Formatadas JSON 3. O servidor envia os dados rastreados na forma de mensagem JSON. Uma aplicação pode mandar mensagens de configuração para o servidor
  35. 35. Interface WebSocket 4. A biblioteca do cliente leap.js pode ser usada em aplicações da Web. A biblioteca estabelece a conexão com o servidor Navegador Biblioteca de cliente Leap.js _________________________ Aplicação Web 4

×