Thèse soutenue

Architecture logicielle et algorithmes pour la résolution de l'équation de radiance
FR  |  
EN
Accès à la thèse
Auteur / Autrice : Slimane Merzouk
Direction : Jean-Claude Paul
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance en 1997
Etablissement(s) : Vandoeuvre-les-Nancy, INPL
Ecole(s) doctorale(s) : École doctorale IAEM Lorraine - Informatique, Automatique, Électronique - Électrotechnique, Mathématiques de Lorraine
Partenaire(s) de recherche : Laboratoire : Centre de recherche en informatique (Vandoeuvre-lès-Nancy, Meurthe-et-Moselle)
Jury : Président / Présidente : Jean-Laurent Mallet
Rapporteurs / Rapporteuses : Didier Arquès, Claude Kirchner, François X. Sillion

Résumé

FR

Les méthodes utilisées pour résoudre l'équation de radiance sont fondées aujourd'hui sur des approximations qui permettent de rendre le problème calculable. Dans les approches développées à ce jour, on distingue les méthodes d'échantillonnage et les méthodes variationnelles. Notre travail se situe dans le cadre de cette dernière approche, et apporte des contributions à deux niveaux : au niveau théorique. Dans les solutions actuelles, les hypothèses physiques sont actuellement restrictives au niveau de la composition spectrale de la lumière. Pour remédier à ce problème nous proposons un algorithme permettant de traiter des distributions continues et discontinues. Au niveau pratique nous croyons qu'une meilleure connaissance des problèmes liés à l'implantation des algorithmes qui concourent à la résolution de l'équation de radiance est utile. Nous avons pour cela construit une architecture logicielle permettant d'implanter les algorithmes et les structures de données nécessaires à cette résolution. L’originalité de la conception de cette architecture, que nous avons souhaité la plus flexible et évolutive possible constitue une contribution majeure de cette thèse. Nous montrons en particulier comment des solutions intégrant des fonctions physiques plus complexes (general reflectance function), des options différentes (discontinuity meshing, importance error-driven), ou des techniques de calcul par raffinement plus élaborées (clustering) peuvent être intégrées à notre architecture, en réutilisant une grande partie du code, et en conservant une bonne stabilité et de bonnes performances.