Contribution de la reconstruction 3D à la compression de maillages surfaciques triangulaires

Documents pareils
Présent et futur dans la normalisation de la compression 3D

Chapitre 1 : Introduction aux bases de données

Traitement bas-niveau

Introduction au maillage pour le calcul scientifique

Transmission d informations sur le réseau électrique

Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies

Géométrie discrète Chapitre V

Traitement numérique de l'image. Raphaël Isdant

Fête de la science Initiation au traitement des images

Formats d images. 1 Introduction

TD : Codage des images

ISO/CEI NORME INTERNATIONALE

Big Data et Graphes : Quelques pistes de recherche

TP SIN Traitement d image

COMMUNICATEUR BLISS COMMANDE PAR UN SENSEUR DE POSITION DE L'OEIL

Annexe : La Programmation Informatique

VISUALISATION DE NUAGES DE POINTS

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Big Data et Graphes : Quelques pistes de recherche

Détection des points d intérêt et Segmentation des images RGB-D. Présentée par : Bilal Tawbe. Semaine de la recherche de l UQO

Analyse d images. Edmond.Boyer@imag.fr. Edmond Boyer UFRIMA 1

Fonctions de plusieurs variables

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Tune Sweeper Manuel de l'utilisateur

modélisation solide et dessin technique

Ebauche Rapport finale

Optimisation de la compression fractale D images basée sur les réseaux de neurones

Programmation linéaire

Modélisation 3D par le modèle de turbulence k-ε standard de la position de la tête sur la force de résistance rencontrée par les nageurs.

Pourquoi l apprentissage?

Echantillonnage Non uniforme

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR

chapitre 4 Nombres de Catalan

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

Technique de compression des images médicales 4D

Bases de Données. Plan

Sujet 1 : Diagnostique du Syndrome de l apnée du sommeil par des techniques d analyse discriminante.

Chapitre 18 : Transmettre et stocker de l information

Géométrie Algorithmique Plan du cours

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est:

LES CARTES À POINTS : POUR UNE MEILLEURE PERCEPTION

Représentation des Nombres

Adobe Illustrator Logiciel de dessin vectoriel et de Cartographie Assistée par Ordinateur

Algorithme. Table des matières

Codage hiérarchique et multirésolution (JPEG 2000) Codage Vidéo. Représentation de la couleur. Codage canal et codes correcteurs d erreur

RapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/ Présentation. 1.2 Ressources

Rapport du projet Qualité de Service

Baccalauréat L spécialité, Métropole et Réunion, 19 juin 2009 Corrigé.

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

Championnat de France de Grilles Logiques Finale 7 juin Livret d'instructions

LES CARACTERISTIQUES DES SUPPORTS DE TRANSMISSION

Date : Tangram en carré page

Compression de maillages 3D statiques et dynamiques

Chaine de transmission

SIG ET ANALYSE EXPLORATOIRE

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Les algorithmes de base du graphisme

Dans cette définition, il y a trois notions clés: documents, requête, pertinence.

Once the installation is complete, you can delete the temporary Zip files..

NOTIONS DE RESEAUX INFORMATIQUES

La voix sur IP n'est pas un gadget, et présente de réels bénéfices pour l'entreprise.

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar

Recherche dans un tableau

Réflexion sur la mise en place d'un système mobile d'aide à la navigation destiné aux services d'urgence basée sur une solution libre.

Algorithmes d'apprentissage

DECOUVREZ Discover TYPE EDIT V12 Français

Conservation des documents numériques

Comment créer un diagramme de Gantt avec OpenOffice.org

Directive de la Direction. Directive No 6.9 Fichiers informatiques et protection des données personnelles ou sensibles.

DUT Informatique, orientation Imagerie Numérique

Projet Matlab/Octave : segmentation d'un ballon de couleur dans une image couleur et insertion d'un logo

Analyse de la vidéo. Chapitre La modélisation pour le suivi d objet. 10 mars Chapitre La modélisation d objet 1 / 57

Outils de traitements de logs Apache

- contact@conseils-web.fr

Forthcoming Database

INTELLIGENCE ECONOMIQUE : ENJEUX ET RETOUR D EXPERIENCE PILOTE DANS SEPT PMI DE BOURGOGNE

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007

Réseau : Interconnexion de réseaux, routage et application de règles de filtrage.

LE PROBLEME DU PLUS COURT CHEMIN

nom : Collège Ste Clotilde

FORMATS DE FICHIERS. Quels sont les différents types d informations numériques dans un document multimédia?

Expérience 3 Formats de signalisation binaire

CLIM/GTP/27/8 ANNEX III/ANNEXE III. Category 1 New indications/ 1 re catégorie Nouvelles indications

Projet Matlab : un logiciel de cryptage

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

COMMENT MAITRISER LA GESTION DES APPROVISIONNEMENTS ET DES STOCKS DE MEDICAMENTS

M1 Informatique, Réseaux Cours 9 : Réseaux pour le multimédia

DUT. Informatique, orientation Imagerie Numérique. Domaine : Sciences, Technologies, Santé. Mention : Informatique

Vous avez des problèmes d'impression réseau? UniPrint. est la solution qu'il vous faut. Aperçu du produit

Les principes de la sécurité

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

ManageEngine IT360 : Gestion de l'informatique de l'entreprise

Programme scientifique Majeure INTELLIGENCE NUMERIQUE. Mentions Image et Réalité Virtuelle Intelligence Artificielle et Robotique

3 Les premiers résultats des plans d'actions

Problèmes de dénombrement.

Comprendre l Univers grâce aux messages de la lumière

TEXT MINING von 7

Le projet 3D de la Ville de Liège: réflexions sur l'exploitation des données. Bernard Lechanteur, Responsable Cellule cartographie Ville de Liège

Comparaison de Relevés 3D issus de plusieurs Systèmes de Numérisation

Transcription:

Contribution de la reconstruction 3D à la compression de maillages surfaciques triangulaires Rapport de stage Master M2 Recherche Informatique Spécialité IGI (Informatique Graphique et Images) Céline ROUDET croudet@bat710.univ-lyon1.fr Encadrée par Raphaëlle CHAINE Maître de conférence au LIRIS raphaelle.chaine@liris.cnrs.fr Laboratoire d'informatique en Images et Systèmes d'information Université Claude Bernard Lyon 1 Bâtiment Nautibus Campus de la Doua 8, Bd Niels Bohr 69622 Villeurbanne Cedex 1

