• Aucun résultat trouvé

Rappelons que, dans notre application, le mod`ele compte une centaine ou une cinquan-taine de milliers de points (la surface extraite du scanner ou la Picza), et la sc`ene une cinquantaine de milliers de points (dans le cas d’une acquisition 2D 1/2 de la mˆachoire) ou quelques dizaines de points (dans le cas des s´eries de point´es). Tous ces points de la sc`ene ne correspondent pas n´ecessairement `a un point du mod`ele (dans le premier cas, on ´evalue le pourcentage de points de la sc`ene appari´es `a 60%, mais il est tr`es variable en fonction des images), et cette partie pr´esente diff´erentes techniques permettant de rejeter les faux positifs, c’est `a dire les points de la sc`ene qui ne devraient pas ˆetre appari´es. Toutes ces m´ethodes sont bas´es sur le mˆeme principe, que nous d´ecrirons dans la premi`ere section. Ce principe fait intervenir un seuil sur la distance, et les sections suivantes pr´esentent dif-f´erentes fa¸con de le calculer. Ceci est en outre parfaitement en accord avec les algorithmes de recherche des points les plus proches, sur lesquels sont bas´es l’impl´ementation, dont l’efficacit´e d´epend principalement de la distance maximum qu’on lui impose (voir 3.2.3).

Nous ne traiterons pas le cas des faux-n´egatifs, c’est `a dire des appariements non trouv´es. En effet, les m´ethodes que l’on pourrait imaginer exigeraient d’augmenter consi-d´erablement la distance de recherche, et seraient donc bien trop coˆuteuses en terme de temps de calcul.

3.6.1 Sch´ema g´en´eral

Une premi`ere forme de gestion des points aberrants peut ˆetre introduite lors de la re-cherche des appariements, comme dans [Zhang, 1994]. Il s’agit de rejeter les appariements manifestement faux, et am´eliorer ainsi la robustesse de l’algorithme. L’id´ee est que - pour une transformation donn´ee - la distance entre points (primitives) v´eritablement appari´es

Fig. 3.3 – Crit`ere de l’ICP en fonction d’une translation en z : cas o`u l’on rejette les points trop ´eloign´es : les variations des appariements (en bas) entraˆınent des discontinuit´es dans le crit`ere (en haut).

doit ˆetre relativement homog`ene, et doit donc ˆetre inf´erieure `a une certaine distance Dmax. L’estimation de A est donc l´eg`erement modifi´ee :

A0ij = (

0 si D(T ? si,mj) ≥ Dmax Aij sinon

Ce changement peut cependant poser probl`eme. En effet, le nombre d’appariements n’´etant plus fixe, il peut apparaˆıtre des discontinuit´es dans le crit`ere, comme illustr´e dans la figure 3.3. Le danger est alors de consid´erer les discontinuit´es comme des minima locaux. On peut corriger ce probl`eme en int´egrant dans notre crit`ere des pseudo-appariements : on repr´esentera le cas o`u si est un point aberrant par un pseudo-appariement not´e abusi-vement (pour ne pas surcharger les notations) si ∼ mout. Cet appariement sera repr´esent´e dans l’estimation de A par Ai out et sera affubl´e d’une distance constante ´egale `a :

D(T ? si,mout) = Dmax

Sauf mention contraire, l’index j variera dans l’ensemble {1,..,M,out}. Les crit`eres de-viennent donc : C(T ) =X i min j D(T ? si,mj) C(T,A) =X ij AijD(T ? si,mj)

Ainsi corrig´es, les crit`eres ne perdent aucune de leurs propri´et´es th´eoriques. De plus, la minimisation de ce crit`ere `a T constant se fait sous la contrainte P

jAij = 1, et donne le point le plus proche si celui-ci est `a une distance inf´erieure `a Dmax et un

pseudo-Fig. 3.4 – Crit`ere de l’ICP en fonction d’une translation en z : cas o`u l’on corrige le rejet des points trop ´eloign´es : le crit`ere redevient continu.

