Project Seminar (IGR205) IGR Track

Course organizer: Kiwon Um

E-mail: at telecom-paris dot fr

Office: 5.B20

In this course, three students will team up, and each team will develop a program or a set of modules, which is possibly related to a research article. The project topics are carefully proposed by the entire teaching staff in the IGR track. Each team will exclusively work for each topic.

Important: The participants have to keep in mind that all the topics will not have the same difficulty. Thus, each team should actively communicate with the project supervisor. It may happen to adjust the given tasks depending on your capacity for the topic. But, don't worry, your supervisor will be happy to help you. Once you have been assigned to a topic, please contact your supervisor as quickly as possible and get clearly informed about your tasks and supervision. Additionally, you are working in a team, and, sometimes (or even quite often), it can happen that all team members are not equally contributing. Please be aware that your evaluation will be first based on your teamwork; but, you still have your right to report to your supervisor and the course organizer on unfairness if you experience unbearable collaboration with someone. Please actively communicate within your team and make an effort to build good teamwork.


Time: 13:30-16:45


At the end of the course, after the final presentation, each team has to send both the supervisor and the organizer (Kiwon Um) one zip file that contains (1) implementation source codes, (2) a presentation PDF file, and (3) a report PDF file. Please do not include unnecessary files such as object files generated from compilation, temporary files for backup, etc.

The evaluation will take into account the followings:

We value academic integrity; thus, you must understand the meaning and consequences of plagiarism. You can refer to existing codes, texts, and any materials that would be useful for your project. However, you must be careful to reuse them properly.


