Attention !!

Tous les sujets ne sont pas à pourvoir. Pour des raisons d'encadrement et d'organisation des soutenances de TER, je n'encadrerait qu'un maximum de 10 sujets.

Liste des sujets

  • Nouvelles modalités d'interaction pour l'apprentissage cognitif : détails
  • Implémentation d'un algorithme de segmentation hiérarchique : détails
  • Mise en oeuvre et évaluation de l'algorithme Legolization : détails
  • Localisation du visage/regard dans le cadre d'affichages immersifs : détails
  • contrôle d'un traceur XY laser par acquisition vidéo sur Raspberry pi : détails
  • Amélioration de la plateforme OASIS: integration caméra de profondeur, protocole VRPN et OSC : détails
  • Application d'apprentissage de la programmation par la robotique : détails
  • Calcul temps réel de visibilité/éclairage dans des environnements 2,5d : détails
  • API de communication unifiée pour la robotique : détails
  • Corrélation entre captation 3d et simulation : détails
  • Amélioration de la plateforme OASIS: etude de l'integration des protocoles UDP : détails
  • Analyse et corrélation de données entre Myo et LeapMotion : détails
  • Estimation de plans principaux dans des flux vidéo+profondeur : détails
  • Recalage de modèles volumique et surfacique : détails
  • Mise en oeuvre d'un simulateur physique de pièces mécaniques (type Lego) : détails

Implémentation d'un algorithme de segmentation hiérarchique

Objectif

L'objectif de la segmentation d'image est de "découper" une image en régions cohérentes. La cohérence des régions dépendant de l'application visée. Dans notre cas, nous nous plaçons dans le cadre de l'analyse de mouvement dans des flux vidéos. Plusieurs méthodes existent, notamment basées sur l'analyse du flôt optique (mouvement apparent dans les images). L'objectif de ce POM est d'implémenter l'algorithme de segmentation utilisé dans le cadre de la méthode LDOF (Large Displacement Optical Flow).

  • T. Brox, A. Bruhn, N. Papenberg, and J.Weickert. High accuracy optical flow estimation based on a theory for warping. In European Conference on Computer Vision (ECCV), pages 25–36, 2004.
  • Thomas Brox, J. Malik. Large Displacement Optical Flow: descriptor matching in variational motion estimation. In IEEE Transactions on Pattern Analysis and Machine Intelligence, 33(3): 500-513, 2011
  • Implémentation Matlab

Environnement

  • Système : Linux
  • Langage : C / C++
  • Bibliothèque : OpenCV

Mise en oeuvre et évaluation de l'algorithme Legolization

Objectif

Le design de modèles 3d est une tâche complexe, ce qui est encore plus vrai lorsqu'il est nécessaire de s'appuyer sur des éléments existants. C'est notamment le cas lorsque l'on essaye de construire (par exemple en Lego) la représentation d'un objet réel. L'objectif de ce POM est de développer une méthode permettant de passer d'un modèle 3d surfacique à une représentation par un ensemble de briques lego sur la base de la méthode décrite ici.

Environnement

  • Système : Linux
  • Langage : C / C++
  • Bibliothèque :

Localisation du visage/regard dans le cadre d'affichages immersifs

Objectif

Dans le cadre d'applications immersives, il est souvent nécessaire d'adapter le point de vue virtuel en fonction de la position de l'utilisateur et surtout de la direction de son regard. Actuellement, la position du visage et son orientation sont calculées à partir de la localisation de marqueurs spécifiques, la direction du regard n'étant que peu, voire pas du tout, prise en compte. Dans le cadre de ce sujet, il est demandé d'implémenter des méthodes permettant de suivre et de localiser le visage ainsi que le regard d'un utilisateur placé devant un affichage virtuel. L'objectif est d'utiliser ces information afin d'adapter le point de vue virtuel afin de mettre l'utilisateur en situation d'immersion.