Résumé Depuis quelques temps, les objets tridimensionnels commencent à concurrencer le multimédia traditionnel (images, sons, vidéos). Ces objets sont le plus souvent représentés par des maillages et sont utilisés dans différents domaines comme la médecine, la Conception Assistée par Ordinateur (CAO), la simulation, les jeux vidéos, le cinéma, les visites virtuelles,... Depuis une dizaine d'années, un grand nombre de méthodes de compression de maillages se sont développées. On distingue les méthodes de compression sans perte qui proposent une réorganisation optimale du codage de l'information, des méthodes de compression avec pertes qui filtrent l'information dans un espace transformé. Dans le cadre de ce stage, nous nous sommes intéressés à la compression sans perte de maillages surfaciques triangulaires. Dans la plupart des méthodes de compression, le parcours de la connectivité du maillage est codé explicitement et guide le codage de l'information géométrique (position des points). Notre méthode considère l'approche inverse et propose d'étudier la contribution des algorithmes de reconstruction 3D pour coder la topologie d'un maillage surfacique triangulaire compte tenu de sa géométrie. Les méthodes de reconstruction à partir de nuages de points ne permettent pas une reconstruction exacte de la surface de tous les objets 3D. Elles sont toutefois exploitables pour rendre implicite une grande partie de l'information topologique lors de la compression. Nous avons ainsi choisi d'utiliser une méthode de reconstruction existante afin d'obtenir d'une part, un codeur topologique construit à partir de la totalité de l'information géométrique et d'autre part une variante de ce codeur avec transmission graduelle et simultanée d'une partie de l'information géométrique. Abstract For some time, the three-dimensional objects have begun to compete with traditional multimedia (images, sounds, videos). These objects are mostly represented by meshes and are used in various domains like medicine, Computer-aided design (CAD), simulation, video games, cinema, virtual visits,... Since around ten years, lots of compression methods have been developed for meshes. Lossless methods which propose an optimal reorganization of the information coding have to be distinguished from lossy ones which filter the information in a transformed space. Within the framework of this training, we were interested in the lossless compression of triangular meshes. In most of the compression methods, the way the mesh connectivity is traversed is explicitly coded and drives the coding of the geometrical information (position of points). Our method considers the inverse approach and proposes to study the contribution of the 3D reconstruction algorithms to code the topology of a triangular mesh considering its geometry. The reconstruction methods from point sets do not allow an exact reconstruction of the surface of all the 3D objects. They are however exploitable to represent implicitly a great part of the topological information during the compression. Thus we chose to use an existing reconstruction method to obtain on one hand a topological coder built from the totality of the geometrical information and on the other hand a variant of this coder with gradual and simultaneous transmission of a part of geometry. 2

Table des matières 1 Introduction 4 2 Présentation des travaux existants en compression de maillages 5 2.1 Représentation non compressée des maillages......................5 2.2 Principes généraux des méthodes de compression....................5 2.3 La compression de maillages sans perte......................... 6 2.3.1 La compression monorésolution......................... 6 2.3.1.1 Algorithme de Deering......................... 7 2.3.1.2 Algorithme de Touma et Gotsman....................7 2.3.1.3 Edgebreaker............................... 8 2.3.2 La compression progressive............................ 8 2.3.2 La compression géométrique........................... 10 2.3.2.1 Motivation................................10 2.3.2.2 Codeur géométrique...........................11 2.4 La compression de maillages avec pertes......................... 12 3 Les algorithmes de reconstruction 3D 13 3.1 La reconstruction par approximation.......................... 13 3.2 La reconstruction par interpolation........................... 13 3.2.1 L'algorithme de «convection géométrique»...................14 4 Notre contribution 17 4.1 Principe général de notre algorithme...........................17 4.2 Description de l'algorithme............................... 17 4.2.1 Première approche : codage de la topologie par rapport à la géométrie..... 17 4.2.1.1 Principes du codeur et du décodeur................... 17 4.2.1.2 Codage des informations........................ 20 4.2.2 Variante : codage graduel de la géométrie.................... 21 4.2.2.1 Principes du codeur et du décodeur................... 21 4.2.2.2 Principes de la prédiction utilisée.................... 23 5 Implémentation 25 5.1 Présentation de la librairie CGAL............................ 25 5.1.1 Représentation des objets géométriques dans CGAL.............. 25 5.2 Nos choix d'implémentation............................... 26 5.2.1 Noyau et structures de données utilisés......................26 5.2.2 Ordre de traitement des facettes de la triangulation............... 27 6 Résultats 28 7 Conclusion et perspectives 30 Bibliographie 31 Annexe 1 : modèles utilisés 33 3

1 Introduction Depuis quelques années, les modèles géométriques tridimensionnels sont de plus en plus omniprésents. Ils sont apparus avec le développement de l infographie et de la vision tridimensionnelle, qui ont permis une modélisation 3D d objets ou de scènes complexes. Ces modèles peuvent être créés par des systèmes de modélisation (logiciels de Conception Assistée par Ordinateur (CAO),...) ou obtenus grâce à des procédés de numérisation tridimensionnelle d objets physiques (range scanners). Ils sont généralement représentés sous forme de maillages surfaciques (surface linéaire par morceaux composée de polygones) ou volumiques (représentation de l objet par un ensemble de polyèdres). Ces modèles peuvent aussi être décrits par des nuages de points, des formes à pôles (courbes de Bézier, NURBS,...) ou des surfaces implicites. Ce type de données géométriques est utilisé par une grande diversité d applications regroupées ici par domaines : La conception d objets industriels (CAO) ou familiers (CAM : Computer Aided Manufacturing) La médecine (aide au diagnostic, chirurgie assistée par ordinateur ou à distance, ) Les systèmes d information géographiques (cartographie, géologie, astronomie,...) La simulation de phénomènes physiques (expériences virtuelles) La réalité augmentée (mélange de scènes réelles et d objets virtuels) Les applications ludiques (jeux vidéo, cinéma, visites virtuelles,...)... Les modèles géométriques peuvent nécessiter une numérisation de plus en plus fine et détaillée, afin de satisfaire aux attentes de réalisme. Par exemple, la numérisation du David (statue de Michel Ange) a été réalisée à l'aide de 2 milliards de points [25]. La représentation non compressée d'un tel modèle nécessite alors plusieurs Giga octets. Actuellement les machines et les réseaux sont de plus en plus performants et permettent de stocker ou d'échanger un nombre de données de plus en plus important. Malgré ceci, toute amélioration des méthodes de compression existantes est souhaitable, car on assiste également à une vulgarisation de la numérisation des données et à une explosion prévisible de la production et de l'échange de ce type de données. Deux approches sont envisageables pour la compression de données : La compression sans perte qui propose une reconstruction exacte de l'information, et qui se révèle indispensable pour certaines applications sensibles ne tolèrant pas de pertes (calculs par éléments finis, applications médicales,...). La compression avec perte où on s'autorise des pertes contrôlées. Les taux de compression obtenus sont alors beaucoup plus importants et on choisit généralement le débit désiré. Il existe plusieurs méthodes de compression de données textuelles, qui se révèlent également utiles pour la compression d'images, de sons ou de vidéos en utilisant le plus souvent une approche basée sur les principes du traitement du signal. Certaines de ces approches ont été étendues pour le codage de surfaces, mais depuis une dizaine d'années, on observe l'apparition de méthodes spécialement dédiées aux maillages. Un autre domaine qui manipule les objets géométriques est la géométrie algorithmique. Cette discipline s'intéresse à l'étude symbolique abstraite de ces objets et permet de résoudre un grand nombre de problèmes à l'aide d'algorithmes efficaces et de structures de données appropriées. Un des grands thèmes abordé par la géométrie algorithmique est la reconstruction 3D. L'utilisation des algorithmes de reconstruction 3D pour la compression de la connectivité des maillages n'a été que très faiblement exploitée, mais s'avère très intéressante. Ainsi, nous avons choisi d'étudier l'apport de la reconstruction 3D pour le codage de la topologie de maillages surfaciques triangulaires. Nous avons, dans ce but, mis au point une méthode de compression sans perte exploitant un algorithme de reconstruction basé sur la déformation de surface. Les chapitres 2 et 3 de ce mémoire, abordent respectivement les principes de la compression de maillages et de la reconstruction 3D à travers la présentation de plusieurs travaux existants. Les travaux correspondant le plus à notre méthode sont expliqués en détail. Le chapitre 4 est consacré à la description de notre algorithme et le chapitre suivant détaille nos choix d'implémentation. Pour finir, nous présentons les résultats obtenus ainsi que les perspectives envisageables. 4

