unama br edinaldo_la-roque_oficina_kinect_20160917_2030

56
Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações Conferencista: Prof. MSc. Edinaldo J. C. de La-Roque [email protected] http://www.unama.br Belém - PA 2016

Upload: la-roque

Post on 22-Jan-2018

163 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de

Desenvolvimento de Aplicações

Conferencista:

Prof. MSc. Edinaldo J. C. de La-Roque [email protected]

http://www.unama.br

Belém - PA 2016

Page 2: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

2

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Page 3: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

3

Sobre o conferencista

Edinaldo João Costa de La-Roque Mestre em Ciência da Computação pela UFPA, linha de pesquisa Redes de Computadores. Formação em Telecomunicações, Análise e Desenvolvimento de Sistemas e Gerência de Projetos e Gerência da Qualidade (parcial). Experiência em coordenar equipes de infraestrutura de redes e desenvolvimento de software. Forte perfil integrador de sistemas, multidisciplinar, para ambiente de pesquisa, desenvolvimento, documentação.

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Currículo Lattes: http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4310385E7

Page 4: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

4

Agenda

1. Realidade aumentada 2. O sensor Kinect do XBOX 360 3. Um pouco de história 4. Modos de operação 5. Paradigma da Interação Natural (NI) 6. Frameworks para Kinect 7. Recursos de aprendizado 8. Demonstração do Developer Toolkit v1.6.0 9. Demonstração prática

Referências

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Page 5: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

5

1. Realidade aumentada

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Imagine uma tecnologia com a qual pudéssemos ver mais do que os outros vêem, ouvir mais do que os outros ouvem, ou talvez até mesmo provar coisas que os outros não possam provar. E se tivéssemos tecnologia para percebermos elementos e objetos totalmente computacionais dentro de nossa experiência no mundo real? Criaturas e estruturas completas que pudessem nos ajudar em nossas atividades cotidianas, por meio de interações quase inconscientes pelo uso de gestos e da fala?

Van Krevelen et al. (2010)

Page 6: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

6

1. Realidade aumentada (2)

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

A Realidade Aumentada ou AR (Augmented Reality) é esta tecnologia que veio para criar uma nova geração de interfaces baseadas na realidade. A Realidade Aumentada suplementa o mundo real com objetos virtuais (gerados por computador), que parecem coexistir no mesmo espaço do mundo real. Os smartphones da atualidade e os browsers de realidade aumentada (AR browsers) estão começando a abraçar esta nova e excitante forma de interação humano-computador.

Van Krevelen et al. (2010)

Page 7: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

7

1. Realidade aumentada (3)

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Técnicas e posicionamento para a visualização Fonte: Van Krevelen et al. (2010)

Page 8: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

8

1. Realidade aumentada (4)

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Fonte: https://media.licdn.com/mpr/mpr/shrinknp_800_800/AAEAAQAAAAAAAAWmAAAAJGF

hNmU3Y2FhLTlkODItNDU0NC1hNGNiLWQ0M2MxNGUxZGJiNg.png

Page 9: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

9

1. Realidade aumentada (5)

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Fonte: http://idav.ucdavis.edu/~okreylos/ResDev/SARndbox/Instructions.html

Page 10: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

10

1. Realidade aumentada (6)

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Fonte: https://i.ytimg.com/vi/EETkn5_qrhM/hqdefault.jpg

Page 11: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

11

1. Realidade aumentada (7)

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Page 12: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

12

1. Realidade aumentada (8)

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Fonte: http://eandt.theiet.org/magazine/2013/04/images/640_touareg-hybrid.jpg

Page 13: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

13

1. Realidade aumentada (9)

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Fonte: http://losgrillos.com/thumb.php?src=http://losgrillos.com/images/uploads/20

13/cicret-bracelet.png&h=450&w=600&q=90&zc=1

Page 14: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

14

1. Realidade aumentada (10)

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Sobreposição de AR em uma escaneamento médico Fonte: Van Krevelen (2010)

Page 15: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

15

2. O sensor Kinect do XBOX 360

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Sensores 3D de profundidade

Câmera RGB

Inclinação motorizada Microfones direcionais

Page 16: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

16

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

O Kinect desmontado por uma equipe especializada. Fonte: Avancini (2012)

2. O sensor Kinect do XBOX 360 (2)

Page 17: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

17

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Item do sensor Especificação

Ângulo de visão Campo de visão vertical de 43o e 57o horizontal

