Leap+Motion

LEAP MOTION



Pablo Fernández Francisco Navarro Álvaro Muñoz

= HISTORIA =

En 2010 se funda OcuSpec. La compañía empezó con una ronda de financiación inicial de $1.3M en Junio de 2011. En mayo del 2012 se anuncia Leap Motion con una ronda de capital “Series A” $12.75M. El dispositivo empezó su venta a gran escala en julio del 2013.

El equipo

 * __Michael Buckwald__: Licenciado en filosofía y ciencias políticas en la Universidad de George Washington, fue consejero delegado de Zazuba.com hasta que se vendió a una empresa de páginas amarillas y fue entonces cuando empezó con el proyecto de LeapMotion.
 * __Andy Miller__: Es el presidente y jefe de operaciones. Fue socio de Highland Capital, uno de los inversores de la compañía. Trabajo junto a Steve Jobs como vicepresidente de publicidad móvil de Apple donde dirigió la división iAd. Además fue co-fundador y CEO de Quattro Wireless, una compañía de publicidad móvil adquirida por Apple en 2009. Supervisó el desarrollo de negocios, ventas y estrategia de m-Qube.


 * __David Holz:__ Es el director de tecnología (CTO). Fue contratado por la NASA mientras estudiaba matemáticas aplicadas en la Universidad de Carolina del Norte. Dejó su programa de doctorado para comenzar con Leap Motion.


 * __Raul Corella__: Vicepresidente de de Jawbone (cadena de suministro) y VP de Operaciones de Monster Cable Products. Manejó las operaciones de Bose y Liebert. Dirigió programas de reingeniería en sitios como Exide/Powerware. Licenciado en Sistemas de la Información en la universidad de CETYS (México) y MS en la Universidad Estatal de San Diego.


 * __Paul Feinstein__: encargado de la administración y finanzas. Fundador y director financiero de Crystal Financial LLC. Trabajó en el Grupo Ozer y en Erns&Young.


 * __Tom Kaweski__: Ha pasado su carrera trabajando en tecnología. Fue consejero general asociado de Logitech. Socio de Wilson Sonsini Goodrich y Rosati. Obtuvo su BA con honores en la Universidad de British Columbia y MS en la Universidad de Essex donde fue profesor de la Commonwealth. Tom recibió su JD (juris doctor) en la universidad de Toronto.


 * __Chris Loeper__: Lleva 15 años en las ventas mundiales y marketing para seis empresas que cotizan en bolsa. Ocupó altos cargos en Rovi, Sonic Solutions, Roxio, Napster, Adaptec y Mattel, donde tomó nuevas marcas al mercado, y construcción de canales de distribución globales con los minoristas más grandes del mundo, fabricantes de CE y organizaciones empresariales.


 * __Ted Theocheung__: Veterano ejecutivo de tecnología de veinte años con quince en compañías Foturne 500. Vicepresidente de Synaptics. Ha dirigido estrategia, desarrollo corporativo, alianzas y responsabilidad de negocio con HP y Compaq. Fue vicepresidente de varias startups como Mirra, adquirida por Seagate. Asistió a la Universidad de Santa Clara y la escuela de negocios de Standford.


 * __Michael Zagorsek__: Director de Comunicaciones de Marketing de Apple. Ayudo a constuir y gestionar de nuevos productos como la Apple Store y la Apple Online Store. Antes de Apple trabajo en IMB y Volkswagen. Consultor en Sapient. Obtuvo un “bachelor of commerce” bcom, con honores en la universidad de Carlenton (Canadá) y una maestría en Dirección de Marketing Internacional de la Universidad de Bradford.

__Vínculos con HP: Ted Theocheung__ __Vínculos con Apple: Michael Zagorsek, Andy Miller__

= CARACTERÍSTICAS TÉCNICAS =


 * Conexión: USB 2.0
 * Hardware: posee dos cámaras monocromáticas a 300 fps y tres LEDs infrarrojos.
 * Distancia aproximada de actuación: semiesfera de un metro de radio.
 * Precisión máxima: 0.01 mm.
 * Requisitos de entorno: luz (diurna, halógena o incandescente).



= API =

