in

¿Cómo es Kinect por dentro?

Jugar sin un mando (joystick o control de cualquier tipo) ahora significa jugar con todo el cuerpo. Kinect te observa, reconoce tu entorno y responde a tus movimientos. Si dentro del juego tienes que dar una patada, sólo debes realizar el movimiento y Kinect lanzará una patada por ti. Lo mismo sucede para saltar, caminar y otras acciones motrices que expulsaron a los jugadores del tradicional sofá. El jugador ahora es parte del juego, está dentro de él. Pero, ¿Cómo es la anatomía de este sistema? ¿Qué lo hace tan inteligente? ¿Cómo hace para vernos y reconocer nuestras acciones? Veamos que hay debajo de las tapas de esta maravilla que llegó para revolucionar el mundo de los videojuegos.

La empresa PrimeSense, con sede en  Tel-Aviv, Israel, alcanzó la hazaña tecnológica a través de su diseño “PrimeSensor” que nos brinda la posibilidad de “percibir el mundo en tres dimensiones y traducir estas percepciones en una imagen sincronizada“.  Dentro de esta idea básica, la sala donde se ubica el sistema y sus ocupantes está “salpicada” con un patrón de puntos invisibles (para los usuarios) y que son generados por un láser que trabaja en la frecuencia del infrarrojo cercano. Esto es, un dispositivo láser de Clase 1 que proporciona un enfoque a una distancia útil sin generar condiciones peligrosas para los jugadores. Un sensor de imagen CMOS detecta los reflejos del haz infrarrojo, dentro de un patrón de puntos y segmentos, y genera mapas que informan sobre la intensidad de cada punto y segmento. Este proceso se realiza a una distancia de pocos metros y se obtiene una resolución de hasta 1 centímetro dentro de la dimensión de la profundidad (Eje Z). La resolución espacial (Ejes X e Y) es del orden de milímetros, y se utiliza la entrada de información RGB (Rojo, Verde y Azul) desde un segundo sensor de imagen CMOS (como la cámara de tu teléfono móvil) para añadir color a los datos adquiridos. El frente del Kinect por lo tanto, donde se ubican los dispositivos mencionados, se ve de este modo:

Vista frontal de Kinect y sus sensores de imagen (Foto EETimes)

Kinect utiliza los datos obtenidos sobre la posición tridimensional y el movimiento de las personas ubicadas frente a él para reproducir y reflejar las situaciones correspondientes en la pantalla, las que son ejecutadas por el avatar de cada jugador, es decir, por el personaje de la ficción. Un conjunto de engranajes  acoplados a un pequeño motor (conjunto ubicado en el pié de Kinect) mantiene al equipo y sus sensores de imágenes siempre atentos y direccionados hacia el espacio de donde proviene o se genera la acción, siguiendo y capturando la información sobre como se mueven los jugadores. Cuatro micrófonos se utilizan para cancelar los ecos y el ruido de fondo, mientras que ayudan a determinar cuál de todos los jugadores ha emitido un comando de voz. Con estas características disponibles, no era muy difícil imaginar que las mentes más intrépidas del planeta utilizarían el potencial de esta tecnología en otras aplicaciones ajenas a la idea original de un accesorio para un videojuego. De hecho, existen sitios web dedicados de manera especial a aglutinar desarrolladores y creativos que cristalizan trabajos extraordinarios basados en el potencial de Kinect. Observa esto:

Microsoft superó sus expectativas iniciales al vender más de un millón de unidades Kinect en los 10 primeros días de aparecido el producto en las góndolas durante 2010. Por lo tanto, no es ninguna sorpresa que muchos de los componentes utilizados en el hardware, y que son básicos dentro de la estructura principal, correspondan a fabricantes diferentes. Por ejemplo, la unidad de memoria DDR2 SDRAM de 64 MB, luego de haber observado tres diferentes unidades (de distintas tandas de producción) del equipo, se ha demostrado que contienen partes equivalentes de marcas tales como Samsung, Hynix y Elpida. Del mismo modo, una memoria Flash NOR de 1 Mbyte de Silicon Storage Technology ocupa una ranura en una de las unidades Kinect observadas, mientras que la misma ranura posee un producto de STMicroelectronics en otras partidas. Kinect además, contiene muchos amplificadores operacionales y otros pequeños componentes discretos, también candidatos a múltiples compras y a una diversidad importante de fabricantes de semiconductores. Por lo tanto, no te sorprendas al descubrir que el contenido de tu Kinect puede variar respecto al de tu amigo o vecino.

