tutoriel kinect - imagair.imag.fr/images/d/d0/tutorialkinect-processingeclipse.pdf · 2012. 10....

16
Tutoriel Kinect La programmer avec processing et/ou eclipse (plugin proclipsing) sur Ubuntu 12.04 Fabien Eloy Étudiant à Polytech Grenoble en RICM, 4ème année Stagiaire au Laboratoire LIG-GETALP Mai 2012 - Août 2012

Upload: others

Post on 18-Jan-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Tutoriel Kinect

La programmer avec processing et/ou eclipse

(plugin proclipsing) sur Ubuntu 12.04

Fabien Eloy

Étudiant à Polytech Grenoble en RICM, 4ème annéeStagiaire au Laboratoire LIG-GETALP

Mai 2012 - Août 2012

Page 2: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Table des matières

0.1 Installation de la bibliothèque freenect . . . . . . . . . . . . . 400.2 Installation des bibliothèques OpenNI, Nite et du pilote Pri-

mesense . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400.2.1 Installation de OpenNI . . . . . . . . . . . . . . . . . . 400.2.2 Installation de Nite . . . . . . . . . . . . . . . . . . . . 400.2.3 Installation des pilotes . . . . . . . . . . . . . . . . . . 41

0.3 Installation de l’éditeur Processing (< v2.0) et de ses dépen-dances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410.3.1 Installation de SimpleOpenNi . . . . . . . . . . . . . . 410.3.2 Installation de OpenKinect . . . . . . . . . . . . . . . . 410.3.3 Utilisation de Processing . . . . . . . . . . . . . . . . . 42

0.4 Installation d’eclipse et du plugin proclipsing . . . . . . . . . . 450.4.1 Installation d’eclipse . . . . . . . . . . . . . . . . . . . 450.4.2 Installation du plugin proclipsing . . . . . . . . . . . . 450.4.3 Utilisation du plugin Proclipsing . . . . . . . . . . . . 50

38

Page 3: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Table des figures

1 Téléchargement de OpenNI . . . . . . . . . . . . . . . . . . . 402 Téléchargement de Processing . . . . . . . . . . . . . . . . . . 413 Téléchargement de SimpleOpenNI . . . . . . . . . . . . . . . . 424 Message possible au démarrage de Processing . . . . . . . . . 425 Emplacement du sketchbook de Processing . . . . . . . . . . . 436 Ouverture d’un projet exemple dans Processing . . . . . . . . 447 Résultat du programme User . . . . . . . . . . . . . . . . . . . 458 Saisie nom et URL Proclipsing . . . . . . . . . . . . . . . . . . 469 Sélection des fichiers à installer . . . . . . . . . . . . . . . . . 4710 Vérification puis suivant . . . . . . . . . . . . . . . . . . . . . 4811 Acceptation de la licence . . . . . . . . . . . . . . . . . . . . . 4912 Avertissement de sécurité . . . . . . . . . . . . . . . . . . . . . 5013 Nouveau projet . . . . . . . . . . . . . . . . . . . . . . . . . . 5014 Nouveau projet . . . . . . . . . . . . . . . . . . . . . . . . . . 5115 Squelette de code à la création d’un nouveau projet . . . . . . 52

39

Page 4: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Kinect avec processing/eclipse sur Ubuntu 12.04

0.1 Installation de la bibliothèque freenectIl faut se reporter au tutoriel Kinect nommé "Récupérer un flux audio/vi-

deo avec freenect sur Ubuntu 12.04" pour cette partie et le suivre entièrementavant de passer à la section suivante.

0.2 Installation des bibliothèques OpenNI, Niteet du pilote Primesense

Télécharger le dossier "installer" : http://code.google.com/p/simple-openni/downloads/detail?name=OpenNI_NITE_Installer-Linux64-0.26.zip&can=2&q=Type%3DInstaller+OpSys%3DLinux

Décompresser l’archive (archive décompréssée nommée monDossier par lasuite) sur votre espace personnel.

