SplaTAM

Keetha 2024 · 논문

한 줄 요약 — 3D Gaussian Splatting을 지도로 사용한 최초의 SLAM 시스템 중 하나(GS-SLAM, MonoGS와 동시대): 미분 가능한 래스터라이저를 통한 RGB-D splat-track-map 루프로, 렌더링된 실루엣이 포즈 최적화와 가우시안 밀도 증가를 함께 안내한다.

문제

밀집 SLAM 방법들은 “장면을 표현하는 비체적(non-volumetric) 또는 암시적인 방식에 자주 발이 묶여” 있었다: 수작업으로 만든 명시적 지도(포인트, 서펠, SDF)는 풍부한 3D 특징이 있을 때만 신뢰성 있게 추적되고 관측된 표면만을 설명하며, 암시적 방사장(radiance field) SLAM(NICE-SLAM, Point-SLAM)은 값비싼 광선별 체적 샘플링이 필요해 손실을 희소한 픽셀 집합에 대해서만 계산하도록 만든다. 3D Gaussian Splatting은 최대 400 FPS로 래스터화하지만 늘 알려진 포즈를 필요로 했다. SplaTAM(CVPR 2024, CMU/MIT)은 “3D 가우시안으로 장면을 표현하는 것이, 포즈가 없는 단일 단안 RGB-D 카메라만으로 밀집 SLAM을 처음으로 가능하게 함”을 보여준다.

방법 및 아키텍처

단순화된 가우시안 지도. 장면은 *등방성(isotropic)*이고 시점에 무관한 가우시안들의 집합이며 — 각각 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)로 공간에 영향을 준다. 색상, 깊이, 그리고 실루엣은 모두 가우시안을 앞에서 뒤로 정렬한 뒤 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는 각 픽셀이 얼마나 많은 지도 근거를 가지는지 — 즉 지도의 인식적 불확실성을 나타낸다.

각 프레임은 세 단계로 진행된다:

  1. 카메라 추적. 새로운 포즈는 등속도 전파 Et+1=Et+(EtEt-1)E_{t+1}=E_{t}+(E_{t}-E_{t\text{-}1})로 초기화된 뒤, 가우시안을 고정한 채 래스터라이저를 통한 경사 하강법으로 정제되며, 잘 매핑된 픽셀만 사용한다: 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. 가우시안 밀도 증가. 마스크가 지도가 아직 설명하지 못하는 픽셀을 고른다 — 실루엣이 낮은 곳, 또는 실제 기하가 렌더링된 기하보다 앞에 있는 곳이다: 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를 갖는 가우시안을 하나씩 생성한다.
  3. 지도 갱신. 포즈를 고정한 채, 가우시안 매개변수는 kk개의 키프레임(현재 프레임, 최신 키프레임, 그리고 현재 깊이 포인트 클라우드와의 프러스텀 겹침이 가장 큰 k2k-2개의 키프레임)에 대해 기존 지도로부터 웜스타트되어 최적화되며, 실루엣 마스크가 없는 색상+깊이 손실에 SSIM 항을 더해 사용한다; 거의 투명하거나 과도하게 큰 가우시안은 걸러진다.

실험 결과

SLAM에서의 의미

SplaTAM은 명시적이고 미분 가능하며 체적적인 지도가 추적, 매핑, 뷰 합성 모두에서 인터랙티브한 속도로 NeRF 방식 SLAM을 능가할 수 있음을 보여주며, 3DGS 기반 SLAM 연구 흐름을 촉발시켰다 — 그리고 렌더링이 광선 행진(ray marching)이 아니라 래스터화가 되면 픽셀별 밀집 손실이 충분히 저렴해진다는 점도 보여주었다. 그 실루엣 마스크는 밀도 증가와 불확실성 게이팅의 표준 도구가 되었고, 미분 가능한 래스터라이저를 통한 추적-후-매핑 교대 루프는 Photo-SLAM, RTG-SLAM, GS-ICP SLAM을 비롯한 많은 후속 연구가 따르는 템플릿이다.

관련 문서