Kinect (xbox 360) su PC e Raspberry Pi. Motion detection.

Un breve articolo per spiegare in pochi passi la messa in funzione di Kinect per xbox 360 su pc.

Prima di tutto colleghiamolo: per fare ciò conviene avere la versione con alimentatore e non quella data in bundle con xbox slim.

Se si ha la versione con alimentatore il collegamento è molto semplice, basta seguire le istruzioni ricordando di inserire prima l’alimentazione e solo in seguito l’USB al pc. MA NON FARLO ORA!

Nel caso non si avesse a disposizione l’alimentatore bisognerà procurarselo o, in alternativa, trovarne uno da 12v e almeno 1A e, bisognerà effettuare operazioni di modifica FISICA dei cavi e connettori oppure creare un adattatore fatto in casa. Un esempio lo si può trovare qui: Guida

Nella prima parte ci occuperemo dell’installazione su windows poichè il sensore viene supportato nativamente da microsoft kinect sdk.

-Installare l’sdk 1.8

Basta scaricare il pacchetto da qui: Download

Il file è ospitato sul mio account Google e non è stato in nessun modo modificato. Se non si vuole usare il link fornito basta scaricare il file direttamente dal sito ufficiale di Microsoft.

Una volta scaricato bisogna decomprimere il file e avviare l’installazione lasciando tutti i valori predefiniti.

Terminata l’installazione collegare l’alimentatore di kinect alla presa di corrente e collegare l’USB al computer. Attendere che tutti i driver vengano installati automaticamente e provare se tutto funziona a dovere avviando l’applicazione “Developer Toolkit browser 1.8.0“.

Vi apparirà una finestra simile alla seguente:

Developer toolkit

Scorrere fino a trovare “Kinect Explorer – WPF” e cliccare su “Run” sulla destra.

Se il programma si avvia correttamente e visualizzate l’immagine allora kinect funziona a dovere e potete iniziare a programmare usando gli strumenti offerti da Microsoft con l’SDK (Dovrete installare Visual Studio).

L’SDK 1.8.0 dovrebbe essere l’ultimo rilascio per kinect 360, tutti quelli successivi perdono la compatibilità con questa versione, supportando solo kinect 2.

-Installare openNi 2 e Nite 2 (facoltativo/alternativo):

openni 2

openNi 2, ovvero Open Natural Interaction, è un fork (di Occipital) del progetto originale openNi, avvenuto dopo che la compagnia PrimeSense (che è alla base della creazione di kinect) è stata acquisita da Apple nel 2013.

openNi fornisce le API per la gestione di kinect, alternative a quelle fornite da Micrsoft con il suo SDK.

Si ha accesso alle seguenti funzioni:

  • riconoscimento della voce e di comandi vocali (Voice and voice command recognition)
  • Riconoscimento gesti delle mani (Hand gestures)
  • Rilevamento movimento del corpo (Body Motion Tracking)

Nite 2 è un software middleware, ovvero fornisce servizi per facilitare il compito degli sviluppatori per quanto riguarda operazioni di input/output e in generale comunicazione. In questo caso specifico Nite fornisce la tracciatura dello scheletro e il riconoscimento delle gesture

Mentre nella versione precedente Nite veniva sfruttato direttamente da openNi, nella versione attuale (la 2) Nite 2 è una sovrastruttura di openNi 2 ed è accessibile dal programmatore.

Comparison-betw-OpenNI-1-5-and-2-0-docver1.12

ulteriori informazioni qui: LINK

I file di installazione li trovate al link sotto(altrimenti potete scaricarli dal sito ufficiale controllando eventuali versioni aggiornate):

DOWNLOAD

Per il corretto funzionamento su architettuara a 64bit è necessario installare sia la versione a 32 bit che quella a 64 bit.

Tutte le guide per OpenNi 2 le trovate sul sito ufficiale: LINK

-Installare FAAST 1.2 e ReconstructMe (facoltativo):

faast8

FAAST (Flexible Action and Articulated Skeleton Toolkit) è un middleware che facilita l’integrazione di comandi “full-body” in giochi o programmi di realtà virtuale.

Per la tracciatura dello scheletro può utilizzare sia OpenNi (dovrebbe supportare solo la versione 1.x) che il software ufficiale Microsoft.

Ad esempio, con FAAST si possono eseguire dei comandi (input da tastiera) con un gesto o se si assume una certa postura.

QUI sono presenti tutte le informazioni al riguardo.

ReconstructMe, invece, è un software che permette di effettuare scansioni 3D di persone e oggetti.

Visto che un video rende più di mille parole potete vedere le potenzialità di questo software nel video a seguire, rilasciato dalla casa produttrice:

A seguire i file di installazione di FAAST 1.2 e ReconstructMe 2 dal mio spazio cloud.

DOWNLOAD

-Per quanto riguarda linux:

Per vari problemi di licenza su linux la procedura è notevolmente più difficoltosa.

Tuttavia è stato avviato un progetto chiamato OpenNI2-Freenect che permette di risolvere gran parte dei problemi.

Per ora vi lascio a QUESTA ottima e semplice guida trovata in rete (in inglese).

simpleOpenNI-logo In alternativa potete consultare questo progetto simple-openni che non è altro che le versioni precedenti (antecedente alla 2) di OpenNi e Nite modificate per renderle più semplici (quindi potrebbero non essere presenti tutte le funzioni originali).

Queste ultime procedure NON sono state testate da me, non vi posso assicurare il corretto funzionamento.

Tutto il software contenuto nel mio spazio cloud è stato fornito esclusivamente per semplificare la ricerca in quanto molti dei siti ufficiali sono stati chiusi nel 2013/14 ed è diventato difficile trovare alcune versioni (As esempio Nite 2). Le versioni consigliate sono state rilasciate prima della stesura di questa guida, quindi potrebbero non essere le ultime disponibili.

Per qualsiasi domanda è presente il box sotto per i commenti.

AGGIORNAMENTO: Ho notato che molti collegamenti presenti nella guida per linux non sono funzionanti. Provate con questa: LINK

AGGIORNAMENTO 18/02/15: è possibile usare kinect anche con Raspberry Pi, a breve aggiorno la guida. Si basa su questo progetto: LINK

One Reply to “Kinect (xbox 360) su PC e Raspberry Pi. Motion detection.”

  1. Ciao! Mi sapreste dire perché quando collego l’alimentazione non riesco ad avere una connessione continua ma è come se il dispositivo di connettesse e si disconnettesse in continuazione? Grazie!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.