Environnement

  • Système : Linux
  • Langage : C / C++
  • Bibliothèque : OpenCV, Unity3d

contrôle d'un traceur XY laser par acquisition vidéo sur Raspberry pi

Objectif

Dans le cadre de la salle Menhirs, le département informatique s'est doté d'un traceur XY controlé par un arduino et piloté par un logiciel windows. Ce traceur permet, vi un module laser, de découper des supports relativement fins. Il est cependant très compliqué de réussir à découper une forme sur la base d'un support pré-imprimé. L'objectif de ce projet est d'adjoindre un module de controle du traceur, sur la base d'un raspberry pi et d'une piCam afin de permettre le recalage du traceur par rapport à des guides d'impression.

Environnement

  • Système : Linux
  • Langage : C / C++
  • Bibliothèque : OpenCV, Raspberry pi

Amélioration de la plateforme OASIS: integration de nouveaux périphériques, nouveaux protocoles, matériels dédiés

Objectif

La plateforme de recherche Oasis est une plateforme intégrant les travaux des équipes SAARA et R3AM du LIRIS. Son objectif est de simplifier la mise en place de démonstrateurs par la mise en place d'une API constituée de composants modulaires. Actuellement, cette plateforme intégre un certain nombre de périphériques (caméras, capteurs, effecteurs) communiquant par le réseau sur la base de socket TCP. L'objectif des sujets sur cette plateforme est de l'améliorer en intégrant les nouveaux périphériques dont disposent les deux équipes de recherche et en adaptant les protocoles de communication pour utiliser des protocoles de "référence". Un deuxième objectif est d'étudier la possibilité de porter cette plateforme sur des périphériques dédiés (notamment des Raspberry pi).

Environnement

  • Système : Linux
  • Langage : C / C++
  • Bibliothèque : OpenCV, Raspberry pi

Apprentissage de la programmation

Contexte

Le département informatique dispose d'une plateforme robotique (lego mindstorms NXT et EV3, ...) qui est utilisée dans le cadre de manifestations à destination du grand public. Pour cela, il est nécessaire de fournir aux utilisateurs un environnement de programmation pédagogique, simple et intuitif.

Objectif

Sur la base de frameworks existants (Scratch, SNAP!, Blockly), l'objectif est de proposer une adaptation de ce framework dédiée à la robotique. Cet environnement devra proposer, au minimum, les fonctionnalités suivantes :

  • configuration du chassis (branchement des capteurs/effecteurs)
  • accès aux données issues des capteurs
  • envoi de commandes aux effecteurs
  • ...

Environnement

  • Système : Linux
  • Langage : HTML5, Javascript
  • Bibliothèque : Scratch, Snap!, Blockly, ...

Calcul temps réel de visibilité/éclairage dans des environnements 2,5d

Objectif

La visualisation d'environnements complexes est une tâche gourmande en ressources surtout lorsque l'environnement est très détaillé. Ceci est d'autant plus vrai lorsque cette visualisation se fait à distance (modèles 3d hébergés sur un serveur distant, visualisation sur un client léger) ou que l'on cherche à simuler la perception d'un grand nombre d'entités autonomes dans cet environnement. L'objectif de ce projet est de préparer la mise en place d'une application client-serveur multi-utilisateur de visualisation d'environnements 3d.

Environnement

  • Système : Linux
  • Langage : C / C++
  • Bibliothèque : Unity3d

API de communication unifiée pour la robotique

Objectif

Le département informatique dispose d'un certain nombre de robots différents les uns des autres (Thymio, Lego mindstorm, Dash'n dot, ...). Chaque robot dispose de sa propre API de programmation et de communication. Ce qui rend complexe l'utilisation de l'ensemble des robots de manière transparente. Nous disposons de plus, d'un certain nombre de raspberry pi pouvant être connectés à la plupart de ces robots. L'objectif de ce sujet est d'implémenter, sur Raspberry pi, une API et un daemon systeme permettant d'unifier la façon de communiquer avec les robots et surtout de les programmer.

