[논문 Review] Gaussian Grouping: Segment and Edit Anything in 3D Scenes

Roh Tae Gyu·2026년 5월 17일

논문 리뷰

목록 보기
24/28

[Paper] [Page] [Github]
Ye, M., Danelljan, M., Yu, F., & Ke, L
ECCV 2024

위 논문은 3DGS에서 각 가우시안들에게 semantic 정보가 없기 때문에 편집이 어렵다는 문제점에서 출발했다. 그래서 Gaussian Grouping 논문은 각 가우시안들에게 Identity Encoding 값을 넣어서 semantic 정보를 구분할 수 있도록 했다.

Method는 총 3단계가 있으며 각 단계별로 자세하게 살펴보겠다.

Fig 1. The method pipeline of our Gaussian Grouping contains three main steps

1단계 : Multi-view Captures with Anything Masks by SAM

  • 여러 각도에서 찍은 3D 씬의 2D 이미지들(N)을 모두 SAM에 넣어 Mask를 따냄
  • SAM은 이미지 한 장에 대해서 segmentation을 잘 하지만 여러장 이미지들 사이의 '연관성'은 모른다는 문제가 있음

2단계 : Consistent IDs for Anything Coherent Masks across Views

  • 1단계에서 발생한 SAM의 한계를 해결하기 위해 Mask Association 작업을 함(DEVA 비디오 트래킹 기술 사용)
  • Mask Association을 통해 시점이 달라져도 변하지 않는 N개의 2D Ground Truth를 생성함

3단계 : Grouping via Rendering

  • 기존의 3DGS parameter에 새로운 Identity Encoding을 추가함
    Θ={μi,si,qi,αi,SHi}i=1N\Theta = \{ \mu_i, s_i, q_i, \alpha_i, SH_i \}_{i=1}^N
  • 16차원의 Identity Encoding vector를 3DGS에 투영시켜 픽셀마다 IE가 섞인 2D 특징 이미지(𝐸_𝑖𝑑)를 만듬
  • 이때 물체의 고유한 정체성은 변하지 않기 때문에 SH 차수(degree)값을 0으로 설정
Eid=iNeiαij=1i1(1αj)E_{\text{id}} = \sum_{i \in N} e_i \alpha'_i \prod_{j=1}^{i-1} (1-\alpha'_j)

Eguation 1. Identity Encoding Rendering

  • 𝑒_𝑖 = Identity Encoding
  • 𝛼_𝑖^′ = 특정 픽셀에 미치는 실제 영향력
  • 𝛼_𝑖= 가우시안 자체의 최대 교유 불투명도
C=iNciαij=1i1(1αj)C = \sum_{i \in N} c_i \alpha_i \prod_{j=1}^{i-1} (1-\alpha_j)

Eguation 2. alpha-blending

위 두식을 비교하면 기존 3DGS의 알파 블렌딩 식과 매우 유사함을 알 수 있다.

Σ2D=JWΣ3DWTJT\Sigma^{2D} = J W \Sigma^{3D} W^T J^T

Eguation 3. 3D to 2D Projection

위 단계에서 중요한 부분은 Loss 값을 구하는 방식인데 여기서는 2D Loss 값과 3D Loss 값을 모두 사용한다.
1, 2D Identity Loss

  • 렌더링해서 만든 𝐸_𝑖𝑑를 SAM에 만든 GT와 비교를 하며 틀린 만큼 오차를 학습함
  • 학습 과정은 IE를 Input에 넣어서 F(MLP)를 추가하며 K만큼 복원한 후 분류함(SoftMax)

2, 3D Regularization Loss

  • 2D 학습만으로 진행하면 겉표면만 학습이 되기 때문에 3D 공간에서 물리적으로 가까이 붙어있는 이웃 가우시안들끼리(KNN) Identity Encoding이 같아지도록 묶음(비지도 학습)
  • occlusion 문제 해결하기 위함, 3D 공간 일관성을 활용
L3d=1mj=1mDKL(PQ)=1mkj=1mi=1kF(ej)log(F(ej)F(ei))\mathcal{L}_{3d} = \frac{1}{m} \sum_{j=1}^m D_{\text{KL}}(P \parallel Q) = \frac{1}{mk} \sum_{j=1}^m \sum_{i=1}^k F(e_j) \log \left( \frac{F(e_j)}{F(e'_i)} \right)

Eguation 4. 3D Regularization Loss

Lrender=Lrec+Lid=Lrec+λ2dL2d+λ3dL3d\mathcal{L}_{\text{render}} = \mathcal{L}_{\text{rec}} + \mathcal{L}_{\text{id}} = \mathcal{L}_{\text{rec}} + \lambda_{2d} \mathcal{L}_{2d} + \lambda_{3d} \mathcal{L}_{3d}

Eguation 5. Total Rendering Loss

이를 통해 다양한 Downstream Task를 진행할 수 있다.
Fig 2. The grouped 3D Gaussians after training, where each group represents a specific instance / stuff of the 3D scene and can be fully decoupled

위 사진을 보면 Object Removal, Inpainting, Colorization, Style Transfer, Scene Re-composition을 수행할 수 있다.

Algorithm 1. Gaussian Grouping
알고리즘을 살펴보면 기존 3DGS와 크게 달라지지 않고 Identity Encoding 부분과 Loss 값을 구하는 부분이 추가되었다.

Table 1. Gaussian Grouping Hyper parameters

실험은 다음과 같은 환경에서 진행되었다.

Table 2. Influence of Identity Encoding on Mip-NeRF360 [1] dataset with its 7 public scene

Table 3. Ablation of K of 3D Regularization Loss on the 3Dobject removal

Fig 3. Ablation on the Grouping Loss on the Bear inpainting case

Fig 4. Segmentation comparison between LERF [16] and our Gaussian Grouping on the rendering view

Fig 5. 3D Object removal on the Tanks & Temples dataset

Fig 6. Comparison on 3D object inpainting cases

Fig 7. Comparison on 3D object inpainting cases

Fig 8. Multi-object editing within the same 3D scene

위 논문의 한계점도 존재한다.

  • 동적 모델링 및 시간에 따른 업데이트 기능이 부족
  • 비지도 방식의 3D 가우시안 그룹화를 추가로 탐구하는 것이 필요
  • 2D AI 모델들의 성능 한계
  • SAM은 물체의 Semantic 정보가 없기 때문에 텍스트 prompt의 경우 Grounding-DNO라는 외부 모델을 추가로 사용
  • DEVA 모델의 한계
profile
돌아보니 꽃길이다

0개의 댓글