Surfaces discrètes : définition, extraction et géométrielachaud/People/LACHAUD-JO/Talks/... ·...

29
Surfaces discrètes : définition, extraction et géométrie Jacques-Olivier Lachaud [email protected] Ecole Jeunes Chercheurs, LIRMM, Montpellier, 4-8 avril 2005 Abstract Dans ce cours introductif, nous présenterons les problématiques liées aux sur- faces discrètes, c’est-à-dire des ensembles fins et séparants dans un espace discret. Nous nous limiterons ici aux espaces discrets sous-ensemble de la grille régulière de dimension quelconque. Dans un premier temps, nous présentons les spécificités du discret puis nous introduisons les grandes approches aux surfaces discrètes. Dans un deuxième temps, nous montrons le lien fort entre isosurfaces et surfaces discrètes puis nous montrons différents algorithmes pour extraire les surfaces dis- crètes par suivi sur la surface. Dans un troisième temps, nous présentons quelques estimateurs géométriques discrets qui utilisent la notion de voisinage sur la surface pour approcher normales, aire, plan tangent, etc. Nous terminons en proposant une mise en oeuvre efficace de ces algorithmes par codage des cellules discrètes et utilisation de la topologie algébrique. 1

Transcript of Surfaces discrètes : définition, extraction et géométrielachaud/People/LACHAUD-JO/Talks/... ·...

Surfaces discrètes : définition, extraction etgéométrie

Jacques-Olivier [email protected]

Ecole Jeunes Chercheurs, LIRMM, Montpellier, 4-8 avril 2005

Abstract

Dans ce cours introductif, nous présenterons les problématiques liées aux sur-faces discrètes, c’est-à-dire des ensembles fins et séparants dans un espace discret.Nous nous limiterons ici aux espaces discrets sous-ensemble de la grille régulièrede dimension quelconque. Dans un premier temps, nous présentons les spécificitésdu discret puis nous introduisons les grandes approches aux surfaces discrètes.Dans un deuxième temps, nous montrons le lien fort entre isosurfaces et surfacesdiscrètes puis nous montrons différents algorithmes pour extraire les surfaces dis-crètes par suivi sur la surface. Dans un troisième temps, nous présentons quelquesestimateurs géométriques discrets qui utilisent la notion de voisinage sur la surfacepour approcher normales, aire, plan tangent, etc. Nous terminons en proposantune mise en œuvre efficace de ces algorithmes par codage des cellules discrètes etutilisation de la topologie algébrique.

1

Plan de l’exposé

Contents

1 Topologie discrète et surfaces discrètes 11.1 Contexte, Topologie, Surfaces . . . . . . . . . . . . . . . . . . . . .11.2 Problématiques induites par le discret . . . . . . . . . . . . . . . . .31.3 Définitions usuelles . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.4 Principales approches aux surfaces discrètes . . . . . . . . . . . . . .5

2 Extraction des surfaces discrètes 82.1 Imagerie volumique, Isosurfaces . . . . . . . . . . . . . . . . . . . .82.2 Dualité Isosurfaces et Surfaces discrètes . . . . . . . . . . . . . . . .112.3 Calcul du graphe de surface . . . . . . . . . . . . . . . . . . . . . . .14

3 Mesures géométriques 173.1 Cadre de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . .173.2 Estimation de la normale . . . . . . . . . . . . . . . . . . . . . . . .183.3 Estimation de l’aire ; aire élémentaire . . . . . . . . . . . . . . . . .203.4 Autres mesures . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22

4 Mise en oeuvre des surfaces discrètes 224.1 Problématiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . .224.2 Cellules et coordonnées dans l’espace de Khalimsky . . . . . . . . .234.3 Topologie algébrique . . . . . . . . . . . . . . . . . . . . . . . . . .234.4 Implémentation efficace en dimension arbitraire . . . . . . . . . . . .26

1 Topologie discrète et surfaces discrètes

1.1 Contexte, Topologie, Surfaces

Contexte

• Contexte : analyse d’images (2D,3D, voire plus)

• Enjeux : Identifier, Représenter, Mesurer, Caractériser, Comparer, Indexer, Sim-plifier, Localiser, Visualiser lesobjetsoucomposantsde l’image

⇒ nécessitesouventd’avoir des informations/modèles topologiques et géométriques

• Les éléments et parties d’une image sontdiscrets(i.e. non continus)

– Espace discret: Zn

• La topologie précède la géométrie

1. topologie discrète pour l’espace

2. objets et bord d’objets / surface

