SlideShare a Scribd company logo
1 of 40
Download to read offline
KINECT 
Camila Pereira dos Santos RA: 69407 
Calvin Rodrigues da Costa RA: 69420
Kinect 
http://pt.wikipedia.org/wiki/Kinect 
❏ Lançado em 2010 pela Microsoft para o Xbox, posteriormente para 
Windows. 
❏ É uma combinação de câmeras, microfones e software que reconhece os 
movimentos corporais. 
❏ Isola cada jogador no ambiente por meio de 
reconhecimento da face e da voz. 
http://kotaku.com/5679411/review-kinect-sports
Hardware Câmera colorida VGA 
Usada para reconhecimento corporal e 
facial. 
Detecta as três cores vermelho, verde e 
azul 
Sensor de profundidade: 
Composto por um projetor infravermelho e 
um sensor CMOS monocromático. 
Funciona independente das condições de 
luz. 
Microfone multi-array 
Conjunto de quatro microfones que 
isola as vozes dos jogadores do ruído do 
ambiente. 
Resolução: 640 x 480-pixel 
30 FPS 
http://electronics.howstuffworks.com/microsoft-kinect2.htm
Sensor de profundidade 
Fonte de luz 
invisível 
ilumina a 
pessoa 
Chip do sensor mede 
a distância que a luz 
percorre, para cada 
pixel no chip 
Software usa mapa de 
profundidade para 
perceber e identificar 
objetos em tempo real 
Dispositivo final age 
apropriadamente 
http://www.jameco.com/jameco/workshop/howitworks/xboxkinect.html
Detecção de movimentos 
Identificação da posição do corpo: 
❏ Calcula um mapa de profundidade, usando a luz estruturada. 
Combinada com as técnicas de profundidade a partir do foco e 
profundidade a partir do stereo. 
❏ Infere posição do corpo por aprendizado de máquina.
Detecção de movimentos 
Figuras e esquema retirados de ohn MacCormick http://users. 
dickinson.edu/~jmac/selected-talks/kinect.pdf
Mapa de profundidade 
É construído pela análise do padrão de 
salpicamento da luz infravermelha. 
Tecnologia criada pela empresa PrimeSense. 
Shpunt et al, PrimeSense patent application 
US 2008/0106746 
*obs: Detalhes não são divulgados publicamente e são baseados nas especulações 
apresentadas em (John MacCormick).
Luz estruturada 
Técnica para analisar um padrão conhecido. 
A luz infra-vermelha projeta um padrão pré-definido na cena. 
A profundidade é obtida por meio da análise da deformação da luz na imagem 
obtida. 
Zhang et al, 3DPVT (2002)
Profundidade de foco 
O que está mais borrado na imagem está 
mais longe. 
O Kinect usa lentes com foco diferente nas 
direções x e y, de forma que a orientação do 
objeto define a sua profundidade 
Watanabe and Nayar, IJCV 27(3), 
1998
Profundidade a partir do foco 
Freedman et al, PrimeSense patent application 
US 2010/0290698
Profundidade a partir do Stereo 
Ao capturar a cena por outro ângulo, os 
objetos que estão mais próximos são mais 
deslocados que os que estão longe. 
Kinect captura e observa a cena de ângulos 
diferentes, e infere a profundidade pela 
análise do deslocamento no padrão de 
salpicamento 
[ M. Domínguez-Morales, A. Jiménez-Fernández, R. Paz- 
Vicente, A. Linares-Barranco, G. Jiménez-Moreno, 2012 ]
Detecção da posição do corpo 
1. Construção do mapa de profundidade. 
2. Partes do corpo são identificadas usando uma árvore de decisão 
aleatória. (Shotton et al (CVPR 2011)). 
Treinamento da árvore com 1 milhão de exemplos. 
P.1: mapeia imagens de profundidade em partes do corpo. 
P.2: transforma a imagem das partes do corpo em um esqueleto.
Detecção da posição do corpo
Detecção da posição do corpo 
Base inicial com 100000 imagens de profundidade e respectivos esqueletos. 
Shotton et al, CVPR 
(2011)
Detecção da posição do corpo 
Renderização por computação gráfica 
para 15 tipos de corpo diferentes e 
vários outros parâmetros. 
⇒ 1 milhão de exemplos 
Shotton et al, CVPR 
(2011)
Árvore de decisão aleatória 
Usada para mapear imagens de profundidade em partes do 
corpo. 
e.g: “Como a profundidade daquele pixel compara-se a 
esse?” 
Ntoulas et al, WWW (2006)
Árvore de decisão aleatória 
Árvore de decisão: Faz a pergunta mais relevante no momento. 
Ganho de informação ( derivado da entropia) 
Árvore de decisão aleatória 
Muitas possibilidades => seleciona cada pergunta aleatoriamente a partir 
de 2000 opções.
Floresta de decisão aleatória 
Usa floresta: aprende várias árvores. 
A classificação acrescenta distribuições de probabilidade para as árvores. 
Shotton et al, CVPR(2011)
Floresta de decisão aleatória 
Tempo de aprendizado: 
1 CPU: 24000 horas. 
Implementação distribuída: apenas 1 dia. 
● 3 árvores com profundidade 20. 
● 1 milhão de imagens. 
● 1000 núcleos. 
[Shotton et al, CVPR(2011)]
Identificação do esqueleto 
Algoritmo deslocamento 
médio 
Rápido e eficiente. 
Objetivo: encontrar a 
região mais densa 
Image from Ukrainitz & Sarel
Identificação do esqueleto 
Image from Ukrainitz & Sarel
Identificação do esqueleto 
Image from Ukrainitz & Sarel
Identificação do esqueleto 
Image from Ukrainitz & Sarel
Identificação do esqueleto 
Image from Ukrainitz & Sarel
Identificação do esqueleto 
Image from Ukrainitz & Sarel
Identificação do esqueleto 
Image from Ukrainitz & Sarel
Identificação do esqueleto
Detecção de Áudio 
Quatro microfones que permitem às aplicações responderem a comandos 
verbais. 
Imagem retirada de Human Interface Guidelines v2.0 
● Entrada de áudio: 
Detecta o áudio 50 graus à direita e à 
esquerda da frente do sensor.
Detecção de Áudio 
● Array de microfones: 
○ intervalos de 5 graus; 
○ pode ser utilizado para 
especificar a direção de sons 
importantes. 
● Limite de som: 
○ o array de microfones pode 
eliminar 20dB de ruídos do 
ambiente. 
Imagens retiradas de Human Interface Guidelines v2.0
Detecção de Áudio 
● Microfone direcional 
○ é possível direcionar de 
forma programática o array 
de microfones; 
● Fonte de som mais alta 
○ o Kinect para windows foca, 
por default, a fonte que 
fornece um áudio mais 
elevado. 
Imagens retiradas de Human Interface Guidelines v2.0
Kinect para Windows SDK 
● Requerimentos: 
○ Directx 9.0C; 
○ Visual Studio 2010 ou 2012 (inclusive express edition) 
○ .NET Framework 4 ou 4.5 
● Pode criar apps usando C#, VB.NET ou C++. 
❏ Programming guide: http://msdn.microsoft.com/en-us/ 
library/jj131023.aspx
Kinect para Windows SDK 
http://msdn.microsoft.com/en-us/library/jj131023. 
aspx
Kinect para Windows SDK 
http://msdn.microsoft.com/en-us/library/jj131023. 
aspx 
Audio and Video 
Components 
Kinect drivers 
Kinect hardware
Kinect para Windows SDK 
● Montando Blocos 
○ É possível dividir em: Data Streams & Recognition Streams 
http://www.kinectingforwindows.com/2013/04/01/introduction-to-kinect-for-windows-sdk/
Kinect para Windows SDK 
● Data Streams: uso direto das informações capturadas pelo 
sensor; 
● Recognition Streams: depende da obtenção e do processamento 
dos dados.
Kinect para Windows SDK 
● Existem implementadas 
algumas classes básicas 
úteis para o 
desenvolvimento. 
○ Mais informações: http: 
//tiny.cc/2r12ox 
http://www.kinectingforwindows. 
com/2013/04/01/introduction-to-kinect-for-windows- 
sdk/
Kinect para Windows SDK 
http://www.kinectingforwindows.com/2013/04/01/introduction-to-kinect- 
for-windows-sdk/
Exemplos 
Alguns exemplos interessantes são apresentados nos seguintes 
sites: 
● http://zip.net/bnp9ft - “Become The Incredible Hulk”; 
● http://zip.net/bxqbb8 - “Skeletal Tracking”; 
● http://zip.net/bjp8Y4 - “Hacks de Kinect com código fonte”; 
● http://zip.net/bfp84Q - “Conexão com o sensor”.
Referências bibliográficas 
● Shotton et al, CVPR(2011), Real-Time Human Pose Recognition in Parts 
from Single Depth Images 
Disponível em http://research.microsoft. 
com/pubs/145347/BodyPartRecognition.pdf 
● http://users.dickinson.edu/~jmac/selected-talks/kinect.pdf 
● http://electronics.howstuffworks.com/microsoft-kinect.htm 
● http://electronics.howstuffworks.com/microsoft-kinect2.htm 
● http://www.jameco.com/jameco/workshop/howitworks/xboxkinect.html 
● http://www.microsoft.com/en-us/kinectforwindows/ 
● http://www.cs.cmu.edu/~yaser/Lecture-4-Games.pdf 
● http://research.microsoft.com/pubs/145347/BodyPartRecognition.pdf
Referências bibliográficas 
● http://go.microsoft.com/fwlink/?LinkId=403900 
● http://www.kinectingforwindows.com/2013/04/01/introduction-to-kinect-for-windows- 
sdk/ 
● http://msdn.microsoft.com/en-us/library/hh855419.aspx 
● http://www.codeproject.com/Articles/213034/Kinect-Getting-Started- 
Become-The-Incredible-Hulk 
● http://rafaelnicolettdeveloper.wordpress.com/2012/06/23/skeletal-tracking-kinect- 
sdk-1-5/ 
● http://pichiliani.com.br/2013/04/hacks-de-kinect-com-codigo-fonte/ 
● http://blogpassword.wordpress.com/2013/04/16/desenvolvimento-para-kinect- 
conexao-com-o-sensor/

