unama br edinaldo_la-roque_oficina_kinect_20160917_2030

Post on 22-Jan-2018

163 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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 edinaldo.laroque@gmail.com

http://www.unama.br

Belém - PA 2016

2

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

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

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

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)

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)

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)

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

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

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

11

1. Realidade aumentada (7)

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

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

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

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)

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

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)

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)

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)

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)

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)

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)

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)

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)

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.

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.

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).

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)

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

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

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

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

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)

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/

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

35

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

7. Recursos de aprendizado (2)

36

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

7. Recursos de aprendizado (3)

37

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

7. Recursos de aprendizado (4)

38

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

7. Recursos de aprendizado (5)

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

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)

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)

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)

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)

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)

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.

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.

47

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

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

48

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

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

49

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

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

50

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

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

51

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

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

52

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

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

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.

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.

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

56

Obrigado!

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

top related