• Nenhum resultado encontrado

5.2 Algorithme de recherche 65

66 Chapitre 5: Recherche d'image Dans la suite nous presentons une solution robuste qui remedie a ces deux defauts des methodes basees sur les donnees photometriques. Cette solution est une extension directe de la methode d'appariement presentee au chapitre precedent. Cette methode est locale et invariante aux transformations image usuelles. L'idee est de considerer la recherche d'une image comme un probleme d'appariement d'une image a une base d'images. Cependant, etant donnes une image et un ensemble d'images, le probleme n'est plus de savoir quels points se correspondent mais de retrouver l'image la plus semblable. Les sections suivantes vont donc montrer comment utiliser une procedure d'appariement pour determiner la ressemblance de deux images. Ceci est illustre sur la gure 5.1 suivante. Etant capable de dire si deux images sont tres semblables, un peu semblables ou dierentes, il est alors possible d'identier les deux images les plus ressemblantes.

5.2.2 Structure de la base d'images

Une base d'images contient un ensemble fMkg de modeles. Chaque modele Mk est deni par un ensemble de vecteur d'invariants fV~k ;jg calcules aux endroits ou des points d'inter^et ont ete detectes pour les images du modele. Durant la phase d'enregistrement dans la base, chaque vecteur ~Vk ;j est ajoute dans la base avec une reference explicite au numerok du modele pour lequel il a ete calcule. Formellement, la base la plus simple est une table de n-uplets (V~k ;j;k) (cf. gure 5.2).

En outre, dans la base que nous venons de presenter, les elements peuvent ^etre in- seres de facon incrementale. Aucun re-arrangement de la base n'est necessaire apres une insertion. La mise a jour de la base, ou simplement sa construction sont donc tres rapides.

5.2.3 Mesure de ressemblance

Mettre en correspondance une image a une base d'images consiste a retrouver le mo- dele qui correspond a une image I donnee. Pour cette image, un ensemble de vecteurs d'invariants fV~jg est calcule aux endroits ou ont ete extraits des points d'inter^et. Ces vecteurs sont alors compares aux vecteurs V~k ;l de la base. Cette comparaison est faite en calculant la distance dM de Mahalanobis entre V~j et V~k ;l: dM(V~j;V~k ;l) = dj;k ;l 8(j;k ;l).

Pour chaque vecteur ~Vj, les modeles Mk? pour lesquels la distance dj;k?;l est inferieure a un seuil donnetsont retenus. Ce seuil est deni a partir de la distribution du2 observee en calculant la matrice de covariance des vecteurs d'invariants (cf. section 4.2.2). Lorsque la distance dj;k?;l est inferieure a ce seuil,Mk? est un modele probable pour le vecteur de caracteristiques V~j. On dit aussi que le modele Mk? est \ selectionne ". Etant donne un vecteur de caracteristiques, plusieurs modeles peuvent lui correspondre du fait de bruit ou d'ambigutes. An d'autoriser une telle incertitude quant a l'origine d'un vecteur de caracteristiques, l'ensemblefk?jgdes modeles probables n'est pas reduit a un seul element.

Ainsi, un vecteur de caracteristiques peut ^etre mis en correspondance avec plusieurs mo- deles. Le modele correspondant a une image emerge du fait qu'un modele correspond plus souvent que les autres aux vecteurs de caracteristiques de cette image.

De facon similaire a la transformee de Hough [Sha 78], l'idee d'un algorithme de vote est de sommer le nombre de fois qu'un modele correspond a un vecteur de caracteristiques.

Aussi, chaque fois qu'un modele Mk est selectionne, une table de votes T est mise a jour de maniere a ce que la valeur T(k) soit incrementee. Notons qu'un point peut selectionner n'importe quel modele mais qu'il ne peut selectionner qu'une seule fois un modele donne.

5.2 Algorithme de recherche 67

très semblable

semblable

différent

différent

