• Aucun résultat trouvé

IV. Plan de la thèse

4. L’adaptation de données 3D

4.3. Typologie d’adaptation 3D

4.3.1. Dégradation de la géométrie

Les propositions s’intéressant à la modification de la géométrie s’appuient sur des méthodes de simplification. Les transformations s’appliquent aux éléments géométriques simples (points, lignes, triangles) et elles ciblent en priorité les objets définis comme des maillages 3D. Ainsi, on rencontre des solutions visant à limiter le nombre de sommets, d’arêtes et/ou de triangles composant la surface. L’élimination d’un élément se fait de façon à nuire le moins possible la forme initiale de la surface. Lorsque l’on veut appliquer les techniques que nous présentons ci-dessous à une scène quelconque, une transformation préalable de celle-ci est

nécessaire. Ainsi, toutes les primitives complexes (cubes, sphères, etc.) doivent être remplacées par des maillages équivalents. Cette transformation se traduit dans une augmentation importante de la taille du fichier encodant la scène. À la place d’une seule primitive définissant une sphère, on est amené à introduire un nombre important de triangles simulant une sphère. Cependant, cette augmentation de la taille est compensée par un meilleur contrôle du niveau de détail et une amélioration des performances lors du rendu visuel du nouveau maillage. Ainsi, la plupart des solutions s’attachant à l’adaptation géométrique ont été proposées dans le cadre de la transmission progressive des surfaces 3D [Hoppe, 1996][Certain et al., 1996][Xia et al., 1997][Cohen et al., 1997][To et al., 1999][Kim et al., 2006].

[Hoppe, 1996] se trouve parmi les premiers auteurs à introduire le terme de progressive mesh (en français maillage progressif). Les maillages progressifs répondent à plusieurs problèmes inhérents à la gestion de données 3D : simplifier les surfaces, calculer les niveaux de détail, limiter le stockage, faciliter la diffusion, etc. Un maillage progressif est caractérisé par une version basique et un certain nombre d’informations qui peut être utilisé petit à petit afin de reconstruire la version complète de la surface. [Certain et al., 1996] s’attaquent à la diffusion progressive et à la visualisation interactive en s’appuyant sur la caractérisation à plusieurs échelles des surfaces, en analysant séparément la forme et la couleur. [Xia et al., 1997] proposent une solution pour une simplification appliquée de manière hétérogène à une surface. Sur une surface, il peut y avoir des régions qui sont mieux préservées par le processus de simplification que d’autres. Les auteurs se servent de cette approche afin d’optimiser les régions qui sont dans le champ de vision de l’utilisateur. Ainsi, les informations permettant de parfaire le niveau de détail de triangles se trouvant au centre du champ de vision, sont transmises en premier. Dans la suite, nous discutons plus en détails des travaux de [Cohen et al., 1997], [To et al., 1999] et [Kim

et al., 2006] afin de mieux illustrer les grandes lignes du processus de simplification.

Dans [Cohen et al., 1997], un autre travail issu de la transmission progressive de surface, les auteurs étudient la simplification successive d’une surface 3D en observant plusieurs niveaux de détail. Les auteurs souhaitent que le passage entre deux niveaux de détail successifs soit déterminé afin de mieux contrôler le processus de dégradation de la surface. Chaque niveau de détail est déterminé par une fonction linéaire qui quantifie la déviation du nouveau niveau de détail de la surface par rapport au précédent et par rapport à la surface initiale. Ces fonctions sont également utilisées afin de calculer les modifications à apporter aux coordonnées de la texture pour conserver au mieux l’apparence de la surface. L’idée générale de l’algorithme proposé est de supprimer les arêtes dans l’ordre inverse de leur importance. L’importance, ou le coût de suppression d’une arête, est donnée par la courbure de la surface dans son voisinage. La sélection des arêtes à supprimer au passage à un niveau de détail inférieur, se fait à l’aide d’une fonction minimisant la différence entre la déviation souhaitée et les coûts de suppression des arêtes sélectionnées. La suppression d’une arête est réalisée en déplaçant ses extrémités dans un point qui devient un nouveau sommet de la surface. Le choix de ce point est capital dans le processus de simplification car la déviation introduite par un point mal choisi peut être plus importante que celle prévue. Afin de minimiser cette déviation, les auteurs utilisent une méthode qui projette tous les triangles voisins sur un plan déterminé afin qu’il n’y ait pas d’intersection entre les projections des triangles. Le choix du point se fait en 2D de telle façon que les arêtes des nouveaux triangles, induits par l’introduction du nouveau sommet, ne se chevauchent pas. À ce point dans le plan de projection, on associe une droite dans l’espace 3D initial. La position de ce point sur la droite est ensuite calculée afin de minimiser la distance qu’il peut y avoir entre le nouveau sommet et les anciens sommets de l’arête qui a été supprimée.

Dans [To et al., 1999], les auteurs s’intéressent à la mise en œuvre d’un algorithme permettant la transformation d’un maillage, en maillage progressif, en veillant à limiter la

