RECONNAISSANCE DE FORMES A approche statistique pour les

  • Slides: 104
Download presentation
RECONNAISSANCE DE FORMES A. approche statistique pour les objets « simples » : mesure

RECONNAISSANCE DE FORMES A. approche statistique pour les objets « simples » : mesure sur des objets par exemple en chaîne de production « bons » et « mauvais » B. approche structurelle : description d’objets complexes sous forme de graphes liant des objets plus simples pour représenter ces objets complexes ECRITURE MANUSCRITE SIGNATURE VISAGES, BIOMETRIE OBJETS ET ENVIRONNEMENT EN ROBOTIQUE idée à retenir : tout cela ne marche pas très bien les approches sont encore élémentaires ; on ne sait pas encore mimer le fonctionnement cérébral

A. approche statistique approche standard en reconnaissance de formes d’objets « simples » (classification)

A. approche statistique approche standard en reconnaissance de formes d’objets « simples » (classification) un objet analysé à reconnaître est représenté sous la forme d’un vecteur de paramètres nécessité d’un dans le même espace, on dispose de formes types, apprises au préalable correspondant aux objets à reconnaître apprentissage reconnaître l’objet c’est décider que le vecteur caractérisant l’objet analysé à reconnaître est suffisamment proche d’un des vecteur mémorisés lors de l’apprentissage approche probabiliste ; théorie de la décision (critère de bayes et de neyman pearson) problèmes : bruit, préanalyse incorrecte (contours, régions) fluctuations importantes d’un objet à l’autre http: //www. ee. columbia. edu/~sfchang/course/spr/

Reconnaissance de formes Approche statistique Un objet est décrit comme un ensemble de paramètres

Reconnaissance de formes Approche statistique Un objet est décrit comme un ensemble de paramètres (un vecteur de dimension réduite) longueur largeur

Il y a des fluctuations d’un objet à l’autre Chaque groupe (classe) est associée

Il y a des fluctuations d’un objet à l’autre Chaque groupe (classe) est associée à un nuage de points Comment décide t on de l’appartenance à une classe ? longueur L L R R largeur Formalisation probabiliste

mesure de paramètres objet représenté par un vecteur séparation de l’espace des paramètres en

mesure de paramètres objet représenté par un vecteur séparation de l’espace des paramètres en régions

représenter les classes sous forme de densités de probabilités

représenter les classes sous forme de densités de probabilités

maximiser la probabilité d’appartenance à une classe

maximiser la probabilité d’appartenance à une classe

Probabilité d’appartenance à un des deux groupes

Probabilité d’appartenance à un des deux groupes

Seuil s en dessous duquel on décide que x appartient à la classe L

Seuil s en dessous duquel on décide que x appartient à la classe L s Evaluation de la probabilité d’erreur Rapport de vraisemblance Extension : test d’hypothèse en statistique (critère de Neyman Pearson)

Notions de Théorie de la Décision décider si un élément caractérisé par un vecteur

Notions de Théorie de la Décision décider si un élément caractérisé par un vecteur de paramètres appartient à une classe ou à une autre séparatrice

probabilité d’erreur évaluer le coût des erreurs de décision en déduire le critère de

probabilité d’erreur évaluer le coût des erreurs de décision en déduire le critère de décision deux approches classiques élémentaire : Bayes plus élaboré : Neyman Pearson

Approche bayesienne y réel, peut être produit uniquement par une cause u qui ne

Approche bayesienne y réel, peut être produit uniquement par une cause u qui ne prend que les valeurs 0 ou 1 ; probabilités pour que u = 0 ou 1, q 0 et q 1, connues Si la cause est u = 0 , la loi de probabilité de y est p(y|u = 0) si la cause est u = 1 , la loi de probabilité de y est p(y|u = 1)

Le problème de la décision : on a mesuré y ; choisir parmi les

Le problème de la décision : on a mesuré y ; choisir parmi les deux propositions (d = 0 et d = 1): ‘y a été causé par u = 0’ ou ‘y a été causé par’ u = 1 ; il faut se donner une fonction de pénalité : les quatre coûts associés aux situations possibles c(0|0) quand on choisit d = 0 et que la vraie valeur est u = 0 c(0|1) quand on choisit d = 0 et que la vraie valeur est u = 1 c(1|0) quand on choisit d = 1 et que la vraie valeur est u = 0 c(1|1) quand on choisit d = 1 et que la vraie valeur est u = 1

Pour une valeur de y mesurée, on choisira d = 0 si le coût