3. mesures

TopologieTopologie: étude des lieux sans tenir compte des déformations continues

• Caractérise localement ou globalement les objets

• les bords de volume et les surfaces jouent un rôle très important⇒surfaces dis-crètes

• Quelques exemples

1. Visualisation : en 3D, on voit la surface de l’objet, pas le volume. Permetle back-face culling

2. Géométrie : normales, courbures, aire sont des mesures de surface

3. Complexité mémoire : diminuée d’un ordre de grandeur (les bords d’objetsréguliers dans des imagesNn ont une complexité enO(Nn−1).

4. Temps de calcul : transformation de calculs de volume en calculs de surface(volume, moments, intégrales, intersections de formes)

Surface, séparation

• Définition standard (surface plongée)

m-variété (m-manifold)

Unem-variété est un espace topologique localement euclidien de dimensionm(homéomorphisme local).

Unesurfaceest unen− 1-variété plongée dans l’espace euclidien de dimensionn (Rn).

⇒Peu utilisable d’un point de vue informatique.

• Autre caractéristique : séparation de l’espace en deux parties. Intuitivement, lebord d’un objet sépare l’objet du reste de l’espace.

Theorem 1 (Jordan (2D)). Si J est une courbe simple dansR2 alors R2 \ J adeux composantes connexes de frontière communeJ (l’intérieur et l’extérieur)

Les surfaces seront donc des parties de l’espace fines et séparantes.

2

Figure 1: Pseudo-variété obtenu par pincement d’un octaèdre

Surfaces combinatoires

• Définition combinatoire des variétés

– Possible pourn ≤ 3

– Pas dans le cas général

– Restriction à des conditions nécessaires

• Pseudo-variétés combinatoires

– n-simplexe : ensemble den+1 éléments appelés sommets (point, segment,triangle, tétraèdre, . . . )

– Complexe simplicial: ensemble de simplexes avec des relations d’incidencesignées

– Forte connexité: les simplexes maximaux sont connectés par face

Definition 2 (Pseudo-variété fermé).Un m-complexe simplicial forte-ment connexe est unem-pseudo-variété ferméssi toutm− 1-simplexe estface d’exactement deuxm-simplexes.

– Les pseudo-variétés sont séparantes

Theorem 3 (Jordan–Brouwer). Touten− 1-pseudo-variété fermée dansRn est orientable, sépare l’espace en deux domaines dont elle est le bordcommun.

– Toute triangulation d’une variété est une pseudo-variété

1.2 Problématiques induites par le discret

Problématiques liées au discretPourquoi ne peut-on utiliser surZn les resultats classiques de topologie ?

3

• on ne disposea priori ni d’une topologie, ni d’une décomposition simpliciale oucellulaire.

• Topologies surZn

– pas des topologies de Hausdorff (comme l’espace euclidien)

– topologies d’Aleksandroff : l’intersection d’un nombrequelconqued’ouvertsest un ouvert

– pas d’homéomorphisme local avec un espace euclidien

• Décomposition cellulaire deRn engrille cellulaire

– chaque cube de dimensionn est un pixel/voxel de l’image

– supportpartiel pour définir des surfaces discrètes

– bord d’ensemble den-cubes ne sont pasen généraldes variétés (ni mêmedes pseudo-variétés)

⇒ nouvelles définitions des surfaces discrètes

1.3 Définitions usuelles

Définitions usuelles de topologie discrète

Definition 4 (Espace discret, objet, adjacence).Espace discret :Z× . . .×Z (n fois)

• spel: élément deZn (pixel en 2D, voxel en 3D)

• objet: partie deZn

• ωn adjacence de spels: 2 spels sontωn-adjacents si leurdistance blocest égaleà 1.

Définitions usuelles de topologie discrète II

Definition 5 (Graphe d’adjacence, espace interpixel). • autres adjacence(s) despels: relationsρ ⊃ ωn.

• Graphe deρ-adjacence: graphe(Zn, ρ)

4

Figure 2: 3D : adjacences par face (6-)= ω3, arête (18-), sommet (26-) du voxel

• Bord intérieurd’un objetO : {u ∈ O, u ρ-adjacent àO}

• Bord extérieurd’un objetO : {v ∈ O, v ρ-adjacent àO}

• espace “interpixel”Cn : grille cellulaire de dimensionn. Un spel = cube unitéde dimensionn

• surfel: unen− 1-face commune à deuxn-cubes

• surfel: (équivalent) un arc du graphe d’adjacenceωn

1.4 Principales approches aux surfaces discrètes

Principales approches aux surfaces discrètes

• On peut définir unesurface discrètecomme

1. sous-ensemble deZn (i.e. des spels)

2. arcs du graphe d’adjacence (i.e. des surfels)

3. complexe cellulaire (desi-cellules,i < n)

• Toutes ces définitions cherchent à garantir unthéorème de Jordandiscret.

Surfaces = sous-ensemble deZ3

• [Morgenthaler,Rosenfeld 81][Malgouyres97]

Definition 6 (Surface). S ⊂ Z3 est unesurfacessiS sépareZ3 en deux com-posantes 6-connexes (séparation) et tout voxel deS est 6-adjacent à chaque com-posante deZ3 \ S (ensemble fin).

• Avantages : objets et surfaces représentables de la même façon, structures dedonnées simples, algos de suivi possibles

• Problèmes :

1. (Pratique) les bords d’objets discrets ne sont pas en général des surfaces.

2. (Théorique) Pas de caractérisation locales des surfaces deZ3 [Malgouyres96]

5

Figure 3: définition locale d’une surfaceS deZ3 : ∀u ∈ S, les 26-voisins deu dansSforment une quasi-courbe 18-connexe

Figure 4: Surface de surfels, intérieur et extérieur immédiat

Surface = arcs du graphe d’adjacence

• [Liu, Artzy, Frieder, Herman, Webster, Gordon, Udupa, Kong]

• un surfel est un arc orienté du graphe d’adjacenceωn (i.e. un couple de spels),une surfaceS est un ensemble de surfels

• intérieur immédiatII(S) = {u|(u, v) ∈ S}.

• extérieur immédiatIE(S) = {v|(u, v) ∈ S}.

• Surfaces de Jordan et paires de Jordan

Definition 7 (Surface de Jordan[Herman92]). S ⊂ ωn ⊂ Zn × Zn est unesurface de Jordanssi toutωn-chemin deII(S) versIE(S) traversS.

Definition 8 (Paire de Jordan forte). Soit I une image binaire surZn. Unepaire d’adjacence{κ, λ} est une paire de Jordan forte ssi toutesurface frontièreentre uneκ-composante de 1-spels et uneλ-composante de 0-spels est de Jordan.

– 2D: (8, 4), (4, 8) sont des paires de Jordan forte pourZ2. (4, 4) non.

– 3D: (26, 6), (6, 26) sont des paires de Jordan forte pourZ3. (6, 6) non.

– nD: il existe des paires de Jordan fortes[Herman92,Udupa94,Lachaud00]

6

Figure 5: Surface de Jordan

Figure 6: ObjetO, Fermeture deO, Bord deO

• Les frontières / bords d’objets sont donc séparants (et fin par définition)

• algorithmes de suivi de surface ennD

• cadre très générique extensible à des espaces discrets non réguliers[Herman98]

Surface = complexe cellulaire dimn− 1

• Topologie combinatoire[Kovalevsky89, Latecki96]

Definition 9 (Bord d’un objet). Soit Cl(O) la fermetured’un objetO dans lagrille cellulaireCn.

Le bord deO est le sous-ensemble des cellules deCl(O) dont l’étoiletouche lecomplémentaire deCl(O) dansCn. C’est un complexe polyédrique fortementconnexe de dimensionn− 1.

• Intérêts : beaucoup de structures de haut niveau définies sur la grille cellulaire.Cartes topologiques[Braquelaire, Brun, Damiand, Desbarats, Domenger, Fio-rio], pyramides combinatoires[Brun,Kropatsch], bloc complexes[Kovalevsky]

• Problèmes : les bords n’ont pas forcément la propriété de séparation

• Images bien-composée[Latecki97]: Image qui ne comportent pas certaines con-figurations

Toutes les connexités sont équivalentes

7

Figure 7: Les bords dèfinis comme complexes cellulaires ne sont pas des variétés engénéral

Figure 8: Configurations interdites dans les images bien-composées

Theorem 10. Tout bord d’un objet dans une image bien-composée est unen−1-(pseudo)variété fermée (ie. surface de Jordan)

• Problème : comment transformer une image mal-composée en image bien-composée? Ce n’est pas un traitement local.

Conclusion partielleLes deux dernières approches sont clairement plus adaptées.

1. On retrouve des surfaces qui sont effectivement des ensembles fins séparants del’espace. On dispose d’algorithmespour extraire desbords d’objetspar suivi, engarantissant certaines propriétés.

2. On dispose de toutes les cellules de la grille régulière. On peut donc facilementdéfinir des complexes cellulaires, des surfaces comme ensembles de surfels, descontours de surfaces comme ensemble de cellules de dimensionn− 2. On peutaussi utiliser des resultats de topologie combinatoire. La grille cellulaire contienttous les éléments des espaces discrets (spels, surfels).

2 Extraction des surfaces discrètes

2.1 Imagerie volumique, Isosurfaces

Imagerie volumique

8

Figure 9: (a) Coupes, (b) Rendu volumique, (c) Isosurfacess = 0.1 et (d)s = 0.3

Figure 10: Tomodensitométrie (scanner X) : coupes, isosurface

• Imagerie 3D : scanner X, IRM, TEP, échographies 3D, microscopie confocale.FonctionI : Z3 → R

• Visualisation par coupes, Rendu volumique[Levoy, . . . ] : illustratif mais pas demesures quantitatives

• Isosurface: lieux des points de même valeur parI

Definition 11 (Isosurface). Isosurfacede valeurs dansI : {(x, y, z) ∈ R3|I(x, y, z) =s}.C’est une 2-variété siI est suffisamment régulière

Calcul des isosurfaces par Marching-cube

• Algorithme duMarching-cube[Lorensen,Cline 87]: reconstruction d’une sur-face linéaire par morceaux par examen de tous les blocs de 8 voxels de l’image

• Dans chaque bloc, chaque voxelu est classé intérieur ou extérieur selonI(u) ≥s. 28 = 256 configurations possibles réduites à 15 par symmétries

• Sur une arète(u, v), I(u) < s, I(v) ≥ s, sommett placé à l’estimationI(t) = s.

⇒ Surface triangulée approchant l’isosurfaces deI

9

Figure 11: Angiographie RM : coupes, rendu volumique, isosurface

Figure 12: Microscopie confocale : coupes, isosurfaces, reconstruction par modèledèformable

Figure 13: Configurations classiques et triangles associés

10

Figure 14: (a) Marching cube 2D : configurations et déplacement des sommets. (b)Triangles générés par MC 3D sans et (c) avec déplacement des sommets.

Figure 15: Isosurface, Objet associé à l’isosurface, Triangles générés, Surface discrète

• Complexité de l’algorithme :O(N3 + Vs) (image de tailleN3, nb de sommetsVs pours)

• Remarques : toutes les composantes connexes sont reconstruites; avec quelquesprécautions, la surface est bien une 2-variété

2.2 Dualité Isosurfaces et Surfaces discrètes

Dualité isosurface et surface discrète

• SoitO l’ensemble des voxelsu tels queI(u) ≥ s

• sommets de l’isosurface= surfels séparantO deO

• On appellebelun surfel frontière entreO etO

• On appellelien unen− 2-cellule incidente à un bel

• 3D: Graphe d’adjacence de face des bels est proche de l’isosurface correspon-dante

11

Figure 16: Dualité surface discrète et isosurface

Figure 17: Objet, isosurface (6,18) ou (6,26), isosurface (18,6), isosurface (26,6)

Topologie des surfaces discrètes

• Graphe d’adjacence de face des bels⇒voisinaged’un bel

• [Herman, Udupa]la topologie de la surface doit coïncider avec la topologie descomposantes objets et fonds

• Surfelssuivantsun surfelc dans une directionj.

– Soit c un surfel orthogonal ài

– Bel-adjacenceintérieurede c (dir. j). d : premier suivant dec dans ladirectionj qui est dans le bord deO

– Bel-adjacenceextérieurede c (dir. j). d : Dernier suivant dec dans ladirectionj qui est dans le bord deO

⇒ La bel-adjacence a une définition locale

⇒ 2n(n−1)

2 bel-adjacence différentes (3D:⊃ {(6, 18)(18, 6)})

j

(1)

(2)d

(3)

cc

(3)

(2)

(1)

dc c

Figure 18: Tout surfel a 3 suivants suivant chaque direction

12

Figure 19: Image avec adjacence (4,8), bel adjacence intérieure et voxels visités

Figure 20: Image avec adjacence (8,4), bel adjacence intérieure et voxels visités

Theorem 12 (3D [Herman,Webster83]). SoitO une composante 6-connexe de1-spels etQ une composante 18-connexe de 0-spels. Soitc un bel frontière entreO et Q. Alors la fermeture transitive dec par la bel-adjacence intérieure estexactement la frontière entreO et Q. On sait de plus que cette frontière est unesurface de Jordan.

Theorem 13 (nD [Udupa94]). SoitO une composante2n-connexe de 1-spels etQ une composante2n2-connexe de 0-spels. Soitc un bel frontière entreO etQ.Alors la fermeture transitive dec par la bel-adjacence intérieure est exactementla frontière entreO et Q. On sait de plus que cette frontière est une surface deJordan.

⇒ Si on cherche une frontière, inutile de visiter toute l’image.

Graphe de surface et isosurface

• Le graphe de surface se dessine sur une 2-variété

Definition 14 (Graphe de surface). Pour des adjacences données, le graphedont les sommets sont les bels frontières entreO et Q et donc les arcs sont lesbel-adjacences est appelégraphe de surfacede∂(O,Q).

13

Figure 21: Voxels, Graphe (6,18), Graphe (18,6)

Theorem 15 ([Lachaud96], nD [Lachaud00]). En 3D, le graphe de surface esttriangulable localement en une 2-variété combinatoire qui sépare la composanteO de la composanteQ pour les adjacences (6,18), (18,6).

• Ces analogues continus de la surface discrète sont desisosurfacesdont la topolo-gie dépend des connexités choisies

Question

Quels algorithmes pour extraire le graphe de surface ?

2.3 Calcul du graphe de surface

Calcul du graphe de surface : parcours en largeur

• Une frontière dans imageNn, nombre de belsV = O(Nn−1)

• Graphe de surface : chaque sommet de degréd = 2n− 2

• Extraction parparcours en largeur(valable ennD)

Suivi : parcours en largeur

(E) surfel de départ = sommet c(S) sommets visités = ensemble P(V) sommets en attente = file F

F.Enfiler( c )Tant que non F.vide?()

d <- F.Defiler()P <- P ∪ dMarquer ( d )Pour tout bel e adjacent à d

Si non EstMarque? ( e )F.Enfiler( e )

14

Figure 22: Cycles de parcours sur cube 3D [Artzy]

• nb de fois qu’un surfel est visité =d · V = (2n− 2)O(Nn−1)

• Attention : lemarquagepeut avoir un coût:m·V sim est la complexité moyenned’une opération de marquage

Calcul du graphe de surface : cycle hamiltonien

• En 3D : peut-on trouver plus rapidement un cycle hamiltonien ?

Theorem 16 ([Tutte 56]). Tout graphe planaire 4-connexe contient un cyclehamiltonien

• Mais : restriction aux objets 6-connexes sans trous[Perroton95]

• Calcul du cycle enO(V 3) (Tutte) et mêmeO(V ) [Chiba89], mais difficile àimplémenter

• Heuristiques : parmi les suivants possibles, celui choisi est parmi ceux qui ont leplus de voisins déjà dans le cycle, non déconnectant et priorité au virage

Calcul du graphe de surface : suivi des arcs orientés

• 3D : proposé par[Artzy et.al.81], prouvé correct par[Herman,Webster 83]; nD[Udupa94]

• Idée: pour tout arc entrant, il y a un arc sortant

nD: parcours du graphe orienté

15

Type2

Type1

Figure 23: 2 Cycles de parcours sur 3 sur cube 3D [Gordon]

(E) surfel de départ = sommet c(S) sommets visités = ensemble P(V) sommets en attente = file F

sommets arrières = ensemble TP.ajoute( e ); F.enfiler( c )T.ajoute( c ) [ n-1 fois ]Tant que non F.vide?()

d <- F.defiler()Pour tout bel e +-adjacent à d

Si T.contient?( e )alors T.supprime( e )sinon P.ajoute( e )

F.enfiler( e )T.ajoute( e ) [ n-2 fois ]

• nb de fois qu’un surfel est visité =d2 · V = (n− 1)O(Nn−1)

• Attention : les tests ensemblistes dansT peuvent avoir un coût (maisT ≈O(Nn−2) )

Calcul du graphe de surface : suivi decertainsarcs orientés

• 3D : proposé par[Gordon,Udupa 89], prouvé correct par[Kong,Udupa92]; nD?

• Idée: 2 cycles sur 3 suffisent

3D: demi-parcours du graphe orienté

(E) surfel de départ = sommet c(S) sommets visités = ensemble P(V) sommets en attente = file F

16

sommets arrières = ensemble TP.ajoute( e ); F.enfiler( c )T.ajoute( c ) [ type( c ) fois ]Tant que non F.vide?()

d <- F.defiler()Pour tout bel e +* -adjacent à d

Si T.contient?( e )alors T.supprime( e )sinon P.ajoute( e )

F.enfiler( e )T.ajoute( e ) [ type(e)-1 fois ]

• nb de fois qu’un surfel est visité =43 · V = 43O(N2)

• Attention : les tests ensemblistes dansT peuvent avoir un coût (maisT ≈ O(N))

Calcul du graphe de surface : Récapitulatif

• ImageNn, nb de surfels bordV ≈ O(Nn−1)

CompnD Comp 3Dalgorithme par bel par bel Marquages

parcours image O(N) O(N) nonparcours en largeur 2n− 2 4 oui (O(Nn−1))

arcs orientés n− 1 2 oui (O(Nn−2))certains arcs orientés 4

3oui (O(Nn−2))

• Visualisation directe de la surface discrète[Udupa]

• Construction de l’iso-surface à partir de la surface discrète enO(V ) [Lachaud98]

• Rq : sommets non étiquetés et pas de connaissancea priori de leur nombre.

⇒ Opérations de marquage : complexité> O(1) en général

3 Mesures géométriques

3.1 Cadre de travail

Mesures géométriques : cadre de travail

17

Figure 24: Estimation des normales sur sphère discrète

• Mesures géométriques sur formes discrètes indépendamment de tout échantil-lonnage ou modèle géométrique

Hypothèse

La forme discrète est la discrétisation d’une forme euclidienne, supposée “régulière”

Definition 17 (Estimateur géométrique discret). Un estimateur géométriquediscret approche une mesure géométrique d’une forme continue en ne se basantque sur sa discrétisation.

⇒ Estimateurs géométriques globaux (aire, longueur, moments, . . . ) ou locaux(tangentes, normales, courbure, . . . )

⇒ Difficile de valider expérimentalement un estimateur car une infinité de formesont la même discrétisation

• Critère intéressant : convergence asymptotique

Convergence estimateur géométrique sur formeγ

L’estimateur géométriqueε converge asymptotiquementvers la mesure géométriqueε [Klette,Coeurjolly]ssi

limh→0

|ε(Dh(γ))− ε(γ)| = 0

avecDh processus de discrétisation de pash

• Complexité de calcul: en général proportionnelle à la qualité des approximations

• On se restreint ici aux mesures géométriques basées sur l’utilisation du graphede surface

18

Figure 25: Normale par moyennage sur (a) 1-voisinage et (b)k-voisinage.

Figure 26: Effet marches d’escalier sur plans discrets

3.2 Estimation de la normale

Estimation de la normale 3D,nD

• Champ de normales sur forme discrète : visualisation, détection de points carac-téristiques, polyédrisation, aire, courbures

• Moyennage pondéré des normalestrivialesaux bels dans un 1-voisinage[Chen85],dans unk-voisinage[Papier, Françon 98]sur graphe de surface

– voisinage topologique : isotropie ?

– voisinage non adaptatif : si petit, peu précis, si grand, lissage des coins etperte de localisation

– effet “marches d’escalier”

• [Thürmer 01]: normale estimée sur voisinage volumique puis moyennage avecles autres normales dumêmeplan tangent

Mais difficile de reconnaître un plan tangent

• Croisement de l’estimation de la tangente sur chaque chemin 4-connexe sur legraphe de surface : avec filtrage Gaussien[Lenoir 96], idem avec reconnaissancede droite discrète[Debled, Tellier 97], ennD [Lachaud,Vialard 03]

19

Surfel

Figure 27: Calcul des normales par calcul den− 1 tangentes.

Figure 28: Droites discrètes extraites sur chaque chemin

– Chaque chemin appartient à un plan 2D⇒estimateurs 2D

– Tangente discrète : e.g. plus longue droite discrète centrée

– Les chemins sont orientés⇒tangentes orientées

– Vecteur normal au belσ, n(σ) : vecteur unitaire orthogonal auxn − 1tangentes discrètes des chemins

• Complexité, si les segments discrets de taille moyenned ou voisinage pour floude tailled

1. calcul d’une normale :O(d(n− 1))2. calcul du champ de normales:O(V d(n− 1))

• Les segments maximauxsemblentsuivre une loid ≈ N1/3 sur les formesrégulières convexes

• Sur une courbe discrète de longueurm, on peut calculer lesm tangentes enO(m) [Feschet, Tougne 99].

1. calcul d’une normale :O((n− 1)N1/3)2. calcul du champ de normales:O(V (n− 1)) (théoriquement)

• Convergence asymptotique ?

Conjecture

L’estimateur de normales basée sur la reconnaissance desegments maximauxconverge.

20

Figure 29: Visualisation des aires élémentaires (a) corrigées et (b) moyennées.

0.985

0.99

0.995

1

1.005

1.01

1.015

1.02

1.025

1.03

1.035

10 15 20 25 30 35 40 45 50 55 60

ratio

radius

corrected areaaveraged area

Figure 30: Aires calculéesA(S) divisèes par aire attendues sur sphères discrètes derayon croissant.

3.3 Estimation de l’aire ; aire élémentaire

Estimation de l’aire 3D, nD

• Aire élémentaired’un bel σ : contribution d’un élément à l’aire totale de lasurface discrète

– aire corrigéeac(σ) = n(σ) · ei, si i dir. orth. àσ

– aire moyennéeam(σ) = 1/(∑n−1

k=0 |n(σ) · ek|)

• Aire A(S) d’une surface dicrèteS par sommation[Lenoir96]

A(S) =∑σ∈S

a∗(σ)

• Convergence asymptotique (vrai d’après[Coeurjolly02])

• Aire élémentaire utile pour lesintégrationssur la surface

21

3.4 Autres mesures

Autres mesures

• plan tangent

• reconstruction par projection du centre du surfel sur son plan tangent

• calcul du volume et des moments par intégration sur surface

4 Mise en oeuvre des surfaces discrètes

4.1 Problématiques

Problématiques

• quelles structures de données pour représenter les objets ou les surfaces discrètes,notamment la grille cellulaire ?

• comment représenter une cellule de la grille discrète ?

• comment trouver efficacement les voisins d’une cellule, d’un surfel sur une sur-face ?

• doit-on stocker le graphe de surface ?

• une implémentation génériquenD est-elle envisageable ? efficace ?

• quelles opérations locales permettent de naviguer sur une surface, de tracer unchemin 4-connexe sur une surface ?

22

(4,2)

(2,1)

(3,3)

4

3

2

1

(y)0(x)0 1 2 3 4

Figure 31: Isomorphisme entre espace de Khalimsky et grille cellulaire

4.2 Cellules et coordonnées dans l’espace de Khalimsky

Cellules et coordonnées dans l’espace de Khalimsky

• Espace discretCn : décomposition cellulaire deRn en grille

• Isomorphe àKn : Connected Ordered Topological Sets[Khalimsky90], AbstractCartesian Complexes[Kovalevsky89]

K ≡ Z alternant points fermés et ouvertscellule deKn / Cn ≡ n coordonnées entières

Topologie d’une cellule ≡ parités des coordonnées

⇒“Zn est doublé dans chaque direction”

– Unecelluleest représenté parn coordonnées entières

– spel: n-cellule (parités à 1)

– surfel: n− 1-cellule (parités à 1 sauf une à 0)

– adjacence, incidence : opérateurs sur coordonnées

4.3 Topologie algébrique

Topologie algébrique surCn

• Les cellules sont orientées±1

• r-chaîne: somme formelle der-cellules

– Exemple :∑

i +oni , avecon

i n-cellules, est une forme discrète

– Exemple :∑

i ajsn−1j , avec+sn−1

j et−sn−1j desn − 1-cellules, est une

surface discrète

• Opérateurs linéairesbord∆ etco-bord∇

Definition 18. Bord∆ d’unek-cellulec. Sic = ik. . .ij . . . i0 s xn−1 . . . xij . . . x0

(cf. codage des cellules), alors

23

Figure 32: spels+oni (verts), surfels+sn−1

j (bleus) et−sn−1j (magenta)

– ∆−ij

c = ik . . . ij . . . i0 (−1)k−js xn−1 . . . xij . . . x0

– ∆+ij

c = ik . . . ij . . . i0 (−1)k−j+1s xn−1 . . . xij + 1 . . . x0

– and∆c =∑k

j=0 ∆−ij

c + ∆+ij

c.

– ∆ : r-chaîne7→ r − 1-chaîne (≡ (low) incidence)

– ∇: r-chaîne7→ r + 1-chaîne (≡ (up) incidence)

Theorem 19 (homologie).∆∆ = 0 et∇∇ = 0

– Exemple :∆∑

+oni ?

• Bord d’une forme discrèteO: ∂O = ∆O

∂O est une surface fermée

Comme∆∆ = 0, le bord d’un objet discret est une surface sans bord

⇒ Les liensentre bels d’une surfaceS = ∆O bord d’un objetO sont dans le bordde∆S. Comme∆S = 0, tout lien apparaît nécessairement positivement d’uncôté et négativement de l’autre.

⇒ Définit des chemins orientés sur surfaces

24

Figure 33: Bord commen− 1-chaîne∆O = ensemble de surfels

Applications de la définition algébrique de bordSuivi et voisinage sur∂O

• Tout surfel d’un bord a2n−2 voisins, déduits par observation des spels incidents

• Définition formelle des voisins d’un surfelσ, de direction orth.i, suivant unedirectionj

∆εi∇

µj σ,∇ε

i∆εiσ, ∆ε

i∇−µj σ avecµ = ±1 et ε = ±1

−q

+p

−q

+p

−q

+pb

• Voisinages orientés (sens direct ou indirect sur chaque direction)

Déformation d’un objet

• ObjetO se déforme enO′ avecO′ = (O ∪ P ) \Q

• Par linéarité,∆O′ = ∆O + ∆P + ∆−Q

• Rapide à calculer carP etQ petits devantO

25

topo y x

1

1 2 (4,2)00

0 1

(3,3)111

(2,1)10

4

3

2

1

(y)0(x)0 1 2 3 4

(x_K,y_K)

Figure 34: Codage des cellules deCn sur un entier.

4.4 Implémentation efficace en dimension arbitraire

Implémentation efficace en dimension arbitraireCodage: une cellule deCn = unentier

• cellulec = (x0K , . . . , xn−1

K )

• code dec = α xn−1 . . . xi . . . x0

– coordonnée discrètexi = xiK div 2

– chaque coordonnée est codée surN i = log2(Mi) + 1 bits

– topologieα =∑

i(xiK mod 2)2i (agrège les parités)

• Nombre d’accès mémoire divisé parn

• Toute opération sur cellule est une opération sur un entier : masquage, et/ou,décalage

• Passage de paramètre rapide, pas d’allocation dynamique, . . .

nb ops topo, set is isrequired code coord == coord adj. l-adj.? inc. l-inc.?bits ops 0 1 0 2 0 ≤ 2n 1 ≤ 3shifts n 1 0 1 0 0 0 ≤ 6

integer ops n 0 1 0 1 ≤ 2n ≤ 1 ≤ l + 4lut access n 1 0 2 1 ≤ n ≤ 2 ≤ l + 2cond. tests 0 0 0 0 1 ≤ 2n 1 ≤ 3l + 1

• Ensemble der-cellules : fonction caractéristique. Masque(Code) = offset dansun tableau de bits

– ensemble der-cellules:(nr

)2

∑Ni bits

– e.g ensemble de tous les surfels d’une image2563 image contient≈ 50millions de surfels sur6Mo

– 28Mo pour une table de hashage pour 1 million de surfels .

– Toutes les opérations ensemblistes enO(1)

26

• Principe identique pour les cellules orientées.

• Structure de données pourr-chaîne:

– si coefficients= ±1⇒ensemble der-cellules orientées

– sinon, table de hachage avec code comme fonction de hachage

• 32 bits codent toute cellule d’une image 2D32768 × 32768, d’une image 3D1024× 1024× 512, d’une image 4D1284

• Temps de calcul sur Celeron 450Mhz, image5123

– Différence de deux ensembles de surfels :2, 5s ou6ns par surfel

– Extraction par suivi d’une sphère de rayon 240 :1, 85s (1,08 million desurfels)

Conclusion

• Définitions et spécificités des surfaces discrètes

• Topologie des surfaces discrètes et extraction

• Mesures géométriques sur les surfaces

• Mise en oeuvre efficace

Sujets connexes non traités

• processus de discrétisation

• reconnaissance de plan discret : facettisation, estimateurs géométriques. Abon-dante littérature.

• visualisation de surfaces discrètes : inutile de reconstruire un polyèdre l’approchantpour la visualiser

• partition d’espace discrets : les interfaces entre régions sont des morceaux desurfaces discrètes. Beaucoup de modèles topologiques et géométriques pour lesmanipuler.

• espaces discrets plus généraux que la grille régulière.

• applications : extraction de points caractéristiques, reconnaissance de formes,indexation, reconstruction, compression

27

References

[1] Aleksandrov.Combinatorial topology. Dover, 1956.

[2] J.-M. Chassery, A. Montanvert.Géométrie discrète en analyse d’imagesHermès,1992.

[3] G. T. Herman.Geometry of digital spaces. 1998.

28