0.2.1 Installation de OpenNI

Figure 1 – Téléchargement de OpenNI

cd ./monDossier/OpenNI-Bin-Linux64-v* (* selon la version de l’archive)sudo ./install.sh

0.2.2 Installation de Nitecd ./monDossier/Nite-* sudo ./install.sh

40

Page 5: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Kinect avec processing/eclipse sur Ubuntu 12.04

0.2.3 Installation des pilotescd ./monDossier/SensorKinect-Bin-Linux64-v* sudo ./install.sh

cd ./monDossier/kinect/Sensor-Bin-Linux-x64-v* sudo ./install.sh

0.3 Installation de l’éditeur Processing (< v2.0)et de ses dépendances

Rendez vous sur l’espace de téléchargement du site de l’éditeur, en sélec-tionnant la version pour Linux (figure 2) : http://processing.org/download/

Figure 2 – Téléchargement de Processing

Créer l’arborescence ~/skecthbook/libraries

0.3.1 Installation de SimpleOpenNiTélécharger le dossier d’installation : http://code.google.com/p/simple-openni/

downloads/detail?name=SimpleOpenNI-0.26.zip&can=2&q=SimpleOpenNI

Décompresser l’archive dans le dossier libraries.

0.3.2 Installation de OpenKinectTélécharger le dossier d’installation : www.shiffman.net/p5/libraries/

openkinect/openkinect.zip

Décompresser l’archive dans le dossier libraries.

41

Page 6: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Kinect avec processing/eclipse sur Ubuntu 12.04

Figure 3 – Téléchargement de SimpleOpenNI

0.3.3 Utilisation de ProcessingÀ ce stade vous pouvez maintenant lancer proclipsing en vous rendant

dans le dossier Processing* téléchargé et en le lançant comme un exécutableen ligne de commande : ./processing

Figure 4 – Message possible au démarrage de Processing

Il est possible que vous ayez ce message (figure 4) au lancement, OKsi vous disposez d’un environnement java (en e�et, installer les paquetsconseillés est devenu un véritable parcours du combattant avec Ubuntu 12.04) cela marchera tout de même, sinon installez-en un (sudo apt-get installopenjdk-6-jdk openjdk-6-jre).

42

Page 7: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Kinect avec processing/eclipse sur Ubuntu 12.04

Il faut maintenant vérifier dans File > Preferences si le sketechbook deProcessing (eg le répertoire de travail) est bien ~/skecthbook/. Si ce n’estpas le cas, changez-le (figure 5).

Figure 5 – Emplacement du sketchbook de Processing

Maintenant vous pouvez ouvrir un des projets exemples (figure 6) :File> Examples> Contributed Libraries> SimpleOpenNI> OpenNI> User

Pour lancer le programme (skecth) User il su�t de cliquer sur le triangle(play).

Remarque : Bien que la kinect soit correctement branchée et installée ilest possible que le programme ne se lance pas avec l’erreur « Can’t open thedepthMap, maybe the camera is not connected ! ». Il faut déjà privilégier lesports USB 2.0 aux USB 3.0. Ensuite, pour résoudre ce problème, j’ai d’abordexécuté la librairie libfreenect.Pour cela :cd libfreenect/buildsudo bin/glview

43

Page 8: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Kinect avec processing/eclipse sur Ubuntu 12.04

Figure 6 – Ouverture d’un projet exemple dans Processing

Maintenant vous devez voir à gauche l’image de la caméra infrarouge età droite celle de la caméra RGB. Fermez maintenant cette fenêtre et essayezde relancer le programme user, le problème devrait être réglé. On peut voir(figure 7) le résultat du programme User qui dessine le squelette simplifiéde l’utilisateur après une pose de calibration de ce dernier. Bien sûr, quandl’utilisateur bouge par la suite, le squelette suit.

