Analyse et Synthèse d'images James L. Crowley DESS Génie Informatique 1999/00 Séance 7 : 15 fevrier1900 Plan de la Séance : Segmentation et Reconnaissance de Forme Méthodes Statistique de la Reconnaissance de formes.2 Caractéristiques d'une forme ("Features")...3 Modèle Théorique de la Reconnaissance...4 Classification Probabilistique de formes...5 Une Exemple avec Les moments d'une forme...6 Composantes principales...8 Variables Aléatoires...9 L'Histogramme et la densité de probabilité... 10 L'Espérance d'une variable aléatoire... 11 Vecteurs de variables aléatoires... 12 Projection sur un axe... 13 Composantes principales... 14 Segmentation par les statistiques de la couleur... 14
Méthodes Statistique de la Reconnaissance de formes Reconnaissance : (psycho) processus par lequel une représentation mentale actuelle est reconnue comme trace du passée (petit robert). Reconnaissance : Association d une observation à une connaissance. Une observation, Y, est un vecteur de propriétés. Par exemples, une image, Y(i, j) est un vecteur de pixels. Sortes de Reconnaissance : Identification : Classification : Déterminer qu on observation, Y, est une manifestation de l individu, I préalablement connu. Déterminer que l observation, Y, est une manifestation d un membre de la classe, K. Dans les deux cas, les individus ou les classes sont caractérisés par un vecteur de propriétés. La reconnaissance se résume en une comparaison des propriétés. La difficulté principale est de déterminer des propriétés discriminantes. Comment définir une classe? Par extension : fournir une liste des membres Par intention : définir une conjonction des prédicats. (Un prédicat est une fonction pour laquelle le domaine est {vrai, faux}. Les prédicats définint une Test d appartenance à un vecteur de propriétés. En reconnaissance de forme "statistique", les prédicats sont définis par un vecteur de caractéristiques ("features" en Anglais) 7-2
Caractéristiques d'une forme ("Features") Caractéristique : une propriété qui caractérise une classe ou un individu. (en anglais : feature ). Les individus sont caractérisés par un vecteur de caractéristiques X = { x 1, x 2... x n }. L observation est un vecteur aléatoire Y = { y 1, y 2... y n }. Si Y n est pa composé des mêmes mesures que X on suppose une fonction de transformation que ramène Y à la même espace que X X = F(Y ) La teste d identification ou d appartenance est une mesure de distance entre vecteur de caractéristique. Les techniques de reconnaissance de formes statistiques fournissent une méthode pour induire des tests d'appartenance à partir d'un ensemble d'échantillons. 7-3
Modèle Théorique de la Reconnaissance Le problème de la reconnaissance peut être formulé comme une recherche d un symbole, C^k, pour une observation, Y, telle que la probabilité d'erreur est minimisée. Chaque classe, C k, est représenté par une prototype, X k. x 1 C 0 C 1 C 2 x 0 Ck Classe issue de d un ensemble {C k } X k N Y C^k vecteur de caractéristique prototype pour c k bruit vecteur de caractéristique d'une observation. identité estimé pour Y méthode de reconnaissance par distance minimal : 1)Comparer les coefficients de Y à des prototypes X k 2)Déterminer l identité C^k pour lequel min{ Y X k } Si le bruit est additif, c.-à-d. Y = X k + N alors la classification optimale est ceux qui minimisent la distance entre Y et X k Si le bruit est 1)additif, et 2)indépendant, c.-à-d. le bruit N ne dépende de C k un système de classification linéaire et optimale. 7-4
Classification Probabilistique de formes Pour une observation, Y, une reconnaissance probabiliste recherche la classe C k tel que : Max k { p( C k Y )} La probabilité p( Classe k Y )demande une densité de probailité. Pour les pluspart de sources de bruit, une densité Gaussien est approprié. Les paramètre d une densité gausian sont le Moyenne, µ k, et la covariance, C k. Soit N classes, C k, caractérisées par une densité de probability p k ( X k ). Soit une observation Y Par la règle de Bayes : p( C k Y ) = p(y C k )p(c k ) p( C k )est la fréquence d observer chaque classe. p(y ) p(y ) est la densité de probabilité pour les observations Y de toutes les classes confondus. On note que : p(y )étant indépendante de k, elle peut être éliminé du max{} Max k { p( C k Y )} = Max { p(y C k )p(c k )} 7-5
Une Exemple avec Les moments d'une forme. Supposons que nous voudrions apprendre à discriminer deux classes d'objets définis par "extension" (par une liste d exemples). Classe A: les rectangles carrés, Classe B : les rectangles non-carrés Classe A Classe B : W W L L Ces caractéristiques définissent un espace de caractéristiques ("Feature Space") λ 2 Largeur A B Longueur λ 1 Il est possible d'utiliser les statistiques des caractéristiques afin d induire des tests d'appartenance à partir d'un ensemble d exemples. La hauteur et largeur d'un rectangle dépendent de son orientation. V V H H H H On peut définir les caractéristiques "invariantes" de l'orientation avec des "moments de la forme. Pour une image w(i, j)de taille N x M 7-6
Somme des Pixels : Premiers moments : M N S = w(i, j) i=0 j=0 µ i = 1 S M N w(i, j). i µ j = i=0 j=0 1 S M N w(i, j). j i=0 j=0 Le premier moment est le centre de gravité de la forme : Deuxième moment : σ i 2 = 1 S M N (w(i, j)).(i µ i ) 2 σ j 2 = i=0 j=0 1 S M N w(i, j).(j µ j ) 2 i=0 j=0 σ ij = σ ji 2= 1 S M N w(i, j).(i µ i )(j µ j ) i=0 j=0 Ceci permet de définir les "axes", majeur, λ 1 et mineur, λ 2, de la forme par analyse des composantes principales de la deuxième moment C o σ i 2 σ ij σ ij σ j 2 λ2 λ 1 Les deuxièmes moments sont "invariants" à l orientation. 7-7
Composantes principales Les axes sont calculés par une analyse en composantes principales de la matrice C. Il s'agit de trouver une rotation, Φ, dans l'espace de caractéristiques Φ C P Φ Τ = Λ telles que Λ soit diagonale. Λ = λ 1 0 0 λ tel que λ 2 1 > λ 2 Φ = Cos(θ) Sin(θ) Sin(θ) Cos(θ) Φ C P Φ Τ = Λ = λ 1 0 0 λ Φ Τ Φ = I = 1 0 2 0 1 Φ C P Φ Τ Φ = Φ C P = Λ Φ = λ 1 0 0 λ 2 Cos(θ) Sin(θ) Sin(θ) Cos(θ) Les lignes du Φ sont des vecteurs propres du C. La longueur des axes majeur et mineur est les valeurs propres de la matrice C. θ est l'orientation de l'axe "majeur" et λ 1 / λ 2 est le rapport entre la longueur et la largeur. λ 1 / λ 2 est une caractéristique invariante de la taille et de l'orientation. Avec λ 1 et λ 2 on peut définir les classes avec l'histogramme des valeurs observées : λ 2 Largeur A B Longueur λ 1 Mais d'où viennent les variations? Le BRUIT d'observation. 7-8
Variables Aléatoires Remarque préliminaire Les perceptions ne sont jamais parfaitement précises. Les observations sont limitées en précision. Chaque observation est asujettie à des erreurs. Conséquence : 1)Chaque mesure perceptive doit être accompagnée par une estimation de sa précision. 2)Il nous faut les outils mathématiques de représentation et manipulation de la précision. Ces outils sont fournis par les statistiques et la probabilité. Une variable aléatoire, x, est une variable dont les valeurs sont imprévisibles. Les variables aléatoires sont décrites par leurs propriétés statistiques. Soit une variable aléatoire, x, on peut observer une population de N échantillons de x, {x n } pour 0 n < N. Exemples : les notes des étudiants dans un cours. La note de chaque individu est imprévisible (donc aléatoire). On peut décrire une population des notes par leurs propriétés statistiques. Par exemple, on peut calculer la moyenne des notes. La moyenne d'une population {x n } de n échantillons peut être calculée par 1 N-1 x^ = N xn n=0 Ici on a calculé la moyenne "a posteriori" d'une population. Pour l'année suivante, on peut prédire que la "moyenne" des notes sera la même. Dans ce cas, on utilise la moyenne précédente comme une estimation "a priori". On peut mesurer une autre caractéristique d'une population d'échantillons : par exemple, on peut mesurer sa densité de probabilité. 7-9
L'Histogramme et la densité de probabilité L'histogramme, h(x) d'une population d'échantillons {x n } des valeurs discrète est le nombre de fois que chaque valeur est observée dans la population. Par exemple, ici l'histogramme des notes finales obtenues dans le cours vision par ordinateur pour l'année scolaire 93/94. 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 On peut convertir l'histogramme en densité de probabilité par une normalisation. Il s'agit de diviser par le nombre d'échantillons en sorte que la somme des valeurs de l'histogramme soit 1.0. Probabilité de chaque valeur possible de x : p(x)= Lim N { 1 N h(x)} La densité des probabilités mesurée pour une population, fournit une densité de probabilité "A posteriori". Si les propriétés statistiques ne changent pas, on peut prendre la densité "a posteriori" d'une population comme une approximation "a priori" d'une autre. Une distribution de probabilités (l'intégrale d'une densité)est définie par la probabilité que v (paramètre)soit infieure ou égale à x (variable aléatoire) x P(v)= p(v x) = p(v) v=0 7-10
L'Espérance d'une variable aléatoire Soit une variable aléatoire x, prennent les valeurs discrètes de l intervalle [Xmin, Xmax] avec fonction de densité de probabilité p(x). L'espérance d'une population de N échantillons {xn} de x est sa moyenne : x^ E{x} = 1 N-1 N xn n=0 Les probabilités sont les masses! (Ou plutôt, la masse est une propriété probabiliste de la matière). La moyenne est le premier moment de la densité de probabilité. Elle peut également être calculé par. X maxx x^ µ x E{x} = p(x=x) x=x min où p(x)est la densité de probabilité de x, et h(x)est un histogramme de valeurs de x. 1 Xmax N h(x)x x=xmin La variance, σ 2, d'une variable aléatoire, x, est l'espérance du carré de l'écart entre les échantillons {x n } et la moyenne. σ 2 = E{(e) 2 } = E{(x x^) 2 1 N-1 } N (x n x^) 2 n=0 La variance, σ 2, est équivalente à un deuxième moment de la densité de probabilité, autour de la moyenne. σ 2 = E{(x x^) 2 Xmax } = (x n x^) 2 1 Xmax P(x)) x=xmin N h(x)(x n x^) 2 x=xmin On peut également écrire : σ 2 = E{(x x^) 2 } = E{(x E{x}) 2 } 7-11
Vecteurs de variables aléatoires. Un vecteur aléatoire est un vecteur de variables aléatoires. X = x 1 x 2... x k Son espérance est le vecteur d'espérances des composantes. X E{X } E{x 1 } E{x 2}... E{x k} Il s'agit du premier moment du vecteur densité de probabilité 1 N h(x ) La "covariance" est une matrice qui mesure la moyenne du carré de l'espérance de l'erreur : C E{[X X^ ] [X X^}] T } = E{[X E{X }] [X E{X }}] T } où et C x σ x1 2 σ x2 x 1... σ xn x 1 σ x1 x 2 σ x2 2... σ xn x 2......... σ x1 x n σ x2 x n... σ xn 2 σ x2 x 1 E{ (x 1 - x^ 1 ) (x 2 - x^ 2)} σ x1 2 E{ (x 1 - x^ 1) 2 } 7-12
Projection sur un axe Soit un vecteur unitaire D = x 1 x 2... x n tel que D = 1. La projection de la covariance sur un axe, D donne une variance, σ 2 D dans la direction D. σ 2 D = D C D Τ La surface des projections est un ellipsoïde λ2 λ 1 Les axes de l'ellipsoïde sont les composantes principales de la covariance. 7-13
Composantes principales Les axes sont calculés par une analyse en composantes principales de la matrice C. Il s'agit de trouver une rotation, Φ, dans l'espace de caractéristiques Φ C P Φ Τ = Λ telles que Λ soit diagonale. Λ = λ 1 0 0 λ tel que λ 2 1 > λ 2 Φ = Cos(θ) Sin(θ) Sin(θ) Cos(θ) Φ C P Φ Τ = Λ = λ 1 0 0 λ Φ Τ Φ = I = 1 0 2 0 1 Φ C P Φ Τ Φ = Φ C P = Λ Φ = λ 1 0 0 λ 2 Cos(θ) Sin(θ) Sin(θ) Cos(θ) Les lignes du Φ sont des vecteurs propres du C. La longueur des axes majeur et mineur sont les valeurs propres de la matrice C. θ est l'orientation de l'axe "majeur" et λ 1 / λ 2 est le rapport entre la longueur et la largeur. λ 1 / λ 2 est une caractéristique invariante de la taille et de l'orientation. Segmentation par les statistiques de la couleur Un histogramme de couleur peut fournir une densité de probabilité afin de trouver les pixels qui sont les images d'un objet, par exemple, la peau humaine. On initialise avec un échantillon de taille N o pixels de l'objet w(i, j) On alloue une tableau 2D de taille N h (exemple 32 x 32 = 1024 cellules : h o (r, v). ) Pour chaque pixel w(i, j), P(i,j)= [R, V, B], on normalise par la luminance : r = R R+V+B v = V R+V+B Puis on ajoute (r, v)à l histogramme : h o (r, v):= h o (r, v)+1 Puis dans les images succède, pour chaque pixel, C = c(i, j)= [r, v], p(c objet )= 1 N h(c) 7-14
Ceci permet de calculer (règle de Bayes): p(objet C)= p( C objet ) p(objet) p(c) Soit M images de N pixels. Ceci fait N tot Pixels. Soit h tot (r, v), l'histogramme de tout les N tot pixels. Soit h o (r, v), l'histogramme des N o pixels de l'objet "o". p(objet)= N o N tot p(c) = p(c objet )= 1 N o h o (C) Donc p(objet C)= p( C objet ) p(objet) p(c) = 1 N o h o (C) N o N tot 1 = N h tot (C) tot 1 N tot h tot (r, v) h o (C) h tot (C) Cependant, il faut assurer que h tot (C) 0!! Pour cela il faut que N tot >> N h (nombre de cellules de l'histogramme.). Aini, on peut creer une image de probabilité de l'objet. Exemple : 7-15