Skip to main content

Dynamic Gaussian Splats

Project description

DGS

This is the home of the Dynamic Gaussian Splat (.dgs) file format. This repository contains:

  • The reference encoder + decoder for .dgs files, implemented in C
  • Utility functions for manipulating .dgs files, implemented in C
  • Python bindings for the aforementioned

This library serves as both the specification and reference implementation for .dgs, and is the core of all projects within Splatkit.

Installation + Usage

To use DGS in your own project, you can install the package on pip:

pip install dgs-py

Then, it can be importated with a simple:

import dgs

Here is a full example generating a single .dgs file:

import dgs
import numpy as np

# example data:
means = np.array([
	[0.3,  0.0, 0.0], [-0.3, 0.1, 0.1], [0.0, -0.2, 0.0]
], dtype=np.float32)

scales = np.array([
	[0.2, 0.05, 0.05], [0.08, 0.3, 0.08], [0.1, 0.1, 0.25]
], dtype=np.float32)

rotations = np.array([
	[0.0, 0.0, 0.0, 1.0], [0.0, 0.0, 0.0, 1.0], [0.0, 0.0, 0.0, 1.0]
], dtype=np.float32)

opacities = np.array([
	[1.0], [1.0], [1.0]
], dtype=np.float32)

harmonics = (np.array([
	[ [1.0, 0.0, 0.0] ], [ [0.0, 1.0, 0.0] ], [ [0.0, 0.0, 1.0] ]
], dtype=np.float32) - 0.5) / 0.28209479177387814

# encode:
gaussians = dgs.Gaussians(
	means, scales, rotations, opacities, harmonics
)
metadata = dgs.Metadata()

dgs.encode(gaussians, metadata, "example.dgs")

Documentation

Coming soon!

Building

If you wish to contribute to this project, you will need to build it from source yourself. To build, you will need the tools:

  • setuptools (pip install setuptools)
  • pybind11 (pip install pybind11) Then, to build, you will first need to clone the repository and initialize the submodules:
git clone git@github.com:splatsdotcom/DGS.git
cd DGS
git submodule update --init --recursive

Then, the project can be built simply with:

pip install -v .

And the dgs package will become globally available on your system. There is currently no way to build the C library without the python bindings, but this will come in the future.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

dgs_py-1.1.1-cp313-cp313-win_amd64.whl (101.4 kB view details)

Uploaded CPython 3.13Windows x86-64

dgs_py-1.1.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