Face-to-face, physical communications benefit from the rich, dynamic non-verbal cues that can be naturally expressed and interpreted, such as facial expressions or touch (e.g., a pat on the back, holding hand, etc.). In text-based communication, users often use emojis to express facial emotion (e.g., smirking) or hand gestures (e.g., hugs). However, the output channel is mainly visual, while overlooking the importance of touch that can express emotional attachment or communicate physical connections. The goal of this project is to design and implement a novel interactive system around enhancing affective touch communication in text messaging. In the first phase "Ideate", the students will then design an interactive touch-based communication on mobile devices. In the second phase "Prototype", the students will build the interactive system in a form of a demo application (e.g., a chat app) that captures the touch input from the mobile devices and generates touch output (note: The students can use existing hardware prototypes in our lab as the output channel, such as a tactile sleeve. Building a new one is optional.) This project is an opportunity to learn about mobile development with tangible output.
The goal of this project is to design and implement a novel interaction around hand-tracking in VR which creates some form of benefit over a traditional one-to-one mapping (e.g. more precision, less fatigue, new abilities). Students are encouraged to think outside the box and forget traditional models of our body (e.g. what if our arm could stretch infinitely?, what if we would have more than 5 fingers?). In a first step, each group will receive one Oculus Quest and will design and develop their novel form of hand-interaction (The DIVA group is able to provide 3 Oculus Quests. Therefore, three individual groups are able to work on this project). In a second step, the students will implement their idea using Unity3D and the Oculus SDK. The last step, consists of implementing an application (e.g. a simple game) that leverages and showcases this novel type of interaction. Each group is expected to meet once a week with their supervisor and discuss their ideas and the direction of the project. Each student will get an Oculus Quest to be able to develop individually.
Warning: The supervisor is figuring out how to access the devices from the school and deliver them to you. However, due to the shutdown, it may be delayed or even impossible in the end. This can cause that you need to work for different tasks or even change the topic later on.
La sensibilité esthétique se forme dès le plus jeune âges au contact des jeux, jouets et objets qui constituent l’univers quotidien des enfants. Pour mieux comprendre ce qui construit nos goûts en termes de couleurs et de formes, la designer graphique Camille Baudelaire et son collectif de designer (incluant une designer produit et une designer couleur et matière) ont commencé à analyser, classer et réfléchir à des modes de visualisation des formes et couleurs des jouets vendus par les magasins de grande distribution du jouet (via les catalogues et les sites internet). Elles ont répertorié et analysé, d’un point de vue sémantique, les typologies formelles associées au stéréotypes de genres. Sont concernées des catégories très connues comme l’association du rose au féminin et du bleu au masculin, mais aussi des moins identifiables pour le grand public, comme les typographies aux angles aigus pour les garçons, aux formes amples pour les filles. Le travail de recherche et de production des visualisations a été réalisé manuellement par le collectif de designer. Afin de pouvoir traiter en ensemble de données plus vaste et continuer ce travail de recherche nous souhaitons mettre en place un système de collecte, d’extraction et de visualisation automatique.
Hashing is widely used in high-performance computing to store sparse tables. Rather than allocating memory for a whole potentially huge table a small array of lists is created and keys for accessing the original table are hashed into indices of the smaller array. But typical hashing mechanisms have been designed for sequential CPUs rather than highly parallel processors like GPUs. Perfect Spatial Hashing is a very powerful method for GPU-friendly hasing of data in 2D or 3D grids which features many applications in computer graphics like efficient vector graphics rendering or voxel model coloring and collisions detection. This project is an opportunity to learn about the specifics of GPU progamming by carefuly implementing and testing spatial hashing.
Soft color segmentation (also known as matting, or color keying) is at the root of many visual effects. It consists in splitting a single image into layers based on its colors. This can be used to restrict an artistic image editing operation to some part of the image, for instance to do selective color grading, shadow removal or green screen integration. While simple ad-hoc methods based on thresholds on color components have been used for a long time, challenges arise when the image features semi- transparent objects or when color variations at multiple frequencies must be isolated. After testing some naive approaches and highlighting their limitations, this projects consists in implementing a more advanced matting. Once this is reproduced, the hypothesis/priors assumed by the paper could be questioned to develop color keyers specialized to some cases like uniformly colored transparent object or to study how the proposed method plays along with animation. The result of this project is easily usable in traditional image editing software and is a good way to get familiar with the notions of color spaces and color blending.
(A) Le projet consiste en l’implémentation de la technique décrite dans l’article de référence, technique qui permet la synthèse de texture par interpolation spatiale à l’aide d’une base de données finie. L’article propose un mécanisme dit de " morphable interpolation " qui définit une métrique utilisée pour construire un espace d’interpolation, appelé complexe simplicial. La méthode permet ainsi de naviguer dans cet espace de manière continue à l’aide d’une interface utilisateur. Le projet se concentrera sur la partie interpolation de texture et création d’une interface afin de visualiser le résultat en temps réel.
(B) Le projet consiste en l’implémentation de la technique décrite dans l’article de référence, technique qui permet de combiner deux images, ou de produire des interpolations spatiales ou temporelles. La technique est fondée sur une optimisation par patch et permet de résoudre une grande variété de problèmes concernant la fusion d’images non cohérentes. Le projet se concentrera sur la partie remplissage de trou, puis interpolation spatiale de textures.
Le projet consiste en l’implémentation de la technique décrite dans l’article de référence, technique qui permet de détecter de manière robuste les symétries partielles dans les surfaces 3D. La technique se base sur une sorte de Hough Transform généralisée : Des paires de points sont utilisées comme candidates si il existe une transformation permettant de passer de l’un (point+normale) à l’autre (point+normale). Si une telle transformation existe, celle-ci est stockée dans un espace paramétrique. En répétant ce procédé, on peut détecter quelles transformations sont utilisées pour de nombreuses paires (à l’aide d’un Mean Shift dans l’espace paramétrique des transformations), et donc détecter quelles sont les symétries locales principales de l’objet.
Le projet consiste en l’implémentation de la technique décrite dans l’article de référence, technique qui permet de diffuser des vecteurs tangents depuis une source le long des géodésiques (chemins les plus courts depuis la source). Cette méthode permet de plus de réaliser cette opération pour plusieurs sources à la fois (images de gauche) et a des applications très puissantes telles que le calcul de cartes logarithmiques (milieu, coloré) et de barycentres généralisés sur les surfaces (droite), entre autres. La compréhension de l’article demande l’acquisition de concepts géométriques avancés pour le programme de M1. Les étudiants recevront néanmoins l’aide nécessaire pour l’appréhension de ces concepts de base. Les algorithmes présentés dans l’article se révèlent en revanche particulièrement simples une fois ces concepts de base acquis.
Les surfaces de subdivision sont un standard de l’industrie du cinéma d’animation, et permettent de définir une surface limite lisse S à l’aide d’un opérateur de rafinement d’un maillage de base B contenant peu de points de contrôle C (S = M.C). Déformer la surface limite à l’aide d’un squelette est réalisable (S→S’), mais le résultat ne sera en général pas une surface de subdivision (pas exprimable en fonction de points de contrôle déformés C’ par S’=M.C’). Déformer les points de contrôle C→C’’ directement permet d’avoir à tout instant une surface de subdivision par S’’=M.C’’, mais le résultat sera en général très différent de S’ : ||S’’-S’||>>0. La technique permet d’optimiser en temps réel les déformations C’’ de telle sorte à minimiser ||M.C’’-S’||, garantissant d’obtenir a) une surface de subidivision lisse b) animée de manière intuitive.
Le projet consiste en l’implémentation de la technique décrite dans l’article de référence l1 Polycube Maps, technique qui permet de créer un mapping efficace d’un maillage tétraédrique sur une structure alignée sur les axes canoniques. Cette approche permet notamment de créer une héxaédrisation exacte de la forme ne contenant aucune singularité topologique à l’intérieur du volume.
This project aims for an efficient and effective liquid simulator that implements one of the popular SPH variants, so-called IISPH. This requires thorough understanding of partial differential equations, in particular, the Navier-Stokes equations that model a variety of fluid flows. You are expected to perform autonomous research and investigation of how to generate liquid animations using computer.
This project aims for an efficient and effective pipeline for producing smoke animations. This requires thorough understanding of partial differential equations, in particular, the Navier-Stokes equations that model a variety of fluid flows. You are expected to perform autonomous study and investigation of how to generate smoke animations using computer.


Just in case, you can find the previous topics that had been done last year.