2 Présentation des travaux existants en compression de maillages Un maillage est une surface linéaire par morceaux qui approxime la surface continue du modèle original. Une telle approximation est caractérisée par une information géométrique qui définit la position des sommets dans l espace euclidien et une information topologique qui décrit la relation d adjacence entre les sommets traduisant la manière dont ils sont connectés entre eux. Les maillages surfaciques triangulaires sont les plus utilisés pour la représentation d objets dans l'espace tridimensionnels. Ils sont en passe de devenir la représentation standard pour la modélisation d objets géométriques grâce à leur simplicité et leur efficacité. Ils sont composés de k-simplexes qui peuvent être des sommets (0- simplexe), des arêtes (segment reliant deux sommets : 1-simplexe) ou des triangles (2-simplexe). On parle alors de surface simpliciale [8]. N importe quelle forme géométrique peut être représentée par un maillage. Pour certains modèles, d autres informations (ou attributs) peuvent être associées aux points (normale, courbure, couleur, information de texture, ) facilitant la modélisation, le rendu et la visualisation des objets. Contrairement aux images non vectorielles, aux sons et aux vidéos, les maillages se caractérisent généralement par un échantillonnage irrégulier. En effet, les points ne sont pas répartis sur une grille régulière et ils n ont pas forcément le même nombre de voisins (ce nombre est appelé valence ou degré d un sommet). Les techniques de compression de maillages doivent donc être adaptées à ces structures particulières. 2.1 Représentation non compressée des maillages La représentation naïve d'un maillage triangulaire consiste à coder les informations géométriques et topologiques respectivement par : Une liste de points représentés par leurs coordonnées cartésiennes dans l espace euclidien 3D. On code généralement les coordonnées par des nombres flottants sur 32 bits. Une liste de triangles, chacun représenté par les indices de ses sommets dans la liste précédente. Les indices sont généralement codés sur 32 bits. Il existe plusieurs formats ASCII utilisant cette représentation. Les plus connus sont le langage VRML (Virtual Reality Modeling Language) et le format OFF. Ce type de codage s'avère très redondant, vu que la valence d'un sommet est en moyenne égale à 6 dans un maillage triangulaire (chaque sommet est en moyenne incident à 6 triangles distincts). Ainsi pour ces maillages, l'indice d'un sommet apparaît en moyenne 6 fois dans la liste des polytopes. Plusieurs méthodes de compression, dont certaines sont présentées par la suite, permettent de réduire cette redondance. 2.2 Principes généraux des méthodes de compression Le principe général de toute approche de compression peut être représenté par le schéma ci-dessous [4] : FIG. 1 - Schéma général de la compression. Toute approche de compression utilise les deux étapes indiquées dans ce schéma afin d'obtenir la séquence binaire la plus compacte possible Les méthodes de compression exploitent le contexte des données à représenter pour réorganiser l'information de manière pertinente et optimale, afin de réduire le nombre de bits nécessaires à sa représentation. Une fois l'information réorganisée en une séquence de symboles, un codage entropique est utilisé afin d'obtenir la séquence de bits la plus compacte possible. Un tel codeur doit satisfaire à priori les conditions 5

suivantes : Condition d'unicité : deux messages différents ne doivent pas être codés de la même façon. Condition de déchiffrabilité : deux mots de codes successifs doivent être distingués sans ambiguïté. Le but du codage entropique est de tendre vers l'entropie du signal échantillonné. Le terme d'entropie est utilisé en théorie de l'information et désigne la limite minimale théorique du nombre de bits nécessaires au codage de l'information portée par un signal [4]. Ainsi, pour s'approcher de cette limite, chaque symbole est représenté par un code de longueur variable, inversement proportionnel à sa probabilité d apparition. Les informations les plus probables sont alors codées sur un petit nombre de bits. Il existe plusieurs codeurs entropiques, dont les plus connus sont le codeur d'huffman [20] et le codeur arithmétique [29, 40] qui sont des méthodes statistiques. Le codage d Huffman code les symboles un par un à partir d'une analyse statistique préalable des données. Il est utilisé dans les normes de compression d images (JPEG) ou de vidéos (MPEG). Chaque symbole est codé par un nombre entier de bits, ce qui empêche la plupart du temps de s approcher très près de l entropie du signal. Le codage arithmétique permet de se rapprocher plus de l'entropie du signal, car il code une séquence de symboles par un seul nombre. Chaque symbole est ainsi représenté dans la séquence par un nombre de bits non nécessairement entier. Ce codage est toujours basé sur une analyse statistique préalable des données et est utilisé dans la norme JPEG 2000. Il existe également des méthodes de codage par substitution [41, 42]. Celles-ci gèrent un dictionnaire adaptatif qui contient les derniers symboles codés et s enrichit au fur et à mesure. Ce dictionnaire est très utile pour réduire l'entropie du signal lorsque des séquences de motifs réapparaissent. 2.3 La compression de maillages sans perte Il est d usage de séparer le coût de la géométrie du coût de la topologie pour présenter les résultats d un algorithme de compression de maillages, même si ces deux coûts sont intimement liés. Cette séparation permet de mettre en évidence la dépendance entre le codage de la géométrie et la quantification utilisée. Les travaux réalisés en compression de maillages sans perte se divisent en deux grandes catégories : les méthodes dites mono-résolution (ou non progressives) et les méthodes progressives. La différence repose essentiellement sur la façon de coder l'information topologique. 2.3.1 La compression monorésolution Les méthodes mono-résolution sont les premières a avoir été proposées pour la compression de maillages surfaciques. Elles utilisent toutes le même principe de parcours linéaire des triangles, qui consiste à commencer par un triangle germe puis à découvrir à chaque étape un nouveau sommet jusqu'à ce que le maillage soit entièrement parcouru. La bande de triangles formée peut ne pas couvrir l'ensemble du maillage (si elle se referme sur ellemême), dans ce cas, on relance le processus en partant d'un nouveau triangle germe non codé. La découverte d'un nouveau triangle va généralement de pair avec la découverte d'un nouveau sommet et un code doit alors être transmis afin de déterminer la façon de rattacher le nouveau sommet au triangle précédemment découvert. Ces méthodes de compression diffèrent les unes des autres par le parcours et le codage de la connectivité qui peut se faire de plusieurs manières. Les méthodes se distinguent également dans leur façon de coder l'information géométrique à partir de l'information topologique, qui exploite le codage prédictif de la position des points par rapport à leur voisinage local. Le principe du codage prédictif est d'exprimer la position d'un sommet par rapport aux sommets précédemment découverts lors du parcours topologique. Ceci permet d'exploiter la corrélation entre ce sommet et son voisinage, réduisant ainsi l'information transmise. Cette dernière correspond au vecteur différence entre la position prédite par le voisinage et la position réelle du point. Cette technique est parfois référencée sous le nom de «delta-encoding» et le vecteur différence est appelé résidu ou vecteur correctif. On l'exploite également pour le codage des attributs additionnels (couleur, normale, texture,...), qui sont souvent fortement corrélés dans un voisinage local. Les trois types de prédiction de position les plus utilisés sont illustrés par les figures ci-dessous tirées de [14], mais il existe également des techniques de prédiction non linéaire. 6