Maintenant, il vous est possible de programmer la kinect grâce à cet « édi-teur ». Ce dernier n’o�rant ni l’autocomplétion, ni le soulignement d’erreurs. . . Il n’est pas très facile d’y coder quelque chose. Je vous recommande for-tement de passer par l’interface d’eclipse grâce à un plugin qui nous simplifiela vie (importation des librairies automatique, squelette de code. . .).

44

Page 9: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Kinect avec processing/eclipse sur Ubuntu 12.04

Figure 7 – Résultat du programme User

0.4 Installation d’eclipse et du plugin pro-clipsing

0.4.1 Installation d’eclipseL’IDE eclipse étant dans les dépots o�ciels il su�t de taper la commande

sudo apt-get install eclipse

0.4.2 Installation du plugin proclipsingDans eclipse on installe le gre�on (plugin) nommé Proclipsing :

Help> Install New Software> Add

45

Page 10: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Kinect avec processing/eclipse sur Ubuntu 12.04

Figure 8 – Saisie nom et URL Proclipsing

Entrer dans name : ProclipsingEntrer dans location :http ://proclipsing.googlecode.com/svn/tags/current_releases/proclipsingSite/Valider par OK.

46

Page 11: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Kinect avec processing/eclipse sur Ubuntu 12.04

Figure 9 – Sélection des fichiers à installer

Maintenant cocher les deux lignes dans la section Name, puis Next >

47

Page 12: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Kinect avec processing/eclipse sur Ubuntu 12.04

Figure 10 – Vérification puis suivant

Encore une fois Next >

48

Page 13: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Kinect avec processing/eclipse sur Ubuntu 12.04

Figure 11 – Acceptation de la licence

Cocher « I accept. . .» puis Finish.

49

Page 14: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Kinect avec processing/eclipse sur Ubuntu 12.04

Figure 12 – Avertissement de sécurité

Cliquer sur OK.

L’installation du plugin est maintenant terminée. Nous allons maintenantvoir comment créer un projet utilisant processing.

0.4.3 Utilisation du plugin ProclipsingCliquer sur File> New> Project afin de créer un nouveau projet grâce à

Proclipsing.

Figure 13 – Nouveau projet

50

Page 15: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Kinect avec processing/eclipse sur Ubuntu 12.04

Dans Processing sélectionner Processing Project puis cliquer sur Next >

Figure 14 – Nouveau projet

Mon nom de projet ici est ProClips. Si le Processing Path n’est pas re-connu, je vous conseille de faire Browse et de vous rendre dans le dossierd’installation de processing (même si celui-ci est déjà marqué dans le che-min). Processing Sketch Path doit être votre dossier sketchbook (je rappellequ’il doit y avoir à l’intérieur un dossier libraries contenant le dossier Sim-pleOpenNI).NB : vous pourrez toujours changer ces deux chemins dans eclipse : Win-dow> Preferences> Proclipsing

Pour les premiers projets, je vous conseille d’importer toutes les librairiespossibles par cette interface graphique, quitte à les supprimer par la suitedans l’arborescence (car l’ajout de librairies à posteriori peut-être une tâchedi�cile pour un néophyte).

51

Page 16: Tutoriel Kinect - imagair.imag.fr/images/d/d0/TutorialKinect-ProcessingEclipse.pdf · 2012. 10. 9. · Vous remarquerez quÕ la cr ation dÕun nouveau projet, un squelette de code

Kinect avec processing/eclipse sur Ubuntu 12.04

Vous remarquerez qu’à la création d’un nouveau projet, un squelette decode (figure 15) est directement écrit, afin de faciliter la tâche du program-meur.

Figure 15 – Squelette de code à la création d’un nouveau projet

Pour l’exécution : Clic Droit sur le programme : Run as> Java Applet (ouApplication).

Enfin, afin d’avoir un exemple de programmation avec eclipse, vous pou-vez importer le fichier java qui se trouve dans le dossier :~/sketchbook/libraries/SimpleOpenNI/examples/eclipse/Il su�t de le mettre dans le src de votre projet et pour exécuter un Clicdroit> Run as> Java Applet.

52