• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Desenvolvendo Aplicativos para o Kinect
 

Desenvolvendo Aplicativos para o Kinect

on

  • 14,610 views

- Vamos aprender o que é o Kinect;...

- Vamos aprender o que é o Kinect;
- Arquitetura básica;
- Falar sobre o princípios de funcionamento;
- Demonstrar ferramentas de desenvolvimento e o SDK oficial.
- Comentar sobre aplicações e projetos.

Statistics

Views

Total Views
14,610
Views on SlideShare
13,758
Embed Views
852

Actions

Likes
5
Downloads
286
Comments
0

5 Embeds 852

http://www.brunocampagnolo.com 845
http://www.slideshare.net 2
http://us-w1.rockmelt.com 2
http://paper.li 2
http://translate.googleusercontent.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • + Dados (http://www.lukew.com/ff/entry.asp?1348): 2,5 milhões em 30 dias; 2/3 dos donos de XBOX americanos compraram um Kinect; Ganhou o MacRober Award. 26/07/11
  • 26/07/11
  • http://veja.abril.com.br/noticia/vida-digital/%E2%80%9Cdesenvolvi-o-primeiro-prototipo-em-dois-meses%E2%80%9D-diz-criador-do-kinect "Ao acordar um dia, percebi que não havia qualquer dispositivo eletrônico ao meu redor e gostei daquela sensação. Então, pensei que seria bom jogar games daquela maneira, sem fios ou controles: decidi dar fim aos botões” http://www.engadget.com/2009/06/03/microsofts-project-natal-roots-revealed-3dv-systems-zcam/ 26/07/11
  • http://jogos.uol.com.br/videos/player.jhtm?mediaId=entrevista-com-alex-kipman-04029B3560D0B98307 26/07/11
  • Fonte: http://www.wired.com/magazine/2011/06/mf_kinect/all/1 26/07/11
  • Imagem original: - http://blogs.msdn.com/b/eternalcoding/archive/2011/06/13/unleash-the-power-of-kinect-for-windows-sdk.aspx 26/07/11
  • Ilustração do design de referência da PrimeSense, parceira da Microsoft no desenvolvimento do Kinect Retirado de: http://readwriteweb.com.br/2010/11/09/um-cientista-explica-o-microsoft-kinect/ Fonte da 2ª imagem: http://www.wired.com/gadgetlab/2010/11/kinect-teardown-reveals-ir-projector-fan/ 26/07/11
  • Figura original em: http://www.mattcutts.com/blog/open-kinect-contest/ Veja também o video em: http://www.youtube.com/watch?v=nvvQJxgykcU 26/07/11
  • Ver mais sobre como hackear um dispositivo USB: http://www.ladyada.net/learn/diykinect/ 26/07/11

