Laboratoire 2 Extraction des caractéristiques

Documents pareils
L ANALYSE EN COMPOSANTES PRINCIPALES (A.C.P.) Pierre-Louis GONZALEZ

Analyse en Composantes Principales

Projet Matlab/Octave : segmentation d'un ballon de couleur dans une image couleur et insertion d'un logo

Laboratoire 4 Développement d un système intelligent

Extraction d informations stratégiques par Analyse en Composantes Principales

Projet Matlab : un logiciel de cryptage

La classification automatique de données quantitatives

21 mars Simulations et Méthodes de Monte Carlo. DADI Charles-Abner. Objectifs et intérêt de ce T.E.R. Générer l'aléatoire.

a) La technique de l analyse discriminante linéaire : une brève présentation. 3 étapes de la méthode doivent être distinguées :

1 Complément sur la projection du nuage des individus

Trépier avec règle, ressort à boudin, chronomètre, 5 masses de 50 g.

Chapitre 3. Les distributions à deux variables

Analyse de la vidéo. Chapitre La modélisation pour le suivi d objet. 10 mars Chapitre La modélisation d objet 1 / 57

Projet de Traitement du Signal Segmentation d images SAR

Introduction à MATLAB R

INTRODUCTION À L ANALYSE FACTORIELLE DES CORRESPONDANCES

IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB

Classification non supervisée

La structure de la base de données et l utilisation de PAST. Musée Royal de l Afrique Centrale (MRAC Tervuren)

Aide - mémoire gnuplot 4.0

Arbres binaires de décision