FIG. 2 - Les 3 types de prédiction les plus utilisés. Le codage différentiel code la différence d entre le sommet précédent (i-1) et le sommet courant i. Pour les 2 autres schémas, la position du point i est codée par la différence r entre la position prédite par le voisinage et la position réelle de i. Venons-en maintenant aux principaux algorithmes de compression de maillages mono-résolution 2.3.1.1 Algorithme de Deering En 1995, Deering est le premier à introduire le terme de «compression géométrique» [12]. Il propose une représentation compacte des maillages surfaciques par une structure de données linéaire : les bandes de triangles généralisées. Dans cette structure, le sommet courant engendre un nouveau triangle connecté par la droite ou par la gauche au dernier triangle construit. Les bandes de triangles généralisées permettent une plus grande flexibilité comparé aux bandes de triangles standard où le sommet est alternativement connecté par la droite et par la gauche, comme nous pouvons le voir sur les figures ci-dessous. FIG. 3 - Codage d'un maillage par bandes de triangles. (a) Bande de triangles standard. (b) Bande de triangles généralisée (les lettres G et D associées aux sommets indiquent qu'ils sont connectés au triangle précédent respectivement par la gauche ou par la droite). Grace à cette représentation (utilisée dans OpenGL et Java3D), un sommet est en moyenne codé deux fois, ce qui représente déjà une réduction de la redondance initiale. Cette technique conduit à un codage de la connectivité sur 7,5 + log 2 (n/8) bits par sommet. La compression de la position et des attributs des sommets est réalisée par prédiction linéaire directe suivie d'un codage d'huffman. 2.3.1.2 Algorithme de Touma et Gotsman Une autre manière de parcourir les maillages surfaciques de façon linéaire a été exploitée par Touma et Gotsman en 1998 [39]. Ils proposent de faire évoluer une liste de sommets formant un polygone et contenant l'ensemble des triangles déjà codés. Ce polygone évolue par conquête des arêtes non encore codées autour d'un 7