dgs_py-1.1.1-cp313-cp313-macosx_11_0_arm64.whl (114.6 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dgs_py-1.1.1-cp312-cp312-win_amd64.whl (101.4 kB view details)

Uploaded CPython 3.12Windows x86-64

dgs_py-1.1.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

dgs_py-1.1.1-cp312-cp312-macosx_11_0_arm64.whl (114.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dgs_py-1.1.1-cp311-cp311-win_amd64.whl (100.4 kB view details)

Uploaded CPython 3.11Windows x86-64

dgs_py-1.1.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

dgs_py-1.1.1-cp311-cp311-macosx_11_0_arm64.whl (114.1 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dgs_py-1.1.1-cp310-cp310-win_amd64.whl (99.7 kB view details)

Uploaded CPython 3.10Windows x86-64

dgs_py-1.1.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

dgs_py-1.1.1-cp310-cp310-macosx_11_0_arm64.whl (113.0 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

dgs_py-1.1.1-cp39-cp39-win_amd64.whl (99.3 kB view details)

Uploaded CPython 3.9Windows x86-64

dgs_py-1.1.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

dgs_py-1.1.1-cp39-cp39-macosx_11_0_arm64.whl (113.2 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

Details for the file dgs_py-1.1.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: dgs_py-1.1.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 101.4 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for dgs_py-1.1.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 0604281121025713d534bf0131049586c8f458565e6d1ac519a19562f5f34615
MD5 b8bc2fc552adf9f5fb75812f9532f6c1
BLAKE2b-256 5c00ce11838f90db7548b9bf52a8aa361918d29cbad304453d3b4db131237a5b

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.1.1-cp313-cp313-win_amd64.whl:

Publisher: build_and_publish_wheels.yaml on splatsdotcom/DGS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dgs_py-1.1.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dgs_py-1.1.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 179498d112ed0c6571b590e01417448ed321377b6f437d227a6c21c0c93b18c2
MD5 a3c4a9b45c737cf7603b2cf4824b2913
BLAKE2b-256 5ba063d8e0617170f9f4ad31926e91ce17d880a367c3ebfef4a0541b7c94be4c

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.1.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build_and_publish_wheels.yaml on splatsdotcom/DGS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dgs_py-1.1.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dgs_py-1.1.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 55844d32c55456d6958c20dbadec26cbbf2039eb0ffd9a099701eba44b8c8c76
MD5 b8bdfcdfcf19f526681322149bc0cef6
BLAKE2b-256 15c938f634f26f31c352f407aca6a1b9e5208188868c14df9e3dfa09d30fe7e2

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.1.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: build_and_publish_wheels.yaml on splatsdotcom/DGS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dgs_py-1.1.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: dgs_py-1.1.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 101.4 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for dgs_py-1.1.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 c43fc8166e6b52016b575a664436da3a94c51fd12b488150bb76d4b63c2eefa7
MD5 efb5befb7e355b5bd249eafe5f03ec90
BLAKE2b-256 34b53fe8baca5349302b29645ed8e32c2da22ab4ab00869dabd2699d2d1ca61e

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.1.1-cp312-cp312-win_amd64.whl:

Publisher: build_and_publish_wheels.yaml on splatsdotcom/DGS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dgs_py-1.1.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dgs_py-1.1.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3425bb184c7649aa8e3b73ef940963ceea33c3cc3b4e1b597272ea9fdc58402d
MD5 c35a6d0d5ef0f88306f9d19deb98cbf2
BLAKE2b-256 0dbb1790365f383c5d64a73d8318912e9ddf250b8aeafa6011033034bab2531e

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.1.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build_and_publish_wheels.yaml on splatsdotcom/DGS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dgs_py-1.1.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dgs_py-1.1.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 88935d312fcc84a7e94e508634b711e14c48d7d374f79b924c49c4eca907fc55
MD5 61752efc30ce955b4331cce34947079b
BLAKE2b-256 fb044c9ae0b40eae151b9e19538bc32c31289ce833807dc86d4ada04a470d10e

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.1.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: build_and_publish_wheels.yaml on splatsdotcom/DGS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dgs_py-1.1.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: dgs_py-1.1.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 100.4 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for dgs_py-1.1.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0dd59ea466cb9d2ea8a6dd7fb1418d2c2aeeb73a60429e81a7c03d0ffd405da3
MD5 76e291841b56d04252c12aa5d59a9dc7
BLAKE2b-256 7767f32595db62bb42190019e02ba7bb0c31a7fcd622383724b5dde461b14667

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.1.1-cp311-cp311-win_amd64.whl:

Publisher: build_and_publish_wheels.yaml on splatsdotcom/DGS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dgs_py-1.1.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dgs_py-1.1.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 499a1c35be6f4cbec06b99c6e8fc33c62e93cd9261c5885dd912651c8f14d75a
MD5 5ff0e8bfb85b21325838df44ded41841
BLAKE2b-256 046c66c2f4947109283bc328ae58bedea2c1ced8c43ecd7136d60eb19348d2f6

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.1.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build_and_publish_wheels.yaml on splatsdotcom/DGS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dgs_py-1.1.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dgs_py-1.1.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5f991c080c2e5c4771e56c33b35d40663d8cb196fdecd50b93442fe4886d4420
MD5 2275b49dd772b3f03964db90f7ba9dff
BLAKE2b-256 276fcc37f171d51d93b34ec628cd78a3972bdfd1db2464aa06d9afb3ba67c793

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.1.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: build_and_publish_wheels.yaml on splatsdotcom/DGS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dgs_py-1.1.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: dgs_py-1.1.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 99.7 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for dgs_py-1.1.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c5deb14907b1ffa7b7ee18182eb5cc2b176447a9ce0b7a1d92e79f5b1ab30c0c
MD5 b7c19791e263a2e7b0dbf426bc77ae88
BLAKE2b-256 f7d84b203eefe9036ffad5b2002f6465686eea17cee7d91f3ac71cd853ac932f

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.1.1-cp310-cp310-win_amd64.whl:

Publisher: build_and_publish_wheels.yaml on splatsdotcom/DGS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dgs_py-1.1.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dgs_py-1.1.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 975bd1fc9609e34f0d4632b7ffe1c3f9a3cc3f91e05e535aa008b8eaf1984892
MD5 9a4f52a8593f699c0d473b3559f3ddf6
BLAKE2b-256 b423d7b190e273365111fa50b599c8fdfbf04f12730e82fad1eadcbc157ec9cd

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.1.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build_and_publish_wheels.yaml on splatsdotcom/DGS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dgs_py-1.1.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dgs_py-1.1.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 60a0d5442c203893855859a6e6605aa95f2764d0762b100c2d17f6f32bc56c50
MD5 4b06e8976f9341477084bc3b1b5aa562
BLAKE2b-256 61c10d245a76a3652c12c599b660c71cbee6bcc276badbdef2cdf5f98edf93ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.1.1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: build_and_publish_wheels.yaml on splatsdotcom/DGS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dgs_py-1.1.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: dgs_py-1.1.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 99.3 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for dgs_py-1.1.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 8d31c10a7f8f0f3d136c2f0a14c469ad46b8578f7e23d62481f0df0e3f89a428
MD5 72d03f49cfff82dbb39a4326eebc6a1e
BLAKE2b-256 1e429f18af8da94efd6f129663de54f62da4543a9fe1667717f2082b8cc3aeb6

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.1.1-cp39-cp39-win_amd64.whl:

Publisher: build_and_publish_wheels.yaml on splatsdotcom/DGS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dgs_py-1.1.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dgs_py-1.1.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 395fb84a3c419e1659349b97796df477c75daa1de35ede76cc71a70ed20a5281
MD5 4d7efe6135243775892b0100887a6754
BLAKE2b-256 f7cc6bd5829fd8e5ce72a09dc8ddd9fe39c9d0ad7b7268e20f9675d72a13752a

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.1.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build_and_publish_wheels.yaml on splatsdotcom/DGS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dgs_py-1.1.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dgs_py-1.1.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c9b4d21e2f7dec90dd693699e9a9bb4d5805f55320d5fbf4a876bdc5a2e3a4e4
MD5 464799def60304185d8daa52ae3e4375
BLAKE2b-256 d2f3226e0a54e501da54f9ee50196a44ec6958b1de15ba55614647b7e50ff033

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.1.1-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: build_and_publish_wheels.yaml on splatsdotcom/DGS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page