• Aucun résultat trouvé

4.5 Fonctions de coût

4.5.2 Fonctions de coût adaptées

Nous venons de voir que les fonctions de coût empiriques présentaient deux inconvé-nients majeurs. Lorsqu’on perturbe les paramètres du modèle de forme, la fonction de coût peut présenter des minima locaux. Cette particularité est très gênante pour le processus d’optimisation car il peut converger vers cette solution. Les approches locales d’optimisation

4.5. Fonctions de coût

telles que la descente de gradient sont particulièrement sensibles à ces minima locaux. Le second inconvénient est que l’un de ces minima peut correspondre au minimum global de la fonction. Dans ce cas, même l’algorithme d’optimisation le plus performant ne pourrait pas trouver les bons paramètres du modèle. Ces problèmes apparaissent principalement parce que le modèle d’apparence et la fonction de coût sont conçus sans considérer l’informa-tion au voisinage des bons paramètres du modèle. Cette idée, illustrée dans la figure 4.14, consiste donc à apprendre une fonction de coût adaptée en utilisant durant la phase d’ap-prentissage à la fois l’apparence des visagesg(I, s(b

I)) avec les bons paramètres du modèle b

I et l’apparence au voisinageg(I, s(b

I + ∆b) (figure4.14b). Fonction de coût empirique Fonction de coût apprise (a) (c) (b) (d) Image de test Images

d’apprentissage Réponse de la fonction de cout

Figure 4.14 – Principe d’une fonction de coût adaptée. (a) Seule l’apparence des visages bien alignés est exploitée. (b) La fonction de coût a plusieurs minima locaux et son minimum global ne correspond pas aux bons paramètres du modèle (point noir). (c) La conception de la fonction de coût prend en compte l’apparence du visage au voisinage des bons paramètres du modèle. (d) La surface de la fonction de coût apprise est améliorée et le minimum global est à la bonne position. (Schéma inspiré de Nguyen et De la Torre,2010).

4.5.2.1 Approches par classification

Elles s’appuient sur un modèle d’apparence discriminant (cf. section 4.4.1). L’objectif est de construire un classifieur capable d’identifier les bonnes positions du modèle.Li et Ito

[2005] utilisent l’algorithme AdaBoost pour apprendre les bonnes positions des points du modèle. Ils montrent expérimentalement qu’une fonction de coût locale, définie par la sortie

du classifieur, donne de meilleurs résultats que la distance de Mahalanobis. La figure 4.15

montre un exemple des réponses de la fonction de coût le long du profil normal.

Figure 4.15 – Image de gauche : un point du modèle (point rouge) et son profil normal (ligne verte). Graphique 1 : distribution des niveaux de gris le long du profil. Graphique 2 : distance de Mahalanobis le long du profil. Graphique 3 : score par AdaBoost le long du profil

Les Boosted Appearance Models (BAM) de Liu [2009] exploitent une idée similaire. L’algorithme GentleBoost est utilisé pour sélectionner les filtres de Haar pertinents pour distinguer les bons alignements des mauvais. Les descripteurs de Haar sont calculés sur un modèle d’apparence global.

Van Ginneken et al. [2002] proposent une autre manière d’utiliser un classifieur pour

évaluer la qualité de l’alignement. Un classifieur H est entraîné à répondre 1 si un pixel appartient à la forme à segmenter et 0 sinon. La fonction de coût locale est la somme des différences absolues entre la sortie du classifieur et la sortie attendue. Pour chaque élément g(j)

loc du profil normal :

fi(I, si) = 1 X j=−k H (g(j) loc(I, si)) + k X j=0 1 − H (g(j) loc(I, si)) (4.8) avec les indices le long du profil gloc allant de −k à k (profil orienté de l’extérieur vers l’intérieur de l’objet).

Les approches par classification donnent de bons résultats car la position du minimum de la fonction de coût est apprise en tenant compte de l’apparence au voisinage de la bonne position du modèle. Toutefois, utiliser la sortie du classifieur comme fonction de coût ne nous garantit pas que le coût augmente à mesure que l’on s’éloigne de la bonne position.

4.5.2.2 Approches par régression

L’idée directrice, illustrée dans la figure4.16, est de définir une fonction de coût idéale (figure4.16b) et d’apprendre, à partir d’exemples plus ou moins bien alignés (figure4.16d), une fonction avec un comportement similaire (figure 4.16e). Ces approches ne considèrent pas l’alignement comme un problème binaire (bien/mal aligné) mais comme un processus

4.5. Fonctions de coût

continu, et cherchent à répondre au problème des minima locaux qui ne sont pas pris en compte dans les approches par classification.

(b) (c) (d) (e) (a)

Figure 4.16 – (a) Profil d’un point du sourcil. (b) Fonction de coût idéale. (c) Image le long du profil. (d) Données d’apprentissage. (e) Fonction de coût apprise [Wimmer et al.,

2008]

Fonctions de coût idéales Intuitivement, on souhaite que la valeur retournée par la fonc-tion de coût :

– Soit minimum lorsque le modèle est bien aligné.

– Augmente à mesure que le modèle s’éloigne de sa bonne position.

Ces deux caractéristiques définissent la fonction de coût idéale. Wimmer et al. [2008] ont formalisé les deux propriétés d’une telle fonction de coût :

– La propriété d’exactitudeP1 : le minimum global de la fonction de coût correspond à la meilleure position du modèle. La propriété est vérifiée si pour toutb tel que b 6= b I

alors :

F (I, b

I) < F (I, b) (4.9)

– La propriété d’unimodalitéP2 : la fonction de coût n’a ni extrema locaux ni points selles. La propriété est vérifiée s’il existe un m unique qui pour tout b 6= m :

F (I, m) < F (I, b) (4.10)

et si pour tout b 6= m alors :

∇F (I, b) 6= 0; (4.11)

La figure 4.17 montre quatre exemples de fonctions avec et sans les propriétés P1 et P2. La ligne en pointillés correspond au meilleur jeu de paramètres b

I. Un algorithme d’optimisation, qui s’appuie sur la fonction de coût avec ces deux propriétés, est sûr que le minimum local trouvé corresponde au minimum global de la fonction, et que la solution coïncide avec le meilleur jeu de paramètres du modèle.

Figure 4.17 – Chaque figure correspond à un exemple de fonction de coût satisfaisant ou non les propriétés P1 et P2. La fonction de coût est dite idéale lorsque P1 et P2 sont respectées. Illustration tirée deWimmer et al. [2008]

Apprentissage de la fonction de coût Wimmer et al. [2008] proposent une instance de la fonction de coût. Il s’agit d’une fonction de coût locale qui mesure la distance entre un point dans l’imagex et un point de la forme bien aligné si(b

I) :

fi(I, x) = |x − si(b

I)| (4.12)

A partir de cette définition et d’une base de données annotée, Wimmer et al. génèrent automatiquement des exemples d’apprentissage en déplacant chaque point du modèle le long de son profil normal (cf. figure 4.18(b)). Chaque point est décrit par un ensemble d’ondelettes de Haar disposées sur une grille qui est centrée sur le point et orientée suivant son profil (figure 4.18(b)). La fonction de coût idéale (équation (4.12)) est apprise par un arbre de régression qui réalise simultanément le processus d’apprentissage et de sélection des ondelettes.

(a) (b)

Figure 4.18 – (a) Les exemples d’apprentissage sont choisis uniformément le long du profil. (b) Un point est caractérisé par un ensemble d’ondelettes de Haar sélectionnées automati-quement.

Brunet et al. [2009] proposent une autre façon d’apprendre la fonction de coût idéale.

Ils partent du constat que l’erreur de reconstruction (définie précédemment par l’équation (4.7)) n’est pas une fonction de coût convexe pour les modèles d’apparence par ACP. Ils

4.5. Fonctions de coût

définissent la réponse de la fonction de coût désirée f par une gaussienne inversée, dont le minimum correspond à la position correcte du point dans l’image et les axes correspondent aux directions de déplacement dans l’image. Ces déplacements ∆x s’effectuent dans le voisinage N de la bonne position du point dans l’image. Brunet et al. cherchent alors un espace de projectionB dans lequel l’erreur de reconstruction se comporte comme la fonction de coût désirée. Ce sous-espace est obtenu en minimisant :

Ei= Nim X j=1 X ∆x∈N αjf(∆x) + βjkgloc(Ij,si+ ∆x) − ¯gmodBajk2 kgloc(Ij,si+ ∆x)k2 !2 (4.13) par rapport àB, aj, αj et βj, pour les Nim de la base d’apprentissage. Les coefficients αi et βi sont des facteurs d’échelle et de décalage de la fonction de coût pour chaque image. Brunet et al. proposent une méthode itérative pour minimiser cette grandeur : ils cherchent alternativement une solution analytique pour αi et βi puis une solution pour B par une descente de gradient.

Nguyen et De la Torre [2010] définissent une fonction de coût quadratique qui peut

s’appliquer à de nombreux modèles d’apparence (ASM, AAM, CLM . . . ). Cette fonction est de la forme :

F (I, b) = gglob(I, s(b))TAgglob(I, s(b)) + 2cTgglob(I, s(b)) (4.14) Apprendre la fonction de coût revient à estimer les valeurs de la matrice symétrique A et du vecteurc en respectant deux contraintes :

– Un minimum local à la bonne position : le gradient de la fonction de coût est nul pour b = b

I.

– Pas d’autres minima dans le voisinage deb

I : la direction indiquée par la descente de gradient et le vecteur de déplacement vers la bonne positionb

I doivent être colinéaires.

Nguyen et De la Torre [2010] montrent que si l’on utilise un développement en série de

Taylor du premier ordre pour approximer le gradient de la fonction de coût, l’apprentissage se ramène à un problème d’optimisation quadratique avec des contraintes linéaires sur A etc.

Les Boosted Ranking Models (BRM), proposés par Wu et al. [2008], conservent le mo-dèle de forme et d’apparence des BAM mais utilisent une manière originale d’apprendre une fonction de coût convexe dans le voisinage du bon alignement. Wu et al. restreignent le problème d’apprentissage de cette fonction à la conception d’un classifieur qui détermine si une modification des paramètres du modèle de forme améliore l’alignement. Un clas-sifieur fort apprend par boostingbrunet09iccvw laquelle des deux observations, gglob(I, b1) et gglob(I, b2), correspond au meilleur alignement. Pour y parvenir, il faut constituer un ensemble d’apprentissage contenant des exemples négatifs (mal alignés) et positifs (mieux alignés). Pour chaque image labélisée, on tire aléatoirement N∆b vecteurs de perturbation ∆bu qui serviront à créer l’ensemble d’apprentissage (cf. figure4.19(a)). Les exemples posi-tifs sont définis par des paires ordonnées de textures normalisées en forme (transférées vers une forme de référence)



avec v un entier positif qui module l’amplitude de la déformation. A chaque exemple posi-tif correspond un exemple négaposi-tifgglob(I, s(bi+ (v + 1)∆bu)),gglob(I, s(bi+ v∆bu)). Ils utilisent ensuite l’algorithme GentleBoost pour entrainer des classifieurs faibles. Ces der-niers sont des filtres de Haar dont la réponse est seuillée. A la sortie de l’algorithme, on obtient une fonction de coût définie par la somme des classifieurs faibles sélectionnés (cf. figure4.19(b)).

(a)

(1) (2) (3)

(b)

Figure 4.19 – Boosted Ranking Models [Wu et al.,2008]. (a) Exemples d’apprentissage (b) Filtres de Haar sélectionnés : (1) les 5 premiers (2) les 10 suivants (3) la densité spatiale des 50 premiers filtres.