CREATION D UNE EVALUATION AVEC JADE par Patrick RUER (

Placez vous au préalable à l endroit voulu dans l arborescence avant de cliquer sur l icône Nouveau Répertoire

Projet SINF2275 «Data mining and decision making» Projet classification et credit scoring

Séance 0 : Linux + Octave : le compromis idéal

Traitement bas-niveau

Que souhaitent les Administrateurs Système?

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */.

AICp. Vincent Vandewalle. To cite this version: HAL Id: inria

TABLE DES MATIÈRES. PRINCIPES D EXPÉRIMENTATION Planification des expériences et analyse de leurs résultats. Pierre Dagnelie

Régression linéaire. Nicolas Turenne INRA

Apprentissage Automatique

BASE. Vous avez alors accès à un ensemble de fonctionnalités explicitées ci-dessous :

Déroulement d un projet en DATA MINING, préparation et analyse des données. Walid AYADI

Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies

Les images et les animations sur le web. Guérineau Chloé BTS2 Année 2001/2012

FORMULAIRE DE STATISTIQUES

TP : Gestion d une image au format PGM

CAISSE ENREGISTREUSE ELECTRONIQUE SE-G1

GUIDE RAPIDE EXPERT espace de partage

La méthode des scores, particulièrement de la Banque de France

Business Intelligence avec Excel, Power BI et Office 365

Version V2.06. Points Forts. Module Achats (99.00 HT*)

Sage 100 CRM Guide de l Import Plus avec Talend Version 8. Mise à jour : 2015 version 8

GUIDE D UTILISATION DE L ISU SEPTEMBRE 2013 GUIDE D UTILISATION DU NAVIGATEUR UIS.STAT (VERSION BÊTA)

Master IMA - UMPC Paris 6 RDMM - Année Fiche de TP

Introduction. Préambule. Le contexte

L EQUIPE ÉTUDES ENQUÊTES: Georgeta BOARESCU psychologue coordonateur études enquêtes Florin CIOTEA sociologue

TangibleData. Manipulation tangible et multitouch de bases de données

L'analyse des données à l usage des non mathématiciens

IFT287 Exploitation de base de données relationnelles et orientées objet. Laboratoire Mon premier programme Java en Eclipse

Analyse d images. Edmond.Boyer@imag.fr. Edmond Boyer UFRIMA 1

ESSEC. Cours «Management bancaire» Séance 3 Le risque de crédit Le scoring

Business Intelligence

Python - introduction à la programmation et calcul scientifique

Introduction au Data-Mining

Revue des algorithmes PCA, LDA et EBGM utilisés en reconnaissance 2D du visage pour la biométrie

EXCEL PERFECTIONNEMENT SERVICE INFORMATIQUE. Version /11/05

Le Modèle Linéaire par l exemple :

Sommaire. 1 Introduction Présentation du logiciel de commerce électronique 23

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS =

Dossier I Découverte de Base d Open Office

PROJET DE DIPLÔME HACKING & DESIGN

Comment utiliser WordPress»

Introduction au datamining

Analyse des correspondances avec colonne de référence

Cours 02 : Problème général de la programmation linéaire

KIELA CONSULTING. Microsoft Office Open Office Windows - Internet. Formation sur mesure

PRÉSENTATION PRODUIT. Plus qu un logiciel, la méthode plus efficace de réconcilier.

Diffuser un contenu sur Internet : notions de base... 13

ProSimPlus HNO3 Résumé des nouvelles fonctionnalités, décembre 2008

Relation entre deux variables : estimation de la corrélation linéaire

Chap III : Les tableaux

Unix/Linux I. 1 ere année DUT. Université marne la vallée

Guide d utilisation pour W.access - Client

Analyse des trajectoires acceptables en approche de virage assistance aux conducteurs

La photo numérique et les logiciels libres. Asie Photos

Mode d Emploi. Résult Arc Logiciel de Gestion de Compétitions. Droits d utilisation Informations Générales. 1/. Présentation de Résult Arc

PRXSENTATION D UN GESTIONNAIRE DE DONNEES NUMERIQUES HIERARCHISEES DESTINE AU DE- -POUILLEMENT D ENQUETES

Vérification audiovisuelle de l identité

Détection des deux roues motorisés par télémétrie laser à balayage

exigences des standards ISO 9001: 2008 OHSAS 18001:2007 et sa mise en place dans une entreprise de la catégorie des petites et moyennes entreprises.

Une comparaison de méthodes de discrimination des masses de véhicules automobiles

Algorithme des fourmis appliqué à la détection et au suivi de contours dans une image

FORMATION CONTINUE SUR L UTILISATION D EXCEL DANS L ENSEIGNEMENT Expérience de l E.N.S de Tétouan (Maroc)

1 Introduction - Qu est-ce que le logiciel R?

Nouveautés ArcGIS 10.1 for Server

Sillage Météo. Notion de sillage

Intégration de la dimension sémantique dans les réseaux sociaux

Techniques d interaction dans la visualisation de l information Séminaire DIVA

SERVEUR DE SAUVEGARDE POUR BCDI3. par. G.Haberer, A.Peuch, P.Saadé

TD d économétrie appliquée : Introduction à STATA

My Poker Manager Guide Utilisateur. Guide Utilisateur

2015 kmeans. September 3, 2015

ESIEA PARIS

INTRODUCTION AU DATA MINING

IBM SPSS Direct Marketing 21

PG208, Projet n 3 : Serveur HTTP évolué

Intérêt du découpage en sous-bandes pour l analyse spectrale

GESTION ELECTRONIQUE DE DOCUMENTS

Transcription:

Laboratoire 2 Extraction des caractéristiques L objectif de l extraction et de la sélection de caractéristiques est d identifier les caractéristiques importantes pour la discrimination entre classes. Aprés avoir choisi le meilleur ensemble de caractéristiques, il s agit de réduire la dimensionnalité de l ensemble des caractéristiques en trouvant un nouvel ensemble, plus petit que l ensemble original, qui néanmoins, contient la plupart de l information. Contrairement à ce que l intuition peut laisser penser, la performance des classificateurs n augmente pas indéfiniment avec la taille du vecteur de caractéristiques. Après avoir augmenté en fonction du nombre de caractéristiques, l efficacité atteint un plateau et quelquefois se met à décroître au-delà d un certain nombre de caractéristiques. Ce phénomène est appelé malédiction de la dimensionnalité. En plus, le coût (temps + mémoire) de la classification augmente avec la taille de ce vecteur. On a toujours intérêt à réduire le nombre de caractéristiques pour qu il corresponde à la dimensionnalité intrinsèque du problème ou pour de simples raisons pratiques. Les méthodes d extraction de caractéristiques à partir de l intensité d une image du visage peuvent être divisées en trois catégories : les méthodes globales (exploitant toute la région visage), les méthodes locales (exploitant des caractéristiques locales : yeux, nez, etc.), et les méthodes hybrides. On se limite principalement aux méthodes globales où l image du visage au complet peut être vue comme un vecteur dans un espace ayant autant de dimensions que de pixels dans l image, et représentant la variation d intensité (en niveau de gris). L image du visage, une matrice de pixel M, peut être représentée, par concaténation de colonnes, comme un vecteur x de dimension I = largeur hauteur. Chaque visage peut donc être considéré comme un vecteur à I composantes dans un espace R I. L ensemble des visages forme alors la matrice d images X, où chaque vecteur colonne x j représente un visage dont chaque élément x ij est l intensité du pixel i. Dans notre cas, la dimension (I = 92 112 = 10304 pixels) du vecteur de caractéristiques est très grande, mais la vraie dimension de l espace dans laquelle les visages observés sont situés peut être plus petite. En plus, le nombre d échantillons réservés à l apprentissage est considérablement inférieur au nombre de caractéristiques. Parmi les techniques de réduction de dimensionnalité, les analyses statistiques linéaires consistent à transformer les données originales par une transformation linéaire (changement de base) optimisant un critère géométrique ou statistique. Pour J images, on cherche une matrice de transformation W pour obtenir la projection R I R K de la matrice d images X : où Y est la matrice résultante de la projection telle que K < I. Y K J = W T I KX I J, (1) 2.1 Analyse en composantes principales (Eigenfaces) L analyse en composantes principales (PCA pour Principal Component Analysis ) 1 est une méthode classique de réduction de dimension Cette méthode permet de représenter le nuage des points originel dans un sous-espace orthogonale de dimension inférieure, tout en limitant au maximum la perte d information. Les axes principaux sont ceux qui contiennent le plus d information 1. Également connue sous le nom de transformée de Karhunen-Loève ou de transformée de Hotelling. 1

(a) (b) Figure 1 Représentation d une image de visage. (a) Un vecteur image formé par concaténation de colonnes. (b) Illustration d un visage représenté par un point dans l espace de visages de K dimensions (en supposant K = 3) pertinente c est-à-dire qui maximisent l inertie 2 du nuage projeté. Les composantes principales sont les vecteurs ayant pour coordonnées celles des projections orthogonales des points du nuage sur les axes principaux. La PCA fournit donc une base de représentation dans laquelle les composantes sont simplement dé-corrélées et rendant compte de la variation maximale, ce qui permet : une réduction des données de I à K nouvelles caractéristiques une visualisation des données à 2 ou 3 dimensions (si K = 2 ou 3) une interprétation des données Soit J images en format de vecteur colonne x j (j = 1,..., J) dans R I, l objectif est de transformer l espace initial R I des images à un espace visage de dimensions R K (K < I) de manière à ce que la variance observée dans chacune de ces nouvelles dimensions soit décroissante. Le calcul des composantes principales consiste à : A) Calculer la valeur moyenne des visages (visage moyen) : µ = 1 J J x j (2) j=1 B) Centrer les images de manière à avoir une matrice de données D dont la moyenne est de zéro : D = [x 1 µ, x 2 µ,..., x J µ] (3) C) Calculer la matrice de covariance de la matrice centrée D : J C = (x j µ)(x j µ) T = DD T (4) j=1 2. La moyenne pondérée des carrés des distances des points projetés à leur centre de gravité. 2