quantité d’informations supplémentaires permettant l’évolution du maillage basique (le moins détaillé) à sa version initiale (la plus détaillée). Le mécanisme mis en œuvre pour obtenir la surface basique tout en gardant les aspects visuels importants (creux, pics, …), comme toute simplification opérée pour tenir compte des conditions matérielles, correspond à un processus d’adaptation. Il s’appuie sur la simplification de la surface en enlevant les points de la surface dont l’importance est moindre. L’importance d’un point est définie par rapport à la courbure locale de la surface. Plus le voisinage du sommet est accidenté, plus l’importance du sommet est grande, car si le sommet est supprimé on perd beaucoup d’information liée au profil du terrain. Lorsqu’un sommet est sélectionné pour exclusion, les arêtes dont il est point de départ sont considérées afin de trouver l’arête dont l’importance est moindre. L’importance d’une arête est fonction de l’importance des sommets la composant ainsi que de sa longueur. L’extrémité de moindre importance est alors absorbée par l’autre extrémité et l’arête est supprimée de la surface. Les arêtes incidentes au sommet absorbé se cumulent avec les arêtes incidentes au sommet absorbant. Le processus est illustré dans la Figure 4.4. Le graphe (sommet et arêtes) correspondant à la structure interne de la surface initiale est présenté en haut à gauche. Initialement, le nombre de sommets absorbés (présenté au centre du chaque sommet) est zéro. L’élimination du sommet v4 et son absorption par le sommet v6, ainsi que l’ajout des arêtes incidentes (v6,v1), (v6,v5), (v6,v3), (v6,v7), (v6,v2) sont illustrées par la mise à jour des étiquettes du sommet v6 et des arêtes en question. Avant de continuer le processus d’élimination, il faut recalculer l’importance des sommets affectés par les opérations effectuées. Le processus continue jusqu’à l’exclusion de tout sommet dont le niveau d’importance est inférieur à un seuil donné. Cette méthode est moins complexe que celle présentée précédemment [Cohen et al., 1997] car elle implique moins d’opérations géométriques et d’optimisation. Néanmoins, elle ne présente pas les avantages des précédentes car cette méthode ne permet pas de générer des niveaux de détail de manière automatique et de dégrader de manière contrôlée la surface.

Figure 4.4 Simplification par élimination de sommets et d’arêtes d’après [To et al., 1999].

[Kim et al., 2006] proposent une méthode d’adaptation générique pour les maillages 3D en utilisant les outils mis à disposition par la plate-forme MPEG-21que nous avons présentée dans une section précédente. [Kim et al., 2006] reprochent aux méthodes existantes un manque de maîtrise du processus d’adaptation. Les auteurs proposent un cadre théorique qui permet de mesurer le niveau d’adaptation requis en fonction des contraintes matérielles, de la complexité de la surface et d’autres préférences utilisateur. Chaque surface est associée à un item digital (DI) et est encodée grâce aux descriptions gBSD. Ces descriptions, faites en XML, sont transformées et filtrées grâce aux feuilles de transformation XSLT afin de correspondre au contexte de diffusion (utilisateur, dispositif d’accès). Le contexte lui aussi est représenté en

utilisant une autre brique de la technologie MPEG-21 XDI (Context digital item). L’encodage du contenu au sein du flux gBSD est structuré en plusieurs couches de contenu : une couche de base et des couches additionnelles. La superposition de toutes les couches correspond à la version originale de la surface. Les auteurs utilisent une méthode de simplification pour la construction de ces différents niveaux. Le choix de la méthode est indépendant de l’architecture générale du système. Une algèbre d’ensembles portant sur les sommets et les arêtes permet de construire les couches du contenu de manière indépendante. En ce qui concerne le choix de la dernière couche de contenu à envoyer lors de la diffusion, les auteurs proposent une méthode déterministe qui s’appuie sur des estimations de performance et de qualité. Ainsi, ils ont mesuré le nombre d’images visualisées par seconde lorsque tout le modèle est chargé sur le poste client, les capacités de calcul du dispositif en mode normal de fonctionnement et les capacités de calcul du dispositif au moment de la diffusion. À partir de ces données, suivant le nombre d’images par seconde souhaitées, un ratio d’adaptation à appliquer au modèle peut être calculé. Si ce taux est inférieur à un, une adaptation est mise en place.

Les méthodes présentées ci-dessus ne peuvent pas s’appliquer directement aux objets ayant une structure complexe (des bâtiments, des voitures, etc.) ou ceux construits à l’aide des primitives géométriques. Une étape de transformation de tels objets en surfaces simples est nécessaire. Nous considérons que cette mise à plat peut se révéler assez néfaste car lorsque l’on supprime des arêtes et sommets appartenant à des parties différentes de l’objet, on risque de perdre la cohérence de la forme. Par exemple, on ne devrait pas fusionner des sommets situés dans des parties distinctes de l’objet (un sommet de la roue et un sommet de la carrosserie). Ce problème ne se pose pas, dès lors que les parties connexes d’un objet forment des angles relativement grands. Ainsi puisque l’importance des sommets situés sur les lignes de séparation est grande, le processus de simplification ne traite pas ces sommets. Cependant, garder l’information concernant la fragmentation initiale de l’objet est probablement nécessaire afin d’éviter ce genre de soucis dans un cadre générique.