Ciao,
per chi non lo sapesse ,ho dovuto sviluppare in una settimana una piccola demo per mostrare le potenzialità di Kinect partendo da zero.
Nell’utlimo post raccontavo come eravamo riusciti a costruire il cavo(legete anche i post precedenti), ma ora è giunto il momento di vedere come sfruttare il Kinect sul pc.
Al momento ci sono tre progetti interessanti che si stanno sviluppando parallelamente: LCNUI, OpenNI e OpenKinect.
LCNUI è la prima libreira che è stata resa disponibile su windows e permette il controllo del motore, dei microfoni e naturalmente ricevere le immagini riprese dalle telecamere. Il cantaggio di questa libreria è che è molto semplice da usare, si usa c#, ma non contiene sessun API per il riconoscimento di immaigni e quindi è necessario utilizzare un framework specifico come OpenCV di intell o Aforgenet. Sono due ottime librerie e chi le ha provate come Andrea, dice è molto semplice riconoscere il movimento.
La seconda soluzione, OpenNI, l’utima resa pubblica in ordine di tempo, oltre a permettere di muovere il Kinect e catturare le immagini, offre una libreira molto avanzata chiamata NITE per il riconoscmento delle mani e del corpo della persona. Questa libreria è stata resa disponibile in beta gratuita da Primesense, cioè la società che ha sviluppato Kinect e dalla nostra nalisi è risultata la più avanzata e ricca. Inoltre, nonostante sia uscita per ultima questo progetto è molto vivo e sono già presenti molti progetti da sfruttare come base di partenza.
La terza soluzione, OpenKinect, è la prima in assoluto a essere stata sviluppata inizialmente su Linux, su cui funziona molto bene, e successivamente portata su windows tramite i driver Zephod. Purtroppo il porting su Windows è a mio avviso ancora molto incompleto e nonostante il esempi disponibili sul sito funzionino, abbiamo avuto molte difficoltà a complilare le librerie e i progetti.
Di tutti e tre i porgetti la nodicmentazione non è ancora molto ampia e la soluzione migliore è fare riferiemento ai forum dei progeti( in ordine):
Dopo un po’ di prove e valutando il tempo a disposizione, abbiamo scelto di adottare OpenNI perchè forniva già l’implementazione del riconoscimento delle mani, anche se con più tempo a disposizione anche LCNUI potrebbero essere una buona soluzione. Al momento sconsiglierei OpenKinect per realizzare applicazioni Windows perchè non molto affidabile e con numerosi bus.
Bene questa è la panoramica delle soluzioni al momento disponibile e le mie considerazioni, ma ognuno è libero di scegliere quello che preferisce. sSno ben felice di sentire anche i pareri di chi ha utilizzato le altre soluzioni.
aspetto i vostri commenti.
Matteo
Una precisazione ho provato OpenCv e Aforgenet sono due ottime librerie per processare le immagini ma il riconoscimento delle gesture non è poi cosi semplice . OpenNI è tutta un'altra cosa . Scriverò presto un bel post a riguardo .
Complimenti a Matteo per il blog.
Se lo avessi letto prima non avrei fatto lo stesso errore di acquistare slim + kinect insieme.
Infatti dovendo acquistare il cavo, ho trovato il tuo blog.
Ho appena installato le OpenNI su MacOSX 10.6 e sono impaziente di provare la kinect. Purtroppo non conosco nessuno che possa cimentarsi per il cavo, a questo punto non mi resta che acquistarlo sul sito della Microsoft.
Intanto vorrei leggermi altro materiale sull'argomento.
Ero interessata a vedere qualcosa su XNA, ma da quello che ho letto non esiste nessuna interfaccia per Kinect (ancora!!).
Ciao e auguri
in realtà se usi OpenNI, c'è un wrapper per c# che puoi usare da XNA, c'è un ragazzo che ha già sviluppato un gioco in questo modo, cercalo sul forum.