More Related Content

Viewers also liked

Excel
Excel Excel
Excel vaaane
 
Actividad no.10. trabajo colaborativo 2
Actividad no.10. trabajo colaborativo 2Actividad no.10. trabajo colaborativo 2
Actividad no.10. trabajo colaborativo 2veronicavelezbarrios
 
Câncer - Atualização pelo Hospital John Hopkins
Câncer - Atualização pelo Hospital John Hopkins Câncer - Atualização pelo Hospital John Hopkins
Câncer - Atualização pelo Hospital John Hopkins CORUM Cursos de Música
 
Perpres Nomor 86 Tahun 2013 Tentang Tunjangan Kinerja pegawai dilingkungan Ke...
Perpres Nomor 86 Tahun 2013 Tentang Tunjangan Kinerja pegawai dilingkungan Ke...Perpres Nomor 86 Tahun 2013 Tentang Tunjangan Kinerja pegawai dilingkungan Ke...
Perpres Nomor 86 Tahun 2013 Tentang Tunjangan Kinerja pegawai dilingkungan Ke...Parja Negara
 
Certificado participantes
Certificado participantesCertificado participantes
Certificado participantesPaulavelizs
 
Satélite terrasar
Satélite terrasarSatélite terrasar
Satélite terrasarLuiz Carlos
 
