Le rendu neuronal. Le rendu neuronal est la capacité de générer dans l’espace un modèle photoréaliste comme celui-ci à partir d’images de l’objet, de la personne ou de la scène qui nous intéresse. Dans notre exemple, vous disposez d’une poignée de photos de cette sculpture et demandez à la machine de comprendre l’apparence que devrait avoir cet objet dans l’espace. Vous demandez essentiellement à une machine de comprendre la physique et les formes à partir d’images. Cette tâche est assez facile pour nous, puisque nous connaissons seulement le monde réel et la profondeur, mais représente un tout autre défi pour une machine qui voit uniquement des pixels.

Synthèse d’une nouvelle vue avec le modèle NeROIC. GIF tiré de la page du projet.
Vous vous demandez peut-être pourquoi nous voulons faire cela. Je dirais que la réponse est assez évidente. Pour moi, les applications possibles sont nombreuses. Imaginez une application qui prend simplement quelques photos d’un objet et synthétise parfaitement son modèle 3D afin de l’intégrer dans des images, dans des scènes 3D ou même dans des jeux vidéo.
Cette possibilité est très prometteuse, mais pour rendre ces modèles réalistes, nous devons aussi résoudre le défi de l’éclairage.
C’est formidable qu’un modèle généré possède des formes réalistes et précises, mais comment s’intègre-t-il dans une nouvelle scène ? Et si les conditions d’éclairage variaient entre les photos et que le modèle semblait différent selon l’angle sous lequel vous le regardez ? Le résultat nous semblerait automatiquement étrange et irréaliste. Voilà les défis auxquels Snapchat et l’Université de Californie du Sud se sont attaqués dans ces nouveaux travaux de recherche.
Voyons maintenant comment ils ont abordé les problèmes d’éclairage et de réalisme qui apparaissent lorsque nous créons un objet virtuel à partir d’images. Leur technique s’appuie sur les champs de rayonnement neuronaux, largement utilisés pour la reconstruction dans de nombreux modèles comme NeRF, que nous avons déjà présenté dans de précédents articles. Habituellement, ces champs ont besoin d’images prises dans les mêmes conditions idéales, mais ce n’est pas ce que nous voulons ici.

Approche NeRF. Image tirée de l’article scientifique.
Leur approche part de NeRF. Comme je l’ai déjà présenté sur ma chaîne, je ne vais pas le réexpliquer ici, mais n’hésitez pas à prendre une pause et à lire mon article pour mieux comprendre son fonctionnement. En bref, NeRF est un réseau neuronal entraîné à déduire la couleur, l’opacité et le rayonnement de chaque pixel à partir d’images, puis à deviner les pixels manquants dans les petites parties de l’objet qui n’apparaissent sur aucune photo. Mais cette approche ne fonctionne pas pour les grandes parties manquantes ou les conditions d’éclairage différentes, puisqu’elle peut seulement interpoler entre les images d’entrée. Nous avons besoin ici d’une méthode capable d’extrapoler et de formuler des hypothèses sur ce qui devrait apparaître à certains endroits ou sur l’apparence de ces pixels sous un autre éclairage.
De nombreuses approches s’appuient sur NeRF pour corriger ce problème, mais elles exigent toujours davantage d’entrées de l’utilisateur. Ce n’est pas ce que nous voulons et ces entrées sont difficiles à obtenir dans plusieurs situations, surtout lorsque nous cherchons à construire un bon jeu de données pour entraîner notre modèle. En bref, ces modèles ne comprennent pas vraiment l’objet ni l’environnement dans lequel il se trouve.

Paramètres de la caméra et génération du modèle NeRF. Image tirée de l’article scientifique.
Nous revenons donc toujours au problème de l’éclairage… Ici, l’objectif est d’utiliser cette architecture sur des images trouvées en ligne. Autrement dit, des images dont l’éclairage, la caméra, l’environnement et la pose varient, ce que NeRF arrive difficilement à gérer de façon réaliste.
À part les images de l’objet, les chercheurs ont seulement besoin d’une segmentation approximative du premier plan et d’une estimation des paramètres de la caméra. Ces deux éléments peuvent être obtenus avec d’autres modèles existants. L’estimation du premier plan est essentiellement un masque qui indique où se trouve l’objet d’intérêt dans l’image, comme ceci :


Image d’une télévision et son masque de segmentation.
La principale différence de leur approche vient de la séparation entre le rendu de l’objet et l’éclairage de l’environnement dans les images d’entrée. Ils se concentrent sur deux éléments, traités en deux étapes.

