Stereo Photorealistic Augmented Reality using a Head

Transcription

Stereo Photorealistic Augmented Reality using a Head
Projet de Fin d’Études
2013 – 2014
[R|E]
D1.1 – Cahier des Charges (DoW)
Stereo Photorealistic Augmented
Reality using a Head Mounted Display
Participant :
• TANGUY, Arnaud, [email protected],
[email protected] SI5 (VIM)
Encadrant :
•
COMPORT, Andrew, [email protected],
[email protected] I3S-CNRS
Coût du livrable : [48h/étudiant] heures
Budget total du projet : [316h/étudiant + Encadrement] heures
STEREO PHOTOREALISTIC
PHOTOREALISTI AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY 1
Résumé Exécutif
La réalité augmentée est un domaine de recherche en expansion rapide, grâce à
l’amélioration simultanée des outils technologiques et des algorithmes.
Une équipe au laboratoire de recherche de l’I3S-CNRS Sophia-Antipolis, menée
par Andrew Comport a développé de robustes algorithmes de suivi de caméra, de
modélisation de l’environnement et d’ajout réalistes d’objets virtuels. Cependant, bien
que leurs algorithmes soient très performants, ils ne sont pas encore intégrés à du
matériel de réalité augmentée à proprement parler. Il manque à la fois une intégration
matérielle avec des head-up display, et des programmes de démonstrations utilisant les
possibilités de tels algorithmes.
Le but de ce projet est d’intégré un capteur RGBD et un head-up display à leur
bibliothèque, puis de fournir des applications permettant de faire usage de ces deux
nouveaux outils afin de fournir des démonstrations convaincantes de leurs algorithmes.
Abstract
Augmented Reality is a rapidly expanding field of research, due to the
simultaneous improvement of both technology and algorithms.
A team from the I3S-CNRS research laboratory of Sophia-Antipolis, lead by
Andrew Comport developped robust algorithm of camera tracking, environment
mapping, and realistic integration of virtual object. However good the algorithms are,
they still lack integration with augmented reality technologies. Both integration with
heads-up display and some meaningful demonstration applications using such
algorithms are missing.
The goal of this project is to integrate an RGBD camera and a head-up display
with their library, and then create applications using these tools to provide convicing
practical applications of their algorithms.
2
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY
Table des matières
1.
Description du Projet................................................................................................. 4
Contexte de travail............................................................................................................................................................ 4
Motivations .......................................................................................................................................................................... 4
Défis ........................................................................................................................................................................................ 5
Objectifs ................................................................................................................................................................................ 5
Scénario(s) ........................................................................................................................................................................... 6
Critères de succès ............................................................................................................................................................. 7
2.
Etat de l’art ............................................................................................................... 8
Description Générale ....................................................................................................................................................... 8
Acquisition et calibration............................................................................................................................................... 9
Affichage des données sur l’head-mounted display ......................................................................................... 10
Intégration avec leur bibliothèque .......................................................................................................................... 11
3.
Méthodologie et Planification ................................................................................. 13
Stratégie Générale........................................................................................................................................................... 13
Découpage en lots ........................................................................................................................................................... 13
Planification....................................................................................................................................................................... 13
Livrables associés au projet ........................................................................................................................................ 15
Jalons .................................................................................................................................................................................... 15
Pilotage et suivi ................................................................................................................................................................ 15
4.
Description de la mise en œuvre du projet ............................................................... 16
Interdépendances des lots et tâches ....................................................................................................................... 16
Description des lots........................................................................................................................................................ 17
Résumé de l’effort ........................................................................................................................................................... 23
Gestion du risque ............................................................................................................................................................ 25
5.
Participants ............................................................................................................. 26
Arnaud TANGUY (SI5 - VIM)....................................................................................................................................... 26
Andrew COMPORT (I3S-CNRS) ................................................................................................................................. 26
Bibliographie .................................................................................................................. 27
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY 3
1. Description du Projet
Contexte de travail
Le projet sera mené en collaboration avec le laboratoire I3S-CNRS et l’université
de Nice Sophia-Antipolis. L’objectif principal sera de développer, en collaboration avec le
laboratoire I3S-CNRS de Sophia-Antipolis, des logiciels de démonstrations de leurs
algorithmes de réalité augmentée (mappages 3D, de navigation, et d’intégration d’objets
virtuels). Pour ce faire, une couche logicielle devra lier une caméra RGBD en lien avec
un head-mounted display (écran placé directement devant les yeux) avec leurs
algorithmes. Cela permettra de réaliser des applications de réalité augmentée en temps
réel très réalistes.
Le projet étant très dépendant des technologies utilisées, le développement se fera
majoritairement dans les laboratoires de l’I3S, où le matériel est disponible. De plus, cela
permettra d’être en relation directe avec l’équipe de recherche et ainsi profiter de leur
expertise.
Motivations
Les problèmes d’intégration d’objets virtuels avec des scènes du monde réel
existent depuis longtemps. C’est notamment une problématique très fréquente dans le
domaine cinématographique. Leur besoin c’est fait sentir très rapidement après
l’invention du cinéma, et beaucoup d’effort a été dépensé afin de fournir des effets
toujours plus bluffant. Avant la naissance du cinéma numérique, les effets consistaient
principalement en des techniques simplistes de stop-motion, consistant à créer l’image
frame par frame en prenant judicieusement des clichés de l’action. C’est par exemple le
cas des anciens films Star Wars. Avec l’avènement du cinéma numérique, les techniques
de trucage ont considérablement évolué. Il est désormais possible, à partir d’une vidéo
de l’action et de divers capteurs, d’ajouter et animer des objets virtuels (décors,
personnages, robots…) se fondant naturellement avec les objets réels. Il suffit de penser
au film Avatar pour se faire une idée de l’étendue possible de tels effets. Comme vous
pouvez vous l’imaginer, de tels effets reposent sur des technologies onéreuses. De plus,
leur application est très contraintes : les films sont réalisés en conditions très
contrôlées : position des caméras connues, luminosité et éclairage contrôlés, fonds
verts…). Une vaste part des effets spéciaux sont de plus, manuellement retouchés en
postproduction.
Le projet vise à effectuer le même type de traitements vidéo, mais cette fois-ci
avec du matériel limité (capteurs vidéos et de profondeur RGBD) dans un
environnement sans contraintes, le tout en temps réel. Ainsi l’utilisateur d’un tel
système pourrait se déplacer en portant un diapositif d’affichage à tête haute (head-up
display), et observer en temps réel un monde modifié, dans lequel des objets virtuels
sont ajoutés à l’environnement. Si cela ne vous semble toujours pas ambitieux et
prometteur, voici une partie des étapes nécessaires pour atteindre un tel objectif :
- Détermination de la pose (orientation et position) de la caméra à partir des
images (vidéo et profondeur) acquise. Ceci est obtenu par une technique appelée
«Dense Visual SLAM » (1).
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY 4
-
Construction d’un modèle 3D de la scène s’améliorant au fur et à mesure des
déplacements de la caméra.
- Détecter automatiquement les positions des caméras
- Afficher des objets virtuels de manière réaliste, en gérant réflexions, réfractions,
ombrages.
- …
Atteindre un niveau de réalité augmentée en temps réel proche des résultats
cinématographiques serait idéal, et ouvrirait la voie à de nombreuses applications, dont
certaines seront décrites plus loin dans ce document.
Défis
Bien que les problèmes algorithmiques les plus difficiles aient été traités par
l’équipe de recherche de l’I3S-CNRS, un travail conséquent reste à effectuer. Des
algorithmes, aussi puissants soient-ils sont en soi inutiles sans applications concrètes.
Ainsi, le principal défi de ce projet sera de concrétiser le travail algorithmique effectué.
Dans un premier temps, il s’agit d’intégrer un capteur adapté à la réalité
augmentée sur head-mounted display, ce qui pose les problèmes classique de calibration
et représentation des données acquises.
Dans un second temps, il s’agit d’intégrer le travail précédent à leur bibliothèque de
traitement d’images et de développer des démonstrations (localisation, mapping…).
•
•
•
Défi 1 : Acquisition des données depuis le capteur Asus Xtion PRO live
o Sous-défi 1.1 : Acquisition des données
o Sous-défi 2.2 : Calibration de la pose entre capteur et écran
o Sous-défi 2.3 : Calibration des capteurs
Défi 2 : Affichage du flux RGBD du capteur sur l’affichage Heads-Up.
o Sous-défi 2.1 : Utilisation du driver OpenNI
o Sous-défi 2.2 : Affichage des 2 images côte à côte.
Défi 4 : Développement de démonstrations concrètes.
o Sous-défi 4.1 : Intégration avec leur bibliothèque
o Sous-défi 4.1 : Prise en main de leur bibliothèque
o Sous-défi 4.2 : Développement des démonstrations
Objectifs
L’objectif global est de permettre l’utilisation des algorithmes développés à l’I3SINRIA dans un cadre concret appliqué à la réalité augmentée avec head-up display.
•
•
•
Objectif 1 : Acquérir et afficher les données du capteur Asus Xtion PRO
live.
Objectif 2 : Utiliser les données du capteur afin de réaliser des actions de
réalité augmentée.
Objectif 3 : Fournir des démonstrations des algorithmes.
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY
5
Scénario(s)
Un projet de réalité augmentée de
de cette envergure fournit un panel de
possibilités extrêmement vaste. La simplicité des capteurs utilisés, ainsi que la
robustesse des divers algorithmes (tracking, mapping, éclairage) en conditions non
contrainte fait de cette libraire un candidat idéal à un nombre considérables
d’applications concrètes.
La vidéo (2) publiée
ée avec leur publication scientifique (1) fourni un bon point de
départ pour se fournir une idée des applications possibles de
de leurs algorithmes. La vidéo
est réalisée en tenant manuellement une caméra RGB-D
RGB D et en se promenant dans la
pièce. Au fur et à mesure, le modèle 3D de la pièce visualisé s’améliore, et des objets
virtuels sont placés de façon très réaliste sur le bureau. Les propriétés principales d’un
objet réel sont respectées : ombres, reflets, occlusions.
Figure 1 - Figure 1: Réflexions HDR (High Dynamic Range) avec projection d’ombres réalistes sur plusieurs
objets virtuels en temps réel.
Une fois combiné à un head
ead-up display,, un tel système pourrait être bénéfique dans de
nombreux domaines, notamment en :
• Chirurgie : de nombreux systèmes existent déjà pour entraîner et guider les
chirurgiens. Un tel système, affichant directement les informations
informations utiles sur un
écran toujours visible et en phase avec son regard pourrait s’avérer d’une grande
aide, et qui sait, potentiellement lui permettre de sauver des vies !
• Industrie : De nombreuses applications industrielles sont envisageables. Par
exemple,
mple, le domaine de l’aéronautique utilise dors et déjà des systèmes similaires
pour aider les techniciens à s’assurer de l’intégrité des coques d’avion.
• Mode, Art, Mobilier : Avec le nombre d’achat en ligne toujours plus importants, de
nombreuses entreprises
ises ont réfléchi à des manières d’améliorer l’expérience
pour le client.
Notamment, IKEA a mis en place un système de réalité augmentée (3)
fonctionnant sur Smartphone permettant de visualiser les meubles que
l’utilisateur envisage
nvisage d’acheter, afin qu’il puisse se faire une idée de la place
occupée ainsi que de leur apparence.
apparence
Cependant, ces systèmes restent très limités, et pourraient amplement profiter
d’illumination, réflexions et ombrages plus réalistes. Et si l’utilisateur
l’utilisateu a la chance
de posséder un head--up
up display, alors il aurait la possibilité de parcourir sa pièce
en observant le résultat comme si le meuble était présent !
6
STEREO PHOTOREALISTIC
C AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY
Figure 2 - Application IKEA de visualisation de
meubles
•
Loisirs : Avec la possibilité d’ajouter des éléments virtuels de manière réaliste
et fluide dans le monde réel, il devient possible de réaliser des jeux
relativement avancés. On pourrait par exemple imaginer avoir des
personnages virtuels parcourant le monde, des sortes de MMORPG (jeux de
rôle) où les quêtes consisteraient à trouver des objets virtuels dans le monde
réel…
Un tel système offre une myriade de possibilités ne demandant qu’à être saisies !
Critères de succès
Les critères de succès du projet sont assez pragmatiques et visuels. Il s’agit
principalement de s’assurer de la bonne correspondance entre la modélisation du
monde tel qu’acquise depuis le capteur Asus et le monde réel, puis ensuite de s’assurer
du bon fonctionnement des programmes de démonstration.
•
•
Critère 1 : Correspondance entre les données acquises par le capteur Asus
Xtion PRO live affichées sur le head-up display et les éléments réellement
présents dans la scène.
Critère 2 : Résultats probants sur des problèmes concrets de réalité
augmentée, tel l’ajout d’objets dans la scène, la localisation dans la scène…
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY
7
2. Etat de l’art
Description Générale
Avec la généralisation des capteurs RGBD, de nombreuses techniques
Le projet peut être découpé en deux grandes parties techniques. La première
concerne les problématiques de calibration de caméra. Pour un public non averti, cette
problématique pourrait sembler anodine, mais c’est tout sauf le cas !
La deuxième s’attache aux problèmes de réalité augmentée en tant que tel, à savoir
utiliser les capteurs nouvellement installés et calibrés en lien avec les algorithmes
développés à l’I3S-CNRS afin de fournir des démonstrations.
Le projet étant très dépendant des capteurs utilisés, je vais commencer la
description de l’état de l’art par un bref aperçu des capteurs utilisés. S’en suivra des
pistes quand aux problèmes de calibration, pour enfin décrire les questions de leur
intégration avec la bibliothèque algorithmique.
Capteur RGBD Asus Xtion PRO Live
Tout comme la Kinect, l’Asus Xtion PRO live permet de récupérer à la fois
l’information visuelle et de profondeur par le biais d’un capteur RGB-D. C’est ces deux
informations, combinées aux algorithmes développés à l’I3S qui permettra de réaliser
les applications de réalité augmentée voulue.
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY 8
Head-mounted display Sony HMZ-T1
Le Sony HMZ-T1 (4) est un head-mounted display, permettant de remplacer la
vision directe que nos yeux ont du monde par une vision modifiée numériquement par
des procédés de réalité augmentée.
Les 2 écrans de résolution 1280x720 sont de technologie OLED. Cette technologie
affiche la lumière sans nécessiter de rétro éclairage, permettant ainsi un meilleur rendu
des couleurs, notamment du noir. Ce type d’écran est également plus fin et léger qu’un
écran LCD plus classique. Cela en fait un candidat idéal dans le cadre d’une telle
application de réalité augmentée, représentant le monde de façon suffisamment réaliste
pour ne pas entraîner de gêne à l’utilisation.
Durant ce projet, je serai amené à manipuler ces technologies, ainsi que les
algorithmes développés par l’équipe de l’I3S-CNRS afin d’exploiter aux mieux leur
capacités.
Acquisition et calibration
La calibration, aussi appelée étalonnage est une étape essentielle dans tout dispositif de
vision. C’est cette étape qui permet de s’assurer de la cohérence de la représentation
entre les données acquises et le monde réel.
Dans la littérature scientifique, divers documents décrivent la calibration de ce type de
capteurs.
Auto-calibration du capteur de profondeur:
Pour voir l’avantage d’une calibration automatique, il suffit de se mettre à la place d’un
utilisateur lambda du système. Une calibration traditionnelle implique généralement
d’imprimer un damier, de le fixer à une surface rigide, puis de prendre une grande
quantité d’images du damier dans diverses poses afin de fournir suffisamment de points
de référence pour pouvoir en déduire les paramètres de calibration. C’est une tâche très
laborieuse, ainsi l’éviter serait un avantage considérable !
C’est là qu’intervient la méthode d’auto-calibration basée sur la technique SLAM
(simultaneous localization and mapping), décrite dans le document (5). Leur méthode
utilise la distorsion des capteurs RGBD à distance supérieure à 3m afin de déduire les
paramètres de calibration.
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY
9
Grâce à cette technique, il est possible de calibrer les capteurs à partir de quelques
minutes d’enregistrement de l’environnement, ce qui est tout de même bien plus simple
qu’une calibration traditionnelle !
Calibration supervisée du capteur RGB:
Quand à lui, le capteur RGB doit être calibré manuellement. Cela peut se faire par le biais
de méthodes usuelles de calibration. Lors de l’étape de calibration, un damier est placé
face au capteur dans diverses positions, et les paramètres de calibration sont calculés en
détectant et redressant le damier.
Il existe un projet RGBDToolkit (6), fournissant des outils de calibrations pouvant être
utilisés avec n’importe quel capteur RGBD. Ce projet est fourni avec une documentation
détaillée de la calibration manuelle.
Alternativement, l’année dernière durant un cours de réalité augmentée au Trinity
College Dublin, nous avons développé un programme de calibration de webcams RGB.
Ce code pourrait être sans souci adapté pour la calibration RGB de la caméra RGBD.
Dépendant des souhaits de mon encadrant, une calibration automatisée intégrée à leur
suite logicielle, ou bien une calibration manuelle utilisant des outils existants sera
fournie.
Affichage des données sur l’head-mounted display
Une première étape du projet consiste à permettre la visualisation directe des
données du capteur sur les écrans du Sony HMZ-T1. Cela peut se faire en trois étapes :
- Utiliser le driver OpenNI afin d’acquérir le flux RGB-D provenant du capteur Asus.
- Créer deux nouvelles images (œil gauche et droit) à partir de ce flux. Lorsque
nous regardons le monde, nos yeux captent chacun une image différente. C’est
notre cerveau qui, en analysant les deux images interpole les informations de
profondeur
selon
un
processus
de
vision
stéréoscopique.
Ne possédant qu’une seule caméra RGB sur l’Asus Xtion pro live, il nous faut donc
modifier les images afin de simuler une vision correcte pour chaque œil. En
pratique, cela revient à appliquer au flux une fonction de déformation différente
pour chaque œil afin d’obtenir une image pouvant être comprise par le cerveau.
10 STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY
Figure 3 - Exemple de deux images stéréoscopiques (note : en louchant légèrement pour supperposer les deux
images, vous pouvez la voir en 3D).
-
Afficher les deux images côte à côte sur le head-up display.
L’idéal serait de pouvoir utiliser la fonctionnalité stéréo du standard HDMI 1.4.
Cependant, cette fonctionnalité n’est supportée que par les cartes Nvidia Quatro
sous GNU/Linux. Il ne nous sera donc malheureusement impossible de l’utiliser.
Nous nous reporterons donc sur une fonctionnalité logicielle d’OpenGL : le sideby-side mode, permettant d’obtenir le même résultat.
L’année dernière, les étudiants en vision de quatrième année de sciences
informatiques à Polytech’Nice-Sophia ont développé un système affichant les données
d’un capteur RGBD avec OpenGL. Ce système pourra être utilisé comme base et modifié
pour tenir compte de l’aspect stéréo.
Intégration avec leur bibliothèque
L’équipe de l’I3S-CNRS a développé une suite algorithmique permettant
d’exploiter au mieux les possibilités des caméras RGDB dans le cadre de la réalité
augmentée. Le développement des démonstrations étant fortement basé sur les
possibilités de cette librairie, il est important d’en exposer les principales
caractéristiques.
Grâce à leur travail (1), il est possible de générer une carte environnementale 3D HDR
(High Dynamic Range : technique consistant à enregistrer l’intensité lumineuse encodée
sur plus de 8 bits afin d’enregistrer des informations plus précises sur les flux
lumineux). Cette technique permet de s’affranchir des sondes de lumières ou de
l’observation des surfaces réflectives. Cela permet de conserver un réalisme important
des objets virtuels, tout en permettant une grande liberté de mouvement (voir Figure 1).
De plus, il est possible d’estimer la pose de la caméra, permettant de connaitre sa
position dans l’environnement. Cela permet de conserver les objets virtuels à la position
voulue, et de correctement calculer les conditions d’éclairage.
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY
11
Grâce à ces techniques, il est possible d’ajouter des objets virtuels bluffant, supportant
réflexions, réfractions et ombres !
Toutes ces fonctionnalités, une fois intégrées avec un head-mounted display offriront
une base de travail considérable permettant de réaliser des programmes de
démonstration.
12 STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY
3. Méthodologie et Planification
Stratégie Générale
La stratégie de développement utilisée est une stratégie agile itérative. Le
développement agile est une méthodologie de développement flexible. Elles impliquent
au maximum le client, permettant une grande réactivité face à ses attentes. Un projet de
type recherche, est, par nature est amené à évoluer, une stratégie flexible et efficace est
donc primordiale.
Pour ce projet, une stratégie de type « Extreme Programming » sera adoptée. Ce choix
s’est imposé de lui-même au vu de la structure du projet, nécessitant des tests fréquents
en lien avec l’équipe de recherche.
Le projet suit les phases usuelles d’un projet de recherche. Tout au long du projet
une étude bibliographique sera menée afin de se renseigner sur les solutions existantes.
Les solutions étudiées seront discutées avec l’encadrant afin de juger de leur pertinence
et d’éviter de partir dans une mauvaise direction. S’en suivra une phase de
développement durant laquelle les capteurs seront installés, configurés et intégrés au
head-mounted display. Une fois cette phase testée et fonctionnelle, le projet continuera
en s’intéressant au développement d’applications concrètes du système. Ces
applications n’ont pas encore été clairement définies, cela sera fait en collaboration avec
mon encadrant durant les premières phases du projet. Le développement des
applications sera probablement le moment ou la technique d’Extreme Programming
sera la plus cruciale. Les démonstrations programmées sont très dépendante des
algorithmes développés par l’équipe de l’I3S, aussi, être en contact fréquent avec eux
permettra d’éviter de nombreux problèmes de compréhension et d’utilisation de leurs
outils.
Découpage en lots
Tableau 1 - Liste des Lots
#
L1
L2
L3
L4
L5
L6
L7
Titre du lot
Management du projet
Recherche bibliographique
Installation et calibration du capteur
Asus Xtion pro live
Affichage des données du capteur
Intégration à la bibliothèque de l’I3S
Implémentation des démonstrations
Présentation orale
Type
MGMT
RECH
RECH/IMPL
Leader
TANGUY
TANGUY
TANGUY
Budget
56h
20h
24h
Début
S1
S1
S7
Fin
S21
S21
S7
IMPL
IMPL
IMPL
TANGUY
TANGUY
TANGUY
TANGUY
Total :
20h
S7
30h
S8
150h
S8
12h
S21
[316h/étudiant]
S7
S8
S20
S21
Planification
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY 13
#
L1
1.1
1.2
L2
L2.1
L2.2
L3
L4
L5
L6
L7
Lot / Tâche 01
Manageme
nt
du
projet
Planificatio
n
Suivi
du
projet
Recherche
Recherche
bibliograph
ique
Rapport
Installalatio
n
et
calibration
Affichage
des
données
Intégration
Développe
ment des
démonstrat
ions
Présentatio
n
02
03
04
05
06
07
08
09
10
11
12
Figure 4 - Diagramme de Gantt
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY 14
13
14
15
16
17
18
19
20
21
Livrables associés au projet
Tableau 2 - Liste des livrables
#
D1.1
D1.2
D1.3
D2.1
D3.1
D4.1
D5.1
D6.1
D6.2
D6.3
Titre du livrable
Cahier des charges (DOW)
Rapport de Management (MGMT)
Diaporama de présentation finale
Rapport de recherche
Documentation sur la calibration
Démonstration de l’affichage sur les écrans du heads up display
Intégration avec la base logicielle de l’I3S
Spécification des démonstrations
Démonstrations
Vidéo et rapport final
Lot
1
1
1
2
3
4
5
6
6
6
Nature
DOC
DOC
DOC
DOC
DOC
LOG
LOG
DOC
LOG
DOC
Date
S4
S21
S21
Jalons
Tableau 3 - Liste des jalons
#
J1
J2
J3
J4
J5
Titre du jalon
Fin de la phase de planification initiale du projet
Calibration
Affichage sur le Sony HMZ-T1
Intégration avec le code de l’I3S
Programmes de démonstration
Lot(s)
1
3
4
5
6
Date
S4
S7
S7
S8
S20
J6
J7
Vidéo de démonstration et rapport final
Présentation
6
7
S21
S21
Vérification
D1.1 livré.
D3.1 livré.
D4.1 livré.
D5.1 livré.
D6.1 et D6.2
livrés.
D6.3 livré.
D1.2 et D1.3
livrés.
Pilotage et suivi
Une grande partie du travail sera réalisée directement dans les laboratoires de
l’I3S, en collaboration directe avec leur équipe. Des itérations quotidiennes sont donc
envisageable, en fonction des disponibilités de mon encadrant.
Les réunions essentielles au bon déroulement du projet concerneront :
- La prise en main du matériel (S5).
- La démonstration de l’affichage sur head-up display. (S7)
- Une réunion d’information concernant l’intégration avec la bibliothèque de l’I3S
(S8)
- Une ou plusieurs réunions afin de réaliser un cahier des charges des
démonstrations à développer. (S9)
- Des réunions hebdomadaires afin de s’assurer du bon déroulement du
développement. (S9-S20)
- Une réunion de présentation des résultats du développement.
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY 15
4. Description de la mise en œuvre du projet
Interdépendances des lots et tâches
T3.1 Installation
T1.1 - DoW
T2.1 Recherche
D1.1
T3.2 Acquisition
T2.2 – Rapport
T1.2
Management
T3.2 Calibration
Lot 1 Management
Lot 2 – Recherche
bibliographique
Lot 3 - Capteurs
D3.1
T6.1 –
Spécification
T5.1
Spécification
T4.1 Recherche
D6.1
T4.2 Affichage
D4.1
T5.2
Implémentation
Lot 4 – Affichage
sur Sony HMZ-T1
D5.1
Lot 5 - Intégration
T6.2
Implémentation
Lot 6 Applications
D1.2
D2.1
T7.1 Préparation
à l’oral
D1.3
T7.2 Oral
Lot 7
FIN
Figure 5 - Interdépendances entre lots et tâches
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY 16
Description des lots
Identifiant
Titre
Type
Participant
Effort
L1
Date de démarrage
Management : élaboration du DoW
MGMT
Arnaud TANGUY
60h
S1
Objectifs du lot
Ce lot a pour but la bonne gestion du projet.
Rédaction du DoW : Ce document sert de fil conducteur au projet, définissant
clairement les objectifs et le temps estimé à passer sur chaque action.
Collaboration avec l’équipe de recherche
Description du lot
Ce lot de management est composé de deux tâches : la rédaction du DoW (étape de
planification), et le suivi du projet.
Tache L1.1 : Planification – rédaction du DoW (TANGUY, S1-S4, 48h)
La rédaction du DoW est une étape importante de management pour mener à bien le projet.
Durant cette période, il s’agit d’étudier les tâches à effectuer afin de bien définir le projet et
d’estimer le temps à répartir pour chaque étape du projet. Les risques sont également à
évaluer afin d’être préparé à faire face au plus d’imprévus possibles.
Cette tâche donne lieu à un rendu sous forme d’un cahier des charges.
Il s’agit d’étudier les tâches à effectuer et à les organiser au mieux pour mener le projet à
bien. Durant cette période, on doit étudier ce qui a déjà été fait dans le domaine d’étude et
chercher les techniques que l’on peut mettre en oeuvre afin d’évaluer le temps à répartir
pour chaque étape du projet et les risques qui peuvent perturber l’obtention des résultats
escomptés.
Tache L1.2 : Suivi du projet (TANGUY, S6 – S21, 12h)
C’est le temps consacré au management continu du projet. Une méthode de développement
agile ayant été choisie, ce suivi se fera au fur et à mesure du projet. Cela consiste à s’assurer
du respect des objectifs et délais, à prendre en compte les remarques du client, à effectuer
un suivi du projet (rapport de réunion, temps de travail…).
Cette tâche donnera lieu à un rapport de management rendant compte des changements
apportés durant la mise en œuvre du projet.
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY 17
Livrable
Livrable [DOC] : Cahier des charges (TANGUY, MGMT, 10/11/2013)
Le cahier des charges décrit le projet, ses objectifs principaux, les pistes techniques
principales (état de l’art). Il établit également une planification des tâches à réaliser.
Livrable [DOC] : Rapport de management (TANGUY, MGMT, 05/03/2014)
Dans ce livrable, nous ferons un comparatif entre l’organisation établie initialement
pendant la phase de planification avec ce que nous avons réellement fait, afin
Identifiant
Titre
Type
Participant
Effort
L2
Recherche bibliographique
RECH
Arnaud TANGUY
20h
Date de démarrage
S1
Objectifs du lot
Il est important de se tenir au courant des solutions existantes. Effectuer une recherche
bibliographique approfondie permet de trouver des documents de littérature résolvant des
problèmes proches de la problématique du projet. On peut ainsi décider s’il est nécessaire
de proposer une nouvelle solution, ou si une solution existante est suffisante.
Description du lot
Tache L2.1 : Recherche (TANGUY, S1-S21, 15h)
Etape de recherche : lecture de documents scientifiques.
Tache L2.2 : Rédaction du rapport (TANGUY, S21, 5h)
Rédaction d’un rapport expliquant le travail effectué sur tous les documents précédent.
Livrable
Livrable [DOC] : Rapport de recherche (TANGUY, RECH, 10/11/2013)
Identifiant
Titre
Type
Participant
Effort
L3
Date de démarrage S5
Installation et calibration du capteur Asus Xtion pro live
RECH/IMPL
Arnaud TANGUY
24h
18 STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY
Objectifs du lot
Le laboratoire de recherche à l’I3S dispose d’un head-mounted display Sony HMZ-T1 et
d’un capteur RGDB Asus Xtion Pro live. Ce lot consiste à les combiner :
Installation de la caméra RGBD sur le HMZ-T1 en utilisant une monture GoPro
Mesure de la pose entre la caméra et le HMZ-T1. Cela donnera lui à une
recherche pour déterminer s’il existe de meilleurs outils de calibration qu’une
mesure manuelle de la pose.
Acquisition des données par le biais de driver OpenNI.
Calibration : Cette phase donnera lieu à une recherche sur les techniques d’autocalibration, ainsi que les outils de calibration traditionnels afin de déterminer la
meilleure solution applicable au matériel disponible.
Description du lot
Tache L3.1 : Installation de la caméra RGBD sur le HMZ-T1 (TANGUY, S5, 2h)
Le Sony HMZ-T1 n’est qu’un head-mounted display, se contentant d’afficher l’image en
stéréo. Il s’agit ici de monter la caméra RGBD Asus sur le dispositif afin de pouvoir
utiliser le dispositif de vision simultanément aux écrans.
Il faudra également s’assurer de la possibilité de détermination de la pose entre la
caméra RGBD et les écrans. Deux pistes sont à explorer : la mesure directe, ou
l’élaboration d’un algorithme.
Tache L3.2 : Acquisition des données par le biais de driver OpenNI (TANGUY, S5, 2h)
La première étape avant de pouvoir commencer une quelconque étape de
développement est de faire fonctionner le matériel d’acquisition Asus sous GNU/Linux.
Pour ce faire, le driver OpenNI devra être installé et configuré. Une micro-application
sera écrite pour tester l’acquisition (simple affichage des données avec OpenCV par
exemple).
Tache L3.3 : Calibration (TANGUY, S5-S7, 20h)
Il s’agit ici de poursuivre la recherche bibliographique entamée lors de la rédaction de
l’état de l’art. Cette étape résultera soit en l’écriture d’un programme de calibration, soit
en la rédaction d’un document expliquant rigoureusement les étapes de calibration.
Livrable
Livrable [DOC] : Documentation sur la calibration (TANGUY, RECH, S6)
Ce document décrira la méthode à suivre pour calibrer la caméra RGBD Asus Xtion pro live.
Il sera, si besoin est accompagné d’un programme de calibration.
Le document sera également accompagné des paramètres de calibration pour le Asus Xtion
présent au laboratoire de l’I3S, paramètres qui seront utilisés dans les applications futures.
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY
19
Identifiant
Titre
Type
Participant
Effort
L4
Date de démarrage
Affichage des données du capteur
RECH/IMPL
Arnaud TANGUY
20h
S8
Objectifs du lot
Le but est d’afficher l’image mono récupérée par la caméra de l’Asus Xtion sous forme
de deux images correspondant à chaque œil. Il s’agit ici de modifier artificiellement le
point de vue de l’image par le biais de transformations géométriques (image wrapping).
Description du lot
Tache L4.1 : (TANGUY, S8, 5h)
Recherche des techniques permettant de modifier la perspective de l’image acquise afin
de simuler la vue qu’aurait chacun des yeux indépendamment.
Tache L4.2 : (TANGUY, S8, 15h)
Affichage des 2 images côte à côte sur le Sony HMZ-T1.
Cela constituera un livrable sous forme de démonstration. Le flux vidéo (image et
profondeur) du capteur devra être affiché correctement sur les 2 écrans du headmounted display.
Livrable
Livrable [LOG] : Programme d’affichage des données sur le Sony HMZ-T1
Ce programme permet de réaliser une démonstration de l’acquisition et affichage des
données.
Identifiant
Titre
Type
Participant
Effort
L5
Date de démarrage
Intégration à la bibliothèque de l’I3S
RECH/IMPL
Arnaud TANGUY
30h
S8
Objectifs du lot
Il s’agit d’intégrer le nouveau dispositif aux algorithmes existant de vision développés à
l’I3S-CNRS.
20 STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY
Description du lot
Tache L5.1 : (TANGUY, S9, 15h)
Se familiariser avec la base de code existante afin de trouver comment y intégrer mon
travail.
Tache L5.2 : (TANGUY, S9, 15h)
Implémenter effectivement l’intégration ainsi qu’une mini démo les faisant fonctionner
ensemble.
Livrable
Livrable [LOG] : Code permettant l’intégration du capteur Asus et de l’head-mounted
display Sony.
Livrable [DEMO] : Démonstration de l’intégration.
Identifiant
Titre
Type
Participant
Effort
L6
Date de démarrage
Implémentation de démonstrations
RECH/IMPL
Arnaud TANGUY
150h
S9
Objectifs du lot
Des algorithmes de réalité augmentée, aussi bons soient-ils, sont en soi peu utiles sans
programmes convaincant de démonstration pour les utiliser.
C’est ce que ce lot se propose de réaliser : implémenter quelques démonstrations de
réalité augmentée fonctionnant sur le head-up display.
Description du lot
Tache L6.1 : Définir les spécifications des démonstrations. (TANGUY, S9, 20h)
Pour le moment, les spécifications exactes des démonstrations à implémenter n’ont pas
été définies. Il faudra donc réserver un temps à leur planification.
Tache L6.2 : Implémentation des programmes de démonstration. (TANGUY, S9-S21,
130h)
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY
21
Livrable
Livrable [DOC] : Spécification des démonstrations
Livrable [LOG] : Démonstrations fonctionnant sur l’head-mounted display (TANGUY, ???)
Livrable [DEMO] : Vidéo mettant en valeur les démonstrations précédentes.
Identifiant
Titre
Type
Participant
Effort
L7
Présentation orale
RECH/IMPL
Arnaud TANGUY
12h
Date de démarrage
S21
Objectifs du lot
Une fois le projet terminé, il sera présenté oralement à un jury. Le but de ce lot est de
planifier le temps pour s’y préparer.
Description du lot
Tache L8.1 : Création de la présentation (TANGUY, S21, 10h)
Tache L8.2 Soutenance
22 STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY
Résumé de l’effort
Tableau 4 - Résumé de l'effort
Arnaud TANGUY
L1 – Management
T1.1 – Planification
T1.2 – Suivi de projet
48
12
Sous-Total (h) : 60
L2 - Recherche
L2.1 – Recherche bibliographique
L2.2 – Rapport de recherche
Sous-Total (h) :
L3 – Installation et calibration
L3.1 – Installation physique
L3.2 – Utilisation du driver OpenNI
L3.3 - Calibration
Sous-Total(h) :
L4 - Affichage
L4.1 – Recherche
L4.2 – Implémentation de l’affichage
Sous-Total(h) :
L5 – Intégration à la bibliothèque de l’I3S
L5.1 – Familiarisation avec le code
L5.2 – Intégration
Sous-Total(h) :
L6 – Développement des démonstrations
L6.1 – Spécifications
L6.2 – Développement
Sous-Total (h) :
L7 – Présentation orale
Sous-Total (h) :
Total (h) :
15
5
20
2
2
20
24
5
15
20
15
15
30
20
130
150
12
12
316
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY 23
Effort / lot
Effort / type
L1 Management
L2 - Recherche
12
L3 - Calibration
21
40
60
L4 - Affichage
RECH
80
IMPL
20
24
150
MGMT
L5 - Intégration
20
DEMO
175
30
L6 Développemen
t
L7 Présentation
Figure 6 - Répartition
partition de l'effort par lot
Figure 7 - Répartition
partition de l'effort par type
24 STEREO PHOTOREALISTICC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY
Gestion du risque
Tableau 5 - Table de gestion des risques
Description
Probabilité
Risque humain
Faible
Difficulté
à Faible
faire
fonctionner le
driver OpenNI
Problème
de Moyenne
calibration
Difficulté
Faible
d’affichage sur
le
heads-up
display
Problèmes
Moyenne
d’intégration à
la bibliothèque
de l’I3S
Difficultés de Moyenne
développement
des
démonstration
s
Conséquence Impact
s
Charge
de Retard
travail moins
bien répartie
Plus de travail Retard
Cause
Plus de travail Retard
Mauvaise compréhension de la
Recherche
calibration, problèmes avec les
logiciels.
Problème avec la transmission
Recherche.
stéréo HDMI, difficultés à
générer des images adaptées à
chaque œil.
Difficulté de compréhension En
discuter Collaboration avec l’équipe de l’I3S
du code et algorithmes avec l’équipe
existant.
de l’I3S
Plus de travail Retard
Mise en place Retard
d’une réunion
avec l’équipe
pour
résoudre la
situation.
Plus
de Retard
travail,
recherche de
solutions
Évitement
Résolution
Maladie, Accident…
Travailler plus les autres jours afin de
compenser le temps perdu.
Problème logiciel
Faire des recherches, c’est un driver usuel,
la solution ne devrait pas être dure à
trouver
Difficulté
d’implémentation Recherches et Recherche et test de solution.
des algorithmes de réalité tests
augmentée.
algorithmiques
préalables.
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY 25
5. Participants
Arnaud TANGUY (SI5 - VIM)
Etudiant à Polytech’Nice-Sophia en sciences informatiques, section VIM (Vision Image et
Multimédia).
Durant l’année 2012-2013 j’ai étudié au Trinity College Dublin. Cela m’a permis de
travailler sur de nombreux projets dans des domaines très fortement liés à ceux présent
dans ce projet :
- Réalité augmentée : réalisation de deux mini-jeux (un jeu 2D et un 3D) utilisant
une webcam pour détecter les informations utiles.
- Moteur physique : écriture d’un moteur physique 3D gérant particules, forces,
collisions.
- Simulation de fluide : écriture d’un moteur de simulation de fluide euclidien. Ce
moteur est intégré avec le projet précédent de moteur physique, et donc réagit
aux actions d’autres objets.
- Rendu en temps réel : Réalisation de nombreux mini-projets basés sur les
techniques d’illumination. Implémentation d’un rendu de réflexion-réfraction à
travers 2 interfaces semi-transparentes.
s projets de vision par ordinateur, de réalité augmentée (avec notamment la réalisation
de deux petits jeux).
Cette année m’a ainsi permis de travailler dans mes domaines informatiques de
prédilection : la vision par ordinateur et le rendu 3D en temps réel. Cette expérience me
sera très profitable dans le cadre de ce projet.
Andrew COMPORT (I3S-CNRS)
Andrew COMPORT est chargé de recherche première classe (CR1) au Centre National de
Recherche Scientifique (CNRS). Ses recherches concernent les systèmes de vision pour la
robotique, et en particulier les problèmes de vision basés sur la localisation et
modélisation de la scène. Ces sujets d’intérêts sont multiples : visual odometry
(détermination de position et d’orientation), visual SLAM (utilisé en robotique pour
construire un modèle d’un environnement inconnu), dense visual mapping…
Ce projet est dans la continuité de projets déjà entrepris par l’équipe d’Andrew Comport.
Il consiste en effet à intégrer de nouveaux capteurs dans leur système de réalité
augmentée. Cela leur permettra de continuer d’avancer dans leur recherche.
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY 26
Bibliographie
1. Maxime Meilland, Christian Barat, Andrew Comport. 3D High Dynamic Range
Dense Visual SLAM and its application to Real-time Object Re-lighting. International
Symposium on Mixed and Augmented Reality (ISMAR). 2013.
2. Comport, Andrew. ISMAR 2013 Paper video.
3. Deschamps, Thibault. Réalité Augmentée : Ikea meuble l'intérieur avec un
smartphone.
http://www.itespresso.fr/realite-augmentee-ikea-meuble-interieursmartphone-66941.html. [En ligne] 08 08 2013. [Citation : 04 11 2013.]
4. Hollister, Sean. http://www.theverge.com/2011/11/10/2552518/sony-hmz-t1personal-3d-viewer-review. [En ligne] 10 11 2010. [Citation : 04 11 2013.]
5. Unsupervised intrinsic calibration of depth sensors via SLAM. Alex Teichman, Stephen
Miller, Sebastien Thrun. s.l. : Robotics: Science and Systems (RSS), 2013.
6.
McWilliams,
Andrew.
RGBDToolkit
Calibration
Tutorial.
http://www.jahya.net/blog/?2013-08-rgbdtoolkit-calibration-tutorial. [En ligne] 10 08
2013. [Citation : 05 11 2013.]
STEREO PHOTOREALISTIC AUGMENTED REALITY USING A HEAD MOUNTED DISPLAY 27