Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

32
Efficient Efficient Simplification of Simplification of Point-Sampled Point-Sampled Surfaces Surfaces Simplification directe Simplification directe d’un nuage de points. d’un nuage de points.

Transcript of Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Page 1: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Efficient Efficient Simplification of Simplification of Point-Sampled Point-Sampled

SurfacesSurfacesSimplification directe d’un Simplification directe d’un nuage de points.nuage de points.

Page 2: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

MotivationsMotivations

Travailler directement sur un nuage Travailler directement sur un nuage de point (format d’entrée très de point (format d’entrée très répandu)répandu)

Créer un prétraitement efficace pour Créer un prétraitement efficace pour réduire la complexité de ces données réduire la complexité de ces données avant de les passer à un algorithme avant de les passer à un algorithme de visualisationde visualisation

Page 3: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Approches existantesApproches existantes

Méthodes par regroupementMéthodes par regroupement (clustering) (clustering)

Simplification par itérationsSimplification par itérations Simulation de particulesSimulation de particules

La simplification de maillages est un domaine de recherche déjà très avancé dont certaines heuristiques peuvent être adaptées aux surfaces définies par points.

Page 4: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Approches existantesApproches existantes

Dans les méthodes précédentesDans les méthodes précédentes (alexa et (alexa et

al., Linsen)al., Linsen), le nuage de points résultant , le nuage de points résultant était forcément une partie de était forcément une partie de l’original l’original aliasingaliasing

Au contraire, les méthodes présentées Au contraire, les méthodes présentées ici ne donnent pas obligatoirement un ici ne donnent pas obligatoirement un sous ensemble de l’ensemble de sous ensemble de l’ensemble de départdépart

Page 5: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

AvantagesAvantages

Réduction automatique du bruitRéduction automatique du bruit Rapidité et qualité de la Rapidité et qualité de la

reconstruction de surface sur le reconstruction de surface sur le nuage simplifiénuage simplifié

Adapté aux algorithmes de rendu Adapté aux algorithmes de rendu par points par points

Rapide et peu gourmand en mémoireRapide et peu gourmand en mémoire

Page 6: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

ClusteringClustering

Méthodes très utilisées pour réduire la Méthodes très utilisées pour réduire la complexité des objets 3D.complexité des objets 3D.

Généralement Généralement approche volumétrique: approche volumétrique: subdiviser la boite englobante de l’objet en subdiviser la boite englobante de l’objet en

cellulescellules remplacer tous les points d’une même remplacer tous les points d’une même

cellule par un représentant communcellule par un représentant commun

approche surfacique: incrémentale hiérarchique

Page 7: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Analyse de la covarianceAnalyse de la covariance

On cherche à estimer la variation de On cherche à estimer la variation de surface, c’est-à-dire la distance des surface, c’est-à-dire la distance des points au plan tangentpoints au plan tangent

L’analyse des valeurs et vecteurs L’analyse des valeurs et vecteurs propres de la matrice de covariance propres de la matrice de covariance d’un voisinage local peut être d’un voisinage local peut être utilisée pour estimer les propriétés utilisée pour estimer les propriétés locales de la surfacelocales de la surface

Page 8: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Matrice de covariance Matrice de covariance 3x33x3

Calcul de la matrice de covariance au point Calcul de la matrice de covariance au point p p

Page 9: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Vecteurs propresVecteurs propres

Page 10: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Estimation de normaleEstimation de normale

Equation du plan

V0 est une approximation de la normale à la surface

Page 11: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Variation de surfaceVariation de surface

Page 12: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Croissance de régionCroissance de région

A partir d’un point qui constitue un A partir d’un point qui constitue un cluster, on ajoute successivement cluster, on ajoute successivement ses voisins pour agrandir le cluster.ses voisins pour agrandir le cluster.

On s’arrête si:On s’arrête si: on atteint le maximum de points on atteint le maximum de points

spécifié par l’utilisateurspécifié par l’utilisateur on atteint la variation de surface on atteint la variation de surface

maximum spécifiée par l’utilisateurmaximum spécifiée par l’utilisateur

Page 13: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Croissance de régionCroissance de région

Pour éviter d’avoir trop Pour éviter d’avoir trop de clusters et trop de clusters et trop petits,petits,

l’utilisateur fixe un seuil l’utilisateur fixe un seuil « minimum »« minimum »

Tous les points dans de Tous les points dans de trop petits clusters sont trop petits clusters sont rattachés au cluster rattachés au cluster valide le plus prochevalide le plus proche

Cette opération peut Cette opération peut amener à dépasser le amener à dépasser le seuil maximum fixéseuil maximum fixé

Page 14: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Hierarchical ClusteringHierarchical Clustering

