2. KINECT FOR WINDOWS
APRESENTAÇÃO
● Vitor A. Reis - vitor.reis7@gmail.com
● Desenvolvedor VBA, .NET no Grupo Custom
Software
● Blog: www.vitorreis7.wordpress.com
2
4. KINECT FOR WINDOWS
● Instalando e Usando o Sensor Kinect
● Configurando o Ambiente de Desenvolvimento
● Fundamentos da Camera
● Trabalhando com Dados de Profundidade
● Fundamentos de Rastreamento de Esqueleto
● Fundamentos de Audio
QUICKSTART SERIES
4
6. KINECT FOR WINDOWS
INTRODUÇÃO
● Elaborado para quem esta começando
● Assumindo que você tem alguma experiência
em programação.
● API Gerenciada - Conceitos funcionam em
VB/C#
6
7. KINECT FOR WINDOWS
SENSORES DO KINECT
Emissor de I.V Sensor de Cor Sensor I.V de
Profundidade
Eixo Motorizado
Microfone Multidirecional
7
11. KINECT FOR WINDOWS
● Instalando e Usando o Sensor Kinect
● Configurando o Ambiente de
Desenvolvimento
● Fundamentos da Camera
● Trabalhando com Dados de Profundidade
● Fundamentos de Rastreamento de Esqueleto
● Fundamento de Audio
QUICKSTART SERIES
11
12. KINECT FOR WINDOWS
KINECT API - BASICO
● Gerenciar o estado do Kinect
● Conectado
● Ativar Cor, Profundidade, Esqueleto
● Iniciar o Kinect
● Obter Dados
● Eventos - AllFramesReady
● Polling (Sondagem) – OpenNextFrame
12
13. KINECT FOR WINDOWS
RECURSOS
● Instalar Kinect Explorer
● KinectWpfViewers
● Coding4Fun Toolkit
● Skeletal scaling
13
16. KINECT FOR WINDOWS
● Instalando e Usando o Sensor Kinect
● Configurando o Ambiente de Desenvolvimento
● Fundamentos da Camera
● Trabalhando com Dados de Profundidade
● Fundamentos de Rastreamento de Esqueleto
● Fundamento de Audio
QUICKSTART SERIES
16
17. KINECT FOR WINDOWS
DADOS DA CAMERA
● Eventos retornam objetos do tipo ImageFrame
● PixelDataLength
● FrameNumber
● Timestamp
● Dimensões: Height, Width
● Usa o evento AllFramesReady para sincronizar.
17
21. KINECT FOR WINDOWS
● Instalando e Usando o Sensor Kinect
● Configurando o Ambiente de Desenvolvimento
● Fundamentos da Camera
● Trabalhando com Dados de Profundidade
● Fundamentos de Rastreamento de Esqueleto
● Fundamento de Audio
QUICKSTART SERIES
21
22. KINECT FOR WINDOWS
DADOS DE PROFUNDIDADE
● Retorna a distancia e jogador para cada pixel
● Ex: 320x240 = 76,800 pixels
● Distancia
● Distancia em mm do Kinect ex: 2,000mm (2 metros)
● Jogadores
● 1-6 jogadores
22
23. KINECT FOR WINDOWS
MODO
Modo Profundidade &
Jogador
Centro de Articulação
do Quadril
Outras 19
Articulações
Default (Padrão) Sim Sim Yes
Near (Perto) Sim Sim Não, para v1.0
23
25. KINECT FOR WINDOWS
FORMULAS
● Distance Formula
int profundidade = depthPoint >> DepthImageFrame.PlayerIndexBitmaskWidth;
● Player Formula
int jogador = depthPoint & DepthImageFrame.PlayerIndexBitmask;
25
28. KINECT FOR WINDOWS
● Instalando e Usando o Sensor Kinect
● Configurando o Ambiente de Desenvolvimento
● Fundamentos da Camera
● Trabalhando com Dados de Profundidade
● Fundamentos de Rastreamento de Esqueleto
● Fundamento de Audio
QUICKSTART SERIES
28
30. KINECT FOR WINDOWS
ARTICULAÇÕES DO
ESQUELETO
● Cada jogador possuí um conjunto <x, y, z> de articulações em
metros
● Cada articulação é associada a um estado
● Tracked, Not tracked, or Inferred
● Inferred - Occluded, clipped, ou low confidence joints
● Use TransformSmoothParameters para suavizar o jitter (atraso de
rede) nos dados de articulações.
30
31. KINECT FOR WINDOWS
RASTREAMENTO DE ESQUELETO
● Máximo de 2 jogadores rastreados simultaneamente
● Cada esqueleto possui um identificador único - TrackingID
● SkeletonStream
● Configurar AppChoosesSkeletons em false
● Utilizar o método ChooseSkeletons para escolher qual esqueleto irá
rastrear
31
34. KINECT FOR WINDOWS
● Instalando e Usando o Sensor Kinect
● Configurando o Ambiente de Desenvolvimento
● Fundamentos da Camera
● Trabalhando com Dados de Profundidade
● Fundamentos de Rastreamento de Esqueleto
● Fundamento de Audio
QUICKSTART SERIES
34
35. KINECT FOR WINDOWS
POSIÇÃO DO SOM
● Sound Source Angle – O ângulo e o nivel de confiança da onde o
audio esta vindo
● Beam Angle – O ângulo usado para gravar o audio que voce pode
considerar de "microfone direcional"
-50 0 +50
35
36. KINECT FOR WINDOWS
GRAVAÇÃO
● KinectAudioSource audio buffer
● Utiliza "Echo Cancellation" para não gravar o
som do PC.
36
37. KINECT FOR WINDOWS
RECONHECIMENTO DE FALA
● Grammar – O que estamos escutando
● Code – GrammarBuilder, Choices
● Nota: Garantir que AutomaticGainControl = false
37
39. KINECT FOR WINDOWS
● Modelo de Engajamento
● Indicação por fala para menus speech-enable
● Palavra chave para engajar
● Feedback e confirmação
MULTI-MODAL FEEDBACK
39