sommet pivot. La séquence codante est alors constituée de la valence de chaque nouveau sommet découvert à laquelle s'ajoute des codes additionnels traduisant les changements topologiques du polygone lors de sa croissance, qui sont généralement rares. Cette approche s'avère très intéressante puisque chaque sommet n'est codé qu'une seule fois. Le coût de la topologie est de l'ordre de 2 bits par sommet pour les maillages usuels et tend vers zéro pour les maillages très réguliers (de valence 6). Sur ce dernier type de modèles, cet algorithme est actuellement le plus compétitif. Le codage de la géométrie est réalisé en utilisant la prédiction par règle du parallélogramme. Cette dernière produit une prédiction située dans le plan défini par le triangle précédent, qui peut être améliorée par l'estimation de l'angle formé entre ce dernier et le triangle courant («crease angle»). Les auteurs calculent cette estimation à partir du voisinage local. Cette approche permet de réduire le codage de la géométrie de 69% par rapport aux méthodes utilisant la prédiction linéaire classique. 2.3.1.3 Edgebreaker L'algorithme Edgebreaker utilise le même principe que celui de Touma et Gotsman, mais le parcours et l'information topologique sont codés différemment [26, 30-33, 36]. La connectivité est ainsi codée par une chaîne de cinq symboles, chacun représentant une configuration possible. Ces symboles sont présentés dans la figure cidessous, extraite de [26]. FIG. 4 - Les 5 symboles CLERS de l'algorithme Edgebreaker. Les triangles jaunes contenant les lettres C, L, E, R et S représentent les triangles courants, le triangle Y désigne le triangle précédent. Les triangles blancs et gris sont respectivement des triangles non découverts et déjà codés. Dans la configuration C, le sommet V n'a pas été découvert auparavant (son état est symbolisé par le rond blanc). Cette «machine à états finis» permet de coder les triangles du maillage en formant une spirale où chaque sommet n'est codé qu'une seule fois. Cette méthode garantit un coût topologique d'au plus 1,8 bits par triangle qui se révèle inférieur pour les maillages réguliers. De nombreuses extensions de cet algorithme ont été proposées notamment pour la compression de maillages tétraèdriques [34, 35]. Notre algorithme, en tant que méthode de compression mono-résolution se rapproche des deux dernières méthodes citées par leur aspect combinatoire. En effet, nous verrons par la suite que notre méthode procède également par conquête de sommets en se basant sur les triangles courants. 2.3.2 La compression progressive Avec l'évolution d'internet et des applications multimédia, les modèles géométriques peuvent être véhiculés sur des réseaux dont la bande passante constitue un goulet d'étranglement pour le transfert d'informations. Ils peuvent également être visualisés par des terminaux de nature très différente (ordinateur, PDA, téléphone portable dans le futur,...). Il est ainsi nécessaire de produire des méthodes de compression adaptées au matériel ainsi qu'aux besoins de l'utilisateur, c'est le but de la compression progressive. Les méthodes de compression progressive codent les maillages de façon hiérarchique. Elles produisent une version simplifiée (grossière) du maillage ainsi qu'une séquence d'opérations de raffinement permettant de reconstituer le maillage original. La transmission et la visualisation des maillages s'effectuent de façon progressive, l'utilisateur pouvant même décider, s'il le souhaite, de stopper le raffinement à tout moment (compression avec 8

pertes). L'enjeu de ces méthodes et d'optimiser le compromis débit / distorsion pour obtenir à tout moment la meilleure représentation possible quel que soit le niveau de reconstruction. Ces méthodes produisent ainsi des approximations intermédiaires du modèle original correspondant à différents niveaux de résolution. Il existe deux catégories de méthodes qui diffèrent par les niveaux de résolutions proposés. La première catégorie propose un raffinement continu du maillage où chaque opération de raffinement est codée séparément. Cette méthode s'avère très flexible puisqu'on dispose alors d'un très grand nombre de niveaux de détails. La seconde catégorie fait évoluer le maillage en regroupant les opérations de raffinement en ensembles indépendants, produisant moins de niveaux de détails (une dizaine environ). Cette dernière méthode est beaucoup plus rapide et le code produit plus compact, c'est pourquoi la plupart des travaux l'exploitent. Le taux de compression proposé par ces méthodes est généralement plus élevé comparé aux méthodes mono-résolution. Le premier algorithme de compression progressive a été proposé par Hoppe en 1996 [18] et se classe dans la première catégorie (raffinement continu). La méthode de simplification utilisée (permettant d'obtenir une version grossière du maillage) est la contraction d'arête illustrée par le schéma ci-dessous. FIG. 5 Les opérateurs de contraction et d'expansion d'arête. L'opérateur d'expansion d'arête est utilisé pour raffiner le maillage. Les positions des sommets v s et v t sont alors prédites à partir du sommet v s'. Afin de préserver au mieux la forme et l'apparence du maillage durant cette opération, une stratégie de sélection optimale des arêtes à traiter est utilisée. La procédure de raffinement utilise l'opération inverse (appelée expansion d'arête) et permet de transmettre une séquence de détails utilisée lors du raffinement progressif. La position des sommets v s et v t peut alors être prédite à partir du sommet v s' de la résolution inférieure. Un codage d'huffman est utilisé pour coder ces informations. Cette méthode propose un coût topologique comparable à celui des bandes de triangles. Parajola et Rossignac ont par la suite proposé une extension de cette approche en considérant un regroupement de ces opérations en ensembles indépendants [27]. Ainsi, à chaque étape de la simplification, environ 30% des sommets sont réduits par contraction, ce qui diminue le coût de la topologie. Des extensions des méthodes mono-résolution ont également été proposées. Elles utilisent généralement elles aussi l'opération de contraction d'arête [1, 38]. Un autre type d'opération a été exploité par Cohen-Or et al. [10]. Ils proposent pour la simplification, de supprimer un ensemble de sommets indépendants (représentés par des points rouges dans le schéma (a) ci-dessous) et de retrianguler les trous (ou patchs) formés. Une méthode permet ensuite d'identifier les patchs où les nouveaux sommets seront insérés en coloriant tous leurs triangles d'une même couleur. Quatre couleurs suffisent pour que les patchs adjacents ne soient pas représentés de la même couleur, comme nous pouvons le voir sur le schéma (b). Une variante à deux couleurs, illustrée par le schéma (c) propose une retriangulation par bandes triangulaires formant un Z. La géométrie est prédite à partir des sommets du patch polygonal. 9

FIG. 6 La technique de suppression de sommets indépendants. (a) Maillage initial, les sommets à supprimer sont représentés par des points rouges. (b) Technique de 4-coloration des triangles appartenant aux trous polygonaux formés par la suppression des sommets. (c) Technique de 2-coloration : les triangles formés par la retriangulation des trous forment un Z, permettant de n'utiliser que 2 couleurs pour leur identification. L'opération de fusion de sommet est une opération plus générale qui permet de représenter de façon hiérarchique des modèles non nécessairement manifold (soupes de triangles). Cet opérateur permet de fusionner des sommets non adjacents, comme le montre le schéma (a) de la figure ci-dessous. Pour de tels modèles, il est tout de même intéressant de privilégier la contraction d'arête pour les parties localement manifold, qui s'avère beaucoup moins coûteuse. Cet opérateur a été utilisé dans le codeur topologique de Gandoin et Devillers [15]. FIG. 7 Les opérations de simplification utilisées par l'algorithme de Gandoin et Devillers. (a) L'opérateur de fusion de sommet, permettant de simplifier des surfaces non manifold. (b) L'opérateur de contraction d'arête, plus économique. 2.3.3 La compression géométrique 2.3.3.1 Motivation En partant de l'observation que l'information géométrique représente la partie la plus coûteuse d'un maillage, Gandoin et Devillers ont réalisé un codeur efficace pûrement géométrique [15]. Ce choix part aussi de l'observation que de plus en plus d'applications utilisent des ensembles de points sans information topologique (représentation «basée point») et que cette dernière peut parfois être retrouvée de manière automatique. Ceci est en particulier vrai pour les nuages de points correspondant à des modèles de terrains. En effet, la triangulation de Delaunay 2D des points du modèle projetés sur un plan permet une reconstruction automatique de sa topologie. A la suite de la triangulation planaire, le modèle de terrain est reconstitué en «remontant» chaque point dans l'espace 3D. Une connectivité est alors implicitement définie par l'algorithme de triangulation qui produit une triangulation unique, sauf dans le cas de configurations dégénérées (où 4 points, définissant 2 triangles, sont cocycliques) pour lesquelles deux configurations sont alors possibles. Dans ce cas et pour d'autres configurations où l'on impose à la topologie de respecter certains contours du modèle (suivre une rivière, une route,...), une partie de la topologie doit être codée explicitement. En effet, certaines arêtes imposées peuvent ne pas être localement de Delaunay (cela représente moins de 5% des arêtes). Dans ce dernier cas, la triangulation utilisée pour la 10

