

Former Semester Projects
45 projects found
Développement d’un système auditif pour le robot humanoïde RobotaAndré Noth (MT) Robota est un mini-robot humanoide utilisé dans le cadre d'expériences thérapeutiques avec des enfants. Afin de rendre le système plus versatile, l'utilisation d'un clavier a été remplacée par la reconnaissance vocale. Ce project a pour but de développer un jeu dans lequel Robota intéragit avec son interlocuteur de manière purement vocale. Un programme sera écrit en C/C pour analyser la sortie spectrale du son, provenant de deux microphones, afin de déterminer la direction de provenance du son. Le programme sera intégreé au système de contrôle moteur du robot pour diriger les mouvements de tête du robot afin de suivre précisément la direction de provenance du son.
|
|
|||||||||||||||||
Analyse de la capacité d’un réseau de neurones récurrent a délai temporelAlex Mathey (IN), André Maurer () La capacité d’accumulation d’un réseau de neurones artificiel peut être mesurée à l’aide d’outils développés en théorie de l’information. On déterminera une mesure de l’information maximale qui peut être transmise par un réseau de neurones récurrent à deux couches, entraîné par des règles hebbiennes. On déterminera une relation entre la capacité du réseau et la corrélation des entrées des nœuds du réseau.
|
|
|||||||||||||||||
Construction d’un bras mécanique pour le robot humanoïdeLorenzo Piccardi (MT), Matteo Calzascia () Ce projet consiste en un travail d’étude et de développement d’un prototype de bras articulé à 4 degrés de liberté: 2 pour l’épaule, 1 pour le coude, 1 pour la pince. L’étude définira le type de moteurs, la longueur et la position d’ajustement des axes de rotation, de sorte à satisfaire les contraintes en dimension, poids et force du bras afin de fixer le bras sur un mini robot humanoïde de 2 Kilos et 50 cm. Le travail de construction du bras sera fait en collaboration avec André Guignard.
|
|
|||||||||||||||||
Développement d’un système de reconnaissance visuelle pour le robot humanoïdeYves Linder (MT) Un programme sera écrit en C/C pour analyser la sortie visuelle d’une camera vidéo digitale, afin de déterminer la position du visage et des mains de l’utilisateur. La détection sera basée sur la reconnaissance de couleur de la peau humaine et sur la détection du mouvement. Le programme sera intégré au système de contrôle moteur du robot pour diriger les mouvements de tête et des yeux du robot afin de suivre le déplacement de l’utilisateur. La programmation se fera dans l’environnement WindowsCE du PocketPC (Compaq Ipaq 3850), qui contrôle le robot.
|
|
|||||||||||||||||
Analyse du mouvement humainLaetitia Todesco (SC) Les adultes comme les enfants ont tendance à imiter de manière miroir (i.e., l’imitateur lève le bras droit lorsque le démonstrateur lève le bras gauche) les mouvements d’autrui. Une série d’expériences sur 12 sujets de 20 a 50 ans ont été conduites pour déterminer quel type d’imitation (miroir ou identique) était utilisé lorsque une animation du démonstrateur était montré dans des positions inversée (par exemple, la tête en bas ou de dos). Ce projet visera à analyser les données de ces expériences et à interpréter leurs résultats. Si le temps imparti le permet, le projet conduira aussi des expériences complémentaires avec de jeunes enfants. L’analyse des résultats se fera dans l’environnement Matlab ou en C/C .
|
||||||||||||||||||||
Construction d’une tête mécanique pour le robot humanoïde RobotaLorenzo Roos (MT) Ce projet consiste en un travail d’étude et de développement d’un prototype de tête articulée à 3 degrés de liberté. L’étude définira le type de moteurs, la longueur et la position d’ajustement des axes de rotation, de sorte à satisfaire les contraintes en dimension et poids de la tête d’une poupée conventionnelle. La tête sera montée sur le corps du mini robot humanoïde. Le travail de dimensionnement et construction sera fait en collaboration avec Mr. André Guignard.
|
|
|||||||||||||||||
Jeu interactif pour une paire de robots humanoïdes Robota.Cecile Grivaz (IN) Ce projet développera un programme de contrôle pour permettre à deux robots Robota d’interagir entre eux et avec un interlocuteur externe. Le travaille consistera à créer un jeu interactif, utilisant la synthèse vocale, durant lequel le robot dialogue avec son interlocuteur et avec l’autre robot. Le projet utilisera des modules, développés dans des projets précédents de reconnaissance de la couleur de la peau, et du mouvement, et de reconnaissance vocale, pour permettre une détection précise de la présence d’un interlocuteur. Le travail consistera en la création d’un module de dialogue qui fait apparaître le robot comme curieux, attrayant et plein d’humour. La programmation se fera dans l’environnement WindowsCE du PocketPC (Compaq Ipaq 3850), qui contrôle le robot.
|
|
|||||||||||||||||||
Neural Controller for ReachingNeil Redfern (PH) The aim of the project will be to develop a controller for a 7 degrees of freedom humanoid arm. The controller will use a dynamic simulator that encapsulates a simple model of the physics and biomecanical properties of the human arm (muscles, internal torques, external forces, etc., both when the hand is empty and in_contact/grasping/lifting an object). The simulator of the arm will be linked to a visual recognition system that can track the position of an object in 3D. The controller will implement a simple model of neural control of the arm. The controller will enable the avatar to pick up an object within its field of vision. Programming will be done in C/C++, exploiting the libraries of the Open Dynamics Environment (ODE).
|
|
|||||||||||||||||
Capture de mouvements humains avec senseurs gyroscopiquesVincent Hentsch (MT) Un système composé de 5 capteurs X-Sens permet de mesurer l'orientation absolue en 3 dimensions de différentes parties du corps. Ce projet, implémenté sous Linux, sera divisé en 3 phases:
|
|
|||||||||||||||||
Vision stéréoscopique et reconnaissance de trajectoiresChristophe Dubach (IN) La première partie de ce projet consistera en la réalisation d'un système de tracking 3-dimensionel d'objets colorés, à base de 2 webcams (vision stéréoscopique). Le projet se basera sur la libraire de traitement d'images OpenCV et se fera dans l'environnement Linux. Dans la second partie du projet, il s'agira de développer un algorithme d'analyse (apprentissage et reconnaissance) des trajectoires des objets en utilisant des chaînes de Markov cachées (Hidden Markov Models).
|
|
|||||||||||||||||
Cameras mobile pour les yeux du robot RobotaDimitris Pongas (MT) Ce projet consiste en l’insertion et le contrôle de mini-cameras dans le prototype de yeux mobiles de Robota. Le travail sera reparti en trois phases : une phase de design et construction, i..e. choix et insertion de deux mini-cameras dans les yeux ; une phase de design et programmation en C du microcontroller pour la lecture des entrées des cameras ; une phase de programmation des moteurs des yeux de Robota pour permettre un tracking d’objet lumineux.
|
|
|||||||||||||||||||
Analyse de mouvements humains avec senseurs gyroscopiquesJean-Joël Borter (MT) Un système composé de 5 capteurs de mouvements X-Sens permet de mesurer l'orientation absolue en 3 dimensions de différentes parties du corps humain. Ce projet, implémenté sous Linux, sera divisé en 3 phases:
|
|
|||||||||||||||||
Modélisation du poignet humain dans le but de reproduire une experience neurophysiologiqueMara Dalla Valle (IN) D'après des études neurophysiologiques, il semblerait que des popuations de neurones du cortex moteur actifs lors du déplacement du poignet semblent coder pour la direction du mouvement dans différents référentiels (p.ex. de de l'observateur, du poignets ainsi qu'un intermédiaire). Le but de ce projet est dans un premier temps de créer un modèle simple du poignet humain, et ensuite d'appliquer un réseau de neurones en développement dans notre laboratoire afin de pouvoir comparer notre modèle avec ces résulats neurophysiologiques.
|
|
|||||||||||||||||
Comment imitons-nous ?Guilhem Sorro (MT), Céline Meyer (), Jean-Luc Brocard () Les adultes comme les enfants appliquent une grande gamme de décisions lorsqu’ils imitent même les gestes les plus simples. Par exemple, ils ont tendance à imiter de manière miroir (i.e., l’imitateur lève le bras droit lorsque le démonstrateur lève le bras gauche) lorsqu’ils reproduisent des mouvements abstraits (sport, danse). Cependant, lorsqu’ils imitent des mouvements fonctionnels (lacer ses chaussures), ils préfèrent une imitation identique (bras gauche pour bras gauche) et privilégient la relation main-object à tout autre paramètre. Ce projet consistera à déterminer quel type d’imitation est préféré suivant la tâche. Ce projet se divisera en deux phases: 1) Dans un premier temps, il faudra mener à bien une série d’expériences sur environ 20 sujets de 20 a 50 ans pour déterminer quel type d’imitation (miroir ou identique) est utilisé lorsqu’il nous est demandé d’imiter des gestes abstraits (danse/sport), symboliques (lettres de l’alphabet) ou fonctionnels ; si le temps imparti le permet, le projet conduira aussi des expériences complémentaires avec de jeunes enfants de 4 à 5 ans ; 2) dans un deuxième temps, il s’agira d’analyser les données de ces expériences et d’interpréter leurs résultats. L’analyse des résultats se fera dans l’environnement Matlab ou en C/C++.
|
|
|||||||||||||||||||
A Humanoid Robot that can paintJulien Epiney (MT) This project aims at developing a nice demonstration program in C/C++
under Linux, to show the
capacities of the Hoap2 humanoid robot from Fujitsu that we have in our
lab. The aim is to have a robot that can extract visual features from a face, and then draw the
portrait of somebody on a sheet of paper.
|
|
|||||||||||||||||
Construction d’un kit de robot humanoïde et bio inspireMadeleine Kaegi (MT) Ce projet consiste en un travail d’étude et de développement d’un prototype de kit robotique pour l’utilisation dans le cadre de TP de robotique de section MT 4e année. Ce travail se basera sur un nombre de kit mécanique existants dans le commerce. L’étude Définira le nombre minimal de moteurs, d’axes de rotation et d’engrenages nécessaires pour permettre la construction d’au moins trois robots différents, à forme humaine ou animale. Le travail de construction des robots se fera en collaboration avec André Guignard.
|
|
|||||||||||||||||||
Caméra binoculaire et tracking de l’utilisateur pour le robot humanoïde HOAP-2Ted Choueiri (MT) Ce projet visera à pourvoir le robot humanoïde HOAP-2 avec un système de vision binoculaire. Dans un premier temps, il s’agira de créer un système d’attachement de deux Quickcam caméras standards sur la tête du robot. Ce travail de design mécanique se fera en collaboration avec André Guignard, ingénieur mécanicien. Dans un deuxième temps, il s’agira d’intégrer les librairies existantes pour la stereovision aux librairies existantes de contrôle du robot humanoïde. Finalement, il s’agira de faire un code démontrant l’intégration de la vision et du contrôle moteur, grâce auquel le robot traquera le visage et les mains de l’utilisateur en continu.
|
|
|||||||||||||||||
Reconnaissance et tracking 3d de visagesRaphael Ullmann (MT) Ce projet visera à développer un système de reconnaissance de visage sur la base d’une image de camera Quickcam. Pour cela, on utilisera des librairies existantes, basee sur un réseau de neurones de type Hopfield et un Hidden Markov Model, ainsi que des méthodes de preprocessing de l’image. Le travail se basera sur une camera sphere de logitech et utilisera les commande pan-tilt et zoom de la caméra pour diriger la caméra vers le visage de l’utilisateur et obtenir la meilleure reconnaissance. On déterminera de manière quantitative les performances de la reconnaissance et on optimisera les paramètres de tracking et reconnaissance de manière à obtenir d’excellente performances.
|
||||||||||||||||||
Système de speech pour le robot humanoide HOAP-2Xavier Perrin (MT) Ce projet visera à pourvoir le robot humanoide HOP-2 avec un système de détection et production du son et de la parole. Dans un premier temps, il s’agira de créer un système d’attachement de microphone et haut-parleur sur le robot. Ce travail de design mécanique se fera en collaboration avec André Guignard, ingénieur mécanicien. Dans un deuxième temps, il s’agira d’intégrer des librairies existantes pour la récupération du son, la reconnaissance et synthèse vocale sous linux aux librairies existantes de contrôle du robot humanoïde. Finalement, il s’agira de faire un code démontrant l’intégration du son et du contrôle moteur, grâce auquel le robot pourra battre le rythme d’une musique simple, reconnaître des mots simples et y répondre avec des phrases simples.
|
||||||||||||||||||
3D Reconstruction using StereoVisionJean Mabillard (MT) Le but ce de projet est de développer un système de reconstruction 3D à partir d'images réelles, en utilisant un logiciel de stéréovision utilisé dans notre laboratoire.
Ce projet consistera à développer un algoritme qui déterminera "on-line" la position, taille et orientation d'objets de couleur à partir des caméras. Pour simplifier, seules des primitives simples, tels que cubes, cylindres, sphères seront considérées.
Enfin, ce système permettera de créer un modèle simple de l'environement.
This project aims at developping a 3D-Reconstruction mechanism from real images through a Stereo-Vision system currently used in our laboratory. The project will consist in writing an algorithm to determine the location, size and orientation of a colored object, as well as to track on-line the object, using the output of two cameras. To simplify the task we will consider objects with basic geometrical shapes, such as cubes, cylinders and spheres. Finally, the system should lead to the creation of a simple 3D model of the environment.
|
|
|||||||||||||||||
Système de sécurité et localisation pour jeunes enfantsLoubna El Arabi (SC), Eric Bany () Ce projet visera à développer un prototype de système de sécurité et de localisation pour jeunes enfants utilisable dès 1an. Le système déterminera en tout temps la position de l'enfant via GPS et enverra l'information aux parents via une connexion sécurisée internet. Il s'agira tout d’abord de faire une recherche de solutions existantes (p.ex. Locatis.ch), et de lister les éléments informatiques et électroniques utilisés par ces solutions. Il faudra ensuite se documenter sur la possibilité d’acquérir ces même éléments en une forme miniaturisée. Finalement, il faudra créer les schémas électroniques pour la version miniature et définir un design mécanique pour attacher le système sur l’enfant de manière non visible (collier, bracelet, inséré dans les habits). Safety and localization system for young children.The goal of this project is the development of a prototype of safety and localization system for young children (1 year old and more). The system will determine at any time the position of the child via GPS and will send information to the parents via a secured Internet connection. First of all, a research for existing solutions will be done (for example Locatis.ch), and a list of the data-processing and electronic elements used by these solutions will be established. Then a research will be done to document the possibility of acquiring these same elements in a miniaturized form. Finally, the electronic sketch will be created for the miniature version and a mechanical design will be done to attach the system on the child in a way that the system will be invisible from the outside (collar, bracelet, inserted in the clothes).
|
|
|||||||||||||||||
Apprentissage pour le contrôle de mouvements de reachingAlexander Habermeier (MT) Le but de ce projet est de développer et d’implémenter un algorithme d’apprentissage pour le contrôle de mouvements de reaching. L’idée est de partir d’un contrôleur développé au sein du laboratoire et voir si ce contrôleur peut être appris par le robot, à la manière d’un bébé apprenant à contrôler son bras. L’étudiant partira donc ce contrôleur existant et développera un algorithme pour en apprendre les paramètres. Plusieurs algorithmes pourront être testés et comparés. Le développement se fera de façon progressive, en apprenant un ensemble toujours plus grand de paramètres et donc en diminuant au fur et à mesure les contraintes sur le contrôleur. Cette progression sera déterminée de manière plus précise de concert avec l’assistant, une fois que l’étudiant aura compris le fonctionnement du contrôleur.
|
|
|||||||||||||||||
Direction du regard avec capteurs gyroscopiquesPatrick Schoeneich (MT) A l'aide d'un capteur gyroscopique xsens, il est possible de determiner la direction de la tete d'un utilisateur, pour determiner ce qu'il est en train de reagrder. Un systeme de vision stereoscopique, developpe dans notre labo, permet de tracker des objets colores sur une table. Le but du projet est d'extraire la direction du regard, apres une phase de calibration, et de tester la performance du systeme realise. Comme test, un scenario d'interaction avec le robot humanoide HOAP2 sera cree. L'utilisateur regardera un objet, puis le robot. Le robot devra alors pointer l'objet selectionne. Un signe de tete fait par l'utilisateur ('oui' ou 'non') permettra alors de determiner si le bon objet a ete pointe par le robot. By using one xsens gyroscopic sensor, one can track the direction of the user's head, to determine where he is looking at. An external stereoscopic vision system, developed in our lab, will be used in this project to track colored objects on a table. The goal of the project is to extract the gaze direction information, after a calibration process, and to test the performance of the system. As a testbed, an interaction scenario with our HOAP2 humanoid robot will be created. The user will first look at an object, then at the robot. At this time, the robot will point the object selected by the user. A 'yes' or 'no' head signal from the user will then be detected to determine if the right object has been selected.
|
|
|||||||||||||||||
Manipulation bi-manuelle pour un robot humanoidJérôme Parent (MT) Le but de ce projet de semestre est de doter un robot humanoid de capacités élémentaires de manipulation bi-manuelle. Plus précisément, le projet consiste à développer un contrôleur permettant au robot de saisir un objet avec les deux mains, de le transporter et de le poser ailleurs. Dans un premier temps, l’étudiant prendra un contrôleur existant permettant au robot d’effectuer des mouvements de reaching de la main droite et l’appliquera à la main gauche. Ensuite le contrôleur proprement dit sera développé. Il comportera quatre phases : l’approche (qui existe déjà), la saisie, le transport et le lâcher. Le contrôleur sera implémenté et testé en simulation puis sur le robot. Un rapport sera rendu décrivant le contrôleur et ses limitations, ainsi que les résultats des tests effectués. En annexe, le code, structuré et commenté, sera remis en version électronique.
|
||||||||||||||||||
Contrôle d’un moteur synchrone avec un DsPicFabrice Gaille (MT) Le LASA et le BIRG ont développés ensemble le DOF BOX, unité, à un ddl, d’un ensemble reconfiguration permettant de tester différentes morphologies de robots. Cette unité comporte actuellement un moteur DC de 5W commandé par un DsPic à travers une électronique de puissance dédiée. Ce moteur est à la limite des spécifications en terme de densité de puissance pour cette application. Les moteurs synchrones exhibant de meilleures caractéristiques que les moteurs DC, le besoin se fait sentir de migrer vers cette technologie. Le but de ce projet est de choisir et d’adapter un moteur synchrone à la mécanique existante, comme première approche de l’utilisation de ce type de moteur. Il s’agit donc de :
|
|
|||||||||||||||||||
L’étude de mouvements humainsFrançois Rey (MT) Le but de ce projet est de comprendre la nature de simples gestes humains et des erreurs observées lorsque ceux-ci sont exécutes par des patients avec lésion cérébrale. L’étudiant pourra participer aux expériences avec des patients au CHUV et participera au développent d’un logiciel pour l’analyser des mouvements, y compris le développent d’une interface pour la visualisation, enregistrement et recognition des données d’un jeu de gants de données.
|
|
|||||||||||||||||||
Développement d’une carte DsPic pour le contrôle d’un moteur synchroneSébastien Romain (MT) Ce travail consiste à développer et à mettre en route une carte électronique pour l’étude des moteurs synchrones. La carte s’articule autour d’un microcontrôleur DsPic de Microchip, comporte au minimum une interface CAN (Controller Area Network) et dispose de l’électronique de puissance et de contrôle d’un moteur synchrone. Ce projet s’effectue en collaboration et en parallèle avec un projet qui définit l’électronique de mesure (tension et courant de phase) et la méthode de commande sur DsPic d’un moteur synchrone. A la responsabilité de l’étudiant ; la synthèse de l’électronique, la production et le déverminage de trois cartes, et une application de test (self test) sur DsPic pour tester le bon fonctionnement des composants électroniques et interfaces prévues. Un document de type manuel d’utilisateur décrivant la partie matérielle est fortement souhaité.
|
||||||||||||||||||
Estimation de la position d'un robot modulaire (DOF BOX II) par stéréovisionThomas Reichert (EL) Le DOF BOX II est consitué de plusieurs modules articulés identiques que l'on peut assembler à volonté pour créer un robot. Le but de ce projet est d'implémenter un algorithme estimant la position et l'orientation d'un tel robot modulaire en se basant sur la position de marqueurs visuels fixés au robot. L'étudiant(e) devra implémenter un algorithme estimant la position du robot connaissant la configuration des modules, la position des moteurs, et la positions des marqueurs visuels. Une petite interface graphique sera ensuite implémentée afin de permettre la visualisation du résultat. On pourra ainsi voir le vrai robot se déplaçant et, à l'écran, un simulateur indiquant la position et l'orientation estimée du robot.
|
|
|||||||||||||||||
Implémentation d'un module de locomotion pour le robot HOAP3Aïsha Hitz (MT) Nous travaillons dans notre laboratoire principalement sur la programmation de robots par démonstrations. Les tâches enseignées au robot sont des tâches de manipulation. Actuellement lors de l'exécution de ces tâches, le robot est assis sur un socle et reste immobile. Le but de ce projet est d'implémenter un module de locomotion qui permettrait de garder le robot debout et de le déplacer si nécessaire vers la table.
|
|
|||||||||||||||||
Implémentation sur le robot HOAP3 d’un algorithme d’apprentissage basé sur l’imitation et le reinforcement learning.Murielle Richard (MT) Dans notre laboratoire, nous travaillons sur la programmation de robot par démonstration. Nous avons développé un algorithme basé sur un système dynamique et du reinforcement learning. Cet algorithme n’a pour le moment été appliqué qu’en simulation et pour des tâches de manipulation (en utilisant le torse et les bras du robot). Le but de ce projet serait dans un premier temps d’implémenter cet algorithme sur le robot afin de le tester et dans un deuxième temps, de le porter sur les jambes du robot en collaboration avec l’étudiant(e) du projet “Implémentation d'un module de locomotion pour le robot HOAP3”.
|
|
|||||||||||||||||
Rotation invariant face detection training for the WearCamSandra Wieser (MT) La WearCam est une camera wireless placée dessinnée pour aider la diagnose de l'autisme dans les jeunes enfants. La detection de visages est une partie fundamentale de l'analyse des données de la WearCam. Courramment le systeme de detection de visages utilise la librairie de base de OpenCV.
L'etudiant va devoir collectionner un database de visages (soit en utilisant des databases online ou en enregistrant des images directement) et re-entrainer la detection de visages avec les Boosted Cascades of Weak haar-like Classifiers. L'entrainement se fera sur des visages tournés a' plusieurs angles differents. Le but sera d'obtenir un système robuste qui peut detecter les visages sous rotations et illuminations variées.
|
||||||||||||||||||
Analyse vocale pour apprendre des tâches de manipulation à un robot humanoïde / Vocal analysis to teach a humanoid robot manipulation skillsCaroline Nadeau (MT) Analyse vocale pour apprendre des tâches de manipulation à un robot humanoïde Vocal analysis to teach a humanoid robot manipulation skills To teach a humanoid robot manipulation skills, we previously developed a probabilistic framework allowing to learn the essential characteristics of a manipulation skill by providing multiple demonstrations this skill to a humanoid robot. This is done by using motion sensors attached to different parts of the user's arms recording joint angle trajectories that are then used to extract the essential characteristics of a set of gestures. The aim of this project is to use vocal information as additional information to speed up learning. Indeed, it would be useful for the user to have the ability to highlight which are the important parts in the motion that he/she is currently executing, i.e., to have the ability to tell the robot when it must pay a particular attention for the reproduction of the skill. In this project, we suggest to do this by analyzing the vocal trace of the user while performing the demonstrations. We take here the perspective that simple features such as pitch or energy can be more robust and generic than speech processing to highlight particular characteristics of the skill, e.g. by using different intonation when explaining the skill to the robot ("Take THIS object and put it HERE").. The project will be developed in a Matlab environment through the help of a sound analysis toolbox. After development, a user study will be conducted to evaluate the user-friendliness and the naturalness of the system when used by untrained user.
|
|
|||||||||||||||||||
Apprentissage hiérarchique d’un mouvement à l’aide de chaînes de Markov cachées (HMM)/ Hierarchical learning of a movement through Hidden Markov ModelAdrian Bodenmann (CH) Apprentissage hiérarchique d’un mouvement à l’aide de chaînes de Markov cachées (HMM) Hierarchical learning of a movement through Hidden Markov Model (HMM) To allow a humanoid robot to learn by imitation, a probabilistic framework has previously been developed in our laboratory based on Gaussian Mixture Model (GMM) encoding a set of trajectories demonstrated by a human user. This framework requires to model each gesture separately and does not allow to re-use or share some parts of the motion from one model to the other. The aim of this project is to explore Machine Learning solutions that would prevent this drawback. To do so, the proposed method consists in learning gestures by using a combination of Hidden Markov Model (HMM) and Gaussian Mixture Model (GMM), where each state of the HMM would encode motion primitives through GMM. For example, if a GMM encodes the motion when drawing the alphabet letter 'A' and if another GMM encodes the letter 'B', an HMM could be used to organize the different models to allow writing the word 'AB'. Such an architecture would allow to re-use the motion primitives by organizing them in a different order to learn a new skill by sharing the same set of motion primitives. To deal with the transitions between two consecutive motion elements, the suggested approach is to use regression techniques applied to Gaussian Mixture Model (GMM), namely Gaussian Mixture Regression (GMR), which would allow to retrieve smooth and continuous motion. The project will be implemented and tested under a Matlab environment. After development of the software, a HOAP-3 humanoid robot will be used to record motion trajectories by grasping the robot arms and moving them through a set of tasks. Using this dataset, an evaluation of the efficiency of the developed system will then be conducted.
|
|
|||||||||||||||||||
Implementation of bi-manual coordinated task on Katana robotic armsLoic Alexander (MT) Bi-manual coordination is an interdependency between two arms’ movements in the time and space domains. To ensure the robot’s arms coordination, a controller that generates movements, should control both time of the motion duration and mutual spatial positions of two arms. The aim of this project is to implement the controller for a bi-manual discrete task on Katana robotic arms. A student has to: i) study the existing controller for HOAP-3 robot; ii) implement analogous controller for KATANA robotic arms (new robots in our lab, available starting from September 2007); iii) test the controller in Webot simulator and on the real robots; iv) produce a report describing the structure of the controller and the results of the performed experiments.
|
|
|||||||||||||||||
Self-collision detection for a humanoid robotFrancis Geroudet (MT) Le but de ce projet est de permettre à un robot humanoide d'éviter de se taper lui-même en effectunt des tâches de manipulation. L'étudiant développera d'abord un modèle géométrique du robot constitué de formes simples (sphères, cylindres et parallélipipèdes), puis il choisira et implémentera un algorithme de détection de collisions. Cet algorithme devra tourner en temps réel sur le robot et s'assurer que les commandes envoyées sont ne provoquent pas de collision.
|
||||||||||||||||||
Imitation de mouvements de jambes par un robot humanoïde en utilisant des capteurs de mouvements / Imitation of legs motion by a humanoid robot through the use of motion sensorsPulvin Manon (MT) Imitation de mouvements de jambes par un robot humanoïde en utilisant des capteurs de mouvements
Imitation of legs motion by a humanoid robot through the use of motion sensors We have developed in our laboratory a Matlab application recording joint angle information from a set of motion sensors attached to different parts of the user's body in order to record upper-body gestures when performing manipulation skills. These skills can then be reproduced by a HOAP-3 humanoid robot by copying either the joint angle trajectories or the hand paths recorded during the demonstrations. This project consists of extending this application to the imitation of legs motion to teach different displacement skills to a HOAP-3 humanoid robot (e.g., side-step, bending of the knees, standing on one foot, kicking a ball). The project will be implemented in a Matlab environment.
|
|
|||||||||||||||||
Calibration automatique d'un système de vision pour un tracking 3DMichaël Bungu (MT) Calibration automatique d'un système de vision pour un tracking
3D Automatic calibration of a 3D vision tracking system This project aims at creating a user-friendly vision system to track the 3D positions of a set of markers for human-robot interaction. For a robotic application, the traditional calibration/tracking procedure of a vision system based on multiple cameras consists of: (1) extracting the intrinsic and extrinsic parameters of the cameras by using for example a chessboard as a reference (tracking of the black squares defining a plane); (2) geometrical reconstruction of the 3D Cartesian position from the 2D positions of the markers on the cameras images; (3) defining the geometrical transformation to convert the 3D positions from the vision system's frame of reference to the robot's frame of reference. In this project, we propose an alternative approach to automatically learn the mapping between the position of the marker on the 2D cameras images and the 3D position in the robot's frame of reference. In a first step, a calibration process will be developed that consists of placing a marker on the tip of a robotic arm and displacing manually the robotic arm through its workspace. By knowing the 3D position of the end-effector through the robot's direct kinematics and by tracking simultaneously the 2D position of the marker on each camera's image, the system learns the mapping between the vision system and the robot. Then, after collecting a set of datapoints through this calibration process, it is possible to estimate the position of an object through regression. To do so, the use of Locally Weighted Regression (LWR) and Gaussian Mixture Regression (GMR) will be compared. In a second step, the developed system will be compared to the existing traditional setup based on intrinsic/extrinsic parameter extraction and geometric reconstruction. An evaluation of the tracking performance will be conducted, based on precision and speed of the procedure. In a third step, an imitation game will be used to illustrate the setup, by using a set of markers placed on the arms/hands of the user to track his/her gesture while doing a manipulation task, and by using the robot to copy the gesture tracked by the vision system. The project can be developed either in Matlab or in C/C++ through the OpenCV vision library.
|
|
|||||||||||||||||
Apprentissage incrémental d'un mouvement pour un robot humanoïde en utilisant le support de l'utilisateurFlorent D%27halluin (MT) Apprentissage incrémental d'un mouvement pour un robot
humanoïde en utilisant le support de l'utilisateur Incremental learning of a motion for a humanoid robot through the support of a human teacher A user-friendly means of transferring new skills to a robot is to directly teach it by moving it manually through the motion to show the task to achieve (kinesthetic teaching). However, if the robot has too many degrees of freedom, it becomes difficult to show the whole motion in a single demonstration. One way to resolve this issue is to teach first only a subpart of the motion (for example by controlling only the first two motors), and then teach the remaining parts while the robot executes the first subpart already acquired. However, this simple incremental process requires that the user performs the remaining motion simultaneously with the robot, and it may be difficult to be on time when the motion is complicated. In this project, we then propose to develop a more robust approach to incrementally teach new motions to two Katana robotic arms, where the user can perform each subpart of the task at the speed and rhythm that he/she wants. The user can then provide support to the robot when executing a skill, i.e. the user moves a subset of motors manually while the robot follows as best as possible his/her motion with its remaining motors (scaffolding process). To do this, we suggest to first encode multiple demonstrated trajectories in Gaussian Mixture Model (GMM). Through regression (Gaussian Mixture Regression), it is then possible to retrieve the expected values for the joint angles controlled by the robot, knowing the joint angles displaced by the user. The project can be implemented either in Matlab or in C/C++.
|
|
|||||||||||||||||||
Imitational learning of a human-robot joint bimanual taskCedric Bouzyd (ME), Cedric Bouzyd (), Cedric Bouzyd () In our laboratory we address the problem of Robot Programming by Demonstration. So far, we mostly concentrated on tasks that the robot should perform autonomously (interaction between human and robot occurs only at the learning stage), now we are going to research ways of interaction in joint activities. This project aims to check how the framework we developed for bimanual robotics movements can be applied to the case of a simple bimanual human-robot task. The tentative scenario assumes the following. Two persons demonstrate a simple task (e.g., carrying an object) to the robot: one of them moves robotic arm, another one, wearing X-sens suit, performs a human part of a movement. Hence, the robot will observe the movements using different modalities (own robot's movement will be recorded as a feedback from the motors, human movements will be recorded with X-sens suit). After several demonstrations the robot should be able to reproduce the task jointly with the user and adapt itself to certain perturbations in the human movements. During reproduction, human movements will be tracked to provide a robot with information concerning the current position of the user's arm. To realize this project, a student will have access to various software, developed in our lab: the system to record robotics movements, software to track human movements with xSens, the implemented learning algorithm and the robotics motor system, responsible for real-time movement generation. The student will use Katana robot that we have in the laboratory. This project is mostly experimental, thus student has to grasp the main ideas of the method that will be applied, and should be ready to set-up and analyze experiments.
|
||||||||||||||||||
Implementation of an Algorithm for Learning Vision Guided GraspingPeter Bachmann (MT) If we consider a robot in any environment different from a highly-structured one, we should assume that its successful manipulation abilities heavily depend on vision information about manipulated objects. Indeed, even for basic types of manipulation associated, e.g., with grasping an object, the robot has to be able to locate the object, track its displacements and, finally, identify how to effectively grasp it. In our laboratory we work on Robot Programming by Demonstration and, specifically, on extracting constraints from task's motion data that will allow a robot to reproduce the task and generalize it to various contexts. It will be advantageous to incorporate in the existing framework a method that automatically detects grasping points on manipulated objects. In this project a student should study and implement an existing method of grasping point detection. The concrete amount of work includes the following: 1) studying the proposed method and its demo software, written in Matlab; 2) collecting a library of synthetic 3D images of different objects (can be downloaded from the web); 3) marking grasping points on synthetic images; 4) implementing the learning algorithm to infer grasping points for an actual object on C++; 5) testing the system on the KATANA robotic platform.
|
||||||||||||||||||
Développement d’une représentation sensori-motrice du corps humain avec des réseaux de neuronesJérôme Sovilla (MT) Il est généralement admis que notre cerveau contient une représentation sensori-motrice de notre corps appelée « body schema ». Nous sommes intéressés a la création d’un modèle virtuel humain qui sera relié a un réseau de neurones artificiel capable a tout moment de tracker la position des différentes parties de l’humain.
|
|
|||||||||||||||||||
Ego Motion from Head-Mounted CameraAlexandre Tuleu (MT) Le but de ce projet est d'estimer la precision de l'estimation d'orientation absolue depuis des vidéos de la WearCam, une caméra Head-Mounted créée pour les enfants dans la recherche sur la diagnose de l'Autisme. Le flux optique des images donne une information sur comment les objets dans l'image ont bougé. Cependant reconstruir le mouvement de la camera (et donc de la tête) depuis cette information n'est pas trivial et necessite le choix d'un modele geometrique approprié. L'étudiant implementera un choix de ces modèles et comparera leur performance avec des données recupérés par les capteurs de mouvement X-Sens. Une implementation en C++ de la methode de Horn utilisant les quaternions sera fournie pour commencer. --- ENGLISH --- The goal of the project is to estimate the accuracy of absolute orientation estimation from the video images from the Wearcam, a Head-Mounted camera designed for children in the scope of Autism diagnosis. Sparse Optical Flow from the image gives information on how the objects in the image have moved. However the reconstruction of the camera (hence the head) motion from this information is not a trivial task and requires the choice of an appropriate geometrical model. The student will implement a choice of these models and compare their performance compared to the data obtained with the X-Sens motion sensors. For starters, a C++ implementation of Horn's method using quaternions will be provided.
|
|
|||||||||||||||||
3D tracking using multiple cameras in an occluded workspacePhilippe Berard (MT) Le but de ce projet est de mettre en place un systeme de tracking 3d en utilisant plusieurs cameras (3 ou plus) pour obtenir l'information de profondeur et pour resoudre les limitations dues aux occlusions qui surgissent lorsqu'on utilise uniquement deux cameras. Le trackeur sera utilisé dans un setup avec deux bras robotiques qui se deplacent dans un espace de travail defini. Le code source pour le tracking de patterns specifiques (ARTags et Fiducials) sera donné aussi que le framework pour obtenir les images des cameras. The goal of this project is to set up a 3d tracking system using multiple cameras (3 or more) to obtain depth information and to overcome occlusion limitations that often arise when using only two cameras. The tracker will be used in a setup with two robotic arms moving in a fixed workspace. The source code for tracking of specific patterns (ARTags and Fiducials) will be provided as well as the framework for obtaining the images from the cameras.
|
||||||||||||||||||
Kinesthetic Teaching of an Acrobatic Maneuver to an Aerial Robot.Adrian Arfire (MT) Programming by Demonstration (PbD) investigates natural means to teach skills to robots. In this method, the robot learns a given task from a set of demonstrations shown by the user. In our lab, we have widely used this method to teach different dynamical motions (e.g. writing alphabets, putting an object into a container, wiping a tray, etc.) to humanoid robots. In this project, it is desired to extend the applicability of the current framework for aerial robots, and to evaluate its performance for different aerial maneuvers including “loop”, “tight turn”, “eight maneuvers”, “stall”, etc. The airplane is a flying wing that is equipped with an IMU-GPS sensor to grab data during the flight. The project divided as follows: 1) investigating a set of parameters from the whole available data from the sensors (e.g. position, velocity, acceleration, control efforts, etc) that can describe well the dynamics of the motion for a specific aerial maneuver. 2) Grabbing data by performing some aerial maneuvers (the flight could be done by a pilot or by the student). 3) Applying the PbD on the data to learn the dynamics. 4) Improving the efficiency of the controller in accordance to the mission criteria (i.e. the performed maneuver should be as similar as possible to the demonstrations). Another note is that the designed controller should be able to work in conjunction with the aircraft main controller because it takes the control of the vehicle only during the maneuver.
|
|
|||||||||||||||||