New feature: Niantic .SPZ Gaussian Splatting and Spherical Harmonics

Niantic .SPZ Gaussian Splatting file import and Spherical Harmonics support has been added to Babylon.

More background on SPZ: GitHub - nianticlabs/spz: File format for 3D Gaussian splats. About 10x smaller than the PLY equivalent with virtually no perceptible loss in visual quality. Offered as open source by Niantic Labs. More details at https://scaniverse.com/spz #3dgaussiansplats #gaussiansplatting

You can test it with the snapshot and it will be available later today with the Playground

Test PG:

SH from .PLY are not supported yet. The file size is ridiculous in that configuration so it’s way better to use .SPZ.

PR is here : SPZ splat file loader by CedricGuillemet · Pull Request #15849 · BabylonJS/Babylon.js · GitHub

16 Likes

Very cool! Thanks!! :sunglasses:

1 Like

Hi.
We were looking forward to that!
Amazing.
We have created a converter for spz format and wanted to check if everything is correct.
Atm we see some vey obvious quality loss in our tests, but we are not sure if that is the compression or we do something wrong.
Do you have the original .ply dataset of the gekko scene above to compare (at least visually) the .ply (or .splat) and the .spz scene.
When zooming close to the surface of the sculpture we can see kind of the same issues appear here.
But we want to investigate deeper.
Thanks and best.
Werner

Hi @yamaciller
I’ve fixed not later than yesterday an issue with splat orientation and 1 with better color conversion

I could not see any difference between ply and spz.
Also, for spz, take care of the coordinate system : Babylon.js docs

1 Like

Amazing!
Yes I think, that did the deed.
We are comparing, but it looks promising.
Btw. The .ply view in Babylon for GS doesnt carry through the SHs or?
Best.
Werner

No, for legacy reason. When .ply started to be used, filesize was an issue and SH support was dropped.
Then came .spz and SH was less an issue but its parsing was added for .ply.

1 Like