Faixa de inclinação vertical entre +28o e -28o

Taxa de quadros (stream de cor e de profundidade)

30 quadros por segundo (FPS)

Resolução do stream profundidade QVGA (320x240)

Resolução do stream colorido VGA (640x480)

Formato de áudio 16 KHz, 16 bits mono PCM

Características da entrada de áudio Um arranjo de 4 microfones com um conversor analógico-digital (ADC) de 24 bits, com processamento de sinal embutido, incluindo cancelamento de eco e supressão de ruído

Especificações do sensor Kinect Fonte: Avancini (2012)

2. O sensor Kinect do XBOX 360 (3)

Page 18: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

18

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Diagrama de funcionamento do sensor Fonte: Avancini (2012)

2. O sensor Kinect do XBOX 360 (4)

Page 19: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

19

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Adaptador USB com fonte de alimentação para o Kinect Fonte: Avancini (2012)

2. O sensor Kinect do XBOX 360 (5)

Page 20: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

20

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Exemplo de padrão de luz infravermelha emitida pelo Kinect Fonte: Avancini (2012)

2. O sensor Kinect do XBOX 360 (6)

Page 21: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

21

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Exemplo de deteção de profundidade com infravermelho Fonte: Avancini (2012)

2. O sensor Kinect do XBOX 360 (7)

Page 22: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

22

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Exemplo de deteção de esqueleto com o framework OpenNI Fonte: Avancini (2012)

2. O sensor Kinect do XBOX 360 (8)

Page 23: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

23

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Faixas de distância de operação do sensor Kinect Fonte: Avancini (2012)

Item do sensor Faixa de distância de operação

Stream de vídeo (cor e profundidade) 1,2 a 3,5 metros

Rastreamento de esqueleto 1,2 a 3,5 metros

2. O sensor Kinect do XBOX 360 (9)

Page 24: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

24

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

3. Um pouco de história

• Sensor anunciado pela primeira vez em junho de 2009, durante uma feira de exposições, batizado inicialmente com o nome de Projeto Natal (Natal project).

• Em 2010, a Microsoft deu o nome oficial de Kinect.

• Em 60 dias, 8 milhões de unidades foram vendidas.

• O harware do kinect é baseado em tecnologia desenvolvida pela empresa 3DV System, adquirida pela Microsoft em junho de 2009, cujo produto original era uma câmera de tempo real, a ZCam.

• A empresa israelita PrimeSense fornece a tecnologia de sensores 3D usada no Projeto Natal.

Page 25: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

25

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

3. Um pouco de história (2)

• A PrimeSense também trabalha com a ASUS para criar um dispositivo chamado WAVI Xtion, um dispositivo similar ao Kinect, compatível com micros PC, para 2011.

Page 26: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

26

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

3. Um pouco de história (3)

• Do ponto de visto do software, o Kinect é desenvolvido pela Rare, uma subsidiária da Microsoft Game Studio, que pertence à Microsoft.

• Em 2010, a PrimeSense lança os seus próprios drivers open source, juntamente com um middleware de rastramento de movimentos, chamado Natural Interaction Technology for End-user (NITE).

• Em parceria com outras duas empresas, a PrimeSense cria uma organização sem fins lucrativos, focada na certificação e melhoria da interoperabilidade dos dispositivos de interação natural, chamada Open Natural Interaction (OpenNI).

Page 27: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

27

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

3. Um pouco de história (3)

• OpenNI não é apenas uma organização, mas também uma plataforma cruzada (cross-platform) que provê interface tanto para dispositivos físicos, quanto para componentes middleware.

Logo da OpenNI Fonte: Avancini (2012)

Logo da PrimeSense Fonte: Avancini (2012)

Page 28: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

28

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

4. Modos de operação

O Kinect reconhece e deteta:

• Informações de esqueleto

Page 29: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

29

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

4. Modos de operação (2)

O Kinect reconhece e deteta:

• Gestos

Page 30: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

30

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

4. Modos de operação (3)

O Kinect reconhece e deteta:

• Comandos vocais

Page 31: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

31

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

4. Modos de operação (4)

O Kinect reconhece e deteta:

• Informações de rosto

Page 32: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

32

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

5. Paradigma da Interação Natural (NI)

• NI (Natural Interaction) é um conceito relacionado à interação com dispositivos baseada nos sentidos humanos (Avancini, 2012).

• Este paradigma torna obsoleto periféricos como controles remotos e mouses.