Vue d’ensemble du modèle que nous allons maintenant présenter. Image tirée de l’article scientifique.
La première partie, (a), correspond à la forme de l’objet, donc à sa géométrie. C’est la partie qui ressemble le plus à NeRF et qui porte ici le nom de réseau de géométrie. Elle reçoit les images d’entrée, les masques de segmentation et l’estimation des paramètres de la caméra dont nous avons discuté. Elle construit un champ de rayonnement et produit une première estimation de la densité et de la couleur de chaque pixel, comme NeRF, mais en s’adaptant aux variations d’éclairage dans les images d’entrée. Cette différence repose sur les deux branches visibles ici, qui séparent le contenu statique des paramètres variables comme la caméra et les ombres. Nous pouvons ainsi apprendre au modèle à isoler correctement le contenu statique des autres paramètres indésirables comme l’éclairage. Mais le processus n’est pas terminé.
Dans la partie (b), le modèle estime les normales de surface à partir du champ de densité appris, qui représenteront nos textures. Autrement dit, il prend les résultats que nous venons de produire et détermine comment l’objet réagira à la lumière. À cette étape, il trouve les propriétés intrinsèques du matériau, ou au moins une estimation, à l’aide d’une convolution 3D avec un noyau de Sobel. Il s’agit essentiellement d’un filtre appliqué en trois dimensions pour trouver tous les contours et leur netteté. Le résultat peut ressembler à ceci sur une image en deux dimensions, à gauche ci-dessous, et à cela sur un rendu en trois dimensions, à droite. Nous obtenons ainsi de l’information essentielle sur les textures et les formes de l’objet.


Filtre de Sobel appliqué en 2D, à gauche, et normale de surface produite avec un filtre de Sobel 3D, à droite.
À l’étape suivante, (c), les chercheurs figent la géométrie apprise et optimisent les normales tout juste produites avec ce réseau de rendu, très semblable au premier réseau de géométrie. Ici encore, deux branches représentent le matériau et l’éclairage. Les chercheurs utilisent des harmoniques sphériques pour représenter le modèle d’éclairage et optimisent leurs coefficients pendant l’entraînement. Comme ils l’expliquent plus en détail dans l’article scientifique si le sujet vous intéresse, les harmoniques sphériques servent ici à représenter un groupe de fonctions de base définies sur la surface d’une sphère. Wikipédia nous apprend que « toute fonction définie sur la surface d’une sphère peut être écrite sous la forme d’une somme de ces harmoniques sphériques ». Cette technique est souvent utilisée pour calculer l’éclairage des modèles 3D. Elle produit des ombres très réalistes avec relativement peu de calculs supplémentaires. En bref, elle réduit simplement le nombre de paramètres à estimer tout en conservant la même quantité d’information.

Plutôt que d’apprendre à produire l’éclairage approprié pour tout l’objet à partir de zéro, le modèle apprend donc les bons coefficients à utiliser dans les harmoniques sphériques. Celles-ci estiment la lumière réfléchie par la surface de chaque pixel et réduisent le problème à quelques paramètres. L’autre branche est entraînée à améliorer les normales de surface en suivant la même astuce avec le modèle standard de réflectance Phong, qui représente les propriétés du matériau de l’objet à partir de quelques paramètres à trouver. Enfin, les sorties des deux branches, donc le rendu et l’éclairage finaux, sont fusionnées pour trouver la couleur définitive de chaque pixel.
Cette séparation de la lumière et des matériaux explique pourquoi l’approche peut appliquer n’importe quel éclairage à l’objet et le faire réagir de façon réaliste. Rappelez-vous que tout cela repose seulement sur quelques images trouvées sur Internet, qui peuvent présenter des conditions d’éclairage complètement différentes. C’est vraiment cool !
Et voilà ! C’est ainsi que Kuang et ses collaborateurs chez Snapchat ont créé NeROIC, un modèle de rendu neuronal d’objets à partir d’images trouvées en ligne !
J’espère que vous avez aimé ce court aperçu de l’article scientifique. Toutes les références se trouvent ci-dessous avec les liens vers le projet officiel et le code. Dites-moi ce que vous pensez de l’explication et de la technique, ainsi que la façon dont vous l’utiliseriez dans le monde réel !
Merci de m’avoir lu.
Si vous aimez mon travail et souhaitez rester à jour dans le domaine de l’IA, vous devriez absolument me suivre sur mes autres réseaux sociaux (LinkedIn, Twitter) et vous abonner à mon infolettre hebdomadaire sur l’IA !
Pour me soutenir :
- Suivez-moi ici ou sur Medium.
- Vous voulez vous lancer en IA ou améliorer vos compétences ? Lisez ceci !
Références
- Kuang, Z., Olszewski, K., Chai, M., Huang, Z., Achlioptas, P. et Tulyakov, S., 2022. NeROIC: Neural Rendering of Objects from Online Image Collections. https://arxiv.org/pdf/2201.02533.pdf
- Lien du projet avec une excellente démonstration vidéo : https://formyfamily.github.io/NeROIC/
- Code : https://github.com/snap-research/NeROIC
FAQ
Que reconstruit NeROIC ?
NeROIC construit un objet 3D neuronal photoréaliste à partir d’une petite collection de photos ordinaires trouvées en ligne.
Pourquoi les collections d’images en ligne sont-elles difficiles à utiliser ?
Les photos varient selon la caméra, l’éclairage, l’arrière-plan, l’exposition et l’apparence de l’objet, sans processus de capture contrôlé.
Pourquoi un objet reconstruit doit-il modéliser l’éclairage ?
Une forme correcte ne s’intègre pas naturellement dans une nouvelle scène si l’éclairage et l’apparence du matériau ne correspondent pas.
Quel est le lien entre cette approche et NeRF ?
Elle étend les concepts du rendu neuronal aux objets capturés dans des conditions moins contrôlées.
Quel est l’avantage pratique d’exiger moins d’entrées de l’utilisateur ?
Les créateurs peuvent construire des ressources 3D utiles à partir de photos existantes sans séance spécialisée de numérisation sous plusieurs angles.


