https://arxiv.org/abs/2403.15383
ThemeStation: Generating Theme-Aware 3D Assets from Few Exemplars
Real-world applications often require a large gallery of 3D assets that share a consistent theme. While remarkable advances have been made in general 3D content creation from text or image, synthesizing customized 3D assets following the shared theme of in
arxiv.org
๋ฌธ์ ์ ์
- ๊ฐ์ํ์ค(VR)์ด๋ ๋น๋์ค ๊ฒ์์์๋ ํ ๋ง์ ์ผ๋ก ์ผ๊ด์ฑ ์๋ ๋์์ ๋ค์ํ 3D ๋ชจ๋ธ์ ๋๋์ผ๋ก ์์ฑํด์ผ ํจ.
- ์๋ จ๋ ์ฅ์ธ์ ํ๋ ๋๋ ๋ช ๊ฐ์ 3D ๋ชจ๋ธ์ ๋ง๋๋ ๊ฒ์ ์ฝ์ง๋ง, ๋๋์ 3D ๋ชจ๋ธ์ ๋ง๋๋ ๊ฒ์ ์ด๋ ต๊ณ ์๊ฐ์ด ๋ง์ด ๊ฑธ๋ฆผ.
- ๊ธฐ์กด์ 3D ์์ฑ ๋ชจ๋ธ๋ค์ ์ ๋ ฅ ์ ๋ณด(ํ ์คํธ, ์ด๋ฏธ์ง)๊ฐ ์ ํ์ ์ด์ด์ 3D ๋ชจ๋ธ์ด ๋ชจํธํ๊ฑฐ๋ ์ผ๊ด์ฑ์ด ๋ถ์กฑํ ๋ฌธ์ ๊ฐ ์์.
์ด ๋ ผ๋ฌธ์์๋ ์ ๋ ฅ 3D ์์ ๋ค๊ณผ ์ผ๊ด๋ ํ ๋ง๋ฅผ ์ ์งํ๋ฉด์ ๋ง์ถคํ 3D ์์ ์ ์์ฑํ๋ ๊ฒ์ด ์ด๋ ค์ด ๋ฌธ์ ๋ผ๊ณ ์ธ๊ธํฉ๋๋ค.
1๏ธโฃ ์คํ์ผ & ํ ๋ง ์ ์ง์ ์ด๋ ค์
- ์ ๋ ฅ๋ 3D ๋ชจ๋ธ๋ค์ด ๋ชจ๋ ์กฐ๊ธ์ฉ ๋ค๋ฅธ ๋์์ธ์ ๊ฐ์ง ์ ์์.
- ์๋ฅผ ๋ค์ด, ์ด๋ค ๋ชจ๋ธ๋ค์ ๋ ๊ฐ์ง ์คํ์ผ์ด๊ณ , ์ด๋ค ๋ชจ๋ธ๋ค์ ๋ถ๋๋ฌ์ด ๊ณก์ ์ ๊ฐ์ง ์๋ ์์ด.
- ์๋ก์ด 3D ์ ์ ์ ๋ง๋ค ๋, ์ด๋ค ์คํ์ผ์ ์ ์งํ ์ง ๊ฒฐ์ ํ๋ ๊ฒ์ด ์ฝ์ง ์์.
- ์์:
- ์ฌ๋ฌ ๊ฐ์ ํํ์ง ์คํ์ผ ๊ฑด์ถ๋ฌผ(์: ์ฑ, ํ, ์ง)์ด ์ฃผ์ด์ก์ ๋,
- ๋์ผํ ์คํ์ผ์ ์ ์งํ๋ฉด์๋ ์๋ก์ด ๊ฑด์ถ๋ฌผ์ ์์ฑํ๋ ๊ฒ์ ์ฝ์ง ์์.
- ์์ฑ ๋ชจ๋ธ์ด ๋๋ฌด ๋ณด์์ ์ด๋ฉด ๊ธฐ์กด ๋ชจ๋ธ๊ณผ ๋๋ฌด ๋น์ทํด์ง๊ณ ,
- ๋๋ฌด ์ฐฝ์์ ์ด๋ฉด ์๋ ์คํ์ผ์์ ๋ฒ์ด๋๊ฒ ๋จ.
2๏ธโฃ ๊ตฌ์กฐ์ ์ผ๊ด์ฑ ๋ฌธ์
- 3D ๋ชจ๋ธ์ ๋จ์ํ ์ด๋ฏธ์ง๊ฐ ์๋๋ผ **์ ํํ ๊ธฐํํ์ ๊ตฌ์กฐ(geometry)**๋ฅผ ๊ฐ์ ธ์ผ ํจ.
- ์๋ก์ด 3D ์ ์ ์ด ๊ธฐ์กด ์์ ๋ค๊ณผ ์ ์ฌํ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ ธ์ผ ํ์ง๋ง, ๋จ์ํ ๋ณต์ฌ(copy)๋ ์๋์ด์ผ ํจ.
- ์๋ฅผ ๋ค์ด, ์ฌ๋ฌ ๊ฐ์ ์ฐจ๋ ๋ชจ๋ธ์ ๋ณด๊ณ ์๋ก์ด ์ฐจ๋์ ์์ฑํ ๋,
- ํ , ๋ฌธ, ์ฐฝ๋ฌธ, ์ฐจ์ฒด ๋น์จ ๋ฑ์ ๊ตฌ์กฐ์ ์ผ๊ด์ฑ์ ์ ์งํด์ผ ํ์ง๋ง
- ๊ธฐ์กด ๋ชจ๋ธ๋ค๊ณผ ์์ ํ ๋์ผํด์๋ ์ ๋จ.
- ์์:
- ๋ช ๊ฐ์ 3D ๊ฐ๊ตฌ ๋ชจ๋ธ(์: ์์, ์ฑ ์)์ด ์ฃผ์ด์ก์ ๋,
- ๊ฐ์ ์คํ์ผ์ ์ ์งํ๋ฉด์๋ ์๋ก์ด ์์๋ฅผ ๋ง๋ค๋ ค๋ฉด,
- ์์์ ๋ค๋ฆฌ ๊ฐ์, ๋์ด, ์ฟ ์ ๋๊ป ๋ฑ์ ๊ณ ๋ คํด์ผ ํจ.
3๏ธโฃ ํ ์ค์ฒ & ๋ํ ์ผ ์กฐํฉ์ ์ด๋ ค์
- ๋จ์ํ 3D ํํ(geometry)๋ง ๋น์ทํ๊ฒ ๋ง๋๋ ๊ฒ์ด ์๋๋ผ,
์ฌ์ง(Material)๊ณผ ํ ์ค์ฒ(Texture)๋ ๊ณ ๋ คํด์ผ ํจ. - ์์ 3D ๋ชจ๋ธ๋ค์ด ์๋ก ๋ค๋ฅธ ํ
์ค์ฒ(์: ๋๋ฌด, ๊ธ์, ํ๋ผ์คํฑ)๋ฅผ ์ฌ์ฉํ๊ณ ์๋ค๋ฉด,
- ์๋ก์ด 3D ๋ชจ๋ธ์ด ์ด๋ค ์ฌ์ง์ ๊ฐ์ ธ์ผ ํ ์ง ๊ฒฐ์ ํ๋ ๊ฒ์ด ์ด๋ ค์.
- ํนํ, ๊ณ ํด์๋ ๋ํ
์ผ์ด ํ์ํ ๊ฒฝ์ฐ,
- ๋ชจ๋ธ ํ๋ฉด์ ์ธ๋ฐํ ์ง๊ฐ๊น์ง ๋ฐ์ํ๋ ๊ฒ์ด ๋ ์ด๋ ค์.
- ์์:
- ์ ๋ ฅ ์์ ๊ฐ ๋ชจ๋ "๋ชฉ์ฌ ๊ฐ๊ตฌ"๋ผ๋ฉด, ์๋ก์ด ๊ฐ๊ตฌ๋ ๋ชฉ์ฌ ์ง๊ฐ์ ์ ์งํด์ผ ํ์ง๋ง
- ๋จ์ํ ๊ธฐ์กด ๊ฐ๊ตฌ์ ํ ์ค์ฒ๋ฅผ ๋ณต์ฌํ๋ ๊ฒ์ด ์๋๋ผ, ์๋ก์ด ๋์์ธ์ ์์ฐ์ค๋ฝ๊ฒ ์ ์ฉํด์ผ ํจ.
5๏ธโฃ ์๋ํ๋ ๋ฐฉ๋ฒ๋ก ๋ถ์กฑ
- ํ์ฌ๊น์ง์ 3D ์์ฑ ๋ชจ๋ธ(์: GAN, Diffusion Model)์ ์ฃผ๋ก ๊ฐ๋ณ์ ์ธ ์คํ์ผ์ ์์ฑํ๋ ๋ฐ ์ด์ ์ด ๋ง์ถฐ์ ธ ์์.
- ํ์ง๋ง, ๊ธฐ์กด์ ์ฌ๋ฌ ๊ฐ์ ์์ ๋ฅผ ๋ณด๊ณ "์ผ๊ด์ฑ ์๋" ์๋ก์ด 3D ๋ชจ๋ธ์ ์์ฑํ๋ ๊ธฐ๋ฒ์ ์์ง ์๋ฒฝํ์ง ์์.
- 2D ์คํ์ผ ํธ๋์คํผ(Style Transfer) ๊ฐ์ ๊ธฐ๋ฒ์ด 3D์์๋ ๋ ํจ๊ณผ์ ์ผ ์ ์์.
- ์์:
- 2D์์๋ "ํ๊ฐ์ ๊ทธ๋ฆผ ์คํ์ผ"์ ์๋ก์ด ์ด๋ฏธ์ง์ ์ ์ฉํ๋ ๊ฒ์ด ๊ฐ๋ฅํ์ง๋ง,
- 3D์์๋ ๋ชจ๋ธ์ ๊ตฌ์กฐ๊น์ง ๊ณ ๋ คํด์ผ ํ๊ธฐ ๋๋ฌธ์ ํจ์ฌ ์ด๋ ค์.
ThemeStation ์์๋ ์ ๋ ฅ๋ ๋ช ๊ฐ์ 3D ์์ (Examplars) ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์๋ก์ด 3D ์์ ์ ์์ฑํ๋๋ฐ, ๋๊ฐ์ง ๋ชฉํ๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค.
- Unity (ํต์ผ์ฑ)
- ์์ฑ๋ 3D ์์ ์ด ์ฃผ์ด์ง ์์ ๋ค๊ณผ ํ ๋ง์ ์ผ๋ก ์ผ๊ด์ฑ์ ์ ์งํด์ผ ํจ.
- ์ฆ, ์๋ก์ด 3D ๋ชจ๋ธ์ด ๊ธฐ์กด ์์ ๋ค๊ณผ ๊ฐ์ ์คํ์ผ, ๋ถ์๊ธฐ, ํํ์ ํน์ง์ ๊ฐ์ ธ์ผ ํจ.
- ์๋ฅผ ๋ค์ด, ํํ์ง ์คํ์ผ์ ์ฑ(Castle) ์์ ๋ค์ด ์ ๋ ฅ๋๋ฉด, ์๋ก์ด 3D ์์ ๋ค๋ ๊ฐ์ ํํ์ง ๋๋์ ์ ์งํด์ผํจ
- Diversity (๋ค์์ฑ)
- ์์ฑ๋ 3D ์์ ๋ค์ด ๋๋ฌด ๋๊ฐ์ผ๋ฉด ์ ๋๋ฏ๋ก, ๋ค์์ฑ์ ๊ทน๋ํํด์ผํจ
- ์ฆ, ๊ฐ์ ํ ๋ง ์์์๋ ์ฌ๋ฌ ๊ฐ์ง ๋ณํ(variation) ๊ฐ ์๋ ๋ชจ๋ธ์ ๋ง๋ค์ด์ผํ๋ค.
- ์๋ฅผ ๋ค์ด, ๊ฐ์ ํํ์ง ์ฑ์ ๋ง๋ค๋๋ผ๋, ๊ณ ๋ ์คํ์ผ, ๋ง๋ฒ์ฌ ์คํ์ผ, ์ค์ธ ์คํ์ผ ๋ฑ ๋ค์ํ ๋์์ธ ์์๋ฅผ ์ ์ฉํ ์ ์์ด์ผ ํจ.
Exemplars(์์ )๋?
- ThemeStation ์ด ์ฐธ๊ณ ํ๋ ๋ช ๊ฐ์ 3D ๋ชจ๋ธ(์ ๋ ฅ ์์ ๋ค) ์ ์๋ฏธ
- ์ด ์์ ๋ค์ ๊ธฐ๋ฐ๋ฅ๋ก ์๋ก์ด 3D ์์ ์ ๋ง๋ค ๋, ์คํ์ผ๊ณผ ํ ๋ง๋ฅผ ์ ํ๋ ๊ธฐ์ค์ด ๋จ
Text Prompts ์ Images ์ ๋นํด์ 3D exemplars ๋ ๋์ฑ ํ๋ถํ ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค.
3D exemplars ๋ Geometry ์ Appearance source ๋ฅผ ๊ฐ์ง๊ณ ์๊ณ , ์ด๊ฒ 3D modeling ์ ๋ชจํธ์ฑ์ ์ค์ฌ์ค๋๋ค!
์ด์ ์ฐ๊ตฌ๋ค(Sin3DM, Sin3DGen)์์๋ Simply training a generative model on a few limited variation ์ด์๊ธฐ ๋๋ฌธ์ limited variation ์ ๋ณด์ ๋๋ค. ๊ทธ์ input ๋ชจ๋ธ์ resizing ํ๊ฑฐ๋ repeating randomly ๋ฅผ ์งํํ ๋ฟ์ ๋๋ค.
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์ ThemeStation ์์๋ two-stage generative scheme ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
์ฒซ๋ฒ์งธ๋ก๋ concept art ๋ฅผ ๊ทธ๋ฆฌ๊ณ ๊ทธ ๋ค์์ progressive ํ 3D modeling ์ ์ฌ์ฉํด์ 3D๋ก ๋ง๋ญ๋๋ค.
First Stage : ๊ฐ๋ ์ํธ ์์ฑ (Concept Art Generation)
- ๊ธฐ์กด์ ์ด๋ฏธ์ง Diffusion ๋ชจ๋ธ์ Fine-Tuningํ์ฌ ์ ๋ ฅ 3D ๋ชจ๋ธ์ ๊ธฐ๋ฐ์ผ๋ก ๋ค์ํ ์ปจ์ ์ด๋ฏธ์ง๋ฅผ ์์ฑ.
- ๊ธฐ์กด ๊ธฐ๋ฒ(์: DreamBooth, LoRA)๊ณผ ๋ฌ๋ฆฌ, ๋จ์ํ ํน์ ๊ฐ์ฒด๋ฅผ ์ฌํํ๋ ๊ฒ์ด ์๋๋ผ ์๋ก์ด ์ฃผ์ (subject)๋ฅผ ํฌํจํ ํ ๋ง์ ์ธ ์ด๋ฏธ์ง๋ฅผ ์์ฑํ๋๋ก ํ์ต.
Second Stage : 3D ๋ชจ๋ธ ์์ฑ (3D Asset Generation)
- ์์ฑ๋ ์ปจ์ ์ด๋ฏธ์ง๋ฅผ 3D ๋ชจ๋ธ๋ก ๋ณํํ๋ฉด์, ์ ๋ ฅ๋ 3D Exemplars๋ฅผ ๋ณด์กฐ ์ ๋ณด๋ก ํ์ฉํ์ฌ ๋ชจ๋ธ๋ง ์งํ.
- ๊ธฐ์กด ์ด๋ฏธ์ง-to-3D ๋ฐฉ๋ฒ๊ณผ ๋ค๋ฅด๊ฒ, ์ปจ์ ์ด๋ฏธ์ง๋ ๋จ์ ๊ฐ์ด๋ ์ญํ ์ ํ๊ณ , ์ ๋ ฅ 3D ๋ชจ๋ธ์์ ์ป์ ์ถ๊ฐ์ ์ธ ๊ธฐํํ์ ์ ๋ณด(geometry)์ ๋ค๊ฐ๋ ์ ๋ณด(multi-view appearance)๋ฅผ ๋ฐ์ํ์ฌ ๋ ์ ๊ตํ 3D ๋ชจ๋ธ ์์ฑ.
ํต์ฌ ๊ธฐ์ : Reference-informed Dual Score Distillation (DSD)
๋ ๊ฐ์ง Diffusion ๋ชจ๋ธ์ ํ์ฉํ์ฌ ์์ฑ ๊ณผ์ ์ ํ์ง์ ํฅ์ํฉ๋๋ค.
- Concept Prior: ์ปจ์ ์ด๋ฏธ์ง์์ ์ ์ฒด์ ์ธ ๊ตฌ์กฐ๋ฅผ ๋ณด์กดํ๋๋ก ๊ฐ์ด๋.
- Reference Prior: ์ ๋ ฅ 3D ์์ ์์ ์ธ๋ถ์ ์ธ ๋ํ ์ผ์ ๋ฐ์ํ๋๋ก ๊ฐ์ด๋.
- Noise Level(๋
ธ์ด์ฆ ๋จ๊ณ)์ ๋ฐ๋ผ ๋ ๊ฐ์ง Prior์ ๋ค๋ฅด๊ฒ ์ ์ฉํ์ฌ ์ต์ ์ 3D ๋ชจ๋ธ ์์ฑ.
- ๋์ ๋ ธ์ด์ฆ ๋จ๊ณ → Concept Prior ์ ์ฉ (์ ์ฒด์ ์ธ ํํ ๊ฐ์ด๋).
- ๋ฎ์ ๋ ธ์ด์ฆ ๋จ๊ณ → Reference Prior ์ ์ฉ (์ธ๋ถ์ ์ธ ๋ํ ์ผ ๋ณด์กด).
1๏ธโฃ Subject-driven (๊ธฐ์กด ๋ฐฉ์)
- ํน์ ๊ฐ์ฒด(๊ฐ์ฒด)๋ฅผ ์ค์ฌ์ผ๋ก ํ์ต → "๊ทธ ๋์๊ณผ ์ ์ฌํ ๋ณํ๋ง ์์ฑ ๊ฐ๋ฅ"
- ์์:
- "์ด ๊ณ ์์ด ์ฌ์ง์ ๋ณด๊ณ ๊ณ ์์ด๋ฅผ ๋ง๋ค์ด๋ด!" ๐ฑ → ๊ฑฐ์ ๊ฐ์ ๊ณ ์์ด๊ฐ ๋์ค์ง๋ง, ์ฝ๊ฐ์ ๋ณํ๋ง ์์.
- DreamBooth (Gal et al., 2022) ๊ฐ์ ๊ธฐ๋ฒ์ด ๋ํ์ .
2๏ธโฃ Theme-driven (ThemeStation ๋ฐฉ์)
- ํน์ ๊ฐ์ฒด๋ฅผ ์ค์ฌ์ผ๋ก ํ์ตํ๋ ๊ฒ ์๋๋ผ, ํ ๋ง(์คํ์ผ, ๋ถ์๊ธฐ ๋ฑ)๋ฅผ ์ ์งํ๋ฉด์ ๋ค์ํ ๊ฐ์ฒด๋ฅผ ์์ฑ.
- ์์:
- "์ด ๊ณ ์์ด ๊ทธ๋ฆผ์ ์ฐธ๊ณ ํด์, ๊ณ ์์ด ์คํ์ผ์ ์ ์งํ๋ฉด์ ๋ค์ํ ์๋ก์ด ๊ณ ์์ด ์บ๋ฆญํฐ๋ฅผ ๋ง๋ค์ด๋ด!"
- ์ฆ, ๊ณ ์์ด์ ํน์ ํ ๋ชจ์ต์ด ์๋๋ผ, '๊ณ ์์ด์ค๋ฌ์ด ์คํ์ผ'์ ๋ฐ์ํ์ฌ ์ฌ๋ฌ ๊ฐ์ง ํํ์ ๊ณ ์์ด๋ฅผ ์์ฑ.
Rework ์ ์ ์ ์ดํด๋ณด์๋ฉด,
- 3D ์์ฑ์์์ Diffusion Prior
- DreamFusion [Poole et al. 2023]
- ์ฌ์ ํ์ต๋ ํ ์คํธ-์ด๋ฏธ์ง(T2I) Diffusion ๋ชจ๋ธ์์ ์ด๋ฏธ์ง ๋ถํฌ์ ์ ์(Score) ๋ฅผ ์ถ์ถํ์ฌ 3D๋ฅผ ์์ฑํ๋ ๋ฐฉ๋ฒ ์ ์.
- Score Distillation Sampling (SDS) ๊ธฐ๋ฒ์ ๋์ ํ์ฌ text-to-3d ์ฑ๋ฅ์ ๊ฐ์
- DreamFusion [Poole et al. 2023]
- Exemplar-Based (์์ ๊ธฐ๋ฐ) 3D ์์ฑ
- DreamBooth [Rag et al. 2023]
- ์์์ ์ด๋ฏธ์ง๋ง์ผ๋ก ์ฌ์ ํ์ต๋ Diffusion ๋ชจ๋ธ์ Fine-tuning ํ์ฌ, ํน์ ๊ฐ์ฒด ์ค์ฌ(Subject-driven) ์ผ๋ก text-to-3d ์์ฑ
- ํ์ง๋ง, ์ ๋ ฅ๋ ์ด๋ฏธ์ง์ 3D ์ ๋ณด ๋ถ์กฑ์ผ๋ก ์ธํด ์์ฑ๋ ๊ฒฐ๊ณผ๋ฌผ์ ์ผ๊ด์ฑ์ด ๋ถ์กฑ
- DreamBooth [Rag et al. 2023]
Theme-Driven Concept Image Generation
- Diffusion ๋ชจ๋ธ์ ์ ๋ ฅ 3D Exemplars์ ๋ ๋๋ง ์ด๋ฏธ์ง {xr}๋ก ํ์ธํ๋.
- ๊ธฐ์กด ๋ชจ๋ธ์ ์งง์ ํ์ต(iteration์ด ์ ์ fine-tuning)๋ง์ผ๋ก๋ ํ ๋ง๋ฅผ ํ์ตํ ์ ์์.
- ๊ฒฐ๊ณผ์ ์ผ๋ก, ์๋ก์ด ๊ฐ์ฒด(Subjects)๋ฅผ ์์ฑํ๋, ํ ๋ง์ ์ผ๊ด์ฑ์ ์ ์งํ ์ ์์.
- ํ
๋ง(semantics & style)์ ์ปจํ
์ธ (subject)๋ฅผ ๋ถ๋ฆฌํ๊ธฐ ์ํด, ๋ชจ๋ ์์ ์์ ๊ณตํต๋ ํ
์คํธ ํ๋กฌํํธ๋ฅผ ์ฌ์ฉ.
- ์์:
- "a 3D model of an owl, in the style of [V]"
- ํ๋กฌํํธ์์ "in the style of [V]"๋ฅผ ํตํด ํ ๋ง๋ฅผ ์ ์งํ๋ ํ์ต์ ์ ๋
- ์์:
Reference-Informed 3D Asset Modeling
- ์ด ๋จ๊ณ์์๋ ์์ ๋จ๊ณ์์ ์์ฑํ ์ปจ์ ์ด๋ฏธ์ง๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ฌ 3D ๋ชจ๋ธ๋ง์ ์งํ
- ์
๋ ฅ ๋ฐ์ดํฐ
- 1 ๋จ๊ณ์์ ์์ฑ๋ ์ปจ์ ์ด๋ฏธ์ง xc
- ์ ๋ ฅ๋ 3D ์์ ๋ชจ๋ธ (Exemplars) mr
- ๋ชฉํ
- ์ปจ์ ์ด๋ฏธ์ง xc ๋ฅผ ์ฐธ๊ณ ํ์ฌ ์๋ก์ด 3D ๋ชจ๋ธ์ ์์ฑํ๋,
- ์ ๋ ฅ๋ 3D Exemplars ๋ฅผ ํ์ฉํ์ฌ ์ธ๋ถ ๋ํ ์ผ์ ๋ณด์ํ๊ณ ๋ฉํฐ๋ทฐ ์ผ๊ด์ฑ์ ์ ์งํจ
- ๋ชจ๋ธ๋ง ๊ณผ์
- ์ด๊ธฐ 3D ๋ชจ๋ธ ์์ฑ (Rough Initial Model Creation)
- ์ผ๋ฐ์ ์ธ 3D ๋ชจ๋ธ๋ง ๊ณผ์ ์ฒ๋ผ, ๊ธฐ๋ณธ์ ์ธ ํํ(Primitive model) ์์ ์์
- ์ปจ์ ์ด๋ฏธ์ง xc ๋ฅผ ํ์ฉํ์ฌ ๊ธฐ์กด Image-to-3D ๊ธฐ๋ฒ์ ์ฌ์ฉํด ์ด๊ธฐ 3D ๋ชจ๋ธ m_init ์ ์์ฑ
- ์ด๊ธฐ ๋ชจ๋ธ์ ํ๊ณ ๋ฐ ํด๊ฒฐ์ฑ
- ์ด๊ธฐ ๋ชจ๋ธ์ ๊ณต๊ฐ์ ๊ตฌ์กฐ(spatial structure) ๋ถ์์ ํ๊ฑฐ๋ ์ํฐํฉํธ(๋ถ์์ ํ ์์)๊ฐ ์กด์ฌํ ๊ฐ๋ฅ์ฑ์ด ๋์
- ๋ฐ๋ผ์, ์ด๊ธฐ ๋ชจ๋ธ์ ์ปจ์ ์ด๋ฏธ์ง์ ์๊ฒฉํ๊ฒ ๋ง์ถ ํ์๋ ์์!
- ๋์ , ์ปจ์ ์ด๋ฏธ์ง + ์ด๊ธฐ 3D ๋ชจ๋ธ์ ์ฐธ๊ณ ํด์ ์ต์ข 3D ๋ชจ๋ธ m0๋ฅผ ๋ฐ์ ์ํด
- ์ด๊ธฐ 3D ๋ชจ๋ธ ์์ฑ (Rough Initial Model Creation)
- Dual Score Distillation (DSD) Loss ๊ฐ๋
- ๋ ๊ฐ์ Diffusion Prior ๋ฅผ ํ์ฉํ์ฌ 3D ๋ชจ๋ธ ํ์ง์ ๊ฐ์ ์ํค๊ณ ์ ํจ
- Concept Prior ( ฯc )
- ๊ธฐ๋ณธ์ ์ธ ์ปจ์ ์ ์ ์งํ๋๋ก ๊ฐ์ด๋
- ์ปจ์ ์ด๋ฏธ์ง xc ์์ ์ป์ Diffusion Prior ๋ฅผ ์ฌ์ฉํ์ฌ ์ปจ์ ์ ์ถฉ์คํ ๋ฐ์ํ๋ 3D ๋ชจ๋ธ ์์ฑ
- Reference Prior ( ฯr )
- ์ ๋ ฅ 3D ์์ ๋ชจ๋ธ์ ์ธ๋ถ ๋ํ ์ผ์ ๋ณด์กดํ๊ณ , ๋ฉํฐ๋ทฐ ์ผ๊ด์ฑ์ ํฅ์
- ์ ๋ ฅ ์์ ๋ชจ๋ธ mr ์์ ์ป์ Diffusion Prior ๋ฅผ ์ฌ์ฉํ์ฌ ์ธ๋ฐํ ํน์ง ๋ณต์์ ์ง์
Dual Score Distillation (DSD)
Preliminaries.
- DreamFusion
- Text-to-3D ์์ฑ ๊ธฐ๋ฒ์ผ๋ก, 3D ๋ชจ๋ธ์ ์ต์ ํํ์ฌ ์ฃผ์ด์ง ํ ์คํธ ํ๋กฌํํธ์ ์ ํฉํ 3D ํํ์ ์์ฑ
- 3D ํํ์ ํ๋ผ๋ฏธํฐ θ ๋ฅผ ๊ฐ์ง๋ฉฐ g(θ) ๋ฅผ ํตํด ๋ ๋๋ง๋ ์ด๋ฏธ์ง๋ฅผ ์์ฑ
- g(θ) ๋ NeRF(Neural Radiance Fields)์ ์ ์ฌํ ๋ ๋๋ง ์์ง์ ์ฌ์ฉํ์ฌ ๋ค์ํ ์นด๋ฉ๋ผ ๊ฐ๋์์ 3D ๋ชจ๋ธ์ 2D ์ด๋ฏธ์ง๋ก ๋ณํํจ.
- ์ฆ, ๋๋๋ง๋ 3D ๋ชจ๋ธ์ด ์ฃผ์ด์ง ํ ์คํธ ํ๋กฌํํธ(y)์ ๋ง๋ 2D ์ด๋ฏธ์ง์ฒ๋ผ ๋ณด์ด๋๋ก ํ์ต
- Score Distillation Sampling (SDS)
- ์ฌ์ ํ์ต๋ Text-to-Image (T2I) Diffusion ๋ชจ๋ธ(φ)๋ ์ฃผ์ด์ง ํ
์คํธ ํ๋กฌํํธ(y)์ ๋ํด, ๋๋๋ง๋ 2D ๋ทฐ(xt)์ ๋
ธ์ด์ฆ(εφ)๋ฅผ ์์ธก
∂θ/∂xโ : 3D ๋ชจ๋ธ ํ๋ผ๋ฏธํฐ(θ)๊ฐ ์ด๋ฏธ์ง(x)์ ๋ฏธ์น๋ ์ํฅ(์ฆ, 3D ๋ชจ๋ธ์ ์ ๋ฐ์ดํธํ๋ ๋ฐฉํฅ). - Diffusion ๋ชจ๋ธ์ด 2D ์ด๋ฏธ์ง์์ ์์ธกํ ๋ ธ์ด์ฆ( εφ ) ๊ฐ ์ต์ํ๋๋๋ก 3D ํํ(θ)์ ์ ๋ฐ์ดํธ
- ์ฌ์ ํ์ต๋ Text-to-Image (T2I) Diffusion ๋ชจ๋ธ(φ)๋ ์ฃผ์ด์ง ํ
์คํธ ํ๋กฌํํธ(y)์ ๋ํด, ๋๋๋ง๋ 2D ๋ทฐ(xt)์ ๋
ธ์ด์ฆ(εφ)๋ฅผ ์์ธก
- Variational Score Distillation (VSD)
- SDS ๋ฅผ ๊ฐ์ ํ ๋ฐฉ๋ฒ์ผ๋ก, VSD ๋ 3D ํํ์ ๋จ์ผํ ๋ฐ์ดํฐ ํฌ์ธํธ๋ก ๊ฐ์ฃผํ๋ ๊ฒ์ด ์๋๋ผ ํ๋ฅ ์ ๋ณ์๋ฅผ ํ์ฉํ์ฌ ์์ฑ ๋ค์์ฑ์ ๋์
- VSD ๋ ์ ์ฐจ์ ์ ์(LoRA; Low-Rank Adaption) ๊ธฐ๋ฒ์ ์ฌ์ฉํ์ฌ Diffusion ๋ชจ๋ธ์ ์ ์์ ์ผ๋ก ํ์ฉ
- VSD ๊ทธ๋ผ๋์ธํธ ๊ณ์ฐ ๊ณต์
- εlora: LoRA(Low-Rank Adaptation)๋ฅผ ์ ์ฉํ T2I Diffusion ๋ชจ๋ธ์ด ์์ธกํ ๋ ธ์ด์ฆ.
- c: ์นด๋ฉ๋ผ ํ๋ผ๋ฏธํฐ(Camera parameter).
- LoRA๋ฅผ ํ์ฉํ๋ฉด, ๊ธฐ์กด Diffusion ๋ชจ๋ธ๋ณด๋ค ์ ์ ๊ณ์ฐ๋์ผ๋ก ํน์ ํ ์กฐ๊ฑด(์: ํ ์คํธ ํ๋กฌํํธ)์ ๋ง์ถฐ ์ ์ ๊ฐ๋ฅ.
- ์ฆ, VSD๋ SDS๋ณด๋ค ๋ ์ ๊ตํ๊ฒ ๋ ธ์ด์ฆ๋ฅผ ๋ณด์ ํ๋ฉฐ, ํ ์คํธ ์กฐ๊ฑด์ ๋ ์ ํฉํ 3D ๋ชจ๋ธ์ ์์ฑํ ์ ์์.
- SDS ์ VSD ๋ ํ๋์ ๋จ์ผ Diffusion ๋ชจ๋ธ์์ ํ์ต๋ ์ ๋ณด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก 3D ๋ชจ๋ธ์ ์ ๋ฐ์ดํธํจ
- ํ์ง๋ง, ๋ง์ฝ ์๋ก ๋ค๋ฅธ diffusion ๋ชจ๋ธ์์ ๋์จ Conflicted Prior ๊ฐ ์์ ๊ฒฝ์ฐ, ์ ๋์ํ์ง ์์
Learning of concept prior.
- Concept Prior ๋ ์ ๋ ฅ๋ ์ปจ์ ์ด๋ฏธ์ง์์ ํ ๋ง์ ์ผ๊ด์ฑ์ ์ ์งํ๋ฉด์ 3D ๋ชจ๋ธ ์์ฑ์ ํ์ํ ํต์ฌ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ ์์
- ์ฆ, 3D ๋ชจ๋ธ์ ๋ง๋ค ๋ ์ด๋ค ์คํ์ผ๊ณผ ๊ตฌ์กฐ๋ฅผ ์ ์งํ ๊ฒ์ธ์ง์ ๋ํ ๊ธฐ์ค์ ํ์ตํ๋ ๊ณผ์
- ๊ธฐ์กด ๋ฌธ์ ์
- ์ปจ์ ์ด๋ฏธ์ง๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์์ฑํ ์ด๊ธฐ 3D ๋ชจ๋ธ(m_init)์ ํ์ง์ด ๋ฎ์
- ํ ์ค์ฒ(์๊ฐ, ์ฌ์ง)์ด ํ๋ฆฟ => Blurry texture
- geometry ๊ฐ ๋๋ฌด ๋ถ๋๋ฌ์์ ์ธ๋ถ์ ์ธ ๋ํ ์ผ์ด ๋ถ์กฑํจ
- ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด Augmented View ๋ฅผ ํ์ฉ
- ์ด๊ธฐ 3D ๋ชจ๋ธ์์ ๋ค์ํ ์์ (view)์์ ๋ ๋๋ง๋ ์ด๋ฏธ์ง(x_init) ๋ฅผ ๋ณด๊ฐ(augment) ํ์ฌ, pseudo-multi-view ์ด๋ฏธ์ง(x^_init) ์ ์์ฑ
- ์ฆ, ๋จ์ํ ํ๊ฐ์ ์ปจ์ ์ด๋ฏธ์ง๊ฐ ์๋๋ผ, ๋ค์ํ ๊ฐ๋์์ ๋ณธ ์ด๋ฏธ์ง๋ฅผ ์ถ๊ฐ๋ก ์์ฑํ์ฌ 3D ์ ๋ณด ๋ถ์กฑ ๋ฌธ์ ํด๊ฒฐ
- ์ฌ๊ธฐ์ a(.) ๋ ์ด๋ฏธ์ง ๋ณํ (image-to-image translation) ์ฐ์ฐ
- Augmented Views๋ ์ปจ์ ์ด๋ฏธ์ง์ ์๋๋ 3D ๊ตฌ์กฐ๋ฅผ ๋ณด์ํ๋ ์ญํ ์ ํจ
Learning of reference prior.
- ์ฐธ์กฐ prior ์ ์ ๋ ฅ๋ 3D ์์ ๋ชจ๋ธ(reference models, mr) ์ ๊ธฐ๋ฐ์ผ๋ก 3D ๋ชจ๋ธ์ ์ธ๋ถ ๋ํ ์ผ๊ณผ ์ผ๊ด์ฑ์ ์ ์งํจ
- ์ฃผ์ ์ญํ ์ ๋ค์ ๋๊ฐ์ง
- ํ ์ค์ฒ ์ ๋ณด ๋ณด์กด (Texture Consistency)
- ์ ํํ ๊ธฐํํ์ ๊ตฌ์กฐ(Geometry) ์ ์ง
ํ์ต ๊ณผ์ โผ
1๏ธโฃ ์ ๋ ฅ ๋ฐ์ดํฐ (Reference Model์ ํ์ฉํ 2D ๋ฐ์ดํฐ ๋ณํ)
- ๋ ๋๋ง๋ ์ปฌ๋ฌ ์ด๋ฏธ์ง(xr):
- ๋ค์ํ ๋ทฐํฌ์ธํธ์์ ์ฐธ์กฐ ๋ชจ๋ธ์ ํ ์ค์ฒ(texture) ์ ๋ณด๋ฅผ ์ ๊ณต
- ๋ ๋๋ง๋ ๋
ธ๋ฉ ๋งต(nr):
- 3D ํ์์ ๋ฏธ์ธํ ๊ธฐํํ์ ๋ํ ์ผ(geometry details) ์ ๋ณด๋ฅผ ํฌํจ
- 3D ๋ชจ๋ธ์ ํ๋ฉด์ด ์ค์ ๋ก๋ ํํ(flat) ํ์ง๋ง, ๋ ธ๋ฉ ๋งต์ ์ธํ๋ถํํ ๋ํ ์ผ์ด ์๋๊ฒ์ฒ๋ผ ๋ณด์ด๊ฒ ๋ง๋ค ์ ์์
- ๋ ธ๋ฉ ๋งต์ RGB ์์์ ์ฌ์ฉํ์ฌ ๊ฐ ํฝ์ ์์์ ๋ฒ์ ๋ฒกํฐ(Normal Vector) ๋ฅผ ์ ์ฅํ๋ค.
- ๋๋คํ ๋ทฐํฌ์ธํธ์์ ์ฌ๋ฌ ๊ฐ์ ์ด๋ฏธ์ง ์์ฑ → ๋ฉํฐ๋ทฐ ์ผ๊ด์ฑ ํ๋ณด
2๏ธโฃ ์ปฌ๋ฌ ์ด๋ฏธ์ง์ ๋ ธ๋ฉ ๋งต์ ๊ณต๋ ํ์ต (Joint Usage of Two Types of Rendering)
- ์ปฌ๋ฌ ์ด๋ฏธ์ง → ํ ์ค์ฒ(texture) ๊ด๋ จ 3D ์ผ๊ด์ฑ ์ ์ง
- ๋ ธ๋ฉ ๋งต → ์ธ๋ฐํ ๊ธฐํํ์ ๋ํ ์ผ(geometry details) ํ์ต
- ๋ ๋ฐ์ดํฐ๋ฅผ ํจ๊ป ํ์ตํ์ฌ ๋ณด๋ค ์ ํํ 3D ์ฐธ์กฐ ํ๋ผ์ด์ด๋ฅผ ๊ตฌ์ถ!
3๏ธโฃ ์ด๋ฏธ์ง ํ๋ผ์ด์ด์ ๋ ธ๋ฉ ํ๋ผ์ด์ด ํ์ต ๋ถ๋ฆฌ (Disentangling Image Prior & Normal Prior)
- ์ปฌ๋ฌ ์ด๋ฏธ์ง์ ๋ ธ๋ฉ ๋งต์ ๊ฐ๊ฐ ๋ค๋ฅธ ํ ์คํธ ํ๋กฌํํธ(yx, yn)๋ก ํ์ต.
- ์์ :
- ์ปฌ๋ฌ ์ด๋ฏธ์ง: "a 3D model of an owl, in the style of [V]"
- ๋ ธ๋ฉ ๋งต: "a 3D model of an owl, in the style of [V], normal map"
- ์ด๋ฅผ ํตํด ๊ฐ๊ฐ์ ์ญํ ์ ๋ถ๋ฆฌํ์ฌ ์ต์ ์ ํ์ต ํจ๊ณผ๋ฅผ ์ป์.
4๏ธโฃ Diffusion ๋ชจ๋ธ(ฯ) ํ์ต
- ๊ธฐ์กด T2I Diffusion ๋ชจ๋ธ์ ์ ๋ ฅ๋ ๋ฐ์ดํฐ({xr},yx,{nr},yn)๋ก ํ์ธํ๋ํ์ฌ ์ฐธ์กฐ ํ๋ผ์ด์ด(ฯr)๋ฅผ ๊ตฌ์ถ.
- DSD ์์๋ ์ปฌ๋ฌ ์ด๋ฏธ์ง์ ๋ ธ๋ฉ ๋งต์ ๊ฐ๊ฐ ๋ฐ๋ก ํ์ตํ์ง๋ง, ์ต์ข ์ ์ผ๋ก๋ "ํ๋์ Diffusion ๋ชจ๋ธ"์ ํ์ธํ๋ํ์ฌ Reference Prior( ) ๋ฅผ ๊ตฌ์ถํจ
- ์ฆ, Diffusion ๋ชจ๋ธ์ด ๊ฐ์ ๋คํธ์ํฌ ๊ตฌ์กฐ๋ฅผ ์ ์งํ๋ฉด์๋, ์ ๋ ฅ๋ ๋ฐ์ดํฐ์ ์ ํ(์ปฌ๋ฌ ์ด๋ฏธ์ง vs ๋ ธ๋ฉ ๋งต)์ ๋ฐ๋ผ ๋ค๋ฅธ ์ ๋ณด(์์/ํ์)๋ฅผ ํ์ตํ ์ ์๋๋ก ์ ๋ํ๋ ๊ตฌ์กฐ
=> 3D ๋ชจ๋ธ์ 2D ๋ก ๋ณํํ๋ ์ด์
- 2D Diffusion ๋ชจ๋ธ๋ค์ ํ๋ถํ 2D ๋ฐ 3D ์๊ฐ์ ์ ๋ณด(Prior) ๋ฅผ ์ด๋ฏธ ํฌํจํ๊ณ ์์
- 3D ๋ฐ์ดํฐ๋ฅผ 2D ๋ก ๋ณํํ์ฌ Diffusion ๋ชจ๋ธ์ ๊ฐ๋ ฅํ ํ์ต ๋ฅ๋ ฅ ํ์ฉ ๊ฐ๋ฅ
- ์ปฌ๋ฌ ์ด๋ฏธ์ง์ ๋ ธ๋ฉ ๋งต์ ๋ฉํฐ๋ทฐ๋ก ์ ๊ณตํ๋ฉด, 3D ์ ๋ณด๋ฅผ ์๋ฌต์ ์ผ๋ก ์ ์ง ๊ฐ๋ฅ
How Does Dual Score Distillation Work?
- ๊ธฐ์กด Score Distillation Sampling (SDS) ๋ฐฉ์์ ๋ฌธ์ ์
- ๊ธฐ๋ณธ์ ์ธ SDS ๋ฐฉ์์์๋ ๋จ์ํ ๋ ๊ฐ์ Diffusion ๋ชจ๋ธ(์ปจ์ ํ๋ผ์ด์ด ฯc ์ ์ฐธ์กฐ ํ๋ผ์ด์ด ฯr)๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ๊ฐ ๋ฐ๋ก Score Distillation์ ์ํํ ํ ํฉ์ฐํ๋ ๋ฐฉ์
- ํ์ง๋ง, ๋ ๊ฐ์ ํ๋ผ์ด์ด๋ฅผ ๋จ์ํ ํฉํ๋ฉด ์ต์ ํ ๊ณผ์ ์์ ์ถฉ๋(Loss Conflicts)์ด ๋ฐ์ → ์๊ณก๋ 3D ๋ชจ๋ธ์ด ์์ฑ๋จ
- DSD(Dual Score Distillation) Loss ์ ํด๊ฒฐ ๋ฐฉ๋ฒ
- Diffusion ๋ชจ๋ธ์ ๋ ธ์ด์ฆ ์ ๊ฑฐ(reverse diffusion) ๊ณผ์ ์์, ๋ ธ์ด์ฆ ๋ ๋ฒจ(denoising timesteps)์ ๋ฐ๋ผ ์ญํ ์ ๋๋์!
- ๊ณ ์ฃผํ(High-frequency) ์ ๋ณด์ ์ ์ฃผํ(Low-frequency) ์ ๋ณด๊ฐ ๋ค๋ฅธ ๋จ๊ณ์์ ํ์ต๋๋ค๋ ์ ์ ํ์ฉ!
- High noise level (์ด๊ธฐ ๋จ๊ณ, th) → ๊ฑฐ์น ๋ ์ด์์(Global Layout)๊ณผ ์์(Color) ๋ถํฌ๋ฅผ ์กฐ์
- ์ปจ์
ํ๋ผ์ด์ด ฯc ๋ ์ ์ฒด์ ์ธ ํํ & ์์์ ๊ฒฐ์ ํ๋ฏ๋ก ์ด๊ธฐ ๋
ธ์ด์ฆ ๋จ๊ณ(th)์์ ์ ์ฉ
- ์ปจ์
ํ๋ผ์ด์ด ฯc ๋ ์ ์ฒด์ ์ธ ํํ & ์์์ ๊ฒฐ์ ํ๋ฏ๋ก ์ด๊ธฐ ๋
ธ์ด์ฆ ๋จ๊ณ(th)์์ ์ ์ฉ
- Low noise level (ํ๋ฐ ๋จ๊ณ, tl) → ๊ณ ์ฃผํ ๋ํ
์ผ(High-frequency Details)์ ์์ฑ
- ์ฐธ์กฐ ํ๋ผ์ด์ด ฯr ๋ ์ธ๋ถ์ ์ธ ์ง๊ฐ(Texture)๊ณผ ํ์์ ๋ณด์กดํ๋ฏ๋ก ํ๋ฐ ๋
ธ์ด์ฆ ๋จ๊ณ(tl)์์ ์ ์ฉ
- ์ฐธ์กฐ ํ๋ผ์ด์ด ฯr ๋ ์ธ๋ถ์ ์ธ ์ง๊ฐ(Texture)๊ณผ ํ์์ ๋ณด์กดํ๋ฏ๋ก ํ๋ฐ ๋
ธ์ด์ฆ ๋จ๊ณ(tl)์์ ์ ์ฉ
- ์ต์ข
DSD Loss
์์ ๊ฐ์ด DSD Loss ๋ฅผ ์ฌ์ฉํ๊ฒ ๋๋ฉด - Loss ์ถฉ๋ ๋ฌธ์ ํด๊ฒฐ => Noise Level ์ ๋ค๋ฅด๊ฒ ์ ์ฉ
- ์ปจ์ ์ ์ ์งํ๋ฉด์๋ ์ธ๋ถ ๋ํ ์ผ ๋ณด์กด => ์ด๊ธฐ ๋จ๊ณ์์๋ ์ปจ์ ์, ํ๋ฐ ๋จ๊ณ์์๋ ์ธ๋ถ ๋ํ ์ผ์ ํ์ตํ์ฌ ์ต์ ์ 3D ๋ชจ๋ธ์ ์์ฑ