MonoGS

Matsuki 2024 · 논문

한 줄 요약 — “Gaussian Splatting SLAM”(CVPR 2024 하이라이트): 단안 SLAM에 3D Gaussian Splatting을 처음 적용한 연구로, 가우시안을 유일한 3D 표현으로 사용하고 래스터화된 맵에 대한 직접 최적화로 카메라를 추적하며, 3fps로 실시간 동작한다.

문제

3D Gaussian Splatting은 빠른 미분 가능 래스터화로 사실적인 맵을 생성하지만, 원본 3DGS 알고리즘은 “오프라인 Structure from Motion(SfM) 시스템으로부터 정확한 포즈를 필요로 한다” — 포즈가 주어진 배치 방법이다. SLAM 내부에서 이를 사용한다는 것은 정반대를 의미한다: 라이브 카메라로부터 가우시안을 점진적으로 구축하는 동시에 그 가우시안으로부터 포즈를 추정하는 것이며, 이는 “시각 SLAM에서 가장 근본적이면서도 가장 어려운 설정” — 단일 단안 RGB 스트림에서 이루어진다. 이 설정에서는 래스터화가 시선 방향을 따라 아무런 제약도 부과하지 않으며, 새로 삽입된 가우시안은 여러 시점이 제약을 걸기 전까지 기하학적으로 모호하다.

방법 및 아키텍처

맵은 비등방성 가우시안 집합 G\mathcal{G}이며, 각각은 색상 cic^i, 불투명도 αi\alpha^i, 월드 좌표 평균 μWi\boldsymbol{\mu}_W^i와 공분산 ΣWi\boldsymbol{\Sigma}_W^i를 가진다(구면 조화 함수는 생략). 픽셀 색상은 깊이 순으로 정렬된 N\mathcal{N}개의 가우시안을 스플래팅하고 알파 블렌딩하여 합성된다.

Cp=iNciαij=1i1(1αj),Dp=iNziαij=1i1(1αj),\mathcal{C}_p=\sum_{i\in\mathcal{N}}c_i\alpha_i\prod_{j=1}^{i-1}(1-\alpha_j), \qquad \mathcal{D}_p=\sum_{i\in\mathcal{N}}z_i\alpha_i\prod_{j=1}^{i-1}(1-\alpha_j),

여기서 ziz_i는 레이를 따라 가우시안 ii까지의 거리이다(깊이도 동일한 방식으로 래스터화된다). 이미지로의 투영은 μI=π(TCWμW)\boldsymbol{\mu}_I=\pi(\boldsymbol{T}_{CW}\cdot\boldsymbol{\mu}_W), ΣI=JWΣWWJ\boldsymbol{\Sigma}_I=\mathbf{J}\mathbf{W}\boldsymbol{\Sigma}_W\mathbf{W}^\top\mathbf{J}^\top이며, TCWSE(3)\boldsymbol{T}_{CW}\in SE(3)는 카메라 포즈, J\mathbf{J}는 선형화된 투영의 야코비안, W\mathbf{W}TCW\boldsymbol{T}_{CW}의 회전 부분이다.

DμCDTCW=[IμC×],\frac{\mathcal{D}\boldsymbol{\mu}_C}{\mathcal{D}\boldsymbol{T}_{CW}}=\begin{bmatrix}\boldsymbol{I} & -\boldsymbol{\mu}_C^{\times}\end{bmatrix},

여기서 μC×\boldsymbol{\mu}_C^{\times}는 카메라 좌표에서 가우시안 중심의 반대칭 행렬이다. 이들은 CUDA 래스터라이저에 그대로 삽입된다.

실험 결과

RTX 4090을 갖춘 데스크톱에서(다중 프로세스 구현, 단안 3fps로 실시간 동작):

SLAM에서의 의미

MonoGS는 가우시안 스플래팅 SLAM의 정통적인 단안 진입점이다: 렌더링 품질의 맵과 카메라 추적이 하나의 미분 가능한 표현을 대화형 속도로 공유할 수 있음을 보였다. 그 해석적 야코비안, 직접 정합 방식은 스플래팅 SLAM을 직접법(DTAM, LSD-SLAM, DSO)으로 다시 연결한다 — 같은 광도 원리를 훨씬 풍부한 맵에 적용한 것이며, 공가시성 기반 키프레임 선정은 DSO의 윈도우 관리를 반영한다. 이 연구는 MonoSLAM과 iMAP과 같은 임페리얼 칼리지 연구실 출신이며, 이 두 연구 역시 각자의 시대에 맵 표현을 재정의한 바 있다.

실습

관련 문서