Avez-vous déjà voulu changer l’arrière-plan d’une photo tout en gardant un résultat réaliste ? Si vous avez déjà essayé, vous savez que ce n’est pas simple. Vous ne pouvez pas simplement prendre une photo de vous dans votre maison et remplacer l’arrière-plan par une plage. Le résultat est tout simplement mauvais et irréaliste. N’importe qui dira « c’est photoshoppé » en une seconde. Pour les films et les vidéos professionnelles, il faut un éclairage parfait et des artistes capables de reproduire une image de grande qualité, et c’est super coûteux. Impossible de faire cela avec vos propres photos. Ou peut-être que oui ?

Exemple d’un mauvais changement d’arrière-plan
Eh bien, c’est exactement ce que Google Research essaie d’accomplir avec ce nouvel article scientifique appelé Total Relighting. L’objectif est de rééclairer correctement n’importe quel portrait selon l’éclairage du nouvel arrière-plan que vous ajoutez. Cette tâche s’appelle « rééclairage de portrait et remplacement d’arrière-plan » et, comme son nom l’indique, elle comporte deux sous-tâches très complexes :
- Le remplacement d’arrière-plan, ce qui signifie qu’il faut retirer avec précision l’arrière-plan de l’image actuelle pour ne garder que votre portrait.
- Le rééclairage du portrait, qui consiste à adapter votre portrait à l’éclairage de la scène du nouvel arrière-plan.
Le modèle complet. Pandey et al., 2021, Total Relighting
Comme vous pouvez vous en douter, ces deux tâches sont extrêmement difficiles. L’algorithme doit comprendre l’image pour vous en extraire correctement, puis comprendre assez bien l’autre image pour modifier l’éclairage de votre portrait et l’intégrer à la nouvelle scène. Le plus impressionnant dans cet article, c’est que ces deux tâches sont réalisées sans aucun a priori. Autrement dit, le modèle n’a besoin que de deux images, votre portrait et le nouvel arrière-plan, pour créer cette nouvelle image réaliste. Revenons en détail à la façon dont les chercheurs se sont attaqués à ces deux tâches :
Human matting
Cette première tâche, qui consiste à retirer l’arrière-plan de votre portrait, s’appelle l’image matting, ou plus précisément le human matting, puisque nous voulons identifier avec précision un humain dans une image. C’est justement cette « précision » qui rend la tâche complexe, à cause de nombreux détails très fins comme les cheveux qui flottent. Vous ne pouvez pas simplement découper le visage sans les cheveux. Le résultat paraîtrait tout simplement faux. Pour y arriver, les chercheurs doivent entraîner un modèle capable de trouver d’abord l’humain, puis de prédire un résultat approximatif où l’on précise ce qui appartient certainement à la personne, ce qui appartient à l’arrière-plan et ce qui demeure incertain.