Fig.5.1{Principe de la recherche d'image.

68 Chapitre 5: Recherche d'image

vecteurs modele s

Fig.5.2{Recherche d'un vecteur dans la base d'images.

Le modele le plus souvent selectionne est considere comme le meilleur representant de l'image: l'image represente le modeleMk^ pour lequel

^

k= argmax

k T(k)

La gure 5.3 montre le contenu de la tableT de votes sous la forme d'un histogramme.

Pour cet exemple, la base contenait 100 images. L'image de numero 0 a ete correctement reconnue. Cependant, d'autres images ont obtenu un score de selection du m^eme ordre de grandeur.

Pour rendre le modele a reconna^tre plus distinct, on utilise des contraintes semi-locales.

La gure 5.4 montre le contenu de la table T de votes sous la forme d'un histogramme lorsque la contrainte de voisinage est utilisee. Le modele reconnu appara^t alors distincte- ment. Si l'on ajoute en plus la contrainte geometrique, le modele reconnu appara^t encore plus distinctement (cf. gure 5.5).

Chacune des contraintes presentees diminue le nombre d'ambigutes lors de l'apparie- ment. Ceci prouve le gain en robustesse obtenu gr^ace a l'utilisation de ces contraintes. En consequence, le seuil t initial utilise pour determiner les appariements initiaux a un r^ole beaucoup moins important.

5.2.4 Adaptation de l'approche multi-echelle

Il est aise d'etendre l'algorithme presente a la section precedente dans un contexte multi-echelle. Les resultats theoriques de la section 3.3.2 ont montre comment adapter le calcul des invariants a un changement d'echelle. Il existe alors trois possibilites pour mettre en uvre une approche multi-echelle :

1. Etant donne une image a reconna^tre, les invariants de cette image sont calcules a dierentes echelles.

2. Les invariants sont calcules a dierentes echelles pour tous les modeles de la base.

3. Les invariants sont calcules a dierentes echelles a la fois pour l'image et pour l'en- semble des modeles de la base.

5.2 Algorithme de recherche 69

0 20 40 60 80 100 120 140 160

0 20 40 60 80 100

nombre de votes

modele

Fig.5.3 {Resultats de l'algorithme de vote.

0 5 10 15 20 25 30 35 40 45

0 20 40 60 80 100

nombre de votes

modele

Fig. 5.4{ Resultats de l'algorithme de vote lorsque la contrainte de voisinage est utilisee. Cette gure est directement comparable a la gure 5.3. L'objet reconnu appara^t distinctement.

0 5 10 15 20 25 30

0 20 40 60 80 100

nombre de votes

modele

Fig. 5.5 {Resultats de l'algorithme de vote lorsque les contraintes de voisinage et geometrique sont utilisees. Cette gure est directement comparable aux gures 5.3 et 5.4

70 Chapitre 5: Recherche d'image La derniere possibilite est la plus robuste puisqu'elle permet la realisation d'une phase de verication au travers des echelles considerees. Cependant, elle est tres lourde a mettre en uvre autant par le temps d'execution qu'elle necessite que par la memoire qu'elle requiert. La premiere possibilite est la moins co^uteuse en ressource. C'est celle qui a ete retenue dans le cadre de notre approche.

Il faut cependant noter qu'elle peut introduire des erreurs par ambigutes. Cela sur- vient par exemple lorsque les invariants calcules a une echelle inadequate votent pour un faux modele. Ce probleme est toutefois resolu par l'utilisation des contraintes semi-locales presentees a la section 4.2.4 precedente. En eet, ces contraintes semi-locales incluent implicitement une contrainte d'echelle puisque les invariants calcules en un point et les invariants de son voisinage sont calcules a la m^eme echelle. Ainsi, si deux points ainsi que leur voisinage respectif se correspondent, alors la contrainte d'echelle est veriee. Les resultats experimentaux presentes en section 5.4 montrent qu'une approche multi-echelle est eective des que les contraintes semi-locales sont utilisees.