Pour une valeur de y mesurée, on choisira d = 0 si le coût associé à ce choix est moins élevé que le coût associé au choix d = 1 Calcul de la valeur moyenne du coût associé au choix u = 0 en tenant compte du fait que cette valeur de y a pu avoir une des deux causes

les quatre possibilités de choix les probabilités associées u=0 & d=0 u=0 & d=1

les quatre possibilités de choix les probabilités associées u=0 & d=0 u=0 & d=1 p(y|u=0). q 0 u=1 & d=0 u=1 & d=1 p(y|u=1). q 1

Les coûts moyens associés aux décisions sont obtenus en considérant pour chaque décision les

Les coûts moyens associés aux décisions sont obtenus en considérant pour chaque décision les probabilités des valeurs possibles de u : d = 1 d = 0 c(0|0) p(y|u=0). q 0+ c(0|1)p(y|u=1). q 1 c(1|0) p(y|u=0). q 0 + c(1|1)p(y|u=1). q 1 On choisit d = 0 si, en moyenne, cela coûte moins que de choisir d = 1, c(0|0) p(y|u=0). q 0+ c(0|1)p(y|u=1). q 1 < c(1|0) p(y|u=0). q 0 + c(1|1)p(y|u=1). q 1,

c(0|0) p(y|u=0). q 0+ c(0|1)p(y|u=1). q 1< c(1|0) p(y|u=0). q 0 + c(1|1)p(y|u=1). q

c(0|0) p(y|u=0). q 0+ c(0|1)p(y|u=1). q 1< c(1|0) p(y|u=0). q 0 + c(1|1)p(y|u=1). q 1, (c(0|1) - c(1|1))p(y|u=1). q 1 < (c(1|0) - c(0|0) )p(y|u=0). q 0. hypothèse : coûts des mauvaises décisions plus élevés que coûts des décisions correctes (c(0|0)< c(1|0) et c(1|1)< c(0|1)), on choisira d = 0 lorsque

Un exemple : deux lois de probabilités conditionnelles gaussiennes

Un exemple : deux lois de probabilités conditionnelles gaussiennes

choix des valeurs des pénalités Pour minimiser le critère, on choisira l’hypothèse u =

choix des valeurs des pénalités Pour minimiser le critère, on choisira l’hypothèse u = 1 si y est dans l’intervalle (ymin=0. 87 , ymax=1. 21) ; si y est en dehors de cet intervalle, on choisira u = 0.

probabilité de détection correcte probabilité d’erreur (fausse alarme)

probabilité de détection correcte probabilité d’erreur (fausse alarme)

Règle de Bayes : définition des probabilités conditionnelles On écrit de deux manières différentes

Règle de Bayes : définition des probabilités conditionnelles On écrit de deux manières différentes p(u = 0| y) peut être écrit en fonction de p(y|u = 0) la probabilité p(y) s’écrit en fonction des probabilités conditionnelles et on en déduit.

Critère de Neyman Pearson probabilités a priori des causes q 0 = p(u=0) et

Critère de Neyman Pearson probabilités a priori des causes q 0 = p(u=0) et q 1 = p(u=1) inconnues. décider si une mesure x correspond à l’émission d’une donnée u = 0, et dans ce cas la densité de probabilité de x est p 0(x) ; ou si elle correspond à l’émission u = 1, et dans ce cas la densité de probabilité de x est p 1(x) ; maximiser la probabilité de détection correcte (ici u=1) sous la contrainte que la probabilité de fausse alarme ne dépasse pas un seuil fixé a priori

les densités de probabilités des événements : rouge : il y a erreur vert

les densités de probabilités des événements : rouge : il y a erreur vert : la détection est correcte quand faut il décider qu’il y a effectivement détection? (elle ne peut pas toujours être correcte) calcul sur un domaine xmin<xmax des probabilités de fausse alarme et de détection correcte 23

calcul sur un domaine xmin<xmax des probabilités de fausse alarme et de détection correcte

calcul sur un domaine xmin<xmax des probabilités de fausse alarme et de détection correcte xmin xmax<xmin xmax probabilité de fausse alarme xmin xmax<xmin xmax probabilité de décision correcte

domaine où la probabilité de fausse alarme est en dessous d’un seuil fixé à

domaine où la probabilité de fausse alarme est en dessous d’un seuil fixé à 0. 1 xmin sur ce domaine : probabilité de détection correcte xmin xmax<xmin xmax probabilité de fausse alarme xmax probabilité de décision correcte sur la frontière (pfa =0. 1 niveau rouge sur la figure de gauche) on trouve le maximum de la probabilité de décision correcte

Critère de Neyman Pearson probabilités a priori des causes q 0 = p(u=0) et

