• Aucun résultat trouvé

Détection de la fusion de plusieurs groupes

4.4 Détection multiple avec l’algorithme MAC-RANSAC

4.4.4 Détection de la fusion de plusieurs groupes

Nous verrons dans la partie expérimentale, lorsque plus d’une transformation est en jeu, qu’il existe des situations où le critère de validation a contrario entraîne la détection d’un groupe résultant de la fusion de plusieurs transformations distinctes.

Ce problème de fusion est également présent dans [CDD+07], où Sur et al. proposent une méthode de groupement a contrario de points avec la transformée de Hough. Dans leur approche, les échantillons dans l’espace des paramètres sont initialement regroupés deux à deux de manière à construire une struc-

ture hiérarchique dyadique (c’est-à-dire un arbre dont le nombre de feuilles double à chaque nouveau nœud). Les auteurs définissent un critère de découpage, afin de pouvoir décider de la fusion ou de la séparation de deux groupes. Leur approche présente certaines analogies avec celle de Stewart [Ste95]. Cependant, cette comparaison se fait cette fois sans le moindre surcoût algorithmique, en raison de la structure dyadique de représentation des groupes qu’ils exploitent. Par ailleurs, un autre avantage de leur approche est que cela leur permet de détecter la fusion de plus de deux groupes, ce que MINPRAN est dans l’incapacité de réaliser.

Pour détecter la fusion de plusieurs groupes, nous proposons dans cette section un critère de décou- pageet un algorithme de recherche récursive de découpage dyadique en sous-groupes inspirés de ces travaux.

Critère de détection de fusion de deux groupes Pour simplifier l’étude du problème, nous nous

intéressons dans un premier temps au cas de la fusion de deux transformations. On note S0un groupe de

correspondances que l’on définit comme la réunion de deux sous-groupes S1et S2, tels que S1∩ S2 =∅.

On parle de fusion de groupes lorsque les transformations de S1et S2, respectivement notée T1et T2sont

suffisammentdifférentes3. La transformation T

0 du groupe S0 est alors une transformation « moyenne »

de T1et T2.

La raison pour laquelle le groupe S0 a été validé est que sa significativité (NFA) est plus faible que

celles de chacun des deux sous-groupes S1 et S2, bien qu’ils aient chacun une plus faible rigidité :

   NFA(S0= S1∪ S2, S0′) < min  NFA(S1, S1′) , NFA(S2, S2′) α S0= S1∪ S2, TS′ 0  ≥ maxnα S1,TS′ 1  , α S2,TS′ 2 o . (4.13)

Ce résultat est lié au comportement glouton de AC-RANSAC qui cherche le groupe minimisant le NFA. Le problème est que la relation (4.13) est également vraie lorsque S0décrit une unique transformation.

Afin de pouvoir détecter la fusion de deux groupes, nous devons donc être en mesure de comparer le groupe S0 = S1∪ S2 avec les deux groupes S1 et S2 simultanément. Nous proposons de réaliser cette

comparaison à l’aide du critère naïf suivant, qui suppose que l’on peut estimer la mesure de qualité de l’union de deux groupes indépendants par le produit de leurs NFA respectifs.

Définition 14 (Critère de découpage) Soit S0un groupe ε-significatif de C, de transformation TS′ 0. S’il

existe S1 et S2, deux sous-ensembles disjoints de S0, ainsi que deux n-uplets disjoints S1′ et S2′ de

S0\ {S1∪ S2}, tels que les conditions suivantes sont vérifiées :

· NFA(S1, S1′)≤ ε et NFA(S2, S2′)≤ ε

· NFA(S1, S1′)× NFA(S2, S′2) < NFA(S0, S0′) ,

alors, les 2 groupes S1et S2sont validés en tant que deux objets distincts à la place de S0.

On peut montrer cependant que, contrairement au NFA, la quantité correspondant au produit des NFA ne permet pas de contrôler l’espérance du nombre de fausses alarmes. Toutefois, en raison de sa simplicité et de son efficacité qui sera démontrée expérimentalement, nous utilisons ce critère de découpage en pratique pour décider si deux groupes correspondent à une même transformation.

