PozzettiAndrea 4974530084 Add GaussianAnalysis + GaussianExport nodes
## GaussianAnalysis (viewer/Gaussian Analysis)

Header-only PLY inspector — instant even for hundreds-of-MB scenes.
Reports:
  - splat count + file size + bytes/splat
  - PLY encoding (ascii vs binary little/big endian)
  - SH degree (derived from f_rest_* count: 0/9/24/45 -> 0/1/2/3)
  - precision (float32 all / uint8 all / mixed)
  - feature flags: has f_dc_*, has RGB uchar, has opacity, has scale_*,
    has rot_*
  - flavor heuristic: "raw 3DGS PLY (SH degree N)" / "SH-stripped"
    / "RGB-baked" / "compressed / packed"

OUTPUT_NODE: the report is also dumped into the node body via the `ui`
payload, while a STRING is returned so it can be chained into a Note
or printed downstream.

Sanity-tested against the bundled assets/apple.ply (200,000 splats,
47.30 MB, raw 3DGS SH=3, float32 all).

## GaussianExport (viewer/Gaussian Export)

PLY -> PLY (or PLY -> SPZ) reformatter. Three modes:

  ply         passthrough copy (just rename).
  ply_no_sh   strip f_rest_* (view-dependent SH coefficients). Keeps
              the DC term (f_dc_0/1/2 = base color) so the splat still
              looks right; loses specular highlights. ~3-5x smaller.
              Pure Python via plyfile.
  spz         SPZ v2 (gzipped) via the vendored ply_to_spz.mjs (same
              Node subprocess spz_route.py uses for the in-flight
              viewer transcode). ~9x smaller; SH quantizes to 4 bits.
              Requires Node on PATH.

Output is the absolute path to the produced file, so the node chains
into PreviewGaussians / GaussianMerge directly.

Typical use:
  LoadPLY -> GaussianMerge(target=200k) -> GaussianExport(ply_no_sh)
          -> PreviewGaussians

That gets you ~50 MB scenes from ~225 MB raw outputs without losing
view-independent appearance.
2026-05-16 15:19:44 +02:00
2026-05-16 15:08:00 +02:00
2026-05-15 08:18:29 +02:00
2026-05-16 15:08:00 +02:00
2026-05-12 23:35:50 +02:00
2026-05-16 15:01:43 +02:00

https://github.com/user-attachments/assets/4e21f1fd-9ba2-4ecc-b777-34f5dd9f7075

ComfyUI-GaussianPack

Tiny Gaussian-splat viewer for ComfyUI. One node, Preview Gaussians, with a gsplat.js WebGL preview and camera-intrinsics widgets (FOV, image width, image height).

ply_path -- Preview Gaussians

GPL-3.0. Forked structurally from XuanYu-github/comfyui-PlyPreview.

S
Description
No description provided
Readme
91 MiB
Languages
JavaScript 49.9%
Python 27.6%
HTML 22.5%