Critère de Neyman Pearson probabilités a priori des causes q 0 = p(u=0) et q 1 = p(u=1) inconnues. décider si une mesure x correspond à l’émission d’une donnée u = 0, et dans ce cas la densité de probabilité de x est p 0(x) ; ou si elle correspond à l’émission u = 1, et dans ce cas la densité de probabilité de x est p 1(x) ; on décidera que d = 1 si dépasse un seuil s donné de la manière suivante

maximiser la probabilité pdc de détection correcte (d = 1 quand u = 1)

maximiser la probabilité pdc de détection correcte (d = 1 quand u = 1) ; ( la probabilité pem d’un événement manqué (d = 0 alors que u = 1) vaut 1 - pdc; ) pour chaque mesure x, considérer la probabilité pfa d’une fausse alarme (d = 1 alors que u = 0) probabilité de fausse alarme pfa : probabilité que u = 0 alors que dépasse le seuil s pfaest l’intégrale de la densité de probabilité p 0(x) calculée pour l’ensemble des valeurs (domaine D) de x pour lequel ce seuil est dépassé

les probabilités a priori des causes ne sont pas prises en compte ; Exemple

les probabilités a priori des causes ne sont pas prises en compte ; Exemple de densités de probabilité et de leur rapport utilisé pour illustrer l’approche de Neyman Pearson si le seuil s est choisi égal à 2, on décide d = 1 lorsque x est dans l’interv. (0. 7, 1. 4) probabilité de fausse alarme = 0. 158 probabilité de détection correcte

Neyman Pearson : on se donne un seuil a que cette probabilité de fausse

Neyman Pearson : on se donne un seuil a que cette probabilité de fausse alarme pfa ne doit pas dépasser et on en déduit le seuil s utilisé dans la décision cas où r(x) (rapport des densités de probabilités) est une fonction croissante puis décroissante le domaine D se réduit à un segment borne inférieure xmin borne supérieure xmax dans l’intervalle [xmin, xmax] : r(x) > s une fois a fixé maximiser la probabilité de décision correcte

comment ajuster s et par conséquent les bornes xmin et xmax pour maximiser la

comment ajuster s et par conséquent les bornes xmin et xmax pour maximiser la probabilité de décision correcte, tout en assurant que la probabilité de fausse alarme ne dépasse pas le seuil a. illustration sur un exemple (lois gaussiennes) si s est fixé : calculer les valeurs xmin et xmax entre lesquelles on décidera d=1 Le dépassement du seuil par le rapport des deux lois :

soit, en logarithmes : en fonction des puissances de x Les deux valeurs du

soit, en logarithmes : en fonction des puissances de x Les deux valeurs du dépassement du seuil sont racines d’une équation du deuxième degré

pour tous les seuils s calculer xmin et xmax - en déduire la proba

pour tous les seuils s calculer xmin et xmax - en déduire la proba de fausse alarme - trouver la valeur de s pour laquelle cette pfa atteint la borne qu’on s’est fixé (calcul complémentaire pdc)

Valeur des limites xmin et xmax du domaine de décision d =1, en fonction

Valeur des limites xmin et xmax du domaine de décision d =1, en fonction du seuil s probabilité de fausse alarme et probabilité de détection correcte en fonction du seuil s. Si la probabilité de fausse alarme est de 0. 1, on choisira un seuil de décision à 4. 5, ce qui correspondra aux bornes xmin = 0. 824 et xmax = 1. 259 et une probabilité de décision correcte de 0. 709