Afin de pouvoir exploiter le critère de découpage14, nous allons maintenant définir une stratégie de découpage récursif en sous-groupes.

Recherche récursive de découpage dyadique en sous-groupes La figure4.10montre un exemple

de situation où l’utilisation du critère a contrario conduit à la fusion de plusieurs groupes. L’image ori- ginale (poster du film « Casablanca », en figure4.10(a)) est découpée en cinq bandes horizontales aux- quelles sont appliquées des homographies différentes (figure4.10(b)), de manière à ce que l’affiche obte- nue corresponde à un pliage en « accordéon ». L’algorithme MAC-RANSAC détecte un groupe principal

3En pratique, en raison des erreurs qui entachent les données, il est impossible que les deux transformations T

1et T2soient rigoureusement identiques, même lorsque il n’y a pas de fusion. C’est la raison pour laquelle la définition de la fusion est quelque peu ambiguë.

(a) Image originale. (b) Transformation synthétique en 5 homographies (pliage).

(c) Utilisation de AC-RANSAC. (d) Recalage avec la transformation principale.

FIG. 4.10 –Illustration de la fusion de plusieurs groupes. La figure4.10(b)est obtenue en appliquant une transformation synthétique à l’image4.10(a). L’algorithme AC-RANSAC détecte un groupe prépon- dérant, résultant de la fusion de cinq groupes dont les transformations sont distinctes (figure4.10(c)). La transformation obtenue est peu précise, comme en atteste le recalage illustré en figure4.10(d).

qui résulte de la fusion approximative des cinq groupes (figure4.10(c)), bien que le modèle géométrique utilisé soit correct (homographie). Quelques points restants sont groupés selon deux autres transforma- tions incorrectes. Dans cet exemple difficile, la détection de la fusion suppose de pouvoir identifier puis comparer ces cinq sous-groupes. Pour contourner la difficulté de l’identification directe de tous les sous- groupes impliqués dans la fusion, nous proposons un algorithme dont le but est d’identifier un seul de ces sous-groupes. Pour cela, nous définissons une stratégie de découpage en deux sous-groupes qui est appliquée récursivement sur le groupe S0:

Recherche de deux sous-groupes Nous définissons S1comme le plus petit des deux sous-groupes S1et

S2appartenant à S0. Comme le remarque Stewart dans [Ste95], on vérifie alors la relation suivante :

#S1 ≤ #S0/2≤ #S2. Le sous-groupe S1est obtenu en cherchant (par échantillonnage aléatoire)

un n-uplet S′

1 ⊂ S0 qui minimise la quantité NFA(S1, S1′) sous la contrainte que #S1 ≤ #S20.

Ce principe de recherche est illustré par la figure4.11. Le sous-groupe S2 est ensuite obtenu en

cherchant un n-uplet S′

2parmi les correspondances restantes de S0qui minimise NFA(S2, S2′). Le

critère14nous permet alors de savoir si ce découpage est viable.

FIG. 4.11 – À Gauche : lorsque l’on cherche à découper de manière optimale un groupe S0 en deux

sous-groupes, on recherche d’abord un premier sous-groupe S1dont le cardinal n’excède pas la moitié

de celui de S0. Le second sous-groupe est constitué initialement des points restants. À Droite : le groupe

S1est détecté en tant que minimum local du NFA à la condition que son cardinal n’excède pas la moitié

de celui de S0.

Découpage dyadique Tant que le critère valide le découpage, on applique récursivement cette stratégie de découpage en deux sous-groupes au groupe S1(k) qui vient d’être identifié à l’itération k. Ce principe est illustré en figure4.12dans le cas de la fusion de 5 groupes.

Le processus s’arrête lorsque le dernier sous-ensemble S1(k)trouvé correspond à une transforma- tion unique : soit lorsque l’on n’a pas trouvé 2 nouveaux sous-groupes ε-significatifs, soit lorsque le critère de découpage rejette le découpage de S1(k)en S1(k+1)et S2(k+1).

Si au terme de cette recherche le groupe S0 est découpé en S1(k) et S (k)

2 , seul le groupe S (k) 1