Un renard roux (à gauche) et son trimap (à droite). Image de l’auteur
C’est ce qu’on appelle un trimap, et il est obtenu avec un système classique de segmentation entraîné précisément pour cette tâche : segmenter les personnes dans les images. Ce trimap est ensuite raffiné par une architecture encodeur-décodeur, comme je l’ai déjà expliqué dans une vidéo précédente si cela vous intéresse. En gros, elle prend ce trimap initial, le réduit en une information condensée, puis utilise cette information pour le remettre à l’échelle et produire un meilleur trimap.
Le premier modèle : Human Matting. Pandey et al., 2021, Total Relighting
Cela peut sembler magique, mais ça fonctionne parce que le réseau qui transforme ce trimap en code, puis ce code en un meilleur trimap, a été entraîné sur des milliers d’exemples et a appris comment y arriver. Les chercheurs utilisent ensuite ce deuxième trimap pour le raffiner une fois de plus et obtenir la forme humaine finale prédite, appelée masque alpha (alpha matte). Cette étape utilise aussi un réseau neuronal. Nous avons donc essentiellement trois réseaux : un premier prend l’image et génère un trimap, un deuxième prend cette image et ce trimap pour améliorer le trimap, puis le dernier reçoit tout cela comme inputs afin de générer le masque alpha final. Toutes ces sous-étapes sont apprises pendant l’entraînement, où l’on montre de nombreux exemples de ce que l’on veut aux réseaux qui travaillent ensemble pour améliorer le résultat final de manière itérative. Encore une fois, c’est très semblable à ce que j’ai déjà présenté dans ma vidéo sur MODNet, un réseau qui fait exactement cela, si vous voulez en savoir plus sur le human matting.
Ici, tous ces réseaux ne constituaient que la première étape de l’algorithme : le human matting. La nouveauté de cet article se trouve dans la deuxième véritable étape, que les chercheurs appellent le module de rééclairage.
Le modèle complet. Pandey et al., 2021, Total Relighting
Module de rééclairage
Maintenant que nous avons une prédiction précise de l’endroit où se trouve la personne dans l’image, nous devons rendre le résultat réaliste. Pour y arriver, il est très important que l’éclairage de la personne corresponde à celui de l’arrière-plan. Il faut donc rééclairer soit la personne, soit la scène d’arrière-plan. Comme la plupart des gens en conviendraient, l’option la plus simple consiste ici à rééclairer la personne, et c’est celle que les chercheurs ont choisie. Cette tâche de rééclairage était assurément la plus complexe des deux, puisqu’il fallait comprendre comment le corps humain réagit à la lumière.
Le deuxième « modèle » : le module de rééclairage. Pandey et al., 2021, Total Relighting
Comme vous pouvez le voir, il y a encore plusieurs réseaux : un réseau de géométrie, un réseau d’albédo et un réseau d’ombrage. Le réseau de géométrie prend comme input le premier plan produit à l’étape précédente pour générer des normales de surface. C’est une modélisation de la surface de la personne qui permet au modèle de comprendre les profondeurs et les interactions avec la lumière. Cette normale de surface est ensuite combinée à la même image de premier plan et envoyée dans un réseau d’albédo, qui produit l’image d’albédo. Cette image mesure simplement la proportion de lumière réfléchie par notre objet d’intérêt, ici une personne, lorsqu’il réagit à la lumière provenant de différentes sources. Elle nous indique comment les vêtements et la peau de la personne réagissent à la lumière reçue, ce qui nous aide pour l’étape suivante. Cette prochaine étape concerne la lumière du nouvel arrière-plan. Nous allons tenter de comprendre comment son éclairage affecte notre portrait à l’aide d’une réflectance spéculaire apprise et de représentations de la lumière diffuse du portrait, appelées ici cartes de lumière (light maps).
Les cartes de lumière illustrées. Pandey et al., 2021, Total Relighting
Ces cartes de lumière sont calculées à partir d’une vue panoramique de l’arrière-plan désiré. Comme leur nom l’indique, elles montrent essentiellement comment la lumière interagit avec le sujet dans de nombreuses situations. Ces cartes nous permettent de rendre la peau et les vêtements plus brillants ou plus mats selon l’éclairage de l’arrière-plan. Les cartes de lumière, l’image d’albédo et le premier plan sont ensuite fusionnés dans le troisième et dernier réseau, le réseau d’ombrage.
Le réseau d’ombrage en détail. Pandey et al., 2021, Total Relighting
Ce réseau d’ombrage produit d’abord une version finale de la carte de lumière spéculaire à partir de l’information sur l’albédo et de toutes les cartes de lumière spéculaire candidates calculées précédemment. À l’aide de cette carte de lumière finale, de notre carte diffuse et de l’albédo, nous pouvons enfin rendre la personne rééclairée, prête à être insérée dans notre nouvel arrière-plan.
Comme vous l’avez vu, tous les réseaux se ressemblaient, exactement comme celui-ci, qu’on appelle un U-Net, ou une architecture encodeur-décodeur. Comme je l’ai déjà dit, cette architecture prend un input, le condense en codes qui le représentent, puis le remet à l’échelle pour produire une nouvelle image. Mais comme je l’ai déjà expliqué dans de précédentes vidéos, ces « encodeurs-décodeurs » prennent simplement une image dans la première partie du réseau, l’encodeur, qui la transforme en information condensée appelée code latent, visible ici à droite. Cette information contient essentiellement les éléments pertinents pour reconstruire l’image selon le style que l’on veut lui donner. En utilisant ce qu’il a appris pendant l’entraînement, le décodeur effectue l’étape inverse à partir de cette information pour produire une nouvelle image dans ce nouveau style. Ce style peut être une nouvelle orientation de l’éclairage, mais aussi une image complètement différente, comme une carte de surface ou même un masque alpha, exactement comme à notre première étape.

