Motivation Notre principale motivation dans ce stage est l’importation d’une technologie qui est déjà fonctionnelle sur station de travail, à savoir, le suivi temps réel en RA, sur un d
Trang 1Institut TELECOM / TELECOM & Management SudParis
Département Advanced Research & TEchniques for
Multidimensional Imaging Systems
Marius PREDA, Maitre de Conférences au TELECOM SudParis
Madjid MAIDI, Ingénieur R&D au TELECOM SudParis
Directeur de stage Encadrant
Trang 2Résumé
L’objectif de ce stage est de réaliser un système de reconnaissance d’objets sans-marqueurs
en réalité augmentée sur une plateforme mobile Une méthode novatrice basée sur les descripteurs locaux invariants a été implémentée pour détecter et extraire les points d’intérêts dans l’image Cette technique a été optimisée et adaptée pour être exploitée sur une architecture mobile à faibles ressources La deuxième partie du stage est l’estimation de
la pose de la caméra pour pouvoir recaler des graphiques virtuels sur des images réelles afin d’augmenter et enrichir la perception visuelle de l’utilisateur Des tests expérimentaux et de nombreuses évaluations ont été effectués pour démontrer l’intérêt de l’approche proposée
Le travail réalisé a permis de lever le verrou sur certaines problématiques d’identification et
de suivi d’objets de formes libres dans un environnement non instrumenté de réalité augmentée mobile
Abstract
This work aims to realize a recognition system for markerless tracking in mobile augmented reality A novel method based local invariant descriptors was implemented to detect and extract image feature points This technique was optimized and adapted for a mobile architecture with low resources The second part of work is the camera pose estimation to superimpose virtual graphics on real image in order to enhance the visual perception of the user Experiments and many evaluations were conducted to demonstrate the relevance of the proposed approach This study enabled to overcome some identification issues for markerless tracking in mobile augmented reality environments
Trang 3Table des matières
Résumé 2
Abstract 2
Table des matières 3
Remerciements 6
Cadre du stage 7
Références 8
Matériels et logiciels utilisés 8
Chapitre I Contexte et objectifs 9
1.1 Problématique 10
1.1.1 Suivi d’objet de forme libre 10
1.1.2 Estimation de la pose de la caméra 10
1.1.3 Contraintes 10
1.2 Motivation 11
1.3 Objectifs 11
1.3.1 Identification d’objets par la technique SURF 11
1.3.2 Calcul de la pose 11
1.3.3 Implémentation sur téléphone portable 11
1.4 Contributions 12
1.4.1 Utilisation de SURF pour la reconnaissance d’objets de formes libres 12
1.4.2 Amélioration du temps d’exécution et le taux de reconnaissance de cibles 12
1.4.3 Développement de l’application sur téléphone portable 12
Chapitre II Les systèmes de réalité augmentée mobiles : état de l’art 14
2.1 Introduction 14
2.2 Travaux de recherches 14
2.2.1 Travaux de Chen et al 14
2.2.2 Travaux de Karpischek et al 15
2.2.3 Travaux de Henrysson et al 16
2.2.4 Travaux de Assad et al 16
2.2.5 Travaux de Keitler et al 17
2.2.6 Travaux de Schmalstieg et Wagner 18
Trang 42.2.7 Travaux de Wagner et al 19
2.2.8 Travaux de Klein et Murray 19
2.2.9 Travaux de Takacs et al 20
2.2.10 Discussion 20
2.3 Applications commerciales développées 21
2.3.1 Applications pratiques 22
2.3.2 Applications scientifiques 26
2.4 Conclusion 29
Chapitre III Contributions pour le suivi d’objet naturel en temps réel 30
3.1 Introduction 30
3.2 Identification d’objet par la méthode SURF 30
3.3 Amélioration du temps de calcul pour le suivi temps-réel 32
3.4 Calibration de la caméra 33
A Notations 35
B L’homographie entre le modèle planaire et son image 35
C Contraintes des paramètres intrinsèques 36
D Interprétation géométrique 36
E Résolution des paramètres de la calibration 37
3.5 Appariement 2D-3D 41
3.6 Estimation de la pose de la caméra 42
A Équations de bases 43
B L'homographie entre le modèle planaire et son image 43
C Résolution analytique 44
D Algorithme 44
3.7 Recalage de graphique virtuel sur l’objet réel 45
3.8 Conclusion 45
Chapitre IV Résultats et évaluations 46
4.1 Introduction 46
4.2 Environnement matériel et outil de développement 46
4.2.1 La librairie OpenCV 46
4.2.2 Symbian 47
4.2.3 Android 49
4.3 Résultats de la reconnaissance 50
4.3.1 Amélioration du temps de calcul 53
Trang 54.3.2 Amélioration du taux d’identification 55
4.4 Résultat de suivi en réalité augmentée 55
4.4.1 Calibration de la caméra 55
4.4.2 Appariements 2D-3D 58
4.4.3 Calcul de la pose 59
4.4.4 Recalage d’objet virtuel 61
4.5 Implémentation sur Symbian, Android 62
4.5.1 Configuration matérielle et logicielle 62
4.5.2 Étude comparative 63
4.6 Conclusion 64
Chapitre V Conclusions et perspectives 65
PERSPECTIVES 66
Références bibliographiques 67
Trang 6Remerciements
Tout d’abord, je tiens à remercier mon responsable de stage, M Marius PREDA, de m'avoir accueilli dans son équipe, au département ARTEMIS, et pour avoir dirigé mon travail toute la durée de ce stage
Je remercie M Madjid MAIDI pour son encadrement et pour tous les conseils qu’il m’a prodigués
Enfin, Mes remerciements s’adressent à tous mes collègues au département ARTEMIS et à toute l’équipe technique et administrative, pour l’ambiance qu’ils n’ont pas manquée d’apporter tout le long du stage
Trang 7Cadre du stage
Présentation du Département ARTEMIS
ARTEMIS (Advanced Research & TEchniques for Multidimensional Imaging Systems) est un département de recherche et développement du TELECOM SudParis et dont le directeur est
M Pierre ROLIN Les thématiques de recherche d'ARTEMIS se rapportent aux sciences et technologies de l'image numérique Celles-ci lancent de nombreux défis aux acteurs économiques et académiques afin de concevoir méthodes innovantes et nouveaux services pour la société de l'information L'image numérique d'aujourd'hui couvre le large éventail des données visuelles : 2D comme en radiographie ou 3D comme en CAO industrielle; statiques (photos, dessins ) ou animées (vidéos, maillages dynamiques, objets déformables ), naturelles (issues du monde physique) ou de synthèse (générées par ordinateur), en environnement fixe ou mobile
ARTEMIS traite la chaîne d'image depuis la création des contenus numériques jusqu'à leur diffusion L'enjeu est de créer, modéliser, analyser, indexer, animer, sécuriser, manipuler, enrichir, coder, distribuer et visualiser des contenus hétérogènes et complexes pour des services d'intermédiation économiquement réalistes
Les activités du département sont subdivisées en trois grands thèmes :
Analyse de contenus visuels : modélisation, reconstruction 3D, segmentation de forme, recalage, mouvement, texture
Enrichissement des flux multimédias : indexation, protection, animation, interactivité, réalité augmentée
Échanges de contenus multimédias : compression, transmission, visualisation, interopérabilité
En maîtrisant les interactions analyse-échanges, analyse-enrichissement, échanges, ARTEMIS dispose d'une expertise globale sur la chaîne de production de l'image numérique
enrichissement-Mon stage intervient dans le premier et le deuxième thème de recherche, car l’objectif du travail est de réaliser un système de reconnaissance d’objet de forme libre dans un processus de suivi en réalité augmentée mobile
Trang 8Références
Mon stage s’effectue au département ARTEMIS au TELECOM SudParis situé à l’adresse :
9, Rue Charles Fourier
91011 Évry Cedex – France
Mon directeur de stage est M Marius PREDA et mon encadrant est M Madjid MAIDI dont voici les coordonnées :
Matériels et logiciels utilisés
PC Dell : 3Go de RAM - processeur Intel 7250 Duo @ 2GHz
Téléphones portables :
Nokia N95 : 160Mo - processeur @ 332MHz
HTC Hero : 288Mo - processeur @ 528MHz
Nexus One : 512Mo - processeur @ 1GHz
Systèmes d’exploitation : Ubuntu 10.04, Windows XP/7, Symbian OS v9.2, Android 2.1
IDE : Eclipse, ADT, Visual Studio 2005/2008
Librairies : OpenCV, STL, MFC, pThread, OpenC/C++, NDK, JNI
Langages de programmation : C/C++, Java
Trang 9Chapitre I Contexte et objectifs
La Réalité Augmentée (RA) consiste à ajouter des éléments virtuels dans le monde réel pour enrichir la perception visuelle de l’utilisateur Depuis deux décennies, la RA a connu des progrès technologiques importants grâce à la recherche scientifique menée dans le domaine
de la vision par ordinateur et de l’informatique graphique [Maidi, 2007] Les applications de
la RA sont multiples et touchent plusieurs domaines tels que: jeux vidéo, éducation, divertissement, télévision, industrie, médecine, etc
Toutefois, des verrous technologiques ne sont toujours pas résolus et les solutions sont parfois typiques à un problème donné Le défi majeur pour un système de RA est la combinaison du monde réel et virtuel dans un environnement augmenté cohérent et temps réel La cohérence visuelle et le temps réel sont des règles fondamentales à respecter pour toute application en RA [Azuma et al., 2001]
Récemment, le marché des télécommunications a été révolutionné par les téléphones portables et le domaine des applications mobiles Les téléphones portables sont dotés de plus en plus de capteurs de repérage et de localisation tels que : les boussoles, les accéléromètres et les GPS Avec des CPUs et des processeurs graphiques plus puissants, des applications plus évoluées peuvent être déployées sur ces dispositifs et notamment les applications de la RA Des milliers d’applications sont disponibles aujourd’hui sur des portails web dédiés aux téléchargements de ces applications comme Apple Store d'Apple, Android Market de Google ou OVI Store de Nokia, etc
Selon les experts, le marché de la RA mobile est en plein essor et en constante progression Une enquête de Juniper Network estime qu’à la fin de 2010, le marché de la RA réalisera un chiffre d’affaire de 2 millions USD, alors qu’en 2014 ce chiffre pourrait atteindre la somme
de 714 millions USD [Walsh, 2009] Cette étude encourage les développeurs et les entreprises à s’investir dans ce domaine prometteur et rentable
L'avantage des systèmes de la RA mobile est la portabilité Les téléphones portables de nos jours sont quasiment tous équipés d’une caméra et de capteurs de position et de direction tels que la boussole ou le GPS Ces capteurs intégrés au sein du téléphone permettent de réaliser des applications intéressantes ayant des fonctionnalités d’assistance et de guidage
de l’utilisateur en environnement extérieur
Trang 10Bien que les téléphones portables connaissent un grand progrès au niveau du développement applicatif, cependant il existe un décalage entre les applications réalisées et les performances matérielles du téléphone (mémoire réduite, processeur lent, autonomie insuffisante, etc) Par conséquent, le téléphone portable n’est pas encore adapté aux applications de RA temps réel qui demandent beaucoup de ressources matérielles Le développement technique dans le domaine de la nanotechnologie permettrait dans un futur proche d’améliorer les performances des unités de calcul des téléphones tout en augmentant leur capacité de stockage et d’adressages
1.1 Problématique
Les problématiques auxquelles nous nous sommes intéressées dans ce stage sont les suivantes :
1.1.1 Suivi d’objet de forme libre
La plupart des systèmes de RA actuels utilisent des marqueurs visuels, ces systèmes sont adaptés pour des environnements intérieurs et instrumentés Dans notre cas, il s’agit d’une application sur un dispositif portable qui fonctionne en intérieur et en extérieur Par conséquent, l’utilisation d’un système de reconnaissance de cibles naturelles s’impose
1.1.2 Estimation de la pose de la caméra
L’une des problématiques majeures de notre application est l’estimation de la pose de la caméra Cette étape est cruciale pour tout système de RA car elle permet le recalage ou la superposition des graphiques virtuels sur les images réelles Dans cette partie nous allons aborder le problème d’estimation de la pose d’une manière détaillée, quels sont les paramètres qui régissent cette transformation et quel est le résultat obtenu à partir des équations
1.1.3 Contraintes
Notre système présente deux contraintes principales qui sont :
Le temps d’exécution : Fonctionner en temps réel, c'est l'exigence principale des systèmes de la RA Cette performance dépend du matériel (capacité de la mémoire et vitesse du processeur,…) et des algorithmes (optimisations, parrallélisation,…)
Trang 11La précision de l’identification d’objets : La qualité d’identification est un paramètre important dans notre logiciel de tracking Ça permet de reconnaitre et de suivre l’objet d’intérêt d’une manière fiable et stable La précision de l’identification est conditionnée par le nombre de points caractéristiques pertinents suivis au cours du temps ainsi que le nombre d’appariements retrouvés dans chaque image
1.2 Motivation
Notre principale motivation dans ce stage est l’importation d’une technologie qui est déjà fonctionnelle sur station de travail, à savoir, le suivi temps réel en RA, sur un dispositif portable tout en adaptant les approches utilisées afin d’élargir le champ d’applications de ces systèmes portables et fournir aussi une assistance à l’utilisateur dans ces tâches habituelles
1.3 Objectifs
Les objectifs du stage sont au nombre de trois :
1.3.1 Identification d’objets par la technique SURF
Notre premier objectif est l’utilisation d’une méthode robuste pour l’extraction des points d’intérêt, à savoir la technique SURF (Speeded Up Robust Features) [Bay et al., 2008] Tout d’abord, il faut adapter cette méthode pour la reconnaissance d’objets dans un flux vidéo
en temps réel et en deuxième étape, il est nécessaire d’optimiser le temps de calcul de la méthode et améliorer la qualité de l’identification afin de réaliser une application de suivi fiable et temps réel
1.3.2 Calcul de la pose
Le deuxième objectif du stage sera l’estimation de la pose de la caméra Cette étape nécessite une procédure de calibration pour déterminer les paramètres intrinsèques qui nécessaires pour résoudre la transformation projective de la pose Nous utiliserons un algorithme analytique dont la complexité est réduite afin de déterminer la position et l’orientation de la caméra en temps réel tout en fournissant des erreurs de re-projections acceptables
1.3.3 Implémentation sur téléphone portable
Le dernier objectif du stage sera l’implémentation du code sur une plateforme mobile qui est
le téléphone portable L’application de RA réalisée doit pouvoir s’exécuter sur le téléphone,
Trang 12les algorithmes de reconnaissance, d’estimation de pose et de recalage doivent être adaptés pour le mobile Le code réalisé initialement sur PC devra subir des changements et des optimisations afin qu’il soit exploitable sur le téléphone En effet, la vitesse du processeur du téléphone ainsi que sa mémoire assez limitée ne permettent pas d’exécuter les programmes
à des cadences temporelles similaires à celles du PC
1.4 Contributions
1.4.1 Utilisation de SURF pour la reconnaissance d’objets de formes libres
SURF est un algorithme d'extraction de points d'intérêt et de calcul de descripteurs locaux invariants à partir d'une image L’une des caractéristiques intéressantes de SURF est le temps de calcul En effet, comparé avec un autre algorithme de calcul de descripteurs invariants dans l’image SIFT (Scale-invariant feature transform) [Lowe, 2004], SURF est beaucoup plus rapide [Bauer et al., 2007] Toutefois, cette rapidité est loin d’être temps réel car au meilleur des cas, il réalise un traitement à 2 FPS (FPS : images/seconde) voire 1 FPS La méthode SURF est utilisée pour la reconnaissance d’objets dans l’image, elle permet de comparer ses descripteurs avec ceux de l’image de référence, le calcul de distance entre les deux vecteurs descripteurs fournit le taux d’identification de l’objet Nous allons implémenter cette méthode sur le PC et le portable pour analyser et évaluer les résultats et déduire en conséquence les limites de la méthode sur les deux environnements matériels
1.4.2 Amélioration du temps d’exécution et le taux de reconnaissance de cibles
L’une parmi nos contributions majeures dans ce stage, est l’exécution temps réel de notre système de tracking et de recalage En effet, cette contrainte est plus qu’importante car elle définie avec l’interactivité et la cohérence visuelle un système de RA Plusieurs techniques d’optimisation seront testées afin d’essayer de réduire le temps de calcul sur PC dans un premier temps et ensuite sur le portable La qualité de l’identification doit être améliorée en paramétrant convenablement l’algorithme et en trouvant de bons compromis entre le temps d’exécution et le taux de reconnaissance d’objets
1.4.3 Développement de l’application sur téléphone portable
Nos algorithmes développés sur PC seront tous portés sur deux plateformes mobiles : Symbian et Android Nous utiliserons la bibliothèque de vision OpenCV qui n’est pas tout à fait adaptée aux plateformes mobiles et présente quelques fois des incompatibilités avec des architectures portables Le développement est fait exclusivement en C/C++, toutefois, le système d’exploitation Android fonctionne avec du code Java, il faut alors trouver un pont entre les deux langages pour permettre de programmer en C/C++ et OpenCV sous Android
Trang 13La réalisation de l’application de RA sur le téléphone portable constitue une contribution importante de ce stage, car il existe peu de travaux dans ce domaine qui intègre directement une technique de suivi d’objet de forme libre sur une plateforme mobile
Trang 14Chapitre II Les systèmes de réalité augmentée mobiles : état de l’art
Au vu de leur succès annoncé pour ces prochaines années et de l'adoption plus large de fonctionnalités facilitant l'émergence de la RA dans les mobiles, comme les boussoles et les accéléromètres, la popularité de ces systèmes sera spectaculaire On devrait compter 350 millions de terminaux capables de profiter de la RA d'ici 2014 La recherche géo-localisée et traitée par RA constituera l'un des premiers générateurs de revenus, en attendant l'arrivée
de jeux faisant appel à cette fonctionnalité, dans les années à venir
Nous allons commencer par présenter les travaux les plus imminents développés dans la recherche et j’évoquerai par la suite les solutions industrielles
2.2 Travaux de recherches
2.2.1 Travaux de Chen et al
[Chen et al., 2009] ont réalisé un système de reconnaissance et de tracking d'objets dans un flux vidéo en temps réel sur un téléphone portable Le système présente une latence d'une seconde lors de la phase de reconnaissance et permet le suivi de livre et des boitiers de CD L'estimation du mouvement est réalisée à 30 FPS et la recherche de mise en correspondance est effectuée sur une base de 20000 images stockées sur un serveur (figure 2.1)
Trang 15L'inconvénient c'est que les traitements se font sur un serveur, le temps de communication réseau ainsi que les éventuelles pannes qui pourraient surgir dans le réseau altéreront la détection des objets et engendrent un temps de latence
2.2.2 Travaux de Karpischek et al
[Karpischek et al., 2009] ont développé une application de RA sur un iPhone 3GS pour la visualisation des montagnes Le prototype contient une nouvelle approche pour corriger les imprécisions dans les données capteur en utilisant des services web permettant l'affichage des montagnes visibles par l'utilisateur
L'implémentation du système était réalisée en utilisant un SDK permettant de fournir une API de recalage virtuel dans un flux vidéo en temps réel La boussole fournit l'orientation horizontale du téléphone et l'orientation verticale est donnée par l'accéléromètre L'affichage virtuel pourrait parfois être imprécis à cause des données GPS et de la boussole
Ces erreurs d'imprécisions peuvent être corrigées manuellement par l'utilisateur en ajustant
le positionnement et en supprimant le décalage entre l'objet virtuel et l'objet réel
Séquence d’images
Rendu graphique
Décodage de l’image
Validation du modèle
Extraction des indices
Mise en correspondance Base de
Trang 16Le système développé présente l'avantage d'exploiter des géo-informations pour la localisation sans avoir à utiliser les techniques de RA pour le traitement d'images et la reconnaissance d'objet Le système permet aussi de corriger les erreurs issues de capteurs par un ajustement manuel de position
2.2.3 Travaux de Henrysson et al
Un système de RA basé marqueurs a été développé par [Henrysson & Ollila, 2004] pour des applications sur téléphones mobiles Les auteurs ont aussi présenté une librairie pour le développement d’applications mobiles de RA ubiquitaires
ARToolKit a été utilisé pour la reconnaissance et la localisation L'application est installée sur
un Smartphone qui présente l'avantage d'avoir une caméra, un GPS et d'être connecté aux réseaux via les protocoles GPRS et UMTS
Les auteurs ont développé un prototype composé de trois modules : un premier module interface-utilisateur qui s'exécute sur le téléphone et permet d'établir la communication avec l'un des points d'accès Bluetooth présents dans l'environnement Le module de point d'accès permet de transmettre l'information à un module de service de RA situé sur un serveur Ce module traite les images et retournent des images augmentées avec des objets virtuels (figure 2.2)
Trang 17
L'AR phone est un système en cours de développement Les concepts fondamentaux du prototype requièrent des améliorations Seule une caméra est utilisée pour réaliser le tracking ce qui rend le système peut robuste par rapport à la détection et la localisation des marqueurs
Enfin, ce système présente l’inconvénient d'utiliser les marqueurs visuels Cette approche basée marqueurs rend le système contraint et moins flexible
2.2.5 Travaux de Keitler et al
[Keitler et al., 2009] ont présenté un système de RA mobile basé sur des captures d'images Des capteurs optiques sont utilisés pour permettre la localisation des cibles et l'estimation
de la pose Ce système permet aussi l'interaction avec les objets virtuels, l'utilisateur pourrait déplacer les graphiques virtuels et interagir avec l'environnement virtuel
Les auteurs ont commencé par développer un viewer pour savoir comment les utilisateurs vont réagir avec le téléphone et pour mieux concevoir l'interface Le deuxième point important de l'application est le développement d'un traqueur efficace basé sur la technique
de l'analyse de la projection décalée (Projection Shift Analysis) L'algorithme de tracking permet de gérer aussi les occultations de marqueurs en utilisant la pose estimée précédemment
Trang 18L'interface utilisateur comporte aussi une barre à outils contenant des boutons pour charger, sélectionner, effacer les objets virtuels et sert aussi aux tâches de manipulation (déplacement et orientation des objets)
Des ombres sont utilisés pour améliorer l'immersion, le marqueur traqué étant surligné en vert et pendant l'interaction avec un objet particulier les autres objets sont mis en transparence pour mettre en évidence la sélection courante
Le système réalisé a été testé avec 8 utilisateurs qui ont montré une satisfaction quant à l'utilisation de ce système cependant des problèmes de tracking ont surgis notamment la précision dans l'estimation de la pose
2.2.6 Travaux de Schmalstieg et Wagner
La RA mobile fonctionne sur des dispositifs mobiles tels que les PC portables ou les téléphones portables [Schmalstieg & Wagner, 2008] ont développé une plateforme pour des applications de RA mobiles collaboratives Une librairie logicielle a été développée sous Windows CE et XP et disponible pour Symbian et Linux Tous les traitements sont réalisés sur l'équipement et donc l'application ne dépend pas d'autre infrastructure
La libraire contient des composants de conception permettant de personnaliser l'application selon ses besoins Les composants principaux de la librairie sont :
Le traqueur: un composant de tracking temps-réel
Le graphe de scène: un moteur de rendu 3D basé sur OpenGL et Direct 3D Mobile
Le serveur : permet la communication multiutilisateur pour la collaboration
Le logiciel développé a évolué sur plusieurs années pour accomplir les tâches requises pour les systèmes embarqués De la même manière, ce logiciel ressemble aux librairies développées sur des plateformes PC à savoir la modularité, l'abstraction matérielle, et réutilisation de code
Cependant, certaines contraintes liées aux systèmes embarqués existent telles que la taille
de la mémoire, les liens dynamiques et le calcul parallèle De plus la compatibilité du code entre différentes plateformes (PC, téléphone) n'est pas triviale
Trang 192.2.7 Travaux de Wagner et al
[Wagner et al., 2010] ont présenté trois techniques pour le suivi d'objets de formes libres en temps réel sur téléphones portables Les auteurs ont combinés plusieurs approches existantes dans la littérature pour implémenter un système de tracking temps réel en RA Les méthodes SIFT et Ferns ont été employées avec un traqueur basé sur la mise en correspondance de modèles En effet, la méthode SIFT est robuste mais elle est gourmande
en temps de calcul, par ailleurs, la classification de Ferns est rapide mais requiert beaucoup d'espace mémoire pour fonctionner Les auteurs proposent alors leur solution en combinant
le traqueur avec la méthode SIFT et l'approche Ferns (figure 2.3)
Dans les deux approches la détection de points d'intérêts était réalisée par un détecteur FAST (Features from Accelerated Segment Test) qui est beaucoup plus rapide que les détecteurs basés sur le calcul Laplacien/Gaussien
2.2.8 Travaux de Klein et Murray
[Klein & Murray, 2009] ont décrit une implémentation de la méthode SLAM (Simultaneous Localization And Mapping) sur un iPhone 3G Les auteurs ont démontré la validité de leur méthode malgré que les performances de leur système de tracking restent limitées par rapport à une implémentation sur PC Le système a permis l'augmentation de cartes en temps réel
Figure 2.3 - Système de reconnaissance et de tracking
Élimination des faux appariements
Image floue Classification
Élimination des faux appariements
Estimatio
n de la pose
Trang 202.2.9 Travaux de Takacs et al
[Takacs et al., 2008] ont construit un système de RA sur téléphone portable qui réalise la mise en correspondance des images référencées avec une base de données située sur un serveur et en utilisant des algorithmes de détection basés sur les descripteurs locaux
En dirigeant la caméra vers l'objet d'intérêt, le système de tracking fournit des informations
et des services sur sa localisation La méthode SURF a été appliquée sur des images issues de
la caméra du téléphone Le système est destiné aux touristes pour leur servir de guide lors
de leurs visites (figure 2.4)
2.2.10 Discussion
Les systèmes de RA pour téléphone portable sont en plein essor et diverses technologies ont été développées pour réaliser des applications portables et interactives Ce type de fonction est en progression et devrait rapidement servir à l'émergence de nouvelles formes d'interfaces et d'interactions entre l'environnement réel et des informations virtuelle
Ces systèmes présentent les avantages suivants:
Téléphone
Images de la
caméra
Détermination des points d’intérêts
Affichage du rendu
Points caractéristiques
Capteur de localisation
Serveur
Images
géo-étiquetées
Extraction des points d’intérêts
Appariements Des images
Calcul des descripteurs
Base de données
Figure 2.4 - Architecture du système
Trang 21Applications portables, pouvant être déployées sur des dispositifs tenus à la main
Les informations sur endroits spécifiques se superposent à la vue des prises vidéo au travers de la caméra intégrée au téléphone
Exploitation des données fournies par des capteurs supplémentaires tels que la boussole ou l'accéléromètre pour indiquer la direction et ainsi faciliter la navigation
Les inconvénients majeurs de ces systèmes portables sont:
Les traitements se font généralement sur un serveur ce qui augmente le temps du rendu graphique ajouté à cela le temps de communication ainsi que les éventuelles pannes qui pourraient surgir dans le réseau pourraient altérer la détection et engendrer un temps de latence considérable
L'exploitation des données GPS ne sont pas très fiables et présentent des incertitudes quant à la localisation et le tracking
Problèmes de compatibilité sur les systèmes d'exploitation embarqués (Symbian, Android, )
Performances amoindries sur les systèmes embarqués (calcul parallèle, taille de la mémoire, )
2.3 Applications commerciales développées
Un des usages les plus évidents de la RA consiste à mettre à profit les « points d'intérêts » des dispositifs GPS pour repérer plus facilement la boulangerie, le cinéma ou le restaurant le plus proche Plusieurs applications permettaient déjà d'exploiter ces informations en 2D, notamment AroundMe et Nomao L'arrivée de l'iPhone 3GS a poussé les développeurs à accéder au monde de la RA
La RA peut avoir de nombreux usages, des plus utiles aux plus ludiques, et s'est récemment démocratisée avec l'apparition de Smartphones évolués comme l'iPhone 3GS
Imaginons par exemple qu’on est dans une ville qu’on ne connait pas En regardant autour
de nous, nous voyons des rues inconnues vers lesquelles se trouvent peut-être un restaurant, un bar ou n'importe quel type de commerce ou d'établissement que nous recherchons Maintenant, imaginons que nous superposons à cette réalité des panneaux
Trang 22virtuels indiquant précisément l'emplacement de ces commerces, en passant, par exemple, par la caméra intégrée à notre téléphone portable
Les derniers Smartphones, comme l'iPhone 3GS ou les téléphones mobiles sous Android, disposent de technologies rendant possible de repérer un commerce ou un établissement en utilisant des panneaux virtuels indiquant précisément leurs emplacements Ces téléphones intelligents sont équipés d'une caméra, d'un GPS et d'une boussole, indispensable pour orienter correctement l'affichage
Nous allons présenter maintenant cette technologie ainsi qu'une sélection d'applications mobiles ayant recours à ce procédé
ci Un deuxième clic renvoie vers le navigateur web intégré qui affiche la page Wikipedia ou Qype (figure 2.5)
Figure 2.5 - Wikitude
Trang 23Inconvénients
AroundMe utilise les données de Google Celles-ci sont variables
AroundMe manque parfois de pertinence
La précision de la localisation dépend de la précision du GPS qui n’est évidemment pas parfaite (les commerces indiqués seront donc parfois décalés, ce qui est plutôt normal)
Avantage
Figure 2.6 - AroundMe
Trang 24Application gratuite
2.3.1.3Nomao
Nomao ressemble à AroundMe et propose des fonctionnalités plus avancées Nomao est une application gratuite issue d'un moteur de recherche proche de Google Maps, avec deux particularités : la possibilité de personnaliser les résultats en indiquant sa préférence pour certains endroits et l'intégration à Facebook En ce qui concerne l'application, elle propose une intégration de la RA semblable à celle de AroundMe
Inconvénients
Impossibilité d'accéder à des informations supplémentaires directement en touchant
la balise du point d'intérêt dans la vue RA
Seuls les 4 premiers résultats apparaissent immédiatement Pour visualiser les autres,
il faut consulter les autres pages en faisant coulisser l'écran vers la gauche ou vers la droite
Manque de précision de l'emplacement réel des points d'intérêts, la précision d'un GPS n'étant jamais complètement optimale
L'application fonctionne selon une interface plutôt intelligente Une fois les POI chargés, il est possible d'effectuer un panoramique pour les afficher, comme sur les autres applications
Trang 25de RA Mais une autre possibilité permet d'afficher une liste de ceux-ci, en inclinant simplement le téléphone vers le bas En cliquant sur un POI, une flèche dynamique indiquera alors sa direction et il n’y qu'à la suivre pour s’orienter
L’application fait usage d’un théodolite (instrument de géodésie complété d'un instrument d'optique, mesurant des angles dans les deux plans horizontal et vertical), elle permet de faire de la triangulation en utilisant l'iPHone 3GS et son GPS En pointant son mobile en montagne, Theodolite affiche immédiatement l'altitude, la position GPS, les différents angles, l'horizon, etc Tout cela se superpose par rapport au paysage pour un aperçu enrichi visuellement Une application bien utile non seulement en montagne mais aussi à la mer ou dans toute autre situation pour faire du repérage de terrain (figure 2.7)
Figure 2.7 – Bionic Eye
Trang 262.3.1.5iParking
Cette application permet à l'utilisateur de retrouver un emplacement précis En effet, il n'est pas toujours évident de retrouver sa voiture dans un parking de centre commercial en plein air iParking permettra de localiser un véhicule, tout simplement en plaçant un marqueur à l'endroit ó elle se trouve Le véhicule est retrouvé au moyen d'une vue en mode carte ou en mode RA (figure 2.8)
2.3.2 Applications scientifiques
2.3.2.1Panoramascope
Panoramascope une application pour iPhone 3G S particulièrement bien faite puisqu'elle superpose à la vue photographique des contours 3D du terrain issu des données de la NASA, ainsi que diverses informations issues de la base de données OpenStreetMap, un projet libre diffusé sous licence Creative Commons Des dizaines de calques peuvent ainsi être superposés, affichant le nom des villes et villages, les sommets de montagnes, les lieux touristiques, les lieux de cultes ou encore les bars, et ceci pour les 5 continents du globe (figure 2.9)
Figure 2.8 - iParking
Trang 27la ronde Un mode carte est également accessible en orientant l'iPhone vers le sol (figure 2.10)
Figure 2.9 - Panoramascope
Figure 2.10 - Peak.AR
Trang 28Inconvénients
L'application est plutôt bien pensée, mais assez minimaliste : en dehors des informations de base sur les sommets (distance, hauteur, coordonnées) il n’existe pas d’autres informations supplémentaires sur les environs ou des photos
Avantage
Application gratuite
2.3.2.3Pocket Universe Astronomy
L'application Pocket Universe Astronomy propose l'affichage des constellations en surimpression Comme beaucoup d'applications mettant à profit la boussole et la caméra de l'iPhone 3GS, Pocket Universe n'a pas été conçu, à la base, pour cette fonctionnalité : le logiciel propose des fonctionnalités de localisation et une vue « Camera » permettant tout simplement de pointer son iPhone vers le ciel pour y voir s'afficher les constellations en surimpression (figure 2.11)
Figure 2.11 - Pocket Universe Astronomy
Trang 292.4 Conclusion
On peut conclure que si certaines application de RA sont ludiques et attractives, il s'agit encore à l'heure actuelle de gadgets, parfois relativement utiles pour se repérer, ou affichant des informations intéressantes, mais qui ne vont pas changer complètement notre façon d'utiliser nos Smartphones
Les problèmes rencontrés lors des tests de systèmes commercialisés concernent essentiellement deux points : l'exhaustivité des informations proposées et leur précision Selon les applications, des disparités existent : certains établissements ne sont pas représentés, quand ce ne sont pas des catégories entières de points d'intérêt qui manquent Concernant la précision, on note des écarts parfois flagrants entre l'emplacement réel d'un POI et sa représentation
D'autres applications sont encore en cours de développement et ne sont pas finalisées mais qui représentent des usages qui peuvent s'avérer intéressants au quotidien comme: récupérer sa voiture sur un parking, trouver le bureau de poste du coin de manière plus visuelle qu'un simple plan, ou obtenir des informations sur les environs pour des randonneurs sont autant d'applications pratiques facilitées par de tels dispositifs
Figure 2.12 - Sun Seeker
Trang 30Chapitre III Contributions pour le
suivi d’objet naturel en temps
de reconnaissances d’objet de formes libres ont été développées Ces méthodes se basent sur l’extraction des points caractéristiques et le calcul de descripteurs invariants pour permettre une reconnaissance robuste et fiable de toute forme géométrique
3.2 Identification d’objet par la méthode SURF
Pour l’identification d’objet, nous avons utilisé une technique basée sur les descripteurs locaux invariants : la méthode SURF [Bay et al., 2008] SURF (Speeded Up Robust Features) est un algorithme robuste d’extraction de points d'intérêt qui calcule les descripteurs locaux invariants associés à ces points caractéristiques L’avantage majeur de cet algorithme est sa rapidité comparé à d’autres techniques similaires utilisant les descripteurs locaux invariants telles que la méthode SIFT (Scale-Invariant Feature Transform) [Juan & Gwun, 2009]
La méthode SURF est inspirée de l'algorithme SIFT qui est le précurseur dans le domaine d’extraction des points invariants Toutefois, l’algorithme SIFT présente l’inconvénient d’être très lent et donc, il n’est pas adapté aux applications temps-réel SURF et SIFT sont tous les deux des algorithmes robustes basés sur les descripteurs locaux invariants Le principe général de ces deux méthodes est le suivant:
1 Détecter les points d'intérêts
2 Définir une région d’intérêt autour de chaque point caractéristique
Trang 313 Calculer les descripteurs locaux à partir des régions normalisées
4 Mise en correspondance des descripteurs
SURF est basé sur le calcul de la matrice Hessienne et les coefficients d'ondelettes de Haar Les étapes de la méthode sont:
La première étape de l'algorithme SURF est le calcul d'intégrale de l'image pour accélérer les traitements Cette intégrale réalise la somme d'intensité d'une zone rectangulaire autour du pixel
Le détecteur est basé sur l’application de la matrice Hessienne suivante sur l’image:
H(x,σ)=Lxx(x,σ) Lxy(x,σ)
Le descripteur est créé en deux étapes:
1 On construit une région circulaire 6S (S est le facteur d’echelle pour lequel le point a été détecté), ensuite, on calcule les ondelettes de Haar selon les directions X et Y
2 La deuxième étape est de diviser en fenêtres carrées la zone autour du point d'intérêt Les fenêtres sont subdivisées en 4x4 Les ondelettes de Haar sont calculées selon X et
Y
La dernière étape de l’algorithme est l’appariement des points d’intérêts en calculant la distance euclidienne entre les descripteurs
L'algorithme SURF comporte plusieurs optimisations, la plus signifiante est celle relative au temps de calcul en utilisant l'intégrale de l'image Cette technique permet un calcul rapide des réponses des filtres utilisés sur toute l’image d’ó l’accélération des pré-traitements
Trang 32Une estimation expérimentale donnerait un rapport de 1/3 concernant le temps de calcul SURF/SIFT Cependant, SURF n'est pas très robuste face aux changements d'illumination et
du point de vue comparant à SIFT
En raison de sa rapidité, nous avons opté pour SURF pour la reconnaissance d’objets dans les séquences d’images La méthode SURF présentée précédemment permet l’extraction de points d’intérêt de l’image et la comparaison des descripteurs de ces points avec une image
de référence afin d’identifier l’objet cible Ce processus s’apprête bien à une utilisation plus générale pour l’identification d’objets dans une base de d’images comme le montre la figure 3.1
3.3 Amélioration du temps de calcul pour le suivi temps-réel
L’objectif principal de notre travail est de développer des algorithmes de reconnaissance d’objet et d'estimation pose en temps réel afin de respecter une contrainte primordiale des systèmes de RA En théorie, 25 FPS sont nécessaires pour un traitement temps réel donc, 40
ms sont allouées pour le traitement d'une image L’étape la plus exigeante en termes de temps de calcul dans le processus d'identification d'objet, est le calcul des descripteurs Une solution triviale pour diminuer le temps de calcul est l’utilisation des régions d’intérêt autour
de l’objet à identifier (figure 3.2) En effet, cette technique permet de diviser par 2 voire 3 le temps de calcul si la proportion entre la taille de l’objet et celle de l’image est assez faible Bien sûr, d’autres optimisations au niveau de l’algorithme sont aussi nécessaires pour réduire le temps de calcul, ainsi le traitement parallèle (multi-threading) contribuera d’une manière significative dans l’amélioration des cỏts de traitements
Figure 3.1 – Reconnaissance d’objet à partir d’une base d’images
Trang 33Le repère objet : un système de référence global défini par l’utilisateur
Le repère caméra : un système de coordonnées défini par le constructeur au centre optique de la caméra
Figure 3.3 – Principe de calibration de la caméra
Trang 34Le repère image : un système de référence lié aux coordonnées pixelliques des points 2D dans l’image
Nous allons maintenant détailler le fondement théorique de la procédure de calibration de
la caméra La caméra comporte un modèle de projection perspective composé d’une matrice intrinsèque et une matrice extrinsèque
Les paramètres intrinsèques (ou internes) sont les propriétés optiques et géométriques internes de la caméra Ces paramètres caractérisent la caméra et sont invariants aux mouvements et aux changements de conditions expérimentales D’autre part, les paramètres extrinsèques (ou externes) représentent la position et l’orientation du repère objet par rapport au repère caméra A partir de ces paramètres, on peut connaitre la localisation exacte de la caméra par rapport à la scène
La procédure de calibration consiste à utiliser une mire qui est généralement un damier contenant un ensemble de points caractéristiques représentant les points 3D Pour le processus de calibration de la caméra, nous avons utilisé la méthode de [Zhang, 1999] Dans cette méthode, la caméra observe un modèle d'objet planaire dans différentes orientations
On peut, soit déplacer l'objet, ou bien la caméra pour avoir différentes vues sur l’objet 3D Les paramètres intrinsèques et extrinsèques de la caméra sont résolus en utilisant une solution analytique, suivie d’une optimisation non linéaire basée sur le critère de maximum
de vraisemblance Les distorsions radiales et tangentielles de la lentille sont également modélisées Les résultats obtenus par cette technique sont intéressants comparés aux techniques classiques qui emploient plusieurs plans orthogonaux
On commence tout d’abord par définir les notations utilisées pour les développements mathématiques ultérieurs
Figure 3.4 – Repères utilisés pour la calibration de la caméra