Séminaires de projets (IGR205)

M1, Filière IGR, Telecom-Paristech

Informations pratiques
Responsables du cours: Samuel Huron, Jean-Marc Thiery

Les étudiants suivant cet enseignement réalisent un projet en groupe de 3 à 5 personnes. Le code du projet, une présentation (powerpoint ou PDF) ainsi qu'un rapport sont à remettre aux responsables de cours à la fin du projet. Les projets sont proposés par l'ensemble du corps enseignant intervenant dans la filière IGR, et sont souvent liés aux problématiques actuelles de recherche dans les domaines concernés.

Évaluation: Soutenance de projet (50%), Séminaire de présentation (30%), Rapport écrit de projet (20%).

IMPORTANT:

  • Les étudiants sont invités à prendre contact le plus rapidement possible avec les encadrants afin de choisir leur projet.
  • Les projets ne demandent pas tous le même investissement. Vérifiez bien avec l'encadrant le nombre maximum d'élèves pouvant effectuer un même projet.
  • Liste des projets (Cliquer sur l'icone ou titre des projets pour plus d'informations)
    Ce projet s'inscrit dans le développement, à Télécom ParisTech, d'une technologie de débruitage des images de synthèse générées par rendu de Monte Carlo. Cette technologie, open-source, prend en entrée un ensemble d'échantillons couleurs par pixels (ou bien un triplet de statistiques décrivant cet ensemble) et fournit en sortie une image débruitée. Dans sa version actuelle, l'algorithme utilise de simples histogramme comme descripteurs de la distribution couleur par pixel. L'objectif de ce projet est d'explorer des approches alternatives. On s'attachera notamment à développer et évaluer plusieurs types de distributions se substituant aux histogrammes, notamment les mixtures gaussiennes, les histogramme locaux lisses, et une méthode "force brute" qui prennent en compte une mesure de distance entre nuages de points 3D (chaque point 3D étant un echantillon en espace RGB). Le projet prendre la forme d'un fork de la technologie actuelle : https://github.com/superboubek/bcd. Le projet commencera par une étude bibliographique en profondeur et le contenu du projet pourra évoluer en fonction des avancées. On pourra également travailler à partir du moteur AppleSeed (\url{https://appleseedhq.net/}) pour synthétiser des données de test (des modifications du moteur seront nécessaires).
    Encadrant: Tamy Boubekeur

    De nombreux travaux visent à produire des graphes de connaissances interconnectés. Cette tendance est communément appelée Linked Open Data ou LOD. Des principes généraux simples -le modèle RDF- permettent de représenter des connaissances dans un graphe -KG, pour Knowledge Graph- et de relier simplement ces connaissances à d'autres présentes dans d'autres graphes. Le graphe le plus connu, et auquel se lient de nombreux autres est DBPedia, un graphe constitué à partir de nombreux faits extraits de WikiPedia.
    Un nombre grandissant d'entreprises et de centres de recherche travaillent à établir des méthodes pour exploiter ces graphes. Dans ce projet, nous allons nous focaliser sur les visualisations et les interactions possibles et utiles sur de tels graphes.
    Pour ce projet, le jeu de données SemBib sera exploité, en liaison avec d'autres comme HAL, DBPedia, Orcid... Sembib est un ensemble de graphes de connaissances décrivant les près de 12000 publications scientifiques produites par Telecom ParisTech depuis 1969. D'autres ensembles de données pourront être proposés.
    Le but va être d'explorer différentes possibilités pour la visualisation et l'exploration de tels ensembles de données et d'analyser les avantages et les inconvénient de différentes approches existantes. L'article en référence est une bonne base sur ce sujet ; d'autres pistes seront proposées et enfin, d'autres pourront être explorées à l'initiative du groupe.

    Le rendu de milieu participants, d'objets transparent ou translucides, dans un cadre totalement dynamique, est encore aujourd'hui un défi en informatique graphique. Ce projet vise à développer une application 3D; interactive pour navigateur web permettant de visualiser et d'intéragir en temps réel avec un aquarium virtuel. Pour cela, l'application s'appuiera sur WebGL et offrira les fonctionnalités suivantes : ● rendu d'un aquarium virtuel, posé sur une table en bois, dans un environnement lumineux riche, typiquement sur le modèle de celui du film "Le monde de Némo" de Pixar ● l'aquarium devra correctement rendre les réflexions/réfractions, avoir une surface d'eau dynamique, contenir du sable, des poissons, du corail, etc ● l'aquarium aura un éclairage artificiel constitué d'un ensemble de sources lumineuses étendues ; on tentera de reproduire les ombres portées le mieux possible ● les poissons seront animés, ainsi que les bulles et les algues, en respectant les lois fondamentales de la physique le mieux possible ● un control-click-gauche causera des vagues dynamiques à la surface de l'eau ● les poissons évolueront de manière dynamique en fonction de l'environnement, et il sera possible de les nourrir en faisant tomber des particules de nourriture à l'aide d'un control-click-droit sur un point de la surface de l'eau ● une attention particulière sera donnée aux effets d'éclairage sous-surfaiques (subssurface scattering) ● la même attention sera donnée aux effets de transport non-diffus de lumière, notamment aux effets caustiques ● la même attention sera donnée à la reproduction des effets volumétriques ("god rays") ● le format GLTF sera utilisé pour les données 3D/matériaux/animation/etc ● la bilbiothèque ThreeJS pourra tre utilisée, ● il sera possible de naviguer autour de l'aquarium ● l'aquarium sera aussi "vivant" que possible ● le pipeline de rendu sera HDR ● le modèle de matériaux sera basé sur les BRDF/BSDF à microfacettes (modèle standard PBR "mettalic/roughness" avec NDF GGX) Durant toute la durée du projet, la web-application sera maintenue sur une page github.io
    Encadrant: Tamy Boubekeur

    L'ajustement de primitives géométriques (plans, sphères, cylindres, cônes, tores) à des images RGB-D permet leur abstraction et leur simplification. Ce type d'abstraction devient particulièrement utile dans les scénarios de traitements limités en temps et en ressources. Le traitement géométrique basé sur des réseaux de neurones profonds (Deep Neural Networks, DNN) s'est développé ces dernières années, pour analyser des objets, humains, ou scènes complètes à partir de cartes de profondeur, nuages de points ou maillages triangulaires.
    L'objectif du projet est l'implémentation d'une ou plusieurs méthodes d'ajustement de primitives géométriques à des images RGB-D à l'aide de DNNs. La première étape sera l'étude de l'état de l'art des méthodes appliquant les DNNs aux images RGB-D comme D-CNN [SHJ17] ou [ZPM17] ou aux nuages de points comme PointNet++ [QYSG17] et à la détection de primitives géométriques dans des images simples [CYCYF18] ou formes 3D [SGLK18, TSGEM17]. à partir de cette cartographie de l'état de l'art et en s'inspirant directement des méthodes étudiées, il s'agira de mettre en place une architecture de DNN pour reproduire les résultats de détection de plans de [FTK14] puis de primitives plus complexes de [SWK07]. On pourra utiliser des banques de données ouvertes telles que ScanNet [DCSHFN17]. Si le temps le permet, une comparaison quantitative viendra compléter la comparaison qualitative de ces méthodes avec les résultats obtenus.

    Touch is our primary non-verbal communication channel for conveying intimate emotions and as such essential for our physical and emotional wellbeing. However, even though there is increasing evidence that mediated touch affords affective communication, current communication systems still do not support communication through the sense of touch. Although there are some prototypes and products like HardLight Suit or TESLASUIT that using vibration or electrical signals to generate feel of touch, it is still hard to express feelings and emotions with these devices because of the limitation of the device. Meanwhile, there are some researches proof that there is a strong relationship between vision and tactile. Vision information can not only enhance the sensitivity of the skin, but also creating illusions sensational because of the vision-touch synaesthesia.
    The goal of this project is to create a user interface for designing gestures and patterns (i.e. stroking, patting, squeezing the forearm) and display those gestures on the LED matrix which is going to be built as a wearable device in the next stage. Different gestures have different shapes, sizes, colors and we should be able to modify these parameters on the user interface directly. Then with a lot of frames it can be like a real movement on the LED matrix. (You can see an example of it in the movie "Ready Player One", the haptic jacket "X1"). So the interface should have following function: 1. Modify the size of the LED matrix display. (Within 20*20) 2. Modify each frame and each pixel individually with different shapes and different colors. 3. Output can be .gif or a video or a series of RGB matrixes which can be used on display afterwards. 3. Pre-define some gestures which convey different feelings as examples. You will be able to use the technology of your choice (i.e. JS, Java or C++) and implement this system on mobile or desktop according to your preferences. The focus will be on the graphical interface and the way to express emotional messages.

    L'amélioration de la qualité des moteurs de rendu a créé un besoin de plus en plus important pour les artistes de pouvoir apporter très rapidement un style particulier d'éclairage dans une scène 3D, et contrôler finement les effets lumineux (e.g. ombres, reflets, caustiques). Pour ce faire, il leur faut aujourd'hui contrôler manuellement les différentes propriétés de chaque source de lumière présente dans la scène (position, puissance, couleur, etc.) et des objets (textures, matériaux), ce qui reste une tâche fastidieuse et peu intuitive. Dans ce processus, il est aussi crucial d'avoir un rétrocontrôle (ou feedback) quasi-immédiat sur le résultat.
    Différentes techniques de recherche se sont attaquées à l'automatisation de ce problème “inverse", et les techniques les plus récentes proposent à l'utilisateur des contrôleurs interactifs lui permettant de spécifier l'apparence désirée de la scène, en manipulant le résultat (les effets lumineux) plutôt que la cause (les propriétés des lumières ou des objets). Ensuite, il y a en général deux manières de procéder: soit on optimise de manière automatique les propriétés liées aux lumières (e.g. la texture de la carte d'environnement qui éclaire la scène), soit on optimise les propriétés à la surface des objets (leurs textures et matériaux).
    Le but du projet sera de re-développer au moins un des articles cités (à définir avec les encadrants).

    Initialement inventés pour aider les personnes malentendantes, les SMS (textos) ont connu un succès aussi considérable qu'inattendu. Au départ limités à l'envoi de texte, ils ont été enrichis de manière à pouvoir transmettre des émoticônes, puis des images, de l'audio, des animations et même des signaux corporels comme des battements de coeur. L'objectif final du projet est d'enrichir les textos avec un nouveau type de signal : des messages tactiles ou "émotitouches" et ceci pour deux raisons. Tout d'abord, un inconvénient bien connu des SMS seulement textuels est qu'ils permettent difficilement de transmettre des sentiments ou des émotions, d'où l'invention des émoticônes. Celles-ci restent cependant assez simplistes, stéréotypées et peu modulables. D'autre part, il a été montré que la modalité du toucher a un rôle important dans l'interaction sociale et en particulier pour la transmission d'émotions. D'où l'idée d'ajouter cette modalité aux textos.
    Le but de ce projet est de créer un démonstrateur qui permette à (au moins) deux personnes d'échanger des textos enrichis. En entrée, l'émetteur du message doit pouvoir entrer du texte et enrichir certaines parties du texte au moyen d'une interface graphique permettant de sélectionner et moduler (e.g. plus ou moins fort) une émotion. En sortie, le récepteur du message recevra le texte et les données qui lui sont attachées. Idéalement, ces données seraient traduites en signaux tactiles (e.g. des vibrations) mais on pourra les simuler sous d'autres formes (des sons, des couleurs, des animations...). Un point important est qu'elles doivent être synchronisées avec la lecture du texte (sinon elles n'auraient que peu de sens), ce qui nécessite de bien réfléchir à l'interface.
    Vous pourrez utiliser la technologie de votre choix (i.e. Qt, Java ou Web) et implémenter ce système sur mobile ou desktop selon vos préférences. L'accent sera mis sur l'interface graphique et la manière d'exprimer des messages émotionnels, tant en entrée qu'en sortie. A terme, l'interface servira à émettre de vrais signaux tactiles (travail en cours).

    La visualisation de données de haute dimension nécessite souvent de les projeter dans un premier temps en dimension 3 voir 2, pour des raisons pragmatiques: l'humain n'a pas la faculté de se représenter naturellement et intuitivement des données organisées dans un espace de plus haute dimension. L'algorithme le plus connu peut-être est l'analyse en composantes principales, qui identifie les directions de variance minimales et projette (écrase) les données dans ces directions, afin de visualiser les données globalement projetées dans l'hyper-espace défini par ces opérations. Cet algorithme donne des résultats intuitifs pour les données distribuées localement sur un espace affine, mais de par sa nature globale ne peut pas relever des données organisées sur une variété courbe. La réduction de dimensionalité de ce type de données nécessite alors l'application d'algorithmes souvent non-linéaires, qui cherchent à optimiser la distribution des points d'entrée de sorte à préserver dans l'espace Euclidien de basse dimension les distances géodésiques estimées dans l'espace de départ. Cet algorithme est connu sous le nom de Multi Dimensional Scaling Embedding, et a une solution particulirement élégante, qui consiste à extraire les d plus petits vecteurs propres d'une matrice (de Gram) construite uniquement à partir des distances inter-points prescrites. L'objet de ce projet est l'étude de cette classe d'algorithmes qui constitue l'état de l'art dans le domaine du manifold learning, en particulier de MDS, LMDS et de SAKE.
    Encadrant: Jean-Marc Thiery. Ressources:

    À l'aide de gestes sur des petits dispositifs comme des montres intelligentes l'utilisateur peut contrôler plusieurs environnements comme une maison intelligente, ou un environnement de réalité virtuelle à l'aide du même dispositif. Pour ne pas limiter le nombre de gestes possibles dans ce contexte, une nouvelle technique d'interaction adaptée à des petites surfaces d'interaction a été proposée.
    L'objectif du projet est d'implémenter une technique d'interaction appelée Side-Crossing Menus qui définit des gestes dépendant de leur taille [1] et des gestes directionnels [2] (voir pdf). Les étudiants devront implémenter cette technique sur une montre intelligente (fournie par l'équipe pédagogique), ou leurs téléphones intelligents s'ils préfèrent, en détectant la position du doigt de l'utilisateur et la direction de son mouvement. Dans l'idéal, la montre sera connectée à un serveur distant pour pouvoir contrôler différents dispositifs (p.ex. maison intelligente ou système de réalité virtuelle). A l'issue de ce projet, les étudiants devront effectuer une expérience sur une dizaine d'utilisateurs pour évaluer la faisabilité de ces gestes.

    La volumétrisation de surfaces est un problème de recherche actif, car la plupart des objets réalisés par des artistes ne sont pas 2-variété et leur volumétrisation (utile pour la définition de processus de diffusion volumique par exemple) est non-triviale. Le winding number est une quantité scalaire qui peut aider à la labellisation intérieur/extérieur d'un point. En 3D, cela nécessite de calculer la somme des angles solides (signés, pour prendre en compte l'orientation de la normale) des triangles de la surface: si la somme est nulle, alors le point est à l'extérieur de la surface; si elle est positive alors le point est à l'intérieur de la surface, etc. Récemment, un procédé rapide d'approximation a été proposé. L'algorithme construit une hiérarchie spatiale groupant des points orientés de la surface, et approxime la contribution d'une branche de la hiérarchie pour les points d'évaluation les plus lointains, permettant d'obtenir une approximation raisonnable en temps sous-linéaire. L'objectif de ce projet est d'étudier les briques importantes de la volumétrisation à base de winding number.