Placas principales y Circuitos Integrados destacados dentro de Kinect (Foto EETimes)

Los “ojos” de Kinect, como mencionamos antes, son un par de cámaras. Estos captores son sensores de imágenes CMOS de Aptina Imaging y el modelo elegido utiliza el sensor de infrarrojos MT9M001, con píxeles de 5,2 micras. Vale aclarar que píxeles más grandes trabajan bien con poca luz y sumado esto a una correcta filtración, se prestan muy bien a las aplicaciones de infrarrojos. Por el lado de la entrada de información RGB se utiliza una cámara color, con un sensor MT9M112 y los dos sensores mencionados poseen una resolución de 1,3 mega-píxeles.

La interfaz utilizada para dar forma al  “procesamiento sensorial” es un chip PS1080 de PrimeSense, que se encarga de todos los controles del sistema, del proyector de infrarrojos, de los procesos de la información que cada cámara recoge y de las entradas de audio.  A su vez, el PS1080 establece su enlace a través de una conectividad USB 2.0  hacia uno de los  procesadores principales de aplicaciones dentro de Kinect. Estamos hablando del PXA168 que puede trabajar a velocidades tan altas como los jugadores más frenéticos puedan exigirle al sistema de proceso. Completando los dispositivos de entradas, nos encontramos con un par de convertidores analógicos-digitales estéreo, WM8737L de Wolfson Microelectronics, encargados de realizar el trabajo de preamplificadores de audio que dan cabida a la matriz de micrófonos ya mencionada. ¿Quieres ver el proceso de desarme ya mismo? Aquí lo tienes:

Kinect también cuenta con un acelerómetro MEMS, el KXSD9 de Kionix. Debido a que la unidad tiene un rango (limitado) de movimientos, este acelerómetro forma parte del bucle de control de inclinación, que también incluye el controlador para motor paso a paso, el A3906 de Allegro Microsystems. Otros componentes notables encontrados son el controlador uPD720114 que cumple la función de concentrador USB de NEC y un par de circuitos integrados de Texas Instruments: el TAS1020B que es un controlador de audio USB Streaming y un ADS7830  que es un convertidor analógico-digital de ocho canales y de 8 bits. Tal vez, lo más interesante de esta diversidad de marcas, en lo que hace a los componentes que dan forma a Kinect, es el hecho de que toda esto puede ser comprado por alrededor de 100 Euros (o menos). ¿Te imaginabas todo esto dentro de Kinect?

Reportar

¿Qué te pareció?

Escrito por Mario

16 Comments

Leave a Reply
  1. Me pregunto cuando saldrá la versión 2.0 de Kinect…

    Otra cosa, no se si tendra la misma tecnología que la camara que usaron para balancear los lapices
    (http://www.neoteo.com/pencil-balancer-vision-artificial-mas-cerca.neo)

    Eso aceleraría mucho el procesamiento de los datos, porque con dos cámaras son muchos datos para un PC normal…

    Eso es lo único que en mi opinión le falta a KINECT, la velocidad de refresco, por lo demas esto es un invento que va para largo…

  2. tengo que decir lo, me gusta la chava del vídeo que desarma el kinect, tiene un no sé que, creo que son sus ojos me gustan mucho…

  3. Jaja no se si alguien presto atención en como desarma el Kinect. Pero de seguro esta chica logro tener a sus pies una Orda de Geeks enamorados! juas… NeoTeo propongo que este en el Ranking de la chica Neoteo del año!! Salu2

    • jajaja, no.. le erraste feo..

      Ingenieria inversa es cuando atraves deun software de modelado ( por ejUML ), o un decompilador, se toman archivos binarios ejecutables de un software propietario, y se genera apartir de el Codigo Fuente o Diagramas de Secuencia/clases que permiten ver como esta echo.

      Lo que hacen es desarmar y ver como es 😀

      • Exactamente, y es tan ilegal dependiendo de que tipo de software se haga..

        Por ejemplo, so lo haces apartir de los binarios de un codigo propietario, no lo es..

        Pero yo en el software que hago, y es mio, aveces utilizo ingenieria inversa para generar documentacion, que seria muy tediosa de hacer a mano.

        Cuando uno compra un aparato, es dueño de hacer con el lo que quiera, ( Aunque a MAc y MSFT no le guste ) si lo quieres desarmar lo desarmas. y lo quieres tirar a la basura lo haces

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Cine 3D convertido en pantalla táctil gigante

Juegos Online de la Semana (10/02/11)