Indexation d images Tina Nikoukhah & Jonathan Pucci
But du jeu :
Comment? Chaque minute de chaque jour : - 72 heures de vidéos sur Youtube 216 000 photos sur Instagram 277 000 messages sur Tweeter 2 460 000 publications sur Facebook Comment organiser au mieux toutes ces données afin de pouvoir retrouver facilement ce qui m intéresse?
L indexation Constituer une base de donnée - extraction des descripteurs - stockage par similarité dans un index Interroger la base - extraction des descripteurs - comparaison
Comment? - par le texte L indexation sémantique (textuelle) Indexation textuelle manuelle - iconographe - hard indexing / soft indexing -> problème du choix des termes : non subjectifs, pas assez variés Indexation textuelle automatique - pas d intervention humaine nécessaire - texte environnant/contenu -> problème de pertinence : beaucoup trop d erreurs
Comment? - par le contenu Etape d extraction des caractéristiques visuelles de l image : Texture, couleur, forme, Histogramme des couleurs -> problème d invariance aux changements de luminosité
Comment? - Contextuel - A/ Detection des points d intérêt : Harris, Laplace, blablabla Detecteur de contours, de coins, de blobs (zones uniformes) - B/ Extraction des caractéristiques Sift,PCA-Sift, SURF : vecteur de pixels but : robuste et rapide - C/ Construction du voc contextuel Caractéristiques -> mots (1 vecteur de feature = 1 mot? Trop) Clustering : 1 mot = centre du cluster Ainsi, un mot est assigné à chaque région et une image peut-être représentée par un histogramme des mots visuels contenus dans cette image. D/ Comparaison des images Recherche dans les arbres avec les notions de distances entre histogrammes (ou simple distance euclidienne des mots)
Comment? - Contextuel _ Feature Detection Détection des caractéristiques: Détecteur de coins/contours de Harris -> Pas invariant aux changement d échelle Détecteur de points d intérêts Maxima de la Hessienne
Comment? - Contextuel _Feature extraction - Extraction des caractéristiques But : se servir des points d intérêt trouvés précédemment pour caractériser l image => extraire les features. Moyen : Une feature = Un mot du vocabulaire visuel. Un mot = Un vecteur à? dimensions. Méthodes : Sift,PCA-Sift, SURF
Scale Invariant Feature Transform (SIFT) Détection de points clés : Défini par ses coordonnées sur l image (x,y) et son facteur d échelle En gros : zone d intérêt circulaire de rayon proportionnel à. Méthode : LoG (Laplacian of Gaussian) Détection des extremums dans l espace des échelles (avec une pyramide)
Scale Invariant Feature Transform (SIFT) Pb des extremums : zones larges, points approximatifs, répétitifs Améliorations : Supprimer les faibles contrastes Supprimer les points sur arrêtes
Scale Invariant Feature Transform (SIFT) Une dernière étape avant de donner le descripteur SIFT: Rendre invariant par rotation 1 descripteur décrit un point d intérêt son orientation : Gradient( ).
Scale Invariant Feature Transform (SIFT) Le descripteur SIFT: Un point clé : - Modifier le sys de coord local Rotation de -θ - Région de 16 16 pixels, subdivisée en 4 4 zones de 4 4 pixels chacune - histogramme des orientations Comportant 8 intervalles 16 histogrammes concaténés, normalisés = Vecteur dimension 128 : DESCRIPTEUR
Speeded Up Robust Feature (SURF) Même principe pour les points d intérêt mais plus rapide! Box filter (Approx. D^2(Gauss)) Image intégrale
SURF Extraction des features : Orientation
SURF Extraction des features : Descripteur
SURF Extraction des features : Descripteur Chaque sous-région est décrite par un vecteur de 4 éléments : (Σdx, Σdy, Σldxl, Σldyl). 16 sous-régions Signature => Vecteur de dimension 64.
SIFT - SURF Clustering Maintenant que les descripteurs sont donnés, on a le vocabulaire visuel de l image. Il faut en faire des classes pour les futures comparaisons. Exemple : K-means
Histogramme visuel
SIFT -SURF Représentation des images avec un vocabulaire créé: - Detection des points d intérêt Elagage Invariant par rotation Définition des descripteurs Indexation par classes Définition de l histogramme des images Comment retrouver mon image dans une base de donnée?
La recherche par similarité -> dépend des choix faits lors de la phase d indexation des images de la base de données Recherche dans un arbre de données La similarité est mesurée par une distance -> méthode d intersection des histogrammes -> distance euclidienne directement entre les descripteurs Algorithme de recherche des plus proches voisins Sélection des cellules les plus pertinentes Sélection des vecteurs les plus pertinents
Un Beau Schéma Pour résumer
CONCLUSION Le choix de la méthode dépend de l application. Les étapes à retenir : extraire des images les descripteurs visuels qui permettent de retrouver efficacement des images similaires, trouver une représentation pertinente de ces descripteurs, trouver une mesure de similarité efficace, accéder rapidement à l'information.