LEAP Motion et visualisation 3D vrml - I3S
Transcription
LEAP Motion et visualisation 3D vrml - I3S
1 LEAP Motion et visualisation 3D vrml Résumé Exécutif Notre objectif est de réaliser un logiciel multimédia, pilotable grâce au Leap Motion (technologie permettant d'interagir avec son ordinateur grâce à ses mains). Outre les médias classiques (sons, image, vidéos), ce dernier intégrera un viewer d’objets 3D crées à partir de bases de données externes, présentant à son utilisateur des informations sur la région dans laquelle il se trouve. Deux axes principaux composent ce projet : ● Concevoir un viewer permettant de naviguer et interagir avec divers objets. ● Afficher un modèle 3D regroupant différentes informations collectées dynamiquement. Ce viewer permettra de naviguer dans le contenu qui y est présenté (sous forme de vidéos, images, modèles 3D). Ce contenu est corrélé au lieu géographique défini auparavant. Son interface sera simple pour permettre une utilisation par un large public. L’une des utilisations possibles est de mettre ce dispositif à disposition des visiteurs d’un office de tourisme sous forme d’écran de diffusion pour leur permettre de visualiser différentes informations relatives à la région. Lorsque nous voudrons afficher une carte ou un tracé GPS à l’écran, la partie de la carte concernée sera affichée sous la forme d’un modèle 3D qui comportera éventuellement un tracé GPS dynamique. Cet objet 3D pourra aussi être drapé avec diverses données externes qui seront insérées sur le modèle avec une prise en compte des coordonnées géographiques. Cette expérience devrait s’avérer enrichissante car cette technologie qu’est le Leap Motion est nouvelle et innovante. En effet, cet appareil a fait son apparition durant l’été 2013. C’est donc une chance pour nous de mettre nos connaissances en application sur une technologie d’avenir. 2 LEAP Motion et visualisation 3D vrml Abstract Our goal is to develop a Leap Motion-driven multimedia software. The user interacts with the program by moving his hands. It will display classic medias such as pictures, play sounds and will also handle 3D objects created thanks to externals databases. The displayed information will depend on the location of the user. There is two main phases in this project : ● Build a graphical interface used to display and manipulate simple objects on the screen. ● Display a 3D model dynamically composed with many information. This viewer should allow the user to navigate through the presented content such as: videos, pictures, map, GPS trace-log, etc. The content is related to the graphical region depending on its location. Our aim is to build a simple and accessible interface to allow a wide variety of people to use it efficiently without previous knowledge about how to interact with it. The final product could be placed in institutions like tourism agencies where passer-by would be able to use it. When someone wants to display a map or a GPS tracelog on the screen, the associated part of the map will be displayed thanks to a 3D model, and eventually some interactive GPS tracelog. Some external data will also be added to the model depending on the part of the map that will be displayed. It will be for us a great experience to use this very new technology. Indeed the Leap Motion device has just been released since the beginning of July 2013. As a consequence, it is a chance for us to apply what we learned on a technology with a hopeful future. 3 LEAP Motion et visualisation 3D vrml Table des matières 1 Description du projet...................................................................................................5 1.1 Contexte de travail...................................................................................................5 1.2 Motivations..............................................................................................................5 1.3 Défis.........................................................................................................................6 1.4 Objectifs...................................................................................................................7 1.5 Scénario(s)..............................................................................................................7 1.6 Critères de succès...................................................................................................8 2 État de l'art..................................................................................................................9 2.1 Description Générale...............................................................................................9 2.2 EyeToy/Playstation Eye...........................................................................................9 2.3 Kinect.......................................................................................................................9 2.4 Le Leap Motion......................................................................................................10 2.5 Viewer VRML et multimédia..................................................................................11 2.6 Les moteurs 3D.....................................................................................................11 2.7 Google Earth.........................................................................................................11 2.8 Google Maps.........................................................................................................11 2.9 Les Bases de connaissances................................................................................12 3 Méthodologie et planification....................................................................................13 3.1 Stratégie générale.................................................................................................13 3.2 Découpage en lots.................................................................................................13 3.3 Planification...........................................................................................................15 3.4 Livrables associés au projet..................................................................................17 3.5 Jalons....................................................................................................................17 3.6 Pilotage et suivi.....................................................................................................17 4 Description de la mise en œuvre du projet..............................................................18 4.1 Interdépendances des lots et tâches....................................................................19 4.2 Description des lots...............................................................................................20 4.3 Résumé de l’effort.................................................................................................31 4.4 Gestion du risque Tableau 5 - Table de gestion des risques................................33 5 Participants...............................................................................................................34 5.1 Gwenn Aubert (SI5 - IHM).....................................................................................34 5.2 Bastien Maureille (SI5 - IHM)................................................................................34 5.3 Gaspard Perrot (SI5 - KIS)....................................................................................34 5.4 Kevin Rocher (SI5 - IHM)......................................................................................34 5.5 Eric Bailly (Université de Nice-Sophia Antipolis)...................................................35 6 Bibliographie et références.......................................................................................36 4 LEAP Motion et visualisation 3D vrml 1 Description du projet 1.1 Contexte de travail Nous devons créer une application multimédia qui devra afficher un modèle 3D représentant une zone géographique à la manière d’un Google Earth. Le modèle pourra être manipulé de manière très interactive à l’aide d’un Leap Motion. Le système doit également être accessible au grand public et utilisable sans temps d’apprentissage préalable. Le Leap Motion est un système composé de capteurs permettant de contrôler un ordinateur avec les mains, sans contact. Il fonctionne sur le même principe que la Microsoft Kinect et a pour but de remplacer la souris. Dans notre cas, il permettra la manipulation d’objets 3D. De nombreuses applications démontrant ses capacités sont disponibles sur Airspace, la boutique d’applications en ligne qui lui est dédiée. Nous devons aussi gérer l’affichage de données externes liées au modèle en se basant principalement sur les coordonnées géographiques de la zone représentée. On utilisera un système d’ontologies qui permettra d’associer de manière automatique les données en rapport avec le modèle. On pourra par exemple utiliser des données tirées des articles de Wikipédia afin de proposer un service équivalent aux suggestions Google Maps qui affiche tout les points d’intérêt en relation avec la recherche de l’utilisateur (par exemple tous les magasins de chaussures à proximité de son domicile, avec image, nom et adresse positionnés sur la carte). 1.2 Motivations Les technologies telles que Leap Motion ont été développées dans le but d’améliorer l’expérience utilisateur, notamment dans le domaine de la modélisation 3D. Cette technologie très récente (distribution commencée en Août 2013) se présente comme un concurrent direct de Kinect en mettant en avant un contrôle ultra précis du mouvement des mains. Les technologies de visualisation 3D, regroupant les viewers ainsi que les éditeurs d’objets en trois dimensions, sont peu adaptées aux interfaces utilisateurs disponibles pour les PC de bureau classiques (on citera le célèbre couple clavier/souris). Cette technologie, développée dans les années 60, a été conçue pour améliorer le contrôle d’une interface à deux dimensions et fonctionne sur un plan 2D (la table sur laquelle la souris est posée). De même la généralisation des nouvelles interfaces tactiles ne résout pas le problème : les actions possibles sont toujours limitées à un plan 2D. C’est pourquoi une technologie telle que le Leap Motion, qui a la capacité de détecter les mouvements de l'utilisateur dans un espace en trois dimensions, contrairement aux interfaces actuelles, a toute sa place dans le développement des technologies 3D. 5 LEAP Motion et visualisation 3D vrml L’utilisation des ontologies et du web sémantique permet de relier tout un ensemble d’informations géographiques (comme des monuments historiques, des lieux-dits, etc.) grâce aux coordonnées géographiques de la zone représentée. De plus, la popularisation des smartphones équipés de capteur GPS permet à tout utilisateur de capturer une trace GPS représentant un parcours de randonnée ou un tour en vélo par exemple. Notre système pourra également permettre à ces utilisateurs de visualiser leurs tracés GPS sur un modèle 3D de la zone concernée. 1.3 Défis Dans un premier temps, il nous faudra apprendre à maîtriser la technologie Leap Motion (bien qu’elle soit très récente). N’étant disponible que depuis quelques mois, le Leap Motion est une technologie qu’aucun d’entre nous n’a eu l’occasion de tester. Ce sera donc une expérience totalement nouvelle et instructive pour chacun de nous. Il faudra également réussir à mettre en application tout ce que nous aurons appris sur le SDK (Software Development Kit, ou kit de développement logiciel) pour créer une interface fonctionnelle, mais aussi utilisable. De plus, ce projet comporte une grosse contrainte au niveau de l’interface : elle doit être claire et le plus simple d’utilisation possible car elle est destinée à un utilisateur non expérimenté et ne dois pas nécessiter d'apprentissage. Il nous faudra aussi gérer l’ensemble des données rattachées au modèle. Ces données (texte, images, vidéos, …) représentent toutes les informations que l’on voudra mettre à disposition du client et avec lesquelles il pourra interagir. Le défi est de pouvoir extraire et traiter les données présentes dans les fichiers puis de les mettre en relation avec le modèle malgré la multiplicité des formats dans lesquels elles sont enregistrées. Au terme de ce projet, il y aura énormément d’utilisateurs susceptibles d’utiliser notre logiciel (c’est du moins ce que nous espérons et nous mettrons tout en oeuvre pour que cela arrive). En conséquence, l’un des défis majeurs de notre projet est d’avoir un taux de satisfaction de plus de 85%, c’est à dire que l’application doit être intuitive et utilisable sans aucun apprentissage préalable. En résumé : ● Défi 1 : Prise en main du SDK Leap Motion ● Défi 2 : Développer une interface accessible, claire et compréhensible pour un utilisateur non-expérimenté (sans apprentissage) ● Défi 3 : Associer dynamiquement les données externes relatives 6 LEAP Motion et visualisation 3D vrml au données modélisées ● Défi 4 : Obtenir un taux de satisfaction supérieur à 85%. 1.4 Objectifs L’objectif principal de ce projet sera de manipuler des objets multimédias et des modèles 3D grâce au Leap Motion. L’objectif est de permettre l’utilisation de l’application dans un lieu public où beaucoup de personnes passent. L’utilisation d’un ordinateur aurait été trop pesante et peu attractive. C’est pourquoi cette nouvelle technologie semble une solution prometteuse. On s’appliquera ainsi à réaliser une interface permettant la manipulation d’objets multimédias et de modèles 3D avec le Leap Motion. En plus de l’affichage du modèle 3D, nous devons proposer à l’utilisateur la possibilité de voir des informations complémentaires liées au modèle. L’objectif est de créer une base de connaissances capable de supporter la pluralité des données. Ces données pourront être tirées de fichiers internes (données topologiques, images satellites, ...), de services accessibles depuis internet (dbpedia ou des sites spécialisés dans la géolocalisation) ou fournies par l’utilisateur (photos, vidéos, relevés GPS). Cette base de données devra pouvoir communiquer avec l’application de visualisation afin de supporter les différentes requêtes des utilisateurs. Enfin, il est primordial que nous nous adaptions à nos utilisateurs. Pour cela, il faudra développer une interface simple et compréhensible pour satisfaire et attirer le plus d’utilisateurs possible. C’est pourquoi il nous faudra particulièrement soigner l’ergonomie de l’interface finale. En résumé : ● Objectif 1 : Manipulation d’objets multimédias et de modèles 3D avec le Leap Motion ● Objectif 2 : Création d’un modèle 3D avec les données externes ● Objectif 3 : Facilité de prise en main 1.5 Scénario(s) Le projet servira dans des lieux publics comme les musées et les offices du tourisme afin de présenter une visualisation de données, notamment géographiques, de façon novatrice et interactive. Un visiteur pourra ainsi utiliser la plate-forme pour afficher 7 LEAP Motion et visualisation 3D vrml les données qui l’intéressent, comme par exemple des monuments à proximité, des tracés de randonnées, les pistes de ski dans une station de sports d’hiver, etc. Une fois que l’utilisateur a choisi un élément, il pourra visualiser les informations qui lui sont relatives par le biais d’articles, de vidéos, de photos, directement intégrées sur la carte 3D de la région. À partir du travail qui aura été fait nous serons également capables de décliner cette application pour d’autres types d’écrans de diffusion. On peut par exemple imaginer le cas d’un écran à l’entrée d’un bâtiment tel qu’un centre commercial présentant les différents magasins et leur position géographique dans un modèle 3D du bâtiment. Grâce à la récupération dynamique des informations liées au bâtiment on peut également afficher les nouveautés ou encore les promotions. 1.6 Critères de succès Dans un premier temps, nous devons afficher des objets multimédias ainsi que la représentation 3D d’une carte géographique. Pour y parvenir, il faudra que nous trouvions une technologie qui nous permette l’affichage de telles données sans être trop contraignante pour la suite du projet. Ensuite, il nous faudra interagir avec l’utilisateur grâce au Leap Motion. Pour réussir cette tâche, nous devrons en premier lieu bien assimiler l’API Leap Motion. Étant une technologie émergente, nous pensons que cela nécessitera un peu de temps pour bien la prendre en main. Il faudra aussi créer une ontologie capable de représenter au mieux les données qui seront traitées par le logiciel. Cette ontologie servira de vocabulaire de base pour la construction de requêtes vers la base de connaissances. Le système de visualisation devra transmettre les demandes utilisateurs à la base de connaissances qui retournera les données à afficher. Enfin, la validation de tous les critères précédemment cités n’est pas garante du succès de notre projet. En effet, ce dernier devra avoir une interface simple et facile à utiliser pour tous les types d’utilisateurs. Pour valider cet objectif, nous procéderons à des tests utilisateurs. Selon leurs suggestions, nous pourront la corriger, dans la mesure du possible, afin de rendre notre application plus facile et intuitive à utiliser. En résumé : ● Critère 1 : Affichage d’objets multimédias et de représentations 3D d’une carte ● Critère 2 : Commande du logiciel avec le Leap Motion ● Critère 3 : Intégration de données extérieurs relatives au lieu 8 LEAP Motion et visualisation 3D vrml ● Critère 4 : Création d’une interface facile à utiliser (statistiques mesurées sur une audience hétérogène) 9 LEAP Motion et visualisation 3D vrml 2 État de l'art 2.1 Description Générale Les nouveaux moyens d’interactions se basant sur l’utilisation de capteurs de mouvements se répandent de plus en plus. Il visent à simplifier les interactions avec les différents appareils informatiques. Dans cette perspective, ils sont de plus en plus mis à profit pour créer des écrans de diffusion. Dans le même temps, les technologies de visualisation et d’édition d’objets 3D, qui ont longtemps souffert des interfaces classiques (clavier, souris), commencent à voir naître des nouvelles interfaces basées sur ces capteurs de mouvements pour les rendre plus intuitives à l’usage. Les applications multimédias ont quant à elles de plus en plus d’informations à gérer (photos, vidéos, textes, ... ) et ces informations sont disponibles sous différentes formes. La gestion de l'hétérogénéité des données devient non négligeable et de nouveaux outils ont vu le jour. On notera plus particulièrement les bases de connaissances, principalement utilisées dans le web sémantique, fournissant un moyen efficace de lier des données hétérogènes. Cette section a pour but d’étudier les différentes technologies existantes dans les domaines précédemment cités et qui sont en rapport direct avec notre projet. 2.2 EyeToy/Playstation Eye L’EyeToy est une des premières technologies basées sur la reconnaissance de mouvements à avoir été commercialisées au grand public. L’EyeToy est une petite caméra destinée à être utilisée sur Playstation 2 qui détecte les personnes et leur mouvements dans son champ de vision. Elle n’est cependant pas capable d’apprécier la profondeur et se limite à la détection des mouvement dans un plan perpendiculaire à l’axe de son champ de vision. Cette technologie a ensuite évolué pour devenir le Playstation Eye sur PS3. Couplé avec le Playstation Move (une manette munie d’un accéléromètre ainsi que d’une boule lumineuse) il permettait de détecter la position de la main dans l’espace mais perdait un atout majeur en contrepartie : la détection de l’utilisateur sans avoir besoin de tenir un objet dans la main comme pour la Wii. 2.3 Kinect Suivant l’idée du contrôle de la console grâce à son corps, Microsoft a décidé de mettre en place une solution plus avancée de détection des mouvements. Leur appareil, la Kinect, est muni d’un projecteur infrarouge et de deux caméras permettant de repérer le corps d’une personne, ainsi que ses mouvements, dans l’espace. Cette technique se base sur les méthodes de reconstruction de scènes 3D à partir d’images. 10 LEAP Motion et visualisation 3D vrml La première caméra est une caméra RGB (Red Green Blue) qui permet de capturer les images comme une caméra classique. La seconde par contre est une caméra infrarouge qui, travaillant de paire avec le projecteur, permet de mesurer la profondeur des objets présent dans son champ de vision. La lampe infrarouge va emmètre une lumière infrarouge (invisible à l’oeil humain) qui va être renvoyée par tous les obstacles rencontrés. Plus l'objet sera loin et plus la quantité de rayonnement infrarouge réfléchie (renvoyée vers la caméra) sera faible. À l'inverse, plus l'objet sera proche et plus la quantité de rayonnement infrarouge réfléchie sera importante. De cette manière, on peut donc évaluer la distance tout objet présent. La Kinect dispose aussi de plusieurs microphones qui vont permettre d’utiliser de la reconnaissance vocale, ainsi que de détecter la localisation spatiale d’une source sonore. Malgré tous ces atouts la Kinect possède une précision limitée : du fait que le sol où se trouve la personne et les pieds de la personne elle-même sont à une distance identique, il est difficile de distinguer clairement les pieds de la personne. Il en est de même pour les doigts, étant très rapproché, ils sont difficiles à identifier. De plus son utilisation demande à l’utilisateur de se trouver à une distance de plus d’un mètre de l’appareil. Depuis février 2012, il est possible d’utiliser la Kinect sur un ordinateur. La nouvelle version de l’appareil, Kinect 2, sortira cette année en même temps que la Xbox One. La Kinect 2 est plus précise que sa version précédente, et permettre aussi de connaître l’orientation des membres du corps en mouvement ainsi que la force qui s’applique sur chaque membre du corps. De plus la Kinect 2 est prévue pour pouvoir suivra les mouvements de 6 personnes de façon simultanée. Le prix de vente de la Kinect et les limitations d’utilisation initiale (elle ne fonctionnait qu’avec une Xbox 360) ont freiné son adoption initiale. Cependant, la Kinect 2, qui sera livrée avec toutes les Xbox One, deviendra à n'en pas douter rapidement l’un des détecteurs 3D les plus adoptés au monde. 2.4 Le Leap Motion Le Leap Motion est équipé de deux led et trois caméras infrarouges qui analysent tous les mouvements de la main dans un rayon de 1 mètre, avec une très grande précision. Il est capable de détecter les doigts, les mains et les crayons en recréant un environnement 3D. Ce dispositif, en terme de performances, est bien plus précis que la Kinect. La Kinect est adaptée pour une utilisation à moyenne distance et va reconnaître le corps dans son ensemble. Le Leap Motion, quant à lui, est fait pour une utilisation plus spécifique tournée vers la reconnaissance des mouvements des mains de l’utilisateur. Il ne remplace cependant pas le clavier et la souris. C'est un outil complémentaire visant à améliorer l'expérience utilisateur et l'interaction avec l'ordinateur. 11 LEAP Motion et visualisation 3D vrml La boutique en ligne dédiée au Leap Motion, Airspace, voit le nombre d’application qu’elle propose grandir de jours en jours. On peut constater que quelques applications comme Cyber Science s’intéressent aux problématiques de visualisation d’objets 3D, dans ce cas la manipulation d’un squelette humain. Mais elles ne laissent pour le moment pas place à une évolution du contenu qu’elle proposent pour être applicable à toutes sortes d’autres objets. 2.5 Viewer VRML et multimédia À l’heure actuelle, la seule technologie capable de visualiser en même temps des objets VRML et multimédia sont les navigateurs web. Ils sont capable de visualiser toutes sortes de médias de base, mais pour visualiser un objet VRML, il faudra installer un plugin adapté. Mais pour le moment, le pilotage d’un navigateur web via le Leap Motion est assez compliqué. De plus, l’ergonomie de navigation entre les objets est très basique et non-adapté pour le Leap Motion. Il existe beaucoup de plugin VRML que l’on peut ajouter à n’importe quel navigateur comme par exemple, on peut par exemple citer Cortona3D Viewer. Ce viewer permet en plus de voir des objets VRML, d’afficher également des objets 3D. Un de ses avantages est qu’il est accessible aussi sur la plate-forme IOS. 2.6 Les moteurs 3D Un moteur 3D est un composant logiciel qui crée des images matricielles à partir de coordonnées tridimensionnelles. C'est un composant fréquent des moteurs de jeu. Ces moteurs permettent de gérer des objets 3D, mais aussi la plupart du temps, d’autres objets multimédia. L’un des moteurs 3D les plus connu est Unity3D. Principalement utilisé pour les jeux, il permet néanmoins de créer tout type de contenu 2D ou 3D interactif et donc d’afficher des modèles 3D et de draper d’autres types de contenus dessus. De plus c’est un moteur disponible sur de nombreux environnements, ce qui permet de facilement distribuer les applications crées à une très grande population d’utilisateurs. 2.7 Google Earth Google Earth est un logiciel développé par Google permettant de visualiser des zones géographiques de la planète grâce à des images aériennes ou satellitaires. Il affiche également sur cette carte des données disponibles dans les bases de données de Google telles que les routes, les monuments etc. Le point faible de ce logiciel est qu’il est soumis aux actuelles restrictions inhérentes à la visualisation d’objets 3D : les interfaces clavier/souris peu intuitives pour ce genre d’objets. 2.8 Google Maps Contrepartie 2D de Google Earth, cette version utilise un ensemble de données trouvées sur internet afin de proposer différentes couches d’informations à rajouter 12 LEAP Motion et visualisation 3D vrml par dessus le système de carte de base. On pourra citer les exemples de StreetView, qui propose des images des rues associées à la carte; ou HealthMap.org, qui géolocalise les derniers rapports de maladies à caractère épidémique. 2.9 Les Bases de connaissances On part tout d’abord de la construction conceptuelle du domaine en accord avec les experts. Celle-ci permet d’abstraire les formats de données que le système aura à gérer et décrit les différents concepts que l’on manipulera dans l’application. Cette construction s’appelle une ontologie et est écrite grâce à des langages comme Owl. Un ensemble d’ontologies se rapportant à la géographie est déjà disponible sur internet et les données respectant leurs formats pouraient alors être ajoutées à notre base de connaissances. Une fois le modèle des données composé, nous avons à disposition un ensemble de concepts et de propriétés qui nous permettrons de décrire les informations qui intègreront notre base de connaissances. Les données sont généralement écrites dans un langage de description comme le RDF (Resource Decription Framework). Finalement, on peut ajouter ou récupérer les informations stockées dans la base grâce à des requêtes. Un des principales langages de requêtes utilisés dans le domaine du web sémantique est SPARQL. 13 LEAP Motion et visualisation 3D vrml 3 Méthodologie et planification 3.1 Stratégie générale La prise en compte d’un système quasi-expérimental comme le Leap Motion ne nous permet pas de concevoir l’ensemble du système avant de passer à son implémentation. Nous aborderons le projet de manière agile en partageant nos ressources entre les trois parties du système identifiées comme : ● L’interaction avec le Leap Motion ● L’affichage du contenu multimédia (modèle 3D et autres) ● L’association et utilisation des données sémantiques externes Chaque partie sera découpée en deux phases majeure : une phase de recherche ainsi qu’une phase d’implémentation. En fonction des résultats obtenus durant la phase de recherche, nous pourrons donc orienter la phase d’implémentation dans la meilleure direction possible. Monsieur Bailly jouera lors de ce projet le rôle du client à qui nous présenterons notre prototype et son évolution à la fin de chaque itération. Ceci permettra de limiter les dérives du projet d’une part et d’identifier rapidement les problèmes rencontrés d’autre part. 3.2 Découpage en lots Tableau 1 - Liste des Lots # Titre du lot Type Leader Budget Début Fin L1 Management du projet MGMT Rocher 216 S01 S21 T1.1 Planification (DoW) MGMT Rocher 140 S01 S04 T1.2 Suivi de projet MGMT Bailly 76 S05 S21 L2 Recherche et modélisation RECH Perrot 200 S05 S08 T2.1 Recherche d’une technologie d’affichage de données multimédias (dont 3D) RECH Rocher 20 S05 S07 T2.2 Recherche d’une méthode d’intégration du VRML RECH Rocher 20 S05 S07 T2.3 Familiarisation avec le SDK Leap Motion RECH Maureille 40 S05 S07 T2.4 Modélisation d’une maquette RECH Maureille 60 S05 S08 T2.5 Création d’une ontologie représentant les connaissances RECH Perrot 60 S05 S08 14 LEAP Motion et visualisation 3D vrml liées au domaine L3 Implémentation IMP Maureille 332 S08 S20 T3.1 Conception de l’interface du visualiseur IMP Rocher 112 S08 S14 T3.2 Réalisation de l’interaction avec le Leap Motion IMP Maureille 95 S08 S20 T3.3 Intégration des différents supports d’informations en fonction de l’ontologie du domaine IMP Perrot 125 S08 S20 L4 Tests utilisateurs Rocher 160 S08 S21 T4.1 Préparer un scénario de test RECH Maureille 40 S08 S20 T4.2 Trouver différents types d’utilisateurs RECH Rocher 40 S08 S20 T4.3 Faire tester aux utilisateurs DEMO Rocher 40 S21 S21 T4.4 Établir des statistiques (Vérifier l’efficacité de l’interface) DEMO Maureille 40 S21 S21 L5 Rendu final Perrot 40 S21 S21 T5.1 Création de la présentation MGMT Perrot 20 S21 S21 T5.2 Preparation d’une démonstration DEMO Perrot 20 S21 S21 Total : [304h/étudiant]h 15 LEAP Motion et visualisation 3D vrml 3.3 Planification # Lot / Tâche L1 Management du projet 1.1 Planification 1.2 Suivi du projet L2 Recherche et modélisation T2.1 Recherche d’une technologie d’affichage de données multimédias (dont 3D) T2.2 Recherche d’une méthode d’intégration du VRML T2.3 Familiarisation avec le SDK Leap Motion T2.4 Modélisation d’une maquette T2.5 Création d’une ontologie représentant les connaissances liées au domaine L3 Implémentation T3.1 Conception de l’interface du visualiseur T3.2 Réalisation de 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 l’interaction avec le Leap Motion T3.3 Intégration des différents supports d’informations en fonction de l’ontologie du domaine L4 Tests utilisateurs T4.1 Préparer un scénario de test T4.2 Trouver différents types d’utilisateurs T4.3 Faire tester aux utilisateurs T4.4 Établir des statistiques (Vérifier l’efficacité de l’interface) L5 Rendu final T5.1 Création de la présentation T5.2 Préparation d’une démonstration Figure 1 - Diagramme de Gantt 3.4 Livrables associés au projet Tableau 2 - Liste des livrables # Titre du livrable Lot Nature Date D1.1 Cahier des charges (DOW) 1 DOC S4 D1.2 Rapport de Management (MGMT) 1 DOC S21 D2.1 Maquette du fonctionnement de l’interface avec Leap Motion 2 LOG S08 D2.2 Ontologie décrivant le domaine validée par le client 2 DOC S07 D2.3 Prototype du fonctionnement du système d’ontologie 2 LOG S08 D3.1 Application intégrant le modèle 3D et le Leap Motion 3 LOG S20 D3.2 Système d’acquisition de données par ontologies 3 LOG S20 D4.1 Rapport sur les statistiques d’accessibilité de l’interface 4 DOC S21 D5.1 Diaporama de présentation finale 5 DOC S21 3.5 Jalons Tableau 3 - Liste des jalons # Titre du jalon Lot(s) Date Vérification J1 Fin de la phase de planification initiale du projet 1 S4 D1.1 livré. J2 Fin de la phase de recherche 2 S8 D2.* livrés J3 Fin de la phase de développement 3 S20 D3.* livrés J4 Fin des Tests utilisateurs 4 S21 D4.4 livré J5 Rendu final 1-5 S21 D5.1 et D1.2 livrés 3.6 Pilotage et suivi Le projet possède plusieurs aspects qui peuvent être développés en parallèle. Ainsi avec une itération relativement courte d’une semaine (une semaine et demie dépendant de la disponibilité des étudiants en fonction des semaines) le client peut surveiller l’évolution du prototype à intervalles réguliers. Les différents modules du programme peuvent être présentés tour à tour, permettant au client de voir l’évolution du logiciel sur des cycles d’une semaine. 18 LEAP Motion et visualisation 3D vrml 4 Description de la mise en œuvre du projet 4.1 Interdépendances des lots et tâches 19 LEAP Motion et visualisation 3D vrml 4.2 Description des lots Description Lot 1 Identifiant L1 Date de démarrage Titre Management du projet Type MGMT Participant Maureille Perrot Rocher Effort 72 72 72 S01 Bailly Objectifs du lot Le but de ce lot est d’identifier les besoins clients afin de correctement définir le cahier des charges, puis de suivre l’évolution du projet tout au long de la période de travail. Le suivi sera fait par la production de rapports réguliers faisant état de l’avancement du projet au niveau des livrables et des éventuels problèmes rencontrés. ➢ Définition du cahier des charges du projet ➢ Suivi de l’avancement du projet ➢ Création des rapports suite à la réalisation du projet ➢ Gestion des risques et des problèmes rencontrés Description du lot Tâche T1.1 : Planification (Rocher, S01-S04, 140h) Durant la phase de planification les étudiants doivent rencontrer l’encadrant afin de définir les attentes et les limites du projet. Une fois que le cadre du projet sera établi les étudiants définiront le cahier des charges du projet qui sera rendu sous la forme du livrable “D1.1 Description of Work”. Cette phase prend les quatre premières semaines du projet. Tâche T1.2 : Suivi de projet (Bailly, S04-S21, 76h) Le suivi de projet permet au client de voir l’avancement des recherches dans un premier temps puis de la réalisation du logiciel par la suite. Le suivi se fait au niveau de l’encadrant par la réception des livrables planifiés dans le DoW. Les étudiants auront pour tâches de veiller au respect des délais qui ont été initialement fixés et de faire remonter les éventuels problèmes rencontrés. À la fin des 21 semaines les étudiants devront rendre le livrable “D1.2 Rapport de Management”. Livrables Livrable D1.1 : Description Of Work (Rocher, DOC, S04) produit par la tâche T1.1 20 LEAP Motion et visualisation 3D vrml Document décrivant l’orientation du projet ainsi que les prévisions sur son déroulement. Livrable D1.2 : Rapport de Management (Rocher , DOC, S21) produit par la tâche T1.2 Document décrivant le déroulement réel du projet et analysant les choix qui ont été faits. Il permet également d'examiner si l’analyse des risques a été correctement menée lors de l’élaboration du DoW. 21 LEAP Motion et visualisation 3D vrml Description Lot 2 Identifiant L2 Date de démarrage S05 Titre Recherche et modélisation Type RECH Participant Maureille Perrot Rocher Effort 60 70 Bailly 70 Objectifs du lot La recherche technologique et littéraire sur les différents aspect du projet permettra de sélectionner les meilleures solutions qui serviront au développement des différents livrables et à la réalisation du projet. ➢ Recherche d’une technologie d’affichage de données multimédias (dont 3D) ➢ Recherche de la méthode d’intégration du VRML ➢ Familiarisation avec le SDK Leap Motion ➢ Modélisation d’une maquette ➢ Création d’une ontologie représentant les connaissances liées au domaine Description du lot Tâche T2.1 : Recherche d’une technologie d’affichage de données multimédias (dont 3D) (Rocher, S1 - S7, 20h) Cette tâche consiste à trouver une technologie open source qui présente la majeure partie des fonctionnalités que nous devons implémenter (comme par exemple l’affichage d’un modèle 3D et le support optionnel du format VRML). Nous pourrons ainsi y ajouter les fonctionnalités que nous voulons apporter, c’est à dire adapter son interface ainsi que ses contrôles afin de rendre cette application compatible avec le Leap Motion. Tâche T2.2 : Recherche de la méthode d’intégration du VRML (Rocher, S01 - S07, 20h) Nous devrons trouver un moyen d’intégrer le VRML dans notre solution. En effet le VRML est un format qui nous a été présenté comme point de départ du projet par monsieur Bailly. Les logiciels de visualisation utilisés par les géographes permettent en général d’exporter leurs modèles en VRML. Si les possibilités offertes par ce format sont trop limitantes pour le reste du projet (manipulation avec le Leap Motion et ajout d’information à la volée) nous devrons trouver un moyen de convertir les données du VRML. On peut aussi envisager l’abandon du format VRML et passer à une récupération des informations géographiques à partir d’autres supports utilisés par les géographes. 22 LEAP Motion et visualisation 3D vrml Tâche T2.3 : Familiarisation avec le SDK Leap Motion (Maureille, S01 - S07, 40h) Durant cette tâche, il s’agit de comprendre le fonctionnement du Leap Motion et de visualiser comment l’intégrer à notre application. Tâche T2.4 : Modélisation d’une maquette (Maureille, S01 - S08, 60h) On développera une maquette (livrable D2.1) représentative du modèle espéré qui nous permettra de valider ou non ce modèle et d’orienter les développements futurs dans la bonne direction. Tâche T2.5 : Création d’une ontologie représentant les connaissances liées au domaines (Perrot, S05 - S08, 60h) Produit les livrables D2.2 et D2.3 On développera un modèle pour les données qui seront gérées par le système afin d’abstraire les différents types de fichiers que le système a à gérer. Livrables Livrable D2.1 : Maquette du fonctionnement de l’interface avec Leap Motion (Maureille, LOG, S08) produit par la tâche T2.4 La maquette consiste à présenter le fonctionnement global de l’application en utilisant des techniques comme le magicien d’Oz pour valider le modèle envisagé ou dans le cas contraire, connaître les points à améliorer. Livrable D2.2 : Ontologie décrivant le domaine validée par le client (Perrot, DOC, S07) produit par la tâche T2.5 Cette étape a pour but de créer un support de connaissance pour l’application à partir des différentes données quelle devra gérer. Livrable D2.3 : Prototype du fonctionnement du système d’ontologie (Perrot, DOC, S08) produit par la tâche T2.5 Suite à la création de l’ontologie nous mettrons en place la base de connaissances qui permettra de gérer des données correspondant à la zone géographique sélectionnée par l’utilisateur. 23 LEAP Motion et visualisation 3D vrml Description Lot 3 Identifiant L3 Date de démarrage S08 Titre Implémentation Type IMPL Participant Maureille Perrot Rocher Effort 125 104 Bailly 103 Objectifs du lot Le but de ce lot est de mettre en place une solution logicielle répondant à la problématique du sujet. ➢ Conception de l’interface du visualiseur ➢ Réalisation de l’interaction avec le Leap Motion ➢ Intégration des différents support d’information en fonction de l’ontologie du domaine Description du lot Tâche T3.1 : Conception de l’interface du visualiseur (Rocher, S08 - S14, 112h) Ceci représente la première partie du livrable “D3.1 Application intégrant le modèle 3D et le Leap Motion” Il s’agit dans cette partie de réfléchir à la manière dont les données à afficher seront structurées pour être facilement manipulables au Leap Motion et de concevoir une interface modulable qui permette d’afficher les données collectées dynamiquement par le système d’ontologies. Tâche T3.2 : Réalisation de l’interaction avec le Leap Motion (Maureille, S08 - S20, 95h) Ceci est la deuxième partie du livrable “D3.1 Application intégrant le modèle 3D et le Leap Motion” Ici on se focalise sur la partie “contrôles” de l’interface. C’est dans cette tâche que sera réalisée toute l’interface utilisateur à l’aide du Leap Motion, c’est à dire comment l’utilisateur pourra interagir avec le programme à l’aide des mouvements de ses mains. Tâche T3.3 : Intégration des différents support d’information en fonction de l’ontologie du domaine (Perrot, S08-S20, 125h) produit le livrable D3.2 24 LEAP Motion et visualisation 3D vrml Mise en place des descriptions des données par rapport à l'ontologie précédemment définie. Mise en relation avec des données externes grâce à l'utilisation des « Open Link Vocabularies » ciblant la géographie. Livrables Livrable D3.1 : Application intégrant le modèle 3D et le Leap Motion (Maureille, LOG, S20) produit par les tâches T3.1 et T3.2 Le visualiseur final permettant l’interaction de l’utilisateur avec le modèle 3D ainsi que les différents contenus multimédias présentés par l’application grâce au Leap Motion. Il doit également offrir une certaine adaptabilité de son affichage pour permettre à la base de connaissances de placer des données dynamiquement sur le modèle. Livrable D3.2 : Système d’acquisition de données par ontologies S20) produit par la tâche T3.3 (Perrot, LOG, La base de connaissances devra fournir une interface qui permettra au visualiseur de récupérer les données stockées sur le système au travers de différentes requêtes. Les données demandées dépendront du modèle affiché et des demandes utilisateurs. 25 LEAP Motion et visualisation 3D vrml Description Lot 4 Identifiant L4 Date de démarrage Titre Tests utilisateurs Type RECH, DEMO Participant Maureille Perrot Rocher Effort 45 57 S08 Bailly 58 Objectifs du lot Le but de ce lot est de mettre en place une série de tests permettant de vérifier l’accessibilité de l’interface et le bon fonctionnement du logiciel ➢ ➢ ➢ ➢ Préparer un scénario de test Trouver différents type d’utilisateurs Faire tester aux utilisateurs Établir des statistiques (Vérifier l’efficacité de l’interface) Description du lot Tâche 4.1 : Préparer un scénario de test (Maureille, S08 - S20, 40h) Nous devons au cours de cette tâche élaborer un scénario de test qui soit pertinent et qui permette de trouver les possibles points à améliorer. Cela nous permettra de valider la bonne conception de l’interface utilisateur de notre application. Tâche 4.2 : Trouver différents types d’utilisateurs (Rocher, S08 - S20, 40h) Pour mener à bien la tâche 4.3, il sera nécessaire de trouver des utilisateurs pour tester notre application. Ces utilisateurs devront représenter échantillon de la population susceptible d’utiliser notre application, dans un office du tourisme par exemple, qu’ils aient ou non des connaissances en informatique. Tâche 4.3 : Faire tester aux utilisateurs (Rocher, S21 - S21, 40h) Grâce au bon déroulement des tâches T4.1 et T4.2, nous serons en mesure de faire passer nos tests aux utilisateurs pour trouver les points à améliorer dans notre application. Nous pourrons apporter les modifications requises si elles ne sont pas trop importantes, dans le cas contraire les commentaires des utilisateurs seront décrits et analysés dans la tâche T4.4 et accompagnés d’une description des améliorations possibles. Tâche 4.4 : Établir des statistiques (Vérifier l’efficacité de l’interface) (Maureille, S21 S21, 40h) 26 LEAP Motion et visualisation 3D vrml On s’appliquera ici à interpréter toutes les tests que l’on aura pu mener auprès des utilisateurs pour les interpréter dans le livrable D4.1 : “Rapport sur les statistiques d’accessibilité de l’interface” Livrables Livrable D4.1 : Rapport sur les statistiques d’accessibilité de l’interface (Rocher, DOC, S21) produit par la tâche T4.4 Un rapport regroupant les différents tests utilisateurs pour valider l’utilisabilité de l’interface développée au cours du projet et vérifier qu’elle répond bien aux critères requis, en particulier qu’aucun apprentissage n’est nécessaire pour s’en servir. 27 LEAP Motion et visualisation 3D vrml Description Lot 5 Identifiant L5 Date de démarrage Titre Rendu final Type MGMT, DEMO Participant Maureille Perrot Rocher Effort 14 13 S21 Bailly 13 Objectifs du lot C’est dans ce lot que se fera le rendu final du projet. On y élaborera la présentation ainsi que la démonstration qui permettront de rendre compte du travail effectué au cours de ce projet. ➢ Création de la présentation ➢ Préparation d’une démonstration Description du lot Tâche T5.1 : Création de la présentation (Perrot, S21 - S21, 20h) Écriture des slides qui serviront de support lors de la présentation et préparation du discours de chacun des étudiants. Cela donnera lieu au rendu du livrable “D5.1 Diaporama de présentation finale”. Tâche T5.2 : Préparation d’une démonstration (Perrot, S21 - S21, 20h) Cette tâche consiste à faire des vidéos de présentation afin de montrer le bon fonctionnement de l’application et à préparer une présentation à effectuer lors de la soutenance. Livrables Livrable D5.1 : Diaporama de présentation finale (Perrot, DOC, S21) produit par la tâche T5.1 Les diapositives qui seront présentées lors de la soutenance de fin de projet. 28 LEAP Motion et visualisation 3D vrml 4.3 Résumé de l’effort Tableau 4 - Résumé de l'effort Maureille Perrot Rocher L1 – Management du projet 72 72 72 T1.1 – Planification (DoW) 50 50 40 T1.2 – Suivi de projet 22 22 32 72 72 72 70 60 70 T2.1 Recherche d’une technologie d’affichage de données multimédias (dont 3D) 0 0 20 T2.2 Recherche d’intégration du VRML méthode 0 0 20 T2.3 Familiarisation avec le SDK Leap Motion 40 0 0 T2.3 Modélisation d’une maquette 30 0 30 T2.5 Création d’une ontologie représentant les connaissances liées au domaine 0 60 0 Sous-Total (h) : 142 132 142 104 125 103 T3.1 Conception de l’interface du visualiseur 56 0 56 T3.2 Réalisation de l’interaction avec le Leap Motion 48 0 47 0 125 0 246 257 245 L4 - Tests utilisateurs 57 45 58 T4.1 Préparer un scénario de test 15 10 15 T4.2 Trouver différents types d’utilisateurs 15 10 15 Sous-Total (h) : L2 - Recherche et modélisation d’une L3 - Implémentation T3.3 Intégration des différents supports d’information en fonction de l’ontologie du domaine Sous-Total (h) : Bailly 29 LEAP Motion et visualisation 3D vrml T4.3 Faire tester aux utilisateurs 15 10 15 T4.4 Établir des statistiques (Vérifier l’efficacité de l’interface) 12 15 13 303 302 303 13 14 13 T5.1 Création de la présentation 8 7 5 T5.2 Préparation d’une démonstration 5 7 8 316 316 316 Sous-Total (h) : L5 - Rendu final Total (h) : Figure 3 - Répartition de l'effort par lot Figure 4 - Répartition de l'effort par type 30 LEAP Motion et visualisation 3D vrml 4.4 Gestion du risque Tableau 5 - Table de gestion des risques Description Probabilité Conséquences Impact Cause Évitement Résolution Gwenn partant en alternance 0.5 Les tâches de Gwenn ne seront pas attribuées. Important La procédure d’inscription en alternance n’est pas terminée Réattribuer les tâches et les répartir entre les autres membres du groupe Intégrations des données de la base de connaissances difficile à intégrer dans un modèle VRML 0.8 Application finale incomplète Important Le VRML est un ancien format qui n’est pas forcément adaptable pour l’ajout dynamique de données Trouver ou écrire un convertisseur VRML permettant d’utiliser un autre format de visualisation Interface LEAP Motion peu précise 0.5 Difficulté d’utilisation Important Le LEAP Motion ne reconnait qu’un nombre limité de mouvements Minimiser le nombre de contrôles LEAP Motion dans l’interface Pas de LEAP Motion pour conduire les tests / “panne” 0.2 Prise de retard dans le développement Important Un seul LEAP Motion à notre disposition S’organiser pour conduire les tests IHM sans conflit Taux de satisfaction inférieur à 85% 0.6 L’application ne sera probablement pas utilisé. Important Une interface trop compliquée et pas assez intuitive Effectuer un réel travail d’ergonomie Utiliser une interface multimodale Prendre en compte toutes les remarques des utilisateurs lors des tests afin d’améliorer les points faibles dans une prochaine version de l’application 5 Participants 5.1 Gwenn Aubert (SI5 - IHM) Etudiant à Polytech’Nice Sophia en Sciences informatiques, en spécialité IHM. Gwenn n’a finalement pas participé à ce projet de fin d’études puisqu’il est parti en alternance pendant l’élaboration de ce DoW qui a été modifié en conséquence. 5.2 Bastien Maureille (SI5 - IHM) Etudiant à Polytech’Nice Sophia en Sciences Informatiques en spécialité IHM. Après avoir fait une classe préparatoire à Dijon il décide de s’orienter vers un domaine qui le passionne de plus en plus : l’informatique. Il décide donc d’intégrer l’école Polytech’Nice Sophia ou il commence à voir les possibilités offertes par ce domaine. Il est vite interpellé par les problèmes liées aux interfaces et aux interactions avec l’utilisateur dans les applications courantes. C’est pourquoi il s’intéresse particulièrement aux dernières technologies apportant de nouveaux moyens d’interactions avec l’utilisateur qu’il a pu être amené a côtoyer au cours de certains de ces projets : ● Projet Brain Framework : Framework autour du casque Emotiv EPOC pour la détection d’émotions chez l’utilisateur. ● Projet SmartBot : robot contrôlé à distance par une application android puis à l’aide d’une webcam embarqué avec traitement d’image Dans ce projet il sera amené en particulier à s’occuper de la partie interaction de l’utilisateur grâce au Leap Motion. 5.3 Gaspard Perrot (SI5 - KIS) Étudiant à Polytech’Nice Sophia en Sciences Informatiques en spécialité KIS. La filiaire KIS propose de nouveaux moyens de gestions des données comme le web sémantique et ses ontologies, ou le datamining. Il espère mettre en pratique les connaissances acquises au cours de l’année dans ce projet de fin d’étude. Il est chargé de mettre en place une base de connaissances qui servira de support pour toutes les données enregistrées par le système. 5.4 Kevin Rocher (SI5 - IHM) Passionné par l’informatique depuis qu’il est tout petit, il a d’abord fait un IUT informatique à Aix en Provence. Puis il a finalement choisi d’intégrer le département Sciences Informatiques de l’école Polytech’Nice Sophia. Il aime développer des applications mobile, c’est pour cette raison qu’il a effectué plusieurs projets sur la technologie Android. Il a notamment développé : ● Une adaptation du jeu Professeur Layton (initialement uniquement sur Nintendo DS) sur la plateforme Android. ● Ou encore un jeu de cartes online sur Android. 32 LEAP Motion et visualisation 3D vrml Dans ce projet, il propose de s’attacher à l’ergonomie pour avoir une interface simple ainsi qu’à la validation du logiciel par le plus d’utilisateurs possible. 5.5 Eric Bailly (Maître de conférences en Géographie à l'université Nice Sophia Antipolis) Laboratoire : Centre de la méditerranée Moderne et Contemporaine Après un DEUST informatique j'ai intégré une Maitrise de Sciences et techniques en géographie. Puis un DEA structures et dynamiques spatiales pour enfin présenter une thèse en 1999 sur la croissance urbaine dans laquelle j'ai réalisé une modélisation fractale de cette croissance. J'ai ensuite dans la foulée passé le concours de Maître de conférences. Spécialisation : • Modèles de diffusion • Système Multi-Agents • Systémique • Chaos • Fractales • Systèmes complexes • Cartographie • Modèle 3D • SIG • Cartographie Outres quelques travaux spécifiques sur certains aspects du patrimoine des Alpes Maritimes (terrasses en pierres sèches, conservation des châtaigneraies du Mercantour), l'objet principal de mes recherches est l'Innovation. J'emprunte à des domaines scientifiques différents du mien tout ce que je peux utiliser pour résoudre des problématiques de géographe. Mes compétences en informatique me permettent de me positionner comme un cogniticien et ainsi de faire la liaison entre la géographie et d'autres sciences. 33 LEAP Motion et visualisation 3D vrml 6 Bibliographie et références Référence Description Airspace https://airspace.leapmotion.com/ 05/11/2013 Cyber Science https://airspace.leapmotion.com/apps/cy ber-science-motion/windows 05/11/2013 Eye Toy http://fr.wikipedia.org/wiki/EyeToy 05/11/2013 Google Earth http://www.google.fr/intl/fr/earth/index.ht ml 05/11/2013 Google Maps https://maps.google.fr/ 05/11/2013 Leap Motion https://www.leapmotion.com/ 05/11/2013 et http://www.clubic.com/technologies-davenir/article-575170-1-leap-motiontest.html 06/11/2013 Kinect http://www.gameblog.fr/articlelecteur_612_comment-fonctionne-latechnologie-kinect 06/11/2013 Linked Open Vocabulary - Géographie http://lov.okfn.org/dataset/lov/details/voc abularySpace_Geography.html 09/11/2013 Cortona3D Viewer http://www.cortona3d.com/cortona3dviewers 09/11/2013 Unity 3D Game engine http://unity3d.com/ 09/11/2013 Bailly Eric Festival international de géographie Concours de géovisualisation : “«Viewshed» 3D dynamqiue et interactif : exemple d’utilisation dans une étude paysagère” (http://concoursgeovisualisation.parisgeo.cnrs.fr/CGCD Editions.html 09/11/2013) Saint Dié des Vosges , 2012 (http://www.saint-die.eu/ 09/11/2013) 34 LEAP Motion et visualisation 3D vrml