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_splattingextensionSPZ compression via
KHR_gaussian_splatting_compression_spz_23D 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 inasset.extrasUSDZ scene bundles with a guaranteed
metadata.yamlidentity card (uuid/scene_id/version_string) at the archive rootRigid dynamic-object assets (
splatsim.actor_assets/v1): object-local Gaussian clouds for cars and other shape-invariant actors, plus the bindings that say whichsequence_trackstrack renders with which asset
Installation¶
Requires Python >= 3.10.
pip install 3dgs-io
Or with uv:
uv add 3dgs-io
API Reference
- gltf_io – glTF/GLB I/O
- spz_io – SPZ / PLY I/O
- tiles_io – 3D Tiles Reader
- tiles_export – 3D Tiles Writer
- lidar_2dgs – LiDAR 2DGS I/O
- metadata – Typed Metadata
- usdz_metadata – USDZ Scene-Bundle Manifest
- actor_assets – Rigid Dynamic-Object (Actor) Assets
- Object-local frame
- Metric scale, not unit scale
- Assets and tracks are decoupled
- On-disk layout
ACTOR_ASSETS_ARCHIVE_PATHACTOR_ASSETS_PREFIXFIT_MODESMOTION_MODELSOBJECT_FRAME_CONVENTIONSH_POLICIESActorAssetActorAssetBankActorAssetSourceActorInstancebuild_actor_asset_bank()decode_actor_asset()encode_actor_asset()extract_actor_asset()load_actor_asset_dir()parse_actor_assets()rotate_sh_about_z()save_actor_asset_dir()encode_actor_assets_doc()resolve_actor_asset_bank()serialize_actor_assets()validate_instances_against_tracks()verify_actor_payload()