Environnement

  • Système : Linux
  • Langage : C / C++
  • Bibliothèque : Raspberry pi, ...

Corrélation entre captation 3d et simulation

Objectif

L'objectif de ce sujet est double. Dans un premier temps, on souhaite capter, via une caméra, un phénomêne physique simple (par exemple une balle de tennis tombant sur le sol). La deuxième partie consiste à développer une simulation virtuelle de ce phénomêne. Enfin, il faut coupler ces deux algorithmes afin que la simulation puisse guider la captation ou que la captation permette d'initialiser le processus de simulation.

Environnement

  • Système : Linux
  • Langage : C / C++
  • Bibliothèque : OpenCV, ...

Analyse et corrélation de données entre Myo et LeapMotion

Objectif

Le département informatique dispose d'un certain nombre de périphériques permettant de capter des mouvements fins (bras, mains, doigts). Les Leap motion permettent de capter la position et l'orientation des différentes articulations de la main. Le bracelet Myo quant à lui permet de capter l'activité musculaire de l'avant-bras. L'objectif de ce sujet est d'analyser les flux de données issus de ces deux capteurs afin de les corréler dans différentes situations (variations sur la placement et l'orientation des capteur). A terme, il faudrait etre capable de se servir de cette analyse pour réaliser un apprentissage de geste afin de pouvoir mettre en place des algorithmes de reconnaissance n'utilisant que le bracelet Myo.

Environnement

  • Système : Linux
  • Langage : C / C++
  • Bibliothèque : Leap Motion Sdk, Myo Sdk

Estimation de plans principaux dans des flux vidéo+profondeur

Objectif

Nous disposons actuellement d'un certain nombre de capteurs de profondeur (type kinect) permettant, pour un point de vue donné, d'obtenir une estimation de la profondeur en chaque point d'une image. La plupart des méthodes de reconstruction multi-capteur, ou utilisant un capteur en mouvement, fournissent un nuage de points 3d plus ou moins bien recalé. L'objectif de ce projet est d'implémenter une méthode permettant, à partir d'une carte de profondeur, d'estimer un certain nombre de plans 3d permettant de décrire l'environnement. La deuxième partie du projet concerne le recalage de deux ensembles de plans 3d issus de deux prises de vues à partir de positions différentes.

Environnement

  • Système : Linux
  • Langage : C / C++
  • Bibliothèque : OpenNI, OpenCV, ...

Recalage de modèles volumique et surfacique

Objectif

Dans le cadre de la plateforme Oasis, nous disposons d'un dispositif permettant de reconstruire un modèle volumique (sous la forme d'une grille de Voxels) d'une personne filmée par plusieurs caméra. Ce modèle 3d n'est pas forcément adapté à un affichage réaliste. Nous disposons de plus de modèle 3d surfaciques plus ou moins génériques. L'objectif de ce projet est de proposer et mettre en oeuvre une méthode permettant d'adapter les modèles surfaciques à la morphologie (et à l'aspect) de la personne filmée en utilisant le modèle volumique.

Environnement

  • Système : Linux
  • Langage : C / C++
  • Bibliothèque : ...

Mise en oeuvre d'un simulateur physique de pièces mécaniques (type Lego)

Objectif

La conception de construction Lego (notamment de Lego Technics) est assez compliqué. Elle permet cependant de faire passer, à des personnes non initiées, des concepts de plus haut niveau notamment en ce qui concerne la physique et la mécanique du mouvement. L'objectif est de développer, sur la base du moteur physique d'Unity3d, une application qui, à partir d'un modèle lego (définit en utilisant la bibliothèque Ldraw) permette de simuler le comportement des pièces mécaniques en fonctions des forces appliquées.

Environnement

  • Système : Linux
  • Langage : C / C++
  • Bibliothèque : Ldraw, Unity3d