• Télécharger
Leap parisrb
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Leap parisrb

le

  • 508 vues

French presentation about Leap Motion and Ruby at Paris.rb

French presentation about Leap Motion and Ruby at Paris.rb

Statistiques

Vues

Total des vues
508
Vues sur SlideShare
507
Vues externes
1

Actions

J'aime
0
Téléchargements
0
Commentaires
0

1 intégré 1

https://twitter.com 1

Accessibilité

Catégories

Détails de l'import

Uploaded via as Adobe PDF

Droits d'utilisation

CC Attribution-NonCommercial LicenseCC Attribution-NonCommercial License

Report content

Signalé comme inapproprié Signaler comme inapproprié
Signaler comme inapproprié

Indiquez la raison pour laquelle vous avez signalé cette présentation comme n'étant pas appropriée.

Annuler
  • Full Name Full Name Comment goes here.
    Êtes-vous sûr de vouloir
    Votre message apparaîtra ici
    Processing...
Poster un commentaire
Modifier votre commentaire

Leap parisrb Presentation Transcript

  • 1. & Greg - paris.rb - Juillet 2013
  • 2. Hello, I’m Greg @glejeune R&D @
  • 3. Le Leap Motion • Produit de Leap Motion, inc (Ocuspec) David Holz (NASA) et Michael Buckwald (Apple) • Dévoilé en 2011 comme un «kinect abordable» • Précommande depuis mai 2012 • Livraison en juillet 2013 • Airspace™ • Asus et HP
  • 4. Concurrents • DUO (http://duo3d.com) • Projet KickStarter (25/04 : USD 62,5k/110k) (http://www.kickstarter.com/projects/codelabs/duo-the-worlds-first-diy-3d-sensor) • DIY • Avenir incertain • Kinect • Windows • Vision, Mouvement,Vocal, ...
  • 5. Développement • En béta • SDK C++ • Python, Java, C#, Unity (via Swig) • WebSocket https://developer.leapmotion.com ~10000 développeurs
  • 6. Fonctionnement • 2 caméras • 3 LED infrarouge • Des maths
  • 7. Principe • système de coordonnées cartésiennes fondé sur la règle de la main droite • Détection à une distance comprise entre 25 à 600 mm • Latence entre 5 et 33 ms FPS: [200, 30]
  • 8. Tracking • Frame • Data • Hands • Pointables • Fingers • Tools • Gestures
  • 9. Hand
  • 10. Hand Palm Position
  • 11. Hand Palm Normal
  • 12. Hand Direction
  • 13. Hand Vitesse (mm/s)
  • 14. Hand Sphere Center Sphere Radius
  • 15. Finger
  • 16. Finger Longueur
  • 17. Finger Direction
  • 18. Finger Position
  • 19. Finger Vitesse (mm/s)
  • 20. Finger Hand ID
  • 21. Tool Même propriétés que le doigt, mais avec l’attribut isTool = true
  • 22. Tool Même propriétés que le doigt, mais avec l’attribut isTool = true Un outil est plus long qu’un doigt.
  • 23. Gestures swipe circle key taps screen taps •Centre •Rayon •Normal •Direction •Start Position •Position •Vitesse •Direction •Position •Direction •Position Status (start, update, stop), Hand ID, Pointable ID
  • 24. ruby-leap-motion-ws • Utilisation des WebSockets • https://github.com/glejeune/ruby-leap-motion-ws • Dépendances : • JSON • websocket-eventmachine-client
  • 25. ruby-leap-motion-ws • Utilisation des WebSockets • https://github.com/glejeune/ruby-leap-motion-ws • Dépendances : • JSON • websocket-eventmachine-client • websocket
  • 26. ruby-leap-motion-ws class MyLeap < LEAP::Motion::WS def on_frame(frame) end def on_connect end def on_disconnect end def on_error(message) end end MyLeap.start(true)
  • 27. ruby-leap-motion-ws class MyLeap < LEAP::Motion::WS def on_frame(frame) end def on_connect end def on_disconnect end def on_error(message) end end MyLeap.start(true) LEAP::Motion::WS::Frame hands # => [LEAP::Motion::WS::Hand] gestures # => [LEAP::Motion::WS::Gesture] pointables # => [LEAP::Motion::WS::Pointable]
  • 28. ruby-leap-motion • Utilise le SDK C++ (SWIG) • https://github.com/glejeune/ruby-leap-motion • Aucune dépendance • WIP !!! WIP !!! WIP !!!
  • 29. ruby-leap-motion class MyListener < Leap::Motion::Listener def on_init(controller) end def on_exit(controller) end def on_connect(controller) end def on_disconnect(controller) end def on_frame(controller) end def on_focus_lost(controller) end def on_focus_gained(controller) end end
  • 30. ruby-leap-motion listener = MyListener.new controller = Leap::Motion::Controller.new controller.add_listener listener gone = gets print gone controller.remove_listener listener
  • 31. LeapRuby et JLeap-NG • https://github.com/tiegz/LeapRuby • https://github.com/Neurogami/jleap-ng • JRuby uniquement • Utilisent l’API Java (C++ → [SWIG] → Java → JRuby)
  • 32. Demo