appariement de type point aberrant dans le cas contraire, ce qui correspond bien `a notre id´ee. Enfin, la distance D(T ? si,mout) est constante, si bien que les points aberrants n’interviennent en fait pas dans la minimisation du crit`ere `a A constant. Les diff´erents algorithmes de mise `a jour de T peuvent donc ˆetre utilis´es en ignorant simplement les pseudo appariements avec point aberrant.

On peut voir sur la figure 3.4 le crit`ere sans rejet des points aberrants (courbe sup´ e-rieure) et le crit`ere avec rejet des points aberrants (avec Dmax = 1mm).

Une derni`ere remarque importante est la suivante : Dmax peut ˆetre remis `a jour entre deux it´erations. Il doit alors ˆetre d´ecroissant - au sens large - pour ne pas faire remonter le crit`ere.

3.6.2 Calcul la distance de coupure D

max

L’´equation min C(T ) ' D.σ2

e, obtenue dans la section 3.2.1.0 permet de se faire une id´ee de la distance moyenne attendue lorsque le recalage est bon. On note cette distance Dth. Il faudra bien sˆur utiliser une valeur bien plus grande en d´ebut de recalage. Les deux m´ethodes que nous allons voir ici pour calculer Dmax sont d’ailleurs bas´ees sur une mise `a jour entre chaque it´eration, si bien qu’il faut fournir une valeur initiale pour la premi`ere it´eration, not´ee Dinit. On prendra donc une valeur assez forte, par exemple Dinit = 10.Dth. De plus, il faudra veiller `a ce que Dmax soit d´ecroissant. Dans le cas contraire, il pourrait faire remonter le crit`ere.

Analyse statistique des distances

Nous pr´esentons ici le calcul de la distance maximum utilis´e dans [Zhang, 1994]. Ce calcul est bas´e sur une ´etude statistique des distances entre points appari´es. On d´efinit ainsi la moyenne et la variance de ces distances (on utilise la distance simple d = kk

et non la distance quadratique D = d2 = kk2) : µ = P1 ijAij X ij Aijd(T ? si,mj) σ = s 1 P ijAij X ij Aij(d(T ? si,mj) − µ)2

La mise `a jour de Dmax entre deux it´erations est effectu´ee de fa¸con tr`es pragmatique, `

a l’aide de µ : faible lorsque le recalage semble bon (µ < Dth), tr`es forte lorsque il est tr`es mauvais (µ > 6Dth) : Dmax =          µ + 3σ si µ < Dth µ + 2σ si µ < 3Dth µ + σ si µ < 6Dth Dinit sinon

On le voit, cette m´ethode manque de justification, et nous lui pr´ef´ererons la m´ethode qui suit, mieux justifi´ee, et plus convainquante d’un point de vue exp´erimental.

Distance de Mahalanobis et Test du χ2

Lorsqu’on utilise la distance de Mahalanobis, le calcul de Dmax= µ2max fait penser au test du χ2. En effet, comme nous l’avons d´ej`a pr´ecis´e, la distance de Mahalanobis pour un vecteur gaussien en dimension D suit une loi du χ2 `a D degr´e de libert´e. Autrement dit, si un point de la sc`ene si est vraiment appari´e `a un point du mod`ele mj, la distance de Mahalanobis µ2(T ? si,mj) est la r´ealisation d’une variable r´eelle al´eatoire dont la loi suit un χ2 `a D degr´e de libert´e. Or la distribution d’une telle loi est bien connue, et r´esum´ee dans le tableau suivant :

Dimension α 50% 90% 95% 99% 3 (points 3D)  2.37 6.25 7.81 11.34 5 (pts orientes 3D)  9.24 11.07 15.09 6 (transfos rigides)  5.35 10.65 12.59 16.81

Ce tableau se lit de la fa¸con suivante : pour une dimension donn´ee, α est la probabilit´e que la distance de Mahalanobis soit inf´erieure `a . Par exemple, lorsqu’on travaillera sur les points en 3D, on est sˆur `a 90% que deux points appari´es ont une distance de Mahalanobis inf´erieure `a 9.24. On rejettera donc par exemple les points dont la distance de Mahalanobis est sup´erieure `a cette limite, en fixant µ2