Desenvolvendo Aplicativos para o Kinect Desenvolvendo Aplicativos para o Kinect Presentation Transcript

  • Kinect Semana Acadêmica de Ciência da Computação - PUCPR Bruno C. de Paula
  • Quem sou eu? Bruno Campagnolo de Paula brunodepaula@gmail.com http://www.brunocampagnolo.com http://twitter.com/bcp
  • Por que estou aqui? 26/07/11 Centro de Engenharia de Sistemas Inteligentes
  • Interesse em aplicações para a GGJ12 ! Global Game Jam 2010 e 2011 ( Curitiba ) 26/07/11 Saiba mais em: http://www.ggjcwb.com/2011/02/relatorio/
  • Resumo
    • Vamos aprender o que é o Kinect;
    • Arquitetura básica ;
    • Falar sobre o princípios de funcionamento ;
    • Demonstrar ferramentas de desenvolvimento e o SDK oficial.
    • Comentar sobre aplicações e projetos.
  • Público-alvo da palestra
    • Pessoal da computação em geral ;
    • Interessados em robótica ;
    • Desenvolvedores de jogos;
    • Pesquisadores e desenvolvedores interessados no futuro dos sistemas de informação ;
    • Educadores ( gesture based learning ).
    26/07/11
  • O que é o Kinect?
    • Dispositivo de interação natural ;
    • Microsoft;
    • XBOX 360 ( jogos );
    • Lançamento: 4/11/2010 ;
    • 8 milhões vendidos em 60 dias ( recorde );
    • 10 milhões até março de 2011;
    26/07/11
  • Motivação para criação do Kinect
    • Sucesso do Wii;
    26/07/11
  • Wii / Kinect não são tão pioneiros! Dispositivos de interface natural
    • Trabalhos de Myron Krueger (Video Place), Activator, EyeToy, Track IR, projetos finais;
    • Problemas sempre foram: performance e reconhecimento facial.
    26/07/11
  • Kinect não é o único dispositivo moderno de interface natural atual
    • Wavi Xtion da Asus
    26/07/11
  • Kinect não vai ser o único dispositivo futuro de interface natural
    • Windows 8/9;
    • iOs 6;
    26/07/11
  • Projeto Natal - Origem
    • Forte P&D;
    • Alex Kipmann - Diretor de incubação da Microsoft;
    • PrimeSense ;
    • 3DV Systems.
    26/07/11
  • History is about to be rewritten. This time human beings will be at the centre -- and the machines will be the ones that adapt . (apresentação do Kinect 2010 )
  • 26/07/11 Se você sabe mover-se você sabe usar o Kinect
  • 26/07/11 Qualquer tecnologia suficientemente avançada é indistinguível de magia. Arthur C. Clarke
  • Arquitetura do Kinect 26/07/11
  • Arquitetura do Kinect 26/07/11 Projetor de Luz Infravermelha (invisível) Câmera RGB (“comum”) Câmera infravermelha Conjunto de microfones Motor
  • Arquitetura do Kinect 26/07/11
  • Arquitetura do Kinect Image Stream
    • Cada pixel representa uma cor;
    • 640x480 (30 fps) OU
    • 1280x1024 ( máximo 15 fps);
    26/07/11
  • Arquitetura do Kinect Depth Stream
    • Cada pixel representa a distância em relação ao objeto;
      • 11 bits de precisão ( 2048 níveis de sensibilidade);
      • 1.2 a 3.5 metros;
    • 640x480 (30 fps – sem informação do jogador) e 320x240 (30 fps – com informação do jogador);
    26/07/11
  • Arquitetura do Kinect Audio Stream
    • 4 microfones;
    • Anula ruído e eco.
    • Permite gravação de audio;
    • Excelente reconhecimento de fala (em inglês );
    26/07/11
  • Arquitetura do Kinect Motor
    • 27 graus para cima ou para baixo;
    • Não chamar com muita freqüencia;
    • SDK limita em 15 vezes a cada 20 segundos.
    26/07/11
  • Sensor de profundidade 3d do Kinect 26/07/11 Projetor de Luz Infravermelha Câmera infravermelha Sensor de Profundidade 3D
  • Princípio de funcionamento do sensor de profundidade 3D
    • Medição de um “ padrão ” invisível projetado no corpo;
    26/07/11 Observação: não é uma câmera estereoscópica !
  • Informações de esqueleto dos jogadores
    • Detecta até 6 jogadores ;
    • Obtém informação de esqueleto de 2 jogadores ;
    • Dá para obter a qualidade da captura;
    • Este é o grande destaque do Kinect na área de Machine Learning .
    26/07/11
  • O que dá para fazer com tudo isto?
    • Vídeo sobre Os 5 primeiros meses do Kinect;
    • Antes do lançamento do SDK Oficial!!
    26/07/11
  • Desenvolvendo para o Kinect
    • Drivers abertos ( Open Kinect ):
      • Windows XP, Vista, 7;
      • MacOS X;
      • Linux;
      • Open Source;
    • OpenNI (PrimeSense):
      • Windows, Linux, Mac OS X;
    • Kinect SDK :
      • Oficial da Microsoft;
      • Apenas para Windows 7 ;
    26/07/11
  • Desenvolvendo para o Kinect Drivers abertos
    • Após o lançamento foi “hackeado” em poucos dias ;
    • Ele é um dispositivo USB não criptografado !
    • Microsoft já estava prevendo usos fora do XBOX;
    • Open Kinect Contest
      • US$ 3.000,00;
    26/07/11
  • Desenvolvendo para o Kinect OpenNI
    • Wrappers para linguagens diversas:
      • C, C++, Processing, Java, Scratch;
    • Fácil de integrar com o FAAST ;
    • O FAAST permite a criação de programas para o Kinect sem saber programar para o Kinect.
    26/07/11
  • Desenvolvendo para o Kinect SDK oficial
    • 13/junho/2011
    • Windows 7;
    • 2GB RAM;
    • DirectX 9.0c;
    • Dual Core 2.66 GHz;
    • Versão Beta ;
    • Licença não-comercial ( cuidado !!) ;
    26/07/11
  • DEMOS do QuickStart do Kinect http://channel9.msdn.com/Series/KinectSDKQuickstarts /
    • 1)Instalação do Sensor / Download do SDK ;
    • 2) Configurando o ambiente ;
    • 3) Criando um projeto Kinect no Visual Studio;
    • 4) Exibindo a imagem da câmera ;
    • 5) Alterando o ângulo de elevação da câmera;
    • 6) Trabalhando com a informação de profundidade ;
    • 7) Obtendo informações do esqueleto
    26/07/11
  • 1)Instalação do Sensor
    • O Kinect que vem no Bundle do XBOX não tem o cabo de energia (pode ser comprado a parte );
    • Não coloque 2 Kinects ou 2 câmeras no mesmo hub USB;
    • Verifique a versão do Windows (64 / 32 bits).
    26/07/11
  • 2) Configurando o ambiente
    • Instalar Visual Studio (pode ser o Express );
    • Instalar DirectX SDK – Junho 2010 ;
    • Instalar Runtime do DirectX ;
    • Se quiser usar o reconhecimento de voz:
      • Speech Runtime 10.2 ;
      • Kinect Speech Platform ;
      • Speech SDK ;
    26/07/11
  • 3) Criando um projeto Kinect no Visual Studio 26/07/11
  • 3) Criando um projeto Kinect no Visual Studio 26/07/11
  • 3) Criando um projeto Kinect no Visual Studio 26/07/11 *
  • 4) Exibindo a imagem da câmera
    • Ver eventos VideoFrameReady e DepthFrameReady ;
    26/07/11
  •  
  • 5) Alterando o ângulo de elevação da câmera
    • nui.NuiCamera.ElevationAngle = (int)slider1.Value;
    • Máximo de 15 mudanças em 20 segundos;
    • -27 a +27 graus;
    26/07/11
  • 6) Trabalhando com informação de profundidade
    • Cálculo da distância em milímetros:
      • Depth Image Type;
        • Bitshift o segundo byte por 8;
        • Distância = (int) Bits[0] | Bits[1] << 8 ;
      • DepthAndPlayerIndex Type:
        • Bitshift do primeiro por 3 e do segundo por 5;
        • Distância = (int) Bits[0] | Bits[1] << 5 ;
    • O Player Index indica o jogador que está contido naquele ponto;
    • Máximo de 6 jogadores;
    26/07/11
  • 7) Obtendo informações do esqueleto
    • Evento SkeletonFrameReady .
    26/07/11
  • 7) Obtendo informações do esqueleto
    • Cada joint retorna:
      • X – Posição horizontal entre -1 e 1
      • Y – Posição vertical entre -1 e 1
      • Z – Distância até o Kinect em metros
    • Cada joint tem um estado associado:
      • Tracked;
      • Not Tracked: raro ;
      • Inferred: oclusão, cortado, baixa confiança.
    26/07/11
  • Demos diversos
    • Skeletal Viewer;
    • ShapeGame;
    • Kinect Mouse Cursor ;
    • Kinect NUI ;
    • Demos no Processing e do FAAST (se der tempo!);
    26/07/11
  • Aplicações e possibilidades do Kinect
    • Controle de dispositivos através das mãos (Minority Report);
    26/07/11
  • Aplicações e possibilidades do Kinect
    • Controle robótico:
      • Kits que eram $28.000 agora são $500;
      • Exemplo com quadricóptero ;
    26/07/11
  • Aplicações e possibilidades do Kinect
    • Mocap baratíssimo!
    26/07/11
  • Aplicações e possibilidades do Kinect
    • Video conferência 3D ;
    26/07/11
  • Aplicações e possibilidades do Kinect
    • Scanner 3D (melhor ainda se integrado com uma impressora 3D);
    26/07/11
  • Aplicações e possibilidades do Kinect
    • Kinect + Realidade Aumentada
    26/07/11
  • Aplicações e possibilidades do Kinect
    • Kinect Shopping
    26/07/11
  • Aplicações e possibilidades do Kinect
    • Trocar canal da TV;
    • Adaptação de jogos normais para Kinect;
    • Ensino de idiomas;
    • Ensino em geral;
    • Sistema de navegação para carros;
    • Música;
    • Aplicações médicas;
    • Controle de Apresentação (PowerPoint);
    • COLOQUE A SUA IDEIA AQUI!!!!
    • TENHO INTERESSE EM PROJETOS FINAIS / EVENTOS USANDO KINECT.
    26/07/11
  • Mas, não precisa usar o Kinect para tudo...
    • Cliente Twitter usando o Kinect;
    26/07/11
  • Links Recomendados
    • Kinect Hacks:
      • http://kinecthacks.net/
      • Portal que centraliza aplicativos e testes com o Kinect.
    • Kinect Education:
      • http://www.kinecteducation.com/
      • Usos do Kinect na educação;
    26/07/11
  • Links Recomendados
    • Kinect SDK:
      • http://research.microsoft.com/en-us/um/redmond/projects/kinectsdk/
      • Portal oficial da Microsoft sobre desenvolvimento para o Kinect;
    • Coding4Fun Kinect Toolkit:
      • http://c4fkinect.codeplex.com/
      • Bibliotecas extras úteis para uso com o SDK.
    26/07/11
  • Links Recomendados
    • OpenKinect:
      • http://openkinect.org/wiki/Main_Page
      • Download dos drivers open source - libfreenect;
    • OpenNI:
      • http://www.openni.org/
      • Download dos drivers da PrimeSense.
    26/07/11
  • Material Extra e Referências
    • http://blogs.msdn.com/b/uk_faculty_connection/archive/2011/06/21/kinect-for-windows-sdk-event.aspx
    • http://readwriteweb.com.br/2010/11/09/um-cientista-explica-o-microsoft-kinect/
    • http://www.kinecteducation.com/
    • http://www.wired.co.uk/magazine/archive/2010/11/features/the-game-changer?page=all
    26/07/11
  • Obrigado!! brunodepaula@gmail.com http://www.brunocampagnolo.com http://twitter.com/bcp