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