nianticlabs/spz
File format for 3D Gaussian splats. About 10x smaller than the PLY equivalent with virtually no perceptible loss in visual quality. Offered as open source by Niantic Labs. More details at https://scaniverse.com/spz #3dgaussiansplats #gaussiansplatting
解決的問題
它提供了一種高度壓縮的檔案格式(.spz)以及相應的 3D Gaussian splats 函式庫。這解決了與標準 .ply 檔案相關的大型檔案大小問題,在視覺品質損失極小的情況下,將檔案大小減少了約 10 倍。
工作原理
該函式庫結合使用量化與壓縮技術來縮小 3D Gaussian 數據。它將位置表示為 24 位定點整數,將縮放表示為 8 位對數編碼整數,並使用歸一化四元數中最小的三個分量來表示旋轉。它採用 ZSTD 壓縮(在第 4 版本中)來獨立且並行地壓縮屬性流。該函式庫還處理座標系轉換(例如 RUB、LUF),以確保不同渲染系統之間的互操作性。
適用對象
專為從事 3D Gaussian splatting 開發的開發者設計,他們需要在不犧牲顯著視覺保真度的前提下,更高效地儲存、傳輸或載入 3D 場景。
亮點
- 10 倍壓縮:與
.ply格式相比,顯著減小了檔案大小。 - 多語言支援:提供 C++、TypeScript(透過 WASM)和 Python 綁定實作。
- 靈活的量化:允許使用者配置球面諧波的量化位元,以平衡檔案大小與品質。
- 座標系管理:內建對 16 個命名座標系的支援,以防止不同平台之間的對齊問題。
- 可擴展格式:支援用於附加元數據(如相機軌道限制)的供應商特定擴充 (ILV 紀錄)。
相關
- 專案
- 專案
- Dispatch
- 專案
- 專案