
SIGGRAPH 2023에서 발표된 3D Gaussian Splatting (3DGS) 은 3D Reconstruction과 Novel View Synthesis(NVS) 분야에서 중요한 전환점을 마련한 연구로 평가받는다. 해당 논문에서는 3D 공간을 연속적인 Gaussian 분포의 집합으로 표현하는 방식을 제안하며, 기존 NeRF 기반 모델들이 가진 느린 최적화 속도와 렌더링 시간 문제를 획기적으로 개선하였다.
3DGS는 NeRF와 3D point-based rendering의 장점을 결합하여 실시간 렌더링이 가능한 효율적인 3D 표현 방식을 제시한다. 이는 고품질의 Novel View Synthesis를 가능하게 하면서도, 기존 기법들보다 훨씬 빠른 학습 및 추론 속도를 제공하는 것이 특징이다. 본 포스팅에서는 해당 논문을 이해하는 데 필요한 핵심 개념과 3DGS가 제안하는 동기 및 접근법을 정리하며, 모델이 기존 방법론과 비교하여 어떤 차별점을 가지는지 분석해 보고자 한다.
포인트 클라우드 기반 그래픽스는 3DGS 이전에도 오랫동안 연구되던 주제라고 한다. 그러다 3DGS가 기반삼은 방식은 비교적 최근에 연구된 point-based rendering 방법론으로, 각 point에 표면 속성을 부여한 Surfel을 활용한 아이디어이다.

2차원 Surfel은 Surface Splat의 줄임말로, 타원형의 형태를 가지며 위치 정보에 색상 정보를 가질 수 있다.

Vision 분야에선 SIGRAPH Asia 2019에서 발표된 Surfel을 활용한 미분가능한 렌더링 관련 연구가 있었다.
3DGS에서 활용하는 Gaussian은 2차원 Splat대신 3차원 Volume Splat으로, Volume Rendering을 가능하게 한다.

3D Gaussian의 표현식은 다음과 같이 3차원 공간에서 정규 분포를 정의하는 확률밀도함수(PDF)로 표현된다:
이에 따라 각 3D Gaussian은 파라미터가 업데이트되면서 scene에서 차지하는 영역과 색상이 결정된다.
3DGS는 NeRF와 렌더링 방식에서 차이가 있지만, 그 수식은 NeRF에 등장하는 볼륨 렌더링 수식에서 유도된다.

NeRF의 다음 수식에서 로 치환해주면,

수식이 이렇게 변화한다. 이는 연속적인 함수를 샘플링한 것이었던 NeRF의 수식을 각 포인트(Gaussian) 기반의 계산으로 변환한 것으로 볼 수 있다. Tile Rasterization 단계에서 활용된다.

전체 모델 구조는 다음과 같다:
(a) SfM으로 생성한 포인트클라우드와 카메라 파라미터를 입력으로 받는다. 이후 각 포인트를 평균, 공분산 행렬 , 색상 , 그리고 투명도 를 가진 3D Gaussian으로 변환한다.
(b) 카메라 데이터를 바탕으로 3D Gaussian을 2차원으로 projection한다. 그리고 Differentiable Tile Rasterizer를 통해 2D로 투영된 Gaussian들을 depth 기준으로 정렬하고 순차적으로 -blending 하여 출력 이미지를 렌더링한다.
(d) GT 이미지와의 비교로 Loss 계산 후 역전파 과정을 통해 Gaussian의 파라미터 업데이트되고, 필요시 Adaptive Density Control에 의해 Gaussian의 분할, 제거, 복제가 이루어진다.
타일 기반으로 Gaussian을 정렬, 렌더링한다. GPU 가속 알고리즘으로, 각 타일을 병렬적으로 렌더링한다.
그 과정은 다음과 같다:

3D Gaussian의 개수를 동적으로 조정하여 scene을 효율적으로 표현하는 방법이다. Gaussian의 밀도를 Loss를 바탕으로 최적화한다. Clone, Split, Pruning을 활용한다.

Ablation Study 결과. Split은 백그라운드 reconstruction에 효과적이었고, Clon은 세밀한 디테일(사진상 바퀴 살)의 reconstruction에 필요했음이 보여졌다.

Loss 는 다음과 같이 L1 + D-SSIM Loss를 합한 방식으로 정의되어 있다.
그 외에도, Anisotropic한 Gaussian을 사용한 방식과 초기 Gaussian 생성시 SfM 포인트클라우드 기반으로 생성한 방식에 대한 Ablation Study 결과도 다음과 같이 제시되었다.
Anistropic Covariance.

Initialization from SfM. 배경을 제외하고는 큰 퀄리티 차이가 없다.


논문의 가장 첫 장에 메인으로 등장하는 결과. 다른 모델들과 비교했을 때, inference 속도가 비교가 안되게 빠르다.

백그라운드의 디테일이나 바퀴살 등의 얇고 세밀한 표현에서 좋은 성능을 보이고 있음이 보여진다.

테이블로 살펴보면, 30K iteration 모델의 경우 성능이 상당히 인상깊다. NeRF가 이미지의 고해상도에 집중한 데에 비해 3DGS가 효율적 측면에 집중했다는 사실을 고려하면 시간적 효율성과 결과 퀄리티를 균형있게 잡았다.