reconstruction est la triangulation de Delaunay contrainte. Etant donnés un ensemble de points P et d'arêtes A dans le plan, la triangulation de Delaunay contrainte est l'unique triangulation de P contenant A et telle que tout sommet s de P ne respectant pas le critère de Delaunay est «caché» par une contrainte pour au moins une des extrémités du triangle (l'extrémité u dans le schéma ci-dessous). FIG. 8 Triangle non localement de Delaunay. Le point s appartient au cercle circonscrit au triangle uvw, mais il est «caché» du point u par l'arête vw. Pour les maillages surfaciques qui ne sont pas des modèles de terrains, les auteurs retournent à une méthode plus classique et proposent un codage explicite de la topologie (utilisant les opérateurs décrits dans la partie précédente), puisqu'il n'y a alors pas de manière simple de retrouver la topologie du maillage de départ. 2.3.3.2 Codeur géométrique Le codage de la géométrie repose sur un schéma dont le principe est de construire une boîte englobante autour du nuage de points et de la subdiviser de façon récursive (formation d'un kd-tree). Cette approche, que nous allons expliquer à l'aide du schéma 2D de la figure 9 (extrait de [15]), permet le codage de la géométrie d'un nuage de points en dimension quelconque. FIG. 9 Technique de codage de l'information géométrique. Les chiffres représentent le nombre de points présents dans la cellule où ils figurent. Le nombre de points total (7 ici) est ensuite codé sur 32 bits. Lors de la première subdivision, on ne code que le nombre de points de la cellule de gauche qui peut ici être compris entre 0 et 7 (8 possibilités). Ce chiffre sera donc codé sur log 2(8) bits. Le principe est de commencer par coder le nombre total de points. Ensuite, à chaque subdivision, le nombre de points présents dans la cellule de gauche est codé par codage arithmétique, l'information présente dans la cellule de droite étant implicite. Au fur et à mesure de la subdivision, la localisation des points devient de plus en plus précise jusqu'à ce que chaque cellule ne contienne plus qu'un point. Les subdivisions ne sont alors stoppées que lorsque la précision maximale sur les points est atteinte, c'est-à-dire, jusqu'à ce que les cellules contenant un point atteignent la taille unitaire. Cette technique de codage est très intéressante puisqu'elle permet de faire l'économie de l'information d'ordre sur les points. Elle présente de plus un aspect progressif. En effet il est possible de génèrer, à chaque étape, un unique représentant de l'ensemble des points au centre de chaque cellule non vide, afin de disposer d'une représentation progressive de l'information géométrique. Les performances de l'algorithme se positionnent avantageusement par rapport aux méthodes progressives les plus efficaces, si on ajoute le codage de la topologie. Le surcoût engendré par rapport à l'algorithme de Touma et Gotsman est inférieur à 5%. 11

2.4 La compression de maillages avec pertes Les méthodes de compression avec pertes utilisent généralement un espace transformé afin de projeter le signal dans un domaine fréquentiel dans lequel certaines fréquences peuvent être quantifiées voire éliminées sans que cela soit perceptible par l oeil. La projection de l information géométrique dans un espace transformé permet d exploiter la corrélation spatiale et fréquentielle. Ainsi l information géométrique se trouve beaucoup plus concentrée que dans le cas d'une simplification séquentielle car cette approche permet de réduire, sans codage, l entropie du signal. Plusieurs méthodes utilisent des transformées pour la compression de maillages. Certaines proposent une extension de l analyse de Fourrier classique des signaux 2D (Transformée en Cosinus, Karhunen-Loeve, ) pour traiter les maillages surfaciques [21]. Elles proposent pour cela une généralisation de la transformée sur grille régulière aux maillages surfaciques irréguliers. Une alternative à la décomposition spectrale est l'analyse multirésolution, qui permet de coder les maillages de manière progressive. Le principe est de décomposer par filtrage un signal à l aide de deux fonctions d'ondelettes de base. Le filtrage passe-bas produit alors un maillage grossier basse résolution, alors que le filtrage passe-haut fournit un ensemble de détails haute fréquence permettant d'affiner progressivement le maillage grossier. Les codeurs d ondelettes exploitent en général plusieurs niveaux de décomposition. En effet, si on réitère le processus de décomposition sur le signal basse fréquence, on obtient une décomposition hiérarchique par paquet d ondelettes, correspondant à une représentation multirésolution [28]. Les transformées en ondelettes sont très utilisées dans les domaines de l'imagerie, la vidéo et le son car elles sont bien adaptées aux signaux réguliers. Les maillages étant la plupart du temps irréguliers, des techniques de remaillage sont nécessaires pour produire des maillages semi-réguliers, sur lesquels les méthodes d'analyse multirésolution sont applicables. Les maillages semi-réguliers multirésolution permettent d'obtenir le maillage original à différentes résolutions. Chaque résolution est construite de façon bien particulière où un sommet est généralement ajouté au milieu de chaque arête de la résolution inférieure (subdivision quaternaire). Chaque triangle du maillage grossier est ainsi subdivisé en 4 sous-triangles plusieurs fois de suite jusqu'à l'obtension d'un maillage très fin et proche du maillage original. Des techniques de subdivision ternaire ou adaptative sont plus rarement utilisées, le but de cette étape étant de rendre implicite le maximum d'information topologique. Le maillage le plus grossier est obtenu à partir du maillage initial, par une technique de simplification séquentielle, qui, associée à une méthode de raffinement, tente de réduire au maximum l'information nécessaire au codage du maillage semi-régulier multirésolution. C'est ce que proposent le remailleur MAPS (Multiresolution Adaptative Parameterization of Surfaces) [24] et le remailleur normal [17]. A partir de ces maillages semi-réguliers, les méthodes d'analyse multirésolution repositionnent les sommets, afin de se rapprocher au maximum du maillage original et ceci pour chaque résolution. Ces repositionnements correspondent aux coefficients d'ondelette correspondant à la seule information transmise pour le raffinement du maillage grossier (sous réserve de connaître la technique de subdivision utilisée). La quantification permet de réduire nettement le nombre de bits utilisé pour leur codage, surtout pour les coefficients haute fréquence. Un codage entropique est ensuite appliqué ainsi que pour le codage du maillage grossier. Nous n'avons donné que le principe de l'analyse multirésolution, étant donné que ce type de méthode s'éloigne de l'approche considérée par notre algorithme, mais un grand nombre d'algorithmes de compression utilisent une transformée en ondelette associée à une technique de remaillage [22, 23, 28]. 12

3 Les algorithmes de reconstruction 3D La reconstruction de la surface d objets à partir d'un nuage de points est un domaine de recherche actif pour lequel plusieurs approches ont été considérées. Cette technique consiste généralement à retrouver une approximation linéaire par morceaux de la surface inconnue. 3.1 La reconstruction par approximation Certaines méthodes réalisent cette reconstruction par approximation de la fonction de distance signée séparant tout point de l'espace de la surface cherchée [11, 19]. Cette fonction de distance permet une définition implicite de la surface qui peut être polygonalisée en utilisant un algorithme de type marching-cube. Curless et Levoy [11] convertissent pour cela des «range images» (obtenues par un range scanner) en fonctions de distance et les combinent en une unique fonction de distance globale. Leur algorithme s'avère très efficace en temps et en mémoire et permet de reconstruire des modèles très détaillés contenant plus de 2,6 millions de triangles. Il a notamment été utilisé dans le projet de numérisation des oeuvres de Michel Ange [25]. 3.2 La reconstruction par interpolation La géométrie algorithmique a également apporté des contributions importantes au problème de la reconstruction 3D. Les méthodes proposées réalisent généralement une interpolation des échantillons. Il existe plusieurs méthodes de reconstruction de maillages basées sur la triangulation de Delaunay 3D et le diagramme de Voronoi [8]. Pour une description de ces méthodes, le lecteur pourra se rapporter à l'article de synthèse proposé par Cazals et Giesen [7]. Etant donné un ensemble E de points de l'espace, une triangulation de E est un ensemble de k-simplexes dont les sommets sont les points de E et qui vérifie les propriétés suivantes : l'intersection de 2 k-simplexes est soit vide, soit une face commune aux 2 k-simplexes les k-simplexes pavent l'enveloppe convexe de E La triangulation de Delaunay 3D est la triangulation composée de tétraèdres dont la sphère circonscrite est vide de tout point. La figure ci-dessous présente en 2D une triangulation quelconque (a) et la triangulation de Delaunay (b) d'un même ensemble de points. FIG. 10 Différentes triangulations d'un même ensemble de points. (a) Triangulation quelconque. (b) Triangulation de Delaunay ; on remarque que pour cette dernière, tous les cercles circonscrits aux triangles sont vides de tous points. On appelle diagramme de Voronoï de E, le partitionnement de l'espace en cellules regroupant les points ayant le même plus proche voisin dans E. La figure ci-dessous présente un exemple de diagramme de Voronoï (en bleu). 13

FIG. 11 Diagramme de Voronoï d'un ensemble de points. Ce diagramme (en bleu) est la représentation duale de la triangulation de Delaunay (en vert). Parmi les méthodes de reconstruction basées sur la triangulation de Delaunay, on peut citer le concept d'alpha-formes [13], l'algorithme de sculpture de Boissonnat [5], le crust [2], la convection géométrique [9] ou également la reconstruction par interpolation naturelle [6] et le «power crust» [3] qui utilise une variante du diagramme de Voronoï, le «power diagram». Certaines de ces méthodes de reconstruction donnent une condition nécessaire et suffisante sur l'échantillonnage de l'objet pour garantir une reconstruction valide. En pratique, ces critères ne sont pas toujours satisfaits (présence d'arêtes vives, de parties minces,...). Lorsque l'on s'éloigne des conditions optimales d'échantillonnage, les algorithmes de reconstruction peuvent se comporter différemment. Il n'est ainsi plus possible de compter sur eux pour retrouver la topologie de n'importe quelle surface. Les méthodes décrites précédemment peuvent toutefois constituer une aide précieuse pour la compression de maillages. En effet, en plus du nuage de points, il est possible d'ajouter des informations à l'algorithme afin de le guider vers le maillage à compresser. Ainsi l'information topologique se réduit à ces informations, vu que le reste de la connectivité peut être reconstruit automatiquement par l'algorithme choisi. La contribution de notre travail consiste à étudier l'apport de la reconstruction 3D pour le codage de la topologie de maillages surfaciques, la géométrie étant codée par un codeur géométrique du type de celui de Gandoin et Devillers [15]. Pour cela, il faut envisager de coder explicitement une petite partie de l'information topologique. Nous avons choisi de considérer cette approche en partant d'une méthode de reconstruction 3D appelée «convection géométrique» [9]. Une telle approche pourrait également être mise en oeuvre avec un autre algorithme de reconstruction 3D. 3.2.1 L'algorithme de «convection géométrique» L'algorithme de «convection géométrique» s'inspire de la méthode de reconstruction de surface de Zhao et al [43] dont la mise en oeuvre repose sur les level-set. Le principe de leur méthode est de soumettre une surface à des forces pour la faire évoluer, par déformation, vers le modèle original. Pour cela, les auteurs calculent une fonction de distance (ou d'énergie) entre le nuage de points d'entrée et une surface donnée (qui englobe le nuage). L'objectif est de minimiser la fonction de distance pour faire évoluer la surface jusqu'à stabilisation, représentant une bonne approximation du modèle original. Les auteurs commencent par réaliser la convection de la surface dans le gradient de la fonction distance. Pour cela, un schéma numérique basé sur une grille régulière (construite à partir d'une boîte englobant le nuage de points) est utilisé. L'algorithme de «convection géométrique» propose de reprendre le modèle de convection décrit précédemment sans l'utilisation de grille régulière. Pour cela, l'auteur prouve qu'en partant d'une surface englobant le nuage de points, le processus de convection converge vers une «pseudo-surface» fermée, composée de demifacettes orientées comprises dans la triangulation de Delaunay 3D des points et offrant une propriété particulière. 14

