Le Gaussian Splatting reconstruit un lieu réel à partir de photographies, puis vous laisse y déplacer la caméra librement, au-delà des points fixes d’une visite 360°. Vous verrez ici comment fonctionne le Gaussian Splatting pour la visualisation, quels visualiseurs l’affichent dans un navigateur ou un casque VR, et quand l’utiliser pour une visite virtuelle.

Comment le Gaussian Splatting affiche-t-il un lieu réel ?

Un splat ne contient pas de murs ni de triangles. Il contient des millions de petites taches de couleur semi-transparentes, placées dans l’espace de façon à reproduire les photographies d’origine. C’est ce qui donne un rendu photoréaliste aux scènes réelles, et c’est aussi ce qui fixe ses limites.

Un homme pointe du doigt un grand écran montrant une scène d’intérieur en 3D avec des milliers de points bleus représentant

Des photographies aux gaussiennes

Le 3D Gaussian Splatting reconstruit l’apparence navigable d’un lieu à partir de photographies prises sous plusieurs angles. La méthode fondatrice, issue de travaux d’Inria, a été présentée à SIGGRAPH 2023. Chaque gaussienne est un ellipsoïde dont on connaît la position, l’orientation, l’échelle et l’opacité. Sa forme se calcule avec la covariance Σ = RSSᵀRᵀ, où R est la rotation et S les échelles.

L’entraînement compare les vues calculées aux photographies prises depuis les mêmes positions de caméra, puis corrige les gaussiennes jusqu’à ce que les écarts diminuent. Une fois la scène entraînée, un nouveau point de vue s’affiche sans réentraînement : c’est cette étape qui rend la visite navigable.

Le rendu en temps réel

Le rendering d’un splat n’utilise pas de réseau neuronal à chaque image. Le moteur traite directement les gaussiennes, en trois opérations :

  • Projection : chaque gaussienne est projetée dans le plan de l’image vue par la caméra virtuelle.
  • Tri : les gaussiennes sont classées selon leur profondeur, de la plus proche à la plus lointaine.
  • Composition : leurs couleurs et opacités se superposent pour former le pixel final.

Dans les essais du projet fondateur, ce rendering atteignait au moins 30 images par seconde, et jusqu’à environ 100 images par seconde en 1080p. Ces chiffres valent pour leur matériel de test, pas pour votre terminal. La couleur peut aussi varier avec l’angle de vue grâce aux harmoniques sphériques, ce qui aide à restituer certains reflets, les cheveux et d’autres éléments fins.

Ce que l’image restitue moins bien

Ces couleurs qui changent selon l’angle ont leurs limites : miroirs, vitres et surfaces brillantes produisent des défauts lorsque leurs reflets bougent avec le point de vue. Sur un site riche en dorures ou en vitrages, prévoyez des essais spécifiques sur ces zones.

Une zone absente des photographies reste trouée ou floue. Un beau point de vue de démonstration ne prouve donc pas la qualité de toute la scène : demandez à parcourir les recoins, pas seulement l’angle choisi par le prestataire.

Enfin, une représentation en splats ne fournit ni surfaces éditables, ni collisions, ni relevé dimensionnel fiable. Le 3D Gaussian Splatting sert d’abord à montrer un lieu : si votre projet exige des mesures, il faut une autre source en complément.

Quel visualiseur choisir pour le web ?

Afficher un splat sur une page web suppose trois vérifications : que le fichier contient bien des gaussiennes, que le visualiseur lit son format, et que son poids reste supportable pour le terminal du visiteur. Les erreurs les plus fréquentes se jouent dès la première.

Une pièce moderne montre un écran grand ouvert sur une vue de village ancien avec des rochers et une fontaine, et des points

Reconnaître un PLY de gaussiennes

Un fichier.ply peut contenir un nuage de points, un maillage ou des gaussiennes 3D : l’extension ne dit rien de son contenu. Un lecteur de splats attend, pour chaque élément, une position, une échelle, une rotation, une opacité et une couleur.

Le piège classique : le fused.ply produit par la reconstruction dense de COLMAP, un logiciel de calage photographique. C’est un nuage de points, pas une scène entraînée. SuperSplat Editor refuse d’ailleurs les PLY ordinaires sans données de gaussiennes, ce qui permet de vérifier rapidement ce qu’on vous a livré.

