
In questa guida vedremo come installare OpenNi ed annesso SensorKinect per far funzionare la periferica Kinect su Ubuntu Oneiric 11.10 e, salvo grossi stravolgimenti, anche su versioni successive.
Installazione di OpenNi
“The OpenNI Framework provides the interface for physical devices and for middleware components. The API enables modules to be registered in the OpenNI framework and used to produce sensory data. Selecting the hardware or middleware module is easy and flexible.”
……..Altro
Prepariamo tutto il necessario
Installiamo le dipendenze
Inseriamo in un terminale:
sudo apt-get install git-core cmake libglut3-dev pkg-config gcc g++ build-essential libxmu-dev libxi-dev libusb-1.0-0-dev doxygen graphviz git
Problema: “libglut3-dev cannot be installed”
Il sistema potrebbe dirci che è impossibile installare libglut3-dev
In tal risolviamo installando a suo posto “freeglut” con il seguente comando:
sudo apt-get install git-core cmake freeglut3-dev pkg-config gcc g++ build-essential libxmu-dev libxi-dev libusb-1.0-0-dev doxygen graphviz git
Creiamo ora la directory di lavoro:
mkdir ~/kinect
cd ~/kinect
Scarichiamo L’ultima versione di OpenNi
Consiglio di utilizzare la versione unstable, attualmente aggiornata alla 1.5.2.7 piuttosto che la versione stable che, con la mia configurazione, non funziona.
git clone https://github.com/OpenNI/OpenNI.git
Per passare alla versione unstable, una volta eseguito il comando precedente, inserire:
cd OpenNI
git checkout unstable
Se tutto va per il verso giusto dovreste vedere due righe di conferma
Branch unstable set up to track remote branch unstable from origin.
Switched to a new branch ‘unstable’
Se altrimenti non ha funzionato, provate con:
cd OpenNI
git branch unstable
git checkout unstable
git pull origin unstable
Installiamo
cd Platform/Linux/Build
make && sudo make install
Problema: Si potrebbero verificare errori nella compilazione, se questi errori riguardano mancanze di file .dll (Cannot find the metadata file “system.windows.forms.dll”) o altre “menate” che richiamano il mondo Winzozziano, dovremo installare Mono con il seguente comando
sudo apt-get install mono-complete
Dopo di che occorre rilanciare
make && sudo make install
Problema: nel caso in cui il sistema dia errore dicendoci che javac non è stato trovato:
javac -d x64-Release ../../../../../Wrappers/OpenNI.java/src/org/OpenNI/*.java
/bin/sh: javac: not found
make[1]: *** [../../../Bin/x64-Release/org.OpenNI.jar] Errore 127
make[1]: uscita dalla directory “/home/sparazza/kinect/OpenNI/Platform/Linux/Build/Wrappers/OpenNI.java”
make: *** [Wrappers/OpenNI.java] Errore 2
risolveremo installando la seguente dipendenza
sudo apt-get install openjdk-7-jdk
Dopo di che occorre rilanciare
make && sudo make install
Problema: nel caso in cui il sistema ci neghi il permesso di accedere al file install.sh e RedistMaker
/bin/sh: ./RedistMaker: Permission denied
/home/sparazza/kinect/OpenNI/Platform/Linux/Build
cd ../Redist; ./install.sh; cd -
cd: 1: can’t cd to ../Redist
/bin/sh: ./install.sh: not found
/home/sparazza/kinect/OpenNI/Platform/Linux/Build
Risolviamo quindi con
cd ../CreateRedist
sudo chmod +x install.sh RedistMaker
cd ../Build
Dopo di che occorre rilanciare
make && sudo make install
Se così non dovesse andare e dovessimo continuare ad avere problemi con install.sh, possiamo spostare i file che ci servono:
sudo cp -r ../Redist/OpenNI-Bin-Dev-Linux-x64-v1.5.2.7/* ../Redist/
Sostituendo OpenNI-Bin-Dev-Linux-x64-v1.5.2.7 con la versione presente dentro la cartella Redist.
Quando finalmente vedremo
*** DONE ***
L’installazione sarà finalmente completa.
Se incappate in altre problematiche potete fare riferimento alle fonti, alla fine dell’articolo, per cercare ulteriori soluzioni oppure lasciare un commento
Installazione dei Driver Sensor Kinect
Maggiori informazioni sui driver SensorKinect qui: http://www.primesense.com
Prepariamo tutto il necessario
Scarichiamo L’ultima versione di SensorKinect
cd ~/kinect/
git clone https://github.com/avin2/SensorKinect
cd SensorKinect
git checkout kinect
Installiamo i driver
cd Platform/Linux/Build/
make && sudo make install
Problema:
cd ../CreateRedist; ./RedistMaker; cd -
/bin/sh: ./RedistMaker: Permission denied
/home/sparazza/kinect/SensorKinect/Platform/Linux/Build
cd ../Redist; ./install.sh; cd -
cd: 1: can’t cd to ../Redist
/bin/sh: ./install.sh: not found
Inserire i seguenti comandi
cd ../CreateRedist
sudo chmod +x install.sh RedistMaker
cd ../Build
e rieseguire
make && sudo make install
Se dopo la creazione della cartella redist, segnalata dalle seguenti righe
Creating redist folder…
Creating tar…
Done!
…incappiamo di nuovo nel problema:
cd ../Redist; ./install.sh; cd -
/bin/sh: ./install.sh: not found
Possiamo spostare i file che ci servono
sudo cp -r ../Redist/Sensor-Bin-Linux-x64-v5.1.0.25/* ../Redist/
Sostituendo Sensor-Bin-Linux-x64-v5.1.0.25 con la versione installata
Quando vedremo finalmente
*** DONE ***
L’installazione del driver sarà completa!
Testiamo il Kinect!
Collegare la periferica
Colleghiamo la periferica al pc mediante l’adattatore USB che vedete in figura:

Quando il kinect verrà collegato avrà sul led frontale un’intermittenza verde.
A questo punto i più curiosi possono inserire il comando:
dmesg
che mostra l’evento che il pc ha generato al collegamento della periferica:
[16111.870698] usb 1-1.2: new high speed USB device number 3 using ehci_hcd
[16111.963074] hub 1-1.2:1.0: USB hub found
[16111.963269] hub 1-1.2:1.0: 3 ports detected
[16112.907721] usb 1-1.2.2: new full speed USB device number 4 using ehci_hcd
[16114.439331] usb 1-1.2.1: new high speed USB device number 5 using ehci_hcd
[16115.548125] usb 1-1.2.1: usbfs: USBDEVFS_CONTROL failed cmd mtp-probe rqt 128 rq 6 len 1024 ret -110
[16115.970934] usb 1-1.2.3: new high speed USB device number 6 using ehci_hcd
[16116.161338] Linux video capture interface: v2.00
[16116.176331] gspca: v2.13.0 registered
[16116.176980] usbcore: registered new interface driver kinect
Testare il kinect
cd ~/kinect/OpenNI/Platform/Linux/Bin/x64-Release/
./NiViewer
Problema:
Open failed: Failed to set USB interface!
per risolvere, rimuoviamo dai moduli caricati il gspca, che in questo caso va in conflitto con il driver corretto:
sudo rmmod gspca_kinect
E rilanciamo il comando
./NiViewer
A questo punto la demo dovrebbe partire: potrete vedere due output video, uno rgb e l’altro z-depth, forniti dalle due/tre camere della kinect
Nella prossima guida vedremo come installare il necessario per effettuare il track di uno(o più) scheletri, così da poter utilizzare le altre demo fornite con OpenNI (ad esempio UserTracker)
Questa guida è stata testata su Ubuntu Oneiric 11.10, se qualcuno è riuscito ad applicarla con successo ad altre versioni di Ubuntu o altre distro, può scriverlo in un commento e provvederò ad aggiornare la guida!
Source:
http://youngindiafellowship.academia.edu/JatinSharma/Blog/48864/OpenNI-on-Beagle-Board-XM
Prepariamo tutto il necessario
Installiamo le dipendenze
Inseriamo in un terminale:
sudo apt-get install git-core cmake libglut3-dev pkg-config gcc g++ build-essential libxmu-dev libxi-dev libusb-1.0-0-dev doxygen graphviz git
Problema: “libglut3-dev cannot be installed”
Il sistema potrebbe dirci che è impossibile installare libglut3-dev
In tal risolviamo installando a suo posto “freeglut” con il seguente comando:
sudo apt-get install git-core cmake freeglut3-dev pkg-config gcc g++ build-essential libxmu-dev libxi-dev libusb-1.0-0-dev doxygen graphviz git
Creiamo ora la directory di lavoro:
mkdir ~/kinect cd ~/kinect
Scarichiamo L’ultima versione di OpenNi
Consiglio di utilizzare la versione unstable, attualmente aggiornata alla 1.5.2.7 piuttosto che la versione stable che, con la mia configurazione, non funziona.
git clone https://github.com/OpenNI/OpenNI.git
Per passare alla versione unstable, una volta eseguito il comando precedente, inserire:
cd OpenNI git checkout unstable
Se tutto va per il verso giusto dovreste vedere due righe di conferma
Branch unstable set up to track remote branch unstable from origin. Switched to a new branch ‘unstable’
Se altrimenti non ha funzionato, provate con:
cd OpenNI git branch unstable git checkout unstable git pull origin unstable
Installiamo
cd Platform/Linux/Build make && sudo make install
Problema: Si potrebbero verificare errori nella compilazione, se questi errori riguardano mancanze di file .dll (Cannot find the metadata file “system.windows.forms.dll”) o altre “menate” che richiamano il mondo Winzozziano, dovremo installare Mono con il seguente comando
sudo apt-get install mono-complete
Dopo di che occorre rilanciare
make && sudo make install
Problema: nel caso in cui il sistema dia errore dicendoci che javac non è stato trovato:
javac -d x64-Release ../../../../../Wrappers/OpenNI.java/src/org/OpenNI/*.java /bin/sh: javac: not found make[1]: *** [../../../Bin/x64-Release/org.OpenNI.jar] Errore 127 make[1]: uscita dalla directory “/home/sparazza/kinect/OpenNI/Platform/Linux/Build/Wrappers/OpenNI.java” make: *** [Wrappers/OpenNI.java] Errore 2
risolveremo installando la seguente dipendenza
sudo apt-get install openjdk-7-jdk
Dopo di che occorre rilanciare
make && sudo make install
Problema: nel caso in cui il sistema ci neghi il permesso di accedere al file install.sh e RedistMaker
/bin/sh: ./RedistMaker: Permission denied /home/sparazza/kinect/OpenNI/Platform/Linux/Build cd ../Redist; ./install.sh; cd – cd: 1: can’t cd to ../Redist /bin/sh: ./install.sh: not found /home/sparazza/kinect/OpenNI/Platform/Linux/Build
Risolviamo quindi con
cd ../CreateRedist sudo chmod +x install.sh RedistMaker cd ../Build
Dopo di che occorre rilanciare
make && sudo make install
Se così non dovesse andare e dovessimo continuare ad avere problemi con install.sh, possiamo spostare i file che ci servono:
sudo cp -r ../Redist/OpenNI-Bin-Dev-Linux-x64-v1.5.2.7/* ../Redist/
Sostituendo OpenNI-Bin-Dev-Linux-x64-v1.5.2.7 con la versione presente dentro la cartella Redist. Quando finalmente vedremo *** DONE *** L’installazione sarà finalmente completa. Se incappate in altre problematiche potete fare riferimento alle fonti, alla fine dell’articolo, per cercare ulteriori soluzioni oppure lasciare un commento
Installazione dei Driver Sensor Kinect
Maggiori informazioni sui driver SensorKinect qui: http://www.primesense.com
Prepariamo tutto il necessario
Scarichiamo L’ultima versione di SensorKinect
cd ~/kinect/ git clone https://github.com/avin2/SensorKinect cd SensorKinect git checkout kinect
Installiamo i driver
cd Platform/Linux/Build/ make && sudo make install
Problema:
cd ../CreateRedist; ./RedistMaker; cd – /bin/sh: ./RedistMaker: Permission denied /home/sparazza/kinect/SensorKinect/Platform/Linux/Build cd ../Redist; ./install.sh; cd – cd: 1: can’t cd to ../Redist /bin/sh: ./install.sh: not found
Inserire i seguenti comandi
cd ../CreateRedist sudo chmod +x install.sh RedistMaker cd ../Build
e rieseguire
make && sudo make install
Se dopo la creazione della cartella redist, segnalata dalle seguenti righe
Creating redist folder… Creating tar… Done!
…incappiamo di nuovo nel problema:
cd ../Redist; ./install.sh; cd – /bin/sh: ./install.sh: not found
Possiamo spostare i file che ci servono
sudo cp -r ../Redist/Sensor-Bin-Linux-x64-v5.1.0.25/* ../Redist/
Sostituendo Sensor-Bin-Linux-x64-v5.1.0.25 con la versione installata Quando vedremo finalmente
*** DONE ***
L’installazione del driver sarà completa!
Testiamo il Kinect!
Collegare la periferica
Colleghiamo la periferica al pc mediante l’adattatore USB che vedete in figura: 
Quando il kinect verrà collegato avrà sul led frontale un’intermittenza verde. A questo punto i più curiosi possono inserire il comando:
dmesg
che mostra l’evento che il pc ha generato al collegamento della periferica:
[16111.870698] usb 1-1.2: new high speed USB device number 3 using ehci_hcd [16111.963074] hub 1-1.2:1.0: USB hub found [16111.963269] hub 1-1.2:1.0: 3 ports detected [16112.907721] usb 1-1.2.2: new full speed USB device number 4 using ehci_hcd [16114.439331] usb 1-1.2.1: new high speed USB device number 5 using ehci_hcd [16115.548125] usb 1-1.2.1: usbfs: USBDEVFS_CONTROL failed cmd mtp-probe rqt 128 rq 6 len 1024 ret -110 [16115.970934] usb 1-1.2.3: new high speed USB device number 6 using ehci_hcd [16116.161338] Linux video capture interface: v2.00 [16116.176331] gspca: v2.13.0 registered [16116.176980] usbcore: registered new interface driver kinect
Testare il kinect
cd ~/kinect/OpenNI/Platform/Linux/Bin/x64-Release/ ./NiViewer
Problema:
Open failed: Failed to set USB interface!
per risolvere, rimuoviamo dai moduli caricati il gspca, che in questo caso va in conflitto con il driver corretto:
sudo rmmod gspca_kinect
E rilanciamo il comando
./NiViewer
A questo punto la demo dovrebbe partire: potrete vedere due output video, uno rgb e l’altro z-depth, forniti dalle due/tre camere della kinect 
Nella prossima guida vedremo come installare il necessario per effettuare il track di uno(o più) scheletri, così da poter utilizzare le altre demo fornite con OpenNI (ad esempio UserTracker) Questa guida è stata testata su Ubuntu Oneirc 11.10, se qualcuno è riuscito ad applicarla con successo ad altre versioni di Ubuntu o altre distro, può scriverlo in un commento e provvederò ad aggiornare la guida! Source:
http://youngindiafellowship.academia.edu/JatinSharma/Blog/48864/OpenNI-on-Beagle-Board-XM
Etichette: console, kinect, microsoft, natural interface, nite, openni, sdk, sensor kinect, zdepth
gennaio 5, 2012 alle 1:41 pm |
[...] « [Guida] Kinect su Ubuntu Oneiric 11.10: OpenNi e SensorKinect [...]