Cette dernière est appelée propriété de Gabriel. Etant donnés 3 points P 1, P 2 et P 3, la demi-facette orientée représente le triangle composé des points P 1, P 2 et P 3 orienté selon la direction de. Une facette peut être vue comme le regroupement de deux demi-facettes. Etant donnée une facette f, la sphère diamétrale de f (plus petite sphère comprenant f) est l'union de deux demi-sphères associées à chacune des demi-facettes composant f. La propriété de Gabriel est alors respectée pour une demi-facette, si sa demi-sphère associée est vide de tout autre point. La figure ci-dessous représente une «pseudo-surface» en 2D. FIG. 12 Exemple d'une pseudo-surface orientée fermée en 2D. Chaque demi-facette est orientée du côté du trait rouge qui lui est associé. La demi-facette en pointillés ne fait pas partie de la pseudo-surface finale, car elle ne respecte pas la propriété de Gabriel. Le terme «pseudo-surface» désigne une surface orientée et fermée dont certaines parties peuvent localement partager une position géométrique commune. Les «pseudo-surfaces» permettent de représenter de façon combinatoire et manifold les surfaces fermées mais aussi les surfaces à bords et/ou non manifold, comme nous le montre le schéma ci-dessous (en 2D). Un maillages est dit manifold (ou variété) si tout sommet est le centre d'un disque topologique, autrement dit possède un voisinage homéomorphe à un disque. FIG. 13 Exemple de pseudo-surface s'appuyant sur une surface 2D non manifold. On remarque que les cinq sommets du milieu s'appuient sur le même point géométrique. L'auteur propose une exploitation de ces résultats théoriques à travers la proposition d'un nouvel algorithme géométrique de reconstruction 3D basé sur la triangulation de Delaunay 3D des points. La pseudosurface utilisée au début du processus de convection est alors l'enveloppe convexe des points (comprise dans la triangulation de Delaunay 3D). L'évolution de cette surface se fait ensuite à travers les tétraèdres intérieurs de la triangulation. A chaque étape de l'évolution, on maintient une pseudo-surface toujours comprise dans la triangulation de Delaunay, jusqu'à ce que toutes les demi-facettes satisfassent le critère de Gabriel. 15

