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.0.2-cp313-cp313-win_amd64.whl (101.8 kB view details)

Uploaded CPython 3.13Windows x86-64

dgs_py-1.0.2-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.0.2-cp313-cp313-macosx_11_0_arm64.whl (114.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dgs_py-1.0.2-cp312-cp312-win_amd64.whl (101.8 kB view details)

Uploaded CPython 3.12Windows x86-64

dgs_py-1.0.2-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.0.2-cp312-cp312-macosx_11_0_arm64.whl (114.5 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dgs_py-1.0.2-cp311-cp311-win_amd64.whl (100.8 kB view details)

Uploaded CPython 3.11Windows x86-64

dgs_py-1.0.2-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.0.2-cp311-cp311-macosx_11_0_arm64.whl (114.0 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dgs_py-1.0.2-cp310-cp310-win_amd64.whl (100.1 kB view details)

Uploaded CPython 3.10Windows x86-64

dgs_py-1.0.2-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.0.2-cp310-cp310-macosx_11_0_arm64.whl (112.9 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

dgs_py-1.0.2-cp39-cp39-win_amd64.whl (99.7 kB view details)

Uploaded CPython 3.9Windows x86-64

dgs_py-1.0.2-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.0.2-cp39-cp39-macosx_11_0_arm64.whl (113.0 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: dgs_py-1.0.2-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 101.8 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.0.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 67f5b758da2c7ee2851ea0bc4f45608e26f25f1598a052d3ab7eadf8e37f0c4e
MD5 768cdb5c1b1955dd0e059ae6332e4747
BLAKE2b-256 e5dbb3939bd86c3c2b01a63b88f4e034b09255f66f0d8dc40adf7896807267dc

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.0.2-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.0.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dgs_py-1.0.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 935beca2998b219f6fc398caa19e2679734dfa3eae3c72a0ae25dbdcaa095d8e
MD5 927bcea9fe8992123f1bb15e3fa97b33
BLAKE2b-256 1d3a9871b52333560eb98f0696fb9096fb54cb87fce88a18257d5216ed77590f

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.0.2-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.0.2-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dgs_py-1.0.2-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b82bd4d9b268dfe9e447dba8796f1be05e72ade1c622d80bb5ba405adc1e399f
MD5 e2b497b69a586f67ef568ced3daa68f8
BLAKE2b-256 f20f766c13a15b3a10ba3e582f60406ac120a6ff2678a6e0a8a7650bb24e2843

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.0.2-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.0.2-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: dgs_py-1.0.2-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 101.8 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.0.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 c3dbb6599163a661370a53301b03cb51212d187b041b7d56578d518ca5d02c24
MD5 7bbf5883ad7bb2d738f600cf6b06c518
BLAKE2b-256 de952149c5e59eb7dd0ba2a5ad7957dbd533f9af52d30fea6dce2cd5d0e60209

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.0.2-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.0.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dgs_py-1.0.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b369aa7e0345ec93fd92fab5db971f75e3a3061ec2effad4744e9a9dbc84ab36
MD5 8f72e328eadcfe3f5e1614953e5dce4e
BLAKE2b-256 1eb0181acce03563bd62a69bf5a6c58b379cc5160e1309b67d94b176ed4faac5

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.0.2-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.0.2-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dgs_py-1.0.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2b6b9809fea9b560e87f43631732baa71c7f7ba2516ca92eaf446ea8486b756d
MD5 e54ac39c427521e00d8123372d929523
BLAKE2b-256 c71566276d92687dab7dda9a6290f25207f474de037ed77e2e0cd8f34a9d934b

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.0.2-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.0.2-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: dgs_py-1.0.2-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 100.8 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.0.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9495db7950ce9b8e048a7a40db02a09486380c4a350eba49dbe489d6109cd85d
MD5 2bf7584296a3e2efea51dfb815b21aa4
BLAKE2b-256 3f3b3201e8159c0cd531181c9dcbf8bad21c6d554996e6a3198f0d64f5f8cc56

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.0.2-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.0.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dgs_py-1.0.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4c99775f837fd76bd64bd37c1be0f88f2d78146aaa1a0c02598505dca0b2c426
MD5 a9a9bb7c729a00f3074b5d9e721305b0
BLAKE2b-256 fc833e3b0ec6072ff1ed875dbf6d9e34ffd090bcd4812efcb89f0678089a0922

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.0.2-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.0.2-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dgs_py-1.0.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bee3d751607243ef9fcd372fbf94d173cac7286e192375a4c80ac65c89cd65fc
MD5 152ced7272ca0cdf626c62fb472a4304
BLAKE2b-256 9e3deec9f2e1bd2412aab0d6641e1355fe5c1cfbd06b81be59af1d3139577177

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.0.2-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.0.2-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: dgs_py-1.0.2-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 100.1 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.0.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ffe183e676a0c01bf64af9ae856dfffeb72a21cef2c7c266b62f8f39091c1ce4
MD5 add451aa24a85b13e6305ecc14eb56c0
BLAKE2b-256 224fa12b4df6b0b4d6012b255ba316ac2f0966f4fc7b6d1f65a583c6a5896808

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.0.2-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.0.2-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dgs_py-1.0.2-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b7eee2b05285aea34b904b07dedfbdc74f13913283756beb558423f04a12a6d6
MD5 b18200a1adbd7155000ca301606d62e7
BLAKE2b-256 e096ddcc906c11d9956f73f86ee1d4ff8037b3a0a6aa97589ee35e761dc6a4e1

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.0.2-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.0.2-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dgs_py-1.0.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2859aab6c84695624ab935a851c2195063c70c3178fb958bbe376891ef12ccfb
MD5 1d124bea028d24a495f5f41f99d0228b
BLAKE2b-256 337c9b250123154c305bca025ef7c7d28777f8dca8bdbcad28b36cfc689117bf

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.0.2-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.0.2-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: dgs_py-1.0.2-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 99.7 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.0.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 b83ee579420f5ca55c623a8d2d0ede31d611ade047d9b3ad4548a0fd5a62cf83
MD5 04f7cdabc67aa3b6f67290eaf846c69b
BLAKE2b-256 d104300f6db81782fb7caa6d880913bdc638aee0513f2c83967c6b7886ee0373

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.0.2-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.0.2-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dgs_py-1.0.2-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ae9728e6e54b097f100d8ae2440d4ece0193174f3fc2042856be2c26d972e2f1
MD5 ea4900ebe0b5ec8f6fcaefe547865571
BLAKE2b-256 20c34e023e1b24fc28322340f0d73254b36de9193ae801ad5d55120590e94118

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.0.2-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.0.2-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dgs_py-1.0.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 36c9a54ad7dcda4788dd2f32dcbc262c34a4bdf40b9bd2840c68b25e1cc5ba22
MD5 c5de5fc927b7c4b522ebce34bf055163
BLAKE2b-256 6dc57fd3c39b3362b71b05907fad7a5ffc8a9c6a955e4d7ef88b16d9511fc9c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for dgs_py-1.0.2-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