18 de mayo de 2012

Antecedentes del SDK del Kinect


El Kinect de Microsoft llego para brindar una nueva forma en la que interactuamos con los computadores   por medio de las interfaces naturales de usuario (NUI). A diferencia de los accesorios de las otras consola, el PlayStation Move y el Wii remote, con el Kinect el jugador no debe sostener ningún control en sus manos por lo que el eslogan de "Tú eres el control", con el que Microsoft lo promociona, se cumple a cabalidad. El Kinect contiene 3 tipos de sensores internamente, un sensor de video por medio de una cámara de alta resolución, sensor de sonido con un arreglo de micrófonos, y un sensor de profundidad.   

                                    

El Kinect sostiene actualmente el récord del dispositivo mas vendido en menor tiempo, arrebatandoselo al ipod y al ipad, con mas de 8 millones de unidades en menos de 60 dias después de su lanzamiento en Estados Unidos el 4 de noviembre del 2010.

HACKEANDO EL KINECT 

La historia comienza con Johnny Chang Lee, la persona que hackeo el Wii Remote para implementar un "Finger Tracking" y que posteriormente fue contratado en el proyecto Natal (Nombre clave del proyecto que desarrollaba el Kinect) para trabajar en la parte de reconocimiento de gestos.

Hack del Wii remote  por Johnny Chang Lee

Chang fallo en el intento, trabajando ya en Microsoft, de liberar un controlador publico para el Kinect. En vista de eso, se acerco a AdaFruit, un distribuidor de kits electrónicos de código abierto, para que organizaran un concurso con el fin de hackear el Kinect. El concurso fue lanzado el día del lanzamiento con una recompensa de 1000 dolares y el mismo día, Microsoft saco un comunicado en el que anunciaban que el Kinect tenia la seguridad necesaria para evitar que cualquier persona accediera y manipulara la información que el Kinect brindaba, a lo cual AdaFruit respondió aumentando la recompensa a 2000 dolares.

El 6 de noviembre, dos días después del lanzamiento, un hacker conocido como AlexP fue capaz de controlar el motor del Kinect y leer la información del acelerometro, por lo cual AdaFruit aumento el premio a 3000 dolares haciendo crecer aun mas el interés en la comunidad hacker. 

Video de AlexP mostrando 

El lunes 8 de noviembre del 2010, el mismo AlexP publica un video en el que logra obtener los datos de color y profundidad del Kinect y mostrarlos en pantalla. A pesar de haberlo logrado prefirió no reclamar el premio ya que no deseaba liberar el código de su controlador. El mismo día y en vista de lo ocurrido, Microsoft realizo otro anuncio en el que cambia su actitud de prohibición de las intenciones de hackear el Kinect, ademas, aseguran que el Kinect no había sido hackeado ya que ni su código ni sus partes internas  habían sido modificadas, solamente reconocieron que alguien había creado controladores para usar el Kinect con dispositivos diferentes al Xbox 360. También recomendaban no hacer uso de esos controladores y solo usar el Kinect con el fin para el que fue creado.  

Primer video de AlexP mostrando la imagen de color y de profundidad del Kinect


Al día siguiente, el 9 de noviembre del 2010, AdaFruit publico datos entregados por el Kinect los cuales fueron obtenidos por medio de un analizador USB, el Beagle 480. En ese mismo momento la comunidad recientemente creada, OpenKinect, se puso inmediatamente a trabajar en el desarrollo del controlador haciendo uso de los datos publicados por AdaFruit. Al mismo tiempo, Héctor Martín, un español con estudios en ciencias de la computación, acababa de adquirir el Kinect y comenzó a trabajar usando los datos de Adafruit y en tan solo unas pocas horas había escrito un controlador y una aplicación para visualizar el video y la imagen de profundidad. Este fue el nacimiento de la librería   LibFreenect que actualmente es mantenida por el sitio OpenKinect. La recompensa de AdaFruit fue reclamada en tan solo 7 días después de ser anunciada.

Video de Héctor  Martín en el que muestra su controlador para el Kinect

Desde ese momento y durante todo noviembre, apareció una avalancha de videos en los que muchas personas creaban aplicaciones usando el Kinect. Entre ellas se podían encontrar expresiones artísticas, aplicaciones en robotica, realidad aumentada y muchas otras. A la par, aparecieron sitios web como Kinecthacks.net en los que se recopilaban estos videos. 

Mientras todo esto pasaba, Microsoft permanecía como un simple espectador tal vez porque no previeron todo el potencial que tenia el Kinect en otras áreas diferentes a la de los videojuegos.  

Un mes después del lanzamiento del controlador de Héctor Martín, el 10 de Diciembre del 2010, PrimeSense, la compañía Israelí que posee la patente del sensor de profundidad que tiene el Kinect internamente, anuncio el lanzamiento de sus propios controladores de código abierto ademas de librerías para hacer uso de la información entregada por el Kinect. La principal novedad del anuncio de PrimeSense era la posibilidad de hacer uso del framework OpenNI el cual brinda capacidades de mas alto nivel como el skeleton tracking o rastreo de esqueleto aunque para conseguirlo el usuario tuviera que realizar un pose especifica. Esta nueva característica hizo que muchos de los proyectos realizados con Libfreenect comenzaran a migrar a OpenNI.

Posteriormente, el 17 de junio del 2011, Microsoft lanza Kinect SDK beta al publico bajo una licencia gratuita no comercial. Este SDK solo funcionaba bajo Windows pero en contra parte contaba con características como el rastreo de esqueleto sin pose de inicialización, el soporte para reconocimiento de lenguaje natural, entre otras.

El 1 de febrero de 2012 Microsoft anuncia la salida de la versión final 1.0 con múltiples novedades, como la posibilidad de trabajar con múltiples dispositivos Kinect a la vez, y la salida de una licencia de pago para uso comercial.

El 8 de octubre de 2012 salio la versión 1.6 con novedades como soporte para Windows 8 y visual studio 2012 y acceso a la imagen infraroja, mejoras en el rendimiento, entre otras.




1 comentario:

  1. Muy buena investigación, es muy interesante ver com ocurrió todo esto.

    ResponderEliminar