SplaTAM

Keetha 2024 · 論文

一行要約 — 3D Gaussian Splattingをマップとして用いた最初期のSLAMシステムの一つ(GS-SLAMやMonoGSと同時期)。微分可能ラスタライザを通じたRGB-Dのsplat-track-mapループであり、レンダリングされたシルエットが姿勢最適化とGaussianの密度化の両方を導く。

問題

密なSLAM手法は「シーンを非ボリューメトリックあるいは陰的に表現する方法によってしばしば妨げられていた」。手作りの明示的マップ(点、サーフェル、SDF)は豊富な3D特徴がある場合にのみ信頼できるトラッキングを行い、観測された表面しか説明できない。一方で陰的なラディアンスフィールドSLAM(NICE-SLAM、Point-SLAM)は高コストなレイごとのボリューメトリックサンプリングを必要とし、損失をスパースなピクセル集合に対してしか計算できない。3D Gaussian Splattingは最大400 FPSでラスタライズできるが、常に既知の姿勢を前提としていた。SplaTAM(CVPR 2024、CMU/MIT)は「3D Gaussianによるシーン表現が、単一の姿勢未知の単眼RGB-Dカメラを用いた密なSLAMを可能にすることを初めて示した」。

手法とアーキテクチャ

単純化されたGaussianマップ。 シーンは等方的で視点独立なGaussianの集合であり、各Gaussianは8つのパラメータ(RGB色c\mathbf{c}、中心μR3\boldsymbol{\mu}\in\mathbb{R}^3、半径rr、不透明度oo)を持ち、f(x)=oexp(xμ22r2)f(\mathbf{x}) = o\exp\bigl(-\tfrac{\|\mathbf{x}-\boldsymbol{\mu}\|^{2}}{2r^{2}}\bigr)として空間に影響を与える。色、デプス、シルエットはいずれも、Gaussianを前から後ろへソートしてその2Dスプラットをアルファ合成することでレンダリングされる。

C(p)=i=1ncifi(p)j=1i1(1fj(p)),D(p)=i=1ndifi(p)j=1i1(1fj(p)),S(p)=i=1nfi(p)j=1i1(1fj(p)),C(\mathbf{p})=\sum_{i=1}^{n}\mathbf{c}_{i}f_{i}(\mathbf{p})\prod_{j=1}^{i-1}\bigl(1-f_{j}(\mathbf{p})\bigr), \quad D(\mathbf{p})=\sum_{i=1}^{n}d_{i}f_{i}(\mathbf{p})\prod_{j=1}^{i-1}\bigl(1-f_{j}(\mathbf{p})\bigr), \quad S(\mathbf{p})=\sum_{i=1}^{n}f_{i}(\mathbf{p})\prod_{j=1}^{i-1}\bigl(1-f_{j}(\mathbf{p})\bigr),

ここでfi(p)f_i(\mathbf{p})は投影された中心μ2D=KEtμ/d\boldsymbol{\mu}^{2D} = K\,E_{t}\boldsymbol{\mu}/dと半径r2D=fr/dr^{2D} = fr/d(d=(Etμ)zd=(E_{t}\boldsymbol{\mu})_{z})を用いる。シルエットSSは各ピクセルがどれだけのマップ的証拠を持つかを表す——マップの認識的不確実性である。

各フレームは3つのステップを実行する。

  1. カメラトラッキング。 新しい姿勢は等速伝播Et+1=Et+(EtEt-1)E_{t+1}=E_{t}+(E_{t}-E_{t\text{-}1})によって初期化され、その後Gaussianを固定した状態でラスタライザを通じた勾配降下によって精緻化される。ここでは十分にマップされたピクセルのみを用いる: Lt=p(S(p)>0.99)(L1(D(p))+0.5L1(C(p))).L_{t}=\sum_{\mathbf{p}}\Bigl(S(\mathbf{p})>0.99\Bigr)\Bigl(\mathrm{L}_{1}\bigl(D(\mathbf{p})\bigr)+0.5\,\mathrm{L}_{1}\bigl(C(\mathbf{p})\bigr)\Bigr).
  2. Gaussianの密度化。 マスクによって、マップがまだ説明していないピクセル——低いシルエット、あるいはレンダリングされた幾何よりも手前にある真の幾何——を選ぶ: M(p)=(S(p)<0.5)+(DGT(p)<D(p))(L1(D(p))>50MDE),M(\mathbf{p})=\Bigl(S(\mathbf{p})<0.5\Bigr)+\Bigl(D_{\mathrm{GT}}(\mathbf{p})<D(\mathbf{p})\Bigr)\Bigl(\mathrm{L}_{1}\bigl(D(\mathbf{p})\bigr)>50\,\mathrm{MDE}\Bigr), ここでMDEは中央値デプス誤差である。マスクされた各ピクセルは、そのピクセルの色、逆投影されたデプスにある中心、不透明度0.5、1ピクセル分の半径r=DGT/fr = D_{\mathrm{GT}}/fを持つGaussianを生成する。
  3. マップ更新。 姿勢を固定した状態で、Gaussianのパラメータはkk個のキーフレーム(現在のフレーム、最新のキーフレーム、そして現在のデプス点群とのフラスタム重なりが最も大きいk2k-2個のキーフレーム)にわたって最適化され、既存のマップからウォームスタートし、シルエットマスクなしの色+デプス損失とSSIM項を用いる。ほぼ透明または過大なGaussianは削除される。

実験結果

SLAMにおける意義

SplaTAMは3DGS SLAM研究系列の立ち上げに寄与し、明示的で微分可能なボリューメトリックマップがトラッキング、マッピング、視点合成の各面でNeRF風SLAMを対話的なレートで上回れることを示した。またレンダリングがレイマーチングではなくラスタライゼーションになれば、密な画素ごとの損失が手頃になることも示した。そのシルエットマスクは標準的な密度化・不確実性ゲーティングのツールとなり、微分可能ラスタライザを通じたトラック-マップの交互ループは、Photo-SLAM、RTG-SLAM、GS-ICP SLAM、そして多数の後続研究が土台とするテンプレートとなった。

関連ノート