XYZNOT

Articles · arXiv 2003.08934

NeRF : Représentation de scènes sous forme de champs de radiance neuronaux pour la synthèse de nouvelles vues

NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis

Publié le cs.CVcs.GR arXivPDF

Lire avec traduction et IA

Résumé en trois lignes

  1. 🎯 Synthétise de nouvelles vues photoréalistes en haute résolution de scènes 3D complexes sans grilles de voxels discrètes ni maillages géométriques intermédiaires.
  2. 🔧 Représente les scènes statiques sous la forme de fonctions 5D continues apprises par un MLP à l'aide d'un encodage positionnel, d'un rendu volumique différentiable et d'un échantillonnage hiérarchique.
  3. 📈 Établit un nouvel état de l'art en synthèse de vues, atteignant 31,01 dB de PSNR sur des scènes synthétiques réalistes et compressant les représentations de scènes à environ 5 Mo.

Résumé

Nous présentons une méthode atteignant des résultats à l'état de l'art pour la synthèse de nouvelles vues de scènes complexes, en optimisant une fonction volumique continue sous-jacente à partir d'un ensemble épars de vues d'entrée. Notre algorithme représente une scène à l'aide d'un réseau profond entièrement connecté (non convolutionnel), dont l'entrée est une coordonnée 5D continue unique (position spatiale et direction de vue ) et dont la sortie est la densité volumique ainsi que la radiance émise dépendante de la vue à cet emplacement spatial. Nous synthétisons de nouvelles vues en interrogeant des coordonnées 5D le long des rayons de la caméra et utilisons des techniques classiques de rendu volumique pour projeter les couleurs et densités résultantes dans une image. Le rendu volumique étant naturellement différentiable, le seul prérequis pour optimiser notre représentation est un ensemble d'images associées à des poses de caméra connues. Nous décrivons comment optimiser efficacement les champs de radiance neuronaux pour rendre de nouvelles vues photoréalistes de scènes à la géométrie et à l'apparence complexes, et présentons des résultats surpassant les travaux antérieurs en rendu neuronal et synthèse de vues. Les résultats de synthèse de vues s'appréciant particulièrement sous forme de vidéos, nous invitons vivement les lecteurs à visionner notre vidéo supplémentaire pour des comparaisons probantes.

Résumé original (anglais)

We present a method that achieves state-of-the-art results for synthesizing novel views of complex scenes by optimizing an underlying continuous volumetric scene function using a sparse set of input views. Our algorithm represents a scene using a fully-connected (non-convolutional) deep network, whose input is a single continuous 5D coordinate (spatial location and viewing direction ) and whose output is the volume density and view-dependent emitted radiance at that spatial location. We synthesize views by querying 5D coordinates along camera rays and use classic volume rendering techniques to project the output colors and densities into an image. Because volume rendering is naturally differentiable, the only input required to optimize our representation is a set of images with known camera poses. We describe how to effectively optimize neural radiance fields to render photorealistic novel views of scenes with complicated geometry and appearance, and demonstrate results that outperform prior work on neural rendering and view synthesis. View synthesis results are best viewed as videos, so we urge readers to view our supplementary video for convincing comparisons.

Guide de lecture

Problème et motivation

La synthèse de nouvelles vues à partir d'images capturées repose traditionnellement sur des représentations volumiques discrètes (telles que les grilles de voxels ou les images multi-plans) ou sur des maillages de surface. Cependant, les grilles de voxels discrétisées entraînent une empreinte mémoire et de calcul prohibitive qui croît de façon cubique avec la résolution, tandis que l'optimisation différentiable basée sur des maillages souffre d'un paysage d'optimisation complexe et requiert une bonne topologie initiale. Les représentations neuronales implicites antérieures appliquaient directement les coordonnées à des fonctions de distance signée ou à des points d'une surface unique, peinant face aux géométries complexes, aux effets dépendants du point de vue (comme les reflets spéculaires) et aux détails à haute fréquence, ce qui produisait des résultats trop lisses.

Idées clés

  • Fonction de scène 5D continue : Représenter une scène statique comme une fonction continue implicite , qui associe une position 3D et une direction de vue 2D à une radiance RVB émise et une densité volumique .
  • Cohérence multi-vues via une prédiction asymétrique : La densité est prédite uniquement à partir de la position (la géométrie est invariante au point de vue), tandis que la couleur émise dépend à la fois de la position et de la direction de vue (permettant les reflets spéculaires et non lambertiens).
  • Encodage positionnel haute fréquence : Surmonter le biais spectral des MLP envers les basses fréquences en projetant les coordonnées d'entrée de faible dimension vers des espaces de grande dimension à l'aide de fonctions de base sinusoïdales.
  • Rendu volumique différentiable et échantillonnage hiérarchique : Recourir à la quadrature numérique pour accumuler des échantillons continus le long des rayons sous forme de couleurs de pixels 2D, optimisé de bout en bout par rapport aux photographies d'entrée et accéléré par un échantillonnage hiérarchique du grossier au fin.

Méthode (avec les équations clés)

Pour un rayon de caméra délimité par les plans proche et lointain et , la couleur continue attendue est : où représente la transmittance accumulée.

Pour la calculer numériquement, l'intervalle continu est partitionné en segments et évalué via un échantillonnage stratifié, produisant une quadrature discrète équivalente au mélange alpha : où .

Pour capturer la géométrie et les textures à haute fréquence, les entrées sont projetées via un encodage positionnel : avec pour et pour .