est validé. Le groupe S2(k) étant ε-significatif, il est quant à lui considéré comme une détection : l’algorithme MAC-RANSAC passe donc en phase d’optimisation (étape 2 de l’algorithme4.3). Cet algorithme de découpage que nous venons de décrire est résumé en table4.4.

Remarque 2 :

Nous avons vu que le groupe S0, s’il résulte d’une fusion de plusieurs groupes, est estimé à partir d’une transformation très approximative TS′

0. Le groupe S0 ne capture donc pas nécessairement l’ensemble

des correspondances des différents objets regroupés. Le groupe S(k)

1 validé risque alors d’être incomplet (risque de sur-segmentation). Pour éviter cela, on lui ajoute toutes les correspondances ˜S1de l’ensemble C \ S0dont la rigidité est telle que α( ˜S1, S1′)≤ α(S, S1′).

La figure 4.13montre le résultat de l’application de l’algorithme 4.4 de découpage sur l’exemple synthétique des images4.10(a) et 4.10(b). L’utilisation de notre procédure récursive de recherche de

FIG. 4.12 –Détermination d’un sous-groupe optimal par découpage récursif en 2 sous-groupes.

TAB. 4.4 –Algorithme de recherche récursive du plus petit sous-ensemble optimal d’un groupe. Algorithme de découpage4.4

Entrées : Groupes S0, S0′ ⊂ C tels que NFA(S0, S0′) < 1 et S0′ ∩ S0 =∅ . Nombre d’itérations imax.

Initialisation du sous-groupe Sopt

1 :={∅}.

1) Recherche d’un sous-groupe optimal : Tirage de imaxn-uplets S′1⊂ S0,

avec recherche de S1⊂ S0\ S1′ minimisant NFA(S1, S1′) tel que #S1<

#S0

2 . Si le groupe optimal est tel que NFA(S1, S1′)≥ 1 : arrêt de l’algorithme.

2) Définition du complémentaire : S2 := S0\ S1 et S′2= S0′.

Tirage de imaxn-uplets S2′ ⊂ S0\ S1, avec recherche de S2minimisant NFA(S2, S2′).

Si le groupe optimal est tel que NFA(S2, S2′)≥ 1, arrêt de l’algorithme.

3) Validation de la segmentation : Si NFA(S1, S1′) × NFA(S2, S2′) < NFA(S0, S′0) ,

définition de Sopt

1 := S1 et Sopt2 := S2. Retour à l’étape 1) avec S0 := S1 et S0′ := S1′.

Sinon, arrêt de l’algorithme. Sortie : Sous-ensemble optimal Sopt

1 .

– Si S1opt6= ∅, S1optest validé à la place de S0,

et Sopt

2 est utilisé pour initialiser l’étape 2 d’optimisation de MAC-RANSAC.

– Sinon S0 est validé et retour à l’étape 1 de détection de MAC-RANSAC.

sous-groupes, illustrée par le schéma4.12, permet de retrouver chacun des groupes (figure4.13(a)). La précision de l’estimation de la pose sur chacune des parties de l’affiche est alors améliorée, comme que le montre les 5 recalages obtenus en la figure4.13(b).

Pour des images naturelles, où le modèle géométrique utilisé n’est qu’une approximation de la transformation réelle de l’objet, on pourrait s’attendre à ce que notre algorithme détecte plusieurs pe- tits groupes lorsqu’il n’y a qu’un seul objet à détecter. Nous allons voir dans la partie expérimentale

(§ 4.5.2.1) que cela n’est pas le cas en pratique, et ce, toujours en raison de la propension du critère

a contrarioà fusionner les groupes. C’est une procédure robuste que l’on peut donc systématiquement appliquer en pratique.

(a) Résultat du groupement par MAC-RANSAC avec utilisation de l’algorithme de découpage récursif. Les cinq parties de l’affiche sont correctement identifiées.

(b) Recalage avec les 5 transformations estimées.

FIG. 4.13 – La figure (4.13(a)) montre l’application de MAC-RANSAC avec l’algorithme4.4 sur les

images de la figure4.10(c). Les 5 objets sont correctement détectés, ce qui permet d’accroître la précision de leurs transformations respectives (voir les 5 différents recalages en figure4.13(b)).