La pseudo-surface orientée vers l'intérieur évolue en subissant des opérations géométriques et topologiques. Si la propriété de Gabriel n'est pas respectée par une demi-facette, on obtient : Soit «l'ouverture» de celle-ci afin d'en découvrir trois nouvelles qui se rapprocheront plus du modèle original (ce principe est illustré par la figure 12 en 2D où l'arête en pointillés s'ouvre vers deux nouvelles). Soit l'effondrement de deux demi-facettes si la demi-facette couplée à la facette à «ouvrir» (partageant la même géométrie mais orientée différemment) fait partie de la pseudo-surface courante. Dans ce cas, ces deux demifacettes doivent être retirées de la pseudo-surface, qui «s'évanouit» au niveau de leur auto-intersection. Cette opération provoque un effondrement local des deux demi-facettes couplées et peut entraîner une modification topologique de la pseudo-surface. Huit cas particuliers sont considérés en fonction de la configuration des facettes du voisinage. Le fait de considérer une pseudo-surface orientée dans l'algorithme permet la reconstruction de surfaces à bords (non fermées) ou contenant des parties minces (correspondant à des demi-facettes couplées). Lors de la reconstruction, il arrive qu'on obtienne des parties minces indésirables (création d'ailerons accrochés au maillage). Pour les surfaces fermées (volumes), il n'est pas difficile de les retirer alors que pour les surfaces à bords, il faut les distinguer de celles qui font partie de la surface originale. Pour cela, on poursuit l'algorithme de convection en 2D sur les parties minces considérées. L'algorithme de «convection géométrique» a été étendu pour éviter que le processus de convection ne soit stoppé par la présence de cavités importantes (poches). Cette extension ne s'applique qu'aux surfaces suffisamment bien échantillonnées autour de la poche. Le principe consiste à comparer la taille de la demi-facette bloquante avec la densité des points au voisinage de la facette. Ainsi le processus de convection sera poursuivi à l'intérieur de la poche si la taille de la demi-facette est grande devant la densité locale des sommets composant son voisinage. FIG. 14 Blocage du processus de convection par une poche. Ces poches peuvent être détectées si l'objet est suffisamment bien échantillonné. La triangulation 3D de points échantillonnés sur une surface peut faire apparaître des slivers (tétraèdres dont les 4 sommets voisins sur la surface sont quasiment coplanaires). Lors de la convection, si ce sliver est atteint de part et d'autre d'une surface contenant des parties minces, il est possible de faire apparaître un trou (poignée). On parle alors de bruit topologique. FIG. 15 Exemple de surface mal reconstruite par l'algorithme de convection. Pour une telle surface, l'algorithme créé un trou, car le triangle central (faisant partie du sliver) est atteint par le haut et par le bas de la surface lors de la convection. 16

4 Notre contribution 4.1 Principe général de notre algorithme Nous avons choisi d'utiliser l'algorithme de reconstruction 3D expliqué ci-dessus et de l'exploiter afin d'obtenir d'une part un codeur de la topologie d'un maillage construit à partir de la géométrie et d'autre part une variante de ce codeur utilisant une transmission graduelle et simultannée de la géométrie. Nous venons de voir que l'algorithme de «convection géométrique» a été étendu pour traiter certaines particularités de surfaces (poches) et que d'autres spécificités ne permettent pas une reconstruction exacte (mauvais échantillonnage, slivers,...). Dans le cadre de la compression de maillages, il est possible de guider l'algorithme pour tenir compte de ces particularités, puisqu'on dispose du maillage original lors du codage de l'information. Il suffit alors de ne transmettre que des codes permettant au décodeur d'identifier ces spécificités afin de produire une reconstruction fidèle du maillage original. L'entropie correspond alors à l'ensemble de ces informations additionnelles liées au nombre de poches, de cas entraînant du bruit topologique (assez rare) et à l'écart entre la distribution des sommets et une distribution assurant la validité de l'algorithme de reconstruction. Deux codeurs peuvent être construits sur ce principe, le premier déléguant entièrement le codage de la géométrie à un algorithme du type de celui de Gandoin et Devillers [15], le second s'occupant également du codage de l'information géométrique de certains points en exploitant le principe de prédiction géométrique présenté dans la partie 2.3.1. Dans les deux cas, le codeur et le décodeur construisent tous les deux une triangulation de Delaunay 3D sur laquelle l'algorithme de convection est appliqué. Pour qu'ils aboutissent au même maillage (le maillage initial), il faut qu'ils disposent d'informations équivalentes, même si elles sont de nature différente. Dans le premier codeur, l'information topologique est déduite de la géométrie mais est codée indépendamment de cette dernière. Le codeur et le décodeur ont en effet besoin de la position géométrique de l'ensemble des points pour construire la triangulation de Delaunay 3D sur laquelle l'algorithme de convection s'applique. Pendant le processus de convection, le codeur, qui dispose du maillage initial M, doit transmettre des codes spécifiques si l'algorithme de convection n'est pas capable de converger vers M. Le décodeur, qui ne dispose pas de M, utilise alors ces codes transmis par le codeur pour détourner l'algorithme de convection et aboutir à M. Dans la seconde version, seuls les échantillons situés sur l'enveloppe convexe du nuage de points sont codés indépendamment de l'information topologique, les autres points étant codés au fur et à mesure de l'évolution du processus de convection. Le décodeur commence alors par construire la triangulation de Delaunay des points de l'enveloppe convexe et l'enrichit en suivant l'évolution du processus de convection. La position des points intérieurs peut ainsi être prédite à partir de l'évolution locale de la convection (afin de réduire l'information géométrique). Des codes additionnels sont toujours utilisés pour diriger l'algorithme et le faire converger vers le maillage initial. Cette version se rapproche des méthodes mono-résolution qui représentent les maillages de façon linéaire, mais au lieu de découvrir à chaque étape un nouveau sommet sur la surface, le nouveau sommet découvert est situé dans la triangulation de Delaunay 3D. 4.2 Description de l'algorithme Les maillages considérés par notre algorithme sont des maillages surfaciques triangulaires non nécessairement manifold ni fermés et représentés de façon naïve, par exemple par des fichiers OFF. Ces maillages peuvent contenir des informations additionnelles (couleurs, texture, normale,... ). Dans le cadre de ce travail, nous avons considéré des maillages dont les facettes sont comprises dans la triangulation de Delaunay 3D des échantillons. 4.2.1 Première approche : codage de la topologie par rapport à la géométrie 4.2.1.1 Principes du codeur et du décodeur La première opération consiste à construire la triangulation de Delaunay 3D s'articulant sur l'ensemble des points du maillage d'entrée. Ensuite, si le maillage est compris dans la triangulation de Delaunay 3D, les demi- 17