4. Quem sou eu
Experiência:
Coordenador do curso de Análise e Desenvolvimento
de Sistemas - UNA
Professor UNA, PUC Minas e UNIBH;
12 anos de experiência em projetos multimídia;
6 anos experiência em projetos educacionais.
5. Quem sou eu
Áreas de Pesquisa:
Tecnologias Educacionais;
Interfaces homem-máquina;
Computação Gráfica;
Rich internet applications.
8. O que temos para hoje?
Conceito e princípios das NUI’S;
Gesture-based computing;
Como funciona;
Alguns dispositivos;
Tendências de uso;
Apresentando o Kinect;
Aplicações de Exemplo.
9. O que temos para hoje?
Vídeo
Conceito Microsoft de como será a 2019
Microsoft's Concept of How 2019 Will Look Like
10.
11. Conceito e princípios das NUI’S
O que é Natural User Interface?
Ou simplesmente Interface Natural de Usuário.
12. Conceito e princípios das NUI’S
Viajando no tempo:
Fonte: http://en.wikipedia.org/wiki/Natural_user_interface Adaptado pelo autor
13. Conceito e princípios das NUI’S
Definição:
Interface Natural do Usuário (NUI) pode ser definida
como uma interface de usuário projetada para
utilizar comportamentos naturais humanos para
interagir diretamente com o conteúdo digital.
- Bill Buxton
14. Conceito e princípios das NUI’S
Algumas tecnologias:
Dispositivos TouchScreen;
Sensores de Movimento (acelerômetros);
Câmeras de Profundidade e RGB;
Sensores de Áudio.
16. Conceito e princípios das NUI’S
Princípios
Fonte: Dan Saffer - http://www.quora.com/What-are-the-basic-principles-of-NUINatural-User-Interface-design - acesso em: 20 de julho de 2011
17. Conceito e princípios das NUI’S
Princípios:
Projete a interface pensando em dedos não
em cursores: os ícones de toque precisam
ser maiores que os padrões.
Fonte: Dan Saffer - http://www.quora.com/What-are-the-basic-principles-of-NUINatural-User-Interface-design - acesso em: 20 de julho de 2011
18. Conceito e princípios das NUI’S
Princípios:
Lembre-se da fisiologia: Não faça o usuário
realizar tarefas muito extensas e repetitivas.
Um outro lembrete: O seres humanos não tem
aptidão física para fazer muitas tarefas com as
mãos levantas para frente por longo períodos
de tempo.
(Desculpe Minority Report!!!)
Fonte: Dan Saffer - http://www.quora.com/What-are-the-basic-principles-of-NUINatural-User-Interface-design - acesso em: 20 de julho de 2011
19. Conceito e princípios das NUI’S
Princípios:
O grande desafio para as NUI’s é criar
gestos, sons e toques onde um número
maior de pessoas consiga utilizá-los.
Fonte: Dan Saffer - http://www.quora.com/What-are-the-basic-principles-of-NUINatural-User-Interface-design - acesso em: 20 de julho de 2011
20. Conceito e princípios das NUI’S
Princípios:
Alocação de elementos na tela:
quando um usuário movimenta sua
mão até um item de controle da
interface o mesmo pode cobrir alguma
informação ou elemento importante.
Fonte: Dan Saffer - http://www.quora.com/What-are-the-basic-principles-of-NUINatural-User-Interface-design - acesso em: 20 de julho de 2011
21. Conceito e princípios das NUI’S
Princípios:
Cuidado com gestos, sons ou toques
muito comuns.
Fonte: Dan Saffer - http://www.quora.com/What-are-the-basic-principles-of-NUINatural-User-Interface-design - acesso em: 20 de julho de 2011
22. Conceito e princípios das NUI’S
Princípios:
Existem diversas formas de como
executar um gesto, preveja isso em seu
sistema.
Fonte: Dan Saffer - http://www.quora.com/What-are-the-basic-principles-of-NUINatural-User-Interface-design - acesso em: 20 de julho de 2011
23. Conceito e princípios das NUI’S
Princípios:
Os gestos devem coincidir com a
complexidade de suas tarefas.
Fonte: Dan Saffer - http://www.quora.com/What-are-the-basic-principles-of-NUINatural-User-Interface-design - acesso em: 20 de julho de 2011
25. Gesture-based computing
Definição:
Gesture-based computing é uma área
na ciência da computação e tecnologia
da linguagem com o objetivo de
interpretar gestos humanos por meio
de algoritmos matemáticos.
Fonte: http://en.wikipedia.org/wiki/Gesture_recognition Adaptado pelo autor
32. Gesture-based computing
Tendência de Uso
Toque
Mouse e Teclado
Fonte: Myth of the Dying Mouse, Johnny Lee. O`Reilly, Adaptado pelo autor.
Movimento/Gesto/Controle
39. Kinect
Características Básicas:
Distância: 1,2 à 4 metros para o Kinect for Xbox;
Distância: 40cm à 4 metros para o Kinect for Windows;
Detecção de 10 joints para a posição “sentado” – K4W;
Novas Línguas: francês, espanhol, italiano e japonês – K4W;
Kinect Studio para gravação de gestos no ambiente de
desenvolvimento – K4W.
40. Kinect
Imagem RGB:
Resolução de 1280 x 960 à 12fps máximo;
Resolução de 640 x 480 à 30 fps máximo;
Imagem de Profundidade:
80 x 60 à 30fps máximo;
320 x 240 à 30fps máximo;
640 x 480 à 30fps máximo;
41. Kinect
Imagem RGB:
1280 x 960
640 x 480
Fonte: RGBD Research at Willow Garage, http://www.cs.washington.edu/ai/Mobile_Robotics/rgbdworkshop-2011/talks/konolige-rgbd11-slides.pdf - Acesso em 16 julho 2011
45. Kinect
Motor:
Angulação de 27 graus para cima ou para
baixo;
Não é aconselhado demasiada repetição de
chamadas;
A SDK oficial limita seu uso.
15 chamadas para cada 20 segundos
47. Kinect
Comparação das Frameworks:
Frameworks
Características
OpenKinect
OpenNI
Microsoft Kinect SDK
Licença
LGPLv3+
LGPLv3+
Proprietária uso não
comercial
Driver
libfreenect
SensorKinect Avin2
Microsoft Research Driver
Plataforma
Suporte para
câmeras com sensor
PrimeSense
Win/Linux/MAC
Win/Linux/MAC
Windows
Não
Sim
Não
Kinect’s simultâneos
Sim
Sim
Sim
Câmera RGB
Câmera
Infravermelho
Projeto
Infravermelho
LED
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Não
48. Kinect
Comparação das Frameworks:
Frameworks
Características
Motor Vertical
Áudio
Detecção de Gestos
Detecção de
Esqueleto
Detecção de Eventos
da Mão
Analisador de Cenas
OpenKinect
OpenNI
Microsoft Kinect SDK
Sim
Não
Sim
Sim
Não
Exemplos com OpenCV
NITE Middleware
Sim
Nenhum módulo
incorporado
Não
Sim
Sim
Não
Sim
Sim
Não
Sim
Não
49. O que vem por ai
Nova Geração do Kinect
Structured Light vs Time of Flight
52. O que vem por ai
Geração Atual do Kinect
Nova Geração do Kinect
•Angulo de Visão: 57.5˚ horizontal por 43.5˚ vertical
•Distancia do Sensor: 0.8 m -> 4.0 m (O Kinect for
Windows detecta a partir de 0.4 m)
•Fluxo de RGB: 640 x 480 x 24 bpp 4:3 RGB @
30fps640 x 480 x 16 bpp 4:3 YUV @ 15fps
•Fluxo de Profundidade: 320 x 240 16 bpp, 13-bit
depth (640×480 para o Kinect for Windows SDK)
•Fluxo Infravermelho: Sem acesso (No Kinect for
Windows SDK pode ser utilizado, mas não
simultaneamente com o fluxo RGB)
•Simultaneidade: Cor <-> Profundidade
•Captura de Áudio: 4-microfones sequenciais
retornando 48K Hz de áudio
•Conexão: USB 2.0
•Latência: ~90 ms com processamento
•Motor para inclinação: Vertical somente
•Angulo de Visão: 70˚ horizontal por 60˚
vertical
•Distancia do Sensor: 0.8 m -> 4.0 m
•Fluxo de RGB: 1920 x 1080 x 16 bpp 16:9
YUY2 @ 30 fps
•Fluxo de Profundidade: 512 x 424 x 16 bpp,
13-bit depth
•Fluxo Infravermelho: 512 x 424, 11-bit
dynamic range
•Simultaneidade: Cor <-> Profundidade e
Mapa Infravermelho
•Captura de Áudio: 4-microfones
sequenciais retornando 48K Hz de áudio
•Conexão: USB 3.0
•Latência: ~60 ms com processamento
•Motor para inclinação: Nenhum
53. Kinect
Instalando o Microsoft Kinect SDK
1 – Instalar Visual Studio ou Visual Studio Express;
2 – Instalar DirectX SDK:
http://www.microsoft.com/en-us/download/details.aspx?id=6812
3 – Instalar DirectX Runtime: http://www.microsoft.com/download/en/details.aspx?
displaylang=en&id=35
4 – Instalar o Microsoft Speech Platform 11:
http://go.microsoft.com/fwlink/?LinkID=240081
5 – Instalar o Kinect SDK:
http://www.microsoft.com/en-us/kinectforwindows/develop/developer-downloads.aspx
54. Kinect
Instalando o OpenNI
1 – Instalar os drives: https://github.com/avin2/SensorKinect
2 – Instalar os Binaries da OpenNI:
http://www.openni.org/Downloads/OpenNIModules.aspx, selecione o último UNSTABLE
para Windows x86.
3 – Instalar a Middleware NITE:
http://www.openni.org/Downloads/OpenNIModules.aspx, selecione o último UNSTABLE
para Windows x86. Na instalação utilizar esse serial: 0KOIk2JeIBYClPWVnMoRKn5cdY4=
4 – Instalar os Binaries Hardware da OpenNI:
http://www.openni.org/Downloads/OpenNIModules.aspx, selecione o último UNSTABLE
para Windows x86.
5- Plugue o Kinect na porta USB
6 – Teste os demos que estão em: C:Program FilesPrime
SenseNITESamplesBinRelease
(ou C:Program Files (x86))
56. Para pensar
Lembre-se que demorou 30 anos entre quando o mouse
foi inventado por Engelbart e Bill English em 1965, para
quando se tornou onipresente*.
*referencia por estar presente em praticamente todos os
computadores
- Bill Buxton
59. Fontes
Dan Saffer - http://www.quora.com/What-are-the-basic-principles-of-NUI-Natural-User-Interfacedesign - acesso em: 20 de julho de 2011
Desenvolvendo Aplicativos para o Kinect - http://www.slideshare.net/bcpbcp/desenvolvendoaplicativos-para-o-kinect
Desenvolvimento Livre no Kinect - http://www.slideshare.net/gustavojcbrasil/desenvolvimento-livreno-kinect
ERGOSIGN - Best Practice Approach to the Design of Natural User Interfaces, acesso em: 14 de julho
de 2011
http://channel9.msdn.com/Series/KinectSDKQuickstarts/Getting-Started
http://en.wikipedia.org/wiki/Gesture_recognition Adaptado pelo autor
http://en.wikipedia.org/wiki/Kinect
Myth of the Dying Mouse, Johnny Lee. O`Reilly, Adaptado pelo autor.
RGBD Research at Willow Garage, http://www.cs.washington.edu/ai/Mobile_Robotics/rgbdworkshop-2011/talks/konolige-rgbd11-slides.pdf - Acesso em 16 julho 2011