3dgs_io

A Python library for reading and writing 3D Gaussian Splatting data in glTF (KHR_gaussian_splatting), 3D Tiles (OGC), SPZ, and PLY formats.

Features

  • glTF/GLB save & load with the KHR_gaussian_splatting extension

  • SPZ compression via KHR_gaussian_splatting_compression_spz_2

  • 3D Tiles reader/writer with multi-layer support (camera 3DGS / LiDAR 2DGS)

  • LiDAR 2DGS dedicated I/O for surfel-based Gaussian representations

  • SPZ / PLY import & export with automatic coordinate system conversion

  • Typed metadata (GlbMetadata) stored in asset.extras

  • USDZ scene bundles with a guaranteed metadata.yaml identity card (uuid / scene_id / version_string) at the archive root

  • Rigid dynamic-object assets (splatsim.actor_assets/v1): object-local Gaussian clouds for cars and other shape-invariant actors, plus the bindings that say which sequence_tracks track renders with which asset

Installation

Requires Python >= 3.10.

pip install 3dgs-io

Or with uv:

uv add 3dgs-io