D) Décomposer C en vecteurs propres v i et leurs valeurs propres λ i : Sv i = λ i v i, j = 1,..., I (5) où, Λ = diag(λ k ) et V = [v 1,, v I ] est la matrice de tous les I vecteurs propres. Cette opération revient à poser S = VΛV T. E) Trier les valeurs propres et les vecteurs propres correspondants : λ 1 λ 2... λ I 0 v 1 v 2... v I 0 (6) F) Choisir les K premiers vecteurs propres (composantes principales) : G) Finalement, projeter les données sur les K < I nouveaux axes : W = [v 1,..., v K ] (7) Y = W T (X µ), X R I, Y R K (8) Les vecteurs propres d un visage (Eigenfaces) associées aux plus fortes valeurs propres sont les plus pertinentes et représentent dans l espace des images les fortes variations d un visage. Le nombre possible de visages propres peut être donc approximé en utilisant seulement les meilleurs visages propres qui correspondent aux plus grandes valeurs propres. 2.2 Analyse discriminante linéaire L analise discriminante linéaire (LDA pour Linear Discriminant Analysis ) est differente de PCA car il considère les étiquettes pour construire la matrice de transformation W, que devient intrinsèquement discriminative. L objective de LDA est de trouver la transformation que maximise la dispersion inter-classes (Eqn. 9) et minimise au même temp la dispersion intra-classe (Eqn. 10) : le critère de Fisher : S a = S e = c i=1 c i=1 J i J J i J (µ i µ)(µ i µ) T (9) J i (x k µ i )(x k µ i ) T (10) k=1 où c est le nombre de classes (différents individus), J i est le nombre d images de la classe i, µ i est la moyenne des visages de la classe i, et J i est la probabilité a priori de la classe i. La projection J optimale peut être trouvée par la recherche des K vecteurs propres qui correspondent aux plus grandes valeurs propres de Dans la pratique, le calcul de W consiste à : S e W = S a W (11) 3