Quinta apresentação direito civil vii
Quinta apresentação direito civil viiQuinta apresentação direito civil vii
Quinta apresentação direito civil viiSamuel Viana
 
VOGUE SQUARE LIFE EXPERIENCE BARRA DA TIJUCA
VOGUE SQUARE LIFE EXPERIENCE BARRA DA TIJUCAVOGUE SQUARE LIFE EXPERIENCE BARRA DA TIJUCA
VOGUE SQUARE LIFE EXPERIENCE BARRA DA TIJUCAPorto Imóveis Rio
 
Capítulos I y II - Armando Alcalá
Capítulos I y II - Armando AlcaláCapítulos I y II - Armando Alcalá
Capítulos I y II - Armando Alcaláalcalarmando
 
Lida rodrigez actividad 1
Lida rodrigez actividad 1Lida rodrigez actividad 1
Lida rodrigez actividad 1tatisam1125
 
Clase semana 1 bases filio y cient
Clase semana 1 bases filio y cientClase semana 1 bases filio y cient
Clase semana 1 bases filio y cientmargothaguilar
 
Seminario autoconsumo UPAC UPP novembro 2014 zona norte portugal
Seminario autoconsumo UPAC UPP novembro 2014 zona norte portugalSeminario autoconsumo UPAC UPP novembro 2014 zona norte portugal
Seminario autoconsumo UPAC UPP novembro 2014 zona norte portugalKOSTAL Solar Electric Iberica
 
