Télécharger la présentation
Publié parAchille Grimaud Modifié depuis plus de 10 années
1
Simulation d’éclairage dans des environnements architecturaux complexes : approches séquentielle et parallèle Daniel Meneveaux Kadi Bouatouch
2
Plan Introduction Problématique Structuration Modélisation
Regroupement de surfaces Radiosité séquentielle Conclusion et perspectives
3
Introduction Simuler les transferts d’énergie lumineuse entre les surfaces d’un environnement Architectes, éclairagistes (placement de luminaires) Évaluer différents paramètres de confort visuel : niveau d ’éclairement éblouissement Acquisition des propriétés photométriques des matériaux (spectrophotomètres) Utilisation d ’un modèle mathématique exprimant les interreflexions lumineuses
4
Introduction modèle d’éclairement
Équation de luminance : k : réflectance bidirectionnelle Le : luminance auto-émise q : angle du rayon incident
5
Introduction équation de radiosité
Hypothèse : Surfaces diffuses Bi : radiosité du carreau i ri : réflectivité du carreau i Ei : radiosité auto-émise par le carreau i Fij : facteur de forme entre les carreaux i et j Résolution de ce système à l ’aide de méthodes itératives (Jacobi / Gauss-Seidel / Southwell)
6
Introduction Radiosité hiérarchique
Maillage hiérarchique des surfaces afin de réduire le nombre de mailles Création de liens entre les mailles afin d ’accélérer les calculs Liens d ’interaction Mailles Surface A Surface B
7
Plan Introduction Problématique Structuration Modélisation
Regroupement de surfaces Radiosité séquentielle Conclusion et perspectives
8
Problématique
9
Problématique 20 000 surfaces :
mailles 1 million de liens 1 Go de mémoire Comment faire avec plusieurs millions de surfaces ? Calcul de radiosité Visualisation (interactive)
10
Problématique Solutions
Découper l’environnement en plusieurs sous-parties appelées cellules Précalculer les relations de visibilité entre ces cellules Effectuer les calculs de radiosité seulement sur un sous-ensemble de cellules à la fois
11
Problématique solution : architecture
géométrie Structuration SIM_SEQ Modeleur BDD RAD Cellules 3D Regroupement de surfaces SIM_PAR VISU Clusters
12
Plan Introduction Problématique Structuration Modélisation
Regroupement de surfaces Radiosité séquentielle Conclusion et perspectives
13
Structuration Objectif «diviser pour mieux régner» : Résultat :
Découper l’environnement en plusieurs régions appelées «cellules» 1 cellule = 1 pièce, 1 couloir, etc. Calculer les relations de visibilité inter-cellules Résultat : 1 liste de cellules 1 graphe de visibilité
14
Structuration l’existant
Découpage binaire de l’espace BSP [Fuchs80]: Utilisé par J.M. Airey en 1990 (environnements axiaux) Repris par Teller en 1992 Découpage binaire récursif de l’environnement Chaque partie est découpée à l’aide d’un seul plan Déterminé selon des heuristiques empiriques (polygone le plus occlusif, découpant le moins de surfaces possibles, etc..) Résultats : De trop nombreuses cellules Ne respectant pas la topologie de l’environnement Ne fonctionne que pour certains bâtiments : axiaux
15
Structuration notre approche
Déterminer des «plans de découpage» verticaux : associés à plusieurs polygones verticaux quasi-alignés à l’aide d ’un espace dual Extraire des cellules : selon une méthode basée modèle base de règles fonctionne pour tout type de bâtiment Déterminer les ouvertures de chaque cellule : situées sur les plans de découpage Construire un graphe de visibilité
16
Structuration plans de découpage
Espace dual q,r : q représente l ’angle entre la normale du polygone et l ’axe Ox du repère de la scène r correspond à la distance orthogonale entre le plan du polygone et l’origine du repère global de la scène Polygone vertical z Aire r y Normale q r x q
17
Structuration plans de découpage
Classification : Regrouper les points de l’espace dual proches les uns des autres <=> regrouper des polygones verticaux quasi-alignés Méthode de classification de type BSP : Découpage selon l’axe q Puis selon l’axe r r P1 P2 P3 P2 P3 P4 P4 q P1
18
Structuration plans de découpage
1 plan de découpage associé à chaque groupe de polygones verticaux représentés dans l’espace dual Déterminé par qs et rs : rs tel que : le demi-espace défini par Ns.Ps + rs >= 0 contienne tous les polygones associés aux points appartenant au cluster
19
Structuration plans de découpage
20
Structuration Base de règles
Cellules rectangulaires contraintes Cellules rectangulaires non contraintes Couloirs avec deux murs parallèles Pièces convexes quelconques : suivi de contours 1 3 4 2
21
Structuration création des ouvertures
Ouvertures situées sur les plans de découpage Plan de découpage Chambranle (de porte)
22
Structuration création du graphe de visibilité
Création d’un graphe d’adjacence 1 nœud = 1 cellule 1 arc = 1 ouverture commune Création du graphe de visibilité Parcours du graphe d’adjacence en profondeur Échantillonnage des ouvertures Calculs de visibilité à l’aide de lancé de rayon
23
Structuration découpage semi-interactif
Sélection d’une zone 3D
24
Structuration découpage semi-interactif
Extraction de la cellule 1
25
Structuration découpage semi-interactif
Extraction de la cellule 2
26
Structuration découpage semi-interactif
Extraction de la cellule 3
27
Structuration découpage semi-interactif
Extraction de la cellule 4
28
Structuration découpage semi-interactif
Extraction de la cellule 5
29
Structuration découpage semi-interactif
Zone bleue = cellules extraites
30
Structuration découpage semi-interactif
Extraction d’une cellule quelconque (suivi de contour)
31
Structuration découpage semi-interactif
Extraction d’une cellule quelconque (suivi de contour)
32
Structuration découpage semi-interactif
Après extraction de toutes les cellules Fenêtre de visualisation
33
Plan Introduction Problématique Structuration Modélisation
Regroupement de surfaces Radiosité séquentielle Conclusion et perspectives
34
Modélisation Pourquoi structurer l’environnement après sa modélisation ? Plus simple d’utiliser les connaissances de l’utilisateur pour effectuer une structuration efficace Solution : Outil interactif permettant de modéliser rapidement des environnements très complexes Guider la structuration par une modélisation modulaire
35
Modélisation module pièce
36
Modélisation création d’ouverture
Description d’une ouverture
37
Modélisation module bâtiment
38
Plan Introduction Problématique Structuration Modélisation
Regroupement de surfaces Radiosité séquentielle Conclusion et perspectives
39
Regroupement de surfaces problématique
A partir d’une cellule => de nombreuses surfaces sont visibles Calculs de radiosité pour 1 seule cellule => taille mémoire importante
40
Regroupement de surfaces solution
Comment affiner encore les relations de visibilité ? Construire des groupes de surfaces proches les unes des autres : le «clustering» Évaluer les relations de visibilité inter-«cluster»
41
Regroupement de surfaces travaux existants
Subdivision spatiale : grilles 3D régulières, arbres BSP, arbres quaternaires, octrees, etc. Techniques nécessitant la création d’une hiérarchie de volumes, approche descendante Critères empiriques et peu intuitifs
42
Regroupement de surfaces notre approche
Pas de gestion de hiérarchie, méthode ascendante Technique de classification de type k-means : les nuées dynamiques : Barycentres mobiles usuellement utilisée en 2D
43
Regroupement de surfaces les nuées dynamiques en 3D
Nombre de groupes = nb_total / nb_moyen nb_total = nombre total de polygones nb_moyen = nombre moyen de polygones par groupe, fixé par l’utilisateur Choix des barycentres : de manière aléatoire parmi les sommets des polygones Distance entre un barycentre et une surface = distance au barycentre du polygone Barycentre d’un groupe de polygones = barycentre des barycentres
44
Regroupement de surfaces application aux environnements complexes
Utilisation de la structuration de l’environnement Regroupement effectué pour chaque cellule accélération des calculs réduction des données en mémoire
45
Regroupement de surfaces calculs de visibilité
Boîte englobante associée à chaque cluster Zone visible d’un cluster C à travers une ouverture pyramide à l’intérieur d’une cellule déterminée par l ’ouverture et la boîte englobante de C Cluster C Cellule Zone visible de C (pyramide) Ouverture
46
Regroupement de surfaces propagation de la visibilité
Si une ouverture est contenue dans la pyramide, alors les objets situés de l ’autre côtés de l ’ouverture peuvent être visibles Cluster C Nouvelle pyramide
47
Regroupement de surfaces interface graphique
Visualisation des relations de visibilité
48
Regroupement de surfaces interface graphique
Visualisation des relations de visibilité
49
Plan Introduction Problématique Structuration Modélisation
Regroupement de surfaces Radiosité séquentielle Conclusion et perspectives
50
Radiosité séquentielle travaux antérieurs
Une seule approche : [Teller94] Objectif : maintenir une bonne localité des données en mémoire 4 heuristiques : choix aléatoire du cluster (étalon) choix du cluster = ordre de modélisation source : choisir le cluster ayant servi comme émetteur le plus souvent choix BSP : ordre obtenu par le découpage
51
Radiosité séquentielle notre contribution
Proposer de nouvelles heuristiques Prenant effectivement en compte les accès-disque Objectif : prédire les coûts des échanges disque/mémoire à court terme à moyen terme à long terme
52
Radiosité séquentielle stratégies « glouton » S et C
Choix d’une cellule à un instant donné : Sans se préoccuper des coûts à long terme l’ordre global n’est pas optimal (en terme d’E/S) Glouton S : Coûts évalués en terme de polygones donnés par le modeleur cellules contenant beaucoup de polygones choisies en fin d’itération Glouton C : Coûts évalués en terme de cellules (ou clusters) Afin de favoriser la réutilisation des cellules (ou clusters) déjà en mémoire
53
Radiosité séquentielle stratégies « retour-arrière » S et C
Prévision de coûts à moyen terme Création d’un arbre de recherche de profondeur N Choix du chemin optimal (de longueur N) dans cet arbre Ci
54
Radiosité séquentielle stratégie du « voyageur de commerce »
Pour prévoir à long terme les coûts d ’E/S Problème équivalent au voyageur de commerce (VC) NP-complet Utilisation d’un algorithme classique de résolution VC Orientation et valuation du graphe de visibilité (=> GVC) Recherche d’un cycle passant par tous les nœuds de GVC Effectuer les calculs de radiosité en suivant ce chemin Inconvénients : Coûts d’écriture impossibles à prévoir Pour un graphe trop important, temps de calcul prohibitif
55
Radiosité séquentielle architecture logicielle
Tableau de clusters (ou cellules) EnMémoire[ ] Graphe de visibilité Module d’ordonnancement Module de Radiosité Mémoire principale (RAM) Disque dur
56
Radiosité séquentielle stratégie « voyageur de commerce »
57
Radiosité séquentielle résultats
Scène 615 cellules, surfaces et clusters, mailles, 1.5 Millions de liens (maillage grossier) Taille mémoire minimale avec les cellules : 150 Mo avec les clusters : 60 Mo Temps dus aux accès-disque = env. 1/10 du temps total Stratégie aléatoire Max énergie Glouton S Glouton C Ret-Arr S Ret-Arr C Voy Comm Cellules 229 mn 280 mn 161 mn 140 mn 1378 mn 975 mn 130 mn Clusters 152 mn 186 mn 107 mn 93 mn 918 mn 650 mn Plusieurs jours
58
Plan Introduction Problématique Structuration Modélisation
Regroupement de surfaces Radiosité séquentielle Radiosité hiérarchique parallèle Conclusion et perspectives
59
Radiosité hiérarchique parallèle problématique
Calculs de simulation d’éclairage encore trop longs Solution : répartir les calculs et les données sur plusieurs processeurs Comment répartir efficacement les données ? Equilibrage de charge dynamique Convergence de l ’algorithme de radiosité parallèle Gestion de la terminaison des processus
60
Radiosité hiérarchique parallèle travaux antérieurs
Funkhouser : Utilisation d ’algorithmes parallèles de type maître-esclave Beaucoup de messages envoyés Taille des messages importante Feng et Yeng : Également maître-esclave, Grain plus fin Taille des données importante en mémoire des processeurs Taille des messages importantes Remarque : L. Renambot IRISA : cas de radiosité parallèle non hiérarchique
61
Radiosité hiérarchique parallèle nos objectifs
Portabilité : Réseau hétérogène de machines Machine parallèle Les deux ensemble Utilisation de l ’environnement de programmation MPI Réduction de la taille des messages et de leur nombre Répertoire commun à tous les processeurs Équilibrage de charge (statique & dynamique) Terminaison et convergence de l’algorithme de radiosité
62
Radiosité hiérarchique parallèle déroulement des calculs
Algorithme de type SPMD Nœud du graphe = cluster (1) découpage de GV (nuées dynamiques) (2) Distribution des données
63
Radiosité hiérarchique parallèle organisation des données sur le disque commun
Répertoire commun (Itération k) P 1 P 2 P 3 P i P n (Itération k+1) Répertoire local au processeur i
64
Radiosité hiérarchique parallèle algorithme
Lire sur le disque le graphe de visibilité Tant que non convergence, faire (1 itération) : Pour chaque cluster C attribué faire : Choisir(C) // algorithme du voyageur de commerce Lire(C) // et ses clusters visibles sur le disque RadiositéGaussSeidel(C) EquilibrageChargeDyn() // à chaque itération ReconfigurationAnneau() Synchronisation() // tests de convergence Pas de messages
65
Radiosité hiérarchique parallèle résultats
TEMPS ACC. 1 SUNULTRA 16920mn 1 2 SUNULTRA 6552mn 2.5 3 SUNULTRA 5394mn 3.2 4 SUNULTRA 4338mn 3.9 1 SGI mn 3.7 8 PROCS 2880mn 5.9 10 PROCS 2160mn 7.8
66
Radiosité hiérarchique parallèle résultats
67
Plan Introduction Problématique Structuration Modélisation
Regroupement de surfaces Radiosité séquentielle Conclusion et perspectives
68
Conclusion et perspectives conclusion
Calculs de radiosité pour des environnements complexes : temps de calculs prohibitifs, problèmes de stockage mémoire Prétraitement : découpage de l ’environnement en cellules regroupement de surfaces (clusters) Simulation d’éclairage : réduction des accès-disque (stratégies d ’ordonnancement) calcul parallèle Visualisation interactive : Avant, pendant, après les calculs de radiosité
69
Conclusion et perspectives perspectives
Adaptation au découpage à des environnements complexes d’extérieur (urbains ou ruraux) Adaptation / ajout de nouvelles règles Modélisation : A compléter et rendre plus opérationnelle (Y. Bertrand) Rendu-basé-image Réalisme des images résultantes Réduction de certains traitements
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.