{{tag>Xenial matériel jeu}}
----
====== Installation de Kinect et OpenNI (Sensor + APIs) ======
Cette page décrit l'installation des pilotes pour le capteur de mouvement la Kinect de Microsoft pour la Xbox.
La Kinect de Microsoft est prévue pour fonctionner sur les consoles Xbox 360 et 360S. Son usage sur une autre plate-forme, risque d'endommager votre matériel et votre système !
===== Pré-requis =====
* Disposer des [[:sudo|droits d'administration]].
* Disposer d'une connexion à Internet configurée et activée.
* Avoir [[:tutoriel:comment_installer_un_paquet|installé les paquets]] suivant **[[apt://build-essential,git-core,libglut3-dev,doxygen,graphviz,g++,libusb-1.0-0-dev,libglu1-mesa-dev,libglut3-dev|build-essential git-core libglut3-dev doxygen graphviz g++ libusb-1.0-0-dev libglu1-mesa-dev libglut3-dev]]**.
===== Installation du FrameWork OpenNI =====
Le Framework OpenNI (les API) et les pilotes **(Sensor)** sont en licence GNU GPL
* Creation de l'environnement de travail (par défaut, dans /home/$USER/)
mkdir ~/kinect && cd ~/kinect
* Récupération des fichiers avec git
git clone https://github.com/OpenNI/OpenNI.git
* Compilation et installation
Les paramètres de compilation sont en SSE3, par défaut. Si votre architecture (CPU) n'est pas récente (<2004), faites :
cat /proc/cpuinfo
Si, dans les flags vous voyez **sse3** ou **msse3** ou **ssse3**, vous n'avez pas a changer les paramètres de compilation. En revanche si vous ne voyez que **sse2**, vous pourrez compiler avec les paramètres SSE2 pour utiliser les API et le sensor. En revanche, pour l'usage de NITE, la compilation SSE3 est indispensable (fonctions SIMD), voir [[http://wiki.openni.org/mediawiki/index.php/Main_Page|wiki]] et plus bas
cd OpenNI/Platform/Linux/Build
make && sudo make install
===== Installation du Sensor OpenNI =====
cd ~/kinect/
* Récupération des fichiers evec git
git clone https://github.com/avin2/SensorKinect.git
cd SensorKinect
* Mise à jour de l'index git
git checkout kinect
cd Platform/Linux-x86/Build
* Compilation et installation
make && sudo make install
Les paramètres de compilation restent inchangés : le fichier **CommonMakefile** est remonté dans /usr/include/ni/
===== Brancher la Kinect =====
Le branchement sur le PC, se fait comme sur les 360 : **USB + Alimentation** (A la différence du branchement sur la 360S; en **USB** uniquement)
===== Utilisation =====
cd ~/kinect/OpenNI/Platform/Linux-x86/Bin/Release/
sudo ./NiViewer
Pour l'usage clavier voir le wiki [[http://wiki.openni.org/mediawiki/index.php/Main_Page|ici]]
==== Compiler en SSE2 ====
Uniquement si votre CPU n'est pas compatible SSE3
lire le README :
gedit ~/kinect/OpenNI/README
* Pour compiler en utilisant le SSE2 :
sudo gedit ~/kinect/OpenNI/Platform/Linux-x86/Build/CommonMakefile
* Changer **SSE_GENERATION = 3** par **SSE_GENERATION = 2**
===== Sources =====
* Ce [[http://upinstall.passion-xbmc.org/tutoriels-linux/installation-kinect-openni-nite/|tutoriel]] sur le forum **Passion XBMC**
* Ce [[http://www.etti.tuiasi.ro/cin/Courses/SistEmbedded/Projects/Linux/BeagleBoard/Kinect_on_Ubuntu/Kinect_on_Ubuntu.html|tutoriel]] **(En anglais)**,
* Ce [[http://www.felix-huelsmann.de/Blog/MSKinectmitopenNIunterUbuntuLinux.php|complément]] **(En allemand)**
* Les **informations** et la **documentation** trouvées sur le site de l'éditeur, [[http://www.openni.org/|OpenNI]].
* Le [[http://wiki.openni.org/mediawiki/index.php/Main_Page|wiki]] OpenNI :
===== Suite =====
La suite de ce tutoriel se trouve sur la page de doc [[:kinect_openni_nite|openni nite]] et explique comment activer le **HandTracking** et **SkeletonTracking** (reconnaissance des mains et du corps) avec NITE.