ARToolkit est un logiciel libre et open source qui permet aux développeurs de créer des applications de réalité augmentée. Il offre une variété de fonctionnalités qui permettent aux développeurs de créer des applications interactives et immersives. Dans ce guide, nous allons vous présenter les bases d’ARToolkit et vous expliquer comment l’utiliser pour créer des applications de réalité augmentée. Nous vous expliquerons également comment tirer le meilleur parti des fonctionnalités offertes par ARToolkit et comment intégrer des technologies de réalité augmentée dans vos applications.
Introduction à ARToolkit

1. ARToolkit, c’est quoi ?
- ARToolkit, pour « Augmented Reality Tool kit » ou « boite à outils pour la réalité augmentée » est une technique basée sur la détection et la reconnaissance de « marker » ou « pattern » dans une image vidéo permettant :
- la reconnaissance du marker correspondant (plus de 4000 markers différents possibles, carrés noir et blanc diversement « remplis » à la façon d’un damier,
- l’extraction des informations 3D du marker, notamment de la transformation de perspective
- permettant de remplacer dans l’image vidéo le marker par un objet 3D qui pourra ainsi « suivre » les mouvements du marker.
- ARToolkit est une librairie qui permet de mettre en oeuvre simplement de la réalité augmentée en se basant sur la reconnaissance visuelle de « marker » qui sont des « carrés » avec un sigle composé de carrés noirs/ blancs…
- Cette librairie fournit les fonctions de détection des « marker » dans une image, le calcul de la perspective correspondante, l’analyse du marker.
- Ensuite, dans Processing notamment, on peut associer chaque « marker » à tel ou tel objet 3D ou autre..
Intérêt
2. Pourquoi c’est intéressant ?
- La technique utilisée comporte une solution de seuillage de binarisation automatique qui s’adapte à la luminosité ambiante automatique ce qui rend la mise en oeuvre simple dans des conditions d’éclairage différentes.
- La technique apparaît très robuste en détection y compris avec des seuils de confiance élevés (càd un niveau de probabilité de correspondance élevé, de l’ordre 80% par exemple)
- La reconnaissance est indépendante de la perspective et de la rotation. La reconnaissance est bonne (pour ne pas dire excellente) à des distance de l’ordre de 4m pour une taille de marqueur de 15×15 environ
- La reconnaissance est également tolérante à la déformation du marker
- L’utilisation de la CPU est très modeste et la reconnaissance très fluide et rapide permettant une réactivité en temps réel très fluide.
- Après quelques tests, j’estime cette technique très intéressante et performante :
- la détection des markers est robuste, indépendemment de la luminosité
- la reconnaissance du type de marker est très discriminante (parmi 10 markers différents, le taux de détection exacte est de l’ordre de 90 à 100% !)
- la récupération des informations 3D du marker est relativement aisée
- et surtout, la reconnaissance des markers sur un flux vidéo webcam en temps réel est très fluide et rapide, permettant d’atteindre les 30 fps sans problème !
3. Pour quoi faire ?
- Les applications potentielles sont :
- des applications de réalité augmentée, ce pour quoi la technique a été imaginée
- mais surtout, en ce qui me concerne, pour une utilisation en robotique permettant d’envisager :
- des détections avancées de personnes
- des détections de murs, portes, etc.. avec virtualisation de l’espace 3D associé, le tout en temps réel
4. Etat des lieux de l’existant
- Artoolkit : la librairie originale : http://www.hitl.washington.edu/artoolkit/ (projet universitaire)
- ARToolkitPlus (C++) : une variante « améliorée » (?) : http://handheldar.icg.tugraz.at/artoolkitplus.php (annoncée stoppée depuis 2006) et poursuivie ici : https://launchpad.net/artoolkitplus A noter que javacv implémente ARToolKitPlus… mais jonction avec Opencv ? => à priori OUI ! Cf lib javacv => classe MarkerDetector ! Mais il faut mettre les mains dans le camboui à priori…
- Un autre projet comparable, dérivé de ARToolKitPlus : http://studierstube.icg.tugraz.at/handheld_ar/stbtracker.php
- NyARToolKit : librairie Java de ARTOOLKit (site japonais) http://nyatla.jp/nyartoolkit/wp/?page_id=198 Le TOP : existe en librairie Processing : http://nyatla.jp/nyartoolkit/wp/?page_id=357 A priori, le plus facile à mettre en oeuvre dans Processing… !!
5. Comment çà marche ?
6. ARToolkit sous Processing = la librairie nyar4psg !
- NyARToolKit : librairie Java de ARTOOLKit (site japonais) http://nyatla.jp/nyartoolkit/wp/?page_id=198 Le TOP : existe en librairie Processing : http://nyatla.jp/nyartoolkit/wp/?page_id=357 A priori, le plus facile à mettre en oeuvre dans Processing… !!
Articles similaires:
- http://web.archive.org/web/20210804223007/http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MAIN.OutilsProcessingARToolkit
- ARToolkit avec Processing
- Processing ARToolkit : Premier essai utilisant ARToolkit et la réalité augmentée
- Processing ARToolkit : Second essai utilisant ARToolkit et la réalité augmentée
- http://web.archive.org/web/20210804223007/http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MAIN.OUTILSJavacvCodesProcessingJavacvPro
Articles Liés
- ARToolkit avec Processing
L'ARToolkit est un outil puissant qui permet aux développeurs de créer des applications de réalité…
- Processing : OpenCV : librairie javacvPro : ...
Processing est un langage de programmation open source qui permet aux développeurs de créer des…
- OUTILS
NUMÉRIQUES ET ÉDUCATION Les outils numériques sont devenus incontournables dans le monde de l'éducation. En…