4C4D: 4 Camera 4D Gaussian Splatting 리뷰

신희준·2026년 4월 24일

Inverse Graphics

목록 보기
15/15

[4C4D: 4 Camera 4D Gaussian Splatting]([2604.04063] 4C4D: 4 Camera 4D Gaussian Splatting) (Junsheng Zhou, Zhifan Yang, Liang Han, Wenyuan Zhang, Kanle Shi, Shenkun Xu, Yu-Shen Liu /CVPR 2026)

Sparse camera setting에서 4D scene rendering을 가능하게 하고자 하는 연구

  • appearance 와 geometry의 optimization 균형을 해결하는 방식

Problems

  • Dynamic Scene Rendering을 consumer-level setting에서 가능하게 하고자 함.
    ➡️ sparse camera setting
  • 저자들은 Sparse view setting에서 4DGS가 잘 안되는 이유는 편향된 optimization 때문이라고 함.
    → appearance를 학습하는 것은 비교적 쉬운데, geometry를 학습하는게 어려움.
    → 학습한 각도에서는 잘 보이지만, unseen view에서는 기하 구조가 깨져서 noise와 artifact가 심함.
  • 이 연구에서는 geometry와 appearance learning의 균형을 잘 조절해줄 수 있는 Neural Decaying Function을 도입하여 4대의 camera만으로 나름 괜찮은 퀄리티의 4D scene rendering을 수행함.

Methodology

  • 4DGS에 geometry를 더 잘 학습할 수 있는 전략을 추가.

Neural Decaying Function

  • 저자들은 sparse-view setting에서 4DGS를 최적화하면, appearance에 overfitting되고, geometric consistency를 무시하는 경향이 있다는 것을 실험적으로 밝혀냈음.

  • Appearance는 RGB로 Geometry는 Depth로 확인하였을 때, 공간적인 정보가 부족하여 일관적인 depth를 추출하지 못한 것을 확인할 수 있음.

  • 이러한 관찰을 바탕으로 Geometric learning을 더 잘 할수 있도록 Neural opacity decaying control을 활용

  • 간단한 network로 구현되는 Nerual Decaying Function fθf_\theta는 각각의 4D gaussian primitive 정보를 받고 decay factor를 출력

    τ=fθ(x,y,z,o,r)\tau =f_\theta(x,y,z,o,r)
  • 그리고 각 gaussian의 opacity를 조절. 그러면 timestep t~\tilde t에서 opacity는 아래와 같이 계산

    • oo앞에 exp는 원래 4DGS에서 time conditional prob나올 때 1D gaussian margin

    • 해당 가우시안의 해당 시간에서 존재 여부 느낌 (t~=μ\tilde t = \mu일때 해당 가우시안은 가장 선명하게 존재.)

      o(t~)=τexp(12(t~μt)2Σ4,4)oo(\tilde{t})=\tau *exp(-\frac{1}{2}\frac{(\tilde{t}-\mu_t)^2}{\Sigma_{4,4}})*o
  • 이 Neural decaying mechanism은 optimization gradient가 geometric learning에 더 집중할 수 있도록 도와줌
    geometryappearance의 균형을 맞춤
    ✅ 쉽게 이해해보자면,, 가우시안의 opacity를 높게 설정하면, 뒤쪽의 기하 구조가 틀려도 rendering하는 앞쪽 외관만 그럴듯 하게 만들 수 있음. 불투명도를 낮추게 되면 여러 가우시안들이 화면 상 이미지에 관여하게 되므로 모델은 제대로 된 위치에 가우시안들을 배치해야지만 색상들을 재현할 수 있음.

Separate Decay Strategy based on Visibility

  • 위에서 설명한 Neural Decaying Function을 모든 gaussian에 적용하면 효과가 좋지 않음. → 왜냐하면 4DGS의 gradient는 랜더링에 기여하는, 현재 카메라 뷰에서 보이는 영역으로만 흐르기 때문에, 보이지 않는 gaussian들에 fθf_\theta를 적용하면 성능이 떨어짐
  • 그래서 Visibility detection을 수행하여 보이는 가우시안에만 decay 전략을 적용하는 것으로 한다. (GmG_m : visible gaussians, Gm=GGm)G^*_m=G-G_m)
    τ(g)={fθ(x,y,z,o,r)  if gGmβ              if gGm\tau(g)= \begin{cases} f_\theta(x,y,z,o,r) \; \text{if }g\in G_m \\ \beta \;\;\;\;\;\;\; \text{if }g\in G^*_m \end{cases}

Experiments

https://junshengzhou.github.io/4C4D/

  • 여러 카메라로 찍은 dynamic scene 데이터 중에서 4개의 카메라를 선택해서 rendering하고 나머지 중 선택해서 evaluate

  • 직접 만든 데이터셋에 대해서도 검증 (GoPro-style 카메라 4대로만 촬영한 데이터셋)

  • 근데 생각보다 4DGS 기본 논문도 보기에는 잘하는것 같음. 근데 Geometry consistency는 확실히 4C4D가 나은듯

profile
공부하고 싶은 사람

0개의 댓글