VR e Kinect - mtcube.com · Nel tab .NET, scegliete “Microsoft. research.kinect” e fate click...

Post on 29-Oct-2019

3 views 0 download

Transcript of VR e Kinect - mtcube.com · Nel tab .NET, scegliete “Microsoft. research.kinect” e fate click...

VR e Kinect   

Prof. Raffaella Folgieri  

Dipartimento DEMM – Dipartimento di Economia, Management e Metodi quantitativi, Università Statale di Milano – Italy 

 

Riferimenti: ufficio: stanza 22, secondo piano DEMM via Conservatorio 7 email: Raffaella.Folgieri@unimi.it  

Kinect e SDK

Con l’SDK messo a disposizione (gratuitamente) da Microsoft, sviluppare applicazioni che utilizzino la kinect è diventato estremamente semplice.   La versione dell’SDK a disposizione è quella per Windows 7. Non è garantito che funzioni anche su W8.  Un modo semplice per iniziare è quello indicato da Doug Bergmans (http://www.kinecteducation.com/blog/2011/12/22/doug‐bergmans‐beginners‐guide‐to‐kinect‐programming/)  

REQUISITI  ‐ PC (Win 7) ‐ Visual Studio Express 2010 C# (free): http://www.microsoft.com/express   

‐ XNA 4.0 (free): http://www.microsoft.com/download/en/details.aspx?id=23714 

‐ Kinect SDK Beta 2 (free):  http://www.kinectforwindows.org/  ‐ Kinect 

  

INSTALLAZIONE 

1.Download Visual Studio C# Express 2.Click “Install NOW” 3.Selezionate il link “Install Visual Studio 2010 Express C#” (non fate click

su TRIAL). Installerete, così, il Visual Studio installer sul vostro pc.

Source: Visual Studio 2010

4.Doppio click per avviare il processo di installazione. 5.Togliete il check “SQL server.” Vedrete la schermata che segue:

Image Description: Beginning of installing Visual Studio Express

Ci vorrà un po’ per completare l’installazione (sono 100 MB circa)

Downloading & Installing XNA 4.0:

Installiamo il game environment per Xbox (XNA 4.0). Con questo tool potrete creare giochi per Windows, Windows Phone o Xbox.

XNA 4.0: http://www.microsoft.com/download/en/details.aspx?id=23714

Downloading & Installing Kinect SDK Beta 2:

Ora, installiamo la Kinect SDK Beta 2, per far sì che l’hw e il sw del vostro pc possa interagire con la Kinect camera e con i dati che invia o riceve.

Determinate, innanzitutto, se il vostro sistema è 32-bit o 64-bit. (tasto ds del mouse su My Computer”, selezionando “properties”).

Download la Kinect SDK Beta 2 dal link: http://www.microsoft.com/download/en/details.aspx?id=27876.

Trovate il download appropriato per il vostro sistema operativo.

Source: Kinect for Windows

A questo punto siamo pronti per dare uno sguardo più approfondito alla Kinect!

INTRODUZIONE ALLA PROGRAMMAZIONE DELLA KINECT Qui vedremo una breve introduzione alla programmazione della kinect (da Doug Berman). Chi desidera approfondire, può trovare ulteriore materiale a questo link: https://www.facultyresourcecenter.com/curriculum/8965-Kinect-Development.aspx?EulaRedir=1&c1=en-us&c2=0  Aprite un nuovo progetto in visual studio: 

  

Nella finestra che compare, scegliete Windows Game… 

Avremo così a disposizione un framework generico da personalizzare (contiene le stesse library utilizzate per i giochi Xbox). Sulla destra, fate click su “reference” con il tasto destro del mouse e selezionate “add reference” per ottenere la reference e Morgan scroll da dotnet 

 

Nel tab .NET, scegliete “Microsoft. research.kinect” e fate click su ok per averle a disposizione. Un altro sito da cui scaricare took utili è coding4fun (molti code‐source, free): http://c4fkinect.codeplex.com/ 

Attraverso i tool di coding4fun è possibile interpretare facilmente molti dati provenienti dalla kinect camera, quindi fatene il download, poi ancora tasto destro su “reference” e “add reference”.  Stavolta dovrete andare sul tab BROWSE, cercare coding4fun.kinect e fare click su ok.  Aggiungiamo queste due reference al codice (click e ve li ritroverete sulla sinistra). Avremo accesso a molte funzionalità che ci torneranno utili.  Il programma che vogliamo realizzare mostra semplicemente uno scheletro del vostro corpo.  Nel codice, dopo runtime_kincect, vedete il codice che permette la visualizzazione dello scheletro. Nel costruttore (graphics) avete le specifiche di quello che potrete replicare sullo schermo. 

Il kinect_initialize ci permetterà di realizzare un semplice track del nostro corpo. Kinect_camera.skeletonFrameReady è quello che ci permette di “monitorare” continuamente quello che succede (ogni nostro movimento). Lo scheletro viene tracciato così: 

 

  

Qui trovate tutte le API per programmare la kinect (ed anche altre informazioni utili) http://www.microsoft.com/en‐us/kinectforwindowsdev/Downloads.aspx  In RESOURCES è possibile seguire molti video‐tutorial che introducono alla programmazione attraverso semplici esempi: http://www.microsoft.com/en‐us/kinectforwindowsdev/Resources.aspx  

Vedremo le basi di come gestire le API della kinect: Come gestire lo stato della kinect: ‐ Connessa ‐ Abilitazione dei sensori di colore, profondità, rilevazione dello scheletro ‐ Come avviare la kinect 

Come acquisire i dati: ‐ eventi – AllFrameReady  ‐ polling – OpenNextFrame   Molti video anche qui:  

http://channel9.msdn.com/Series/KinectQuickstart/RSS   

vediamo insieme il secondo (come impostare l’ambiente), per 5 minuti.  Ora proviamo a ripetere le operazioni passo per passo…    

 

Innanzitutto avviamo Visual Studio e facciamo CLICK su NEW PROJECT:  

  

Scegliete WPF Application 

  

 

Compare quello che vedete in figura: 

    

Sulla destra, fate click su “reference” con il tasto destro del mouse e selezionate “add reference” per ottenere la reference 

 

  

  

Scegliere existing… 

 

 

A questo punto:  

 

 

 Scegliete Dependencies 

 

Kinect viewer 

 

 

 

 

 

 

 

 

 

 

  

Add reference di nuovo 

 

 

 

 

 

 

 

 Ora il setup è completo 

 

Ora guardiamo la seconda parte del video per capire come programmare un evento… 

Ricapitoliamo… proviamo a programmare un evento  

 

 

 

 Click on loaded 

 

 

 

 

 

Doppio click 

 

Aggiungo la ms kinect library 

 

 

Poi dichiaro il sensore 

 

 

Proviamo a scrivere  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 cioè quando la finestra si chiude, lo fa anche la kinect 

 

 

 metto un breakpoint 

 

 

 

 

 

 

 

 

 

  

Con la levetta sulla sinistra lo aggiusto 

 

 

 

 

 

 

 

 

 

 

 

  

tolgo kinect… 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 selezioniamo try