Al igual que Android, Leap Motion tiene una bonita y estructurada página para desarrolladores en la que podemos encontrar, a parte de su SDK, bastante documentación, entre la que destacan diversos ejemplos del uso de su API: [|__https://developer.leapmotion.com/__] (es necesario el registro para la descarga). Cabe destacar su interfaz web interactiva para familiarizarnos con el uso de la API, la cual es multiplataforma y puede ser integrada en lenguajes como C++, Java o Python. Los desarrolladores hablan de la facilidad de uso de la API, veamos varios ejemplos de reconocimiento de gestos ya implementados, obtenidos de la página para desarrolladores:

__Circle__: Para utilizar el gesto de círculo hay que habilitarlo en el controlador: controller.enableGesture(Gesture::TYPE_CIRCLE);. Tiene varios estados, por ejemplo:
 * Start: el movimiento de círculo ha progresado lo suficiente como para ser detectado.
 * Update: el movimiento de círculo continúa.
 * Stop: el movimiento de círculo ha terminado.

__Swipe__: La forma de reconocer el swipe es como el círculo, salvo que el tipo está especificado en GESTURE::TYPE_SWIPE. Se puede configurar para que detecte swipe a partir de una determinada longitud y velocidad con los métodos controller.config.setfloat(“Gesture.Swipe.MinLength”,valor), y controller.config.setfloat(“Gesture.Swipe.MinVelocity”,valor) respectivamente. Se puede crear un objeto SWIPE, que es un objeto de clase SwipeGesture, y dispone de métodos de consulta como velocidad, donde se inicia, o cuál es la posición actual.

__Key Taps__: Al igual que el resto de gestos, se activa en el controlador bajo el tipo de Gesture::TYPE_KEY_TAPS y se puede configurar con el método config del controlador y las cadenas Gesture.KeyTap.MinDownVelocity, Gesture.KeyTap.HistorySeconds, Gesture.KeyTap.MinDistance que corresponden a la mínima velocidad y distancia para que el gesto sea reconocido. Dispone de métodos para saber el progreso, la posición, la dirección que permitirán implementar la respuesta de nuestra aplicación según sea el movimiento del key tap.



__Screen Taps__: Para activar el gesto, al igual que los anteriores, se utiliza el método enable del controlador con el tipo Gesture::TYPE_SCREEN_TAP. Con el método config de la clase controller y las cadenas Gesture.ScreenTap.MinForwardVelocity, Gesture.ScreenTap.HistorySeconds, Gesture.ScreenTap.MinDistance se pueden personalizar al igual que el resto de movimientos, definiendo cuáles son las características mínimas que el Leap Motion debe detectar.

Otras clases interesantes:


 * Hand: La clase hand nos permite manejar y obtener información sobre la manos detectadas: si es válida, el grado de giro, el tiempo que ha sido visible, el radio de curvatura de la mano, la probabilidad del movimiento de la mano en el siguiente frame.
 * HandList: Es una lista de manos, puedes añadir, quitar, recorrerlo, acceder y ver cuáles son las manos más lejanas. [|__frontmost__]
 * Finger: Un dedo esta asociado a una mano, puedes determinar si el dedo es válido o no ( si no corresponde con ninguna mano, no es está detectado, si ha dejado de reconocerlo…).
 * Frame: Es un conjunto de manos o dedos detectados en un sólo frame.
 * Listener: La clase Listener define un conjunto de funciones que se pueden reemplazar para responder a eventos distribuidos por el objeto Controller. Para controlar los eventos de movimiento, se crea una instancia de una subclase de Listener y se asigna a una instancia del controlador. El controlador llama a la función relevante del Listener cuando se produce un evento.

= APLICACIONES: PRESENTE Y FUTURO =

HP integra Leap Motion en su portátil Envy 17.
[|__http://www.xataka.com/portatiles/hp-integra-el-sistema-de-control-gestual-leap-motion-en-su-portatil-hp-envy-17__]

Leap Motion cuenta con su propio “market”, llamado Airspace ( [|__https://airspace.leapmotion.com/__] ) donde poder comprar y vender tus aplicaciones.

Leap Motion anunció en Julio que había adquirido DexType, que permitirá a los usuarios el uso de un teclado virtual y un ratón para interactuar con los ordenadores.

Destacar también la importancia del dispositivo para fines médicos, en los que el contacto con los dispositivos habituales pone en riesgo la higiene o seguridad de por ejemplo, una operación.

Otro ejemplo de aplicación sería la facilidad con la que navegar por aplicaciones del tipo Google Maps, Google Earth o 3DStudio, en las que el uso de los dispositivos clásicos supone una gran pérdida de tiempo en usuarios poco iniciados, y suelen ser menos intuitivos que el movimiento humano natural. Esto lo podemos ver, por ejemplo, si comparamos el giro de una esfera física y el control de tres dimensiones con los dos botones del ratón.

= COMPARACIÓN CON OTROS DISPOSITIVOS =

__MYO -__ [|__http://www.youtube.com/watch?v=oWu9TFJjHaM#t=58__]
La principal diferencia entre Leap Motion y MYO, a pesar de que ambos se basan en el paradigma de la interacción gestual, es el enfoque innovador que ofrece MYO. Es decir, MYO abre un nuevo subcampo, la detección de movimiento a través de mediciones realizadas en el cuerpo. Esto, a priori, puede ser una desventaja ya que aún no han anunciado la precisión que disponen los sensores, y no hay ningún sensor previo o parecido del que hacer poder hacer aproximaciones. Sin embargo, a la larga, puede ser más preciso que la mediciones a través de cámaras. MYO y Leap Motion tienen en común que ambos han optado por el desarrollo de aplicaciones propias y tener un “market” propio. Como el lanzamiento es para 2014 aún no sabemos el precio medio que tendrán las aplicaciones y cuales serán, pero en los videos promocionales se observan aplicaciones mucho más amplias de las que te ofrece Leap Motion, ya que podría ser utilizado en corta distancia (limitado por la distancia de la tecnología bluetooh y de que el dispositivo al que se conecta también disponga de bluetooh) PCs, Consolas, Móviles, Casas Inteligentes o incluso para controlar robots, máquinas motorizadas o aviones no tripulados. El precio es un poco superior al LeapMotion, encontrado en pre-compra por 149$.

__SKYMOUSE__
Ambos se enfocan en el mismo paradigma y tecnología, lo que los diferencia es la forma de hacerlo. SKYMOUSE dispone de un anillo de LEDS y una cámara infrarroja con los que detectará nuestros movimientos. Además es necesario utilizar una especie de anillos-dedales que suponen un inconveniente respecto a LeapMotion. Este producto aún no se encuentra desarrollado y los primeros prototipos se realizaron con Arduino.

__Mando Wii__
De los pioneros en la interacción gestual, nos dió la idea de que las máquinas podían interaccionar con los humanos mediante gestos. La diferencia de leap motion es que esta diseñado exclusivamente para jugar y para su consola, aunque se puede generalizar para otros dispositivos, hay proyectos por ejemplo donde se realiza para pasar presentaciones bajo Windows. Sin embargo al ser de los primeros presentan un retraso en cuanto a los sensores en comparación con LeapMotion y no permite detectar tantos movimientos. Sin embargo nos permite el control gestual desde una mayor distancia que lo haría LeapMotion.

__MS Kinect__
“La revolución gestual que pudo ser y no fué”. Como con LeapMotion, y con la gran potencia de una gran empresa, se podría haber creado una pequeña versión para ordenadores y haber desarrollado un “market” de aplicaciones. La gran ventaja de la Kinect, como con la wii, es un mayor alcance de la detección de movimientos, gracias a esto no necesitemos estar pegados al ordenador o a la consola. Además incorporará incorporará infrarrojos para mejorar la detección de profundidad. Sin embargo, los desarrolladores aseguran que su sistema es doscientas veces más preciso que la primera versión de Kinect. Por otra parte, y al contrario que LeapMotion, incorporará USB3.0 que a pesar de no haberse popularizado aún, mejora la respuesta del dispositivo. Además al llevar incorporado micrófono se podría combinar la detección por voz y la detección gestual.

__Munivo__
Munivo está enfocado a un campo muy específico lejos del de LeapMotion: la movilidad para personas que sufren ceguera y tienen problemas para desplazarse con normalidad por la ciudad. No se basa en una cámara que detecta los movimientos, sino que se basa en detectar los objetos próximos (obstáculos) a través de un radar. Por lo tanto no es tanto una comunicación hombre-maquina gestual, sino una interacción máquina-hombre.

= CONCLUSIONES =

Como conclusiones, destacar algunas frases sacadas de la noticia: [|__http://www.technologyreview.es/read_article.aspx?id=43792__]

"Las interfaces entre humanos y ordenadores suelen moverse muy despacio. Puede pasar un tiempo antes de que el Leap alcance todo su potencial", sostiene [|__Robert Jacob__], profesor de informática de la Universidad Tufts (EE.UU.), que estudia interfaces de usuario y nuevos modos de interacción.

No existe un estándar de gestos para Leap Motion, así que acciones como escoger o coger un objeto que esté en la pantalla pueden variar de una aplicación a otra, por eso, Leap Motion está intentando estandarizar algunas interacciones, añade, para que sean más coherentes entre aplicaciones.

Muchos consumidores esperaban que fuera un dispositivo multiusos que pudiera sustituir al ratón y el teclado. Y aunque Leap Motion cree que con el tiempo será posible, aún se tardará un tiempo, según Michael Zagorsek, vicepresidente de marketing de Leap Motion.

Fijándonos en la historia, el ratón y la pantalla táctil se inventaron en la década de 1960, pero el ratón no tuvo un éxito comercial hasta la década de 1980 y la pantalla táctil tardó unas décadas más aún.

= Fuentes de información: = [|__http://developer.leapmotion.com/__] [|__http://en.wikipedia.org/wiki/Leap_Motion__] [|__https://www.leapmotion.com/company__] [|__https://www.thalmic.com/en/myo/__] [|__http://www.neoteo.com/munivo-radar-tactil-para-ciegos/__] [|__http://gizmologia.com/2013/07/skymouse-raton-aereo__] [|__http://www.xataka.com/otros/leap-motion-y-su-sistema-de-control-gestual-mas-barato-y-preciso-que-kinect__]

Todas las imágenes han sido obtenidas de la página oficial de leapmotion, menos la imagen de portada que ha sido sacada de [|__http://www.tecnogeek.com/__], la imagen del HP ENVY [|__http://www.xataka.com/portatiles/hp-integra-el-sistema-de-control-gestual-leap-motion-en-su-portatil-hp-envy-17__] y la imagen del leap motion “despiezado” que está sacado de [|__https://learn.sparkfun.com/tutorials/leap-motion-teardown/parts-everywhere__]

= Documento Original = = Presentación =