longueur L R Dans le cas multidimensionnel Séparatrices entre les Nuages de points (souvent,

longueur L R Dans le cas multidimensionnel Séparatrices entre les Nuages de points (souvent, mais pas nécessairement Des droites ou des plans) largeur gaussiennes dans un espace de dimension élevée distance de mahalanobis

essayer de quantifier les décisions correctes (hypothèses 1 et 2 les erreurs (1 ou

essayer de quantifier les décisions correctes (hypothèses 1 et 2 les erreurs (1 ou lieu de 2 ou 2 au lieu de 1) à partir des probabilités d’erreur et les conséquences de ces fausses décisions (par exemple risque de faux diagnostic médical) règle de probas à ne pas oublier : ‘‘ la loi des grands nombres ne s’applique pas aux petits ! ’’

analyse en composantes principales réduire le nombre de composantes d’un vecteur en essayant de

analyse en composantes principales réduire le nombre de composantes d’un vecteur en essayant de garder l’information la plus pertinente pour ne pas détériorer la discrimination entre classes

(vecteurs propres de la matrice de covariance)

(vecteurs propres de la matrice de covariance)

apprentissage Trouver les paramètres des lois de probabilités des classes ou les séparatrices de

apprentissage Trouver les paramètres des lois de probabilités des classes ou les séparatrices de ces classes A. Si un « superviseur » connaît les classes d’échantillons test On déduit de ces échantillons les moyennes et les variances caractérisant les différentes classes ; voir les enseignements sur les estimations de paramètres B. génération automatique de la description des classe envisageable si les classes sont assez bien séparées (voir la présentation sur les champs de Markov) à appliquer avec précaution ; éviter de traiter des vecteurs de grande dimension

première classification par les k-means chaque échantillon (x, y) a une valeur f (x,

première classification par les k-means chaque échantillon (x, y) a une valeur f (x, y) initialisation affecter un numéro de classe i à chaque échantillon au hasard boucle calculer la moyenne sur les valeurs des échantillons (centre ci) de chacune des classes pour chaque échantillon, affecter maintenant le numéro de la classe dont le centre ci est le plus proche de cet échantillon ; test d’arrêt réitérer ce processus jusqu’à stabilisation la distance de chaque échantillon à chacun des centres de classe ci est calculée d (x, y, ci)

http: //en. wikipedia. org/wiki/K-means_clustering convergence non garantie !

http: //en. wikipedia. org/wiki/K-means_clustering convergence non garantie !

méthodologie générale de l’apprentissage ’’expectation maximization’’ http: //en. wikipedia. org/wiki/Expectation-maximization_algorithm http: //www. ee. columbia.

méthodologie générale de l’apprentissage ’’expectation maximization’’ http: //en. wikipedia. org/wiki/Expectation-maximization_algorithm http: //www. ee. columbia. edu/~sfchang/course/spr/

nombre de gaussienne K fixé a priori on recherche un maximum local calcul itératif

nombre de gaussienne K fixé a priori on recherche un maximum local calcul itératif : Catherine Aaron Université Paris I http: //samos. univ-paris 1. fr/archives/ftp/preprints/samos 212. pdf

Expectation Maximization Une variable aléatoire peut suivre l’une ou l’autre de deux lois de

Expectation Maximization Une variable aléatoire peut suivre l’une ou l’autre de deux lois de probabilités Comment retrouver à laquelle des deux lois appartient un échantillon Tout en ajustant les paramètres des lois de probabilité pour qu’elles « collent » le mieux possible aux données

Expectation Maximization Une variable aléatoire suit une des deux lois de probabilité avec la

Expectation Maximization Une variable aléatoire suit une des deux lois de probabilité avec la probabilité (Les deux lois ont des moyennes différentes et la même variance ) Une fonction indicatrice si suit la loi Vraisemblance d’une séquence de mesures Handbook of Computational Statistics J. E. Gentle, W. Härdle, Y. Mori, ISBN-10: 3540404643

Expectation Maximization Maximisation de la vraisemblance (ou de la log-vraisemblance) en effectuant alternativement les

Expectation Maximization Maximisation de la vraisemblance (ou de la log-vraisemblance) en effectuant alternativement les deux étapes : 1. Expectation Réactualisation de la probabilité que (On remplace artificiellement 2. Maximization suive l’une des lois par sa moyenne)

1. Expectation 2. Maximization Maximum de la log-vraisemblance (par annulation des dérivées partielles par

1. Expectation 2. Maximization Maximum de la log-vraisemblance (par annulation des dérivées partielles par rapport aux paramètres à estimer ) Réactualisation des valeurs des paramètres On réitère les deux étapes 1 et 2 jusqu’à convergence

Évolution des paramètres densités de probabilités Données de la simulation Convergence en cours Convergence

Évolution des paramètres densités de probabilités Données de la simulation Convergence en cours Convergence Évolution de la probabilité d’appartenance à une des deux classes

http: //www. ee. columbia. edu/~sfchang/course/spr/

http: //www. ee. columbia. edu/~sfchang/course/spr/

Introduction aux Support Vector Machines" (SVM) http: //www. math. u-psud. fr/~blanchard/gtsvm/intro. pdf

Introduction aux Support Vector Machines" (SVM) http: //www. math. u-psud. fr/~blanchard/gtsvm/intro. pdf

Support Vector Machines" (SVM) 1. transformation non linéaire des données pour trouver une séparation

Support Vector Machines" (SVM) 1. transformation non linéaire des données pour trouver une séparation linéaire des données d’apprentissage dans un nouvel espace 2. cher un hyperplan dont la distance minimale aux exemples d’apprentissage est maximale H. Mohamadally B. Fomani, U. Versailles St Quentin

SYNTHESE

SYNTHESE

B. Approche structurelle Un objet complexe est décrit comme un mot composé de lettres

B. Approche structurelle Un objet complexe est décrit comme un mot composé de lettres d’un alphabet prédéfini et des relations de position entre ces lettres Mais. . . lettres manquantes, relations de position erronées. . . Distances entre graphes recher dans la base des graphes, celui qui est le plus proche du graphe déduit des données analysées http: //www. cs. bilkent. edu. tr/~saksoy/courses/cs 551 -Spring 2008/slides/cs 551_structural. pdf Schalkoff, Pattern Recognition: Statistical, Structural and Neural Approaches, 1992

http: //wwwisg. cs. uni-magdeburg. de/bv/files/LV/Pattern_Recognition/VL/L 12_Structural%20 Pattern%20 Recognition. pdf

http: //wwwisg. cs. uni-magdeburg. de/bv/files/LV/Pattern_Recognition/VL/L 12_Structural%20 Pattern%20 Recognition. pdf

A gauche, et se prolongeant en dessous, la clef n° 162 (marcher vite) sous

A gauche, et se prolongeant en dessous, la clef n° 162 (marcher vite) sous sa forme simplifiée (trois ou quatre traits, suivant comment on le dessine). Le bloc interne qu'il isole est une composition verticale. Sous le bloc interne, quatre traits qui forment la clef n° 61 (coeur) Au dessus de ce même bloc, la clef 116 (trou), cinq traits. Le bloc interne est une composition horizontale. A gauche, une clef de quatre traits qui est soit la clef n° 74 (lune), soit plus probablement la clef n° 130 (chair). A droite, une clef de deux traits, la clef n° 18 (couteau), qui en position latérale se trace simplement sous forme de deux traits verticaux. Enfin, le bloc interne est une composition verticale en triptyque, où un caractère est encadré par deux exemplaires d'un autre. Au centre, une autre superposition verticale de la clef n° 149 (mot), sept traits, et de la clef n° 187 (cheval) de neuf traits. Cette combinaison ne figure pas dans les dictionnaires courants. De part et d'autre, une superposition verticale de la clef n° 52 (petit), de trois traits, et de la clef n° 168 (long) de huit traits. Cette combinaison ne figure pas non plus dans les dictionnaires courants.

la reconnaissance d’objets complexes nécessité d’une représentation structurée élément simple p ex morceau de

la reconnaissance d’objets complexes nécessité d’une représentation structurée élément simple p ex morceau de contour regroupement objet complexe élément simple p ex morceau de contour regroupement relations entre éléments regroupés progression dans la reconnaissance nécessité de prendre en compte les erreurs de prétraitement il faut pouvoir remettre en cause une décision qui a été prise antérieurement (processus itératif)

exemple de reconnaissance d’écriture manuscrite contours haut et bas segmentation reconnaissance des « segments

exemple de reconnaissance d’écriture manuscrite contours haut et bas segmentation reconnaissance des « segments » dans une base de segments mémorisés et de leurs enchaînements (modèles de markov) Abdenaim EL YACOUBI (la poste nantes) ftp: //ftp. irisa. fr/local/IMADOC/lorette/elyacoubi/MOUNIM. PPT

http: //www. cs. bilkent. edu. tr/~saksoy/courses/cs 551 -Spring 2008/slides/cs 551_structural. pdf 65 Schalkoff, Pattern

http: //www. cs. bilkent. edu. tr/~saksoy/courses/cs 551 -Spring 2008/slides/cs 551_structural. pdf 65 Schalkoff, Pattern Recognition: Statistical, Structural and Neural Approaches, 1992

recognition and classification are done using: I Parsing (analyse syntaxique, compilation) (for formal grammars),

recognition and classification are done using: I Parsing (analyse syntaxique, compilation) (for formal grammars), I Relational graph matching (for relational descriptions).

String matching: Given string x and text, determine whether x is a factor of

String matching: Given string x and text, determine whether x is a factor of text, and if so, where it appears. I String edit distance: Given two strings x and y, compute the minimum number of basic operations — character insertions, deletions and exchanges — needed to transform x into y. I String matching with errors: Given string x and text, find the locations in text where the “distance” of x to any factor of text is minimal. I String matching with the “don’t care” symbol: This is the same as basic string matching but the special “don’t care” symbol can match any other symbol.

I Substitutions: A character in x is replaced by the corresponding character in y.

I Substitutions: A character in x is replaced by the corresponding character in y. I Insertions: A character in y is inserted into x, thereby increasing the length of x by one character. I Deletions: A character in x is deleted, thereby decreasing the length of x by one character.

Techniques based on tree search • The basic idea – A partial match (initially

Techniques based on tree search • The basic idea – A partial match (initially empty) is iteratively expanded by adding to it new pairs of matched nodes. – The pair is chosen using some necessary conditions, usually also some heuristic condition to prune unfruitful search paths. – Eventually, either the algorithm finds a complete matching, or no further vertex pairs may be added (backtracking) – For PR the algorithm may consider the attributes of nodes and edges in constraining the desired matching. http: //www. prip. tuwien. ac. at/teaching/ss/strupr/matching. ppt#288, 14, Techniques based on tree search 69

Reconnaissance de séquences fondée sur les Modèles de Markov Cachés Hidden Markov Models Formulation

Reconnaissance de séquences fondée sur les Modèles de Markov Cachés Hidden Markov Models Formulation en reconnaissance de séquence 2. 1 Reconnaissance (Viterbi) 2. 2 Probabilité d’une séquence 2. 3 Apprentissage http: //htk. eng. cam. ac. uk/

2. Automates utilisés dans les modèles de Markov cachés n’ mesures n états m’

2. Automates utilisés dans les modèles de Markov cachés n’ mesures n états m’ m (Probabilités) transition Séquence d’états : Séquence de mesures : probabilité de transition de l’état m’ à l’état m probabilité de mesurer ‘n’ quand l’automate est dans l’état m probabilité que l’état initial soit m

Modèles de Markov Cachés (HMM Hidden Markov Models) par exemple pour mesurer la ressemblance

Modèles de Markov Cachés (HMM Hidden Markov Models) par exemple pour mesurer la ressemblance entre deux contours de lettres On écarte les portions de contour qui ne sont pas des côtés parallèles d’un segment modèle de Markov Un état = Une mesure tenir compte du fait qu’un état peut produire plusieurs mesures possibles

Les trois problèmes : Séquence d’états : Séquence de mesures : 1. Reconnaissance :

Les trois problèmes : Séquence d’états : Séquence de mesures : 1. Reconnaissance : Y donné quelle est la S la plus probable ? 2. Quelle est la probabilité d’observer Y avec l ’automate (a, b, d) ? 3. Apprentissage : comment calculer a(m, m’), b(m, n) et d(m)

SHAPE MATCHING BASED ON GRAPH ALIGNMENT USING HIDDEN MARKOV MODELS Xiaoning Qian and Byung-Jun

SHAPE MATCHING BASED ON GRAPH ALIGNMENT USING HIDDEN MARKOV MODELS Xiaoning Qian and Byung-Jun Yoo University of South Florida

L'algorithme de Needleman et Wunsch (programmation dynamique) Laurent Bloch, 2006 savoir si deux mots

L'algorithme de Needleman et Wunsch (programmation dynamique) Laurent Bloch, 2006 savoir si deux mots se ressemblent, quel est leur degré de ressemblance, ou de trouver, dans un ensemble de mots, celui qui ressemble le plus à un mot-cible un score de ressemblance un alignement des deux chaînes (qui n’ont pas forcément la même longueur) selon la configuration qui procure le meilleur score ; La programmation dynamique résout des problèmes en combinant des solutions de sous-problèmes. (Thomas Cormen, Charles Leiserson, Ronald Rivest et Clifford Stein, Introduction à l’algorithmique)

séquence n° 1 : G A A T T C A G T T

séquence n° 1 : G A A T T C A G T T A séquence n° 2 : G G A T C G A la « prime de score » pour la comparaison Initialisation du résidu de rang i de la première séquence avec le résidu de rang j de le seconde séquence sera Si, j = 1 si les deux résidus sont identiques, sinon Si, j = 0 (score de discordance) ; w = 0 (pénalité de gap). 2. Déterminer l'alignement optimal 1. Remplir la matrice

a titre d’illustration : un exemple simple dans le cas de l’écriture manuscrite -

a titre d’illustration : un exemple simple dans le cas de l’écriture manuscrite - extraction des contours - quantification en fonction de la pente - description sous forme d’un graphe -comparaison avec un graphe mémorisé (éventuellement prise en compte de la distance entre graphes)

5 6 4 3 8 ANGLES 2 TA 1 0. 67 E NG 7

5 6 4 3 8 ANGLES 2 TA 1 0. 67 E NG 7 S 0. 2 E NT 0. 41 1 0 -0. 1 QUANTIFICATION DES PENTES DES CONTOURS 0

16 ANGLES 0. 53 0. 41 0. 3 0. 2 S TE EN NG

16 ANGLES 0. 53 0. 41 0. 3 0. 2 S TE EN NG 0. 82 0. 67 TA 1 0 -0. 1 QUANTIFICATION DES PENTES DES CONTOURS

A. Mesure et quantification des pentes des contours par exemple huit pentes possibles (horizontale,

A. Mesure et quantification des pentes des contours par exemple huit pentes possibles (horizontale, verticale, oblique gauche et oblique droite) B. Recherche de tronçons aux côtés parallèles l’un en face de l’autre (typiquement analyse du type morphologie mathématique) puis élimination dans la description des autres éléments de contours

g b b a b g b d a g d b 0 a

g b b a b g b d a g d b 0 a g d a b g 3 b a 5 d d 3 a d 0 a b 5 g d 3 a b 5 g g 0 b plusieurs contours g d g 5 3 b d 7 4 d g a a d a b 5 3 0 3 ad g a b g b d a 6 b d g g d a bg 3 0 a d a 3 d a 0 d g 6 b g 4 b g 3 b g 0 b a 7 d b 3 g b 0 g d 6 a d 4 a d 3 a d 0 a b 7 g un seul contour Recherche de la forme dans une base en mémoire : on peut avoir des milliers voire des millions de formes type

Si on ne trouve pas la séquence de la forme en mémoire On cherche

Si on ne trouve pas la séquence de la forme en mémoire On cherche si il y a une forme proche, La méthode la plus ‘reconnue’ est celle des ‘Modèles de Markov Cachées’ Coopération entre différents niveaux Module de reconnaissance 1 2 ? Forme inconnue Morphologie mathématique : 3 Ici l’extension de région Peut fermer la boucle et permettre la reconnaissance 5 4 ‘A’ !

Ecriture manuscrite cursive Découpe en formes élémentaires plus simples Par exemple en cassant des

Ecriture manuscrite cursive Découpe en formes élémentaires plus simples Par exemple en cassant des segments horizontaux Ou obliques situés sur le contour extérieur En supposant que le mot existe dans le dictionnaire : Trouver le mot du dictionnaire dont la séquence ressemble le plus à celle qui a été analysée la plupart du temps, elle ne sera pas telle quelle dans le dictionnaire ; là encore les modèles de markov cachés Sont un outil efficace

reconnaissance de visages approche statistique (eigenfaces) approche structurelle (relations entre éléments caractéristiques)

reconnaissance de visages approche statistique (eigenfaces) approche structurelle (relations entre éléments caractéristiques)

point de départ : détection des éléments de contour E B 1. recherche par

point de départ : détection des éléments de contour E B 1. recherche par corrélation d’éléments simples : en « balayant » l’image, est ce que le médaillon analysé ressemble à l’image simple à laquelle on le compare (sourcil, œil, nez, bouche) (on peut avoir plusieurs formes pour ces images simples) A C F E 2. Vérification de la cohérence au dessus B D au dessus à gauche 3. Retour à l’image initiale pour essayer d’affiner l’analyse F D au dessus à droite A en dessous C

détection de visage images grossières avec peu de détails apprendre à partir de visages

détection de visage images grossières avec peu de détails apprendre à partir de visages types comment caractériser la notion de « visage » comment recher dans l’image les domaines qui présentent ces caractéristiques et les différencier de ceux qui ne les présentent pas ? faut il décrire le visage ? ou bien en faire une présentation paramétrique approximative (avec peu de paramètres) (approche statistique) représentation paramétrique dans un espace de dimension réduite http: //www. ensta. fr/~manzaner/Cours/Ese 24/Proj_Visages/Hjelmas 2001. pdf

détection de visage images grossières peu de détails apprendre à partir de visages types

détection de visage images grossières peu de détails apprendre à partir de visages types un classifieur va apprendre ce qu’est un visage (Neural Networks, Support Vector Machine, Principal Component Analysis - Eigenfaces. . . ). représentation dans un espace de dimension réduite

approche statistique de la reconnaissance de visages analyse en composantes principales : représenter les

approche statistique de la reconnaissance de visages analyse en composantes principales : représenter les visages sur une base de vecteur orthogonaux en essayant de prendre en compte les caractéristiques les plus significatives des visages

analyse en composantes principales de visages : eigenfaces une image = un vecteur de

analyse en composantes principales de visages : eigenfaces une image = un vecteur de paramètres (opérations préalables : cadrer les images et soustraire la moyenne de chaque image) http: //www. umiacs. umd. edu/~knkim/KG_VISA/PCA/Face. Recog_PCA_Kim. pdf

matrice rectangulaire W M RECHERCHE DES VECTEURS PROPRES e 1, . . . ,

matrice rectangulaire W M RECHERCHE DES VECTEURS PROPRES e 1, . . . , e. M (orthogonaux) DE LA MATRICE (carrée Mx. M) WT. W ag e M im im ag e im 1 ag e im 2 ag e 3 N les vecteurs propres associés aux valeurs propres les plus grandes contiennent l’information la plus significative de l’ensemble des images ayant servi à les construire (composantes de plus grand écart type)

une nouvelle image est projetée sur cette base elle est caractérisée par le vecteur

une nouvelle image est projetée sur cette base elle est caractérisée par le vecteur de paramètres (les images de la base d’apprentissage peuvent être caractérisées de la même manière par une projection sur cette base : ) les images et sont ressemblantes si la distance est petite

vecteurs propres associés aux valeurs propres les plus grandes de la matrice de covariance

vecteurs propres associés aux valeurs propres les plus grandes de la matrice de covariance des « vecteurs » représentant les images représentation d’une image dans cette base les composantes suivant les vecteurs propres associés aux valeurs propres plus petites sont moins informatives et sont négligées la distance entre deux images qui se ressemblent est « petite »

AT&T Laboratories, Cambridge at http: //www. uk. research. att. com/facedatabase. html Original training images

AT&T Laboratories, Cambridge at http: //www. uk. research. att. com/facedatabase. html Original training images Eigenface - The first eigenface account for the maximal variation of the training vectors, and the second one for the second Reconstructed images of training images- they are almost same as their original images reconnaissance représentation sur la base (calcul de distance entre points dans l’espace de dimension réduite M)

base de données visages inconnus de la base limitations : fond, éclairage, cadrage, utilité

base de données visages inconnus de la base limitations : fond, éclairage, cadrage, utilité d’un prétraitement (filtrage passe haut pour mettre en évidence les contours, normalisation de l’histogramme, recentrage de l’image, etc. . °

Résultats pour la détection de visages Voir utilisation des fonctions de Haar

Résultats pour la détection de visages Voir utilisation des fonctions de Haar

prétraitement utile filtrage passe bas (caractérisation du « type visage » ) prétraitement utile

prétraitement utile filtrage passe bas (caractérisation du « type visage » ) prétraitement utile filtrage passe haut (mise en évidence des contours)

mais il peut y avoir des erreurs ! the face on mars. . .

mais il peut y avoir des erreurs ! the face on mars. . .

Conclusion Tout ça marche assez bien quand le problème n’est pas trop difficile Mais

Conclusion Tout ça marche assez bien quand le problème n’est pas trop difficile Mais les algorithmes tombent facilement dans les pièges les plus simples On est très loin d’atteindre les performances d’un animal Il y a encore beaucoup à comprendre sur le fonctionnement cérébral Ce qu’on sait sur les neurones et le cerveau

stanislas dehaene http: //ext 1. siteparc. fr/dehaene-20080318. pdf

stanislas dehaene http: //ext 1. siteparc. fr/dehaene-20080318. pdf

Deep. Face: Closing the Gap to Human-Level Performance in Face Verification Yaniv Taigman Ming

Deep. Face: Closing the Gap to Human-Level Performance in Face Verification Yaniv Taigman Ming Yang Marc’Aurelio Ranzato Facebook AI Group Menlo Park, CA, USA Lior Wolf Tel Aviv University Tel Aviv, Israel Conference on Computer Vision and Pattern Recognition (CVPR), 2014 Figure 1. Alignment pipeline. (a) The detected face, with 6 initial fiducial points. (b) The induced 2 D-aligned crop. (c) 67 fiducial points on the 2 D-aligned crop with their corresponding Delaunay triangulation, we added triangles on the contour to avoid discontinuities. (d) The reference 3 D shape transformed to the 2 D-aligned crop image-plane. (e) Triangle visibility w. r. t. to the fitted 3 D-2 D camera; darker triangles are less visible. (f) The 67 fiducial points induced by the 3 D model that are used to direct the piece-wise affine warpping. (g) The final frontalized crop. (h) A new view generated by the 3 D model (not used in this paper).

Figure 2. Outline of the Deep. Face architecture. A front-end of a single convolution-pooling-convolution

Figure 2. Outline of the Deep. Face architecture. A front-end of a single convolution-pooling-convolution filtering on the rectified input, followed by three locally-connected layers and two fully-connected layers. Colors illustrate feature maps produced at each layer. The net includes more than 120 million parameters, where more than 95% come from the local and fully connected layers.