Mise en correspondance de deux maillages bruités
description
Transcript of Mise en correspondance de deux maillages bruités
![Page 1: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/1.jpg)
Mise en correspondance de deux maillages bruités
Projet de spécialité ImageLe 19 juin 2009
Encadrants : Franck Hétroy, Romain Arcila
Simon COURTEMANCHE Antoine KUHNXavier MARCHAL Bertrand RICHARD
![Page 2: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/2.jpg)
SommaireIntroduction
1. Installation des logiciels – Prise en main du scanner (1ière semaine)2. Implémentation de l’algorithme : Non-rigid Registration
a. Organisation de l’équipe b. Résumé des différentes étapes :
i. Difficultés rencontrées ii. Résultats
3. Assemblage final – Interface
Conclusion - Perspectives
![Page 3: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/3.jpg)
Installation des logiciels – Prise en main du scanner (1ière semaine)
Logiciels : Scanner : – Open mesh
– QGlViewer
– QT
![Page 4: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/4.jpg)
Implémentation de l’algorithme
a. Organisation de l’équipeb. Résumé des différentes étapes :
i. Difficultés rencontréesii. Résultats
![Page 5: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/5.jpg)
Implémentation : Preprocessing
• 3 étapes :1 : Downsampling (étape abandonnée)
![Page 6: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/6.jpg)
Implémentation : Preprocessing
• 2 : Geodesic distance & NeighborhoodDistance en passant par les arêtes
Voisinage : k plusproches
voisins, k = 15
![Page 7: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/7.jpg)
Implémentation : Preprocessing
• 3 : Normals & Feature vector
On estime les courburesprincipales à partir desnormales au point et àcelles de son voisinage
![Page 8: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/8.jpg)
Implémentation : Correspondence
• Initial correspondence :– Closest Points– Improved correspondences
![Page 9: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/9.jpg)
Implémentation : Correspondence
• Prunning correspondences :
![Page 10: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/10.jpg)
Implémentation : Correspondence• Propagation correspondences :
![Page 11: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/11.jpg)
Implémentation : Correspondence• Resultats :
![Page 12: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/12.jpg)
Implémentation : Clustering• Principe : recherche des parties du maillage qui peuvent avoir
une transformation « rigide » identique.
• Initialisation : Chaque point représente un cluster• Traitement : on essaie de fusionner le maximum de clusters
entre eux.
![Page 13: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/13.jpg)
Implémentation : Clustering• Algorithme :
– Chaque cluster possède une transformation rigide associée (calculée sur son cluster étendu) et une erreur de transformation.
– Boucle itérative : Pour chaque cluster C, on regarde les clusters voisins et on regarde l’erreur associée si on applique la transformation de C. Si elle est inférieure à un seuil, on fusionne.
• Problème : – Quelle valeur donne-t-on au seuil?– Notions de voisins?
![Page 14: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/14.jpg)
Implémentation : Clustering• Résultats :
![Page 15: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/15.jpg)
Implémentation : Energy minimization
![Page 16: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/16.jpg)
Implémentation : Energy minimization
![Page 17: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/17.jpg)
Assemblage final – Interface
• Création d’une interface de visualisation – Visualise des maillages– Visualise les clusters, normales– De nombreuses options (cf. démonstration)
![Page 18: Mise en correspondance de deux maillages bruités](https://reader035.fdocument.pub/reader035/viewer/2022062816/56815677550346895dc4296c/html5/thumbnails/18.jpg)
Conclusion - Perspectives
• Bilan : Ce qu’il reste à faire + Impressions• Perspectives du projet– Optimisation du code C++– Gestion des étapes « abandonnées » (pour tester
sur des maillages plus importants)
Merci de votre attention !