Comprendre les données visuelles à grande échelle
←
→
Transcription du contenu de la page
Si votre navigateur ne rend pas la page correctement, lisez s'il vous plaît le contenu de la page ci-dessous
Comprendre les données visuelles à grande échelle Karteek Alahari & Diane Larlus December 20th 2018 © 2017 NAVER LABS. All rights reserved.
Organisation du cours l Séance du jeudi 20 décembre – 8h15 à 11h15 l Deuxième cours l Présentation article 1 + quizz
Représentation d’images avec application à la recherche visuelle l Représentation d’images: introduction l Recherche visuelle d’images: introduction l Représentations locales des images l Représentations globales des images l Représentations d’images par apprentissage profond l Construction d’un système complet (étalés sur les cours 2 et 3 + les deux prochains articles sont pertinents)
Représentation des images – introduction Comprendre les données visuelles à grande échelle Cours 2: représentations locales, 30 décembre 2018
Espaces de représentation : Plan l Du monde réel à la description numérique l Représenter : pour quelle application ? l Difficultés l Indices visuels l Représentations globales vs représentations locales l Représentations « profondes »
Du monde réel à la représentation numérique l À notre échelle, les signaux que nous désirons acquérir sont continus l Leur représentation sur des supports numériques nécessite une opération de discrétisation destructrice → par opposition aux supports analogiques (bruit) l On distingue deux types d’opérations de discrétisation ► L’échantillonnage ► La quantification
L’échantillonnage l C’est l’opération qui consiste à choisir un support discret pour le signal ► support temporel (son, vidéo, …) ► support spatial (image, vidéo) ► support 3D (scanner, …) l Il est généralement régulier, mais pas nécessairement
L’échantillonnage l Le niveau de discrétisation requis est fonction de la plage de fréquence que l’on veut pouvoir restituer l Effet de moiré – fréquence vidéo l halftoning pour éviter le moiré :
Quantification l C’est l’opération de discrétisation des amplitudes du signal l Dans un sens plus général, la quantification peut être vectorielle f: Rd → F, avec F={1,2,..k} ensemble fini d’entiers l La quantification définit un diagramme de Voronoï: → une décomposition d’un espace métrique déterminée par les distances à un ensemble discret de points
Exemple de discrétisations du signal IMAGE (couleur) l Echantillonnage: 3 grilles de valeur, 1 grille par composante de couleur ► Bayer pattern: ► Les capteurs photographiques sont sensibles à l’intensité non à la couleur ► Une solution: des filtres devant chaque photodiode ► La perception humaine est plus sensible au vert l Quantification: RGB : 8 bits de quantification pour chaque couleur ⇒ 24 bits par pixels (pixel = élément du support du signal)
La couleur l Espace de représentation RGB (Red, Green, Blue) ► représentation additive des couleurs sur la base de la lumière émise ► le plus souvent, chaque canal est représenté sur 8 bits ⇒ 16,7 millions de couleurs possibles l YUV (Y: luminosité, U et V: chrominance) l HSV (Hue, Saturation, Value) ► Bonne représentation perceptuelle des couleurs, utilisée dans les logiciels l CMYK (cyan, magenta, yellow, key) ► Espace de couleur soustractive (application des encres) l CIELAB l espace de couleurs “perceptuel”
Espaces de représentation : Plan l Du monde réel à la description numérique l Représenter : pour quelle application ? l Difficultés l Indices visuels l Représentation globale vs représentation locale l Représentations « profondes »
Représenter pour décrire l Application à la recherche visuelle d’images par le contenu ► focus du cours sur les images (de nombreux principes sont transférables à d’autres modalités) ► description des images pour les retrouver par leur contenu l Problème très différent de celui de la compression ► on ne cherche pas à reconstruire (la plupart des informations n’ont pas d’utilité directe pour la recherche, alors qu’en reconstruction elles contribuent au confort visuel) ► on cherche à extraire ce qui sera pertinent pour l’application visée l Applications très variées (cf premier cours), ici la recherche du même objet dans une image
Espaces de représentation : Plan l Du monde réel à la description numérique l Représenter : pour quelle application ? l Difficultés l Indices visuels l Représentation globale vs représentation locale l Représentations « profondes »
Appearance variation – instance level scale reference image viewpoint occlusion illumination Diane Larlus PRAIRIE Artificial Intelligence Summer School July 2nd 2018
Appearance variation – category level Camera pose Illumination Deformation Occlusion Background clutter Intraclass variation
Indices visuels l Ici, focus sur l’image, mais s’applique directement à la vidéo l Indices visuels (visual features) caractéristiques de l’image, au sens de notre perception d’humain, que l’on cherche à utiliser pour la tâche considérée l Principaux indices visuels ► couleur ► forme ► texture ► régions ► mouvement (pour la vidéo)
Indice visuel : couleur l Utile pour la catégorisation (= trouver la classe d’objet) ou le tracking (suivre des objets) l Indice visuel ayant reçu beaucoup d’attention de part sa simplicité ► de nombreux descripteurs (globaux ou locaux) l Exemple: Robocup 2006...
Indice visuel : couleur l Problèmes ► choix de la représentation de la couleur ► distance entre couleurs ► invariance de la couleur ► Indice visuel insuffisant si utilisé seul, car peu discriminant (pomme vs Ferrari) l Remarque : le plus souvent, une image en niveaux de gris ou même en noir et blanc suffit à un humain pour effectuer la tâche demandée !
Couleur - illustration Exemple de descripteur couleur: histogramme de la couleur des pixels Illustration de son invariance au changement de point de vue
Indice visuel : forme l Nombreux algorithmes d’extraction de formes l Bestiaire (non exhaustif) : ► extraction des contours ► chaîne de points de contours ou approximation polygonale ► mise en correspondance de graphes l Indice visuel différent des régions (1D vs. 2D) l Difficultés ► l’étape d’extraction des contours est souvent instable ► séparer la forme du fond est difficile (problème de segmentation) V. Ferrari, L. Février, F. Jurie, C. Schmid, Groups of Adjacent Contour Segments for Object Detection, PAMI 2008
Indice visuel : texture l Définition: variations répétitives de l’intensité l Les textures résultent de propriétés physiques des surfaces 3D (herbe, nuages), ou de propriétés photométriques de surface (zèbre, tissu à fleurs) l Une grande partie du contenu des images et vidéos peut être caractérisée par leur texture l L’humain reconnaît facilement les textures, mais elles sont difficiles à définir (et donc à représenter): transition micro/macro, textures irrégulières… l Deux types de méthodes ► statistiques : distributions spatiales des intensités de l’image ► géométriques : segmentation de motifs qui se répètent
Régions texturées l Illustrations: lorsqu’on enlève les textures d’une image
Indice visuel : régions l Prend en compte la répartition spatiale de zones « homogènes » + attributs intrinsèques aux régions (taille, couleur, etc) l Peut capturer les relations spatiales entre ces régions (ciel en haut / mer en bas) l Problème: l’extraction des régions est sensible au bruit et aux occultations (problèmes similaires à l’extraction des contours)
Comparaison des indices visuels l Pour une utilisation “brute” des différents indices visuels l De nombreuses approches plus sophistiquées existes, notamment basées sur l’apprentissage l Notion de descripteur associé à un indice visuel Indice visuel Avantages Limitations Extraction très facile, Pas d’information spatiale, Couleur peu de lien avec la sémantique propriétés globales de l’image contient presque toute sémantique difficile à extraire Forme de la forme l'information sémantique Texture caractéristique facile à reconnaître difficile à définir : Chicken and egg problem Région Intègre les relations spatiales
Limites de ces indices visuels • Richard Gregory’s Dalmatian image
Espaces de représentation : Plan l Du monde réel à la description numérique l Représenter : pour quelle application ? l Difficultés l Indices visuels l Représentation globale vs représentation locale l Représentation « profonde »
Description globale Une description globale est une représentation de l’image dans son ensemble, sous la forme d’un vecteur de taille fixe Mesure de (dis-)similarité définie sur l’espace de ces descripteurs Exemple : histogramme de couleurs Nombreux autres exemples dans la suite du cours
Description locale Une description locale est une représentation de l’image par un ensemble de descripteurs (vecteurs) • Vecteurs calculés localement pour différentes parties de l’entité ex: plusieurs sous-parties d’une image La mesure de similarité nécessite le calcul d’une similarité entre deux ensembles de descripteurs, par exemple par la mise en correspondance (appariement) de ces descripteurs Étude détaillée de ce type de description dans la suite
Représentation globale ou locale ? l Avantages des représentations globales ► Souvent, extraction des descripteurs pour un coût de calcul plus faible ► Comparaisons plus simples : comparaisons des entités avec un vecteur unique, donc pas de mise en correspondance géométrique l Inconvénients des représentations globales ► Représentation parfois trop grossière, qui perd les détails l Avantages des représentations locales ► Résistance intrinsèque à la plupart des transformations ► Plus robustes et plus riches: statistiques dépendantes de plusieurs descripteurs l Inconvénients des représentations locales ► en description locale, chaque information individuelle n’est pas très discriminante ► souvent la description est aussi volumineuse que l’image d’origine Remarque: les descripteurs locaux peuvent être agrégés pour obtenir une représentation globale
Espaces de représentation : Plan l Du monde réel à la description numérique l Représenter : pour quelle application ? l Difficultés l Indices visuels l Représentation globale vs représentation locale l Représentation « profonde »
Représentations “profondes” • Un réseau de neurones (par exemple un CNN ou Convolutional Neural Network) est appliqué à une image • On utilise l’une des sorties (souvent l’avant dernière) produites par le réseau comme représentation de cette image • Intuitivement, si le réseau est utilisé pour une tâche de reconnaissance pertinente (par exemple la classification), une représentation ainsi extraite contient des informations sémantiques utiles • Le calcul d’une mesure de similarité entre deux représentations de ce type peut être utilisé par un système de recherche d’images Input image CNN
Recherche visuelle d’images – introduction Comprendre les données visuelles à grande échelle Cours 2: représentations locales, 20 décembre 2018
Visual Search - Principle Diane Larlus PRAIRIE Artificial Intelligence Summer School July 2nd 2018
Visual Search - Principle Diane Larlus PRAIRIE Artificial Intelligence Summer School July 2nd 2018
Visual Search - Applications Many applications • Reverse Image search • Web search engine • Personal photo collection Diane Larlus PRAIRIE Artificial Intelligence Summer School July 2nd 2018
Visual Search - Applications Many applications • Geolocalization Diane Larlus PRAIRIE Artificial Intelligence Summer School July 2nd 2018
Visual Search - Applications Many applications • Query for more information • Landmarks • Paintings • Movies • Book covers • Game covers • Packaged food Diane Larlus PRAIRIE Artificial Intelligence Summer School July 2nd 2018
Visual Search - Applications Many applications • Shopping interfaces Diane Larlus PRAIRIE Artificial Intelligence Summer School July 2nd 2018
Visual Search - Applications Many applications • Ambient Intelligence Diane Larlus PRAIRIE Artificial Intelligence Summer School July 2nd 2018
Inherent ambiguity What can the user mean with such a single query? Diane Larlus PRAIRIE Artificial Intelligence Summer School July 2nd 2018
Inherent ambiguity What can the user mean with such a single query? Diane Larlus PRAIRIE Artificial Intelligence Summer School July 2nd 2018
Inherent ambiguity What can the user mean with such a single query? Application dependent! • Inject prior information • Leverage training Diane Larlus PRAIRIE Artificial Intelligence Summer School July 2nd 2018
Inherent ambiguity What can the user mean with such a single query? Information a priori: • Design à la main de descripteurs Application dependent! pertinents ou de méthodes pertinentes pour la vérification en • Inject prior information fonction de l’application visée Apprentissage: • Leverage training • On laisse le système apprendre tout ou partie du design, en particulier quelles sont les caractéristiques pertinentes pour la tâche
Vous pouvez aussi lire