Afin d'échantillonner efficacement, NeRF optimise simultanément deux réseaux (un grossier avec échantillons et un fin avec échantillons additionnels). Les poids de l'échantillonnage grossier définissent une fonction de densité de probabilité constante par morceaux le long du rayon, à partir de laquelle les échantillons fins sont tirés par inversion de la fonction de répartition.

Le modèle complet est entraîné en minimisant l'erreur quadratique totale sur un lot de rayons :

Résultats (avec les chiffres les plus marquants)

  • Synthétique réaliste à : NeRF a atteint 31,01 dB de PSNR, 0,947 de SSIM et 0,081 de LPIPS, surpassant nettement les méthodes de référence telles que NV (26,05 dB), LLFF (24,88 dB) et SRN (22,26 dB).
  • Synthétique diffus à : NeRF a obtenu 40,15 dB de PSNR et 0,991 de SSIM, contre DeepVoxels (30,55 dB de moyenne déduite des scores par scène) et LLFF (34,38 dB).
  • Scènes réelles orientées vers l'avant (forward-facing) : Un PSNR de 26,50 dB a été atteint, dépassant LLFF (24,13 dB) et SRN (22,84 dB).
  • Efficacité de stockage : Un modèle NeRF entièrement entraîné ne nécessite qu'environ 5 Mo pour les poids du MLP, soit une réduction de stockage d'environ par rapport aux représentations volumiques de LLFF (>15 Go par scène).

Limites et questions ouvertes

  • Temps d'entraînement et de rendu : Optimiser une scène requiert 100k à 300k itérations (environ 1 à 2 jours sur un seul GPU NVIDIA V100). Le rendu d'une seule image nécessite 150 à 200 millions d'interrogations du MLP, ce qui prend environ 30 secondes.
  • Interprétabilité du modèle : Contrairement aux grilles de voxels ou aux maillages polygonaux, la scène est enfermée au sein des poids d'un MLP, rendant l'édition directe, l'inspection et le débogage difficiles.
  • Nécessité de conditions de capture contrôlées : La méthode suppose des poses de caméra connues (issues de COLMAP par exemple), des scènes statiques, un éclairage constant et des volumes d'englobement de scène bien délimités.

Termes clés

Neural Radiance Field (NeRF)
Une représentation volumique continue 5D d'une scène, paramétrée par un réseau de neurones profond entièrement connecté qui associe des coordonnées spatiales et des directions de vue à une densité volumique et une radiance émise.
Positional Encoding
Une transformation sinusoïdale déterministe qui projette des coordonnées d'entrée continues dans des espaces fréquentiels de dimension supérieure, permettant au réseau d'apprendre des détails à haute fréquence.
Volume Density
Une opacité différentielle invariante au point de vue qui modélise la probabilité qu'un rayon de caméra s'interrompe en un point infinitésimal de l'espace 3D.
Transmittance
La probabilité qu'un rayon de caméra se propage du plan de découpage proche jusqu'à une distance spécifique le long du rayon sans heurter de particules dans la scène.
Hierarchical Volume Sampling
Une méthode d'échantillonnage du grossier au fin qui utilise les densités de rayon estimées par un premier réseau pour construire une distribution de probabilité non uniforme servant à échantillonner des points supplémentaires pour un réseau fin.
Stratified Sampling
Une procédure d'échantillonnage qui divise la plage de profondeur d'un rayon en intervalles réguliers et tire uniformément un échantillon continu aléatoire par intervalle afin de permettre une évaluation continue durant l'optimisation.
Normalized Device Coordinates (NDC)
Un espace de coordonnées transformant le tronc de vue en perspective de captures frontales en , rendant l'axe de la caméra linéaire par rapport à la disparité.

Questions

Pourquoi la densité dépend-elle uniquement de la position, alors que la couleur dépend de la position et de la direction de vue ?

Le fait de conditionner la densité uniquement à la position spatiale garantit la cohérence géométrique multi-vues entre les différents angles de prise de vue. En revanche, permettre à la couleur de dépendre également de la direction de vue donne au MLP la capacité de représenter des phénomènes non lambertiens dépendant de l'angle, tels que les reflets spéculaires.

En quoi l'encodage positionnel de NeRF diffère-t-il de celui utilisé dans les Transformers ?

Les Transformers emploient l'encodage positionnel pour injecter l'ordre discret des tokens dans des blocs d'attention invariants par permutation, tandis que NeRF applique des encodages sinusoïdaux pour projeter des coordonnées continues de faible dimension dans un espace de dimension supérieure afin de contourner le biais spectral des MLP envers les basses fréquences.

Quelles sont les données nécessaires pour optimiser un modèle NeRF à partir de zéro ?

NeRF ne requiert qu'un ensemble d'images RVB 2D calibrées d'une scène statique avec les paramètres intrinsèques de la caméra, les poses de prise de vue associées et les limites proche/lointaine de la scène (obtenues via COLMAP pour des données réelles ou à partir des poses de vérité terrain pour des données synthétiques).

Combien de temps prennent l'entraînement et le rendu avec NeRF ?

L'entraînement sur une seule scène requiert entre 100k et 300k itérations (soit environ 1 à 2 jours) sur un GPU NVIDIA V100. Le rendu de nouvelles vues nécessite l'évaluation de 150 à 200 millions de requêtes de coordonnées par image, ce qui prend approximativement 30 secondes par vue.

La présentation de cette page a été rédigée par une IA à partir de l'article et peut contenir des erreurs. Consultez l'article pour les détails.

Lire avec traduction et IA