francescofugazzi/3dgsconverter

A Python command-line utility for converting and processing 3D Gaussian Splatting models. Supports N-to-N conversion between 3DGS (.ply), KSplat, SOG, SPZ, Splat, CloudCompare, Parquet, and Compressed PLY. Includes GPU-accelerated filtering (SOR, Density).

何を解決するか

3Dガウシアンスプラッティング(3DGS)は、高精細な制作、Webストリーミング、モバイル最適化といった目的に応じて、.ply.ksplat.spz.sog などのさまざまなファイル形式を用います。このツールは、これらのフォーマット間を自由にデータを移動できるユニバーサルコンバーターを提供し、生成された3Dシーンをクリーンアップ・圧縮するためのツールも備えています。

動作方法

このプロジェクトはフォーマットに依存しないパイプラインとして機能します。ソースファイルを中間の生データ形式に読み込み、オプションでフィルタを適用し、その後ターゲットフォーマットに書き出します。高性能を維持するために、Taichi Lang を使用して、K-Meansクラスタリング(圧縮に使用)や統計的外れ値除去(SOR)などのGPU加速処理を実行しています。

対象ユーザー

Web、モバイル、デスクトップなど、異なるプラットフォーム向けにシーンを最適化したい、またはポイントクラウドから「浮遊物」やノイズを除去したい開発者やアーティスト向けです。

特徴

  • ユニバーサル N から N への変換: 3DGS PLY、Cloud Compare、KSplat、SPZ(v3/v4)、SOG(v1/v2)、Parquet など、幅広いフォーマットをサポート。
  • GPU加速フィルタリング: CUDA、Metal、Vulkan を使用して、高速なクロッピング、不透明度フィルタリング、外れ値除去を実行。
  • 圧縮制御: Web対応フォーマット向けに、視覚的品質とファイルサイズのバランスを調整可能な圧縮レベルを提供。
  • データの保持: 非標準のPLYプロパティ(例:カメラパラメータ)を変換中に保持可能。
  • クロスプラットフォーム: Windows、Linux、macOS(Apple Silicon含む)で動作可能。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト