【論文紹介】1分で3DGS再構築!  高速化手法 “Fast Converging 3D Gaussian Splatting”

本記事では、「Fast Converging 3D Gaussian Splatting for 1-Minute Reconstruction」という論文を紹介します。

この研究は、SIGGRAPH Asia 3DGS Fast Reconstruction Challengeのために開発され、厳しい1分間の制限時間内で、高精度な3D Gaussian Splatting (3DGS) 再構築を実現した画期的なパイプラインです。

論文は2026年1月28日にarXivで公開されており、SIGGRAPH Asia 3DGS Fast Reconstruction Challengeでトップパフォーマンス(PSNR 28.43)を達成し、見事1位を獲得しています。

3D Gaussian Splattingとは?

3DGSは、3次元のシーンを多数の「Gaussian」(ガウス分布の形状をした楕円体)で表現し、高速かつ高品質なレンダリングを可能にする革新的な技術です。しかし、既存の手法では、高い視覚的忠実度を達成しつつ、リアルタイムでの収束(学習の完了)は依然として難しい課題でした。その主な理由は以下の3点です。

  • 現在のラスタライズパイプラインの効率の限界
  • 高品質な初期化への高い依存性
  • 効果的な密化(新しいGaussianの追加)と剪定(不要なGaussianの削除)戦略の不足

この論文は、SIGGRAPH Asia 3DGS Challengeが設定した「1分間の学習時間」という厳しい制約の中で、これらの課題を克服するためのアプローチを提案しています。

2段階の高速化戦略

本論文のソリューションは、大きく2つの段階に分かれています。これは、チャレンジの異なるラウンド、すなわちノイズの多いSLAM生成カメラ姿勢(第1ラウンド)と、高精度なCOLMAP生成カメラ姿勢(第2ラウンド)の両方に対応するためです。

それぞれの段階で、最適な高速化と精度向上の戦略が採用されています。

第1ラウンド:ノイズのあるSLAM姿勢での高速再構築

第1ラウンドでは、SLAMによって生成されたカメラ姿勢が使われるため、その軌跡にはノイズが含まれています。この不正確な姿勢情報と、疎な点群、サンプリングの難しいフレームに対応するため、複数の技術が組み合わせられています。

レンダリング効率の向上:Compact Bounding Boxとロードバランス

3DGSのようなレンダリング手法では、大きく分けて2つのステップがあります。一つは、3D Gaussianを画像平面に投影し、どのピクセル範囲(タイル)に影響を与えるかを計算する「preprocessCUDA」。もう一つは、実際にピクセルごとの色を計算する「renderCUDA」です。

しかし、従来の3DGSでは、特に細長いGaussianの場合、多くの無関係なタイルが計算対象となり、計算が無駄になっていました。

そこでこの論文では、Speedy-splatを参考に「Compact Bounding Box (SnugBox)」という解析的なアプローチを採用し、描画に本当に必要なタイルのみに絞り込むことで、この無駄を大幅に削減します。

論文「Fast Converging 3D Gaussian Splatting for 1-Minute Reconstruction」より引用

これにより、必要な計算量が減り、レンダリングが高速化されます。さらに、GaussianごとにBounding Boxのサイズが大きく異なることで発生するスレッドの不均一な負荷(スレッド発散)を解消するため、「ロードバランス」技術も導入し、GPU内のスレッド間で作業を均等に分散させることで、このステップをさらに加速させています。

バックプロパゲーションの効率化:Per-Gaussian Parallelism

学習時には、レンダリングされた画像と正解画像との誤差を基に、Gaussianのパラメータを更新するための勾配(gradients)を計算する「バックプロパゲーション」が行われます。

従来のバックプロパゲーションでは、各ピクセルが担当するGaussianの勾配を計算する「per-pixel parallel strategy」が用いられていました。しかし、1つのタイルに数百から数千ものGaussianが含まれる場合があり、複数のピクセルが同じメモリ領域に同時に書き込みを行おうとすることで「スレッド競合」が発生し、パフォーマンスが低下するという問題がありました。

この問題を解決するため、Taming-GSに導入された「per-Gaussian backward pass」を採用しています。

論文「Fast Converging 3D Gaussian Splatting for 1-Minute Reconstruction」より引用

この戦略では、各スレッド(またはスレッドのグループ)がGaussianごとに勾配計算を担当します。前方パスで中間結果をキャッシュしておき、後方パスでは各スレッドグループが独立して勾配を更新し、最終的に一度だけグローバルメモリに書き込むことで、スレッド競合を大幅に削減し、効率を向上させます。

高速収束を促す表現:Neural-Gaussians

これらの高速化戦略を適用しても、RTX 4090上で1分以内に完全に収束させることは困難でした。これは、従来の3DGSが個々のGaussianを独立した要素として扱うため、パラメータ数が膨大になり、学習効率が低下することが原因でした。

