• Aucun résultat trouvé

Maillage des points 3D : Paramétrisation Sphérique

3.5 Traitement de l’information 3D : nos contributions

3.5.2 Maillage des points 3D : Paramétrisation Sphérique

Présentation de la méthode.

Il existe divers articles qui parlent de la paramétrisation sphérique [55] [129]. Mais comme dans le cas de la décimation, tous les travaux appliquent la paramétrisation sphérique aux sommets d’un maillage et non d’un nuage de points 3D. Nous avons developpé une méthode similaire à celles mentionnées par Gu [55] et Sheffer [129] mais cette fois ci orientée pour traiter un nuage de points 3D.

Définissons d’abord une sphère, qui enferme complétement le nuage. Le centre ~C est sur le centre de gravité du nuage de points 3D de l’objet ; le rayon R est la distance entre ~C et le point le plus éloigné du nuage, plus un petit incrément ε.

Une fois déterminée le centre et le rayon de la sphère, chacun des points du nuage est projeté vers la sphère. Il doit y avoir un seul point sur la sphère pour un point dans le nuage 3D, ceci afin d’éviter des ambiguïtés. La projection s’obtient de la façon suivante :

soit une droite ~L qui passe par le centre ~C et par un point ~N du nuage à trianguler. On calcule la distance la plus petite entre le point ~N et la sphère.

Pour réaliser ce calcul, il est nécessaire de trouver l’intersection entre la droite ~L et la sphère définie par ~C et R. Considérons en premier lieu la paramétrisation de la droite ~L comme :

~ L(t) = ~N + t ~D (3.5) où ~ D = ~N − ~C (3.6) et la sphère comme |~L − ~C|2= R2 (3.7)

Le point ~L est à la fois sur le cercle (équation 3.7) et sur la droite (équation 3.5) ; nous obtenons donc une équation du second degré en t. Nous gardons uniquement la racine positive pour obtenir l’intersection de la droite et de la sphère. Avec ceci on obtient la projection de ~N sur la sphère. La figure 3.32 illustre cette projection ; le point Pi est projeté sur le point Si de la sphère.

Après avoir projeté tous les points vers la sphère nous procédons à la triangulation des points 3D afin de générer un maillage triangulaire. Le maillage s’effectue sur la sphère, par l’algorithme de Delaunay- convex hull. Du fait que tous les points sont sur la sphère, nous obtenons une surface uniforme. Une fois finie la triangulation sur la sphère, on a les relations sommets/arêtes et arêtes/triangles : pour générer le modèle final de l’objet, il suffit de remplacer chaque sommet sur la sphère, par le point du nuage qui s’y est projeté.

Dans les figures 3.33 et 3.34 nous pouvons observer le nuage de points 3D de l’objet Mannequin, disponible sur le web, et sa projection sur la sphère.

Finalement, la figure 3.35 montre le résultat de l’application de la triangulation en utilisant la Para- métrisation Sphérique.

Figure 3.32 – Projection d’un point 3D vers la sphère.

Figure 3.33 – Une vue du nuage de points sur le Mannequin.

Figure 3.35 – Une vue du maillage obtenu par l’algorithme de Paramétrisation sphérique.

Résultats sur des données virtuelles.

Dans les sections suivantes nous allons montrer les résultats obtenus en utilisant l’algorithme de Marching Cubes, celui de Ball Pivoting et notre développement sur la Paramétrisation Sphérique. Les résultats qui exploitent l’algorithme de Marching Cubes ont été obtenus en utilisant une implémentation réalisée en VTK (Visual ToolKit) [2] [74]. Ceux qui exploitent l’algorithme de Ball Pivoting, ont été obtenus en utilisant l’implémentation développée par A.Restrepo [133].

Figure 3.36 – Paramétrisation sphérique du mannequin

Figure 3.37 – Reconstruction par la paramétri- sation sphérique

Nous allons commencer notre analyse sur l’objet Mannequin. La figure 3.36 montre la paramétrisation exploitée initialement par notre algorithme ; les points 3D acquis sur l’objet sont d’abord projetés sur une sphère. Le maillage construit en triangulant les points sur la sphère est présenté en figure 3.37).

Les figures 3.38 et 3.39 présentent la triangulation faite en exploitant respectivement les algorithmes de Marching cubes, puis de Ball Pivoting. On peut observer que la triangulation réalisée par notre méthode simple, a donné de meilleurs résultats que les autres algorithmes classiques de triangulation.

La table 3.4 montre les temps d’exécution pris par chacun des algorithmes. Bien que notre algorithme soit un peu plus lent, il rend de meilleurs résultats que celui de Marching Cubes. L’exécution de l’algo- ritmhe de Ball Pivoting a été arrêtée avant de finir ; c’est la raison pour laquelle le maillage obtenu par cet algorithme n’est pas complet.

Figure 3.38 – Reconstruction par Marching

cubes Figure 3.39 – Reconstruction par Ball-Pivoting

Table 3.4 – Tableau comparatif des temps d’exécution entre les algorithmes de triangulation. Les temps sont donnés en s.

Algorithme M.C. B.P. P.S. Mannequin 3.82 540.13 5.87

Boîte 2.51 360.32 3.74

Résultat sur des données réelles.

Dans les mêmes conditions, nous allons à présent évaluer notre méthode sur un nuage de points obtenus à partir de nos propres images stéréo. L’objet modélisé est toujours une boîte : bien que cela soit un objet simple, il est quand même significatif de la complexité qui apparaît dès que l’on souhaite construire un maillage à partir de données 3D acquises sur un objet quelconque. La boîte est présentée en figure 3.28, nous l’avons déjà utilisée pour évaluer la fonction de recalage.

Figure 3.40 – Paramétrisation sphérique des points de la boîte

Figure 3.41 – Reconstruction par la paramétri- sation sphérique

La projection des points 3D de la boîte sur la sphère peut être observée en figure 3.40 ; le maillage résultat est montré en figure 3.41. La reconstruction a été faite en 3.74 secondes ; dans la table 3.4, nous pouvons observer que le temps pris par notre implémentation pour réaliser le maillage de la boîte, n’a pas été le plus rapide, mais on peut constater en regardant les images 3.42 et 3.43, que le résultat est

meilleur.

Figure 3.42 – Reconstruction par Marching

cubes Figure 3.43 – Reconstruction par Ball-Pivoting

Les maillages triangulaires obtenus tant par l’algorithme de Marching Cubes que par l’algorithme de Ball Pivoting, ne sont pas satisfaisants à cause des trous sur le maillage. Marching Cubes a été le plus rapide ; Ball Pivoting prend beaucoup de temps pour obtenir un maillage qui en plus présente le même problème de trous.