Abstract
1. DeepSDF๋?
- ํ์ต ๊ธฐ๋ฐ์ ์ฐ์์ Signed Distance Function (SDF) ํํ
- ํ์ ํด๋์ค ์ ์ฒด๋ฅผ ๊ณ ํ์ง๋ก ํํ, ๋ณด๊ฐ(interpolation), ๋ถ์์ ๋ฐ์ดํฐ ๋ณต์ ๊ฐ๋ฅ
2. ํํ ๋ฐฉ์
- ๋ถํผ ํ๋์์ ์ ์ ํฌ๊ธฐ: ํ๋ฉด ๊ฒฝ๊ณ๊น์ง์ ๊ฑฐ๋ฆฌ
- ๋ถํธ: ํ์ ๋ด๋ถ(-) ๋๋ ์ธ๋ถ(+)
- ๊ฒฝ๊ณ๋ ํจ์์ 0-level-set ์ผ๋ก ์๋ฌต์ ์ผ๋ก ์ธ์ฝ๋ฉ
3. ๊ธฐ์กด SDF ์ ์ฐจ์ด์
- ๊ธฐ์กด SDF ๋ ๋จ์ผ ํ์ ํํ
- DeepSDF ๋ ํ์ ํด๋์ค ์ ์ฒด๋ฅผ ํ์ตํ๊ณ ํํ ๊ฐ๋ฅ
4. ์ฑ๊ณผ
- 3D ํ์ ํํ๊ณผ ๋ณต์์์ ์ต์ฒจ๋จ ์ฑ๋ฅ
- ๋ชจ๋ธ ํฌ๊ธฐ๋ฅผ ๊ธฐ์กด ๋๋น 10๋ฐฐ ๊ฐ์
Introduction
1. ๋ฌธ์ ์ ์
: 3D ๋ฅ๋ฌ๋ ๋ชจ๋ธ์ ๊ธฐ์กด ๋ฐฉ์์์ ๊ณต๊ฐ ๋ฐ ์๊ฐ ๋ณต์ก๋ ์ฆ๊ฐ, ์ ์ (vertex) ๊ฐ์์ ์์(topology) ๋ถํ์ค์ฑ ๋๋ฌธ์ ํจ์จ์ฑ๊ณผ ์ ์ฐ์ฑ์ด ์ ํ๋์๋ค.
2. DeepSDF ์ ํต์ฌ ์์ด๋์ด
- ์ฐ์์ Signed Distance Function (SDF) ๊ธฐ๋ฐ์ ํ์ต๋ 3D ์์ฑ ๋ชจ๋ธ
- SDF์ ํ๊ฐ์ ๋
ธ์ด์ฆ ์ ๊ฑฐ๋ฅผ ์ํด ๊ท์น์ ์ธ ๊ฒฉ์๋ก ์ด์ฐํ(discretize) ํ๋ ๊ธฐ์กด ๋ฐฉ์๊ณผ ๋ฌ๋ฆฌ ์ฐ์์ ํ๋๋ฅผ ์์ฑํ๋ ์์ฑ ๋ชจ๋ธ์ ํ์ต
- SDF ๋ฅผ ํ์ ์กฐ๊ฑด๋ถ(class-conditioned) ๋ถ๋ฅ๊ธฐ๋ก ๊ฐ์ฃผํด ํ๋ฉด์ ๊ฒฐ์ ๊ฒฝ๊ณ๋ก ์ ์
3. ๊ธฐ์ฌํ๋ ๋ฐ
- ์ฐ์์ ์๋ฌต์ ํ๋ฉด(continuous implicit surface) ์ ์ฌ์ฉํ ํ์ ์กฐ๊ฑด๋ถ(shape-conditioned) 3D ์์ฑ ๋ชจ๋ธ๋ง์ ์ ์ํ(formulation)
- ํ๋ฅ ์ ์คํ ๋์ฝ๋(probabilistic auto-decoder) ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก 3D ํ์ ํ์ต
- ํ์ ๋ชจ๋ธ๋ง ๋ฐ ๋ณต์์์์ ์ฑ๊ณต์ ์์ฉ
- ์์ฒ ๊ฐ์ ํ์์ ๋จ 7.4MB ๋ก ํํ ๊ฐ๋ฅ
- ๊ธฐ์กด ๋น์์ถ 3D ๋นํธ๋งต ๋๋น ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋ ์ ๊ฐ
4. ์ฑ๊ณผ
- ๋ณต์กํ ์์์ ๊ฐ์ง ๊ณ ํ์ง ์ฐ์ ํ๋ฉด ์์ฑ
- ํ์ ๋ณต์ ๋ฐ ์์ฑ์์ ์ต์ฒจ๋จ ์ฑ๋ฅ
Related Work
1. Representations for 3D Shape Learning
๋ฐ์ดํฐ ๊ธฐ๋ฐ 3D ํ์ต ์ ๊ทผ๋ฒ์ ํํ์ ์ธ๊ฐ์ง ๋ฒ์ฃผ๋ก ๋ถ๋ฅ๋๋ค. [ํฌ์ธํธ ๊ธฐ๋ฐ, ๋ฉ์ฌ ๊ธฐ๋ฐ, ๋ณต์ ๊ธฐ๋ฐ]
์ผ๋ถ ์ ํ๋ฆฌ์ผ์ด์ (์: 3D ํฌ์ธํธ ํด๋ผ์ฐ๋ ๊ธฐ๋ฐ ๊ฐ์ฒด ๋ถ๋ฅ)๋ ์ด๋ฌํ ํํ์ ์ ํฉํ์ง๋ง, ์ด ๋ ผ๋ฌธ์์๋ ๋ณต์กํ topology ๋ฅผ ๊ฐ์ง ์ฐ์ ํ๋ฉด์ ํํํ๋๋ฐ ์์ด ์ด๋ค์ ํ๊ณ์ ๋ํด์ ์๊ธฐํ๋ค.
[point-based]
⊕ ์ผ์ ๋ฐ์ดํฐ๋ฅผ ์ง์ ์ ์ผ๋ก ํ์ฉ ๊ฐ๋ฅ
โ ์์์ ์ค๋ช ํ์ง ๋ชปํ๋ฉฐ ์์ ๋ฐํ๋(watertight) ํ๋ฉด์ ์์ฑํ ์ ์์
[mesh-based]
⊕ 3D ๋์(correspondence) ์ ๊ณต, ๊ณ ํ์ง ํ์ ์์ฑ ๊ฐ๋ฅ
โ ๊ณ ์ ๋ ์์๋ง ๋ชจ๋ธ๋ง ๊ฐ๋ฅ, ๋งค๊ฐํ ํ์ง์ ์์กดํ๋ฉฐ ๋ซํ ํ์์ ๋ณด์ฅํ์ง ๋ชปํจ
[Voxel-based]
⊕ 3D ๊ณต๊ฐ ํํ์์ ์ง๊ด์ ์ด๊ณ 2D ์ปจ๋ณผ๋ฃจ์ ๊ธฐ๋ฐ ํ์ต๊ณผ ์์ฐ์ค๋ฝ๊ฒ ์ฐ๊ฒฐ
โ ๋์ ๋ฉ๋ชจ๋ฆฌ ์๊ตฌ๋, ์ ํด์๋ ํ์ ํํ, ๋งค๋๋ฝ์ง ์์ ํ๋ฉด ์์ฑ
2. Representation Learning Techniques
ํํ ํ์ต(Representation Learning) ์ด๋? ๋ฐ์ดํฐ๋ฅผ ์์ถ์ ์ผ๋ก ํํํ๋ ํน์ง์ ์๋์ผ๋ก ๋ฐ๊ฒฌํ๋ ๊ธฐ์
[Generative Adversial Networks, GANs]
- ์์ฑ์(generator) ์ ํ๋ณ์(discriminator)๊ฐ ์๋ก ๊ฒฝ์ํ๋ ํ๋ จ ๊ณผ์ (aka. ๋๋ฆฝ์ ํ์ต)์ ํตํด ์ฌ์ค์ ์ธ ๋ฐ์ดํฐ๋ฅผ ์์ฑํ๋ค.
- ํ์ง๋ง ์ด์ ๊ฐ์ ๋๋ฆฝ์ ํ๋ จ์ ๋ถ์์ ํ๋ค๋ ๊ฒ์ด ์ ์๋ ค์ ธ ์๋ค.
[Auto-encoders]
- ์ธ์ฝ๋์ ๋์ฝ๋ ์ฌ์ด์ ์ ๋ณด ๋ณ๋ชฉ ๊ตฌ์กฐ๋ฅผ ํตํด ์๋ณธ ์ ๋ ฅ์ ๋ณต์ ํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ฌ๊ตฌ์ฑํ๋ค.
- ์คํ ์ธ์ฝ๋๋ ํน์ง ํ์ต ๋๊ตฌ๋ก์์ ๊ฐ๋ฅ์ฑ ์ ์ฆํ์๊ณ , ๋ง์ 3D ํ์ ํ์ต ์ฐ๊ตฌ์์ ํ์ฉ๋๋ค.
- ๋ณ๋ถ ์คํ ์ธ์ฝ๋(VAE)๋ ๋ณ๋ชฉ ํ์์ ๊ฐ์ฐ์์ ๋ ธ์ด์ฆ๋ฅผ ์ถ๊ฐํ์ฌ ๋งค๋๋ฌ์ด ์ ์ฌ ๊ณต๊ฐ์ ์์ฑํ๋ค.
[Optimizing Latent Vectors]
- ์ ์ฒด ์คํ ์ธ์ฝ๋๋ฅผ ์ฌ์ฉํ๋ ๋์ , ๋์ฝ๋๋ง ํ์ตํ์ฌ ์์ถ๋ ๋ฐ์ดํฐ ํํ์ ์์ฑํ๊ณ ์ต์ ์ ์ ์ฌ ๋ฒกํฐ๋ฅผ ์ฐพ๋๋ค.
- ์ด๋ ์ฃผ๋ก ๋ ธ์ด์ฆ ๊ฐ์ ๋ฐ ๋๋ฝ ๋ฐ์ดํฐ ๋ณต์์ ํ์ฉ๋๋ค.
๐ก ์ฌ๊ธฐ์, ์ ์ฌ ๊ณต๊ฐ(Latent Space) ๋?
๋ฐ์ดํฐ์ ์์ถ๋ ํํ์ด๋ ์ถ์์ ์ธ ํน์ง์ ๋ํ๋ด๋ ๊ณ ์ฐจ์ ๊ณต๊ฐ์ด๋ค.
์ด๋ ์๋ ๋ฐ์ดํฐ(์: ์ด๋ฏธ์ง, ์์ฑ ๋ฑ)์ ๋ณต์กํ ๊ตฌ์กฐ๋ฅผ ๊ฐ๊ฒฐํ ์ํ์ ํํ์ผ๋ก ๋ณํํ ๊ฒ์ผ๋ก, ๋ฐ์ดํฐ์ ์ค์ํ ํจํด๋ง์ ํฌํจํ๋ค.
3. Shape Completion
ํ์ ์์ฑ(shape completion) ์ ํฌ์ํ๊ฑฐ๋ ๋ถ์์ ํ 3D ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ณด์ด์ง ์๋ ๋ถ๋ถ์ ์์ธกํ๋ ์์ ์ด๋ค.
์ด์ ๋ฐฉ๋ฒ๋ค:
- RBF (๋ฐฉ์ฌ ๊ธฐ์ ํจ์)๋ฅผ ์ฌ์ฉํ์ฌ ํํ ํจ์ ๊ทผ์ฌ
- ๋ฐฉํฅ์ฑ point cloud ๋ฐ์ดํฐ๋ฅผ ํธ์์ก ๋ฌธ์ ๋ก ๋ณํํ์ฌ ํ๋ฉด ์ฌ๊ตฌ์ฑ
- ํ์ง๋ง ์ด๋ฌํ ๋ฐฉ์์ ๋จ์ผ ํ์๋ง ์ฒ๋ฆฌ
์ต๊ทผ ์ ๊ทผ๋ฒ: ๋ฐ์ดํฐ ๊ธฐ๋ฐ ๋ฐฉ์์ผ๋ก ๋ฐ์
- ์ธ์ฝ๋-๋์ฝ๋ ๊ตฌ์กฐ ํ์ฉ
- ๋ถ๋ถ ๋ฐ์ดํฐ๋ฅผ ์ ์ฌ ๊ณต๊ฐ์ผ๋ก ๋ณํ ํ ํ์ต๋ ์ฌ์ ์ง์์ ์ฌ์ฉํด ์ ์ฒด ํ์์ ์์ฑ
- ๋ค์ํ ์
๋ ฅ ์ ํ ์ง์: point cloud, ๊น์ด ๋งต, RGB ์ด๋ฏธ์ง ๋ฑ
โก๏ธ ๋ฐ์ดํฐ ๊ธฐ๋ฐ ๋ฐฉ๋ฒ์ ๊ณ ์ ์ ๋ฐฉ๋ฒ์ ํ๊ณ๋ฅผ ๋์ด ๋ ์ ์ฐํ๊ณ ๋ฐ์ดํฐ์ ์ ๋ฐ์ ๊ฑธ์ณ ์ ์ฉ ๊ฐ๋ฅ
Modeling SDFs with Neural Networks
Singed Distance Function (SDF) ๋ ์ ์ด ํ๋ฉด๊ณผ์ ๊ฑฐ๋ฆฌ๋ฅผ ์ถ๋ ฅํ๋ ์ฐ์ ํจ์์ด๋ฉฐ, ๋ถํธ๋ ์ ์ด ํ๋ฉด ๋ด๋ถ(์์)์ธ์ง ์ธ๋ถ(์์)์ธ์ง๋ฅผ ๋ํ๋ธ๋ค.
๊ธฐ์ ํ๋ฉด(Underlying surface) ์ SDF(·) = 0์ธ ๋ฑ์น๋ฉด(iso-surface)์ผ๋ก ์๋ฌต์ ์ผ๋ก ํํ๋๋ค.
์ด ์๋ฌต์ ํ๋ฉด์ Marching Cubes ๋ฅผ ์ด์ฉํ ๋ฉ์ฌ์ ๋์คํฐํ๋ ๋ ์ด์บ์คํ
(raycasting) ์ ํตํด ๋ ๋๋ง ๋ ์ ์๋ค.
DeepSDF ์ ๊ทผ๋ฒ
ํต์ฌ ์์ด๋์ด: ํฌ์ธํธ ์ํ๋ก๋ถํฐ SDF ๋ฅผ ๋ฅ๋ฌ๋ ์ ๊ฒฝ๋ง์ ํตํด ์ง์ ํ๊ท(regress)(์ง์ ํ์ต) ํ๋๊ฒ์ด๋ค.
- ์ ๊ฒฝ๋ง์ด ํน์ ์์น์ SDF ๊ฐ์ ์์ธกํ๋๋ก ํ๋ จ (Fig 2. ์ฐธ๊ณ )
- ์ด๋ฅผ ํตํด SDF(x) = 0 ์ธ ํ๋ฉด(๋ฑ์น๋ฉด)์ ์ถ์ถ ๊ฐ๋ฅ
- deep feed-forward network ๋ universal function approximator(๋ณดํธ์ ํจ์ ๊ทผ์ฌ๊ธฐ) ๋ก์ ์ด๋ก ์ ์ผ๋ก ์์์ ์ ๋ฐ๋๋ก ์ฐ์์ ์ธ ํ์ ํจ์๋ฅผ ๊ทผ์ฌํ ์ ์๋ค.
- ํ์ง๋ง ์ค์ง์ ์ผ๋ก๋ ์ ํ๋ ์ํ ๋ฐ์ดํฐ์ ๋คํธ์ํฌ ์ฉ๋์ผ๋ก ์ธํด ์ ๋ฐ๋๊ฐ ํ์ ๋๋ค.
<Fig 2.> DeepSDF ํํ์ Stanford Bunny์ ์ ์ฉํ ๊ฒฐ๊ณผ
(a) ํ๋ฉด ๋ด๋ถ(SDF < 0)์ ์ธ๋ถ(SDF > 0)์์ ์ํ๋ง๋ ์ ๋ค์ ํ์ตํ SDF = 0์ ๊ธฐ์ ์๋ฌต์ ํ๋ฉด ํํ
(b) ์๋ช
๊ฑฐ๋ฆฌ ํ๋(Signed Distance Field)์ 2D ๋จ๋ฉด
(c) SDF = 0 ์์ ๋ณต์๋ 3D ํ๋ฉด(๋ฑ์น๋ฉด)์ ๋ ๋๋ง
(b)์ (c) ๋ ๋ชจ๋ DeepSDF ๋ฅผ ํตํด ๋ณต์๋จ
ํ๋ จ ๊ณผ์
Fig 3. a ์ ๋์ ์๋ ๊ฒ์ฒ๋ผ ์ฃผ์ด์ง ๋ชฉํ ํ์์ ํ์ตํ๊ธฐ ์ํด ๋จ์ผ ๋ฅ ๋คํธ์ํฌ๋ฅผ ํ๋ จ์ํจ๋ค.
1. ๋ฐ์ดํฐ ์ค๋น: 3D ์ ์ํ๊ณผ ํด๋น SDF ๊ฐ์ผ๋ก ๊ตฌ์ฑ๋ ์์ ์งํฉ X ์ค๋น
2. ๋ชฉํ
: ํ๋ จ ์ธํธ S์์ multi-layer fully-connected network์ธ fθ(x) ์ ๋งค๊ฐ๋ณ์ θ ๋ฅผ ํ๋ จ์์ผ, ํ๊ฒ ๋๋ฉ์ธ Ω ์์ SDF ๋ฅผ ์ ๊ทผ์ฌํ ์ ์๋๋ก ํ์ต
3. ์์ค ํจ์: L1 ์์ค์ ์ต์ํ
ํ๋ จ์ ํฌ์ธํธ X ์ ๋ํ ์์ธก SDF ๊ฐ๊ณผ ์ค์ SDF ๊ฐ ์ฌ์ด์ ์์ค์ ํฉ์ ์ต์ํ ํ๋ ๋ฐฉ์์ผ๋ก ์ด๋ฃจ์ด์ง๋ค.
์๋ ์์ SDF ์ ํน์ ๊ฑฐ๋ฆฌ δ ๋ฅผ ์ ์ดํ๋ค. ๋งค๊ฐ๋ณ์ δ ๋ ํ๋ฉด์ผ๋ก๋ถํฐ ์ผ์ ๊ฑฐ๋ฆฌ ๋ด์์ ๋ฉํธ๋ฆญ SDF ๋ฅผ ์ ์งํ๋๋ก ํ๋ค.
δ๊ฐ ํฌ๋ฉด ์ํ์ด ์์ ํ ์คํ ํฌ๊ธฐ ์ ๋ณด๋ฅผ ์ ๊ณตํ๊ธฐ ๋๋ฌธ์ ๋น ๋ฅธ ray tracing ๊ฐ๋ฅ, ์์ผ๋ฉด ํ๋ฉด ๊ทผ์ฒ ์ธ๋ถ์ฌํญ ํ์ต์ ์ง์ค
4. ๋คํธ์ํฌ ์ค๊ณ ๋ฐ ํ์ต
- ๊ตฌ์กฐ: 8๊ฐ fully-connected ๋ ์ด์ด, ๊ฐ ๋ ์ด์ด๋ 512 ์ฐจ์, ReLU ํ์ฑํ ํจ์
- ์ถ๋ ฅ ํ์ฑํ : tanh
- overfitting ๋ฐฉ์ง : dropout , ADAM optimizer ์ฌ์ฉ, ๊ฐ์ค์น ์ ๊ทํ(weight normalization)์ผ๋ก ๋์ฒดํ์ฌ ๋ฐฐ์น ์ ๊ทํ๋ฅผ ์์ ํ
- SDF ๋คํธ์ํฌ๋ฅผ ํตํ ์ญ์ ํ(back propagation)์ ํตํด ๊ณต๊ฐ์ ๋ฏธ๋ถ(gradient) ์ ๊ณ์ฐํ์ฌ ํ๋ฉด์ ์ ํํ ๋ฒ์ ๋ฒกํฐ ๊ณ์ฐ ๊ฐ๋ฅ
๐ ์์ฝ ํ์๋ฉด
DeepSDF ๋ ๋ฅ๋ฌ๋์ผ๋ก SDF ๋ฅผ ํ์ตํ์ฌ ์ฐ์์ ์ด๊ณ ์ ํํ 3D ํ์์ ํํํ๋ ๋ฐฉ๋ฒ์ด๋ค.
- SDF ๋ ์ ์ด ํ๋ฉด๊ณผ์ ๊ฑฐ๋ฆฌ๋ฅผ ๋ํ๋ด๋ฉฐ, ๋ถํธ๋ฅผ ํตํด ๋ด/์ธ๋ถ๋ฅผ ๊ตฌ๋ถํ๋ค.
- ์ธ์ฝ๋ ์์ด
ํฌ์ธํธ ์ํ๋ง์ผ๋ก
๋คํธ์ํฌ๋ฅผ ํ๋ จํด ํ์์ ํ์ตํ๋ค.
- ์ฅ์ : ํ๋ฉด ๋ฒ์ ์ ๊ณ์ฐํ ์ ์๊ณ , ๋ค์ํ ๋ ๋๋ง ๋ฐ ์ฌ๊ตฌ์ฑ ์์ ์ ํ์ฉ ๊ฐ๋ฅํ๋ค.
Learning the Latent Space of Shapes
1. ๋ฌธ์ ์ ์
- ๊ฐ ๋ชจ์์ ๋ํด ๋ณ๋๋ก ๋คํธ์ํฌ๋ฅผ ํ์ตํ๋ ๊ฒ์ ๋นํจ์จ์
- ๋ค์ํ ๋ชจ์์ ๊ณตํต ์์ฑ์ ํ์ตํ๊ณ , ์ด๋ฅผ ์ ์ฐจ์ ์ ์ฌ ๊ณต๊ฐ์ ๋ด์ฌํํ๋ ๋ชจ๋ธ์ด ํ์
2. ์ ์ฌ ๋ฒกํฐ ๋์
- ์ ์ฌ ๋ฒกํฐ z ๋ ๋ชจ์ ์ ๋ณด๋ฅผ ์ธ์ฝ๋ฉํ๋ค
- ์ ๊ฒฝ๋ง์ ๋ ๋ฒ์งธ ์
๋ ฅ์ผ๋ก ์ฌ์ฉํ์ฌ ์ฐ์์ ์ธ 3D SDF ํํ์ ๊ฐ๋ฅํ๊ฒ ํ๋ค(Fig 3b. ์ฐธ์กฐ)
3. ๋ชจ๋ธ ๊ตฌ์ฑ
- ๋จ์ผ ๋คํธ์ํฌ fθ ๊ฐ ์ ์ฌ ๋ฒกํฐ z_i ์ 3D ์์น x ๋ฅผ ์
๋ ฅ๋ฐ์ ๋ค์ํ SDF๋ฅผ ๋ชจ๋ธ๋งํ๋ค.
- ํ๋ฉด์ fθ(z, x) = 0 ์ ๊ฒฐ์ ๊ฒฝ๊ณ๋ก ํํ๋๋ฉฐ, ์๊ฐํ๋ฅผ ์ํด ์ด์ฐํ(discretized) ๊ฐ๋ฅํ๋ค.
Motivating Encoder-less Learning
1. ๊ธฐ์กด ๋ฐฉ์์ ํ๊ณ
- ๊ธฐ์กด auto-encoder ๋ ๋ณ๋ชฉ์ ํน์ง์ผ๋ก ์ ์ฌ ๊ณต๊ฐ์ ํ์ตํ์ง๋ง, ํ
์คํธ ์ ์ธ์ฝ๋๋ ์ฌ์ฉ๋์ง ์๋๋ค.
- ๊ทธ๋์ ํ๋ จ ์ค ์ธ์ฝ๋ ์ฌ์ฉ์ด ๊ณ์ฐ ์์ ํจ์จ์ฑ ์ธก๋ฉด์์ ์ต์ ์ธ์ง ๋ถ๋ช
ํํ๋ค.
2. auto-decoder ๋์
๋๊ธฐ
- ์ธ์ฝ๋ ์์ด ๋์ฝ๋๋ง์ผ๋ก ๋ชจ์ ์๋ฒ ๋ฉ์ ํ์ตํ๋ค. (Fig 4. ์ฐธ๊ณ )
- ํ
์คํธ ์ ์ ์ฌ ๋ฒกํฐ๋ฅผ ์ต์ ํํ์ฌ ์
๋ ฅ ๊ด์ฐฐ๊ฐ๊ณผ ์ผ์น์ํค๋ ๋ฐฉ์
3. ์ฑ๊ณผ
- ์ฐ์ SDF ๋ฅผ ํ์ตํ ์๋ ๋์ฝ๋๋ ๊ณ ํ์ง 3D ์์ฑ ๋ชจ๋ธ ์์ฑ ๊ฐ๋ฅ
- ์ ์ฌ ๊ณต๊ฐ ์ ๊ทํ๋ฅผ ๋์
ํ์ฌ ์ผ๋ฐํ ์ฑ๋ฅ ๊ฐ์ ํ๋ ํ๋ฅ ์ ๊ตฌ์ฑ(probabilistic formulation) ๊ฐ๋ฐ
- 3D ํ์ต ์ปค๋ฎค๋ํฐ์์ ์๋ ๋์ฝ๋ ํ์ต ๋ฐฉ๋ฒ ์ฒ์์ผ๋ก ๋์
ํ๋ค.
Auto-decoder-based DeepSDF Formulation
auto-decoder ๊ธฐ๋ฐ์ shape-coded DeepSDF ๊ณต์ํ๋ฅผ ์ ๋ํ๊ธฐ ์ํด ํ๋ฅ ์ ๊ด์ (probabilistic perspective)๋ฅผ ์ฑํํ๋ค.
N ๊ฐ์ SDF ๋ก ํํ๋ ๋ชจ์ ๋ฐ์ดํฐ ์ ์ด ์์๋, ๊ฐ ๋ชจ์ SDF_i ์์ K ๊ฐ์ ์ ์ํ๊ณผ ํด๋น ์๋ช ๊ฑฐ๋ฆฌ ๊ฐ์ ์ค๋นํ๋ค.
auto-decoder์๋ encoder๊ฐ ์์ผ๋ฏ๋ก, ๊ฐ ์ ์ฌ ์ฝ๋ z_i ๊ฐ ํ๋ จ ๋ฐ์ดํฐ X_i ์ ์์ ์ด๋ฃฌ๋ค.
๋ชจ์ SDF ์ํ X_i ์ ๋ํ ์ ์ฌ ์ฝ๋ z_i ์ ์ฌํ ํ๋ฅ ์ ๋ค์๊ณผ ๊ฐ์ด ๋ถํด๋๋ค.
์ฌ๊ธฐ์ θ ๋ SDF ๊ฐ๋ฅ๋๋ฅผ ๋งค๊ฐํ๋ค.
์ ์ฌ ๊ณต๊ฐ์์ ์ ์ฌ ์ฝ๋ p(z_i) ์ ์ฌ์ ํ๋ฅ ์ ํ๊ท 0์ ๋ค๋ณ๋ ๊ฐ์ฐ์์ ๋ถํฌ(multivariate-Gaussian) ๋ก ๊ฐ์ ๋๋ค:
์ด ์ฌ์ ํ๋ฅ ์ ๋ชจ์ ์ฝ๋๊ฐ ๋ฐ์ง๋๋๋ก ํ๊ณ , ์ปดํฉํธํ ๋ชจ์ ๋งค๋ํด๋๋ฅผ ์ถ๋ก ํ๋ฉฐ ์ข์ ์๋ฃจ์ ์ผ๋ก ์๋ ดํ๋๋ก ๋๋๋ค.
SDF ๊ฐ๋ฅ๋๋ deep feed-forward network fθ(z_i, x_j) ๋ก ํํ๋๋ฉฐ, ๋ค์๊ณผ ๊ฐ์ ํํ๋ฅผ ๊ฐ์ง๋ค:
ํ๋ จ ์, ๋ชจ๋ ํ๋ จ ๋ชจ์์ ๋ํด ๊ฐ๋ณ ๋ชจ์ ์ฝ๋์ ๋คํธ์ํฌ ๋งค๊ฐ๋ณ์ θ ์ ๋ํ ๊ณต๋ ๋ก๊ทธ ์ฌํ ํ๋ฅ (the joint log posterior) ์ ์ต๋ํ:
์ถ๋ก ์, ํ๋ จ ํ θ ๋ฅผ ๊ณ ์ ํ ์ํ์์ ๋ชจ์ X_i์ ์ ์ฌ์ฝ๋ z_i๋ ๋ค์ ์ต๋ ์ฌํ ํ๋ฅ (Maximum-a-Posterior,MAP) ์ถ์ ์ผ๋ก ๊ณ์ฐ๋จ:
์ด ๊ณต์์ SDF ์ํ X ๊ฐ ์์์ ํฌ๊ธฐ์ ๋ถํฌ๋ฅผ ๊ฐ์ง ์ ์์ผ๋ฏ๋ก, ์์ค์ ๋ํ z ์ ๊ธฐ์ธ๊ธฐ๊ฐ ๊ฐ ์ํ์ ๋ํด ๊ฐ๋ณ์ ์ผ๋ก ๊ณ์ฐ๋ ์ ์๋ค๋ ์ ์์ ์ ํจํ๋ค. ์ด๋ DeepSDF ๊ฐ ๊น์ด ์ง๋์ ๊ฐ์ ๋ถ๋ถ ๊ด์ฐฐ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ ์ ์์์ ์๋ฏธํ๋ฉฐ, ์ด๋ ํ๋ จ ๋ฐ์ดํฐ์ ์ ์ฌํ ์ ๋ ฅ์ ์๊ตฌํ๋ ์๋ ์ธ์ฝ๋ ํ๋ ์์ํฌ๋ณด๋ค ํฐ ์ด์ ์ด๋ค.
์ ์ฌ ์ฝ๋ z ๋ ์ ๋ ฅ ๋ ์ด์ด์ 4๋ฒ์งธ ๋ ์ด์ด์์ ์ํ ์์น์ ํจ๊ป ๋คํธ์ํฌ์ ์ ๊ณต๋๋ค. Adam ์ต์ ํ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ๋ฉฐ, z ๋ N(0, 0.012) ์์ ๋ฌด์์๋ก ์ด๊ธฐํ๋๋ค.
โจ ์์ฝ ์ ๋ฆฌ โจ
1. ์๋ ๋์ฝ๋ ๋ฐฉ์
- ์ ์ฌ ์ฝ๋ z ์ ์ ์ํ X ๋ฅผ ์ฌ์ฉํด ์ฌ๋ฌ SDF ๋ฅผ ๋จ์ผ ๋คํธ์ํฌ๋ก ํ์ต์ํจ๋ค.
- SDF ๊ฐ๋ฅ๋๋ ๋คํธ์ํฌ fθ(z, x) ๋ก ํํ๋๋ฉฐ, ์์ค ํจ์ L ๋ก ์์ธก๊ฐ๊ณผ ์ค์ ๊ฐ ์ฐจ์ด๋ฅผ ์ธก์ ํ๋ค.
2. ํ๋ จ ๋ฐ ์ถ๋ก
- ํ๋ จ: ๋ก๊ทธ ์ฌํ ํ๋ฅ ์ ์ต์ ํํด ๋คํธ์ํฌ์ ์ ์ฌ ์ฝ๋๋ฅผ ํ์ตํ๋ค.
- ์ถ๋ก : MAP ์ถ์ ์ ํตํด ์ฃผ์ด์ง ๋ชจ์์ ์ ์ฌ ์ฝ๋๋ฅผ ๊ณ์ฐํ๋ค.
3. ์ฅ์
- ์์ ํฌ๊ธฐ/๋ถํฌ์ ๋ฐ์ดํฐ์ ๋ถ๋ถ ๊ด์ฐฐ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๊ฐ๋ฅ
- ๊ธฐ์กด ์๋ ์ธ์ฝ๋์ ๋ฌ๋ฆฌ ์ธ์ฝ๋ ํ์ ์์ด ์ ์ฐํ ๋ฐ์ดํฐ ์ฒ๋ฆฌ
4. VAE ์์ ๋น๊ต
- ์ ์ฌ ์ฝ๋์ ๋ํด ๊ฐ์ฐ์์ ์ฌ์ ๋ถํฌ๋ฅผ ๊ณต์ ํ์ง๋ง, VAE์ ํ๋ฅ ์ ์ต์ ํ ๋ฐฉ์์ 3D ํ์ต์ ๋ถ์ ํฉ
Data Preparation
3D ๋ฉ์ ๋ฐ์ดํฐ๋ก๋ถํฐ SDF ์ํ์ ์์ฑํ์ฌ ์ฐ์ํ SDF ๋ชจ๋ธ ํ๋ จ์ ์ค๋นํ๋ค. ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ๋ค.
- ๋ฉ์๋ฅผ ๋จ์ ๊ตฌ๋ก ์ ๊ทํํ๊ณ , 500,000๊ฐ์ ๊ณต๊ฐ ์ ์ํ๋ง
- ํ๋ฉด ๊ทผ์ฒ์์ ๋ ๋ง์ ์ํ๋ง์ ํตํด ์ธ๋ฐํ ์ ๋ณด๋ฅผ ํฌ์ฐฉ
- ๊ฐ์ ์นด๋ฉ๋ผ์ ํ๋ฉด ๋ฒ์ ์ ์ด์ฉํด ์ฌ๋ฐ๋ฅด๊ฒ ์ ๋ ฌ๋ ํ๋ฉด ์ ์ถ์ถ
- ๋ซํ์ง ์์ ๋ชจ์ ๋๋ ๋ด๋ถ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง ๋ฉ์๋ ์ ๊ฑฐ (๊ฒฐํจ ์ฒ๋ฆฌ)
- ๊ฐ ์ํ ์ ์ ๋ํด SDF ๊ฐ์ ๊ณ์ฐํ์ฌ ๋ชจ๋ธ ํ์ต ๋ฐ์ดํฐ๋ก ์ฌ์ฉ
Results
DeepSDF ์ ํํ ๋ฅ๋ ฅ์ ์ ์ฆํ๊ธฐ ์ํด ์คํ์ ์งํํ๋ค.
์ด๋ ๊ธฐํํ์ ์ธ๋ถ์ฌํญ์ ํํํ๋ ๋ฅ๋ ฅ๊ณผ ์ํ๋ ํํ์ ์๋ฒ ๋ฉ ๊ณต๊ฐ์ ํ์ตํ๋ ์ผ๋ฐํ ๋ฅ๋ ฅ์ ํฌํจํ๋ค.
ํฌ๊ฒ ๋ค ๊ฐ์ง ์ฃผ์ ์คํ์ ํตํด DeepSDF ์ ๋ฅ๋ ฅ์ ํ ์คํธํ๋ค.
์คํ ํญ๋ชฉ :
- ํ๋ จ ๋ฐ์ดํฐ ํํ(๊ธฐํํ์ ์ธ๋ถ์ฌํญ์ ์ฌํํ๋ ๋ฅ๋ ฅ)
- ๋ณด์ง ๋ชปํ ํ์ ๋ณต์(ํ์ต๋ ํน์ง ํํ์ ์ฌ์ฉํ์ฌ ์๋ก์ด ํ์์ ๋ณต์ํ๋ ๋ฅ๋ ฅ)
- ๋ถ๋ถ ํ์ ์์ฑ(ํ์ priors(์ ํ ์ ๋ณด)๋ฅผ ์ฌ์ฉํ์ฌ ๋ถ๋ถ์ ์ธ ํ์์ ์์ฑํ๋ ๋ฅ๋ ฅ)
- ์๋ฒ ๋ฉ ๊ณต๊ฐ ์ํ๋ง(๋ถ๋๋ฝ๊ณ ์์ ํ ํ์ ์๋ฒ ๋ฉ ๊ณต๊ฐ์ ํ์ตํ๊ณ ์๋ก์ด ํ์ ์ํ๋งํ๋ ๋ฅ๋ ฅ)
๋ฐ์ดํฐ์ : ShapeNet ์ฌ์ฉ
๋น๊ต ๋์: OGN(์ต์ ์ฅํธ๋ฆฌ ๊ธฐ๋ฐ ๋ฐฉ์), AtlasNet(๋ฉ์ ๊ธฐ๋ฐ ๋ฐฉ์), 3D-EPN(๋ณผ๋ฅ๋ฉํธ๋ฆญ SDF ๊ธฐ๋ฐ ํ์ ์์ฑ ๋ฐฉ์)
Representing Known 3D Shapes
๋ชฉ์ : DeepSDF ์ ์ ํ๋ ์ ์ฌ ์ฝ๋(latent code)๋ฅผ ์ฌ์ฉํ ๊ธฐ์กด ํ์ ํํ ๋ฅ๋ ฅ ํ๊ฐ
- CD (Chamfer Distance, ์์์๋ก ์ฐ์) ์์ DeepSDF๊ฐ OGN, AtlasNet ๋ณด๋ค ์ฐ์
- EMD (Earth Mover Distance, ์์์๋ก ์ฐ์) ์ฐจ์ด๋ ์ ์์ผ๋, ์ด๋ ์ ์ ์์ ์ํ ํฌ์ธํธ(500๊ฐ) ๋ก ์ธํด ๋ฐ์
Fig 5. ๋ DeepSDF (left)๊ฐ OGN (right) ๋ณด๋ค ์ ์ฑ์ ํ๊ฐ์์๋ ์ฐ์ํจ์ ๋ณด์ฌ์ค๋ค.
Representing Test 3D shapes (auto-encoding)
๋ชฉ์ : ํ ์คํธ ์ ์์ ์ ์ ์๋ ํ์์ ๋ํ ํํ ๋ฅ๋ ฅ ํ๊ฐ
- DeepSDF ๋ ๋๋ถ๋ถ์ ํ์ ํด๋์ค์ ์งํ์์ AtlasNet ๋ณด๋ค ์ฐ์ํ๋ค.
- AtlasNet ์ ๊ตฌ๋ฉ ์๋ ํ์์ ์ ํฉํ๊ณ , ๊ตฌ๋ฉ์ด ๋ง์ ํ์์์๋ ์ฑ๋ฅ์ด ์ ํ๋์๋ค.
Shape Completion
๋ชฉ์ : ๋ถ๋ถ ํ์ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์์ ํ ํ์์ ์์ฑํ๋ ๋ฅ๋ ฅ ํ๊ฐ
๋ฐฉ๋ฒ
1. ๊น์ด ๊ด์ฐฐ ๋ฐ์ดํฐ ๋ณํ
- ๊น์ด ์ด๋ฏธ์ง์์ SDF ์ํ ์์ฑ
- ๊ฐ ๊น์ด ๊ด์ฐฐ ์ง์ ์์ ํ๋ฉด ๋ฒ์ ์ ๋ฐ๋ผ ๊ฑฐ๋ฆฌ η ๋งํผ ๋จ์ด์ง ๋ ์ ์ ์ํ๋งํ๋ค.
- ์ด ๋ ์ ์ SDF ๊ฐ์ ๊ฐ๊ฐ η ๋ฐ -η ๋ก ๊ฐ์ฃผํ๋ค.
- ๋น ๊ณต๊ฐ(free-space) ๋ฐ์ดํฐ ์ถ๊ฐ
- ๊ด์ฐฐ๋ ํ๋ฉด๊ณผ ์นด๋ฉ๋ผ ์ฌ์ด์ ๋น ๊ณต๊ฐ์ ๋ฐ๋ผ ์ ์ ์ํ๋งํ๋ค.
- ํด๋น ์ ์ SDF ๊ฐ์ 0๋ณด๋ค ํฐ ๊ฐ์ด ๋๋๋ก ์ ์ฝ์ ์ ์ฉํ๋ค.
- ์์ค ํจ์ ๋ฐ ์ต์ ํ
- Eq. 4 ์ ํด๋จํ(clamp) ๊ฐ์ η ๋ก ์ค์ ํ์ฌ MAP ์ถ์ ์ ์ํํ๋ค.
- ๋น ๊ณต๊ฐ ์์ค์ fθ(z, x_j) ๊ฐ 0 ๋ณด๋ค ์์ ๊ฒฝ์ฐ ์ ๋๊ฐ์ ๋ถ์ฌ์ ์ฌ์ฉํ๊ณ , ๊ทธ๋ ์ง ์์ผ๋ฉด 0์ผ๋ก ์ค์ ํ๋ค. ์ด๋ ๊ฒ ๊ณ์ฐ๋ ๋น ๊ณต๊ฐ ์์ค ๊ฐ์ z ์ θ๋ฅผ ํ์ตํ๋ MAP ์ถ์ ๊ณผ์ (Eq. 10)์ ํฌํจ๋๋ค.
- Map ์ต์ ํ๋ฅผ ํตํด ์ถ์ ๋ ํ์ ์ฝ๋๋ ๋์ฝ๋๋ฅผ ํตํด ํ์ ์์ฑ์ ์ฌ์ฉ๋๋ค.
๊ฒฐ๊ณผ
- DeepSDF ๋ ๊ธฐ์กด ๋ณผ๋ฅ๋ฉํธ๋ฆญ ๋ฐฉ์๋ณด๋ค ๋ ์ ํํ๊ณ ์๊ฐ์ ์ผ๋ก ์ฐ์ํ ํ์ ์์ฑ ๊ฒฐ๊ณผ ์ ๊ณต
- DeepSDF ๋ ์ฐ์์ ์ธ SDF ํํ์ ์ฅ์ ์ ๋ณด์ฌ์ค
Latent Space Shape Interpolation
๋ชฉ์ : ํ์ต๋ ํ์ ์๋ฒ ๋ฉ(latent embedding) ์ด ์์ ํ๊ณ ์ฐ์์ ์์ ๋ณด์ฌ์ฃผ๊ธฐ ์ํจ
๋ฐฉ๋ฒ
- ์ ์ฌ ๋ฒกํฐ ๊ณต๊ฐ์์ ๋ ํ์ ๊ฐ์ ๋ณด๊ฐ(interpolation) ์ ์ํ
- ๋ณด๊ฐ๋ ์ ์ฌ ๋ฒกํฐ๋ฅผ ๋์ฝ๋์ ์ ๋ฌํ์ฌ ํ์์ ๋ ๋๋ง
- Fig 1. ์ ๋ณด๊ฐ ๊ฒฐ๊ณผ ์ ์
๊ฒฐ๊ณผ
- ๋ณด๊ฐ ๊ณผ์ ์์ ์์ฑ๋ ํ์์ ๋ชจ๋ ์๋ฏธ ์๋ ํํ๋ฅผ ์ ์ง
- ์์ ํ๊ฑธ์ด ๊ฐ์ ํน์ง์ด ์ ์ฌ ๊ณต๊ฐ์์ ์ ํ์ ์ผ๋ก ๋ณด๊ฐ๋จ
- ์ด๋ DeepSDF ๊ฐ ํ์์ ๊ณตํต์ ์ด๊ณ ํด์ ๊ฐ๋ฅํ ํน์ง์ ํจ๊ณผ์ ์ผ๋ก ํํํจ์ ๋ํ๋
Conclusion
- DeepSDF ๋ 3D ํ์ ํํ ๋ฐ ๋ณต์ ์์
์์ ๊ธฐ์กด ๋ฐฉ๋ฒ๋ค์ ๋ฅ๊ฐํ๋ฉฐ, ๋ณต์กํ ๊ตฌ์กฐ์ ๋ซํ ํ๋ฉด์ ํจ๊ณผ์ ์ผ๋ก ํํํ๊ณ ๊ณ ํ์ง์ ํ๋ฉด ๋ฒ์ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ค.
- ํฌ์ธํธ๋ณ SDF ์ํ๋ง์ ํจ์จ์ ์ด์ง๋ง, ํ์ ๋ณต์(auto-decoding)์ ์ ์ฌ ๋ฒกํฐ์ ๋ํ ๋ช
์์ ์ต์ ํ๊ฐ ํ์ํด์ ์ถ๋ก ์๊ฐ์ด ๊ธธ์ด์ง๋ ํ๊ณ๊ฐ ์๋ค.
- ์ฅ์ : ๋ณต์กํ ํ์์ ๋ ์ ์ ๋ฉ๋ชจ๋ฆฌ๋ก ํํํ๋ฉฐ ์ด์ ๋ฐฉ๋ฒ๋ณด๋ค ๋์ฑ ๋์ ์ฑ๋ฅ์ ๋ณด์ฌ์ค๋ค.