Entraînement d’un GAN et représentation de l’espace latent. Image de l’auteur.
Cette technique est extrêmement puissante, principalement grâce à l’entraînement réalisé. Les chercheurs ont utilisé 58 caméras, plusieurs lumières et 70 personnes différentes qui adoptaient diverses poses et expressions. Mais ne vous inquiétez pas, tout cela n’est nécessaire que pour entraîner l’algorithme. Au moment de l’inférence, il suffit de votre photo et de votre nouvel arrière-plan. Vous vous souvenez peut-être aussi que j’ai mentionné la nécessité d’une vue panoramique pour produire cette image rééclairée, mais elle peut également être approximée avec précision par un autre réseau neuronal à partir de la seule image d’arrière-plan sur laquelle vous voulez transposer votre portrait.
Et c’est tout ! En combinant ces deux techniques, il vous suffit de fournir deux images à l’algorithme. Il s’occupe de tout et produit un portrait de vous rééclairé de façon réaliste sur un arrière-plan différent ! Cet article de Pandey et al. applique la méthode aux humains, mais imaginez à quel point elle pourrait aussi être utile pour des objets. Vous pourriez simplement les prendre en photo et les placer dans une nouvelle scène avec le bon éclairage pour leur donner une apparence réaliste.
Merci d’avoir lu !
Venez discuter avec nous dans notre communauté Discord : Learn AI Together et partagez vos projets, vos articles scientifiques et vos meilleurs cours, trouvez des coéquipiers pour Kaggle, et bien plus encore !
Si vous aimez mon travail et souhaitez rester au courant de l’IA, vous devriez absolument me suivre sur mes autres réseaux sociaux (LinkedIn, Twitter) et vous abonner à ma newsletter hebdomadaire sur l’IA !
Pour me soutenir :
- La meilleure façon de me soutenir est de devenir membre de ce site Web ou de vous abonner à ma chaîne YouTube si vous aimez le format vidéo.
- Soutenez financièrement mon travail sur Patreon
Références
Pandey et al., 2021, « Total Relighting: Learning to Relight Portraits for Background Replacement », DOI : 10.1145/3450626.3459872
Article scientifique : https://augmentedperception.github.io/total_relighting/total_relighting_paper.pdf
Lien du projet : https://augmentedperception.github.io/total_relighting/
FAQ
Pourquoi un arrière-plan remplacé semble-t-il souvent irréaliste ?
Le portrait conserve son éclairage original, qui peut entrer en conflit avec la direction, la couleur et l’intensité de la nouvelle scène.
Qu’est-ce que le human matting ?
Le human matting sépare la personne de l’arrière-plan original tout en préservant les contours difficiles, comme les cheveux.
Que modifie le module de rééclairage ?
Il ajuste l’éclairage du portrait pour mieux l’accorder à celui qui est déduit de l’arrière-plan de remplacement.
De quels inputs la méthode a-t-elle besoin ?
Elle a besoin du portrait source et de la nouvelle image d’arrière-plan, sans capture distincte de l’éclairage.
Pourquoi le rééclairage automatique est-il utile en production ?
Il réduit le travail manuel de composition tout en rendant le remplacement d’arrière-plan plus cohérent visuellement.
Comment Total Relighting représente-t-il le portrait et son éclairage ?
Des réseaux de géométrie, d’albédo et d’ombrage estiment les normales de surface, la couleur des matériaux et les cartes de lumière avant de rendre la personne sous l’éclairage du nouvel arrière-plan.