Afficher et intégrer la scène

SuperSplat Editor importe un PLY de gaussiennes par glisser-déposer ou par le menu File → Import. Vous y nettoyez les éléments parasites, puis exportez la scène. L’outil prépare et diffuse : il ne reconstruit pas, à lui seul, un lieu depuis des photographies.

Parmi les visualiseurs web, SuperSplat Viewer s’intègre à une visite hébergée sur votre propre site, avec un lien partageable sans installation côté visiteur. GaussianSplats3D s’intègre à Three.js et lit les formats.ply,.splat et.ksplat. Avant de retenir une application de capture, vérifiez qu’elle exporte réellement des gaussiennes, et dans quel format.

Réduire le poids sans perdre les détails

Selon PlayCanvas, un PLY non comprimé pèse de 50 Mo à plusieurs Go par scène. Gardez-le comme source de travail, mais ne le diffusez pas tel quel. Le format SOG avec pertes est typiquement 15 à 20 fois plus petit : dans un exemple de 4 millions de gaussiennes, le fichier passe d’environ 1 Go à 42 Mo. Niantic décrit le SPZ comme environ 10 fois plus petit qu’un PLY équivalent.

Format Usage conseillé Réduction annoncée
PLY non comprimé Source de travail, archive Référence (50 Mo à plusieurs Go)
SOG (PlayCanvas) Diffusion web 15 à 20 fois plus petit
SPZ (Niantic) Diffusion web Environ 10 fois plus petit

Ces gains varient selon la scène, et chaque visualiseur n’accepte pas tous les formats comprimés : contrôlez les détails fins après compression. Le flux de publication de SuperSplat génère des niveaux de détail à partir de 1 million de gaussiennes. La fluidité dépend aussi de la mémoire du terminal, des gaussiennes visibles, de la résolution et du tri des transparences.

Comment visualiser des splats en réalité virtuelle ?

Afficher un splat dans un casque reste possible, mais cela demande davantage qu’un affichage sur écran. Il faut choisir une voie de lecture, alléger la scène pour la stéréoscopie et valider le confort sur le matériel réel.

Choisir une voie de lecture VR

Plusieurs outils permettent de visualiser une scène en Gaussian Splatting en réalité virtuelle, avec des contraintes différentes :

  • SIBR en OpenXR : la branche OpenXR du visualiseur de l’implémentation Inria documente la VR sur poste.
  • GaussianSplats3D : annonce une prise en charge de WebXR dans un navigateur compatible.
  • SuperSplat Viewer : annonce aussi WebXR, dans le prolongement de l’intégration web.
  • Prérequis web : une session WebXR exige un hébergement en HTTPS.

Selon MDN, WebXR reste une technologie à disponibilité limitée. Une version web ordinaire et une version casque demandent donc des validations distinctes, même si elles partagent le même fichier.

Préparer une navigation confortable

Un casque calcule deux vues, une par œil. Le nombre de gaussiennes visibles, la résolution par œil, la mémoire disponible et le GPU déterminent la cadence. La compression, le découpage de la scène et les niveaux de détail allègent le chargement comme le rendu en temps réel.

Les déplacements et les interactions ne viennent pas avec le splat. Une visite navigable peut nécessiter une géométrie simplifiée pour les collisions, des zones de téléportation et des points interactifs ajoutés à part.

Tester sur le casque visé

Essayez la visite dans le casque cible, avec les déplacements prévus. Le temps de chargement et la fluidité stéréoscopique ne se déduisent pas d’un affichage sur écran d’ordinateur.

L’INRS signale notamment des nausées et des vertiges en VR. Selon l’Anses, ces symptômes peuvent apparaître dès les premières minutes, et l’arrêt est recommandé dès leur apparition. Prévoyez des déplacements maîtrisés ou par étapes, un arrêt immédiat possible et une alternative sans casque.

Quand choisir le 3DGS pour une visite virtuelle ?

Le 3DGS convient lorsque vous voulez montrer un lieu existant avec une navigation libre. Il ne remplace ni un panorama 360° pour un parcours simple, ni un relevé pour mesurer. Le choix se fait sur l’usage, puis se vérifie à la capture et à la réception.