Cette approche consiste à séparer Cette approche consiste à séparer récursivement le nuage de points en 2 tant récursivement le nuage de points en 2 tant que:que:

sa taille est supérieure à la taille maximum d’un clustersa taille est supérieure à la taille maximum d’un cluster la variation de la surface est supérieure à une variation la variation de la surface est supérieure à une variation

maximummaximum

On définit le plan de coupe par le centre du nuage de points et le vecteur V2 de la matrice de covariance

Page 15: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Hierarchical ClusteringHierarchical Clustering

Page 16: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Comparaison des 2 Comparaison des 2 méthodesméthodes

Page 17: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Iterative SimplificationIterative Simplification

Principe :Réduire itérativement le nombre de points du modèle initial en considérant l’erreur encourue

Page 18: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Iterative SimplificationIterative Simplification

Mesure quantitative de l’erreur Mesure quantitative de l’erreur commisecommiseEn considérant les k voisins de chaque point p

on estime un plan tangent entre pi et pvia ei = p - pi et bi = ei × n (normal en p)

Contraction itérative de paires de Contraction itérative de paires de pointspointsDeux points p1 et p2 se contractent en p’

si l’erreur minimum est vérifiée

Page 19: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Iterative SimplificationIterative Simplification

Page 20: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Particle SimulationParticle Simulation

Principe :Placer le nombre souhaité de particules aléatoirement sur la “surface”Les répartir suivant un algorithme de répulsionen restreignant leurs déplacements contre la “surface”

Page 21: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Particle SimulationParticle Simulation

RépulsionRépulsion Force de répulsion linéaireForce de répulsion linéaire

Fi(p) = k (r - ||p - pi||).(p - pi)r rayon d’influence

Fi(p) force exercée sur la particule pk force constante

Force totale exercée sur Force totale exercée sur ppF(p) = iNp Fi(p)

où Np est le voisinage de rayon r

Page 22: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Particle SimulationParticle Simulation

ProjectionProjectionLes points sont projetés sur la surface

définie implicitement par une adaptationde la projection surfacique MLS MLS c’est quoi ?MLS c’est quoi ?

Moving Least Square Adaptation ?Adaptation ?

Pour les nuages de points non uniformément répartis

Page 23: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Particle SimulationParticle Simulation

Projection (suite)Projection (suite)Calcul de la projection surfacique MLS coûteusePrévisualisation par simple projection sur le plan tangent du point le plus proche

Page 24: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Particle SimulationParticle Simulation

Simulation adaptativeSimulation adaptativeConcentrer plus de pointsdans les régions de hautes coubures Adapter le rayon de répulsionAdapter le rayon de répulsion

r inversement proportionnel à n (variation)

Adapter la répartition initialeAdapter la répartition initialeà (densité) on associe .n

Page 25: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Particle SimulationParticle Simulation

Page 26: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Appréciation d’erreurAppréciation d’erreur

Evaluer la qualité des surfaces générées parces méthodes pour différents nuages de

points

Erreur maximale (distance bilatérale d’Hausdorff)

max(s,s’) Erreur moyenne (distance point à surface)

avg(s,s’)

Page 27: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

Appréciation d’erreurAppréciation d’erreur

Créer un nuage de points Q de point de S, par la méthode simulation de particule

Pour tout qQ d(q,S’) = minp’S’d(q,p’)

d(q,S’) calculer via l’opérateur de projection MLS

On approxime ainsi max(s,s’) maxqQd(q,S’)

avg(s,s’) 1/|Q| qQd(q,S’)

Page 28: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

RésultatsRésultats

Appréciation de la surfaceAppréciation de la surface

Page 29: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

RésultatsRésultats

Effort du traitementEffort du traitementClustering : de loin la plus rapideIterative Simplification : phase de précalcul relativement

longueParticule Simplification : la plus lente pour les gros modèles

alternative: petit nombre de particules position d’équilibre division des particules (adapter le rayon de répulsion) position d’équilibre etc. jusqu’à ce le nombre de particule convienne

Page 30: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

RésultatsRésultats

Page 31: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

RésultatsRésultats

Mémoire requiseMémoire requiseimplémentation in-core

Incremental ClusteringIterative SimplificationParticle Simulation

Espace mémoire linéairement proportionnel au modèle d’entrée

Hierarchical Clustering

Espace mémoire ne dépendant que de la taille du modèle de sortie

Page 32: Efficient Simplification of Point-Sampled Surfaces Simplification directe dun nuage de points.

RésultatsRésultats

Simpification par Simpification par pointspointsP (134 345 points)

Iterative Simplification (~3,5’)

P’ (5 000 points)

Triangularisation (2,45’)

S’

Simplification par meshSimplification par meshP (134 345 points)

Triangularisation (112,8’)

S Mesh Simplification QSlim (~3,5’)

S’