Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Desarrollo de interfaces humanas con Xbox Kinect y Visual Studio 2010

5,551 views

Published on

Descubre las particularidades del desarrollo de software para Kinect; el accesorio que promete revolucionar el futuro de los videojuegos y ser el próximo éxito con los usuarios y desarrolladores. Ponente: Edgar Sanchez

  • Be the first to comment

Desarrollo de interfaces humanas con Xbox Kinect y Visual Studio 2010

  1. 1. Interfaces de usuario naturales con Kinect, C# y Visual Studio 2010 Edgar Sánchez Logic Studio
  2. 2. Introducción Diseñada para darte el empujón inicial Se asume que tienes alguna experiencia en programación API administrada – Los conceptos funcionan en VB/C# (y también en F# ;-)
  3. 3. Agenda Instalación y uso del sensor Kinect Preparación del ambiente de desarrollo Fundamentos de la cámara Trabajando con datos de profundidad Fundamentos de seguimiento de esqueletos Fundamentos de audio
  4. 4. Instalación y uso del sensorKinect
  5. 5. Sensores de profundidad 3D Cámara RGBMicrófono multi-arreglo Inclinación motorizada
  6. 6. Cable USB de Kinect
  7. 7. Descargar ahora http://research.microsoft.com/kinectsdk/
  8. 8. Demos
  9. 9. Preparación del ambiente dedesarrollo
  10. 10. Agenda Instalación y uso del sensor Kinect Preparación del ambiente de desarrollo Fundamentos de la cámara Trabajando con datos de profundidad Fundamentos de seguimiento de esqueletos Fundamentos de audio
  11. 11. Requisitos de los ejemplos Ejemplos con DirectX – Microsoft DirectX® SDK - June 2010 o posterior – Runtime actual de Microsoft DirectX® 9 Ejemplos con voz – Microsoft Speech Platform Runtime, version 10.2 (edición x86) – Microsoft Kinect Speech Platform (versión US-English) – Microsoft Speech Platform - Software Development Kit, version 10.2 (edición x86)
  12. 12. Demos
  13. 13. Fundamentos de la cámara
  14. 14. Agenda Instalación y uso del sensor Kinect Preparación del ambiente de desarrollo Fundamentos de la cámara Trabajando con datos de profundidad Fundamentos de seguimiento de esqueletos Fundamentos de audio
  15. 15. Datos de la cámara
  16. 16. Zancada (stride)Zancada - # de bytes de unafila de pixels en memoria a lasiguiente
  17. 17. Demos
  18. 18. Trabajando con datos deprofundidad
  19. 19. Agenda Instalación y uso del sensor Kinect Preparación del ambiente de desarrollo Fundamentos de la cámara Trabajando con datos de profundidad Fundamentos de seguimiento de esqueletos Fundamentos de audio
  20. 20. Camera Data
  21. 21. Buffer de bytes deprofundidad ImageFrame.Image.Bits Arreglo de bytes public byte[] Bits; Arreglo – Empieza arriba/izquierda de la imagen – Se mueve de izquierda a derecha, y de arriba a abajo – Representa la distancia para cada pixel
  22. 22. Calculo de la distancia 2 bytes por pixel (16 bits) Profundidad – Distancia por pixel – Bitshift second byte by 8 – Distance (0,0) = (int)(Bits[0] | Bits[1] << 8); Índice DepthAndPlayer – Incluye el índice del jugador – Desplaz. de bits 3 primer byte (índice de jugador), 5 segundo byte – Distancia (0,0) =(int)(Bits[0] >> 3 | Bits[1] << 5);
  23. 23. Referencia de profundidad Rango de distancia: 850 mm a 4000 mm Profundidad de 0 significa desconocido – Sombras, baja/alta reflectividad entre otras razones Índice de jugador – 0 – Sin jugador – 1 – Esqueleto 0 – 2 – Esqueleto 1
  24. 24. Demos
  25. 25. Fundamentos de seguimiento deesqueletos
  26. 26. Agenda Instalación y uso del sensor Kinect Preparación del ambiente de desarrollo Fundamentos de la cámara Trabajando con datos de profundidad Fundamentos de seguimiento de esqueletos Fundamentos de audio
  27. 27. API de esqueletos
  28. 28. Datos de esqueletos
  29. 29. Junturas Máximo dos jugadores detectados a la vez – Propuestas para seis jugadores Cada jugador con un conjunto de junturas <x, y, z> en metros Cada juntura tiene un estado asociado – Tracked, Not tracked, o Inferred Inferred – Junturas ocultas, recortadas o de baja confianza Not Tracked – Inusual, pero el código debe controlar este estado
  30. 30. Demos

×