Trabajo en equipo
Trabajo en equipoTrabajo en equipo
Trabajo en equipoElio Aguana
 
Institucional Polymax Service
Institucional Polymax ServiceInstitucional Polymax Service
Institucional Polymax ServiceTammy Sakaguti
 
Vigiarepunir resenha
Vigiarepunir   resenhaVigiarepunir   resenha
Vigiarepunir resenhaRhai Calazans
 

Viewers also liked (20)

Excel
Excel Excel
Excel
 
Actividad no.10. trabajo colaborativo 2
Actividad no.10. trabajo colaborativo 2Actividad no.10. trabajo colaborativo 2
Actividad no.10. trabajo colaborativo 2
 
Câncer - Atualização pelo Hospital John Hopkins
Câncer - Atualização pelo Hospital John Hopkins Câncer - Atualização pelo Hospital John Hopkins
Câncer - Atualização pelo Hospital John Hopkins
 
Eminem
EminemEminem
Eminem
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Perpres Nomor 86 Tahun 2013 Tentang Tunjangan Kinerja pegawai dilingkungan Ke...
Perpres Nomor 86 Tahun 2013 Tentang Tunjangan Kinerja pegawai dilingkungan Ke...Perpres Nomor 86 Tahun 2013 Tentang Tunjangan Kinerja pegawai dilingkungan Ke...
Perpres Nomor 86 Tahun 2013 Tentang Tunjangan Kinerja pegawai dilingkungan Ke...
 
Certificado participantes
Certificado participantesCertificado participantes
Certificado participantes
 
год экологии
год экологиигод экологии
год экологии
 
Satélite terrasar
Satélite terrasarSatélite terrasar
Satélite terrasar
 
Quinta apresentação direito civil vii
Quinta apresentação direito civil viiQuinta apresentação direito civil vii
Quinta apresentação direito civil vii
 
VOGUE SQUARE LIFE EXPERIENCE BARRA DA TIJUCA
VOGUE SQUARE LIFE EXPERIENCE BARRA DA TIJUCAVOGUE SQUARE LIFE EXPERIENCE BARRA DA TIJUCA
VOGUE SQUARE LIFE EXPERIENCE BARRA DA TIJUCA
 
Instrucciones
InstruccionesInstrucciones
Instrucciones
 
Capítulos I y II - Armando Alcalá
Capítulos I y II - Armando AlcaláCapítulos I y II - Armando Alcalá
Capítulos I y II - Armando Alcalá
 
Direito civil i
Direito civil iDireito civil i
Direito civil i
 
Lida rodrigez actividad 1
Lida rodrigez actividad 1Lida rodrigez actividad 1
Lida rodrigez actividad 1
 
Clase semana 1 bases filio y cient
Clase semana 1 bases filio y cientClase semana 1 bases filio y cient
Clase semana 1 bases filio y cient
 
Seminario autoconsumo UPAC UPP novembro 2014 zona norte portugal
Seminario autoconsumo UPAC UPP novembro 2014 zona norte portugalSeminario autoconsumo UPAC UPP novembro 2014 zona norte portugal
Seminario autoconsumo UPAC UPP novembro 2014 zona norte portugal
 
Trabajo en equipo
Trabajo en equipoTrabajo en equipo
Trabajo en equipo
 
Institucional Polymax Service
Institucional Polymax ServiceInstitucional Polymax Service
Institucional Polymax Service
 
Vigiarepunir resenha
Vigiarepunir   resenhaVigiarepunir   resenha
Vigiarepunir resenha
 

Similar to Seminario Kinect

Desenvolvendo aplicações com Kinect
Desenvolvendo aplicações com KinectDesenvolvendo aplicações com Kinect
Desenvolvendo aplicações com KinectErick Mendonça
 
Conhecendo o Kinect: Muito além do XBOX - InfoTech 2012
Conhecendo o Kinect: Muito além do XBOX - InfoTech 2012Conhecendo o Kinect: Muito além do XBOX - InfoTech 2012
Conhecendo o Kinect: Muito além do XBOX - InfoTech 2012André Paulovich
 