• O Kinect pode ser definido como um dispositivo de interação natural (NI), que opera no contexto de Interface Natural com o Usuário (NUI - Natural User Interface), que representa um novo paradigma de Interface Humano-Computador (HCI).

Evolução dos paradigmas de HCI Fonte: Avancini (2012)

Page 33: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

33

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

6. Frameworks para Kinect

• OpenNI http://openni.ru/openni-sdk/

• NITE

http://openni.ru/files/nite/

• Kinect for Windows SDK http://research.microsoft.com/en-us/um/redmond/projects/kinectsdk/

• OpenKinect - Libfreenect

https://openkinect.org/wiki/Main_Page

• Flexible Action and Articulated Skeleton Toolkit (FAAST) http://projects.ict.usc.edu/mxr/faast/

Page 34: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

34

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

7. Recursos de aprendizado

https://channel9.msdn.com/Search?term=kinect#ch9Search

Page 35: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

35

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

7. Recursos de aprendizado (2)

Page 36: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

36

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

7. Recursos de aprendizado (3)

Page 37: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

37

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

7. Recursos de aprendizado (4)

Page 38: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

38

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

7. Recursos de aprendizado (5)

Page 39: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

39

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

8. Demonstração do Developer Toolkit v1.6.0

Page 40: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

40

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

8. Demonstração do Developer Toolkit v1.6.0 (2)

Page 41: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

41

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

8. Demonstração do Developer Toolkit v1.6.0 (3)

Page 42: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

42

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

8. Demonstração do Developer Toolkit v1.6.0 (4)

Page 43: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

43

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

8. Demonstração do Developer Toolkit v1.6.0 (5)

Page 44: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

44

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

8. Demonstração do Developer Toolkit v1.6.0 (6)

Page 45: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

45

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

9. Demonstração Prática

Aplicação WPF escrita em .Net C#, usando o MS Visual Studio 2010, com o Kinect for Windows SDK v1.6. A aplicação reconhece e rastreia a mão direita do usuário, executando ou encerrando as aplicações CALC.EXE e CMD. EXE do MS Windows 7.

Page 46: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

46

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

9. Demonstração Prática (2)

Imagem da janela da linha de comandos.

Imagem da calculadora.

Page 47: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

47

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

9. Demonstração Prática (3)

Page 48: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

48

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

9. Demonstração Prática (4)

Page 49: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

49

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

9. Demonstração Prática (5)

Page 50: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

50

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

9. Demonstração Prática (6)

Page 51: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

51

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

9. Demonstração Prática (7)

Page 52: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

52

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

9. Demonstração Prática (8)

Page 53: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

53

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

9. Demonstração Prática (9)

mão direita sendo rastreada

mão direita sobre essas áreas verdes iniciam a

calculadora ou a janela de comandos do Windows.

mão direita sobre essas áreas laranjas encerram a calculadora ou a janela de comandos do Windows.

Uma vez compilada a aplicação e posta em execução, o sensor Kinect reconhece e rastreia a mão direita do usuário, permitindo que as aplicações CALC.EXE e CMD.EXE sejam executadas ou encerradas ao passar a mão direita sobre as áreas verdes ou laranjas.

Page 54: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

54

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

9. Demonstração Prática (10)

Aplicações iniciadas apenas passando-se a mão direira em frente ao sensor Kinect sobre as áreas verdes.

Page 55: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

55

Referências

JANA, Abhijit. Kinect for Windows SDK Programming Guide. Birmingham, UK: Packt Publishing Ltd, 2012. p.392. AVANCINI, Mattia. Using Kinect to emulate an Interactive Whiteboard. Tese de Mestrado. Trento, IT: Università Degli Studi de Trento, 2012. p.129. Disponível em: http://latemar.science.unitn.it/segue_userFiles/LITSA/Avancini_Mattia_138793_Thesis.pdf. Acesso em: 14/09/2016. VAN KREVELEN, D. W. F.; POELMAN, R. A survey of augmented reality technologies, applications and limitations. International Journal of Virtual Reality, v. 9, n. 2, p. 1, 2010. Natural Interaction Technology for End-user (NITE) Open Source Framework. Disponível em: http://openni.ru/files/nite. Acesso em: 15/09/2016.

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações

Page 56: Unama br edinaldo_la-roque_oficina_kinect_20160917_2030

56

Obrigado!

Realidade Aumentada com o Sensor Kinect XBOX 360: Introdução ao Ambiente de Desenvolvimento de Aplicações