1. Calculer la valeur moyenne des visages (visage moyen) µ 2. Centrer les images de manière à avoir une matrice de données D dont la moyenne est de zéro : D = [x 1 µ, x 2 µ,..., x J µ] 3. Calculer la moyenne de visages de chaque class (µ i ), et la matrice de covariance pour chaque class J C i = (xj i µ i )(xj i µ i ) T = D i Di T j=1 où D i est la submatrice avec les visages de la class i. 4. Calculer la somme des matrices de covariance, ponderées par leurs probabilités a priori correspondants : c J i C = J C i 5. Décomposer C en vecteurs propres v i et valeurs propres λ i. i=1 6. Choisir les K premiers vecteurs propres (triés par leurs valeurs propres), et les concaténer pour obtenir la matrice W a que minimise la dispersion intra-classe. 7. Appliquer la descomposition PCA a la matrice de covariance des moyennes M µ = [µ 1,..., µ c ] T : W e = P CA(M µ ) Cette matrice W e minimise la dispersion inter-classe. 8. Combiner les matrices pour obtenir la matrice de transformation : W = W a W e 9. Finalment, projeter les données sur les K < I noveaux axes : Y = W T (X µ), X R I, Y R K Le rang de la matrice W e est inférieur ou égal à (c 1), donc il existe au plus (c 1) valeurs propres pour c classes. Cela va limiter le nombre de caractéristiques qui peuvent limiter la performance de reconnaissance dans les applications réelles. 2.3 Expérimentations Utiliser le script exp2_dimensions.m pour expérimenter avec PCA et LDA sur des données synthétiques afin de voir les avantages et les inconvénients des deux méthodes. Voir help pca, fisherm et map pour bien comprendre les fonctions. 4

2.4 Préparation de la base de donnée de visages Vous pouvez télécharger la base de visage de AT&T 3 du site web : http://www.cl.cam.ac. uk/research/dtg/attarchive/pub/data/att_faces.zip, puis l extraire (par exemple dans un répertoire nommé : att ). Les images sont organisées dans 40 répertoires (un pour chaque individu) nommé : s1,..., s40. Dans chacun de ces répertoires, il y a dix images de visage différentes pour chaque individu numérotées de 1 à 10. Les fichiers sont en format PGM. La taille de chaque image est de 92x112 pixels, avec 256 niveaux de gris par pixel. Écrire un script pour : faces_to_prtools_data.m Charger les images de chaque individu, les transformer en PRTools prdatasets, et les sauvegarder en format.mat. Par exemple, face1.mat : (les images du premier individu dans le répertoire s1) doit être une prdataset de : 10 images par 10304 caractéristiques de classe 1. read_faces(path,subject,photo) Charger (dans une même prdataset ) les images déjà sauvegardées (facexx.mat) en choisissant le numéro de l individu (subject) et le nombre des images (bien sur en gardant les étiquettes). Il est préférable si la fonction accepte des vecteurs en entrée pour faciliter la division des données en apprentissage et test (pour les séances prochaines). Par exemple, % charger les 5 premières images pour les 10 premier individus dans Train Train = read_faces(./att,1:10,1:5); % charger les 5 dernières images pour les 10 premier individus dans Test Test = read_faces(./att,1:10,6:10); Fonctions utiles : Matlab : imread, imshow, sprintf, save, load, reshape. PRTools : show, im2obj, scatterd. 2.5 Application de PCA/LDA sur notre problème On va appliquer et comparer PCA et LDA sur notre problème d identification de visage. Dans le cadre de cette séance on ne va pas aller au-delà de la réduction de dimensions. Charger les images, par exemple (figure 2a) : Train = read_faces(./att,1:10,1:5) Appliquer la PCA et la LDA sur la base Train Reconstruire quelques images (projetées dans le nouvel espace) pour visualiser l effet de chaque méthode. Par exemple, pour les 3 premiers vectteur pour Eigenfaces, vous devriez obtenir des images similaires à la figure 2b Comparer les dispersions de données en utilisant les 2 (ou 3) premières caractéristiques (avec la fonction scatterd) provenant des données brutes, de PCA et de LDA. Choisir et comparer aussi autres vecteurs caractéristiques (e.g., les derniers, etc.) Expérimenter en variant le nombre : de composantes retenues des individus 3. http ://www.cl.cam.ac.uk/research/dtg/attarchive/facedatabase.html 5

(a) (b) Figure 2 Les 5 premières images appartenant au 10 premiers individus de la base AT&T (2a), avec les 3 premiers Eigenfaces (2b) 6