Apresentacao minicursofinal
Apresentacao minicursofinalApresentacao minicursofinal
Apresentacao minicursofinalAlmerindo Rehem
 
Reconhecimento de Gestos em Imagens de Profundidade com Utilização do Sensor ...
Reconhecimento de Gestos em Imagens de Profundidade com Utilização do Sensor ...Reconhecimento de Gestos em Imagens de Profundidade com Utilização do Sensor ...
Reconhecimento de Gestos em Imagens de Profundidade com Utilização do Sensor ...testes1
 
Adaptando e desenvolvendo jogos para uso com o Microsoft Kinect
Adaptando e desenvolvendo jogos para uso com o Microsoft KinectAdaptando e desenvolvendo jogos para uso com o Microsoft Kinect
Adaptando e desenvolvendo jogos para uso com o Microsoft KinectBruno Campagnolo
 
NUI - Natural User Interface utilizando kinect
NUI - Natural User Interface utilizando kinectNUI - Natural User Interface utilizando kinect
NUI - Natural User Interface utilizando kinectVitor Reis
 
Kinect: Muito além do XBOX - SEMCOMP 2012
Kinect: Muito além do XBOX - SEMCOMP 2012Kinect: Muito além do XBOX - SEMCOMP 2012
Kinect: Muito além do XBOX - SEMCOMP 2012André Paulovich
 
Unama br edinaldo_la-roque_oficina_kinect_20160917_2030
Unama br edinaldo_la-roque_oficina_kinect_20160917_2030Unama br edinaldo_la-roque_oficina_kinect_20160917_2030
Unama br edinaldo_la-roque_oficina_kinect_20160917_2030la-roque
 
Desenvolvendo Aplicativos para o Kinect
Desenvolvendo Aplicativos para o KinectDesenvolvendo Aplicativos para o Kinect
Desenvolvendo Aplicativos para o KinectBruno Campagnolo
 
18.ago ouro i 11.15_463_copel-d
18.ago ouro i 11.15_463_copel-d18.ago ouro i 11.15_463_copel-d
18.ago ouro i 11.15_463_copel-ditgfiles
 
Rastreamento 3D de objetos para realidade virtual
Rastreamento 3D de objetos para realidade virtualRastreamento 3D de objetos para realidade virtual
Rastreamento 3D de objetos para realidade virtualpichiliani
 
Suportes e Ferramentas de Imagem módulo 4 CGAV
Suportes e Ferramentas de Imagem módulo 4 CGAVSuportes e Ferramentas de Imagem módulo 4 CGAV
Suportes e Ferramentas de Imagem módulo 4 CGAVAnacatgarrido
 
DelphiConferenceBrasil2011 Delphi + Kinect
DelphiConferenceBrasil2011 Delphi + KinectDelphiConferenceBrasil2011 Delphi + Kinect
DelphiConferenceBrasil2011 Delphi + KinectVic Fernandes
 
Animação e vídeo - Equipe 02
Animação e vídeo - Equipe 02Animação e vídeo - Equipe 02
Animação e vídeo - Equipe 02MPCOMP10
 

Similar to Seminario Kinect (20)

Desenvolvendo aplicações com Kinect
Desenvolvendo aplicações com KinectDesenvolvendo aplicações com Kinect
Desenvolvendo aplicações com Kinect
 
Conhecendo o Kinect: Muito além do XBOX - InfoTech 2012
Conhecendo o Kinect: Muito além do XBOX - InfoTech 2012Conhecendo o Kinect: Muito além do XBOX - InfoTech 2012
Conhecendo o Kinect: Muito além do XBOX - InfoTech 2012
 
Apresentacao minicursofinal
Apresentacao minicursofinalApresentacao minicursofinal
Apresentacao minicursofinal
 
Reconhecimento de Gestos em Imagens de Profundidade com Utilização do Sensor ...
Reconhecimento de Gestos em Imagens de Profundidade com Utilização do Sensor ...Reconhecimento de Gestos em Imagens de Profundidade com Utilização do Sensor ...
Reconhecimento de Gestos em Imagens de Profundidade com Utilização do Sensor ...
 