そこで、Scaffold-GSで提案された「Neural-Gaussians」表現を採用しました。これは、各Gaussianの属性を、学習可能な「アンカー特徴」と「浅いグローバルMLP(ニューラルネットワーク)」から推論する手法です。これにより、学習パラメータの数を大幅に削減し、より高速な収束を可能にしています。

より良い初期化:Feedforward Initial Points

第1ラウンドのデータセットで提供される初期点群は、再構築には不十分であることが課題でした。そこで、以下の2つの戦略で初期化の質を向上させました。

  1. Metric3D-v2による単眼深度推定: 単眼画像から深度を推定し、SLAM点群にスケールを合わせて3D点としてサンプリング。
  2. AnySplatモデルからのGaussian点群サンプリング: 別の3DGSモデル(AnySplat)から推論されたGaussian点群をサンプリングして初期アンカー位置として使用。

これにより、初期点群の密度を高め、より高速な収束とシーンのカバー率向上を実現しています。

ノイズへの対応:Pose Optimization

第1ラウンドのカメラ姿勢は非常に不正確であるため、学習中にカメラ姿勢自体も最適化する「Pose Optimization」を導入しています。

論文「Fast Converging 3D Gaussian Splatting for 1-Minute Reconstruction」より引用

具体的には、全カメラに適用される補正的な回転と移動の変換デルタを学習可能パラメータとして持ち、レンダリング誤差の勾配を基にこのデルタを更新します。これにより、不正確な初期姿勢を補正し、レンダリング品質を大幅に向上させることができました。

第2ラウンド:高精度COLMAP姿勢でのさらなる最適化

第2ラウンドでは、COLMAPによって生成された、より高精度なカメラ姿勢が提供されます。この状況に合わせて、戦略を調整しています。

戦略変更の理由

高精度なCOLMAP姿勢では、第1ラウンドで有効だった姿勢最適化がかえってレンダリング品質を低下させることが判明したため、このモジュールは無効化されました。また、AnySplatによる高品質なGaussian初期化により、Neural-Gaussiansの必要性が低下しました。Neural-GaussiansにおけるMLP推論のオーバーヘッドが学習のボトルネックになるため、第2ラウンドでは標準の3DGS楕円体表現に戻しています。

Depth Regularization

COLMAPスケールにアラインされたMetric3D-v2による単眼深度予測を、レンダリング深度の教師信号として利用します。学習初期には深度損失の重みを高く設定し、再構築がより早く正しいシーン表面に収束するようにガイドします。ただし、レンダリング深度がGaussianの中心深度に対応するため、時間の経過とともにこの深度損失の重みを段階的にゼロに減らしています。

また、生深度値ではなく「視差」(逆深度)を監督することで、遠距離領域での深度推定の曖昧さや不安定性を軽減しています。

Multi-view Score Guided Densification

Neural-Gaussiansを削除したことで低下する収束速度を補うため、Fast-GSに導入された「Multi-view Score Guided Densification and Pruning」戦略を採用しています。

これは、学習中の密化と剪定の段階で、複数の学習ビューをランダムにサンプリングし、各ビューでのフォトメトリックエラー(レンダリング画像と正解画像の差)を計算します。エラーが高いピクセルに寄与するGaussianを特定し、それらの「multi-view consistency score」に基づいてGaussianを複製(クローン)または分割することで、エラーの高い領域に表現能力を効率的に割り当てます。また、冗長なGaussianは剪定することで、学習の安定性と高速化を実現しています。

実験結果と成果

本論文の手法は、RTX 4090 GPUを用いて、第1ラウンドで最大6,000イテレーション(Neural-Gaussians使用時)、第2ラウンドで最大15,000イテレーション(Neural-Gaussians不使用時)で実験されました。いずれも1分という厳しい時間制限内で学習を完了させることが求められました。

結果として、この研究はSIGGRAPH Asia 3DGS Fast Reconstruction ChallengeでPSNR 28.43という最高性能を達成し、見事1位を獲得しました。

特に、以下の点が成果として挙げられます。

  • レンダリング効率の向上: Compact Bounding Boxとロードバランスにより、順方向パスのボトルネックを解消。
  • バックプロパゲーションの効率化: Per-Gaussian Parallelismにより、スレッド競合を削減し、学習速度を向上。
  • 高速収束: Neural-Gaussians表現と、Feedforward Initial Pointsによる初期化の改善で、学習初期の収束を加速。
  • ロバスト性: Pose Optimizationにより、ノイズの多いSLAM姿勢にも対応。
  • 高精度化: Depth RegularizationとMulti-view Score Guided Densificationにより、COLMAP姿勢での最終的な品質を最大化。

まとめ

この論文は、3D Gaussian Splattingにおける高速かつ高精度な再構築の新たな可能性を示しました。特に、SIGGRAPH Asia 3DGS Challengeのような厳しい時間制約の中でトップパフォーマンスを達成したことは、その技術的貢献の大きさを物語っています。

提案された2段階の戦略と、各ラウンドで適用される多様な高速化・精度向上技術は、今後のリアルタイム3DGS研究に大きな影響を与えることでしょう。コードも公開されているため、興味のある方はぜひ試してみてください。