Notice
La réalité augmentée
techniques et entités virtuelles
Traité IC2, série Informatique et Systèmes d'Information
Auteur : RÉVEILLAC Jean-Michel
Langue : FrançaisThèmes de La réalité augmentée :
Ouvrage 325 p. · 15.6x23.4 cm · Relié ·
Retiré de la vente
ISBN : 9782746245471
Acheter l'e-book
Phénomène en plein essor, la réalité augmentée touche de plus en plus de domaines (e-commerce, jeux vidéo, éducation, marketing, sciences, etc.). Si vous voulez comprendre et développer une application qui utilise cette technologie, le contenu de cet ouvrage est fait pour vous. Une première partie essaie de dresser un panorama exhaustif de la réalité augmentée actuelle jusqu’à ses développements les plus récents. Vous découvrirez ses concepts et ses objectifs puis, à l’aide de différents logiciels (open-source ou propriétaire), vous pourrez réaliser pas à pas plusieurs exercices de difficultés croissantes pour mettre en œuvre la réalité augmentée sur votre micro-ordinateur, votre tablette électronique ou votre smartphone. La plupart des notions dont vous aurez besoin sont basiques mais ceux d’entre vous qui ont plus d’expérience dans le domaine de la programmation ou la modélisation 3D pourront aller encore plus loin. À la lecture de cet ouvrage j’espère vous transmettre le même engouement et la même passion que je ressens pour cette technologie révolutionnaire.
Avant-propos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
PREMIERE PARTIE. ÉTAT DES LIEUX . . . . . . . . . . . . . . . . . . . . . 29
Chapitre 1. Historique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.1. Au commencement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.2. L’envolée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
1.3. Le passage au XXIe siècle . . . . . . . . . . . . . . . . . . . . . . . . . 38
Chapitre 2. Matériels, logiciels et applications pour la RA . . . . . . . 45
2.1. Pour commencer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.1.1. Moyens techniques de la RA . . . . . . . . . . . . . . . . . . . . 46
2.1.1.1. Plateformes matériels . . . . . . . . . . . . . . . . . . . . . 46
2.1.1.2. Système de capture . . . . . . . . . . . . . . . . . . . . . . . 47
2.1.1.3. Système de visualisation . . . . . . . . . . . . . . . . . . . 49
2.1.1.4. Interface homme-machine (IHM) . . . . . . . . . . . . . 49
2.2. Logiciels de développement . . . . . . . . . . . . . . . . . . . . . . . 51
2.2.1. Logiciels expérimentés dans le cadre de cet ouvrage . . . . . 52
2.2.1.1. AR-media de Inglobe Technologies . . . . . . . . . . . . 52
2.2.1.2. Buildar du HIT Lab NZ . . . . . . . . . . . . . . . . . . . . 53
2.2.1.3. ARToolKit (open source) . . . . . . . . . . . . . . . . . . 53
2.2.1.4. Popcode Developper du Machine Intelligence Lab – Cambridge University. . . . . . . 53
2.2.1.5. D’Fusion de Total Immersion . . . . . . . . . . . . . . . . 54
2.2.1.6. LinceoVR de seac02 . . . . . . . . . . . . . . . . . . . . . . 54
2.2.2. Logiciels non expérimentés dans le cadre de cet ouvrage. . . . . . . 55
2.2.2.1. Junaio de Metaio . . . . . . . . . . . . . . . . . . . . . . . . 55
2.2.2.2. Layar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.2.2.3. FLARToolKit (open source) . . . . . . . . . . . . . . . . . 57
2.2.2.4. NyARToolkit (open source) . . . . . . . . . . . . . . . . . 57
2.2.2.5. HandyAR de UCSB, Four Eyes Lab (gratuit) . . . . . . 58
2.2.2.6. Wikitude . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
2.2.2.7. Vuforia de Qualcomm . . . . . . . . . . . . . . . . . . . . . 59
2.3. Domaines applicatifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
2.3.1. Jeux vidéo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
2.3.2. Patrimoine et tourisme . . . . . . . . . . . . . . . . . . . . . . . . 63
2.3.3. Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.3.4. Commerce, publicité, marketing . . . . . . . . . . . . . . . . . 66
2.3.5. Cinéma, télévision . . . . . . . . . . . . . . . . . . . . . . . . . . 67
2.3.6. Industrie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
2.3.7. Médical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
2.3.8. Arts et musées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
2.3.9. Education . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
2.3.10. Navigation et cartographie . . . . . . . . . . . . . . . . . . . . 76
2.4. Pour conclure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
DEUXIÈME PARTIE. EXERCICES SUR LOGICIELS . . . . . . . . . . . . . 81
Chapitre 3. D’Fusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
3.1. Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
3.2. Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
3.3. Exercice 1 : création d’une scène simple . . . . . . . . . . . . . . . . 84
3.3.1. Pour commencer, créons un nouveau projet . . . . . . . . . . 85
3.3.2. Importer un objet 3D et ajouter son éclairage . . . . . . . . . 87
3.3.3. Ajouter le dispositif de capture vidéo et l’intégrer à la scène. . . . . . . 89
3.3.4. Créer le suivi du marqueur qui déclenchera l’apparition de l’objet en 3D. . . . . . . . . . . . 93
3.3.5. Associer le marqueur à votre projet . . . . . . . . . . . . . . . . 96
3.3.6. Saisie du script de suivi . . . . . . . . . . . . . . . . . . . . . . . 98
3.3.7. Essayer votre scène de RA . . . . . . . . . . . . . . . . . . . . . 100
3.3.8. Affiner le dimensionnement et le positionnement de votre objet 3D. . . . . . . . . . . 101
3.3.9. Exporter et créer une application . . . . . . . . . . . . . . . . . 103
3.4. Exercice 2 : ajout d’une animation à la scène de l’exercice 1 . . . 107
3.4.1. Charger le projet et ajouter un nouvel élément de script . . . 107
3.4.2. Affecter et éditer le script . . . . . . . . . . . . . . . . . . . . . . 108
3.4.3. Tester le script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
3.5. Exercice 3 : intégrer une scène de RA au sein d’une page web interactive . . . . . . . . . 110
3.5.1. Charger le projet et le modifier . . . . . . . . . . . . . . . . . . 110
3.5.2. Ajout des scripts d’interactions . . . . . . . . . . . . . . . . . . 111
3.5.3. Ajout du texte qui apparaîtra dans la scène . . . . . . . . . . . 116
3.5.4. Exporter et générer une application . . . . . . . . . . . . . . . . 117
3.5.5. Création de la page web . . . . . . . . . . . . . . . . . . . . . . . 118
3.5.6. Construction du dossier qui va contenir le projet . . . . . . . 121
3.5.7. Tester l’application . . . . . . . . . . . . . . . . . . . . . . . . . . 123
3.5.8. Publier votre application sur un serveur . . . . . . . . . . . . . 126
3.6. Pour conclure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Chapitre 4. AR-media . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
4.1. Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
4.2. Installation sur Mac OSX . . . . . . . . . . . . . . . . . . . . . . . . . 128
4.3. Exercice 1 : une scène simple. . . . . . . . . . . . . . . . . . . . . . . 129
4.4. Exercice 2 : une scène plus complexe, un objet et deux vidéos. . . . . . . . . 137
4.5. Exercice 3 : ajouter un script . . . . . . . . . . . . . . . . . . . . . . . 141
4.6. Exercice 4 : exporter une scène vers AR-media Player pour Mac OSX, Microsoft Windows, ou iOS (iPhone, iPad) . . . . . . 146
4.6.1. AR-media Player sur Mac OSX . . . . . . . . . . . . . . . . . . 147
4.6.2. AR-media Player sur iOS . . . . . . . . . . . . . . . . . . . . . . 150
4.6.3. AR-media Player sur PC et Microsoft Windows . . . . . . . 158
4.7. Pour conclure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
10 La réalité augmentée
Chapitre 5. ARToolKit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
5.1. Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
5.2. Fonctionnement général d’une application utilisant ARToolKit. . . . . . . . . 162
5.3. Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
5.3.1. Installation sous Microsoft Windows . . . . . . . . . . . . . . 164
5.3.2. Démarche commune à tous les EDI . . . . . . . . . . . . . . . 165
5.3.3. Microsoft Visual C++ 6.0 . . . . . . . . . . . . . . . . . . . . . . 166
5.3.4. Microsoft Visual Studio.net 2003 . . . . . . . . . . . . . . . . . 169
5.3.5. Microsoft Visual C++ 2008 Express Edition . . . . . . . . . . 171
5.3.6. Installation sous Mac OSX . . . . . . . . . . . . . . . . . . . . . 175
5.4. Utilisation d’OpenVRML avec ARToolKit . . . . . . . . . . . . . . 178
5.4.1. Génération avec Microsoft Windows et Microsoft Visual Studio .net 2003. . . . 180
5.4.2. Génération avec Mac OSX et XCode3.x.x . . . . . . . . . . . 183
5.5. Exercice : une scène VRML animée et un marqueur personnalisé. . . . . . . . . 191
5.5.1. Création et impression du marqueur . . . . . . . . . . . . . . . 191
5.5.2. Faire reconnaître un marqueur personnalisé par ARToolKit. . . . . . 192
5.5.3. Associer un marqueur à l’application « simpleVRML » . . . 195
5.5.4. Créez une scène 3D en VRML . . . . . . . . . . . . . . . . . . 198
5.5.5. Visualiser la scène 3D VRML en RA via un marqueur personnalisé. . . . . . . . 200
5.6. Plus de détails sur ARToolKit . . . . . . . . . . . . . . . . . . . . . . 201
5.7. Pour conclure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
Chapitre 6. PopCode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
6.1. Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
6.2. Téléchargement et installation . . . . . . . . . . . . . . . . . . . . . . 206
6.3. Exercice 1 : un modèle simple . . . . . . . . . . . . . . . . . . . . . . 206
6.3.1. Création du modèle . . . . . . . . . . . . . . . . . . . . . . . . . . 207
6.3.2. Création du fichier d’appel du marqueur et des éléments 3D. . . 209
6.3.3. Création du fichier de paramétrage des éléments 3D . . . . . 210
6.3.4. Choix et mise en place du marqueur cible . . . . . . . . . . . 210
6.3.5. Visualisation de la scène . . . . . . . . . . . . . . . . . . . . . . 212
6.4. Exercice 2 : connaître le marqueur . . . . . . . . . . . . . . . . . . . 215
6.5. Exercice 3 : animer et interagir avec un modèle . . . . . . . . . . . 217
6.6. Exercice 4 : déclencher l’appel d’un lien . . . . . . . . . . . . . . . 219
6.7. Exercice 5 : marqueur personnalisé . . . . . . . . . . . . . . . . . . . 220
6.8. Pour conclure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
Chapitre 7. LinceoVR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
7.1. Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
7.2. Téléchargement et installation . . . . . . . . . . . . . . . . . . . . . . 226
7.2.1. Installation du module d’exportation pour Rhino . . . . . . . 226
7.2.2. Installation du module d’exportation pour Autodesk 3D Studio Max. . . . . . 228
7.3. Exercice 1 : un modèle simple . . . . . . . . . . . . . . . . . . . . . . 228
7.3.1. Création du modèle avec Rhino . . . . . . . . . . . . . . . . . . 229
7.3.2. Création du modèle avec Autodesk 3D Studio Max . . . . . 230
7.3.3. Importation du modèle dans LinceoVR . . . . . . . . . . . . . 231
7.3.4. Sélection et associations du modèle avec le marqueur . . . . 233
7.3.5. Impression du marqueur . . . . . . . . . . . . . . . . . . . . . . . 234
7.3.6. Choix de la source de capture de la scène de RA . . . . . . . 235
7.3.7. Affichage de la scène de RA . . . . . . . . . . . . . . . . . . . . 236
7.3.8. Exportation au format LinceoVR Viewer . . . . . . . . . . . . 237
7.3.9. Affichage de la scène de RA avec LinceoVR Viewer . . . . 238
7.4. Exercice 2 : animer un modèle . . . . . . . . . . . . . . . . . . . . . . 239
7.4.1. Associer une ou des animations au modèle . . . . . . . . . . . 240
7.4.2. Visualiser le modèle animé . . . . . . . . . . . . . . . . . . . . . 243
7.5. Exercice 3 : inclure un modèle dans un environnement . . . . . . 243
7.5.1. Importer un modèle dans un environnement . . . . . . . . . . 244
7.5.2. Intégrer graphiquement le modèle dans l’environnement . . . 245
7.5.3. Enregistrer votre travail . . . . . . . . . . . . . . . . . . . . . . . 249
7.6. Pour conclure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
TROISIÈME PARTIE. SOURCES ET RÉFÉRENCES . . . . . . . . . . . . . . 255
Annexe 1. Notions mathématiques pour les calculs de RA . . . . . . . 257
A1.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
12 La réalité augmentée
A1.2. L’alignement de la caméra réelle et virtuelle . . . . . . . . . . . . 258
A1.2.1. Principe mathématique du sténopé . . . . . . . . . . . . . . . 259
A1.2.2. Les distorsions . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
A1.3. La cohérence spatio-temporelle . . . . . . . . . . . . . . . . . . . . 264
A1.4. La cohérence photométrique . . . . . . . . . . . . . . . . . . . . . . 264
A1.5. Pour conclure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
Annexe 2. Espaces colorimétriques et codage vidéo . . . . . . . . . . . . 267
A2.1. Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
A2.2. Nature d’un signal vidéo . . . . . . . . . . . . . . . . . . . . . . . . 268
A2.3. Codage YUV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
A2.3.1. Echantillonnage et structure avec YUV . . . . . . . . . . . . 270
A2.3.2. YUV et norme 4:2:2 . . . . . . . . . . . . . . . . . . . . . . . . 270
A2.3.3. YUV et norme 4:2:0 . . . . . . . . . . . . . . . . . . . . . . . . 271
A2.3.4. YUV et norme 4:1:1 . . . . . . . . . . . . . . . . . . . . . . . . 271
A2.3.5. YUY2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
A2.4. YUV (YCbCr) et taille d’image . . . . . . . . . . . . . . . . . . . . 272
Annexe 3. Les formats de fichiers des objets 3D . . . . . . . . . . . . . . 273
Annexe 4. Introduction au langage VRML . . . . . . . . . . . . . . . . . 279
A4.1. Historique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
A4.2. Des outils indispensables . . . . . . . . . . . . . . . . . . . . . . . . 281
A4.2.1. VRMLPad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
A4.2.2. Les modules d’extension (plugins) disponibles . . . . . . . 282
A4.3. La structure d’un fichier VRML . . . . . . . . . . . . . . . . . . . . 283
A4.4. Les formes de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
A4.5. Le positionnement des objets dans la scène . . . . . . . . . . . . . 287
A4.5.1. La translation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
A4.5.2. La rotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
A4.5.3. Le changement d’échelle . . . . . . . . . . . . . . . . . . . . . 289
A4.6. L’apparence des objets . . . . . . . . . . . . . . . . . . . . . . . . . . 290
A4.6.1. La couleur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
A4.6.2. Les textures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
A4.7. Les prototypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
A4.8. L’éclairage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
A4.8.1. La lumière ponctuelle . . . . . . . . . . . . . . . . . . . . . . . 296
A4.8.2. La lumière directionnelle . . . . . . . . . . . . . . . . . . . . . 298
A4.8.3. La lumière focalisée . . . . . . . . . . . . . . . . . . . . . . . . 299
A4.9. En savoir plus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
Glossaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
Bibliographie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315