Une boussole entourée de cercles reliés par des points lumineux sur un fond bleu.

Choisir le livrable selon l’usage

Une visite 360° relie des points de vue photographiés, tandis qu’un 3DGS laisse déplacer la caméra dans la zone correctement capturée. 3dcreation réalise des visites 360° et des visites 3D au sein de son service de visites virtuelles 360° et 3D, des approches distinctes d’une scène en splats, et chaque livrable répond à un besoin différent :

  • Parcours entre points fixes : la visite 360°.
  • Navigation libre dans un lieu existant : le splat.
  • Plans techniques ou mesures fiables : un relevé dédié, un scanner laser ou un maillage.
  • Données réutilisables : une captation Matterport, qui produit aussi des nuages de points et des modèles 3D.

Pour des bureaux, commerces ou sites industriels, une visite virtuelle sur le web permet d’examiner les locaux à distance. 3dcreation propose une visite virtuelle d’entreprise intégrable à un site, livrée avec un code d’intégration.

Les réalisations Matterport de 3dcreation couvrent notamment l’immobilier, le patrimoine et l’industrie. Contrairement au Gaussian Splatting, cette captation fournit des données exploitables pour d’autres tâches que la restitution visuelle, comme le fait la photogrammétrie classique avec ses nuages denses et ses maillages.

Capturer puis contrôler la reconstruction

La prise de vues couvre les trajets, les angles et les transitions entre pièces, avec de vrais déplacements de caméra : pivoter sur place ne suffit pas. RealityScan donne environ 70 % de recouvrement entre images voisines comme repère. COLMAP recommande qu’un élément apparaisse dans au moins 3 images. Images floues, surfaces peu texturées et sujets mobiles dégradent l’alignement.

Une fois les poses de caméra et les points initiaux estimés, l’entraînement optimise les gaussiennes. Demandez un aperçu précoce : il révèle les images non enregistrées, les pièces dédoublées ou les trous, qu’il vaut mieux corriger en reprenant la capture plutôt qu’en prolongeant le calcul.

Publier et réceptionner la visite

Dans le cahier des charges, distinguez la capture, l’entraînement, le nettoyage, l’hébergement web et une éventuelle version VR. À la réception, vérifiez la couverture des zones prévues, le poids des fichiers, le temps de chargement et la cadence sur les appareils réellement visés.

Avant publication, examinez les personnes reconnaissables, plaques, écrans et documents visibles, et masquez-les si nécessaire. Les informations essentielles doivent aussi rester accessibles sans la visite 3D, par exemple via une description textuelle ou un plan lisible.

Foire aux questions

Comment ouvrir un fichier.ply qui ne contient pas de gaussiennes ?

Ouvrez-le avec un visualiseur adapté aux nuages de points ou aux maillages : un lecteur de splats le refusera. Son affichage ne donnera pas le rendu photoréaliste d’un splat. À l’inverse, une démonstration WebGL légère accepte un.ply 3DGS entraîné par glisser-déposer, mais sans les couleurs qui varient selon le point de vue.

Quelles contraintes techniques prévoir pour un visualiseur web de splats ?

Prévoyez d’abord la mémoire : dans un test PlayCanvas sur 4,4 millions de gaussiennes, SuperSplat 2.x occupait 1 557 Mo au repos, contre 105 Mo pour SuperSplat 3.0, qui exige WebGPU. Le tri diffère entre WebGL et WebGPU, et les splats ne renseignent pas le tampon de profondeur, ce qui complique certaines interactions. Côté licences, gsplat est sous Apache-2.0 et un visualiseur web de splats sous MIT.

Le Gaussian Splatting fonctionne-t-il dans un casque de réalité virtuelle ou un moteur comme Unity ?

Oui, Unity et Unreal peuvent afficher des splats avec un moteur de rendu compatible, mais la prise en charge native varie selon leur configuration : 3dcreation conseille de la vérifier avant de fixer la chaîne de production. Côté casque, un visualiseur compatible VR ne garantit pas qu’un.ply quelconque fonctionnera sans préparation sur un casque autonome.