Pour contruitre la carte d'environnement HDr, on utilise la sphère métallique. Tout d'abord, on utilise un trépied pour avoir une ca,éra stable, puis on capture la sphere avec différentes exposition. On veux que chaque pixel soit capturé au moins une fois dans la zone linéaire de la caméra (entre ~ 5 et 250). Ici, je n'ai pas pris de chances et j'ai pris plus de photos que nécéssaire, chaque photo ayant une exposition deux fois plus faible que la précédente.
ex
ex
ex
ex
ex
ex
ex
ensuite, pour faire la fusion, il faut découper les boules une à une. La méthode que j'ai utilisé consiste à faire une sélection circulaire dans gimp, puis d'alligner chacune des images tour à tour pour que la sphere soit dans la sélection. Ainsi, on se retrouve avec des sphères découpées de même grosseur.
Comme j'avais de la misère à faire comprendre à matlab que les pixels autour de la sphere sont transparents, je les ai tous mis en noir ce qui revient à leur donner une valeur négligeable.
Ensuite, pour la fusion, on utilise la méthode (et le code) proposé dans l'article de 1997 "Recovering High Dynamic Range Radiance Maps from Photographs" de Debevec et Malik.
Pour calculer g, j'utilise 200 points et une fonction de poids triangulaire. le k choisis est de 4, qui donne les courbes suivantes pour la 2e série d'images:
g (R, G et B) quand k=0.1
g (R, G et b) quand k=4
On utilise ensuite g pour reconstruire une image HDR avec des valeurs linéaires. L'un de mes résultats est enregistré en format .hdr, l'autre en format .exr (avec le code hdr_imwrite de JF).
En visualisant les resultats avec pfsview, on voit bel et bien que les pixels provenant des sources de lumière sont bien plus lumineux que le reste de l'image. De plus, on remarque égalmenet qu'ils ne sont pas saturés.
sphere 1
sphere 2
sphere 2 source lumineuse
La première scène modélisée est une scène intérieure contenant de la lumière extérieure. On peut voir sur la sphère un plan lumineux à cause de la fenètre. Cela creer beaucoup de richesse et de realisme dans la lumière.
Pour creer le plan virtuel dans blender, je creer d'abord un plan horizontal, puis je place la caméra approximativement. Puis j'utilise le mode "first person view" pour controller la caméra et alligner le plan correctement avec la scène.
Pour réaliser la composition, on utilise la technique proposée. Je fais plusiuers rendus, un avec les objets, un sans les objets et un masque. Puis, en soustrayant le plan de l'images des objets (exclaunt le masque) on obtient les ombres qu'on peut ajouter à la scene.
objets rendus
plan seul
masque
Composition
Les ombres sont réalistes, mais ne sont pas tout à fait compatibles avec la scene. En effet, elles ne sont pas tout à fait alignées correctement. Je viens de réaliser que la raison de cette erreur est la modélisation Blender. En effet, j'ai assumé que la carte d'environnement s'allignait avec la caméra, donc que peu importe la position de la caméra dans le monde 3D le rendu serait beau. Par contre, cela était une erreur puisque la carte d'environnement est alignée avec le monde 3D et non la caméra.
Pour ce qui est de la 2e scène, j'ai décidé d'utiliser une source de lumière ponctuelle très lumineuse. Il s'agit d'une pièce obscure avec une forte source lumineuse illuminant la pièce. On peut voir dans la sphere HDR que la source est belle et bien plus lumineuse que le reste de la scène. La méthode pour creer la composition est la même que la composition 1.
Cette deuxième composition comporte deux objets. Le chien est constitué d'une surface diffuse, tandis que la boite est une surface semi-reflechissante.
Composition
Encore une fois, les ombres sont mal alignées du au positionnement 3D de la caméra dans blender. De plus, l'ombre est bien moins définie qu'avec l'objet réel se trouvant dans la pièce. En effet, je pense que la sphère métallique a créée beaucoup de reflets autour de la source lumineuse, ce qui rend la source plus diffuse et moins ponctuelle, diminuant les effets d'ombrages.