KINECT FOR WINDOWS PROVARSI I VESTITI CON IL KINECT.

Post on 02-May-2015

231 views 0 download

transcript

KINECT FOR WINDOWS

PROVARSI I VESTITI CON IL KINECT

KINECT FOR WINDOWS

Who I am• Microsoft MVP ASP.NET• Founder of SmartCore Tech• DotNetToscana Staff Member & Speaker• Speaker for various events• Trainer• SharePoint addicted from 2007• Enthusiast ASP.NET Developer• NopCommerce Contributor• MCPD Web applications, MCTS BING

Applications, MCTS Silverlight, MCTS HTML5 & CSS3

• Italian blog: www.emanuelebartolesi.com• English blog:

www.geekswithblogs.net/emanueleb/• Twitter: @kasuken• Email: emanueleb@outlook.com

KINECT FOR WINDOWS

TWITTER

#bem14

KINECT FOR WINDOWS

Agenda

• Natural User Inteface• Skill innati e skill appresi• Informazione tecniche sul Kinect• Gesture e Posture• Demo • Q&A

KINECT FOR WINDOWS

Natural User InterfaceSi definisce NUI l’interfaccia di un sistema in cui gli utenti riescono ad interagire utilizzando un approccio «naturale» cioè riescono ad utilizzare le funzionalità del sistema senza l’uso di dispositivi artificiali (come mouse, trackball o tastiera)

KINECT FOR WINDOWS

NUI: vantaggi• Rapido apprendimento delle funzionalità• L’utente è in grado di diventare «esperto»

sull’interfaccia in minor tempo senza particolare training

• Può aiutare portatori di handicap nell’utilizzo del sistema

KINECT FOR WINDOWS

Skill innati e skill appresi• Affinchè le NUI siano efficaci è necessario che

utilizzino gli Skill Innati• Uno Skill Innato è un «movimento» insito

nella natura umana e nel suo quotidiano (il gesto di sfogliare è uno skill innato)

• Uno Skill Appreso è un «movimento» non naturale e che necessita di un periodo di training (muovere un mouse è uno skill appreso)

KINECT FOR WINDOWS

Come è fatto?IR Emitter Color Sensor

IR Depth Sensor

Tilt Motor

Microphone Array

KINECT FOR WINDOWS

Come funziona

Il proiettore ad infrarossi illumina il soggetto con dei pattern

1

La camera infrarossi misura la distanza con un approccio «a luce strutturata»

2

L’SDK è in grado di convertire lo stream della depth cam in dati utilizzabili

3

La nostra applicazione utilizza le info dell’SDK

4

KINECT FOR WINDOWS

Angolo di visualeAngolo di visuale:• Orizzontale: 57,5°• Verticale: 43,5° (da +27° a -

27°)

KINECT FOR WINDOWS

Profondità

Profondità (Near Mode):Limite fisico: 0,4m – 3,0mLimite pratico : 0,8m – 2,5m

Profondità (Default Mode):Limite fisico: 0,8m – 4,0mLimite pratico : 1,2m – 3,5m

KINECT FOR WINDOWS

DEMO

KINECT FOR WINDOWS

RISOLUZIONE

• Color• 12 FPS: 1280X960 RGB• 15 FPS: Raw YUV 640x480• 30 FPS: 640x480

• Depth • 30 FPS: 80x60, 320x240, 640x480

KINECT FOR WINDOWS

DEMO

KINECT FOR WINDOWS

DEPTH DATA

• Restituisce la distanza e il player per ogni pixel• Ex: 320x240 = 76,800 pixels

• Distanza• Distance in mm from Kinect ex: 2,000mm (6.56

feet)

• Player• 1-6 players

KINECT FOR WINDOWS

Suono• Audio:

• Angolo di ascolto: 100° (da -50° a +50° rispetto all’asse centrale)

• Possibilità di restringere l’angolo di ascolto a step di 10°

• Noise reduction:

• -20dB per l’audio proveniente da davanti

• -26db per l’audio proveniente da dietro

KINECT FOR WINDOWS

Architettura• L’SDK mette a disposizione una serie di

strumenti e una libreria di classi in grado di interagire con i sensori del dispositivo fornendo allo sviluppatore oggetti ed eventi.

KINECT FOR WINDOWS

Stream• Il device restituisce 3 stream:

• Video• Depth• Audio

KINECT FOR WINDOWS

Default e Near ModeIl Kinect può gestire oggetti a differenti distanze in base alla modalità selezionata:

• Default Mode: oggetti tra 80 cm e 4 metri• Near Mode: oggetti tra 40 cm e 3 metri

KINECT FOR WINDOWS

DEMO

KINECT FOR WINDOWS

Skeleton TrackingKinect fornisce un insiemi di «scheletri» dei player rilevati:• Al massimo due player contemporanei (più altri 4

con informazioni ridotte)• Ogni «scheletro» può essere Tracked o

NotTracked• Ogni scheletro prevede un array di 20 Joint

ognuno con la propria posizione (x,y,z)• Ogni Joint può essere Tracked, NotTracked o

Inferred (NotTracked è raro)• La classe Skeleton fornisce anche informazioni

sulle «ossa» del player

KINECT FOR WINDOWS

DEMO

KINECT FOR WINDOWS

GestureTre tipologie di gesture:• Static Gesture (posture) • Continuous Gesture• Dynamic Gesture

KINECT FOR WINDOWS

PostureNelle Static Gesture, chiamate anche Posture, l'utente mantiene una posizione (anche solo di una parte del corpo) fino a quando questa non viene riconosciuta.E’ opportuno non scegliere posture che possono avere diversi significati in diverse culture (ad esempio il «pollice in alto»)

Va benissimo in Europa non

in Iran!!!!

KINECT FOR WINDOWS

Continuos GestureLe Continuos Gesture sono le gesture che permettono di tracciare gli utenti che si spostano davanti al Kinect.Sono le gesture più adatte per i giochi.

KINECT FOR WINDOWS

Dynamic GestureLe Dynamic Gesture sono quelle gesture che forniscono un feedback all’utente a seguito di un movimento eseguito con una determinata parte del corpo.Sono le gesture più conosciute.

KINECT FOR WINDOWS

Alcune regole• Alcune regole relative alle gesture:• Dare sempre un feedback all’utente quando il

sistema riconosce una gesture;• Prevedere gesture confortevoli;• Disegnare gesture che, almeno per i controlli di base,

siano innate oppure di semplice comprensione;• Cercare di implementare gesture da eseguire in

maniera rapida e precisa con movimenti quanto più possibili naturali

KINECT FOR WINDOWS

DEMO

KINECT FOR WINDOWS

Q&A

KINECT FOR WINDOWS

SOME EXAMPLES

• Coca Cola - http://www.youtube.com/watch?v=3MnDAWlhegw

• Barbie - http://www.youtube.com/watch?v=kVDFzZ97XaY

• Boing 737 - http://www.youtube.com/watch?v=hwBo_LtjSUs

• AUDI - http://www.youtube.com/watch?v=3F9H0tdCnQw

• BIBLE - https://www.youtube.com/watch?v=5B9vNU9c9Ac

KINECT FOR WINDOWS

Riferimenti e download

• Sorgenti: https://github.com/kasuken/BetterEmbedded2014FittingRoom.git

• Slide: http://www.slideshare.net/emanuelebartolesi/provarsi-i-vestiti-con-il-kinect

Twitter: @kasukenEmail: emanueleb@outlook.com

KINECT FOR WINDOWS

GRAZIE