Catégorie : Graphisme     Tags :      

    Retrouvez cet article dans : Linux Pratique 44

    Il faut avouer que les noms de ces applications ne sont guère explicites. Il suffira de dire que, conjointement, elles permettent à l'utilisateur de préparer et créer des images HDR (High Dynamic Range ou Grande Gamme Dynamique) [1].

    1 L'imagerie à grande gamme dynamique (High dynamic range imaging ou HDRI) regroupe un ensemble de techniques numériques permettant d'obtenir une grande plage dynamique dans une image. Son intérêt est de pouvoir représenter ou de mémoriser des niveaux d'intensités lumineuses très différents dans une même image. Cette technique s'effectue en permettant d'attribuer plus de valeurs à un même pixel. Source : Wikipédia.

    Les applications sont multiples, allant de l'imagerie au jeu vidéo. Par exemple, lorsque vous prenez une photographie avec votre appareil numérique, en fonction de l'exposition choisie, vous risquez d'obtenir de grands aplats sombres dans les zones d'ombres ou une surexposition dans les zones lumineuses (images bouchées, brûlées). Dans ces conditions, il est difficile de proposer au spectateur des images qui montrent toute la richesse et la subtilité des sujets initiaux. Il va donc s'agir de produire des images dotées d'une grande gamme dynamique, qui ne masqueront aucun des détails réels sur la photographie. Ensuite, en utilisant la technique du tonemapping, il sera possible de générer une image LDR (Low Dynamic Range) [1] qui, en fonction de l'algorithme utilisé, s'efforcera de restituer un maximum de la richesse du sujet initial.
    Le principe de création d'une image HDR repose sur quelques étapes simples :

    • Prise de photographies : le même sujet sera pris avec différentes expositions (entre 3 et 5 photos peuvent être nécessaires pour restituer au mieux la richesse de l'original) ; il est nécessaire de ne pas bouger, l'utilisation d'un trépied peut s'avérer commode.
    • Préparation des images : si, comme moi, vous n'avez pas de trépied, essayez de poser votre appareil photo sur une surface stable, et prenez vos images en modifiant à chaque fois l'exposition. Utilisez alors un script comme hdrprep qui va se charger d'analyser les images et les superposer parfaitement.
    • Génération de l'image HDR : cette étape est assurée par qtpfsgui qui va fusionner toutes les images prises en se servant des différents niveaux d'exposition pour restituer un maximum de détails sur toute la gamme d'exposition. De telles images ne sont pas affichables sur un écran, seule une partie de l'histogramme est visualisable.
    • Retour à une image LDR : à nouveau, c'est qtpfsgui qui pourra se charger de cette opération. Le but est de fournir un image LDR (donc classique et parfaitement visualisable) qui aura été retouchée pour montrer l'essentiel des détails (tonemapping) du sujet original, ce qu'une photographie classique n'aurait normalement pas permis.

    Il ne nous reste maintenant plus qu'à voir comment mettre en oeuvre ce processus grâce aux outils libres à notre disposition.

    Installation

    Deux programmes seront nécessaires : hdrprep et qtpfsgui.
    hdrprep est un script perl qui peut être téléchargé sur le site du projet [2]. Il nécessite quelques dépendances pour être fonctionnel (sur Ubuntu : ale, perl, imagemagick, perlmagick, libimage-exiftool-perl). Vous pouvez placer le script dans /usr/bin, par exemple, afin de le rendre accessible par tous les utilisateurs de votre machine.
    Vous trouverez sur le site de la Belette [3] une liste de dépôts Ubuntu en fonction de votre distribution, ainsi que des instructions pour la compilation manuelle de qtpfsgui. Vous trouverez toutefois dans la section Download du projet Qtpfsgui [4] des liens vers des sites proposant des paquets pour Slackware, Fedora Core 6, openSUSE 10.2, Gentoo, Pardus et Debian.

    /img-articles/lp/44/cc-art-HRD/fig-1.jpg

    Fig. 1 : Trois photos *.JPG d'un petit jardin prises avec trois niveaux d'exposition différents.

    Usage

    Nous considérons dans cette présentation que vous avez déjà entre 3 et 5 photographies, prises à partir du même point raisonnablement immobile (trépied ou à « main levée »), mais à des expositions différentes.
    Par exemple : voir figure 1.
    À partir d'une console, placez-vous dans le répertoire contenant vos trois images à préparer et lancez la commande hdrprep.pl -a *.JPG. Le programme va passer un certain temps à analyser les images et à les aligner. Il va placer les trois images résultantes dans un sous-répertoire aligned/.
    Lancez maintenant Qtpfsgui, et cliquez sur l'icône New Hdr... Un assistant fait son apparition (Fig. 2), vous invitant à sélectionner vos images d'entrées (dans mon cas, seulement trois images d'expositions différentes). Le deuxième panneau (Next>) vous offre des paramètres permettant de contrôler la phase de génération de l'image HDR, mais il est rappelé que la Configuration 1 par défaut ne doit être changée que si le HDR résultant n'est pas satisfaisant. Pour notre part, nous accepterons la configuration de base et passerons au dernier panneau (Next>).
    Un dernier panneau vous fait part du succès de l'opération et charge l'image HDR résultante dans une nouvelle fenêtre. Nous avons déjà souligné qu'il n'était pas possible d'observer une image HDR sur un écran, car c'est nécessairement une version LDR de celleci qui est affichée. Au-dessus de l'image chargée, toutefois, se trouve un histogramme de l'image, avec une bande représentant la gamme visible de celleci.
    Vous pouvez cliquer/déplacer cette gamme dans un sens ou l'autre, révélant ainsi différentes gammes d'exposition. Le menu View > HDR Histogram vous permet notamment de jouer avec les différentes gammes pour faciliter leur visualisation.
    Nous passerons sur les autres possibilités (menus Image, View, Tools) que vous n'aurez normalement pas de mal à découvrir et maîtriser seul, pour passer au tonemapping de l'image HDR. En effet, si vous comptez réutiliser l'image HDR dans une application 3D, vous pouvez utiliser l'icône Save Hdr as... pour enregistrer celle-ci sous différents formats (OpenEXR et Radiance RGBE, notamment) ; grâce à celle-ci, il vous sera possible de créer des éclairages artificiels de plus grande richesse tout en donnant à vos objets métalliques quelque chose à refléter.
    Mais si votre application principale est la photographie, vous cliquerez plutôt sur Tonemap the Hdr pour piloter précisément le processus d'une image LDR qui révèlera tous ses détails tout en restant plaisante à l’oeil. Une nouvelle fenêtre fait son apparition, divisée en deux parties : à gauche, les paramètres de tonemap, les différents algorithmes étant présentés sous formes d'onglets ; à droite, il est possible de visualiser l'image LDR résultante. L'opération de conversion pouvant être longue, il est suggéré de travailler sur des vignettes de plus petite dimension et d'agrandir l'image à mesure que l'on affine les réglages, jusqu'à utiliser le format final souhaité (menu déroulant
    Result Size et bouton Save Image).
    En fonction de l'image, des effets recherchés et de votre expérience personnelle, vous choisirez un algorithme ou un autre, et n'oublierez pas le bouton Apply pour voir l'image LDR résultante. Sur le site de la Belette se trouvent des exemples d'application de chacun d'eux [5] et l'auteur affirme sa préférence pour l'algorithme Drago, notamment. Expliquer les paramètres de tous les algorithmes sort toutefois du cadre de cette présentation, mais vous trouverez, sur le site PhotoNumérigraphie [6] ou le Blog de la photographie HDR [7], quelques très belles images montrant la richesse des détails qu'il est possible d'obtenir grâce au tonemapping.

    /img-articles/lp/44/cc-art-HRD/fig-2.jpg

    Fig. 2 : Les principales étapes de l'assistant de génération d'une image HDR

    /img-articles/lp/44/cc-art-HRD/fig-3.jpg

    Fig. 3 : Exemple d'image tonemappée : la richesse du ciel est restituée tout en gardant lisible le sol inégal du jardin. Quelques corrections complémentaires dans The Gimp permettront de la rendre plus attrayante !

    LIENS

    • [1] LDR sur Wikipédia [en] : http://en.wikipedia.org/wiki/Low_dynamic_range_rendering
    • [2] Hdrprep [en] : http://www.luxal.eu/resources/hdr/hdrprep/index.shtml
    • [3] Le HDR sous Linux : http://bellette.tuxfamily.org/tutos/hdr/3.php
    • [4] Qtpfsgui [en] : http://qtpfsgui.sourceforge.net/
    • [5] Le tonemapping, didacticiel : http://bellette.tuxfamily.org/pixelpost/index.php?x=page&title=hdr5tonemapping
    • [6] PhotoNumérigraphie : http://www.gabrielmichel.com/
    • [7] Le Blog de la photographie HDR : http://fullframe.free.fr/blog/

     

    Retrouvez cet article dans : Linux Pratique 44

    Posté par Olivier Saraja (olivS) | Signature : Olivier Saraja | Article paru dans Creative Commons License

    Laissez une réponse

    Vous devez avoir ouvert une session pour écrire un commentaire.

    • Il y a actuellement

    • 861 articles/billets en ligne.