Adaptando e desenvolvendo jogos para uso com o Microsoft Kinect
Adaptando e desenvolvendo jogos para uso com o Microsoft KinectAdaptando e desenvolvendo jogos para uso com o Microsoft Kinect
Adaptando e desenvolvendo jogos para uso com o Microsoft Kinect
 
NUI - Natural User Interface utilizando kinect
NUI - Natural User Interface utilizando kinectNUI - Natural User Interface utilizando kinect
NUI - Natural User Interface utilizando kinect
 
OpenKinect, o Kinect para todos
OpenKinect, o Kinect para todosOpenKinect, o Kinect para todos
OpenKinect, o Kinect para todos
 
Kinect: Muito além do XBOX - SEMCOMP 2012
Kinect: Muito além do XBOX - SEMCOMP 2012Kinect: Muito além do XBOX - SEMCOMP 2012
Kinect: Muito além do XBOX - SEMCOMP 2012
 
Unama br edinaldo_la-roque_oficina_kinect_20160917_2030
Unama br edinaldo_la-roque_oficina_kinect_20160917_2030Unama br edinaldo_la-roque_oficina_kinect_20160917_2030
Unama br edinaldo_la-roque_oficina_kinect_20160917_2030
 
TDC - Desenvolvendo com Kinect
TDC - Desenvolvendo com KinectTDC - Desenvolvendo com Kinect
TDC - Desenvolvendo com Kinect
 
Desenvolvendo Aplicativos para o Kinect
Desenvolvendo Aplicativos para o KinectDesenvolvendo Aplicativos para o Kinect
Desenvolvendo Aplicativos para o Kinect
 
CGPI Aula 27/08/2018
CGPI Aula 27/08/2018CGPI Aula 27/08/2018
CGPI Aula 27/08/2018
 
Digital Definitivo
Digital DefinitivoDigital Definitivo
Digital Definitivo
 
18.ago ouro i 11.15_463_copel-d
18.ago ouro i 11.15_463_copel-d18.ago ouro i 11.15_463_copel-d
18.ago ouro i 11.15_463_copel-d
 
Rastreamento 3D de objetos para realidade virtual
Rastreamento 3D de objetos para realidade virtualRastreamento 3D de objetos para realidade virtual
Rastreamento 3D de objetos para realidade virtual
 
Suportes e Ferramentas de Imagem módulo 4 CGAV
Suportes e Ferramentas de Imagem módulo 4 CGAVSuportes e Ferramentas de Imagem módulo 4 CGAV
Suportes e Ferramentas de Imagem módulo 4 CGAV
 
DelphiConferenceBrasil2011 Delphi + Kinect
DelphiConferenceBrasil2011 Delphi + KinectDelphiConferenceBrasil2011 Delphi + Kinect
DelphiConferenceBrasil2011 Delphi + Kinect
 
Animação e vídeo - Equipe 02
Animação e vídeo - Equipe 02Animação e vídeo - Equipe 02
Animação e vídeo - Equipe 02
 
Dismistificando deep learning
Dismistificando deep learningDismistificando deep learning
Dismistificando deep learning
 
Dissertacao
DissertacaoDissertacao
Dissertacao
 

