Este documento presenta una introducción al uso del sensor Kinect. La agenda incluye instrucciones sobre la instalación y uso del sensor Kinect, la preparación del entorno de desarrollo, los fundamentos de la cámara, trabajar con datos de profundidad, los fundamentos del seguimiento esqueletal y los fundamentos de audio. Se proporcionan detalles sobre los requisitos del software, los datos de la cámara como la zancada, el cálculo de la distancia a partir de los datos de profundidad y la estructura de los datos esqueletales incl
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. 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
9. 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
10. 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)
13. 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
18. 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. Buffer de bytes de
profundidad
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
21. 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);
22. 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
25. 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
28. 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