MEFP3C : Un système logiciel pour le Maillage Evolutif de Formes

Transcription

MEFP3C : Un système logiciel pour le Maillage Evolutif de Formes
MEFP3C : Un système logiciel pour le
Maillage Evolutif de Formes avec Pavage par
Polygones à sommets 3 Connexes
Jamal Khamlichi, Jean-Paul Gourret
IUT de La Rochelle - Département Informatique
15 rue François de Vaux de Foletier 17026 La Rochelle Cedex
et
Laboratoire d’Informatique, Image, Interaction (L3i)
Avenue Michel Crépeau – 17042 La Rochelle Cedex 1
[email protected] ; [email protected]
Sections de rattachement : 27
Secteur : Secondaire
RÉSUMÉ.
Depuis plusieurs années nous nous intéressons au maillage de surfaces pour la création d’images
fixes et animées et au développement de logiciels d’application.
Nous avons développé une technique de maillage d’objets déformables fondée sur des polygones
à sommets de valence 3, que nous appelons « maillage 3 connexe ».
Nous avons développé un système logiciel pour ce type de maillage. Il est composé d’un
modeleur, d’un mailleur dynamique, de modules d’animation, d’un module de texture et d’un
module d’acquisition d’un nuage de points.
L’application principale à ce jour est la modélisation et le maillage de formes
humaines 3D en mouvement.
MOTS-CLÉS :
Maillage déformable – Modélisation - Mouvement
1. Introduction
Il existe de nombreuses applications qui nécessitent des maillages performants pour
assurer un stockage compact, un transfert rapide, des animations en temps réel et des
calculs précis de formes 3D.
Ainsi : En calcul scientifique dans un but de simulation numérique, il est nécessaire
de mailler en surfacique ou en volumique au niveau macroscopique ou microscopique
1
pour vérifier ou prédire des mesures. Par exemple, les méthodes mathématiques des
éléments finis et des différences finies avec conditions aux limites s'appuient
obligatoirement sur un maillage. La précision des calculs est directement liée au choix
pertinent de celui ci.
A travers le calcul scientifique, le maillage est impliqué dans de nombreuses
disciplines, que se soit la physique, la mécanique des structures, les sciences de la terre
pour le traitement visuel des reliefs et de leur texture, la mécanique des fluides, la
météorologie, la chimie, la biologie,...
En Conception Assistée par Ordinateur, les modeleurs de CAO évoluent vers des
techniques de maillage capables de comprimer/décomprimer les informations dans un
but d'archivage et de transmission rapide des formes. Les échanges de données
techniques entre différents systèmes de CAO pour modifier et concevoir des produits
nécessitent des mailleurs capables de prendre en compte les nouveaux outils de
transmission des données que sont internet et intranet.
En Visualisation, les points captés par un numériseur 3D dans le volume ou sur la
surface d’un objet doivent servir à représenter visuellement l’objet dont ils sont issus.
La visualisation de la surface de l’objet passe par un maillage capable de répondre à des
critères de tolérance de bande, de continuité et de régularité de la surface.
En synthèse d'images et en animation le maillage est primordial pour assurer des
rendus et des animations réalistes. Les techniques de rendu, telles la radiosité et le
lancer de rayons, sont d’autant plus performantes en temps de calcul et en réalisme que
le maillage est bien fait. En animation, les techniques de "morphing" utilisent
directement les propriétés du maillage pour calculer les déformations des objets.
La création multimédia nécessite aujourd’hui de transmettre non seulement des
informations visuelles et auditives, mais aussi des informations gestuelles et tactiles.
Des logiciels de maillage adaptés à ces nouvelles contraintes de transmission et de
visualisation sont aujourd'hui en cours de développement.
Dans le domaine de la création de films d’animation et des jeux vidéo, le but est
essentiellement de produire des images et des films en un minimum de temps et de
pouvoir récupérer des séquences d’images déjà créées pour les réutiliser sans ou avec
modification. Les professionnels travaillent de plus en plus directement sur des objets et
des personnages animés 3D, et par conséquent la notion de maillage de surfaces devient
très importante, principalement par ses aspects stockage minimal et transmission rapide
des formes des objets. Il faut pouvoir accéder à des formes d’objets pas nécessairement
stockées sur place, mais disponibles via internet et via un serveur d’images. Il faut
pouvoir reconstituer une scène en temps réel, si possible sur des machines bas de
gamme possédées par la plupart des utilisateurs.
Dans le domaine des arts et plus particulièrement des arts corporels les gestes
doivent être captés par des interfaces modernes de captage du mouvement, gants ou
2
autre. La saisie du mouvement et sa restitution passe obligatoirement par un maillage de
la surface bien adapté aux traitements en temps réel.
Dans le domaine des réalités virtuelles la transmission des formes des objets et par
conséquent de leur maillage est souvent nécessaire puisque l'acteur est plongé dans un
monde dont les objets virtuels ne sont pas forcément tous définis sur les machines
locales mais sont transmis depuis un serveur distant. Pour que l’acteur puisse interagir
avec son environnement virtuel, le maillage doit permettre la transmission rapide des
formes et leur visualisation plus ou moins grossière en fonction de la distance acteurobjets virtuels.
Depuis plusieurs années nous nous intéressons au maillage de surfaces pour la
création d’images fixes et animées et au développement de logiciels d’application
(Gourret et al. 1989), (Khamlichi 1995), (Gourret et al. 2000). Nous avons développé
une technique de maillage d’objets déformables par des approches de coopération
Analyse-Modélisation-Synthèse.
Du côté recherche fondamentale, nous nous intéressons au maillage multirésolution
de surfaces, plus particulièrement à la subdivision et à la représentation par ondelettes
de maillages à éléments triangulaires et à éléments polygonaux à sommets 3 connexes.
Du côté recherche appliquée, nous nous intéressons à la création d’un système
logiciel de maillage composé d’un modeleur, d’un mailleur dynamique, de modules
d’animation, d’un module de texture et d’un module d’acquisition d’un nuage de points.
L’application principale à ce jour est la modélisation et le maillage de formes
humaines 3D en mouvement.
Dans le cadre de cet article nous traitons de la recherche appliquée et de son
application principale. Nous montrons quelques aspects du système logiciel de maillage
et comment utiliser le logiciel pour mailler une main humaine.
2. le système informatique MEFP3C
Les différentes composantes du système MEFP3C sont montrées sur la Figure1.
Modeleur
(Création d’un
Maillage topologique)
Animation
Mailleur
dynamique
Acquisition du
nuage de points
Plaquage de
la texture
Figure 1. Système informatique MEFP3C
3
Le système est entièrement écrit en C/C++ avec la bibliothèque graphique OpenGL
et l’interface glut. Nous donnons dans ce qui suit une idée de son fonctionnement pour
la main gauche d’un humain. Des démonstrations, des animations et des explications
plus concrètes sont téléchargeables à partir du site http://perso.univ-lr.fr/jpgourre
2.1. Le module d’acquisition d’un nuage de points
Le module d’acquisition d’un nuage de points permet d’obtenir des points sur la surface
d’une forme 3D. Le nuage de points est obtenu à partir des images fournies par le
« Visible Human Project » (VHP). Le projet VHP fournit des lamelles découpées dans
un corps congelé. Il comprend 1878 lamelles d’un millimètre d’épaisseur. Chaque
image comporte 2048x1216 pixels à la résolution 0,33mm. Un exemple est montré sur
la Figure 2 pour l’acquisition de la main gauche.
Figure 2. Le module d’acquisition d’un nuage de points (nuage2D)
Nous utilisons un snake2D attiré par un nuage2D. Le nuage2D est déterminé par
seuillage et algorithme de Sobel appliqué à la sous-image contenant la main gauche. Il
est matérialisé par les pixels blancs sur la figure 2. Le Snake2D est une corde
4
déformable en temps réel constituée de ressorts déformables compressibles et
extensibles reliés entre eux par des masses (nœuds circulaires sur la figure 2).
L’opérateur peut effectuer un guidage interactif (clic souris) pour forcer l’association
d’un pixel du contour (nuage 2D) avec un nœud du snake2D ou pour influencer une
direction. Après convergence vers le nuage2D, les nœuds du snake2D sont mémorisés.
Le (ou les) snake2D de chaque image sont ensuite concaténés pour former le nuage de
points de la peau et des os (Figure 3).
Figure 3. Le module d’acquisition d’un nuage de points (nuage3D)
2.2. Le modeleur
Le modeleur (Paradot et al. 2002) permet de définir des formes 2D ou 3D constituées de
facettes polygonales à sommets 3 connexes, et d’assembler plusieurs formes tout en
conservant les propriétés topologiques du maillage. Un exemple est montré sur la
Figure 4.
Figure 4. Le modeleur
5
2.3. Le mailleur dynamique
Le mailleur dynamique (Gourret 2000, Sadon 2002) permet de déformer un maillage 3
connexe créé par le modeleur, en attirant ses sommets vers les points d’un nuage3D
obtenus par le module d’acquisition. Un exemple pour un os et pour la peau de la main
gauche est montré sur la figure 5. Les points du nuage sont situés sur la surface de l’os
ou de la peau (nuage3D) et attirent le maillage topologique (un cylindre ou une main
topologique).
Figure 5. Le mailleur dynamique pour les os et pour la peau de la main gauche
2. 4. Le module de plaquage de texture
Le module de plaquage de texture (Bousseau et al. 2003) permet d’obtenir des formes
visuellement réalistes en plaquant plusieurs images de texture sur le maillage. Un
exemple est montré sur la Figure 6.
6
Fenêtre de
visualisation en 3
dimensions.
Fenêtre de
la texture
vue de
dessus 2D.
Plan de texture
Fenêtre de
la texture
vue de
dessous 2D.
Fenêtre du rendu
texturé 3D.
Figure 6. Le module de plaquage de texture
2.5. Le module d’animation
Le module d’animation permet d’animer un système articulé formé de segments. Ce
module a été développé pour pouvoir commander indirectement les déformations d’un
maillage englobant. Par exemple les déformations de la peau lorsqu’un doigt est plié. Le
calcul des déformations de la main réaliste avec texture est en cours de réalisation.
Noter que l’exemple montré sur la figure 7 ne prend pas en compte les déformations de
la peau au niveau des articulations.
Figure 7. Le module d’animation (exemples de configurations)
7
3. Conclusion
Le système logiciel que nous développons est destiné à inclure nos résultats de
recherches au fur et à mesure de leur avancement. Il permet ainsi de disposer d’un outil
de travail toujours remis en question. Nous avons montré dans cet article son état
actuel. Parmi les développements en cours, nous nous intéressons au maillage
multirésolution de surfaces, plus particulièrement à la subdivision et à la représentation
des maillages par ondelettes. En effet, le mailleur dynamique implique un maillage
grossier pour permettre le calcul rapide des déformations. Cette contrainte est en
contradiction avec un rendu visuel réaliste des surfaces où l’on doit être capable de
prendre en compte la continuité de la surface limite lors des processus de subdivision
stationnaires (sadon 2002), (chaieb 2003). Par conséquent, le maillage doit être évolutif.
On doit pouvoir subdiviser avant/après/pendant le maillage dynamique et pendant les
animations. Une subdivision locale pendant le maillage dynamique est nécessaire pour
atteindre les creux de l’objet défini par son nuage3D. Une subdivision globale est
nécessaire lorsque la distance observateur-objet est modifiée. Ces contraintes peuvent
être respectées en utilisant des approximations à différents niveaux dans la
représentation par ondelettes. La représentation par ondelettes autorise également la
compression des fichiers de maillage (Lounsberry et al. 1997), (sadon 2002).
Ont participé à ce travail d’anciens étudiants de départements informatique d’IUT (options IGI, ISI, IN), qui
ont poursuivi leurs études en IUP, lors de leur stage au niveau licence.
Bibliographie
Chaieb K. « Subdivision des surfaces », stage DEA image&Calculs, Univ. LR, 2003.
Sadon N. « Maillage multirésolution de surfaces », stage DEA image&Calculs, Univ.LR, 2002.
Gourret J.P. « Maillage multirésolution de surfaces pour la modélisation d’images », livre
électronique, http://perso.wanadoo.fr/jean-paul.gourret, 2000.
Lounsbery M, DeRose T.D., Warren J. “multiresolution analysis for surfaces of arbitrary
topological type”, ACM Trans. on Graphics, vol. 16(1), pp.34-71, 1997.
Paradot M., Foucher T. « main topologique en 3 dimensions », stage IUP GMI, Univ. LR 2002.
Bousseau A., Guichard M. « Modélisation et maillage de formes humaines texturées », stage IUP
GMI, Univ. LR, 2003.
Khamlichi J. « Modélisation de déformations d’images tridimensionnelles, Application aux
structures de données de visages », Thèse, Univ. de La Rochelle, 1995.
Gourret J.P., Magnenat-Thalmann N., Thalmann D. « simulation of objects and human skin
deformations in a grasping task », ACM SIGGRAPH’89, Computer Graphics, Boston, Vol. 23(3),
pp.21-31, 1989.
Gourret J.P., Khamlichi J. « Un outil informatique pour le langage des signes et la chorégraphie »
Actes des rencontres internationales Arts, Sciences et Technologies, 2000, Univ. De La Rochelle.
8

Documents pareils