https://arxiv.org/abs/2312.09147
Triplane Meets Gaussian Splatting: Fast and Generalizable Single-View 3D Reconstruction with Transformers
Recent advancements in 3D reconstruction from single images have been driven by the evolution of generative models. Prominent among these are methods based on Score Distillation Sampling (SDS) and the adaptation of diffusion models in the 3D domain. Despit
arxiv.org
์ด ๋ ผ๋ฌธ์์๋ 3D Gaussian Splatting Representation ์ ํ์ฉํ์ฌ ๋จ์ผ ์ด๋ฏธ์ง์์ ๋น ๋ฅด๊ณ ์ผ๋ฐํ ๊ฐ๋ฅํ 3D ๋ณต์์ ์ํํ๋ ๋ฐฉ๋ฒ์ ์ ์ํ๊ณ ์์ต๋๋ค.
๐ ์ด ๋ ผ๋ฌธ์์ 3DGS ๋ฅผ ์ด์ฉํด์ ํ๋ ค๋ ๊ฒ?
๐ก ๋จ์ผ ์ด๋ฏธ์ง์์ 3D ๋ชจ๋ธ์ ๋น ๋ฅด๊ฒ ๊ณ ํ์ง๋ก ๋ณต์ํ๊ณ , ์ด๋ฅผ ํ์ฉํ ์๋ก์ด ๋ทฐ ๋ ๋๋ง์ ์ํ!
1๏ธโฃ 3D Gaussian Representation์ด๋?
- 3D Gaussian representation ์ 3D ๊ณต๊ฐ์์ ํน์ ์์น์ ์ ๋ณด (์: RGB, ๋ฐ๋, ๋๋ ๋ค๋ฅธ ํน์ฑ ๊ฐ) ๋ฅผ Gaussian ๋ถํฌ(ํ๊ท ๊ณผ ๋ถ์ฐ) ๋ก ํํํ๋ ๋ฐฉ์์ ๋๋ค.
- 3D ๊ณต๊ฐ ์ ์ฒด๋ฅผ ํ๋์ ์ฐ์์ ์ธ ํจ์๋ก ๋ชจ๋ธ๋ง ํ๋ ค๋ ์๋์ ๋๋ค.
- ํ์ง๋ง ๊ณ ์ฐจ์์ ์ด๊ณ ๋ณต์กํ ๊ณต๊ฐ์ ๋ค๋ฃจ๊ธฐ ๋๋ฌธ์ ํ์ต ๊ณผ์ ์์ ์ฌ๋ฌ ์ด๋ ค์์ด ์์ต๋๋ค.
- ํน์ง
- Discrete (์ด์ฐ์ ): 3D ๊ณต๊ฐ์ด ๋ถ์ฐ์์ ์ธ ์ ์งํฉ์ผ๋ก ๋ํ๋ ์ ์์. ๋ชจ๋ ์ขํ๋ฅผ ๋ค๋ฃจ๋ ค๋ฉด ๊ณ์ฐ๋์ด ํผ.
- Non-structural (๋น๊ตฌ์กฐ์ ): 3D ๋ฐ์ดํฐ๋ ์ผ๊ด๋ ๊ฒฉ์ ๊ตฌ์กฐ(์: ์ด๋ฏธ์ง์ ํฝ์
๋ฐฐ์ด)๊ฐ ์๋ ๊ฒฝ์ฐ๊ฐ ๋ง์.
- ์: Point cloud๋ ๋ถ๊ท์นํ๊ฒ ์ํ๋ง๋ 3D ์ ๋ค์ ์งํฉ.
- Higher-dimensional (๊ณ ์ฐจ์): 2D ์ด๋ฏธ์ง๋ณด๋ค ํจ์ฌ ๋ ๋ง์ ๋ฐ์ดํฐ ์์ ํฌํจํ๊ณ , ์ฒ๋ฆฌ ๋น์ฉ์ด ํผ.
2๏ธโฃ Implicit Representation์ด๋?
- Implicit representation์ ์ขํ ๊ธฐ๋ฐ ์ ๊ฒฝ๋ง(Neural Network)์ ์ฌ์ฉํด 3D ๋ฐ์ดํฐ๋ฅผ ์์ถ์ ์ผ๋ก ํํํฉ๋๋ค.
- ์: Neural Radiance Field (NeRF) ๊ฐ์ ๋ชจ๋ธ์ ์ขํ (x,y,z) ๋ฅผ ์ ๋ ฅ์ผ๋ก ๋ฐ์ RGB ๊ฐ๊ณผ ๋ฐ๋๋ฅผ ์์ธกํฉ๋๋ค.
- ํน์ง:
- ์ฐ์์ (Continuous): ๊ณต๊ฐ ์ ์ฒด๋ฅผ ์ง์ ์ํ๋งํ ํ์ ์์ด, ์ํ๋ ์ขํ์์ RGB์ ๋ฐ๋๋ฅผ ๊ณ์ฐ.
- ๋ ํจ์จ์ : ์ ์ฅ ๊ณต๊ฐ์ด ์๊ณ ํ์ต์ด ๋น๊ต์ ์ฌ์.
- ์ ํด์๋ ๋ฐ์ดํฐ๋ฅผ ๊ณ ํด์๋๋ก ๋ณต์ํ ์ ์๋ ์ฅ์ .
Implicit representation ์ธ NeRF ๋ฅผ ํ์ต์ํค๋๊ฒ ๋ณด๋ค 3DGS ์ ํ์ต์ํค๋ ๊ฒ์ด ๋์ฑ ์ด๋ ต์ต๋๋ค.
๊ทธ ์ด์ ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ๊ณ ์ฐจ์ ๋ฐ์ดํฐ ๋ฌธ์
- 3D ๊ณต๊ฐ์ ์ง์ ๋ค๋ฃฐ ๋๋ ์์ฒญ๋ ์์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ํ์ตํด์ผ ํฉ๋๋ค.
- Voxel-based ํํ ๋ฐฉ์์ฒ๋ผ 3D ๊ฒฉ์(grid)๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฉ๋ชจ๋ฆฌ ์๋ชจ์ ์ฐ์ฐ ๋น์ฉ์ด ๊ธ๊ฒฉํ ์ฆ๊ฐํฉ๋๋ค.
- ๋ถ๊ท์น์ฑ๊ณผ ๋น๊ตฌ์กฐ์ ํํ
- Point cloud๋ ์ค์ 3D ๋ฐ์ดํฐ๋ ๊ฒฉ์ ๊ตฌ์กฐ๊ฐ ์๊ธฐ ๋๋ฌธ์, ์ด๋ฅผ ๋ชจ๋ธ๋งํ๋ ค๋ฉด ๋ณต์กํ ๋ณํ์ด ํ์ํฉ๋๋ค.
- ๋ฐ๋ฉด, implicit representation์ ์ฐ์์ ์ขํ ๊ณต๊ฐ์ ๋ชจ๋ธ๋งํ๊ธฐ ๋๋ฌธ์ ์ด ๋ฌธ์ ๋ฅผ ํผํด ๊ฐ ์ ์์ต๋๋ค.
- ๋ฐ์ดํฐ ํฌ์์ฑ(Sparsity)
- 3D ๋ฐ์ดํฐ๋ ํฌ์(sparse) ํ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค.
์: ๋๋ถ๋ถ์ ์ ์ด ๋น ๊ณต๊ฐ์ ๋ถํฌํ ์ ์๊ณ , ์ผ๋ถ๋ง ์๋ฏธ ์๋ ์ ๋ณด๋ฅผ ๊ฐ์ง. - Gaussian representation์ ์ด๋ฌํ ํฌ์์ฑ ๋๋ฌธ์ ๋ชจ๋ธ์ ์ผ๋ฐํ์ ํ์ต์ด ๋ ์ด๋ ต์ต๋๋ค.
- 3D ๋ฐ์ดํฐ๋ ํฌ์(sparse) ํ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค.
- ๋ณต์กํ ๋ถํฌ ํ์ต
- Gaussian ๋ถํฌ ์์ฒด๊ฐ ํ๊ท (mean)๊ณผ ๊ณต๋ถ์ฐ(covariance) ์ ํ์ตํด์ผ ํ๋ฏ๋ก, ๋จ์ RGB์ ๋ฐ๋๋ฅผ ์์ธกํ๋ implicit ๋ฐฉ์๋ณด๋ค ๋ชจ๋ธ์ ๋ณต์ก๋๊ฐ ํฝ๋๋ค.
3D Gaussian Representation ์ ํ์ต์์ ์ด๋ ค์์ด ์์ง๋ง, ๋ค์ํ ์ฅ์ ์ด ์กด์ฌํฉ๋๋ค.
๋ ผ๋ฌธ์์๋ ์๋์ ๊ฐ์ ์ด์ ๋ก, NeRF์ ๊ฐ์ Implicit Representation ์ด ์๋๋ฐ๋, 3DGS ์ ๊ฐ์ explicit representation ๋ฐฉ์์ ์ฌ์ฉํ๊ณ ์ ํฉ๋๋ค.
1. ์ค์๊ฐ ๋ ๋๋ง(Real-time Rendering)์ด ๊ฐ๋ฅํ๋ค.
- NeRF์ ๊ฐ์ฅ ํฐ ๋จ์ ์ ๋ ๋๋ง ์๋๊ฐ ๋๋ฆฌ๋ค๋ ๊ฒ!
- NeRF๋ ๋ด๋ด ๋คํธ์ํฌ๋ฅผ ์ฌ์ฉํด ์ขํ๋ง๋ค ๋ฐ๋์ ์์ ์์ธกํด์ผ ํ๊ธฐ ๋๋ฌธ์ ํ ์ฅ์ ์ด๋ฏธ์ง๋ฅผ ์์ฑํ๋ ๋ฐ ์ ์ด~์ ๋ถ์ด ๊ฑธ๋ฆผ.
- ํ์ง๋ง 3DGS๋ explicit representation ๋ฐฉ์์ด๋ฏ๋ก, GPU์ rasterization pipeline(๊ทธ๋ํฝ ์นด๋์์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ง์ํ๋ ์ฐ์ฐ)์ ์ด์ฉํด์ ํจ์ฌ ๋น ๋ฅด๊ฒ ๋ ๋๋ง ๊ฐ๋ฅ.
2. ๋ ๋์ ํธ์ง ๊ฐ๋ฅ์ฑ(Editability)
- NeRF๋ ์ ๊ฒฝ๋ง์ด ์ขํ-์์ ๊ด๊ณ๋ฅผ ๋ด์ฌ์ ์ผ๋ก ํ์ตํ๋ฏ๋ก, ๊ฐ๋ณ ๊ฐ์ฒด๋ฅผ ์ง์ ์์ ํ๊ฑฐ๋ ์ด๋ํ๊ธฐ ์ด๋ ค์.
- ๋ฐ๋ฉด 3DGS๋ explicit representation์ด๋ฏ๋ก, ํน์ Gaussian์ ์ง์ ์์ , ์ด๋, ์ญ์ , ์ถ๊ฐํ๋ ๊ฒ ํจ์ฌ ์ฌ์.
- ์๋ฅผ ๋ค์ด, ๊ฐ์ ํ๊ฒฝ์์ ํน์ ๊ฐ์ฒด๋ง ์ด๋์ํค๊ฑฐ๋ ์ญ์ ํด์ผ ํ๋ ๊ฒฝ์ฐ 3DGS๊ฐ ํจ์ฌ ์ ๋ฆฌํจ.
3. ๋ ํจ์จ์ ์ธ ์ ์ฅ ๋ฐฉ์ (Compression & Storage)
- NeRF๋ ๋ด๋ด ๋คํธ์ํฌ ๊ธฐ๋ฐ์ด๋ผ์ ํ์ต๋ ๋ชจ๋ธ์ ์ ์ฅํด์ผ ํจ → ํฌ๊ธฐ๊ฐ ์ปค์ง.
- ํนํ ๊ณ ํด์๋ ํํ์ ์ํด์๋ ๋คํธ์ํฌ ํฌ๊ธฐ๊ฐ ๋งค์ฐ ์ปค์ง๊ณ , ์ด๋ฅผ ์ ์ฅํ๊ณ ๋ก๋ํ๋ ๊ฒ๋ ๋ถ๋ด.
- ๋ฐ๋ฉด, 3DGS๋ ๋จ์ํ Gaussian ๋ถํฌ(์์น, ํฌ๊ธฐ, ์์, ๋ฐฉํฅ)๋ค๋ก ํํ๋๋ฏ๋ก ์ ์ฅ ๊ณต๊ฐ์ด ํจ์ฌ ์ ๊ฒ ํ์ํจ.
4. ๊ธฐ์กด 3D ๊ทธ๋ํฝ์ค ํ์ดํ๋ผ์ธ๊ณผ์ ํธํ์ฑ
- NeRF๋ ๋ด๋ด ๋คํธ์ํฌ ๊ธฐ๋ฐ์ด๋ผ์ ๊ธฐ์กด 3D ๊ทธ๋ํฝ์ค ์์ง(์: Unreal Engine, Unity)๊ณผ ํตํฉ์ด ์ด๋ ค์.
- ํ์ง๋ง 3DGS๋ explicit 3D ๋ฐ์ดํฐ์ด๊ธฐ ๋๋ฌธ์, ๊ธฐ์กด ๋ ๋๋ง ๊ธฐ์ (OpenGL, Vulkan ๋ฑ)๊ณผ ์ฝ๊ฒ ํธํ๋จ.
๐ง ๋ ผ๋ฌธ์์๋ ๊ธฐ์กด์ NeRF ๊ธฐ๋ฐ ๋ฐฉ๋ฒ๋ค์ด ๋๋ฆฌ๊ฑฐ๋ ์ต์ ํ ๊ณผ์ ์ด ๋ณต์กํ๋ค๋ ๋ฌธ์ ๋ฅผ ์ง์ ํฉ๋๋ค. ๊ทธ๋์ 3D Gaussian Splatting์ Triplane Representation๊ณผ ๊ฒฐํฉํ์ฌ ๋ ํจ์จ์ ์ธ ๋ฐฉ์์ ์ ์ํ์ต๋๋ค.
๋ฐฉ๋ฒ | ํน์ง | ๋ฌธ์ ์ |
NeRF (Implicit) | ์ขํ๋ณ RGB์ ๋ฐ๋๋ฅผ ํ์ตํ์ฌ 3D ๋ณต์ | ๋ ๋๋ง ์๋๊ฐ ๋๋ฆผ, ํ์ต ์๊ฐ์ด ๊น |
Triplane Representation | 3๊ฐ์ ์ง๊ต ํ๋ฉด์ ์ฌ์ฉํด 3D ๊ณต๊ฐ ํํ | ๋ณผ๋ฅจ ๋ ๋๋ง์ด ํ์ํ์ฌ ๋ฉ๋ชจ๋ฆฌ ๋น์ฉ์ด ํผ |
3D Gaussian Splatting (Explicit) | 3D ๊ณต๊ฐ์ Gaussian ๋ถํฌ์ ์งํฉ์ผ๋ก ํํํ์ฌ ๋น ๋ฅธ ๋ ๋๋ง ๊ฐ๋ฅ | 3D Gaussians๋ฅผ ์ง์ ํ์ตํ๊ธฐ ์ด๋ ค์ (๋น๊ตฌ์กฐ์ , ๊ณ ์ฐจ์) |
Triplane + 3DGS (๋ ผ๋ฌธ ์ ์) |
Triplane์ ํ์ฉํด Gaussian ํน์ง์ ์ถ์ถํ๊ณ , Gaussian Splatting์ผ๋ก ๋ ๋๋ง | ๋น ๋ฅธ ์๋, ๊ณ ํ์ง ๋ ๋๋ง, ํ์ต ํจ์จ์ฑ ํฅ์ |
๐ ๋ ผ๋ฌธ์์ ์ ์ํ๋ ๋ฐฉ๋ฒ (Triplane-Gaussian Splatting, TGS)
๋ ผ๋ฌธ์์๋ ๊ธฐ์กด 3DGS ์ ํ๊ณ๋ฅผ ๋ณด์ํ๊ธฐ ์ํด Triplane Representation ๊ณผ Transformer ๊ธฐ๋ฐ ๋ชจ๋ธ์ ๊ฒฐํฉํ ์๋ก์ด ์ ๊ทผ๋ฒ์ ์ ์ํฉ๋๋ค.
๐ ํต์ฌ ์์ด๋์ด
- ๋จ์ผ ์ด๋ฏธ์ง ์
๋ ฅ → Transformer ๋ก 3D ๊ตฌ์กฐ ์์ฑ
- Point Cloud Decoder: ๋จ์ํ 3D ์ ํด๋ผ์ฐ๋๋ฅผ ๋จผ์ ์์ฑ
- Triplane Decoder: ์ด ์ ์ ๊ธฐ๋ฐ์ผ๋ก 3D ๊ณต๊ฐ์ ํน์ง์ ์ถ์ถ
- 3D Gaussian Decoder: Triplane ์์ ์ป์ ์ ๋ณด๋ฅผ ํ์ฉํ์ฌ Gaussian ์์ฑ์ ๋์ฝ๋ฉ
- Explicit + Implicit ํ์ด๋ธ๋ฆฌ๋ ๊ตฌ์กฐ
- Explicit (Point Cloud) → ๋๋ต์ ์ธ ํ์์ ์ ์
- Implicit (Triplane) → ์ธ๋ถ์ ์ธ ํ์์ ์ ๊ตํ
- 3D Gaussian Splatting → ์ต์ข ๋ ๋๋ง์ ๋น ๋ฅด๊ฒ ์ํ
- ๋ ๋๋ง ์๋์ ํ์ง์ ๋์์ ๊ฐ์
- ๊ธฐ์กด NeRF ๋ณด๋ค ๋น ๋ฅด๊ณ (์ ์ด ์ด๋ด์ ๊ฒฐ๊ณผ ์์ฑ)
- ๊ธฐ์กด Gaussian Splatting ๋ณด๋ค ๊ตฌ์กฐ์ ์ ๋ณด ํ์ฉ ๊ฐ๋ฅ
โ 1. Explicit Point Cloud (๋ช ์์ ์ ํด๋ผ์ฐ๋) → ๊ฐ์ฒด์ ๋๋ต์ ์ธ ํ์์ ์ ์
- Point Cloud(์ ํด๋ผ์ฐ๋)๋ 3D ๊ณต๊ฐ์์ ๊ฐ์ฒด์ ํ๋ฉด์ ์ ์ํ๋ ์ ๋ค์ ์งํฉ
- ์ด ๋ ผ๋ฌธ์์๋ ๋จ์ผ ์ด๋ฏธ์ง์์ 3D ๋ชจ๋ธ์ ๋ณต์ํ๊ธฐ ์ํด Transformer ๊ธฐ๋ฐ์ Point Cloud Decoder๋ฅผ ์ฌ์ฉํด์ ๋จผ์ ๊ฐ์ฒด์ ๋๋ต์ ์ธ ํ์(geometry)์ ์์ฑ
- ํ์ง๋ง, ์ ํด๋ผ์ฐ๋๋ง์ผ๋ก๋ ๋ํ ์ผํ ํํ์ด ์ด๋ ต๊ณ , ์์์ด๋ ํฌ๋ช ๋ ๊ฐ์ ์ ๋ณด๊ฐ ๋ถ์กฑ
์ฆ, Point Cloud๋ ๋จ์ํ 3D ํ์์ ๋ผ๋๋ฅผ ๋ง๋ค๊ธฐ ์ํ ๋จ๊ณ
โ 2. Implicit Triplane Field (์์์ ํธ๋ผ์ดํ๋ ์ธ ํ๋) → ํ์ ์ ๊ตํ + Gaussian ์์ฑ ์ธ์ฝ๋ฉ
- Triplane Representation์ 3๊ฐ์ 2D ํ๋ฉด์ ์ด์ฉํ์ฌ 3D ๊ณต๊ฐ์ ํจ๊ณผ์ ์ผ๋ก ํํํ๋ ๋ฐฉ๋ฒ
- 3๊ฐ์ ์ถ ์ ๋ ฌ(Orthogonal)๋ ํ๋ฉด์ ์ฌ์ฉํ์ฌ 3D ํน์ง์ ์ ์ฅํจ.
- ๊ฐ ํ๋ฉด์์ 3D ๊ณต๊ฐ์ ํน์ ์์น๋ฅผ ํฌ์ํ์ฌ ํน์ง์ ์ถ์ถํ ์ ์์.
- ๋ ผ๋ฌธ์์๋ Transformer ๊ธฐ๋ฐ Triplane Decoder๋ฅผ ์ฌ์ฉํด์, Point Cloud๋ก ์์ฑ๋ ๊ฑฐ์น ํ์์ ๋ ์ ๋ฐํ๊ฒ ๋ค๋ฌ์
- ๋ํ, ๋จ์ํ ํ์ ์ ๋ณด๋ฟ๋ง ์๋๋ผ 3D Gaussian ์์ฑ๋ ํจ๊ป ์ ์ฅํฉ๋๋ค.
์ฆ, Triplane์ Point Cloud๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ํ ์ผ์ ์ถ๊ฐํ๊ณ , Gaussian ์์ฑ์ ํฌํจํ๋ ์ญํ
โ 3. 3D Gaussian Properties (3D Gaussian ์์ฑ)
Triplane Representation์ด 3D Gaussian์ ์์ฑ์ ํฌํจ
์ด ์์ฑ๋ค์ Opacity(๋ถํฌ๋ช
๋), Spherical Harmonics(๊ตฌ๋ฉด ์กฐํ ํจ์) ๋ฑ์ ํฌํจ
- Opacity (๋ถํฌ๋ช
๋, α)
- ๊ฐ Gaussian์ด ์ผ๋ง๋ ํฌ๋ช ํ์ง ๋ํ๋.
- ์๋ฅผ ๋ค์ด, ์ ๋ฆฌ ๊ฐ์ ๋ฌผ์ฒด๋ ํฌ๋ช ๋(α ๊ฐ)๊ฐ ๋ฎ๊ณ , ๋ถํฌ๋ช ํ ๋ฌผ์ฒด๋ α ๊ฐ์ด ๋์.
- Spherical Harmonics (๊ตฌ๋ฉด ์กฐํ ํจ์, SH)
- 3D ํ๊ฒฝ์์ ์กฐ๋ช ์ ํํํ๋ ๋ฐ ๋ง์ด ์ฌ์ฉ๋๋ ์ํ์ ๋ชจ๋ธ.
- ํน์ ๋ฐฉํฅ์์์ ์กฐ๋ช ํจ๊ณผ๋ฅผ ๊ณ์ฐํ์ฌ ์ฌ์ค์ ์ธ ๋ผ์ดํ ํํ ๊ฐ๋ฅ.
์ฆ, Triplane์ ํตํด ๋จ์ํ ํ์ ์ ๋ณด๋ฟ๋ง ์๋๋ผ, ๋ ๋๋ง์ ํ์ํ ์์, ์กฐ๋ช , ํฌ๋ช ๋ ๊ฐ์ ์ ๋ณด๋ฅผ ํจ๊ณผ์ ์ผ๋ก ํํํ ์ ์์.
๋ณธ ๋ ผ๋ฌธ์์๋ End-to-End ํ์ต๋ฐฉ๋ฒ์ ์ฌ์ฉํฉ๋๋ค.
End-to-End (E2E) ๋?
๋ฐ์ดํฐ ์
๋ ฅ(Input)๋ถํฐ ์ต์ข
์ถ๋ ฅ(Output)๊น์ง, ์ค๊ฐ ๊ณผ์ ์์ด ํ๋์ ๋ชจ๋ธ๋ก ์ง์ ํ์ตํ๋ ๋ฐฉ์
- ๋ชจ๋ ๊ณผ์ ์ด ํ๋์ ๋คํธ์ํฌ์์ ์๋์ผ๋ก ์ต์ ํ๋จ
- ์ฌ๋์ด ์ค๊ฐ์ ๊ฐ์ ํ์ฌ ์์์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณํํ๊ฑฐ๋ ์กฐ์ ํ ํ์ ์์.
- ๋ฐ์ดํฐ ์ ๋ ฅ๋ง ์ฃผ์ด์ง๋ฉด ๋ชจ๋ธ์ด ์์์ ์ต์ ์ ํํ์ ํ์ต.
- ๋ชจ๋ ๊ณผ์ ์ด ํ๋์ ๋คํธ์ํฌ์์ ์๋์ผ๋ก ์ต์ ํ๋จ
- ์ฌ๋์ด ์ค๊ฐ์ ๊ฐ์ ํ์ฌ ์์์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณํํ๊ฑฐ๋ ์กฐ์ ํ ํ์ ์์.
- ๋ฐ์ดํฐ ์ ๋ ฅ๋ง ์ฃผ์ด์ง๋ฉด ๋ชจ๋ธ์ด ์์์ ์ต์ ์ ํํ์ ํ์ต.
- ๋ ์ ์ ์ธ๊ณต์ ์ธ ๊ฐ์
(Feature Engineering ์ด ํ์์์)
- ๊ธฐ์กด์๋ ์ฌ๋์ด ๋ฐ์ดํฐ๋ฅผ ๊ฐ๊ณต(์: ํน์ง ์ถ์ถ, ์ ์ฒ๋ฆฌ) ํด์ผ ํ์ง๋ง, E2E ๋ชจ๋ธ์์๋ ์ด๋ฐ ๊ณผ์ ์ด ํ์ ์์ด ๋ฅ๋ฌ๋์ด ์ง์ ํน์ง์ ํ์ตํจ.
Method
1๏ธโฃ Hybrid Triplane-Gaussian
- ํ์ด๋ธ๋ฆฌ๋ 3D ํํ ๋ฐฉ์ (Hybrid Representation)
- Explicit (๋ช
์์ ) → ์ ํด๋ผ์ฐ๋
- 3D ๊ณต๊ฐ์์ ๊ฐ์ฒด์ ๋๋ต์ ์ธ ํ์์ ์ ์ํ๋ ์ ์งํฉ (Point Cloud).
- Implicit (์์์ ) → Triplane
- 3๊ฐ์ ์ถ ์ ๋ ฌ๋ ํ๋ฉด(Triplane)์ผ๋ก 3D ๊ณต๊ฐ์ ํน์ฑ์ ์ ์ฅํ๋ ๋ฐฉ์.
- ๊ฐ ํ๋ฉด์ 3D Gaussian ์์ฑ(์์, ํฌ๋ช ๋, ์กฐ๋ช ๋ฑ)์ ํฌํจํ ํน์ง ํ๋(Feature Field)๋ฅผ ์ธ์ฝ๋ฉ.
- C: ํน์ง ์ฐจ์(Feature Channels), H: ๋์ด, W: ๋๋น
- Explicit (๋ช
์์ ) → ์ ํด๋ผ์ฐ๋
- Triplane ๊ตฌ์กฐ (Txy, Txz, Tyz)
- Triplane T์ 3๊ฐ์ ์ง๊ตํ๋ ํ๋ฉด(Orthogonal Feature Planes)์ผ๋ก ๊ตฌ์ฑ๋จ:
- Txy → XY ํ๋ฉด
- Txz → XZ ํ๋ฉด
- Ty → YZ ํ๋ฉด
- ์ด 3๊ฐ์ ํ๋ฉด์ ์ด์ฉํ์ฌ 3D ๊ณต๊ฐ์ ์์์ ์์น์์ ํน์ง ๋ฒกํฐ๋ฅผ ์ถ์ถํ ์ ์์.
- Triplane T์ 3๊ฐ์ ์ง๊ตํ๋ ํ๋ฉด(Orthogonal Feature Planes)์ผ๋ก ๊ตฌ์ฑ๋จ:
- 3D ์์น์์ Feature Vector ์ถ์ถ (Querying Feature Vector)
- ํน์ 3D ์ขํ x๊ฐ ์ฃผ์ด์ง๋ฉด:
- ํด๋น ์ขํ๋ฅผ ๊ฐ ํ๋ฉด์ ํฌ์(Projection).
- ๊ฐ ํ๋ฉด์์ Trilinear Interpolation์ ์ฌ์ฉํด ํน์ง์ ๋ณด๊ฐ(interp)ํ์ฌ ์ถ์ถ.
- ์ต์ข ์ ์ผ๋ก 3๊ฐ์ ํ๋ฉด์์ ์ป์ ํน์ง์ ์ฐ๊ฒฐ(⊕, Concatenation)ํ์ฌ ์ต์ข Feature Vector ft๋ฅผ ์์ฑ.
- ์ฌ๊ธฐ์:
- interp: Trilinear Interpolation (3D ๊ณต๊ฐ์์์ ๋ณด๊ฐ ๊ธฐ๋ฒ)
- ⊕: ํน์ง ๋ฒกํฐ๋ฅผ ์ฐ๊ฒฐ(Concatenation)
- pxy,pxz,py: ๊ฐ ํ๋ฉด์์์ ํฌ์๋ ์์น
- ํน์ 3D ์ขํ x๊ฐ ์ฃผ์ด์ง๋ฉด:
โถ ์ฆ, ํน์ง ๋ฒกํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก Gaussian ์์ฑ์ ๋์ฝ๋ฉํ์ฌ 3D ๋ชจ๋ธ์ ์ ๋ฐํ๊ฒ ํํ ๊ฐ๋ฅ!!
More Details,
1๏ธโฃ 3D Gaussian Decoder.
- ์
๋ ฅ:
- ํน์ ์์น x ∈ R^ (Point Cloud์ ์ )
- Triplane์์ ๊ฐ์ ธ์จ ํน์ง ๋ฒกํฐ f
- ๊ณผ์ :
- MLP(๋ค์ธต ํผ์ ํธ๋ก ) ฯg์ ์ฌ์ฉํด 3D Gaussian ์์ฑ์ ์์ธก
- ์ถ๋ ฅ:
- Gaussian ์์ฑ๋ค:
- Opacity α (๋ถํฌ๋ช ๋)
- Anisotropic Covariance (๋น๋ฑ๋ฐฉ์ฑ ๊ณต๋ถ์ฐ) → ํฌ๊ธฐ & ํ์ q
- Spherical Harmonics shsh (SH ๊ณ์, ์กฐ๋ช ์ ๋ณด)
- ์์น ์คํ์ Δx → ์ ์ ์์น ๋ณด์
- Gaussian ์์ฑ๋ค:
- ์์น ์คํ์
Δx ์ถ๊ฐ (Surface Points ๋ณด์ )
- ํ๋ฉด์ ์ ๋ค๋ง ์ฌ์ฉํ๋ฉด ์ ํํ Gaussian ํํ์ด ์ด๋ ต๊ธฐ ๋๋ฌธ์,
- ์ถ๊ฐ์ ์ธ ์์น ์คํ์ Δx ๋ฅผ ์์ธกํ์ฌ ์ต์ ์ ์์น๋ฅผ ์กฐ์ ํจ.
- ์ต์ข ์์น๋:
- Triplane ํน์ง + ์ด๋ฏธ์ง ํน์ง ๊ฒฐํฉ (Texture ํ์ง ํฅ์)
- Triplane์์ ๊ฐ์ ธ์จ ํน์ง f ๋ง์ผ๋ก๋ ์ถฉ๋ถํ์ง ์์.
- : Triplane ๊ธฐ๋ฐ์ 3D ๊ณต๊ฐ์ ํน์ง
- fl : ์ด๋ฏธ์ง ๊ธฐ๋ฐ์ ๋ก์ปฌ ํน์ง
- ์ต์ข ํน์ง ๋ฒกํฐ ๋:
- Triplane์์ ๊ฐ์ ธ์จ ํน์ง f ๋ง์ผ๋ก๋ ์ถฉ๋ถํ์ง ์์.
- ์ด๋ฏธ์ง ๊ธฐ๋ฐ ๋ก์ปฌ ํน์ง ์ถ๊ฐ (Self-Occlusion ํด๊ฒฐ)
- Self-Occlusion (์์ฒด ๊ฐ๋ฆผ ํ์) ๋ฌธ์ ํด๊ฒฐ์ ์ํด, ์ด๋ฏธ์ง์์ ์ง์ ํน์ง์ ๊ฐ์ ธ์ด.
- ํฌ์(Projection) ๋ฐฉ์์ ์ฌ์ฉํ์ฌ Point Cloud์ ๊ฐ ์ ์ ์๋ณธ ์ด๋ฏธ์ง ์์ ๋งคํ:
- ์ฌ๊ธฐ์ P()๋ ํฌ์ ํจ์(projection function)
- π ๋ ์นด๋ฉ๋ผ์ ์์น/๊ฐ๋ ์ ๋ณด(Camera Pose)
- P ๋ ์ ํด๋ผ์ฐ๋(Point Cloud)
- ์ถ๊ฐ๋๋ ๋ก์ปฌ ์ด๋ฏธ์ง ํน์ง:
- RGB ์์
- DINOv2 Feature (์ฌ์ ํ์ต๋ ์ด๋ฏธ์ง ํน์ง)
- Mask (๊ฐ์ฒด ์์ญ์ ๊ตฌ๋ถํ๋ ๋ง์คํฌ)
- 2D Distance Transform (๊ฐ์ฒด ๊ฒฝ๊ณ ์ ๋ณด ํ์ฉ)
โ ์ 3D ์ขํ ๋ฅผ Triplane์ Projection ํ๋๊ฐ?
์๋ฌธ์ : 3D ์ขํ x ๋ฅผ Triplane ์ ํฌ์ ์ํค๋ฉด ์ ๋ณด๋ค์ด ๋ฎ~!! ๋ํ๋๋๊ฐ??
→ ์๋์ฉ~ ํฌ์ ์์ฒด๋ ์ ๋ณด๋ฅผ ์๋ก ๋ง๋๋ ๊ฒ ์๋๋ผ, ์ด๋ฏธ Triplane ์ ์ ์ฅ๋ ์ ๋ณด๋ฅผ ์ฐพ์์ค๋ ๊ณผ์ !!
- Triplane ์๋ ์ด๋ฏธ 3D ๊ณต๊ฐ์ ์ ๋ณด๊ฐ ๊ฐ์ ์ ์ผ๋ก ์ ์ฅ๋์ด ์์!
- 3D ์์น x ๋ฅผ Triplane ์ ํฌ์ํ๋ฉด, ์ ์ฅ๋ ํน์ง ๋ฒกํฐ๋ฅผ ๋ถ๋ฌ์ฌ ์ ์์
- ์ฆ, Triplane ์์ฒด๊ฐ 3D Gaussian ์์ฑ์ ํฌํจํ ์ ์๋๋ก ์ฌ์ ํ์ต๋จ!!
๊ทธ๋ผ ์ด๋ป๊ฒ Triplane ์ ํ์ต ํ๋๊ฐ??
- Triplane ์ ํ์ต ๊ฐ๋ฅํ ํํ (Learned Representation)
- ๋ด๋ด ๋คํธ์ํฌ๋ฅผ ํตํด ํ์ต๋๋ฉด์ 3D ๊ณต๊ฐ์ ์ ๋ณด(๋ฐ๋, Opacity, Spherical Harmonics ๋ฑ)๋ฅผ ์ ์ฅ.
- ๋ง์น "๋ฉ๋ชจ๋ฆฌ ์ ์ฅ์" ์ฒ๋ผ ๋์
- MLP ๋ Triplane ์ ์ง์ ํ์ตํ๋ฉฐ 3D ์์ฑ์ ์ธ์ฝ๋ฉ
- MLP๋ ๋จ์ํ ์ ํ ๋ณํ์ด ์๋๋ผ, 3D ์ ๋ณด๋ฅผ ํ์ตํ์ฌ ์ธ์ฝ๋ฉ๋ ๊ตฌ์กฐ
- Triplane ์ MLP ์ ํจ๊ป ํ์ต๋๋ฉด์ ๋จ์ผ ์ด๋ฏธ์ง์์ 3D ๊ตฌ์กฐ๋ฅผ ํจ๊ณผ์ ์ผ๋ก ํํํ ์ ์๋๋ก ์ต์ ํ๋จ.
- ํ์ต ๊ณผ์ ๐
- ์ด๋ฏธ์ง → 2D Feature ์ถ์ถ
- ์ด๋ฏธ์ง๊ฐ ์ ๋ ฅ๋๋ฉด, Transformer ๊ธฐ๋ฐ ๋คํธ์ํฌ๊ฐ 2D ์ด๋ฏธ์ง์ ํน์ง์ ์ถ์ถ
- Triplane ์ ์์ฑํ๋ฉด์ 3D ์ ๋ณด ํ์ต
- 3๊ฐ์ ํ๋ฉด์ 3D ์ ๋ณด๋ฅผ ์ ์ฅํ๋ ๋ฐฉ์์ผ๋ก ํ์ต๋จ
- Projection ์ ํตํด ํน์ง์ ๊ฐ์ ธ์ด
- ํน์ 3D ์์น์์ Projection ์ ์ํํ๋ฉด, ํด๋น ์์น์์ ํ์ต๋ 3D ํน์ง์ ๊ฐ์ ธ์ฌ ์ ์์
- MLP ๋ฅผ ์ฌ์ฉํ์ฌ 3D Gaussian ์์ฑ ๋์ฝ๋ฉ
- ฯgโ(x,f) ์์ MLP ๊ฐ 3D Gaussian ์์ฑ(๋ฐ๋, Opacity, SH ๋ฑ)์ ๋ณต์
- Loss ๋ฅผ ํตํด ํ์ต ์ต์ ํ
- ๋ ๋๋ง๋ ์ด๋ฏธ์ง์ ์๋ณธ ์ด๋ฏธ์ง๋ฅผ ๋น๊ตํ๋ฉฐ ํ์ต์ด ์งํ
- ์ด๋ฏธ์ง → 2D Feature ์ถ์ถ
โถ ์ฆ, Pre-trained ๋ชจ๋ธ ์์ด๋ Triplane ๊ณผ MLP ์ End-to-End ํ์ต์ ํตํด 3D ๊ณต๊ฐ์ ๊ตฌํํด๋.
2๏ธโฃ Rendering.
์ด ๋ ผ๋ฌธ์ 3DGS ์ ๋ ๋๋ง ๋ฐฉ์์ ์ฐจ์ฉํ์์ต๋๋ค.
๊ฐ๋ | ์ค๋ช |
Differentiable Tile-Based Rasterization | ๋ฏธ๋ถ ๊ฐ๋ฅํ๊ณ , ํ์ผ ๋จ์๋ก ๋๋ ์ ๋น ๋ฅด๊ฒ ๋ ๋๋ง |
Fast α-Blending of Anisotropic Splats | ๋น๋ฑ๋ฐฉ์ฑ Gaussian์ ๋น ๋ฅด๊ฒ ํผํฉํ์ฌ ๋ถ๋๋ฌ์ด ๋ ๋๋ง |
Fast Backward Pass by Tracking α Values | ๋์ ๋ α ๊ฐ์ ์ถ์ ํ์ฌ ๋น ๋ฅด๊ฒ ์ญ์ ํ ๊ฐ๋ฅ |
Higher Resolution & Lower GPU Cost | ๊ณ ํด์๋ ์ด๋ฏธ์ง ํ์ต ๊ฐ๋ฅ, ์ ์ GPU ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ |
2๏ธโฃ Reconstruction from Single-View Images
Image Encoding
์ ๋ ฅ ์ด๋ฏธ์ง๋ฅผ ์ด๋ป๊ฒ ์ฒ๋ฆฌํ์ฌ 3D ๋ณต์์ ํ์ฉํ๋์ง์ ๋ํด ์์๋ด ์๋ค.
- Pre-trained ViT ๊ธฐ๋ฐ DINOv2 ๋ฅผ ์ฌ์ฉํด ์ด๋ฏธ์ง ์ถ์ถ
- DINOv2 (ViT ๊ธฐ๋ฐ Encoder(transformer ๊ธฐ๋ฐ)) ์ ์ฌ์ฉํ์ฌ,
- ์ ๋ ฅ ์ด๋ฏธ์ง๋ฅผ ์ฌ๋ฌ ๊ฐ์ ํจ์น(patch) ๋ก ๋๋ ํ, Transformer์ ์ด์ฉํด ๊ฐ ํจ์น์ ๋ํ Feature Tokens ๋ฅผ ์ถ์ถ
- ์ด Feature Tokens ์ด Triplane ๋ฐ Point Cloud ์์ฑ์ ์ํ ๊ธฐ์ด์ ์ธ ํน์ง ๋ฒกํฐ ์ญํ ์ ํจ
- ์นด๋ฉ๋ผ ์ ๋ณด(Camera Parameters, ์ด๋ฏธ ์๊ณ ์๋ค๊ณ ๊ฐ์ )๋ฅผ ํ์ฉํ Adaptive Layer Normalization(AdaLN)
- 3D ๋ณต์์ ๋ ์ ํํ๊ฒ ํ๊ธฐ ์ํด, ์นด๋ฉ๋ผ ์ ๋ณด(์์ ์ ๋ณด)๋ฅผ ์ด๋ฏธ์ง ํน์ง์ ๋ฐ์
- ์นด๋ฉ๋ผ ์ ๋ณด๋?
- ์นด๋ฉ๋ผ Extrinsic Matrix T∈R^4×4 → ์นด๋ฉ๋ผ์ ์์น ๋ฐ ๋ฐฉํฅ ์ ๋ณด
- ์นด๋ฉ๋ผ Intrinsic Matrix K∈R^3×3 → ์นด๋ฉ๋ผ ๋ ์ฆ์ ์ด์ ๊ฑฐ๋ฆฌ, ์๊ณก ์ ๋ณด
- AdaLN์ด ํ๋ ์ผ
- ์นด๋ฉ๋ผ ๋งคํธ๋ฆญ์ค๋ฅผ ํผ์ณ์(Flatten) ๋ฒกํฐ ํํ๋ก ๋ณํ ํ, ๊ณ ์ฐจ์ ์นด๋ฉ๋ผ ํน์ง fc∈R^25๋ก ๋งคํ
- ์ด ์นด๋ฉ๋ผ ํน์ง์ ํ์ฉํด ์ด๋ฏธ์ง ํน์ง์ ์กฐ์ → ์ฆ, ViT๊ฐ ์ถ์ถํ ์ด๋ฏธ์ง ํน์ง์ด ์นด๋ฉ๋ผ ์์ (Viewpoint)์ ๋ง๊ฒ ์กฐ์ ๋จ
- MLP๋ฅผ ์ฌ์ฉํ์ฌ Scale(์ค์ผ์ผ)๊ณผ Shift(์ด๋๊ฐ)์ ์์ธกํ์ฌ, ์ด๋ฏธ์ง ํน์ง์ ์ ์ ํ ๋ณํ.
Transformer Backbone
- ํฌ์ธํธ ํด๋ผ์ฐ๋(Points) ์ Triplane ์ ์ํ Feature Tokens ์ฌ์ฉ
- ๋ ผ๋ฌธ์์๋ ๋๊ฐ์ง 3D ํํ ๋ฐฉ์(Points & Triplane) ์ ๋ํด ๋ณ๋์ Feature Tokens๋ฅผ ์ฌ์ฉ
- ๊ฐ๊ฐ์ Feature Token ์ Transformer ์ ์
๋ ฅ๋์ด, 3D ๋ณต์์ ์ํ ํน์ง์ ํ์ตํจ.
- {fiโ}p: ํฌ์ธํธ ํด๋ผ์ฐ๋์ ๋ํ Feature Tokens
- {fiโ}t: triplane ์ ๋ํ Feature Tokens
- Learnable Positional Embedding ์ ์ฌ์ฉํ์ฌ Feature Token ์ ์ด๊ธฐํ
- Transformer ๋ ์์๋ ์์น ์ ๋ณด๋ฅผ ์ง์ ์ธ์ํ ์ ์๊ธฐ ๋๋ฌธ์, "์์น ์ ๋ณด๋ฅผ ์ถ๊ฐ" ํด์ผํจ.
- ์ด๋ฅผ ์ํด, feature token ์ learnable positional embedding ์ผ๋ก ์ด๊ธฐํ.
- Transformer ๋ธ๋ก์ ๊ตฌ์ฑ
- ๊ฐ Transformer ๋ธ๋ก์ 3๊ฐ์ ์ฃผ์ ๋ ์ด์ด๋ก ๊ตฌ์ฑ๋จ
- Self-Attention Layer
- ๊ฐ Feature Token ์ด ๊ฐ์ 3D ํํ ๋ด์์ ์๋ก ์ ๋ณด๋ฅผ ๊ตํํ๋ ๊ณผ์
- ์๋ฅผ ๋ค์ด, ํฌ์ธํธ ํด๋ผ์ฐ๋ ๋ด๋ถ์์ ์ด๋ค ์ ์ด ๋ค๋ฅธ ์ ๋ค๊ณผ ์ด๋ป๊ฒ ์ฐ๊ด๋๋์ง ํ์ตํจ
- Cross-Attention Layer
- ์ด๋ฏธ์ง์์ ์ถ์ถํ ํ ํฐ(Viewpoint-Augmented Image Tokens, ์นด๋ฉ๋ผ ์์ ์ ๋ณด๋ฅผ ํฌํจํ ์ด๋ฏธ์ง ํน์ง)๊ณผ 3D Token ์ ์ฐ๊ฒฐํ๋ ๊ณผ์
- ์ฆ, ์ด๋ฏธ์ง์์ ์ป์ ์ ๋ณด๋ฅผ ํฌ์ธํธ ํด๋ผ์ฐ๋ ๋ฐ Triplane์ ๋ฐ์ํ์ฌ ๋ ์ ํํ 3D ๋ณต์ ๊ฐ๋ฅ.
- Feed-Forward Layer (MLP)
- Self-Attention๊ณผ Cross-Attention์ ๊ฑฐ์น Feature Token์ ์ต์ข ์ ์ผ๋ก ๊ฐ๊ณตํ๋ ๋จ๊ณ.
Point Cloud Decoder
- Point Cloud Decoder ์ ์ญํ
- Point Cloud Decoder ๋ 3D ๊ฐ์ฒด์ ๋๋ต์ ์ธ ํ์(geometry) ์ ์์ฑํ๋ ์ญํ ์ ํจ.
- ์ด ๋จ๊ณ์์ ์์ฑ๋ Point Cloud ์ขํ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก 3D Gaussians ์ ๋ฐฐ์นํ ์ ์์
- ์ฆ, ํฌ์ธํธ ํด๋ผ์ฐ๋๊ฐ ๋จผ์ ์์ฑ๋๊ณ , ์ด๋ฅผ ์ด์ฉํด 3DGS ์ํ.
- Transformer ๋ฅผ ํ์ฉํ Point cloud ์์ฑ
- ViT ๊ธฐ๋ฐ Encoder๊ฐ 2D ์ด๋ฏธ์ง์์ Feature Tokens์ ์ถ์ถ.
- 6-layer Transformer Backbone ์ ์ฌ์ฉํ์ฌ Point Cloud ๋ฅผ ๋์ฝ๋ฉ
- → "Learnable Positional Embeddings" ์ ์ฌ์ฉํ์ฌ 3D Point Cloud๋ฅผ ์ง์ ์์ฑ.
- ์ด embedding๋ค์ Point Cloud Token ์ญํ ์ ํ๋ฉฐ, ์ต์ข ์ ์ผ๋ก 3D ํฌ์ธํธ๊ฐ ๋จ
- ์ฌ๊ธฐ์๋ coarse ํ๊ฒ 2048 ๊ฐ์ point cloud ๋ง์ decoding
- Transformer๋ฅผ ์ฌ์ฉํ์ฌ ํ์ต๋ ํ ํฐ(Token)๋ค์ 3D ์ขํ(Point Cloud)๋ก ๋ณํํ๋ ๋ฐฉ์!
Point Upsampling with Projection-Aware Conditioning
- ์์์ ๋ง๋ค์ด์ง Point Cloud ์ ๋ค์ low-resolution ์ด๊ธฐ ๋๋ฌธ์ 3D gaussian ์ ์์ฑํ๊ธฐ์ ์ถฉ๋ถํ์ง ์์
- 2 step ์ Snowflake point deconvolution (SPD) ์ ์ด์ฉํ์ฌ 2048๊ฐ → 16384 ๊ฐ์ point ๋ก densify ํจ
(up-sampling) - SnowflakeNet ์ coarse → detailed ๊ณผ์
- Global Shape code ๋ฅผ ์ถ์ถ
- ์ ๋ ฅ๋ ํฌ์ธํธ ํด๋ผ์ฐ๋์์ ์ ์ฒด์ ์ธ ํ์ Shape ๋ฅผ ํํํ๋ ์ฝ๋๋ฅผ ์ถ์ถ → ๋ฒกํฐ ์ ๋ณด
- Point Displacement (์ ์ด๋) ์์ธก์ ํตํด ์
์ํ๋ง
- ๊ธฐ์กด ์ ์์ ์ฝ๊ฐ ์ด๋ํ ์๋ก์ด ์ ์ ์ถ๊ฐํ๋ฉด์ ์ ์ํ๋ง ์ํ
- Global Shape code ๋ฅผ ์ถ์ถ
- SnowflakeNet ์ ํฌ์ธํธ ํด๋ผ์ฐ๋๋ง์ผ๋ก๋ ๋ถ์กฑํ ์ธ๋ถ์ ์ธ ํ์์ ๋ณด์ํ๊ธฐ ์ํด, ์ด๋ฏธ์ง ์ ๋ณด๋ฅผ ํ์ฉ
- ์ด๋ฅผ ์ํด Projection-Aware Conditioning ๊ธฐ๋ฒ ์ ์ฉ
- ์ด๋ฏธ์ง์์ ์ป์ ํน์ง์ 3D ๋ณต์ ๊ณผ์ ์ ๋ฐ์ํ๊ธฐ ์ํด, ํฌ์ธํธ ํด๋ผ์ฐ๋๋ฅผ ์ด๋ฏธ์ง ๊ณต๊ฐ์ผ๋ก ํฌ์(Projection) ํ๋ ๊ธฐ๋ฒ
- ๊ฐ 3D ํฌ์ธํธ๋ฅผ 2D ์ด๋ฏธ์ง ์์ ๋์๋๋ ์์น๋ก ๋งคํํ์ฌ, ํด๋น ์์น์ ์ด๋ฏธ์ง ํน์ง์ ๊ฐ์ ธ์ด
- ์ฆ, ํฌ์ธํธ ํด๋ผ์ฐ๋๋ฅผ ์ด๋ฏธ์ง์ ํฌ์ํ์ฌ,์ด๋ฏธ์ง์์ ์ป์ ๋ก์ปฌํน์ง์ Point Cloud ์ shape Code์ ๋ฐ์
- ์ด๋ฅผ ์ํด Projection-Aware Conditioning ๊ธฐ๋ฒ ์ ์ฉ
Triplane Decoder with Geometry-Aware Encoding
- Triplane Decoder ์ ์ญํ
- 3D ๊ณต๊ฐ์ ํน์ง์ ์ ์ฅํ๋ Implicit Feature Field ๋ฅผ ์์ฑ
- ์
๋ ฅ ๊ฐ
- ์ด๋ฏธ์ง(Image Tokens)
- ์ด๊ธฐ Point Cloud (๋๋ต์ ์ธ ํ์์ ๋ํ๋ด๋ ์ ์งํฉ)
- ์ถ๋ ฅ ๊ฐ
- Triplane (3๊ฐ์ 2D ํ๋ฉด์ ์ ์ฅ๋ 3D ๊ณต๊ฐ ํน์ง)
- ์ดํ, Triplane ์ ๊ธฐ๋ฐ์ผ๋ก ํน์ ์์น์์ 3D Gaussian ์์ฑ์ ๋์ฝ๋ฉ ๊ฐ๋ฅ.
- 10-layer Transformer ๋ฅผ ์ฌ์ฉํ์ฌ ๋ ์ ๊ตํ ํน์ง ํ์ต
- ๊ธฐ์กด์ ๋จ์ Positional Embedding ๋์ , Point Cloud๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ Positional Embedding์ ์ฌ์ฉํ์ฌ ๋ ๋์ Geometry-Aware Encoding์ ์ํ!
- Point Cloud ๋ฅผ PointNet ์ ์ฌ์ฉํ์ฌ Local Feature ๋ฅผ ํ์ตํ ํ, Triplane ์ ํฌ์(Projection)
- PointNet ์ ์ฌ์ฉํ์ฌ ํฌ์ธํธ ํด๋ผ์ฐ๋์ ์ง์ญ์ ์ธ ํน์ง์ ํ์ต
- ์ด ๊ณผ์ ์์ ๊ฐ์ ์์น์ ํฌ์๋ ํน์ง๋ค์ Average Pooling ์ ์ฌ์ฉํ์ฌ ํ๋์ ๊ฐ์ผ๋ก ํฉ์นจ
Training
- ์ต์ข ์ ์ผ๋ก 3D Gaussian์ ์ฌ์ฉํ์ฌ ๋ ๋๋งํ ์ด๋ฏธ์ง๊ฐ ์ ๋ ฅ ์ด๋ฏธ์ง์ ์ต๋ํ ์ ์ฌํด์ผ ํจ.
Loss | Description |
LCD (Chamfer Distance) | ์์ธก๋ ํฌ์ธํธ ํด๋ผ์ฐ๋๊ฐ GT ๋ฐ์ดํฐ์ ์ ์ ๋ ฌ๋๋๋ก ํ์ต |
LEMD (Earth Mover’s Distance) | ํฌ์ธํธ ํด๋ผ์ฐ๋ ๊ฐ ์ต์ ์ ์ด๋ ๊ฒฝ๋ก๋ฅผ ๊ณ์ฐํ์ฌ ์ ๋ฐํ ์ ๋ ฌ ์ ๋ |
LMSE (Mean Squared Error) | ๋ ๋๋ง๋ ์ด๋ฏธ์ง๊ฐ ์๋ณธ ์ด๋ฏธ์ง์ ์ต๋ํ ์ ์ฌํ๋๋ก ํ์ต |
LMASK (Mask Loss) | ๊ฐ์ฒด์ ํํ(์ค๋ฃจ์ฃ)๊ฐ ์ ํํ ๋ณต์๋๋๋ก ๋ง์คํฌ ์ ๋ ฌ |
LSSIM (Structural Similarity) | ๊ตฌ์กฐ์ ์ ์ฌ์ฑ์ ์ฆ๊ฐ์์ผ ๋ ์์ฐ์ค๋ฌ์ด 3D ๋ณต์ ๊ฐ๋ฅ |
LLPIPS (Perceptual Loss) | ๊ณ ์์ค ํน์ง์ ๋น๊ตํ์ฌ ์ฌ๋์ ๋์ ์์ฐ์ค๋ฌ์ด 3D ๋ณต์ ์ ๋ |
AI๋ ๋ธ๋๋ฐ์ค๋ค......