440 likes | 556 Views
Apprentissage d’Associations Sons/Images en Robotique Développementale. Bérenger BRAMAS FLOWERS - INRIA - 2009 ISIMA F2 – Master opt. Robotique. Introduction:. Stage de fin de cycle d’ingénieur et de master (6 mois) INRIA Bordeaux – équipe FLOWERS
E N D
Apprentissage d’Associations Sons/Images en Robotique Développementale Bérenger BRAMAS FLOWERS - INRIA - 2009 ISIMA F2 – Master opt. Robotique
Introduction: • Stage de fin de cycle d’ingénieur et de master (6 mois) • INRIA Bordeaux – équipe FLOWERS • (FLOWing Epigenetic Robots and Systems) • Robotique développementale • HRI - Interfaces intuitives • Perception et apprentissage du monde par un robot • Sujet : Concevoir un système pour enseigner des objets à un robot en alliant sons/images Bérenger BRAMAS INRIA - 2009 2
Apprentissage d’Associations Sons/Images Plan : • - Présentation du contexte • Détails du sujet et définition des problématiques • - Méthodologie • - Aspect Audio • - Traitement Vidéo • - Associations, catégories • - Nao • - Aspects techniques • - Perspectives Bérenger BRAMAS INRIA - 2009 3
Apprentissage d’Associations Sons/Images Le sujet : • « enseigner des ‘objets’ (images/sons) à un robot » • Dans le but : • de reconnaître une image ou un son (et donc un objet) • de retrouver un objet dans une scène • de créer des échanges d’informations sur le ‘’monde‘’ entre l’utilisateur et le robot • Contrainte : sans catégorie sonore ou visuelle au commencement (le robot n’a pas de base de données avant de commencer l’apprentissage) Plan : [Présentation] Le contexte Problématiques Méthodologie Traitement Audio Traitement Vidéo Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 4
Apprentissage d’Associations Sons/Images Problématiques : • Pour enseigner des objets, il faut répondre à des problèmes de différents domaines • Quelles méthodes pour le traitement vidéo ou audio? • Quel mode d’interaction HR? • Comment montrer les objets au robot ? • Quelle technique utiliser pour les reconnaitre? • Comment associer les sons et les images ? Plan : [Présentation] Le contexte [Problématiques] Méthodologie Traitement Audio Traitement Vidéo Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 5
Apprentissage d’Associations Sons/Images Réalisation : • Système découpé en modules spécifiques pour chaque tâche : • Aspect sonore : • traitement sonore • mesure de similarité • Vidéo : • traitement • mesure de similarité • Système d’apprentissage des correspondances • Nao Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio Traitement Vidéo Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 6
Apprentissage d’Associations Sons/Images Module Audio: Méthode uniquement acoustique Pas de conversion en texte Pas d’information linguistique Basé sur une méthode répandue : PLP-Rasta Comparaison entre deux sons à l’aide de DTW (Dynamic Time Warping) Deux sons considérés semblables si la distance est inférieure à un seuil Plan : Présentation Le contexte Problématiques [Méthodologie] [Traitement Audio] Traitement Vidéo Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 7
Apprentissage d’Associations Sons/Images Module Audio : Pas de base de données initiale (pas de phonèmes ou d’informations sur l’interlocuteur) Pas de conversion en texte Découpage du flux sonore capturé en fonction des moments de silence (un son peut être une phrase, un mot, un bruit, …) Plan : Présentation Le contexte Problématiques [Méthodologie] [Traitement Audio] Traitement Vidéo Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 8
Ballon Tests Baallon Balloon [SON] Basket Baasket Baskét … Base de données Apprentissage d’Associations Sons/Images Comparaison : Test avec toute la base Plan : Présentation Le contexte Problématiques [Méthodologie] [Traitement Audio] Traitement Vidéo Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 9
Apprentissage d’Associations Sons/Images Comparaison : Sélection d’un représentant Plan : Présentation Le contexte Problématiques [Méthodologie] [Traitement Audio] Traitement Vidéo Association Nao Aspects techniques Perspectives Balleu Balle Baalle Bérenger BRAMAS INRIA - 2009 10
Ballon Tests Baallon Balloon [SON] Baasket Baaskt Bosket … Base de données Apprentissage d’Associations Sons/Images Comparaison : Test avec le meilleur représentant de chaque catégorie Plan : Présentation Le contexte Problématiques [Méthodologie] [Traitement Audio] Traitement Vidéo Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 11
Apprentissage d’Associations Sons/Images Module Audio : Système audio qui apprend et reconnaît les sons Mais choix à faire entre robustesse et rapidité Par exemple : La méthode avec comparaison du meilleur représentant donne de mauvais résultats si les interlocuteurs changent Le principe de comparaison est par la suite utilisé pour créer et utiliser des catégories Plan : Présentation Le contexte Problématiques [Méthodologie] [Traitement Audio] Traitement Vidéo Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 12
Apprentissage d’Associations Sons/Images Module Vidéo : • Objectifs : • Apprendre • Reconnaître dans une scène quelconque • Basé sur OpenCV et les descripteurs locaux de type SURF Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio [Traitement Vidéo] Association Nao Aspects techniques Perspectives Bérenger BRAMAS OpenSURF Liste de descripteurs SURF INRIA - 2009 13
Apprentissage d’Associations Sons/Images SURF : Descripteur SURF : - position/orientation/vecteur de 64 valeurs Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio [Traitement Vidéo] Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 14
Apprentissage d’Associations Sons/Images SURF : Problème : Comparaison entre deux images Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio [Traitement Vidéo] Association Nao Aspects techniques Perspectives Image 1 Distance : 0.2 Distance : 0.32 Distance : 0.25 Bérenger BRAMAS Image 2 Image 3 Image 4 Même objet Objet différent INRIA - 2009 15
Apprentissage d’Associations Sons/Images Descripteurs SURF • Comment enseigner les objets ? • Comment comparer deux images ? • Quand décider si un objet est présent sur une image ? Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio [Traitement Vidéo] Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 16
Apprentissage d’Associations Sons/Images Extraction de l’objet : Le système apprend tous les descripteurs SURF Il faut lui indiquer quels sont les descripteurs liés à l’objet et les autres (arrière plan) Méthode d’apprentissage de l’arrière plan pour ensuite faire la différence entre deux images Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio [Traitement Vidéo] Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 17
Capturer Image Comparer avec l’image précédente Non Fond Fixe Oui Capturer Image Toute l’image change Oui Non Extraction SURF Extraction du fond Enregistrement Apprentissage Vidéo : Bérenger BRAMAS INRIA - 2009 18
Apprentissage d’Associations Sons/Images Représentation : Pour chaque objet, le système stocke un film dans lequel chaque image contient des descripteurs SURF Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio [Traitement Vidéo] Association Nao Aspects techniques Perspectives Objet 1 Bérenger BRAMAS ?? Objet 2 Objet 3 INRIA - 2009 19
Apprentissage d’Associations Sons/Images Méthodes de correspondance : - Méthode proposée par David LOWE - Méthode utilisant un seuil - Méthode de « meilleures correspondances » Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio [Traitement Vidéo] Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 20
Apprentissage d’Associations Sons/Images Algorithmes de correspondance : Méthode que nous proposons Pour tous les points P1 de l’image 1 | Pour tous les points P2 de l’image 2 | | dist_p1_p2 = dist(P1,P2) | | si dist_p1_p2 < SEUIL | | | matches[P1].ajouter_correspondance_triees(P2 , dist_p1_p2) | | fsi | fpour fpour Tant qu’il y a du changement faire | Pour tous les points P1 de l’image 1 | | si !matches[P1].est_vide ET attitré(matches[P1].tete) != P1 | | | Dépiler matches[P1] jusqu’à trouver une correspondance | | fsi | fpour ftq Bérenger BRAMAS INRIA - 2009 21
Apprentissage d’Associations Sons/Images SURF : Correspondances Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio [Traitement Vidéo] Association Nao Aspects techniques Perspectives 0.1 0.15 0.1 0.04 Bérenger BRAMAS 0.01 INRIA - 2009 22
Apprentissage d’Associations Sons/Images SURF : Correspondances Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio [Traitement Vidéo] Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 23
Apprentissage d’Associations Sons/Images Filtres : • Filtre spatial (Efficient Visual Search for Objects in Videos, Josef & Andrew, 2008) • Pour chaque correspondance : trouver les voisins et filtrer ceux dont les voisins ne correspondent pas dans l’autre image Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio [Traitement Vidéo] Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 24
Apprentissage d’Associations Sons/Images Filtres : Filtre spatial Bérenger BRAMAS INRIA - 2009 25
Apprentissage d’Associations Sons/Images Filtres : • Filtre angulaire : • Parcourir les correspondances : calculer le changement d’orientation pour ne garder que l’orientation majoritaire Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio [Traitement Vidéo] Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 26
Apprentissage d’Associations Sons/Images Choix : En testant une image on obtient des correspondances avec chaque image de la base Comment savoir si un objet est sur une image ? Long travail d’approche globale durant le stage mais mauvais résultats Finalement approche image à image Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio Traitement Vidéo [Association] Nao Aspects techniques Perspectives Bérenger BRAMAS Objet 1 ?? Objet 2 INRIA - 2009 27
Apprentissage d’Associations Sons/Images Algorithme – choix : surf_in = calculer_surf( image_test ) Pour tous les films de la base | Pour toutes les images du film | | nb_corresp = count(correspondance(surf_in,film[f].image[i])) | | si nb_corresp > max_corresp | | | max_corresp = nb_corresp | | | max_f = f | | fsi | fpour fpour si nb_corresp > SEUIL | afficher : l’objet correspondant est ‘max_f’ Sinon | afficher : objet non reconnu fsi Bérenger BRAMAS INRIA - 2009 28
Apprentissage d’Associations Sons/Images Résultats : Plan : Présentation Le contexte Problématiques [Méthodologie} Traitement Audio [Traitement Vidéo] Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 29
Apprentissage d’Associations Sons/Images Résultats : 36 53 17 22 Bérenger BRAMAS INRIA - 2009 30
Apprentissage d’Associations Sons/Images Association : Mise en relation des modules Mise en relation des formalismes Choix : Un objet est « constitué » de plusieurs sons et plusieurs images On supprime les occurrences qui ne sont pas mise en relation avec l’autre type lors de l’apprentissage Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio Traitement Vidéo Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 31
Apprentissage d’Associations Sons/Images Associations sons/images : Vidéo Son Film Image Bérenger BRAMAS Catégorie INRIA - 2009 32
Livre Grand Livre Bleu Livre Vert Espace visuel Espace acoustique Apprentissage d’Associations Sons/Images Catégories acoustiques : Bérenger BRAMAS INRIA - 2009 33
Apprentissage d’Associations Sons/Images Nao : • Mise en application du système • (interactions) • Mais exécution du système sur PC Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio Traitement Vidéo Association [Nao] Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 34
Apprentissage d’Associations Sons/Images Nao : Interaction à l’aide de positions clés Normal Ne peut pas A trouvé apprendre l’objet Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio Traitement Vidéo Association [Nao] Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 35
Apprentissage d’Associations Sons/Images Interactions possibles : 1 ) Enseigner des objets 2 ) Demander de reconnaître un objet 3 ) Trouver un objet (utilise un algorithme de regroupement des points) Plan : Présentation Le contexte Problématiques [Méthodologie] Traitement Audio Traitement Vidéo Association Nao Aspects techniques Perspectives Bérenger BRAMAS INRIA - 2009 36
Ordinateur Matlab Acquisition & traitement du son C++ (QT, OpenCV) Traitement de l’image – Cœur du système Script – Positions clés LEDs Image - JPEG Apprentissage d’Associations Sons/Images Structure : Plan : Présentation Le contexte Problématiques Méthodologie Traitement Audio Traitement Vidéo Association Nao [Aspects techniques] Perspectives Bérenger BRAMAS INRIA - 2009 37
Apprentissage d’Associations Sons/Images Structure : Multi-langages Matlab, C++ (QT, OpenCv) , Ubri Utilisation de plusieurs processus, plusieurs THREAD, communication TCP, Mutex et de nombreux TIMER Multiplateformes Mais difficile à maintenir et présence de problèmes à l’heure actuelle : Récupération de l’image, tremblement, recouvrement de script Plan : Présentation Le contexte Problématiques Méthodologie Traitement Audio Traitement Vidéo Association Nao [Aspects techniques] Perspectives Bérenger BRAMAS INRIA - 2009 38
Apprentissage d’Associations Sons/Images Recouvrement de script Exemple lors de l’apprentissage : Objet devant caméra : Script { Arrêter mouvement en cours, Mouvement d’apprentissage } Objet hors caméra : Script { Arrêter mouvement en cours, Mouvement d’attente } Plan : Présentation Le contexte Problématiques Méthodologie Traitement Audio Traitement Vidéo Association Nao [Aspects techniques] Perspectives Evènement Positions Système Nao Script Bérenger BRAMAS INRIA - 2009 39
Apprentissage d’Associations Sons/Images A venir : Résolution des problèmes et davantage d’essais sur Nao Documentation (DOxygen et protocole de communication) Ecriture de plusieurs pages en Anglais Plan : Présentation Le contexte Problématiques Méthodologie Traitement Audio Traitement Vidéo Association Nao Aspects techniques [A venir] Perspectives Bérenger BRAMAS INRIA - 2009 40
Apprentissage d’Associations Sons/Images Perspectives : • Méthodologie : • SIFT • Clustering • Filtre angulaire local • Filtre spatial plusieurs fois d’affilé • Utilisation : • Essai avec des non spécialistes • Opinions d’utilisateurs • Test d’une base de connaissances plus importante Plan : Présentation Le contexte Problématiques Méthodologie Traitement Audio Traitement Vidéo Association Nao Aspects techniques [Perspectives] Bérenger BRAMAS INRIA - 2009 41
Apprentissage d’Associations Sons/Images Conclusion Bérenger BRAMAS INRIA - 2009 42
Apprentissage d’Associations Sons/Images MERCI - Démonstration – Questions ? - Bérenger BRAMAS INRIA - 2009
Apprentissage d’Associations Sons/Images Critère de choix : Le nombre de correspondances > SEUIL Bérenger BRAMAS INRIA - 2009 44