Projet: Images HDR avec opérateur Mantiuk : intégration de visage humains

Introduction

Le but de la photographie HDR est normalement de générer une image qui approxime de façon photoréaliste la plage dynamique de l'oeil humain. Étant donné la grande diversité des images et des effets recherchés, les opérateurs de tonemapping possèdent des paramètres pouvant être ajustés selon la situation et l'apparence désirées. Certains de ces opérateurs, lorsqu'on pousse leurs paramètres à l'extrême, permettent de générer des effets non-photoréalistes intéressants. L'un des opérateurs très utilisé dans ce sens est l'opérateur de Mantiuk (A Perceptual Framework for Contrast Processing of High Dynamic Range Images).

Utilisation de l'opérateur de Mantiuk dans la création d'images non-photoréalistes

L'opérateur de Mantiuk se base sur le fait que l'oeil humain tend plus à percevoir les contrastes que les différences de luminance à proprement parler. Il vise donc à préserver les contrastes dans les zones de hautes fréquences comme dans les zones de basses fréquences. L'algorithme tel qu'implémenté dans les logiciels de création d'images HDR possède un paramètre qui permet d'ajuster ces contrastes en fonction du bruit. En poussant ce paramère à l'extrême, on peut générer des images où les textures sont accentuées et peuvent prendre l'aspect d'un dessin au crayon. Voici quelques exemples où cet effet est utilisé à des fins artistiques :

La façon dont l'opérateur accentue les contrastes a cependant pour effet d'accentuer de façon peu flatteuse les imperfections ou les ombres sur les visages. On voit donc rarement des personnes dans les photos traitées avec l'opérateur Mantiuk avec un facteur de détail élevé. Une autre limitation qui est aussi commune aux autres techniques de photographie HDR est que le mouvement de la personne d'une photo à l'autre risque de provoquer du ghosting. Voici deux exemples d'images générées avec l'opérateur de Mantiuk où l'on peut observer ces effets indésirables :

Accentuation des ombres sur le visage
Ghosting

Premier essai : Composition en utilisant une image originale et un masque

L'image que l'on veut générer est une image ou la scène montre l'effet d'accentuation des contrastes de l'opérateur Mantiuk et les visages humain ont un aspect plus lisse. Une façon de produire cette image serait de faire une composition de l'image HDR avec une des images qui ont servit à la générer, préférablement une où les visages sont bien exposés. Pour ce faire, on a besoin de trois images : l'image non-traitée, l'image HDR, et le masque qui va permettre d'effectuer a composition. Le masque est créé avec GIMP en sélectionnant la zone occupée par les visages et en la remplissant de blanc. Le reste de l'image est rempli de noir. L'effet de feathering est généré en passant un filtre gaussien d'une taille variable sur le masque.

Image HDR
Image originale
Masque

Le résultat obtenu est le suivant:

Comme on peut le constater, la frontière entre les deux images est très visible. Ce problème n'est pas réglé en applicant un filtre gaussien plus large sur le masque pour avoir une transition plus douce. L'image originale est trop différente du point de vue de sa coloration ce qui rend la démarcation très apparente entre les deux.

Atténuation des différences de coloration entre les images par ajustement d'histogramme

L'aspect très différent des couleurs de l'image modifiée et des images d'origines est très apparent lorsqu'on compare leurs histogrammes :

Histogramme du canal rouge de l'image originale
Histogramme du canal rouge de l'image HDR

L'histogramme de l'image HDR a une forme presque gaussienne et est compressé vers les valeurs basses. L'histogramme de l'image originale est plutôt aléatoire et concentré vers les hautes intensités. Pour que la coloration de l'image originale soit globalement semblable à celle de l'image HDR, cette dernière est donc modifiée de façon à ce que sont histogramme soit semble à celui de l'image HDR. Pour ce faire, l'histogramme de chacun des canaux de l'image HDR est calculé. Les histogrammes de chacun des canaux de l'image originale sont ensuite ajustés selon l'histogramme correspondant dans l'image HDR. Cette opération permet d'obtenir l'image suivante :

En faisant la composition à l'aide du masque tel que décrit à la section précédente, on obtient cette fois l'image suivante :

La frontière du masque devient pratiquement invisible et le visage cadre plus avec la scène. Voici d'autres exemples obtenus avec la méthode :

Image HDR de départ
Image composée
Image HDR de départ
Image composée
Image HDR de départ
Image composée

Comme on peut voir pour la dernière image, la technique ne fonctionne pas toujours parfaitement en cas de mouvement du sujet. Dans ce cas-ci, elle produit un artéfact visible du coté gauche du visage.

Autres exemples : composition avec l'opérateur de Mantiuk

La technique peut aussi être utilisée pour d'autres type de composition avec des images générées avec l'opérateur de Mantiuk. Par exemple, on peut désirer conserver l'effet non-photoréaliste pour la fourrure des chats sans affecter la zone autour du museau et des yeux. Pour ce faire, il suffit d'utiliser les trois images suivantes :

Image HDR
Image originale
Masque

Le resultat obtenu est le suivant :

Il est possible d'effectuer la composition dans les deux sens. Dans l'exemple suivant, on génère une image où l'objet est HDR dans une scène ajustée et une autre dans laquelle l'objet est ajusté dans une scène HDR :

Image HDR
Image originale
Masque
Scène HDR
Objet HDR

Conclusion et amélioration possible

Une des limites de la méthode est le mouvement entre l'image HDR et l'image originale utilisée pour générer les zones sans effet de contraste. L'intégration d'un algorithme d'alignement pourrait donc améliorer ses perfomances. Dans le cas où les mouvements sont très importants, un technique de synthèse de texture pourrait être utilisée pour atténuer les artéfacts dus à la discontinuité entre la scène HDR est celle de l'image originale qui est utilisée pour remplir le trou laissé par l'objet remplacé.