(P) Visor – Feuilles neuronales à double canon pour la synthèse de vue en temps réel (GitHub)

 (P) Visor – Feuilles neuronales à double canon pour la synthèse de vue en temps réel (GitHub)


Github (code + point de contrôle de démonstration): https://github.com/esemianczuk/visor Licence open source Apache 2.0

Démo

Résumé rapide

Visière comprime une scène dans Deux avions savants
• Un front feuille d’occlusion qui gère la couleur diffuse, les masques alpha doux et les reflets spéculaires
• Un arrière feuille de réfraction qui tire trois sous-rayons légèrement pliés à travers un micro-prime savant pour ramasser la parallaxe et l’éclat chromatique

Parce que tout est serré dans ces avions, vous pouvez voler une scène de type nerf à environ 15 ips à 512 × 512 sur un RTX 4090en utilisant Environ 1 à 2 Go de VRAM.
Le verre et d’autres objets de surface brillants semblent étonnamment bons, ce qui fait de la visière un candidat pour les panneaux d’affichage volumétriques pré-formés à l’intérieur des moteurs de jeu.

Motivation

Les pipelines Nerf classiques échantillonnent des dizaines de points le long de chaque rayon. La qualité est excellente, mais l’interactivité en temps réel est difficile.
La visière demande: Et si nous faisions cuire toute la géométrie et l’ombrage dépendant de la vue en deux avions qui sont toujours assis devant la caméra? La mémoire grandit alors avec Compte d’avionpas la taille de la scène, donc plusieurs visières peuvent être enchaînées pour des mondes plus grands.

Méthode en une seule page

Avion Ce qu’il apprend Entrées clés
Feuille d’occlusion RVB diffus, RVB spéculaire, rugosité, alpha Direction des pixels + codage positionnel, fonctionnalités UV de Fourier, couleur Sh optionnelle
Feuille de réfraction Trois échantillons RVB le long des sous-rayons réfractés, alpha unique Identique à ci-dessus + intégration de la caméra

Détails de la mise en œuvre qui comptent:

  • Les squelettes MLP de style sirène à 4 couches (la première couche est activée sous le sinus).
  • Codes latents de grille de hachage avec minuscule-cudann (emprunté à instantané-NGP).
  • Commande cuite-7 Vraies harmoniques sphériques Fournir des conseils sur l’éclairage mondial.
  • La formation se déroule en FP16 avec torch.cuda.amp mais est toujours lourd car aucun noyau fusionné ou planification de perte de multires n’est encore en place.

Benchmarks sur un ensemble de données synthétiques «Sphères flottants» (RTX 4090)

Métrique Visière Instant-NGP (Hash Nerf)
Inférence FPS à 512² 15 ips 0,9 ips
Pic vram 1 à 2 Go 4 à 5 Go
Poids de réseau central (SANS en option SH) 3,4 Mb 17 Mb
Traine à 28 dB PSNR 41 min 32 min

Le nombre d’étapes d’entraînement est le même, mais la visière pourrait rendre beaucoup plus rapidement une fois que le chemin du shaders est optimisé pour le débit du trèfle du tenseur.

Limitations et feuille de route à court terme

  • Vitesse d’entraînement – Le prototype exécute une longue perte à une seule échelle sans OP fusionnés; La perte de multires et les noyaux CUDA devraient réduire considérablement le temps.
  • Uniquement des données synthétiques jusqu’à présent – Des photographies réelles auront besoin d’une compensation d’exposition et d’une cartographie des tons dans la cuisson SH.
  • Éclairage statique – Les lumières sont cuites. L’éclairage dynamique aurait besoin d’un MLP résiduel léger.
  • Modèle d’optique – La feuille arrière ajoute actuellement trois vecteurs de décalage par pixel. Cela capture la parallaxe et la dispersion légère mais ne peut pas exprimer des distorsions de cisaillement ou d’objectif épaisses. Un jacobien par pixel (ou tenseur d’ordre supérieur) figure sur la liste de souhaits.

À la recherche de commentaires

  • Idées de compression des deux feuilles en une sans perdre de détail.
  • Les intégrations avec unité ou Unreal sous forme d’imposseurs volumétriques / affichage d’hélice réaliste.

J’ai développé cela en tant que projet parallèle indépendant et j’aimerais savoir où il se casse ou où il brille, ou toute pensée / rétroaction en général.

soumis par / U / Firebird8541154
(lien) (Commentaires)



Source link

Related post