Seminario Kinect

  • 1. KINECT Camila Pereira dos Santos RA: 69407 Calvin Rodrigues da Costa RA: 69420
  • 2. Kinect http://pt.wikipedia.org/wiki/Kinect ❏ Lançado em 2010 pela Microsoft para o Xbox, posteriormente para Windows. ❏ É uma combinação de câmeras, microfones e software que reconhece os movimentos corporais. ❏ Isola cada jogador no ambiente por meio de reconhecimento da face e da voz. http://kotaku.com/5679411/review-kinect-sports
  • 3. Hardware Câmera colorida VGA Usada para reconhecimento corporal e facial. Detecta as três cores vermelho, verde e azul Sensor de profundidade: Composto por um projetor infravermelho e um sensor CMOS monocromático. Funciona independente das condições de luz. Microfone multi-array Conjunto de quatro microfones que isola as vozes dos jogadores do ruído do ambiente. Resolução: 640 x 480-pixel 30 FPS http://electronics.howstuffworks.com/microsoft-kinect2.htm
  • 4. Sensor de profundidade Fonte de luz invisível ilumina a pessoa Chip do sensor mede a distância que a luz percorre, para cada pixel no chip Software usa mapa de profundidade para perceber e identificar objetos em tempo real Dispositivo final age apropriadamente http://www.jameco.com/jameco/workshop/howitworks/xboxkinect.html
  • 5. Detecção de movimentos Identificação da posição do corpo: ❏ Calcula um mapa de profundidade, usando a luz estruturada. Combinada com as técnicas de profundidade a partir do foco e profundidade a partir do stereo. ❏ Infere posição do corpo por aprendizado de máquina.
  • 6. Detecção de movimentos Figuras e esquema retirados de ohn MacCormick http://users. dickinson.edu/~jmac/selected-talks/kinect.pdf
  • 7. Mapa de profundidade É construído pela análise do padrão de salpicamento da luz infravermelha. Tecnologia criada pela empresa PrimeSense. Shpunt et al, PrimeSense patent application US 2008/0106746 *obs: Detalhes não são divulgados publicamente e são baseados nas especulações apresentadas em (John MacCormick).
  • 8. Luz estruturada Técnica para analisar um padrão conhecido. A luz infra-vermelha projeta um padrão pré-definido na cena. A profundidade é obtida por meio da análise da deformação da luz na imagem obtida. Zhang et al, 3DPVT (2002)
  • 9. Profundidade de foco O que está mais borrado na imagem está mais longe. O Kinect usa lentes com foco diferente nas direções x e y, de forma que a orientação do objeto define a sua profundidade Watanabe and Nayar, IJCV 27(3), 1998
  • 10. Profundidade a partir do foco Freedman et al, PrimeSense patent application US 2010/0290698
  • 11. Profundidade a partir do Stereo Ao capturar a cena por outro ângulo, os objetos que estão mais próximos são mais deslocados que os que estão longe. Kinect captura e observa a cena de ângulos diferentes, e infere a profundidade pela análise do deslocamento no padrão de salpicamento [ M. Domínguez-Morales, A. Jiménez-Fernández, R. Paz- Vicente, A. Linares-Barranco, G. Jiménez-Moreno, 2012 ]
  • 12. Detecção da posição do corpo 1. Construção do mapa de profundidade. 2. Partes do corpo são identificadas usando uma árvore de decisão aleatória. (Shotton et al (CVPR 2011)). Treinamento da árvore com 1 milhão de exemplos. P.1: mapeia imagens de profundidade em partes do corpo. P.2: transforma a imagem das partes do corpo em um esqueleto.
  • 14. Detecção da posição do corpo Base inicial com 100000 imagens de profundidade e respectivos esqueletos. Shotton et al, CVPR (2011)
  • 15. Detecção da posição do corpo Renderização por computação gráfica para 15 tipos de corpo diferentes e vários outros parâmetros. ⇒ 1 milhão de exemplos Shotton et al, CVPR (2011)
  • 16. Árvore de decisão aleatória Usada para mapear imagens de profundidade em partes do corpo. e.g: “Como a profundidade daquele pixel compara-se a esse?” Ntoulas et al, WWW (2006)
  • 17. Árvore de decisão aleatória Árvore de decisão: Faz a pergunta mais relevante no momento. Ganho de informação ( derivado da entropia) Árvore de decisão aleatória Muitas possibilidades => seleciona cada pergunta aleatoriamente a partir de 2000 opções.
  • 18. Floresta de decisão aleatória Usa floresta: aprende várias árvores. A classificação acrescenta distribuições de probabilidade para as árvores. Shotton et al, CVPR(2011)
  • 19. Floresta de decisão aleatória Tempo de aprendizado: 1 CPU: 24000 horas. Implementação distribuída: apenas 1 dia. ● 3 árvores com profundidade 20. ● 1 milhão de imagens. ● 1000 núcleos. [Shotton et al, CVPR(2011)]
  • 20. Identificação do esqueleto Algoritmo deslocamento médio Rápido e eficiente. Objetivo: encontrar a região mais densa Image from Ukrainitz & Sarel
  • 21. Identificação do esqueleto Image from Ukrainitz & Sarel
  • 22. Identificação do esqueleto Image from Ukrainitz & Sarel
  • 23. Identificação do esqueleto Image from Ukrainitz & Sarel
  • 24. Identificação do esqueleto Image from Ukrainitz & Sarel
  • 25. Identificação do esqueleto Image from Ukrainitz & Sarel
  • 26. Identificação do esqueleto Image from Ukrainitz & Sarel
  • 28. Detecção de Áudio Quatro microfones que permitem às aplicações responderem a comandos verbais. Imagem retirada de Human Interface Guidelines v2.0 ● Entrada de áudio: Detecta o áudio 50 graus à direita e à esquerda da frente do sensor.
  • 29. Detecção de Áudio ● Array de microfones: ○ intervalos de 5 graus; ○ pode ser utilizado para especificar a direção de sons importantes. ● Limite de som: ○ o array de microfones pode eliminar 20dB de ruídos do ambiente. Imagens retiradas de Human Interface Guidelines v2.0
  • 30. Detecção de Áudio ● Microfone direcional ○ é possível direcionar de forma programática o array de microfones; ● Fonte de som mais alta ○ o Kinect para windows foca, por default, a fonte que fornece um áudio mais elevado. Imagens retiradas de Human Interface Guidelines v2.0
  • 31. Kinect para Windows SDK ● Requerimentos: ○ Directx 9.0C; ○ Visual Studio 2010 ou 2012 (inclusive express edition) ○ .NET Framework 4 ou 4.5 ● Pode criar apps usando C#, VB.NET ou C++. ❏ Programming guide: http://msdn.microsoft.com/en-us/ library/jj131023.aspx
  • 32. Kinect para Windows SDK http://msdn.microsoft.com/en-us/library/jj131023. aspx
  • 33. Kinect para Windows SDK http://msdn.microsoft.com/en-us/library/jj131023. aspx Audio and Video Components Kinect drivers Kinect hardware
  • 34. Kinect para Windows SDK ● Montando Blocos ○ É possível dividir em: Data Streams & Recognition Streams http://www.kinectingforwindows.com/2013/04/01/introduction-to-kinect-for-windows-sdk/
  • 35. Kinect para Windows SDK ● Data Streams: uso direto das informações capturadas pelo sensor; ● Recognition Streams: depende da obtenção e do processamento dos dados.
  • 36. Kinect para Windows SDK ● Existem implementadas algumas classes básicas úteis para o desenvolvimento. ○ Mais informações: http: //tiny.cc/2r12ox http://www.kinectingforwindows. com/2013/04/01/introduction-to-kinect-for-windows- sdk/
  • 37. Kinect para Windows SDK http://www.kinectingforwindows.com/2013/04/01/introduction-to-kinect- for-windows-sdk/
  • 38. Exemplos Alguns exemplos interessantes são apresentados nos seguintes sites: ● http://zip.net/bnp9ft - “Become The Incredible Hulk”; ● http://zip.net/bxqbb8 - “Skeletal Tracking”; ● http://zip.net/bjp8Y4 - “Hacks de Kinect com código fonte”; ● http://zip.net/bfp84Q - “Conexão com o sensor”.
  • 39. Referências bibliográficas ● Shotton et al, CVPR(2011), Real-Time Human Pose Recognition in Parts from Single Depth Images Disponível em http://research.microsoft. com/pubs/145347/BodyPartRecognition.pdf ● http://users.dickinson.edu/~jmac/selected-talks/kinect.pdf ● http://electronics.howstuffworks.com/microsoft-kinect.htm ● http://electronics.howstuffworks.com/microsoft-kinect2.htm ● http://www.jameco.com/jameco/workshop/howitworks/xboxkinect.html ● http://www.microsoft.com/en-us/kinectforwindows/ ● http://www.cs.cmu.edu/~yaser/Lecture-4-Games.pdf ● http://research.microsoft.com/pubs/145347/BodyPartRecognition.pdf
  • 40. Referências bibliográficas ● http://go.microsoft.com/fwlink/?LinkId=403900 ● http://www.kinectingforwindows.com/2013/04/01/introduction-to-kinect-for-windows- sdk/ ● http://msdn.microsoft.com/en-us/library/hh855419.aspx ● http://www.codeproject.com/Articles/213034/Kinect-Getting-Started- Become-The-Incredible-Hulk ● http://rafaelnicolettdeveloper.wordpress.com/2012/06/23/skeletal-tracking-kinect- sdk-1-5/ ● http://pichiliani.com.br/2013/04/hacks-de-kinect-com-codigo-fonte/ ● http://blogpassword.wordpress.com/2013/04/16/desenvolvimento-para-kinect- conexao-com-o-sensor/