Académique Documents
Professionnel Documents
Culture Documents
Intitulé
Membres du Jury :
Tel : +261331473342
hagamalala@yahoo.fr
skype : hagamalala
Expériences professionnelles
2013-2014 : Consultant
Poste : Consultant BICI /Proximity
/ BBDO Indian Ocean : asp .net, SQL Server, jQuery -
Equipe WebOps
ii
Pop3...
Formations - Etudes
Compétences Techniques
Connaissances linguistiques
Français TB TB TB B B
Anglais AB AB NS NS NS
iii
Loisirs
Montage Vidéo
Basket
iv
v
RESUME
ABSTRACT
Augmented reality for ubiquitous operator aims to enrich our perception about real
world with virtual objects. It allows the operator to have access to information in different
environments especially outdoors. Sometimes, the use of mobile devices is required. This
work is to study the different methods of pattern recognition and tracking technical using
mobile devices. Comparative studies of existing works were performed in order to propose a
methodology adapted to future needs.
vi
REMERCIEMENTS
Je tiens avant tout à remercier Dieu Tout puissant qui m’a donné la force et la
patience d’accomplir ce travail.
Mes vifs remerciements s’adressent également aux membres du jury et à tous ceux
qui ont contribué de près ou de loin à la réalisation du présent mémoire, notamment aux
enseignants du Département de Mathématiques et Informatique de l’Université
d’Antananarivo.
Enfin, j’adresse mes plus sincères remerciements à toute ma famille ainsi qu’à tous
mes proches et amis qui m’ont toujours soutenu et encouragé constamment au cours de
l’élaboration de ce mémoire de fin d’études.
vii
LISTE DES TABLEAUX
viii
LISTE DES FIGURES
Figure 1. Organigramme de l’ENI ...................................................................................................................... 2
Figure 2 : Casque d'Ivan Sutherland ............................................................................................................... 10
Figure 3 : Continuum réalité-virtualité de Paul Millgram et Fumio Kishino ..................................................... 10
Figure 4 : Intégration arbitraire ...................................................................................................................... 14
Figure 5 : Prise en compte des contraintes géométriques .............................................................................. 14
Figure 6 : Prise en compte des contraintes spatio-temporelles ...................................................................... 14
Figure 7 : Prise en compte des contraintes photométriques ........................................................................... 14
Figure 8 : Outil de vision : Casque HDM .......................................................................................................... 15
Figure 9 : Outil de vision - Google Glass ......................................................................................................... 15
Figure 10 : Gant pinch gloves.......................................................................................................................... 16
Figure 11 : Joystick utilisé dans le projet Vidente ........................................................................................... 16
Figure 12 : La plate-forme MARS .................................................................................................................... 19
Figure 13 : BARS ............................................................................................................................................. 20
Figure 14 : ARQuake ....................................................................................................................................... 20
Figure 15 : Tinmith ......................................................................................................................................... 20
Figure 16 : ARCHEOGUIDE .............................................................................................................................. 21
Figure 17 : Pompéi ......................................................................................................................................... 22
Figure 18 : Vidente ......................................................................................................................................... 22
Figure 19 : AR-PHONE ..................................................................................................................................... 23
Figure 20 : Wikitude Drive .............................................................................................................................. 24
Figure 21 : Around Me.................................................................................................................................... 25
Figure 22 : ionRoad ........................................................................................................................................ 25
Figure 23 : Google Glass ................................................................................................................................. 26
Figure 24 : Modèles de marqueurs utilisés par ARToolKit............................................................................... 28
Figure 25 : Schéma explicatif de l’algorithme de détection ............................................................................ 29
Figure 26 : Binarisation de l'image (Artoolkit) ................................................................................................ 30
Figure 27 : Recherche des régions connexes ................................................................................................... 30
Figure 28 : Détection des contours et extraction des arêtes et coins du marqueur (Artoolkit) ....................... 31
Figure 29 : Normalisation de l'image (Artoolkit) ............................................................................................. 31
Figure 30 : Schéma explicatif de l’algorithme de reconnaissance de pattern .................................................. 32
Figure 31 : Binarisation (cybercode) ............................................................................................................... 33
Figure 32 : Recherche des régions connexes (cybercode) ............................................................................... 33
Figure 33 : Recherche des coins (cybercode) .................................................................................................. 34
Figure 34 : Décodage du code du motif .......................................................................................................... 34
Figure 35 : Exemple d’application du filtre de convolution ............................................................................. 36
Figure 36 : Représentation de la fonction de Gauss ........................................................................................ 37
Figure 37 : Exemple d'application du filtre gaussien ....................................................................................... 38
Figure 38 : Exemple d'application du Laplacian of Gaussian (LoG) .................................................................. 38
Figure 39 : Reconnaissance utilisant les images de référence ......................................................................... 40
Figure 40 : Aperçu des différents points-clés d'une photo .............................................................................. 41
Figure 41 : Construction de la fonction Différence de Gaussiennes (DoG) ...................................................... 42
Figure 42 : Exemple d’application de la pyramide DoG à 3 octaves ............................................................... 43
Figure 43 : Recherche d'extrema dans D(x, y, σ) ............................................................................................. 43
Figure 44 : Transformation en histogramme, en vecteur de dimension 8 ....................................................... 44
Figure 45 : Construction d'un descripteur SIFT ............................................................................................... 45
Figure 46 : Détermination de l’orientation principale ..................................................................................... 47
Figure 47 : Extraction des composantes du descripteur .................................................................................. 48
ix
Figure 48 : Couches d'abstraction d'un système android ................................................................................ 55
Figure 49 : cathédrale de médecine de l’Université d’Antananarivo (image de référence) ............................. 57
Figure 50 : Résultat de la mise en correspondance des descripteurs .............................................................. 57
Figure 51 : Calcul de la sous-région en utilisant les images intégrales ............................................................ 68
x
LISTES DES FORMULES
xi
TABLE DES MATIERES
CURRICULUM VITAE ............................................................................................................ii
RESUME ..................................................................................................................................vi
ABSTRACT ..............................................................................................................................vi
REMERCIEMENTS ............................................................................................................... vii
LISTE DES TABLEAUX ......................................................................................................viii
LISTE DES FIGURES .............................................................................................................ix
LISTES DES FORMULES .......................................................................................................xi
TABLE DES MATIERES ........................................................................................................xii
I. PRESENTATION DE L’ECOLE NATIONALE D’INFORMATIQUE ........................... 1
I.1) Historique.......................................................................................................................... 1
I.2) Partenariat ......................................................................................................................... 3
I.3) Perspectives ...................................................................................................................... 4
I.4) Missions ............................................................................................................................ 4
I.5) Perspectives ...................................................................................................................... 6
II. INTRODUCTION ............................................................................................................ 7
III. DEFINITIONS.................................................................................................................. 9
III.1) Réalité Virtuelle (RV) .............................................................................................. 9
III.2) Réalité Augmentée (RA) ......................................................................................... 9
III.3) Informatique Ubiquitaire ....................................................................................... 11
III.4) Réalité Diminuée ................................................................................................... 11
IV. CONTEXTE ET OBJECTIFS ........................................................................................ 13
IV.1) Contexte................................................................................................................. 13
IV.2) Objectifs ................................................................................................................ 18
V. TRAVAUX DE RECHERCHE CONCERNANT LA REALITE AUGMENTEE
MOBILE A L’EXTERIEUR.................................................................................................... 19
V.1) MARS [Feiner et al., 1997] [Hollerer et al., 1999] ............................................... 19
V.2) ARCHEOGUIDE [Gleue et Dähne, 2001] ............................................................ 20
V.3) Vidente [Schall et al., 2008] .................................................................................. 22
V.4) AR-PDA[Fruend et al.,2001] ................................................................................ 23
V.5) AR-PHONE [Assad et al., 2003]........................................................................... 23
V.6) Applications pour Smartphones ............................................................................ 23
V.6.a) Around Me .............................................................................................. 24
V.6.b) iOnRoad .................................................................................................. 25
V.6.c) Google Glass ........................................................................................... 25
VI. METHODES DE RECONNAISSANCE DE FORMES ET DE SUIVI EN RA
EXTERIEUR ............................................................................................................................ 27
VI.1) Méthodes de reconnaissance avec marqueurs ....................................................... 27
VI.1.a) ARToolKit [Kato et al., 2000] [Kato et Billinghurst, 1999].................... 28
VI.1.b) CYBERCODE [Rekimoto et Ayatsuka, 2000]: ....................................... 33
VI.2) Méthodes de reconnaissance sans marqueurs........................................................ 34
V.2.a) Fondamentaux mathématiques utilisés en traitement d'images............... 35
VI.3) Méthodes de reconnaissance utilisant les primitives ............................................. 38
VII.1.a) Méthodes de reconnaissance utilisant les contours ................................. 39
VII.1.b) Méthodes de reconnaissance utilisant une base d’images de référence .. 40
VII.1.c) Méthodes utilisant les points d’intérêt .................................................... 40
VII.1.d) Méthodes de reconnaissance sans modèle............................................... 48
VI.4) SYNTHESES ........................................................................................................ 51
VII. REALISATION .......................................................................................................... 55
xii
VII.1) Présentation de l’application ................................................................... 55
VII.1.a) Android.................................................................................................... 55
VII.1.b) La librairie openCV(Open Source Computer Vision) ............................. 56
VII.2) Implémentation........................................................................................ 56
VII.3) Résultats et discussions ........................................................................... 57
VIII. CONCLUSION ET PERSPECTIVES ...................................................................... 59
GLOSSAIRE ............................................................................................................................ 61
BIBLIOGRAPHIE ................................................................................................................... 64
ANNEXES ............................................................................................................................... 68
I. Images intégrales ........................................................................................................ 68
xiii
I. PRESENTATION DE L’ECOLE NATIONALE
D’INFORMATIQUE
I.1) Historique
L’ENI a été créée par le décret N° 83 185 du 24 mai 1983, elle est le seul Etablissement
universitaire professionnalisé du pays ayant pour mission de former des Techniciens
Supérieurs, des Licenciés en informatique et des Ingénieurs informaticiens de haut niveau,
aptes à répondre aux besoins et exigences d’informatisation des entreprises, des sociétés et
des organismes implantés à Madagascar.
La filière de formation d’ingénieurs a été ouverte à l’Ecole en 1985. Une formation pour
l’obtention de la certification CCNA et/ou Network+, appelée « Cisco Networking Academy
à Madagascar », en 2002-2003, a été créée grâce au partenariat avec Cisco System et l’Ecole
Supérieure Polytechnique d’Antananarivo (ESPA). Cette formation n’existe plus
actuellement.
Une formation doctorale a été ouverte depuis l’année universitaire 2003-2004 en
partenariat avec l’université de Toulouse France.
Pour cette année universitaire, les ressources humaines actuelles de l’école sont :
2
I.2) Partenariat
Les stages pratiqués chaque année par ses étudiants mettent l’Ecole en relation
permanente avec plus de 300 entreprises, sociétés et organismes publics et privés nationaux et
internationaux.
Les diplômés de l’ENI sont recrutés non seulement par des entreprises et organismes
nationaux, mais ils sont aussi embauchés dans des organismes de coopération internationale
tels que l’USAID, la Délégation de l’Union Européenne, la Banque Africaine de
Développement (BAD), la Mission Résidente de la Banque Mondiale, la Commission de
l’Océan Indien (COI), ...
1
Fond d’Aide et de Coopération
3
Une dotation en logiciels, microordinateurs, équipements de laboratoire de
maintenance et de matériels didactiques ;
La réactualisation des programmes de formation assortie du renouvellement du fond
de la bibliothèque ;
L’appui à la formation des formateurs ;
L’affectation à l’Ecole d’Assistants techniques français.
Et depuis le mois de mai 2000, l’ENI fait partie des membres de bureau de la Conférence
Internationale des Ecoles de formations d’Ingénieurs et Techniciens d’Expression Française
(CITEF).
I.3) Perspectives
Restructuration du système pédagogique de l’Ecole selon le schéma LMD (Licence
Master Doctorat),
Mise en place à l’Ecole d’un Département de Formation de 3ème cycle et d’études
doctorales en Informatique,
Création à l’Ecole d’une Unité de Production Multimédia, d’un club de logiciels libre
Unix.
I.4) Missions
L’ENI, ayant pour mission de former des Licenciés et des Ingénieurs directement
opérationnels, oblige l’Ecole à entretenir des relations de collaboration étroites et permanentes
avec les entreprises et le monde professionnel à Madagascar.
4
partenariat avec les sociétés dans les divers bassins d’emploi en Informatique, elle offre sur le
marché de l’emploi des cadres de bon niveau, à jour et directement opérationnels.
L’Ecole doit donc prendre en considération dans les programmes de formation les besoins
évolutifs des entreprises et des autres utilisateurs effectifs et potentiels, de la technologie
informatique et suivre les progrès technologiques et méthodologiques en Informatique
(recherche appliquée, veille technologique, technologies Réseau, Multimédia, Internet,…).
Ces stages pratiques assurent à l’Ecole un taux moyen d’embauche de 97%, six mois après
la sortie de chaque promotion. Le Tableau 1 illustre l’évolution des effectifs des étudiants de
l’ENI.
5
I.5) Perspectives
Informatique de gestion, des systèmes, des réseaux
Maintenance des systèmes informatiques
Conception, mise en œuvre, maintenance et administration de réseaux
Modélisation environnementale et Système d’Information Géographique
6
II. INTRODUCTION
La Réalité Augmentée (RA) peut être définie comme une technologie qui permet
l’itération entre réel et virtuel.
Les premiers systèmes ont eu un grand succès dans les environnements intérieurs
restreints (indoor) dont la variation de luminosité, le changement d’échelle et l’occultation
pouvaient être maîtrisés. Pourtant, la demande pousse les systèmes RA à se pencher
maintenant sur des environnements à grande échelle en extérieur (outdoor), non contrôlables
et non préparés. Ce qui ne facilite pas la mise en œuvre, car plusieurs facteurs doivent être
pris en compte.
Des informations vont donc être ajoutées à notre perception du réel pour créer une
nouvelle réalité « augmentée », entre le monde réel et le monde virtuel, dans le but de nous
divertir, de nous aider dans le quotidien et dans bien d’autres jeux et applications en « réalité
augmentée ».
Cette technologie s’intègre dans notre environnement au travers de supports visuels tels
que des lunettes comme les GLASS de Google, Tablettes, Smartphones et autres pour
superposer des images de synthèses à notre perception de la réalité en temps réel.
7
On peut utiliser la RA sur Android, Iphone, ou tablettes, mais également sur d’autres
supports numériques. Les entreprises et les marques l’utilisent désormais pour communiquer
auprès de leur public, car c’est devenu un moyen divertissant et ludique de se faire connaître.
La RA possède de nombreux domaines variés d’application tels que les jeux vidéo qui
constituent le support idéal pour l’expérimentation de la réalité virtuelle, ou encore pour le
marketing d’une entreprise dans les moyens de communication originaux et percutants,
notamment afin d’exploiter chacun des filons qui pourrait permettre d’améliorer leur impact
auprès du public, ou pour valoriser les sociétés qui ont parfois trouvé des moyens originaux
de s’en servir…
Afin de mieux cerner ce thème, nous allons donner au préalable quelques définitions sur
ce qu’est un système RA, et sur les termes associés dans le chapitre II. Puis nous définirons le
contexte et l’objectif du sujet dans le chapitre III. Par la suite, nous allons établir un état de
l’art sur les méthodes de reconnaissance de formes en RA dans le chapitre IV. Et le dernier
chapitre sera consacré à une synthèse de ces méthodes afin que nous puissions en proposer
une qui nous semble la plus adaptée pour la reconnaissance de formes en milieu extérieur
pour les dispositifs mobiles.
8
III. DEFINITIONS
Dans le traité de la Réalité Virtuelle, seconde édition [Fuchs, 2003], la réalité virtuelle
est décrite comme un domaine scientifique et technique exploitant l’informatique et des
interfaces comportementales en vue de simuler dans un monde virtuel le comportement
d’entités 3D, qui sont en interaction en temps réel entre elles et avec un ou des utilisateurs en
immersion pseudo naturelle par l’intermédiaire de canaux sensorimoteurs.
La finalité de la réalité virtuelle est de permettre à une personne (ou à plusieurs) une
activité sensorimotrice dans un monde artificiel, qui est, soit imaginaire, soit symbolique, soit
une simulation de certains aspects du monde réel [Fuchs, 1996]
Vers 1968, Ivan Sutherland était le pionnier dans le système de Réalité Augmentée en
inventant les casques de réalité virtuelle semi-transparents « see-through system ». Ce
système est basé sur un casque suivi par un capteur de mouvement et permet à l’utilisateur de
naviguer dans le monde réel avec l’ajout d’éléments virtuels dans la visière du casque. Ce
nouveau concept a permis de remédier à l'immersion complète de son utilisateur dans la
réalité virtuelle dans la reproduction réaliste du monde réel. La figure 1 présente le casque
d’Ivan Sutherland.
9
Figure 2 : Casque d'Ivan Sutherland
Dans un passé récent, le terme “Réalité Augmentée” n’existait même pas encore, ce
sont Tom Caudell et David Mizell qui l'ont proposé pour la première fois en 1992 [Caudell et
Mizell, 1992] pour nommer la superposition de matériel informatisé sur le monde réel.
En 1994, cette définition a été reprise par Paul Milgram et Fumio Kishino [Milgram et
Kishino, 2002] qui ont inclus le concept de Réalité mixte (Mixed Reality) offrant un
continuum (un ensemble d’éléments tels que l’on peut passer de l’un à l’autre de façon
continue) qui relie le monde réel et la réalité virtuelle en passant par la Réalité Augmentée.
La figure 2 suivante illustre le concept de la Réalité mixte qui est une combinaison de la RA
et de la Virtualité augmentée.
Les extrémités correspondent à la réalité et à la virtualité pure. Entre ces deux extrémités,
Paul Miligram et Fumio Kishino ont place deux grandes approches qui sont la virtualité
augmentée et la Réalité Augmentée :
10
La Réalité Augmentée : incrustation du virtuel dans un environnement réel dans le
but d’enrichir l’interaction de l’utilisateur avec le monde physique grâce à des données
et des services offerts par le monde numérique (l’ordinateur).
Parmi ces définitions, la plus courante est celle de Ronald Azuma. Selon ce dernier, le
système RA doit respecter trois règles fondamentales [Azuma, 1997] :
Par cette définition, l'auteur exclut les simples collages 2D qui ne respectent pas la cohérence
3D, ainsi que la composition en postproduction qui n'est pas en temps réel.
L’utilisateur peut sélectionner la zone où l’objet qu’il veut faire disparaître. Le logiciel
11
va faire disparaître celui-ci et recréer la zone supprimée en interprétant l’environnement
alentour pour superposer une information cohérente avec le cadre. Une telle technique permet
ainsi d’obtenir de la « Réalité Diminuée »
12
IV. CONTEXTE ET OBJECTIFS
IV.1) Contexte
Toutes ces définitions que nous venons de présenter mettent l’accent sur le principe
que la Réalité Augmentée offre la capacité d'ajouter des entités virtuelles à notre perception
du monde réel. Incruster des objets virtuels en cohérence avec les objets dans la scène réelle
doit être examiné par plusieurs facteurs qui constituent une problématique dans le domaine de
recherche en RA.
En parlant de cohérence pour un système 3D, trois aspects doivent être respectés pour pouvoir
incruster des éléments virtuels sur le réel :
• Cohérence géométrique :
Cela porte sur l’alignement géométrique des caméras. C’est-à-dire que les caméras
virtuelles et réelles doivent être parfaitement alignées de sorte que les objets virtuels
semblent avoir été filmés avec la caméra réelle.
• Cohérence photométrique :
• Cohérence spatio-temporelle :
Cet aspect concerne les occultations, le déplacement entre les objets de synthèse et les
objets réels.
13
Figure 4 : Intégration arbitraire Figure 5 : Prise en compte des contraintes
géométriques
Figure 6 : Prise en compte des contraintes spatio- Figure 7 : Prise en compte des contraintes photométriques
temporelles
Selon [Zendjebil et al., 2010], la mise en œuvre d’un système de Réalité Augmentée
efficace nécessite l’implémentation de trois aspects complémentaires : la localisation, la
visualisation et l’interaction.
Localisation
14
peuvent se produire entre les éléments de nature différente. La localisation consiste aussi à
initialiser le suivi des caméras lors de son déplacement dans l’environnement.
Visualisation
La figure 7 montre les casques HDM, et la figure 8 présente l’outil de vision Google
Glass qu’on utilise pour la visualisation.
Figure 8 : Outil de vision : Casque HDM Figure 9 : Outil de vision - Google Glass
15
Interactions
La problématique pour l’interaction est donc de trouver des techniques adaptées à l'outil
de visualisation pour pouvoir manipuler et naviguer avec les éléments virtuels 3D en
considérant la mobilité.
La figure 9 présente une paire de gants (pinch gloves). Tandis que la figure 10 montre le
joystick isométrique utilisé pour la reconnaissance des gestes.
Figure 10 : Gant pinch gloves Figure 11 : Joystick utilisé dans le projet Vidente
Les problèmes de la RA
Il convient cependant de noter que dans de nombreux cas, la RA peut poser des
problèmes quant à la sécurité et à la vie privée des personnes. Certaines applications de la RA
rajoutent par exemple des informations et des éléments visuels sur notre vision, ces nouveaux
éléments peuvent parfois gêner notre vision et entraîner des accidents.
Lorsque des dispositifs nous aideront à prendre une décision, et que celle-ci s’avèrera être
mauvaise, qui devra assumer la responsabilité de l’erreur ?
16
Quand des applications ou des lunettes seront capables d’identifier des personnes par leur
aspect physique et de nous donner des informations sur elles, quand sera-t-il de la vie privée
de ces personnes ?
A force de multiplier les assistants personnels et les dispositifs pour nous épauler dans
notre quotidien, ne finirons nous pas par ne plus rien savoir faire de nous-mêmes et du monde
réel ? Car la RA ne peut pas remplacer notre vision du réel.
17
IV.2) Objectifs
Le défi majeur d'un système RA est d’aligner correctement les données virtuelles en
cohérence avec les données sur la vue de la scène réelle.
En premier lieu, nous allons faire un petit tour sur les travaux de recherche portant sur les
systèmes de Réalité Augmentée mobile à l'extérieur. Dans ce chapitre, nous verrons quelques
projets en extérieur, ainsi que les principes et les techniques déployés. Par la suite, nous allons
faire un état de l’art sur les méthodes de reconnaissance de formes en RA. Et le dernier
chapitre sera consacré à une synthèse des méthodes. Ce qui nous mènera à en proposer la
mieux adaptée pour la reconnaissance de formes en milieu extérieur pour les dispositifs
mobiles.
L’opérateur ubiquitaire a en effet besoin des dispositifs mobiles qui rendent l'accès à
l'information facile pour tout le monde, n'importe où et n'importe quand.
18
V. TRAVAUX DE RECHERCHE CONCERNANT LA
REALITE AUGMENTEE MOBILE A L’EXTERIEUR
Dans ce chapitre nous allons procéder à un survol des travaux de recherche en RA mobile
tout en faisant un petit historique de son évolution.
L’un des premiers projets sur la Réalité Augmentée en extérieur est appliqué à la
navigation. Ce projet a été lancé en 1996 par le laboratoire de l’Université de Columbia
baptisé sous le nom de MARS ou “Mobile Augmented Reality System”. La visualisation s’est
effectuée à travers un casque semi-transparent (see-through). Le système est équipé d’un sac à
dos contenant un ordinateur portable comme unité de traitement, et la localisation est assurée
par une antenne GPS couplée à un correcteur différentiel pour avoir plus de précision.
L’orientation du point de vue est déterminée grâce à un magnétomètre inertiel. Enfin,
l’interaction est maintenue grâce à un stylet sur une tablette PC.
19
D’autres travaux similaires au projet MARS sont apparus comme BARS (Battelfield
Augmented Reality System) [Julier et al., 2000] pour une application militaire,
Tinmith[Piekarski et Thomas, 2001] pour la visualisation des données géo-localisées en
relation avec la viticulture , ARQuake [Piekarski et Thomas, 2002] qui est un jeu de RA
extérieur.
Les figures 12, 13 et 14 présentent des expérimentations utilisant les outils de visualisation
s’inspirant de BARS.
Figure 15 : Tinmith
20
anciens bâtiments, leurs histoires et leurs architectures. Le système est équipé d’un casque
semi-transparent pour la visualisation, d’un couple GPS et d’un compas électronique pour la
localisation. L’ensemble est complété par une caméra pour une localisation basée vision. Les
unités de traitement communiquent avec des serveurs de bases de données distants via
WLAN. En fonction de la position et de l’orientation du visiteur sur le site, des images sont
extraites des bases de données et augmentées via le casque.
Figure 16 : ARCHEOGUIDE
21
Figure 17 : Pompéi
Vidente est un système dédié à l’assistance des agents de travaux publics dans leur
tâche de maintenance, de planification et d’arpentage des infrastructures sous-terraines.
Ce système est équipé d'un dispositif de visualisation et d’interaction spatiale qui peut
se tenir à la main. Il est basé sur l’utilisation des Systèmes d’Information Géographique (SIG)
dans la gestion des infrastructures. Le recalage se base uniquement sur un positionnement
primaire par GPS, et l’orientation est fournie par une centrale inertielle.
Figure 18 : Vidente
22
V.4) AR-PDA[Fruend et al.,2001]
En 2001, Fruend et al. ont franchi l'utilisation des outils encombrants avec les gros
sacs à dos en introduisant le concept de AR-PDA, une augmentation simple de l’image
virtuelle qui est stockée sur des serveurs de bases de données distants avec les images prises
par la caméra du PDA.
Figure 19 : AR-PHONE
AR phone est basé sur des marqueurs visibles placés dans l’environnement. Après
reconnaissance des marqueurs, les images correspondantes récupérées sur des serveurs
distants en utilisant l'un des points d'accès Bluetooth présents dans l'environnement sont
augmentées.
23
Salzbourg en Autriche, application nommée Wikitude Drive. C’est un système de navigation
AR pour plateforme Android basé sur NyARToolkit. L’objectif de l’étude était ici de prouver
qu’il était possible de combiner la navigation en temps réel et la Réalité Augmentée mobile.
L’application a été ensuite développée pour iPhone.
V.6.a) Around Me
C’est une application qui permet de trouver tout et n'importe quoi n'importe où :
Restaurants, hôtels, shopping, banques… Basée sur la géolocalisation, l'application indique ce
qu'on cherche à proximité. Une telle application peut être valorisée afin orienté les touristes
dans une localité.
24
Figure 21 : Around Me
V.6.b) iOnRoad
Figure 22 : ionRoad
Les applications Google Glass ont été lancées en 2012 par Sergey Brin co-fondateur
de Google, superviseur des travaux du laboratoire Google X Lab. La commercialisation est
25
prévue pour l’année 2014, mais des centaines d’unités sont déjà testées à travers le monde par
des testeurs nommés Google Glass Explorers.
L’interaction avec ces fonctionnalités est effectuée soit par la voix grâce à la
reconnaissance vocale, soit en inclinant la tête ou en utilisant le trackpad ou zone tactile situé
sur une des branches des lunettes.
Les Google Glass apportent une autre dimension à la RA. Les lunettes sont nettement
moins contraignantes qu'un Smartphone ou qu'une tablette en laissant les mains libres
Dans le chapitre suivant, nous allons focaliser le travail sur la reconnaissance des
formes utilisées en RA mobile à l’extérieur.
26
VI. METHODES DE RECONNAISSANCE DE FORMES ET
DE SUIVI EN RA EXTERIEUR
En général, les méthodes de reconnaissance de formes peuvent être regroupées en
deux grandes catégories. La première catégorie est la méthode avec connaissance, c'est-à-dire
que la forme est reconnue en extrayant des indices visuels de l'image de la scène réelle pour
déterminer des mises en correspondance des points 2D avec des points 3D du modèle de
l’objet. Et la seconde catégorie, regroupe les méthodes sans connaissance c’est-à-dire
qu’aucun prétraitement, aucun indice et aucune connaissance des éléments de l'environnement
ne sont connus au préalable, mais c'est le système qui essaie de construire de façon
incrémentale une carte 3D avec les données qu’il perçoit.
27
VI.1.a) ARToolKit [Kato et al., 2000] [Kato et Billinghurst, 1999]
ARToolKit est une librairie permettant de créer ses propres applications de Réalité
Augmentée. C’est un système de cibles carrées comportant une bordure noire et un motif
interne qui contient un code permettant de l’identifier comme le présente la figure 23 :
Dans cette bibliothèque, les deux algorithmes les plus utilisés sont l’algorithme de détection
et l’algorithme de reconnaissance de formes (ou patterns).
- Algorithme de détection
L’algorithme de détection d’ARToolKit effectue une suite d’opérations sur chaque image
du flux vidéo afin, d’une part, de repérer la présence d’un marqueur, et d’autre part, de
l’identifier parmi les différents marqueurs chargés dans l’application, à savoir:
L’algorithme de détection d’ARToolkit effectue une suite d’opérations sur chaque image
du flux vidéo afin de repérer la présence d’un marqueur d’une part, puis de l’identifier parmi
les différents marqueurs chargés dans l’application.
Le processus pour extraire et identifier le code est présenté sur les figures 25, 26, 27, 28
qui sont respectivement la binarisation de l’image, la recherche des régions connexes, la
détection des contours d’extraction des arêtes, et la normalisation de l’image.
29
i. Binarisation de l'image
Ensuite, on recherche dans l'image les composantes connexes, mais les quadrilatères sont
retenus.
30
iii. Recensement des coins et des arêtes du marqueur
Une détection des contours est alors effectuée utilisant un Canny Edge Detector, les arêtes
et les coins sont extraits de l’image et un cube virtuel est recalé sur la cible. Cela permet de
calculer l'orientation du marqueur par rapport à la caméra en utilisant la position de chacun de
ses sommets.
Figure 28 : Détection des contours et extraction des arêtes et coins du marqueur (Artoolkit)
iv. Normalisation
31
v. Identification du code
Composants
connexes
Détection de
contours
Détection des
coins
32
VI.1.b) CYBERCODE [Rekimoto et Ayatsuka, 2000]:
La binarisation par seuillage consiste à comparer les niveaux de gris d'une image avec un
seuil précalculé pour décider à laquelle des deux classes appartient ce point.
ii. Les régions connexes sont sélectionnées pour trouver la barre-guide du motif.
iii. A partir de la localisation de la barre, les quatre coins du code sont retrouvés.
En utilisant ces quatre coins, le système estime les paramètres dûs aux
distorsions causées par la caméra ou l’inclinaison de la cible.
33
La figure 32 présente l’indentification des coins.
iv. Décodage du code du motif après avoir vérifié les erreurs sur les bits pour
déterminer un CyberCode correct.
34
Il est à rappeler que les images capturées avec une caméra sont des images
numériques. Chaque image numérique est constituée d’un nombre donné de lignes et chaque
ligne comporte un nombre de points donnés et l’ensemble constitue une matrice. Ces points
sont dénommés pixels. Chaque « case » de cette matrice contient des nombres caractéristiques
de la couleur attribuée au pixel. On peut donc identifier chaque pixel par ses coordonnées x et
y et lui affecter une valeur liée à sa luminosité.
Une image numérique est la représentation discrète de la fonction continue f(x,y). Elle
peut donc être représentée par un tableau à 2 dimensions (c’est à dire une matrice)
( , ) ⋯ ( , − )
( , ) = ⋮ ⋱ ⋮
( − , ) ⋯ ( − , − )
Afin de mieux assimiler la suite de ce chapitre, un court rappel des principes utilisés
est nécessaire. Nous allons donc présenter quelques filtres les plus utilisés en traitement
d'images.
i. Le filtre de convolution
La plupart des traitements d'images sont basés sur les produits de convolutions. Une
convolution est un traitement d'une matrice par une autre appelée matrice de convolution ou
«noyau» (kernel).Un produit de convolution est un opérateur mathématique qu'on utilise pour
multiplier des matrices entre elles. La matrice de convolution utilise les pixels voisins pour
modifier la couleur d'un pixel. La façon dont un pixel est modifié, est définie par une matrice
I×N où I est la matrice image et N, le noyau avec une entrée pour chaque pixel voisin.
35
La figure 34 présente un exemple d’application du filtre de convolution. À gauche se
trouve la matrice de l'image: chaque pixel est indiqué par sa valeur. Le pixel initial est
encadré de rouge. La zone d'action du noyau est encadrée de vert. Au centre, se trouve le
noyau et, à droite, le résultat de la convolution.
La principale application des produits de convolution est la création des filtres "passe
haut" et "passe bas".
Un filtre "passe haut" favorise les détails et améliore le contraste. Par ailleurs, un filtre
"passe haut" est caractérisé par un noyau comportant des valeurs négatives autour du pixel
central.
A l’inverse du filtre "passe haut", le résultat du filtre "passe bas" est un adoucissement
des détails, ainsi qu’une réduction du bruit granuleux.
Le filtre Laplacien est un filtre de convolution particulier utilisé pour mettre en valeur les
détails qui ont une variation rapide de luminosité. Le Laplacien est donc idéal pour rendre
visible les contours des objets, il en résulte son utilisation dans la reconnaissance de formes.
36
Formule 2 : Laplacien
v. Le filtre Gradient
C'est un filtre passe-haut. Un gradient permet de visualiser les variations d'un phénomène.
Ainsi un dégradé de couleur peut s'appeler un gradient de couleur.
Le gradient est une grandeur vectorielle qui indique de quelle façon une grandeur
physique varie dans l'espace. Le gradient est caractérisé par son amplitude et sa direction.
Le filtre Gaussien est un filtre isotrope (les propriétés de son noyau de convolution
sont identiques dans toutes les directions) spécial avec des propriétés mathématiques précises.
C’est un filtre passe-bas où tous les éléments du filtre sont pondérés selon une distribution
gaussienne (distribution normale). Selon la dimension du filtre, la convolution de ce filtre
avec une image donne une image plus ou moins lissée (une petite dimension de filtre donne
une image peu lissée).
En général un filtre Gaussien avec un sigma < 1 est utilisé pour réduire le bruit, (si
sigma > 1, on peut faire un "masque flou"). Il faut noter que plus le sigma est grand, plus la
cloche gaussienne est large, plus le flou appliqué à l'image sera marqué.
La figure 36 montre les résultats de l’application du filtre gaussien sur une image en
variant sigma.
37
Figure 37 : Exemple d'application du filtre gaussien
Il est possible de combiner les propriétés de réduction de bruit des filtres Gaussiens avec
d'autres filtres qui au contraire génèrent du bruit, par exemple avec les filtres Laplaciens on
obtient LoG(Laplacian of Gaussian) . On peut aussi par exemple faire le choix d'appliquer
d'abord un filtre Gaussien pour réduire le bruit avant d'appliquer un filtre Laplacien pour
détecter les points autour desquels les variations de luminosité sont importantes.
38
cela, on utilise la segmentation qui consiste à séparer toutes les régions homogènes, ou la
binarisation permettant l'extraction des objets de leur fond d’une manière très rapide que
l'application des opérateurs différentiels tels que le Gradient, le Laplacien, etc. La binarisation
est une opération qui consiste à produire deux classes de pixels, généralement, noirs et blancs.
Cette technique permet de retrouver des images ayant des caractéristiques en communs en
comparant l'image capturée avec les modèles contenus dans une base de données.
• La première, l’objet est connu en étudiant toutes les positions possibles de celui-ci
jusqu’à trouver celle qui le rapproche le mieux du modèle connu.
Pour les modèles déformables, déformation rigide ou non, en plus de la corrélation, les
déformations possibles du modèle ou ses variations d’aspects sont testées. Cela est très
coûteux en termes de calculs. Toutefois, en connaissant a priori un modèle statistique des
déformations de l’objet-cible, et en procédant itérativement de façon à trouver
progressivement les bons paramètres de déformations, il est possible de détecter des objets
déformables
Les contours ou segments de droite ont l’avantage d’être très efficaces face aux
changements de luminosité et résistantes aux occultations partielles. Parmi les approches
utilisant les contours dans la littérature, on peut citer les approches de [Gennery, 1992] et
[Lowe, 1992] où les contours ou segments sont extraits, et une phase d’appariement est alors
39
effectuée avec les contours ou segments projetés du modèle 3D. Mais la plupart des méthodes
mettent en œuvre une recherche locale des contours de l'image depuis des points de contrôle
répartis sur les contours d’un modèle 3d de l’objet projeté dans l’image. On peut citer les
travaux de [Harris et Stennet, 1990] dans son système appelé RAPiD (Real Time Attitude and
Position Determination) qui utilise un nombre limité de points de contours.
Au lieu d’utiliser des modèles 3D, [Stricker et Kettenbach, 2001] utilisent une base
d’images de référence. L'image capturée est comparée à toutes les images de référence. Pour
chaque comparaison, un coefficient de corrélation est alors calculé. L’image de référence qui
a le meilleur score, sera retenue pour évaluer la transformation 2D qui existe entre elle et
l’image courante de la vidéo.
40
effectuée, c’est-à-dire la mise en correspondance un à un des points d’intérêts de chaque
image. Pour cela il est impératif d’utiliser une mesure de similarité entre les primitives.
Développé par David Lowe [Lowe, 1999] et amélioré en 2004 [Lowe, 2004], c'est un
algorithme de vision assistée par ordinateur permettant de détecter et de décrire des zones
d'intérêts dans une image. Cet algorithme permet en RA la reconnaissance d'objets et le suivi
vidéo ou tracking. Cela consiste à rechercher des points caractéristiques (appelés « features »)
sur une image qui seront décrits chacun par des coordonnées (x et y), une orientation, une
échelle, ainsi que 128 descripteurs. L'idée générale de SIFT est donc de trouver des points-
clés qui sont invariants pour différentes transformations : rotation, échelle, illumination et
changements mineurs du point de vue.
La première étape consiste à extraire les points clés candidats dans l'espace échelle. Ce
sont les minimums et maximums (extrema) locaux dans l’espace-échelle. L'espace-échelle [T.
41
Lindeberg, 1994] de l'image est une représentation de celle-ci pour différentes résolutions et
échelles.
Dans cette formule, les images L(x, y, σ) sont le résultat d'une convolution de l'image I(x, y)
traitée par un noyau gaussien. Ce filtre a pour effet de lisser l'image et d'atténuer les contours :
Une pyramide de gaussienne est utilisée pour la détection de points d'intérêt pour
différentes échelles. La base de la pyramide est en général l'image originale. Un niveau donné
(octave) est obtenu à partir du précédent en divisant la résolution de l'image par 2, ce qui
revient à doubler le facteur d'échelle σ.
Pour chaque octave de l'espace échelle, l'image initiale est successivement convoluée
par une gaussienne pour produire les différentes images à échelle. Ces images sont montrées à
42
gauche.
uche. La différence entre image à échelle successive est calculée pour produire
pro la DoG
correspondante comme montré à droite. Après chaque octave, l'image gaussienne est sous-
sous
échantillonnée
née d'un facteur 2, et le processus recommence.
y σ). Chaque
Les points d'intérêt retenus correspondent aux extrema locaux de D(x, y,
point est comparé avec ses 8 voisins dans son propre niveau et avec 9 voisins des échelles
supérieures et inférieures comme l’illustre la figure 42.. On a besoin d'un total de 26
comparaisons. Si la valeur du pixel est supérieure ou inférieure aux valeurs des pixels testés,
on retient le point.
43
Pour la propriété d'invariance par rotation, Lowe a proposé de donner à chaque point-
clé une ou différentes orientations déterminées localement sur l'image à partir de la direction
des gradients dans un voisinage autour du point.
La figure 44 présente une construction d’un descripteur SIFT à partir des gradients
d’image.
44
Figure 45 : Construction d'un descripteur SIFT
Pour la reconnaissance de formes, un objet est identifié dans l’image en effectuant une
comparaison de ses descripteurs à ceux des images de référence disponibles dans la base de
données. Ainsi, deux images similaires ont fortement la chance d'avoir les mêmes descripteurs
SIFT.
Dans le projet MARTS (Mobile Augmented Reality Touring System) qui est une
conception d’un Système Mobile de Réalité Augmentée dédié au Tourisme [Nehla et al.,
2011], pour une reconnaissance de formes spécifiques (façade d’un bâtiment, ), on a utilisé les
descripteurs SIFT combinés avec des techniques basées capteurs.
Différents autres projets basés sur SIFT ont été menés et appliqués sur différentes
domaines comme les travaux de [Hare et Lewis, 2005], de [Zhang et Kosecka, 2006], et de
[Wendt et al., 2008]
Inspiré par SIFT, le principal avantage de cette technique est que l’extraction des points
d’intérêts se fait plus rapidement, notamment grâce à l’utilisation d’images intégrales (voir
Annexe). Les points d’intérêts ne sont pas extraits exactement de la même manière que SIFT,
et ne sont pas non plus caractérisés de la même manière.
45
Le principe du calcul des descripteurs de la technique SURF est comparable à celui de
SIFT. Après le calcul des points d'intérêts, on assigne sur chaque point une orientation
principale qui servira de référence pour le calcul d'un descripteur.
( , ) ( , )
( , ) =
( , ) ( , )
Formule 6 : Matrice Hessienne
Les dérivées des images sont calculées par la convolution de l’image avec un noyau
spécifique. Pour calculer les dérivées partielles secondes de l’image, le détecteur SURF utilise
la seconde dérivée d’un noyau Gaussien, l’image filtrée est exprimée par la formule
suivante :
( , ; ) = ( , ). ( , ; )
Formule 7 : Seconde dérivée d’un noyau Gaussien
La version multi-échelle de la matrice Hessienne est alors donnée par la formule suivante:
( , , ) ( , , )
( , , ) =
( , , ) ( , , )
Comme nous l'avons mentionné, la détection des points SURF est basée sur la
construction d’images intégrales [Viola et Jones, 2001], Ce qui permet de gagner un
46
agrandissement en temps de calcul. Les zones de forts changements d’intensité des pixels sont
recherchées dans l’image. La matrice Hessienne ( , , !), basée sur le calcul des dérivées
partielles d’ordre deux, est utilisée pour ce faire. Si le déterminant de la matrice Hessienne est
positif, alors les valeurs propres de la matrice sont toutes les deux positives ou négatives, ce
qui signifie qu’un extremum est présent. Les points d’intérêts seront donc localisés là où le
déterminant de la matrice Hessienne est maximal.
Le calcul des descripteurs se fait grâce à des ondelettes de Haar. Elles permettent
d'estimer l'orientation locale du gradient et donc d'apporter l'invariance par rapport à la
rotation. Les réponses des ondelettes de Haar sont calculées en x et y dans une fenêtre
circulaire dont le rayon dépend du facteur d'échelle du point d'intérêt détecté. Ces réponses
spécifiques contribuent à la formation du vecteur de caractéristique correspondant au point clé
comme montré sur la figure 45.
47
Le descripteur SURF est extrait sur une zone carrée de taille 20 centrée sur chaque
point d’intérêt et orientée selon la direction associée au point d’intérêt calculé précédemment.
:
+,-.,/0é23-4 = 5Σd) Σd)* Σ|d) 8 Σ|d* 89
48
elles constituent une solution pour les applications évoluant essentiellement dans des
environnements à grande échelle.
i. SLaM
Le SLaM visuel, qui utilise la caméra comme capteur, permet de réaliser des cartes 3D
riches en information. C’est dans ce cas qui nous intéresse dans ce travail pour la
reconnaissance de formes en Réalité Augmentée. Mais tout d’abord nous allons voir dans un
premier temps le principe de SLaM, puis ensuite la présentation de quelques approches les
plus utilisées.
- Principe de SLaM
Pour décrire ce problème, plusieurs méthodes sont présentées mais les plus connues sont les
méthodes probabilistes.
Notons par :
•
z t mesure observée à l'instant
49
• m i la position du ième amer,
P ( p t z 0 : T , M , p 0)
P ( M z 0 :T , p0 : T )
Formule 12 : Résolution de la cartographie (SLaM )
- EKF-SLaM
L’ensemble des états du système forme une chaîne de Markov. C’est-à-dire on estime l'état du
système (la position de robot, sa covariance, l’observation) au temps t en utilisant les données
au temps t-1
Un vecteur d’état représente simultanément les informations sur le système et les informations
sur la carte. L’estimation des composantes de localisation et de mapping sont dans le même
vecteur d’état. Les incertitudes sur les positions, les observations et les corrélations entre les
différentes variables du vecteur d’état sont représentées par une matrice d'erreur. Le filtre de
Kalman étendu est utilisé pour la mise à jour du vecteur d’état et de la matrice d’erreurs avec
les nouvelles observations.
50
Cette méthode est ancienne avec plus de 25 ans, mais reste encore très populaire au
sein de la communauté de chercheurs avec des variantes comme CEKF (Compressed EKF)
([J. Guivant and E. Nebot., 2001], [J. Guivant et E. Nebot., 2002]), Square Root SAM
(Smooth et Mapping) [Dellaert ., 2005], SEIF (Sparse Extended Information Filter) [Thrun et
al., 2002] , TJTF (Thin Junction Tree Filter)[Mark, 2003]
Une autre approche pour traiter le problème du SLaM est basée sur l'utilisation de
filtres particulaires. Le principe est de suivre un grand nombre d'hypothèses en parallèle qui
sont autant de trajectoires possibles. Ces différentes hypothèses correspondent à un
échantillonnage de la distribution de probabilité des trajectoires.
VI.4) SYNTHESES
Les méthodes basées sur des marqueurs ont connu un grand succès grâce à la librairie
d'Artoolkit. Les marqueurs sont faciles à mettre en œuvre et on peut donc en obtenir des
résultats assez satisfaisants. Pourtant, il ne faut pas oublier les inconvénients majeurs de cette
méthode qui sont les problèmes d’occultation, c’est-à-dire que si le marqueur, ou une partie,
est caché par un autre objet, il risque de ne pas être reconnu par le système et ne peut ainsi
faire l’objet de l'augmentation. Différents travaux sont menés pour pallier à ce problème en
inventant d'autres marqueurs ou en améliorant ceux qui existent. Ainsi, différentes variantes
ont fait leur apparition et ont été appliquées à des domaines spécifiques.
C'est le cas par exemple des travaux de [Malik et al. 2002] qui ont proposé une
méthode hybride permettant d'identifier avec précision le marqueur si celui-ci est
partiellement caché. En utilisant un algorithme similaire à celui de [Rekimoto, 1998] que nous
venons de détailler, le système identifie le marqueur en approximant les coins des régions
connexes à l'intérieur, ensuite une recherche locale comprenant 3 étapes est alors engagée
telle que : la prévision des coins, la détection des coins, et le raffinement homographique. Ces
derniers permettant d’identifier le marqueur même si certains points sont occultés.
51
rendent aussi difficiles la détection de ces marqueurs. Toutefois, quelques applications de RA
mobile en extérieur utilisent les marqueurs tels que ARQUAKE de [Thomas et al. , 2000] qui
utilisent la bibliothèque ARToolKit [Kato et Billinghurst, 1999], un marqueur de taille d’une
surface d’un mètre carré placé sur les bâtiments.
UMAR de [Henrysson et Ollila, 2004] est une méthode utilisée pour des applications
sur des téléphones mobiles ubiquitaires. L’application a été testée sur un Nokia 6600 avec un
processeur ARM9 cadencé à 104MHZ, avec une mémoire vive de 6MB, un écran de 176 x
208 pixels avec 16 bits/pixel. La résolution d’image utilisée est de 160 x 120 pixels avec 12
bits/pixel. La taille du marqueur d’ARToolKit est de 8 x 8 cm. La reconnaissance des
marqueurs peut se faire sur une distance maximale de 1.5m.
D’autres solutions pour contourner l’utilisation des marqueurs sont les descripteurs. Ils
sont robustes à de rotations et à de déformations respectives. En revanche, ces outils sont
coûteux en temps de traitement. Pourtant, dans la littérature, nombreux sont les auteurs qui les
utilisent.
Les méthodes qui utilisent comme information les contours constituent des invariants
globaux et sont robustes à des variations de luminosité et à des occultations partielles. C’est
aussi le cas pour les méthodes qui emploient les points d’intérêt avec les descripteurs ayant
des caractéristiques très robustes face à la variation de la luminosité, et aussi à l’occultation
partielle mais assez gourmande en termes de calculs. Un modèle précis 3D est donc nécessaire
pour mettre en œuvre ces méthodes.
Pour les applications mobiles exploitant les contours, [Reitmayr et Drummond, 2006]
ont obtenu les résultats décrits sur le tableau 2 sur une tablette VAIO U-71 avec un processeur
Pentium III M cadencé à 1.1 GHz. L’image capturée est de 640 x 480 en 30 Hz et le système
l’opère avec 320x240 en 15-17 Hz.
Etape Temps en ms
52
[Gerald Fritz et al., 2005] sont l’un des premiers à proposer une solution de
reconnaissance sur mobile. Les calculs se font ainsi sur des serveurs distants qui reconnaissent
par classification des descripteurs i-sift (informative SIFT), une optimisation de SIFT, car les
téléphones n’avaient pas la performance requise pour effectuer les calculs comme les
Smartphones de nos jours. Sur un Nokia 6230, la résolution d’image capturée est de 640 ×
480 pixels, la reconnaissance d’une image est de 9.28 sec pour un SIFT, et 2.80 sec pour i-
SIFT.
Parmi les travaux basés sur les descripteurs SURF pour les applications mobiles en
extérieur, citons les travaux de [Takacs et al., 2008] qui apportent leur contribution d'un
système RA au tourisme. La reconnaissance s’effectue sur un téléphone Nokia N95 en
téléchargeant les images de référence, sur une base de données des descripteurs situant sur un
serveur distant, en fonction de la position de l’utilisateur connu par GPS. Avec des images de
taille moyenne de 640 x 480, 250 points d’intérêts par image, 7000 descripteurs dans la base,
la reconnaissance est effectuée en 2.8s, dont 2.4s pour SURF et une consommation mémoire
de 1.8Mo pour la base des descripteurs.
Dans ces résultats les descripteurs SURF ET SIFT sont très coûteux en temps de
calcul, ainsi nombreux descripteurs sont apparus pour résoudre ce problème et ils sont bien
adaptés pour des applications mobiles : BRISK [Klein et al., 2009], BRIEF [Calonder et al., 2010],
ORB [Rublee et al., 2011], FREAK [Alahi et al., 2012],
53
deux images de 640 x 480 pixels placées l’une dessus l’autre, à un débit de 30fps. Les résultat
sont présenté sur le tableau 1 :
Tableau 3 : Résultats de l’utilisation des points caractéristiques FAST et les descripteurs BRIEF [Gasparini et
Bertolino, 2013]
Les descripteurs sont fiables pour leur robustesse. C’est pourquoi dans le chapitre suivant
nous avons décidé de réaliser une application utilisant les différents descripteurs sur un
Smartphone afin de comparer leurs résultats.
54
VII. REALISATION
VII.1.a) Android
Android est un système d'exploitation mobile pour Smartphones, tablettes tactiles, PDA,
et terminaux mobiles. C'est un système open source utilisant un noyau Linux 2.6 et il a été
lancé par une startup du même nom et racheté par Google en 2005. Les applications sont
exécutées par la machine virtuelle Dalvik.
La première couche est composée d’un noyau Linux qui gère les périphériques internes
55
telles que la caméra, l’écran, mais aussi la gestion de l’alimentation qui est primordiale sur un
téléphone. Dans la seconde vient s’imbriquer les supports multimédia des formats
audio/vidéo, en parallèle avec la machine Dalvik (DVM) qui nous permettront d’exécuter des
applications (.dex : dalvik executable). La troisième implémente toutes les librairies qui
permettent aux programmeurs de créer des applications (framework), et enfin la quatrième
regroupe ces applications.
VII.2) Implémentation
Voici les étapes que nous avons faites pour extraire et comparer les descripteurs :
featureDetector.detect(ref, matFrameKeyPointRef);
Pour la reconnaissance en temps réel, ces opérations sont effectuées pour chaque image
capturée par la camera et on procède à une mise en correspondance comme suit :
57
les résultats suivants :
D´etecteur/Descripteur
Extraction de points Calcul des descripteurs
(moyenne en ms) (moyenne en ms)
ORB-BRIEF 142 33
58
VIII. CONCLUSION ET PERSPECTIVES
Les méthodes et les algorithmes ont été détaillés, à savoir les méthodes basées sur les
marqueurs, puis les méthodes sans marqueurs basées sur les primitives telles que les contours
et les points d’intérêts. Ensuite, les résultats de ces méthodes pour un opérateur ubiquitaire ont
été présentés. Enfin, nous avons développé une application basée sur un descripteur SURF
appliqué sur un Smartphone.
Toutes les méthodes qu’on a considérées nécessitent l'utilisation d'un modèle précis de
l'objet à connaître et qui n'est pas toujours disponible pour un environnement à grande échelle.
La solution est alors d'adapter les méthodes de localisation et de cartographie simultanée
(Simultaneous Localization And Mapping ou SLaM ) pour la reconnaissance en RA extérieur
utilisant les dispositifs mobiles.
Avec l’émergence des Smartphones comportant des écrans assez larges et munis des
multiples capteurs qui sont de plus en plus puissants, l’application du SLaM 3D pour les
applications RA ne devrait pas poser d’obstacle. Pour initialiser la carte, celle-ci est plus
efficace si on la combine avec les méthodes robustes basées sur les descripteurs qui ont
prouvés leur efficacité dans les résultats qu’on a pu tester sur les Smartphones. Ainsi, pour ce
59
faire nous proposons les descripteurs ORB et BRIEF qui a montré plus d’efficacité dans les
résultats de notre réalisation.
Dans ce mémoire, nous avons abordé quelques unes des problématiques de suivi de la
caméra et de la reconnaissance de formes soulevées par les applications de la Réalité
Augmentée pour un opérateur ubiquitaire.
60
GLOSSAIRE
Android (p21, p37, p66, p68, p73) Un système d'exploitation mobile pour Smartphones,
tablettes tactiles, PDA et terminaux mobiles
Binarisation (p42, p43, p46, p52) En traitement d'image, la binarisation est une opération qui
produit deux classes de pixels, en général, ils sont représentés par des pixels noirs et
des pixels blancs.
Coefficient de corrélation (p45, p53) En probabilités et en statistiques, étudier
la corrélation entre deux ou plusieurs variables aléatoires ou statistiques numériques, c’est
étudier l'intensité de la liaison qui peut exister entre ces variables
Cohérence géométrique (p26) Cela porte sur l’alignement géométrique des caméras
virtuelles et réelles
Cohérence photométrique (p26) Cet aspect concerne la prise en compte des inter-réflexions
lumineuses (ombres, reflets) entre les scènes réelles et virtuelles.
Cohérence spatio-temporelle (p26) Cet aspect concerne les occultations, le déplacement
entre les objets de synthèse et les objets réels
Correcteur différentiel (p32) Egaliseur qui fournit une compensation, en introduisant une
fonction linéaire de la dérivée du signal original deux entités localisées
Dalvik (p66) est une machine virtuelle destinée aux téléphones mobiles et tablettes tactiles.
Dalvik est destiné à permettre l'exécution simultanée de plusieurs applications sur un appareil
de faible capacité (peu d'espace mémoire et peu de puissance de calcul)
Dispositif mobile (p20) Un appareil informatique portatif utilisable de manière autonome lors
d'un déplacement. L'appareil est de taille et de poids réduits pour un usage mobile
Géolocalisation (p37) La géolocalisation ou géoréférencement est un procédé permettant de
positionner un objet sur un plan ou une carte à l'aide de ses coordonnées géographiques.
Haptique (p24) englobe le toucher et les phénomènes kinesthésiques, c'est-à-dire la perception
du corps dans l’environnement.
Informatique pervasive (p24) a pour but de rendre accessible toutes sortes de services et
informations n'importe où et n'importe quand
Informatique Ubiquitaire (p6, p20, p24, p68) a pour but de rendre accessible toutes sortes
de services et informations n'importe où et n'importe quand
Interaction spatiale (p35) Phénomène par lequel des actions s’exercent entre deux ou
plusieurs lieux de l’espace.
Informative SIFT (i-sift) (p70) une optimisation de SIFT
61
Magnétomètre Inertiel (p32) Un appareil permettant de mesurer la direction et l'intensité
d'un champ magnétique.
Marqueur (p36, p40, p41, p42, p44, p45, p47,p64, p65, p72). C’est un motif simple sur fond
blanc entouré d’un cadre noir.
Occultations (p26, p28, p31, p52, p71) Un phénomène de recouvrement apparent d'un
élément par un autre.
Octave (p55, p26) En musique, une octave est l’intervalle séparant deux sons dont la
fréquence fondamentale du plus aigu est le double de celle du plus grave. Divisée en plusieurs
sous-intervalles, elle permet de définir les gammes
Opérateur ubiquitaire (p20, p24, p31, p65, p69, p72, p63) utilisateur de l’informatique
ubiquitaire
OpenCV (p66) est une bibliothèque gratuite (licence BSD) de référence pour la vision par
ordinateur développée en C/C++.
Postproduction (p24) La postproduction est l'organisation de l'ensemble des opérations
conduisant à la finalisation définitive d'un évènement audiovisuel enregistré, tourné ou capté.
Réalité Augmentée (RA) (p20, p22, p23, p24, p26, p27, p31, p32, p33, p37, p47, p51, p62,
p72, p73) Combinaison des objets réels et virtuels dans un environnement réel, En temps-réel
et interactif, Recalage (aligner) les objets réels et virtuels.
Réalité mixte (p23) un continuum (un ensemble d’éléments tels que l’on peut passer de l’un
à l’autre de façon continue) qui relie le monde réel et la réalité virtuelle en passant par la
Réalité Augmentée.
Réalité Virtuelle (RV) (p22, p23) un domaine scientifique et technique exploitant
l’informatique et des interfaces comportementales en vue de simuler dans un monde virtuel le
comportement d’entités 3D, qui sont en interactions en temps réel entre elles et avec un ou des
utilisateurs en immersion pseudo naturelle par l’intermédiaire de canaux sensorimoteurs
Reconnaissance de formes (p20, p21, p31, p40, p49, p58, p62, p70, p72, p73) La
reconnaissance de formes (ou parfois reconnaissance de motifs) est un ensemble de
techniques et méthodes visant à identifier des motifs informatiques à partir de données brutes
afin de prendre une décision dépendant de la catégorie attribuée à ce motif
Smartphone (p20, p24, p28, p37, p39, p63, p70, p72) Ordiphone ou téléphone intelligent, est
un téléphone mobile évolué disposant des fonctions d'un assistant numérique personnel, d'un
appareil photo numérique et d'un ordinateur portable
Ubiquitaire (p20, p24, p31, p65, p69, p72, p73) désigne un environnement dans lequel les
ordinateurs et réseaux sont « enfouis », « intégrés » et « omniprésents » dans le monde réel.
62
L'utilisateur a accès à un ensemble de services au travers d'interfaces distribuées se voulant
intelligentes, dont il est entouré. Ces interfaces s'appuient sur des technologies intégrées dans
les objets familiers.
Ubiquité ou l'omniprésence est la capacité d'être présent en tout lieu ou en différents lieux
simultanément.
Virtualité augmentée (VA) (p23, p74) intégration des éléments réels extérieurs à la réalité
virtuelle dans l’interface de simulation 3D, afin d’enrichir l’interaction de l’opérateur humain
avec le monde virtuel au moyen d’outils et de tâches issues du monde réel.
63
BIBLIOGRAPHIE
[Alahi et al., 2012] A. Alahi, R. Ortiz, and P. Vandergheynst. Freak : Fast retina keypoint. In Proceedings of the
IEEE International Conference on Computer Vision and Pattern Recognition (CVPR 2012), pages 510–517,
2012.
[Azuma, 1997] Ronald T. Azuma, « A Survey of Augmented Reality », Presence: Teleoperators and Virtual
Environments 6, 4, 355-385, 1997.
[Bay et al., 2008] Bay, Herbert, Ess, Andreas, Tuytelaars, Tinne, & Van Gool, Luc. 2008. Speeded-Up Robust
Features (SURF). vol. 110. New York, NY, USA: Elsevier Science Inc.
[Calonder et al., 2010] M. Calonder, V. Lepetit, C. Strecha, and P. Fua. BRIEF : Binary Robust Independent
Elementary Features. In Proceedings of the European Conference on Computer Vision (ECCV 2010), September
2010.
[Caudell et Mizell, 1992] T. P. Caudell, D. Mizell, “Augmented Reality: An Application of Heads-Up Display
Technology to Manual Manufacturing Processes”, 1992
[Dellaert, 2005] F. Dellaert. Square Root SAM: Simultaneous location and mapping via square root information
smoothing. In Robotics: Science and Systems (RSS), 2005.
[Durrant-Whyte,2006] Hugh Durrant-Whyte, Tim Bailey. – Simultaneous localization and mapping : Part i.
IEEE Robotics & Automation Magazine, 13(2) :99–108, 2006.
[Feiner et al., 1997] S. Feiner, B. MacIntyre, T. Hollerer, et A. Webster (1997). A touring machine : Prototyping
3d mobile augmented reality systems for exploring the urban environment. IN ISWC ’97 : Proceedings of the 1st
IEEE International Symposium on Wearable Computers, page 74, Washington, DC, USA. IEEE Computer
Society.
[Fruend et al.,2001] Fruend J. Fruend, C. Geiger, M. Grafe and B. Kleinjohann, ”The Augmented Reality
Personal Digital Assistant”,Proceedings of the Second International Symposium on Mixed Reality (ISAR 2001),
2001.
[Fuchs, 1996] Fuchs P., « Les interfaces de la réalité virtuelle »,Edition Interfaces, les journées de Montpellier,
1996, 1996.
[Fuchs, 2003] Fuchs, Philippe. (dir. publ.) Le traité de la réalité virtuelle, 2e éd., Volume 1 : Fondements et
interfaces comportementales. Les Presses de l’École des Mines de Paris, 2003.
[Gasparini et Bertolino, 2013] Simone Gasparini, Pascal Bertolino, Suivi de caméra stéreo pour des
applications de réaliée augmentée sur téléphone mobile, ORASIS 2013, Cluny,juin 2013.
[Gerald Fritz et al., 2006] Fritz G., Seifert C., Paletta L. : A mobile vision system for urban detection with
informative local descriptors. In Proceedings of the Fourth IEEE International Conference on Computer Vision
Systems (Washington, DC, USA, 2006), ICVS ’06,IEEE Computer Society, pp. 30–.
[Guivant et Nebot, 2001] J. Guivant and E. Nebot, “Optimization of the simultaneous localization and map-
building algorithm for real-time implementation,” IEEE Transactions Robotics and Automation, vol. 17, no. 3,
pp. 242 – 257, 2001.
64
[Guivant et Nebot, 2002] Guivant and E. Nebot, “Solving computational and memory requirements of feature
based simultaneous localization and map building algorithms,” Australian Centre for Field Robotics, University
of Sydney, Sydney, Tech. Rep., 2002.
[Hare et Lewis, 2005] Hare J. S., Lewis P. H. : Content-based image retrieval using a mobile device as a novel
interface. 2005, 64–75
[Harris et Stennet, 1990] C. Harris et C. Stennet (1990). Rapid, a video rate object tracker. Dans British
Machine Vision Conference, pages 73–77.
[Henrysson et Ollila, 2004] A.Henrysson and M.Ollila . UMAR : Ubiquitous Mobile Augmented Reality. In
Proceedings of the 3rd international conference on Mobile and ubiquitous multimedia, pages 41–45. ACM,
October 2004..
[Hollerer et al., 1999] T. Hollerer, S. Feiner, T. Terauchi, G. Rashid, et D. Hallaway (1999). Exploring mars :
Developing indoor and outdoor user interfaces to a mobile augmented reality system. Computers and Graphics,
23(6) :779–785. [cité page(s). v, 3, 19, 66]
[Julier et al., 2000] S. Julier, Y. Baillot, M. Lanzagorta, D. Brown, et L. Rosenblum (2000). Bars : Battlefield
augmented reality system. Dans NATO Symposium on Information Processing Techniques for Military Systems,
Istanbul, Turkey. [cité page(s). v, 20, 66]
[Kato et Billinghurst, 1999] H. Kato et M. Billinghurst (1999). Marker tracking and hmd calibration for a
video-based augmented reality conferencing system. Dans IWAR ’99 : Proceedings of the 2nd IEEE and ACM
International Workshop on Augmented Reality, pages 85–92, Washington, DC, USA. IEEE Computer Society.
[Kato et al., 2000] H. Kato, M. Billinghurst, I. Poupyrev, K. Imamoto, et K. Tachibana (2000). Virtual object
manipulation on a table-top ar environment. Dans Proceedings of the International Symposium on Augmented
Reality (ISAR 2000), pages 111–119, Munich, Germany.
[Klein et al., 2009] G. Klein and D. Murray. Parallel tracking and mapping on a camera phone. In Proceedings
of the Eigth IEEE and ACM International Symposium on Mixed and Augmented Reality (ISMAR’09), Orlando,
October 2009.
[Lowe, 2004] D.G. Lowe (2004). Distinctive image features from scale-invariant keypoints. Int. J. Comput.
Vision, 60(2) :91–110. [cité page(s). 37, 38, 43, 50]
[T. Lindeberg, 1994] Tony Lindeberg,Scale-space theory: A basic tool for analysing structures at different
scales,Journal of Applied Statistics, vol. 21, no. 2, pp. 225-270, 1994.
[Malik et al., 2002] S. Malik, G. Roth, and C. Mcdonald. Robust 2d tracking for real-time augmented reality. In
Proceedings of Vision Interface (VI’2002), pages 399–406, Calgary, Alberta, Canada, 2002.
[Mei et Rives, 2007] C. Mei et P. Rives (2007). Cartographie et localisation simultanée avec uncapteur de
vision. Dans Journées Nationales de la Recherche en Robotique. [cité page(s). 42]
[Milgram P. et Kishino, 1994] Milgram P. et Kishino F., A taxonomy of mixed reality visual displays, IEICE
Transactions on Information Systems, Vol E77-D, No.12, Décembre 1994
[Nehla et al., 2011] Nehla Ghouaiel, Jean-Marc Cieutat, Jean-Pierre Jessel. MARTS : Conception d'un Système
Mobile de Réalité Augmentée Dédié au Tourisme (regular paper). Dans : Journées francophones Mobilité et
Ubiquité (UBIMOB 2011), Toulouse, 06/06/2011-08/06/2011, (Eds.), CNRS - GDR I3, (support électronique),
2011.
[Nguyen Ta et al., 2009] nguyen TA, D., chao CHEN, W., GELFAND, N. et PULLI, K. (2009). Surftrac :
Efficient tracking and continuous object recognition using local feature descriptors. In In IEEE Conf. on
Computer Vision and Pattern Recognition (CVPR09.
65
[Rekimoto, 1998] Rekimoto. Matrix : A realtime object identification and registration method for augmented
reality. In APCHI’98 : Proceedings of the Third Asian Pacific Computer and Human Interaction, pages 63–68,
Washington, DC, USA, 1998.
[Rekimoto et Ayatsuka, 2000] J. Rekimoto and Y. Ayatsuka. Cybercode : designing augmented reality
environments with visual tags. In DARE’00 : Proceedings of DARE 2000 on Designing augmented reality
environments, pages 1–10, Elsinore, Denmark, 2000.
[Reitmayr et Drummond, 2006] Gerhard Reitmayr et Tom Drummond (2006). Going out : Robust model-based
tracking for outdoor augmented reality. Dans IEEE ISMAR, Santa Barbara, California, USA. [cité page(s). v, vi,
36, 47, 59, 66, 73, 74, 84, 85, 99, 102]
[Rosten et al., 2010] E. Rosten, R. Porter, and T. Drummond. Faster and better : a machine learning approach
to corner detection. IEEE Transactions on Pattern Analysis and Machine Intelligence, 32(1) :105–119, 2010.
[Rublee et al., 2011] E. Rublee, V. Rabaud, K. Konolige, and G. R. Bradski. Orb : An efficient alternative to sift
or surf. In Proceedings of the IEEE International Conference on Computer Vision (ICCV 2011), pages 2564–
2571, 2011
[Schall et al., 2008] G. Schall, E. Mendez, E. Kruijff, E. Veas, S. Junghanns, B. Reitinger, et D. Schmalstieg
(2008). Handheld augmented reality for underground infrastructure visualization. Personal and Ubiquitous
Computing
[Stricker et Kettenbach, 2001] D. Stricker et T. Kettenbach (2001). Real-time and markerless vision-based
tracking for outdoor augmented reality applications. Dans ISAR ’01 : Proceedings of the IEEE and ACM
International Symposium on Augmented Reality (ISAR’01), page 189,Washington, DC, USA. IEEE Computer
Society. [cité page(s). vi, 22, 40, 47]
[Takacs et al., 2008] Takacs, Gabriel, Chandrasekhar, Vijay, Gelfand, Natasha, Xiong, Yingen, Chen,Wei-Chao,
Bismpigiannis, Thanos, Grzeszczuk, Radek, Pulli, Kari, & Girod, Bernd. 2008. Outdoors augmented reality on
mobile phone using loxel-based visual feature organization. Pages 427–434 of: MIR ’08: Proceeding of the 1st
ACM international conference on Multimedia information retrieval. New York, NY, USA: ACM.
[Thomas et al. , 2000] Thomas, B., Close, B., Donoghue, J., Squires, J., De Bondi, P., Morris, M., and Piekarski,
W. "ARQuake: An Outdoor/Indoor Augmented Reality First Person Application." In 4th International
Symposium on Wearable Computers, pp 139–146, Atlanta, Ga, Oct 2000.
[Thrun et al., 2002] Thrun, D. Koller, Z. Ghahmarani, and H. Durrant-Whyte, “SLaM updates require constant
time,” School of Computer Science, Carnegie Mellon University, Pittsburgh, Tech. Rep., 2002.
[Vairon et al., 2007] J. Vairon, L. Frauciel, F. Ababsa, J.Y. Didier, I.M. Zendjebil, R. Delmont, P. Guitton, M.
Hachet, et B. Rodiere (2007). Raxenv : a new ar research project to serve outdoor environmental activities. 4e
conférence du réseau Intuition
[Wagner et al., 2010] Wagner, Daniel, Reitmayr, Gerhard, Mulloni, Alessandro, Drummond, Tom, &
Schmalstieg, Dieter. 2010. Real-Time Detection and Tracking for Augmented Reality on Mobile Phones. IEEE
Transactions on Visualization and Computer Graphics, 16(3), 355–368.
[Wendt et al., 2008] Wendt F. L., Bres S., Tellez B., Laurini R., « Markerless Outdoor Localisation Based on
SIFT Descriptors for Mobile Applications », in A. Elmoataz et al. (dir.), ICISP 2008, Cherbourg-Octeville,
Springer-Verlag éditeur, 2008, pp. 439-446.
66
[Zendjebil et al., 2009] I.M. Zendjebil, F. Ababsa, J-Y. Didier, E. Lalagüe, F. Decle, R. Delmont, L. Frauciel, et
J. Vairon (2009). Réalité Augmentée en extérieur : Etat de l’art. Technique et Science Informatiques, Réalité
Virtuelle - Réalité Augmentée, 28(6-7/2009) :857–890. Numéro spécial. [cité page(s). 4, 31]
[Zendjebil et al., 2010] Zendjebil I. M., Ababsa F., Lalague E., Decle F., Delmont R., Franciel L., « Réalité
Augmentée en extérieur. Etat de l'art », in Réalité Virtuelle, Réalité Augmentée, Fuchs P. et Mallem M. (dir.),
RTSI, série TSI, vol. 28, n°6-7, Lavoisier, 2009, pp. 831-856.
[Zhang et Kosecka, 2006] W.Zhang and J.Kosecka. Image based localization in urban environments. In
Proceedings of the Third International Symposium on 3D Data Processing,Visualization, and Transmission
(3DPVT’06), pages 33–40. IEEE Computer Society, 2006.
67
ANNEXES
I. Images intégrales
Les images intégrales, introduites en infographie en 1984, sont aujourd’hui très utilisées en
vision par ordinateur pour calculer des sommes de valeurs (ex : intensité) dans des régions
rectangulaires depuis leur reformulation dans la méthode de Viola et Jones [Viola et Jones,
2001] en 2001.
Etant donnée une image i et un point (x, y), l’image intégrale ;;( , ) est donnée par la
somme des valeurs des points entre (x,y) et l’origine :
Une fois l'image intégrale calculée, la somme des intensités des pixels à l'intérieur de
n'importe quel rectangle ABCD peut être évaluée en seulement 4 accès:
Formule 14 : Somme des intensités des pixels à l'intérieur d'un rectangle en utilisant les images intégrales
68