์„œ๋น„์Šค
๊ต์œก ์ฒ ํ•™

Related Neural Appearance Models

1. Abstract: Realtime Neural Appearance Models

๋ณธ ๋…ผ๋ฌธ์€ ์˜คํ”„๋ผ์ธ ๋ Œ๋”๋ง์—์„œ๋งŒ ๊ฐ€๋Šฅํ•œ ๋ณต์žกํ–ˆ๋˜ ์™ธํ˜•์„ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ Œ๋”๋งํ•˜๋Š” ์ƒˆ๋กœ์šด ์‹œ์Šคํ…œ์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค. ํ•ต์‹ฌ ์•„์ด๋””์–ด๋Š” ๊ณ„์ธต์  ํ…์Šค์ฒ˜(Hierarchical textures)๋ฅผ ์‹ ๊ฒฝ ๋””์ฝ”๋”(neural decoder)๋ฅผ ์‚ฌ์šฉ ํ•˜์—ฌ ํ•ด์„ํ•จ์œผ๋กœ์จ ๋ฐ˜์‚ฌ๊ฐ’๊ณผ ์ค‘์š”๋„ ์ƒ˜ํ”Œ๋ง๋œ ๋ฐฉํ–ฅ์„ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋””์ฝ”๋”์˜ ๋ชจ๋ธ๋ง ๋Šฅ๋ ฅ์„ ์ตœ์ ์œผ๋กœ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
์ฒซ ๋ฒˆ์งธ๋Š” ์‚ฌ์ „์— ๋ฐฉํ–ฅ์„ ํ•™์Šต๋œ ์…ฐ์ด๋”ฉ ํ”„๋ ˆ์ž„(learned shading frames)์œผ๋กœ ๋ณ€ํ™˜ ํ•˜๋Š” ๊ฒƒ์œผ๋กœ, ์ด๋Š” ์ค‘๊ฐ„ ๊ทœ๋ชจ ํšจ๊ณผ(mesoscale effects)์˜ ์ •ํ™•ํ•œ ์žฌ๊ตฌ์„ฑ์„ ๋„์™€์ค๋‹ˆ๋‹ค.
๋‘ ๋ฒˆ์งธ ์‚ฌ์ „ ์ง€์‹์ธ ๋งˆ์ดํฌ๋กœํŒจ์‹ฏ ์ƒ˜ํ”Œ๋ง ๋ถ„ํฌ(microfacet sampling distribution)๋Š” ์‹ ๊ฒฝ ๋””์ฝ”๋”๊ฐ€ ์ค‘์š”๋„ ์ƒ˜ํ”Œ๋ง์„ ํšจ์œจ์ ์œผ๋กœ ์ˆ˜ํ–‰ํ•˜๋„๋ก ๋•์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ์ƒ์„ฑ๋œ ์™ธํ˜• ๋ชจ๋ธ์€ ์ด๋ฐฉ์„ฑ(anisotropic) ์ƒ˜ํ”Œ๋ง๊ณผ ์„ธ๋ถ€ ์ˆ˜์ค€(level-of-detail, LOD) ๋ Œ๋”๋ง์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์‹ฌ์ธต์ ์œผ๋กœ ๊ณ„์ธตํ™”๋œ ๋จธํ‹ฐ๋ฆฌ์–ผ ๊ทธ๋ž˜ํ”„(material graphs)๋ฅผ ์••์ถ•๋œ ํ†ตํ•ฉ ์‹ ๊ฒฝ ํ‘œํ˜„(unified neural representation)์œผ๋กœ ๋ฒ ์ดํ‚น(baking)ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‹œ์Šคํ…œ ์ˆ˜์ค€ ๊ตฌํ˜„

ํ•˜๋“œ์›จ์–ด ๊ฐ€์† ํ…์„œ ์—ฐ์‚ฐ์„ ๋ ˆ์ด ํŠธ๋ ˆ์ด์‹ฑ ์…ฐ์ด๋”์— ๋…ธ์ถœํ•˜์—ฌ ์‹ค์‹œ๊ฐ„ ํŒจ์Šค ํŠธ๋ ˆ์ด์„œ ๋‚ด์—์„œ ์‹ ๊ฒฝ ๋””์ฝ”๋”๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์‹ ๊ฒฝ ๋จธํ‹ฐ๋ฆฌ์–ผ ์ˆ˜๊ฐ€ ์ฆ๊ฐ€ํ•  ๋•Œ์˜ ํ™•์žฅ์„ฑ์„ ๋ถ„์„ํ•˜๊ณ , ์ผ๊ด€๋œ(coherent) ์‹คํ–‰๊ณผ ๋ถ„์‚ฐ๋œ(divergent) ์‹คํ–‰์— ์ตœ์ ํ™”๋œ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•ด ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค. ์ด ์‹ ๊ฒฝ ๋จธํ‹ฐ๋ฆฌ์–ผ ์…ฐ์ด๋”๋Š” ๋น„์‹ ๊ฒฝ ๊ณ„์ธตํ™” ๋จธํ‹ฐ๋ฆฌ์–ผ๋ณด๋‹ค 10๋ฐฐ ์ด์ƒ ๋น ๋ฅด๋ฉฐ, ๊ฒŒ์ž„๊ณผ ๋ผ์ด๋ธŒ ํ”„๋ฆฌ๋ทฐ ๊ฐ™์€ ์‹ค์‹œ๊ฐ„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์˜ํ™” ํ’ˆ์งˆ์˜ ์‹œ๊ฐ ํšจ๊ณผ๋ฅผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋ธ ๊ตฌ์กฐ

๋ชจ๋ธ์€ ์ธ์ฝ”๋”, ์‹ ๊ฒฝ ์ž ์žฌ ํ…์Šค์ฒ˜, ๋‘ ๊ฐœ์˜ ๋””์ฝ”๋”๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์ธ์ฝ”๋”๋Š” BRDF ํŒŒ๋ผ๋ฏธํ„ฐ(์•Œ๋ฒ ๋„, ๋…ธ๋ฉ€ ๋งต ๋“ฑ)๋ฅผ ์ž ์žฌ ๊ณต๊ฐ„์œผ๋กœ ๋งคํ•‘ํ•˜์—ฌ ์ „ํ†ต์ ์ธ ํ…์Šค์ฒ˜ ์„ธํŠธ๋ฅผ ๋‹จ์ผ ๋‹ค์ฑ„๋„ ์ž ์žฌ ํ…์Šค์ฒ˜๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๊ณ ํ•ด์ƒ๋„ ํ…์Šค์ฒ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋จธํ‹ฐ๋ฆฌ์–ผ ์ง€์›์— ํ•ต์‹ฌ์ ์ž…๋‹ˆ๋‹ค.
์ž ์žฌ ํ…์Šค์ฒ˜๋Š” ๋‘ ๊ฐœ์˜ ๋„คํŠธ์›Œํฌ๋กœ ๋””์ฝ”๋”ฉ๋ฉ๋‹ˆ๋‹ค. ํ‰๊ฐ€ ๋„คํŠธ์›Œํฌ๋Š” ์ฃผ์–ด์ง„ ๋ฐฉํ–ฅ ์Œ์— ๋Œ€ํ•œ BRDF ๊ฐ’์„ ์ถ”๋ก ํ•ฉ๋‹ˆ๋‹ค. ์ƒ˜ํ”Œ๋ง ๋„คํŠธ์›Œํฌ๋Š” ๋ฌด์ž‘์œ„ ์ˆซ์ž๋ฅผ ์ƒ˜ํ”Œ๋ง๋œ ๋ฐฉํ–ฅ์œผ๋กœ ๋งคํ•‘ํ•ฉ๋‹ˆ๋‹ค.
BRDF ๋””์ฝ”๋”๋Š” ์ž ์žฌ ์ฝ”๋“œ z(x)์—์„œ ๋‘ ๊ฐœ์˜ ์…ฐ์ด๋”ฉ ํ”„๋ ˆ์ž„์„ ์ถ”์ถœํ•ฉ๋‹ˆ๋‹ค. ์ž…์‚ฌ ๋ฐ ๋ฐ˜์‚ฌ ๋ฐฉํ–ฅ ฯ‰i,ฯ‰o\boldsymbol{\omega}_{\mathbf{i}}, \boldsymbol{\omega}_{\mathbf{o}}๋ฅผ ๊ฐ ํ”„๋ ˆ์ž„์œผ๋กœ ๋ณ€ํ™˜ํ•œ ํ›„, ๋ณ€ํ™˜๋œ ๋ฐฉํ–ฅ๊ณผ z(x)\mathbf{z}(\mathbf{x})๋ฅผ MLP์— ์ „๋‹ฌํ•˜์—ฌ BRDF ๊ฐ’์„ ์˜ˆ์ธกํ•ฉ๋‹ˆ๋‹ค. ์ค‘์š”๋„ ์ƒ˜ํ”Œ๋Ÿฌ๋Š” ๋ถ„์„์  2-lobe ๋ถ„ํฌ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์ถ”์ถœํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‚˜๊ฐ€๋Š” ๋ฐฉํ–ฅ ฯ‰o\boldsymbol{\omega}_{\mathbf{o}}๋ฅผ ์ƒ˜ํ”Œ๋งํ•˜๊ณ  PDF p(x,ฯ‰i,ฯ‰o)p(\mathbf{x}, \boldsymbol{\omega}_{\mathbf{i}}, \boldsymbol{\omega}_{\mathbf{o}})๋ฅผ ํ‰๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

ํ•™์Šต ๊ณผ์ •

์ธ์ฝ”๋”๋Š” ๋จธํ‹ฐ๋ฆฌ์–ผ ํŒŒ๋ผ๋ฏธํ„ฐ k(x)\mathbf{k}(\mathbf{x})(์•Œ๋ฒ ๋„, ๊ฑฐ์น ๊ธฐ, ๋…ธ๋ฉ€ ๋งต ๋“ฑ)๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ์ž ์žฌ ๋ฒกํ„ฐ z(x)\mathbf{z}(\mathbf{x})๋ฅผ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค. ๋””์ฝ”๋”๊ฐ€ ์ˆ˜๋ ดํ•˜๋ฉด ์ธ์ฝ”๋”๋ฅผ ์ œ๊ฑฐํ•˜๊ณ , ๋ชจ๋“  ํ…์…€์— ๋Œ€ํ•ด ์ธ์ฝ”๋”๋ฅผ ํ‰๊ฐ€ํ•˜์—ฌ ์ž ์žฌ ํ…์Šค์ฒ˜๋ฅผ ์ดˆ๊ธฐํ™”ํ•ฉ๋‹ˆ๋‹ค. ์ดํ›„ ๋””์ฝ”๋”๋ฅผ ํ†ตํ•œ ์—ญ์ „ํŒŒ๋กœ ์ž ์žฌ ํ…์Šค์ฒ˜๋ฅผ ์ง์ ‘ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.
ํ•™์Šต ๋ฐ์ดํ„ฐ๋Š” ๋Œ€์ƒ ๋จธํ‹ฐ๋ฆฌ์–ผ์˜ UV ๊ณต๊ฐ„์—์„œ ๊ท ์ผํ•˜๊ฒŒ ์ƒ˜ํ”Œ๋ง๋ฉ๋‹ˆ๋‹ค. ํ•„ํ„ฐ๋ง ํšจ๊ณผ๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ๊ณ„์ธต์  ํ…์Šค์ฒ˜์˜ ๊ฐ MIP ๋ ˆ๋ฒจ์— ํ•ด๋‹นํ•˜๋Š” ํ”„๋ฆฌํ•„ํ„ฐ๋ง๋œ ๋จธํ‹ฐ๋ฆฌ์–ผ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. BRDF ์˜ˆ์ธก์€ ๋กœ๊ทธ ๊ณต๊ฐ„์—์„œ L1L_1 ์†์‹ค๋กœ ์ตœ์ ํ™”๋˜๊ณ , ์ƒ˜ํ”Œ๋Ÿฌ์˜ PDF๋Š” ํ•™์Šต๋œ BRDF์— ๋Œ€ํ•œ KL ๋‹ค์ด๋ฒ„์ „์Šค๋กœ ์ตœ์ ํ™”๋ฉ๋‹ˆ๋‹ค.

๋Ÿฐํƒ€์ž„ ์‹œ์Šคํ…œ

์‹ ๊ฒฝ ๋จธํ‹ฐ๋ฆฌ์–ผ ์„ค๋ช…์„ ์ตœ์ ํ™”๋œ ์…ฐ์ด๋” ์ฝ”๋“œ๋กœ ์ปดํŒŒ์ผํ•˜๋ฉฐ, Slang ์…ฐ์ด๋”ฉ ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Vulkan, Direct3D 12, CUDA์™€ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ํƒ€๊ฒŸ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. GPU์˜ SIMT ์‹คํ–‰ ๋ชจ๋ธ์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์ด๋ฒ„์ „ํŠธ ๋ฐ ์ฝ”ํžˆ์–ด๋ŸฐํŠธ ์‹คํ–‰์— ์ตœ์ ํ™”๋œ ๋‘ ๊ฐ€์ง€ ์ฝ”๋“œ ๊ฒฝ๋กœ๋ฅผ ์ƒ์„ฑํ•˜๋ฉฐ, ์…ฐ์ด๋”๋Š” ๋™์ ์œผ๋กœ ์›Œํ”„๋‹น ๊ฒฝ๋กœ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
NVIDIA Tensor Cores์™€ ๊ฐ™์€ ํ•˜๋“œ์›จ์–ด ๊ฐ€์† ํ–‰๋ ฌ ๊ณฑ์…ˆ ๋ˆ„์  ์—ฐ์‚ฐ์„ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์ปค์Šคํ…€ ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ €์ˆ˜์ค€ ์ ‘๊ทผ์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ NVIDIA์˜ Shader Execution Reordering๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•˜๋Š” ๋ฉ”๊ฐ€์ปค๋„ ํŒจ์Šค ํŠธ๋ ˆ์ด์„œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์…ฐ์ด๋” ์‹คํ–‰ ํšจ์œจ์„ ๋†’์ด๊ณ  ๋ฉ”๋ชจ๋ฆฌ ์ ‘๊ทผ ๋น„์šฉ์„ ์ค„์ž…๋‹ˆ๋‹ค.

์‹คํ—˜ ๊ฒฐ๊ณผ

์ œ์•ˆ๋œ ์‹ ๊ฒฝ ๋จธํ‹ฐ๋ฆฌ์–ผ์€ ๋‹จ์ˆœํ•œ ๋ถ„์„์  ๋ชจ๋ธ๋ณด๋‹ค ๋ณต์žกํ•œ ๋‹ค์ค‘ ๋ ˆ์ด์–ด ๋จธํ‹ฐ๋ฆฌ์–ผ์˜ ์‹œ๊ฐ์  ๋ณต์žก์„ฑ์„ ํ›จ์”ฌ ๋” ์ถฉ์‹คํ•˜๊ฒŒ ์žฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ํŠนํžˆ ์‹œ์•ผ๊ฐ์— ๋”ฐ๋ผ ๋ณ€ํ™”ํ•˜๋Š” ์ƒ‰์ƒ ๊ฐ™์€ ๋ฏธ๋ฌ˜ํ•œ ํšจ๊ณผ๋ฅผ ์ž˜ ํฌ์ฐฉํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€์žฅ ํฐ ์‹ ๊ฒฝ๋ง ๊ตฌ์„ฑ(์€๋‹‰ ๋ ˆ์ด์–ด 3๊ฐœ, ๊ฐ 64๊ฐœ ๋‰ด๋Ÿฐ)์€ ์ฐธ์กฐ ๋จธํ‹ฐ๋ฆฌ์–ผ์„ ๋งค์šฐ ์ •ํ™•ํ•˜๊ฒŒ ์žฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.
์ „์ฒด ํ”„๋ ˆ์ž„ ๋ Œ๋”๋ง ์‹œ๊ฐ„์€ ์ฐธ์กฐ ๋จธํ‹ฐ๋ฆฌ์–ผ๋ณด๋‹ค ํ‰๊ท  1.64~4.14๋ฐฐ ๋น ๋ฆ…๋‹ˆ๋‹ค. ๋จธํ‹ฐ๋ฆฌ์–ผ ์…ฐ์ด๋”ฉ ์‹œ๊ฐ„์€ 2.30~9.06๋ฐฐ ๋น ๋ฆ…๋‹ˆ๋‹ค. ์‹ ๊ฒฝ ๋จธํ‹ฐ๋ฆฌ์–ผ ์ˆ˜๊ฐ€ ์ฆ๊ฐ€ํ•ด๋„ ๋ Œ๋”๋ง ์‹œ๊ฐ„์ด ๊ฑฐ์˜ ์ผ์ •ํ•˜๊ฒŒ ์œ ์ง€๋˜์–ด ๋†’์€ ํ™•์žฅ์„ฑ์„ ๋ณด์ž…๋‹ˆ๋‹ค.
๋ณต์žกํ•œ ๋จธํ‹ฐ๋ฆฌ์–ผ์˜ ๋ฒ ์ดํฌ๋œ ๋ฒ„์ „์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์„ฑ๋Šฅ ํ–ฅ์ƒ๊ณผ ๋ฉ”๋ชจ๋ฆฌ ์†Œ๋น„ ๊ฐ์†Œ๋Š” ๋ฌผ๋ก  ๋‹ค์–‘ํ•œ ์›Œํฌํ”Œ๋กœ์šฐ ๋ฐ ๋„๊ตฌ ๊ฐ„์˜ ๋ณต์žกํ•œ ๋จธํ‹ฐ๋ฆฌ์–ผ ๊ตํ™˜์„ ์šฉ์ดํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

Neural Appearance Models์˜ ๋ชฉํ‘œ

์žฌ์งˆ์˜ ์‹œ๊ฐ์  ํŠน์„ฑ(๊ฑฐ์น ๊ธฐ, ๋ฏธ์„ธ๊ตฌ์กฐ, ์ฝ”ํŒ…์ธต, ์‚ฐ๋ž€/ํก์ˆ˜, ๊ฐ„์„ญ ๋“ฑ)์„ ์กฐ๋ช…๊ณผ ์‹œ์  ๋ณ€ํ™”์— ๋”ฐ๋ผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์žฌํ˜„ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ๊ด€์ ์—์„œ ๊ด€๋ จ ๊ธฐ์ˆ ๋“ค์€ ๋Œ€์ฒด๋กœ ๋‹ค์Œ ์ŠคํŽ™ํŠธ๋Ÿผ ์œ„์— ์œ„์น˜ํ•ฉ๋‹ˆ๋‹ค.
โ€ข
๋ฌผ๋ฆฌ ๋ชจ์ˆ˜ ํ‘œํ˜„(Parametric BRDF) โ†” ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜ ์ž ์žฌํ‘œํ˜„(Latent / Neural)
โ€ข
์ •ํ™•๋„(physical fidelity) โ†” ์‹ค์‹œ๊ฐ„์„ฑ(real-time)
โ€ข
๋‹จ์ธต ์žฌ์งˆ(single-layer) โ†” ๋‹ค์ธต/๋ณตํ•ฉ ์žฌ์งˆ(layered / complex)
โ€ข
ํ…์Šค์ฒ˜/ํŒจ์น˜ ๊ณต๊ฐ„(texture/patch-space) โ†” ์ž…์‚ฌยท๋ฐ˜์‚ฌ ๊ฐ๋„ ๊ณต๊ฐ„(angular / 4D half-angle)
RT-NAM์˜ ์œ„์น˜
RT-NAM์€ ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜ ์ž ์žฌํ‘œํ˜„, ์‹ค์‹œ๊ฐ„์„ฑ, ๋ณตํ•ฉ ์™ธ๊ด€ ์ชฝ์œผ๋กœ ๊ฐ•ํ•˜๊ฒŒ ์น˜์šฐ์นœ ์ตœ์‹  ์ ‘๊ทผ๋ฒ•์ž…๋‹ˆ๋‹ค.

2. Baseline : Real-Time Neural Appearance Models (RT-NAM, 2024)

ํ•ต์‹ฌ ์•„์ด๋””์–ด
โ€ข
์žฌ์งˆ์„ ์ž ์žฌ ํ…์Šค์ฒ˜(latent textures) ์™€ ๊ฒฝ๋Ÿ‰ ๋””์ฝ”๋”(shading decoders) ๋กœ ๋ถ„ํ•ดํ•˜์—ฌ, GPU์—์„œ ์‹ค์‹œ๊ฐ„์œผ๋กœ ํ‰๊ฐ€ ๊ฐ€๋Šฅํ•œ ์‹ ๊ฒฝ ์…ฐ์ด๋”(neural shaders) ๋ฅผ ๊ตฌ์„ฑ.
โ€ข
๊ทธ๋ž˜ํ”ฝ์Šค ํŒŒ์ดํ”„๋ผ์ธ ์นœํ™”์ : LOD, ์ค‘์š”๋„ ์ƒ˜ํ”Œ๋ง, ๊ทธ๋ž˜ํ”„ ๊ธฐ๋ฐ˜ ๋จธํ‹ฐ๋ฆฌ์–ผ ๊ตฌ์„ฑ ๋“ฑ ์—”์ง„ ํ˜ธํ™˜์„ฑ์„ ์ค‘์‹œ.
โ€ข
๊ณ ๊ธ‰ ์™ธ๊ด€ ํšจ๊ณผ(์ฝ”ํŒ…ยท๋ฏธ์„ธ๊ตฌ์กฐยท๊ด‘ํƒ ์ŠคํŠธ๋ฆฌํฌ ๋“ฑ)๋ฅผ ์‹ ๊ฒฝ ๋ถ„ํฌ๊ฐ€ ๋Œ€์ฒด/๋ณด์™„ํ•˜๋ฉฐ, ๋น„์‹ ๊ฒฝ(๊ธฐ์กด) ์…ฐ์ด๋” ๋Œ€๋น„ ํ’ˆ์งˆ/๋ฉ”๋ชจ๋ฆฌ/์†๋„ ์ ˆ์ถฉ์„ ๊ฐœ์„ .
Real-time Neural Appearance Models์˜ ์ฃผ์š” ์žฅ์ 
์˜ํ™” ํ’ˆ์งˆ์˜ ์‹œ๊ฐ์  ์‚ฌ์‹ค์„ฑ ๊ตฌํ˜„
๋›ฐ์–ด๋‚œ ๋Ÿฐํƒ€์ž„ ์„ฑ๋Šฅ ๋ฐ ํšจ์œจ์„ฑ
ํ™•์žฅ์„ฑ ๋ฐ ๋‹ค์ค‘ ์žฌ์งˆ ์ฒ˜๋ฆฌ
ํšจ๊ณผ์ ์ธ ์ค‘์š”๋„ ์ƒ˜ํ”Œ๋ง ๋ฐ Level-of-Detail ๋ Œ๋”๋ง
๊ทธ๋ž˜ํ”ฝ์Šค Prior๋ฅผ ํ†ตํ•œ ๋ชจ๋ธ ํ‘œํ˜„๋ ฅ ๊ฐ•ํ™”
์‹ค์šฉ์ ์ธ ํ›ˆ๋ จ ์ ˆ์ฐจ
๋‹ค์–‘ํ•œ ํ™œ์šฉ ๊ฐ€๋Šฅ์„ฑ
์ข…ํ•ฉ์ ์œผ๋กœ ์ด ๋…ผ๋ฌธ์€ ์‹ค์‹œ๊ฐ„ ๋ Œ๋”๋ง ๋ถ„์•ผ์—์„œ ์˜ํ™” ๊ฐ™์€ ์žฌ์งˆ์„ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ์ค‘์š”ํ•œ ๊ธฐ์ˆ ์  ์ง„๋ณด๋ฅผ ์ด๋Œ์–ด๋ƒˆ์Šต๋‹ˆ๋‹ค.
๋ฌธ์ œ์  ๋ฐ ๋‹จ์ 
์—๋„ˆ์ง€ ๋ณด์กด ๋ฐ ์ƒํ˜ธ์„ฑ ๋ถˆ์™„์ „
๋ณ€์œ„ ๋งคํ•‘ ๋ฏธ์ง€์› ๋ฐ ์„ฑ๋Šฅ ํ•œ๊ณ„
ํ•„ํ„ฐ๋ง๋œ MIP ๋ ˆ๋ฒจ์˜ ์ •ํ™•๋„ ์ €ํ•˜
ํ›ˆ๋ จ ์•ˆ์ •์„ฑ ๋ฐ ์‹œ๊ฐ„
Fresnel ํšจ๊ณผ ์ฒ˜๋ฆฌ์˜ ํ•œ๊ณ„
๊ตด์ ˆ ๋ฏธ์ง€์›

3. Compare Related Research

3.1 Deep Appearance Prefiltering

"Deep Appearance Prefiltering" ๋…ผ๋ฌธ์€ ๋ณต์žกํ•œ 3D ํ™˜๊ฒฝ์˜ ์™ธํ˜•์„ ๋‹ค์ค‘ ์Šค์ผ€์ผ ๋ ˆ๋ฒจ ์˜ค๋ธŒ ๋””ํ…Œ์ผ(LoD)๋กœ ์‚ฌ์ „ ํ•„ํ„ฐ๋งํ•˜๋Š” ์ตœ์ดˆ์˜ ๋”ฅ ๋Ÿฌ๋‹ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๋ฌผ๋ฆฌ ๊ธฐ๋ฐ˜ ๋ Œ๋”๋ง์€ ๋ณต์žกํ•œ ์žฅ๋ฉด์—์„œ ๊ณ„์‚ฐ ๋น„์šฉ์ด ๋งค์šฐ ๋†’์•„ ์ฆ๊ฐ•/๊ฐ€์ƒ ํ˜„์‹ค(AR/VR), ๊ฒŒ์ž„, ์˜ํ™” ์‚ฐ์—…์—์„œ ์‹ค์‹œ๊ฐ„ ์‚ฌ์šฉ์ด ์–ด๋ ค์› ์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด ์‚ฌ์ „ ํ•„ํ„ฐ๋ง LOD ๋ฐฉ๋ฒ•๋ก ์€ ์„ธ ๊ฐ€์ง€ ์ฃผ์š” ํ•œ๊ณ„๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค: ์ง€์›ํ•˜๋Š” ์žฌ๋ฃŒ์˜ ์ข…๋ฅ˜๊ฐ€ ์ œํ•œ์ ์ด๊ณ , ๊ทผ์‚ฌ ๋ชจ๋ธ์— ์˜์กดํ•˜๋ฉฐ, ๋ฏธ์‹œ์  ๊ธฐํ•˜ํ•™(microgeometry)๊ณผ ๊ฑฐ์‹œ์  ๊ธฐํ•˜ํ•™(macrogeometry)์˜ ์ด์งˆ์ ์ธ ํ‘œํ˜„ ์‚ฌ์ด์—์„œ ์„ ํƒํ•ด์•ผ ํ•ด ๋งค๋„๋Ÿฌ์šด ์™ธํ˜• ์ „ํ™˜์ด ์–ด๋ ค์› ์Šต๋‹ˆ๋‹ค.
๋ณธ ์—ฐ๊ตฌ๋Š” ์ด๋Ÿฌํ•œ ํ•œ๊ณ„๋ฅผ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด SVO(Sparse Voxel Octree)๋ฅผ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋‹ค์ค‘ ์Šค์ผ€์ผ ๊ณ„์ธต์  ๋ณต์…€(voxel) ํ‘œํ˜„์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ์ดˆ๊ธฐ ์˜คํ”„๋ผ์ธ ๋ฐ์ดํ„ฐ ์ƒ์„ฑ ๋‹จ๊ณ„์—์„œ๋Š” ๋ ˆ์ด ํŠธ๋ ˆ์ด์„œ(ray tracer)๋กœ ๊ฐ ๋ณต์…€ ๋‚ด์˜ ๊ด‘ ์ „์†ก(light transport)์„ ์บก์ฒ˜ํ•ฉ๋‹ˆ๋‹ค. ์บก์ฒ˜๋œ ์ •๋ณด๋Š” appearance phase function ฯ\rho, directional coverage mask ฮฑ\alpha, albedo ฮณ\gamma๋กœ ์ธ์ฝ”๋”ฉ๋œ ๊ฒฝ๋Ÿ‰ latent representation์œผ๋กœ ๋ณ€ํ™˜๋ฉ๋‹ˆ๋‹ค. ๋Ÿฐํƒ€์ž„์—๋Š” ์›๋ณธ ๊ธฐํ•˜ํ•™, ์žฌ๋ฃŒ, ํ…์Šค์ฒ˜ ์—†์ด ๋ฏธ๋ฆฌ ํ•™์Šต๋œ ์‹ ๊ฒฝ๋ง ์ถ”๋ก (inference)๋งŒ์œผ๋กœ ์ด ์ž ์žฌ ํ‘œํ˜„์„ ๋””์ฝ”๋”ฉํ•˜์—ฌ ์žฅ๋ฉด์„ ๋ Œ๋”๋งํ•ฉ๋‹ˆ๋‹ค..
ํ•ต์‹ฌ ๋ฐฉ๋ฒ•๋ก :
1.
๊ณต๊ฐ„ ํ‘œํ˜„ (Spatial Representation): ์žฅ๋ฉด์€ ์›”๋“œ ๊ณต๊ฐ„(x,y,z)(x, y, z)์—์„œ ๊ท ์ผํ•˜๊ฒŒ ์ด์‚ฐํ™”๋˜๋ฉฐ, ๋‹ค์ค‘ ์Šค์ผ€์ผ ํฌ์†Œ ๋ณต์…€ ์˜ฅํŠธ๋ฆฌ(SVO)๋กœ ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค. ์Šค์ผ€์ผ์ด ๋†’์•„์งˆ์ˆ˜๋ก ๊ฐ ์ฐจ์›์˜ ํ•ด์ƒ๋„๊ฐ€ ๋‘ ๋ฐฐ์”ฉ ์ฆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ๋ Œ๋”๋ง ์‹œ์—๋Š” ํ”ฝ์…€ ํ•„ํ„ฐ๋ง ์ปค๋„(pixel filtering kernel)์˜ bandlimiting frequency๋ฅผ ๋„˜์ง€ ์•Š๋„๋ก LoD ์Šค์ผ€์ผ์ด ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค.
2.
๋ฐ์ดํ„ฐ ์ƒ์„ฑ (Data Generation): ๊ฐ LoD ์Šค์ผ€์ผ์˜ ๋ชจ๋“  ๋ณต์…€์— ๋Œ€ํ•ด phase function, albedo, coverage mask๋ฅผ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.
โ€ข
Phase Function (ฯ)(\rho): ๋ณต์…€์„ ํ†ตํ•ด ๋น›์ด ์‚ฐ๋ž€๋˜๋Š” ๋ฐฉ์‹์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๋“ค์–ด์˜ค๋Š” ๋ฐฉํ–ฅ ฯ‰i\omega_i์™€ ๋‚˜๊ฐ€๋Š” ๋ฐฉํ–ฅ ฯ‰o\omega_o์˜ ์Œ์„ ๊ตฌ๋ฉด ์ขŒํ‘œ๊ณ„๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜ํ™”ํ•œ ๊ณ ํ•ด์ƒ๋„ 4D uniform grid๋กœ ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค. ๋ ˆ์ด ํŠธ๋ ˆ์ด์„œ๋กœ ํŠน์ • ๋ทฐ ๋ฐฉํ–ฅ์—์„œ ์žฅ๋ฉด์˜ ํˆฌ์˜๋œ ๋‹จ๋ฉด(projected cross-section)์„ ์ƒ˜ํ”Œ๋งํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๋ณต์…€์„ ํ†ต๊ณผํ•˜์—ฌ ํ™˜๊ฒฝ ๋งต์— ๋„๋‹ฌํ•˜๋Š” ์ƒ˜ํ”Œ์˜ ๋ˆ„์  radiance๋ฅผ ๊ธฐ๋กํ•˜์—ฌ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.
โ€ข
Albedo (ฮณ)(\gamma): ํŠน์ • ๋‚˜๊ฐ€๋Š” ๋ฐฉํ–ฅ์— ๋Œ€ํ•œ phase function์˜ ํ‰๊ท  RGB ๊ธฐ๋ณธ ์ƒ‰์ƒ(diffuse color)์ž…๋‹ˆ๋‹ค. 2D ๊ตฌ๋ฉด ์ขŒํ‘œ๊ณ„๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜ํ™”๋ฉ๋‹ˆ๋‹ค. ๋„คํŠธ์›Œํฌ ์ตœ์ ํ™”๋ฅผ ๋•๊ณ  ์ €์žฅ ๋น„์šฉ์„ ์ค„์ด๊ธฐ ์œ„ํ•ด phase function๊ณผ ๋ถ„๋ฆฌ๋ฉ๋‹ˆ๋‹ค.
โ€ข
Coverage Mask (ฮฑ)(\alpha): ๊ณ ์ • ํ•ด์ƒ๋„(์˜ˆ: 16ร—16)์˜ 2D ๊ณต๊ฐ„ ๋งˆ์Šคํฌ์ž…๋‹ˆ๋‹ค. ๋น”์„ ๋”ฐ๋ผ ์ด์ „ ๋ณต์…€๊ณผ์˜ ์ƒ๊ด€ ๊ด€๊ณ„๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ณต์…€์˜ ๊ธฐ์—ฌ๋„๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ฐ ์ƒ˜ํ”Œ์ด ๋ณต์…€ ๋‚ด์˜ ๊ธฐํ•˜ํ•™๊ณผ ๊ต์ฐจํ–ˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๊ธฐ๋กํ•˜์—ฌ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.
3.
์‚ฌ์ „ ํ•„ํ„ฐ๋ง๋œ ๊ด‘ ์ „์†ก (Prefiltered Light Transport): ๋ณผ๋ฅจ ๋ Œ๋”๋ง ๋ฐฉ์ •์‹(Volume Rendering Equation, RTE)์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ํ”ฝ์…€์˜ spatio-angular footprint์— ๊ฑธ์ณ radiance๋ฅผ ํ†ตํ•ฉํ•˜๋Š” pixel filter HIH_I๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ตœ์ข… flux LIL_I๋ฅผ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.
LI=โˆซFHI(x,ฯ‰)L(x,ฯ‰)โ€‰dฯ‰โ€‰dx=E+S+BL_I = \int_F H_I(\mathbf{x}, \omega)L(\mathbf{x}, \omega) \,d\omega \,d\mathbf{x} = E + S + B
์—ฌ๊ธฐ์„œ EE๋Š” emission, SS๋Š” in-scattering, BB๋Š” boundary ํ•ญ์ž…๋‹ˆ๋‹ค.
โ€ข
In-scattering Term (S)(S): ๋ณผ๋ฅจ ๋‚ด์—์„œ ์‚ฐ๋ž€๋œ ๋น›์˜ ๊ธฐ์—ฌ๋„๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. far-field assumption(๋ณต์…€์ด ์ถฉ๋ถ„ํžˆ ๋ฉ€๋ฆฌ ๋–จ์–ด์ ธ ์žˆ์–ด ๋น” ๋‚ด์˜ ๋ ˆ์ด๊ฐ€ ๊ฑฐ์˜ ํ‰ํ–‰ํ•˜๋‹ค๊ณ  ๊ฐ€์ •)๊ณผ transmittance separation ๊ธฐ๋ฒ• ฯ„(y,x)=ฯ„(y,vo)ฯ„(vo,x)\tau(\mathbf{y}, \mathbf{x}) = \tau(\mathbf{y}, \mathbf{v}_o)\tau(\mathbf{v}_o, \mathbf{x})์„ ์ ์šฉํ•˜์—ฌ ๊ทผ์‚ฌํ™”ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ TT๋Š” prefiltered transmittance function, FF๋Š” prefiltered phase function์ž…๋‹ˆ๋‹ค.
Sโ‰ˆโˆ‘vโˆˆVxyโˆซ4ฯ€L(v,ฯ‰^)T(vo,x)F(v,ฯ‰,ฯ‰^)โ€‰dฯ‰^S \approx \sum_{\mathbf{v} \in V_{\mathbf{xy}}} \int_{4\pi} L(\mathbf{v}, \hat{\omega}) T(\mathbf{v}_o, \mathbf{x}) F(\mathbf{v}, \omega, \hat{\omega}) \,d\hat{\omega}
โ€ข
Transmittance (T)(T): exponential transmittance ๋ชจ๋ธ์€ watertight surface๋‚˜ aggregate์— ์ ํ•ฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ deep shadow maps์™€ ์œ ์‚ฌํ•˜๊ฒŒ 2D spatial coverage mask ฮฑ\alpha๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋น”์„ ๋”ฐ๋ผ ๋‹ค์–‘ํ•œ transmittance mode๋ฅผ ์ˆ˜์น˜์ ์œผ๋กœ ๋ชจ๋ธ๋งํ•ฉ๋‹ˆ๋‹ค. ๋Ÿฐํƒ€์ž„์—๋Š” ๋น”์˜ tracked coverage ฮ›\Lambda๋ฅผ ๊ณ„์‚ฐํ•˜์—ฌ ๋ณต์…€์˜ ๊ธฐ์—ฌ๋„๋ฅผ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค.
T(y,x)=โˆซFHI(x,ฯ‰)ฯ„(vo,x)โ€‰dฯ‰โ€‰dxโ‰ˆ1Nโˆ‘j=0Nโˆ’1ฮ›j(y,x)T(\mathbf{y}, \mathbf{x}) = \int_F H_I(\mathbf{x}, \omega)\tau(\mathbf{v}_o, \mathbf{x}) \,d\omega \,d\mathbf{x} \approx \frac{1}{N} \sum_{j=0}^{N-1} \Lambda_j(\mathbf{y}, \mathbf{x})
1.
์‹ ๊ฒฝ๋ง ์••์ถ• ๋ฐ ๋””์ฝ”๋”ฉ (Neural Compression and Decoding):
โ€ข
์ธ์ฝ”๋” (Encoders): 4D phase function, 2D coverage mask, 2D directional albedo ํ…Œ์ด๋ธ”์„ compact latent representation์œผ๋กœ ์••์ถ•ํ•˜์—ฌ ํšจ์œจ์ ์œผ๋กœ ์ €์žฅํ•˜๊ณ  ์ ‘๊ทผํ•ฉ๋‹ˆ๋‹ค. CNN์œผ๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ, 2D slice(๊ณ ์ •๋œ ๋‚˜๊ฐ€๋Š” ๋ฐฉํ–ฅ์— ๋Œ€ํ•œ ๋ชจ๋“  ๋“ค์–ด์˜ค๋Š” ๋ฐฉํ–ฅ์˜ ์ฒ˜๋ฆฌ๋Ÿ‰)๋ฅผ ๊ฐœ๋ณ„์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•œ ํ›„ ๊ฒฐ๊ณผ latent vector๋ฅผ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.
โ€ข
๋””์ฝ”๋” (Decoders): ๋Ÿฐํƒ€์ž„์— latent vector์™€ ๋ฐฉํ–ฅ ์ฟผ๋ฆฌ(๋‚˜๊ฐ€๋Š”/๋“ค์–ด์˜ค๋Š” ๋ฐฉํ–ฅ)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์›๋ณธ ๋ฐ์ดํ„ฐ์˜ ํŠน์ • ์š”์†Œ๋ฅผ ์žฌ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค. fully connected layer๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ, ์›๋ณธ ๋ฐ์ดํ„ฐ์˜ ์ž‘์€ ๋ถ€๋ถ„(์˜ˆ: ๋‹จ์ผ ๊ฐ’)๋งŒ ์ถœ๋ ฅํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์„ ์ตœ์†Œํ™”ํ•ฉ๋‹ˆ๋‹ค. phase network๋Š” ๋‹จ์ผ ์Šค์นผ๋ผ ์ฒ˜๋ฆฌ๋Ÿ‰ ๊ฐ’์„, phase-slice network๋Š” ํŠน์ • ๋ทฐ ๋ฐฉํ–ฅ์— ๋Œ€ํ•œ ๋ชจ๋“  ๋“ค์–ด์˜ค๋Š” ๋ฐฉํ–ฅ์˜ ์ฒ˜๋ฆฌ๋Ÿ‰ 2D ์ด๋ฏธ์ง€๋ฅผ, coverage network๋Š” 2D coverage mask๋ฅผ, albedo network๋Š” RGB ๊ธฐ๋ณธ ์ƒ‰์ƒ์„ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.
โ€ข
์ž…๋ ฅ ๋งค๊ฐœ๋ณ€์ˆ˜ํ™”: coordinate frame์„ ์ „์—ญ ์›”๋“œ ๊ณต๊ฐ„ ๋Œ€์‹  ๋ทฐ ๋ฐฉํ–ฅ์˜ local space๋กœ ์žฌ๋งค๊ฐœ๋ณ€์ˆ˜ํ™”ํ•˜๊ณ , positional encoding์„ ์ ์šฉํ•˜์—ฌ ๋„คํŠธ์›Œํฌ ํ•™์Šต์„ ๋•์Šต๋‹ˆ๋‹ค. HDR phase data์˜ ๊ฒฝ์šฐ range compressor T(x)=logโก(1+ฮผx)logโก(1+ฮผ)T(x) = \frac{\log(1+\mu x)}{\log(1+\mu)}๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋„คํŠธ์›Œํฌ ์ž…๋ ฅ์˜ ๊ฐ’ ๋ฒ”์œ„๋ฅผ ์••์ถ•ํ•จ์œผ๋กœ์จ ํ•™์Šต ์•ˆ์ •์„ฑ์„ ๋†’์ž…๋‹ˆ๋‹ค.
2.
ํ•™์Šต ๋ฐ ๋Ÿฐํƒ€์ž„ (Training and Runtime):
โ€ข
ํ•™์Šต: ์ธ์ฝ”๋”์™€ ๋””์ฝ”๋”๋Š” ๋™์‹œ์— end-to-end๋กœ ํ•™์Šต๋ฉ๋‹ˆ๋‹ค. stratified sampling์œผ๋กœ ๊ตฌ ์ „์ฒด๋ฅผ ๊ณ ๋ฅด๊ฒŒ ์ปค๋ฒ„ํ•˜๊ณ , continuous sampling์œผ๋กœ ๋„คํŠธ์›Œํฌ๊ฐ€ ๊ณ ์ •๋œ ๋ทฐ์— overfit๋˜์ง€ ์•Š๊ณ  ๋น„์„ ํ˜• ๋ณด๊ฐ„์„ ์ž˜ ์ˆ˜ํ–‰ํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ์†์‹ค ํ•จ์ˆ˜๋Š” coverage, phase, albedo, phase slice์— ๋Œ€ํ•œ relative MSE (ฯ^โˆ’ฯ)2(ฯ^+ฯต)2\frac{(\hat{\rho} - \rho)^2}{(\hat{\rho} + \epsilon)^2} ๋ฐ โ„“1\ell_1/โ„“2\ell_2 norm์˜ ์กฐํ•ฉ์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.
โ€ข
์‚ฌ์ „ ๋ Œ๋”๋ง: ํ•™์Šต ํ›„ ๊ฐ ๋ณต์…€์˜ latent vector๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์ €์žฅํ•˜๊ณ , ์ธ์ฝ”๋”๋Š” ํ๊ธฐ๋ฉ๋‹ˆ๋‹ค. ๋””์ฝ”๋”์˜ ํ•™์Šต๋œ ๊ฐ€์ค‘์น˜๋Š” freeze๋˜์–ด ๋ Œ๋”๋Ÿฌ ๋‚ด์—์„œ ์ถ”๋ก ์šฉ์œผ๋กœ export๋ฉ๋‹ˆ๋‹ค.
โ€ข
๋Ÿฐํƒ€์ž„: ๋น” ํŠธ๋ ˆ์ด์„œ๊ฐ€ SVO๋ฅผ ์ˆœํšŒํ•˜๋ฉฐ ํ”ฝ์…€ footprint ๋‚ด์˜ ๋ณต์…€๋“ค์„ ์ฐพ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ๋ณต์…€์˜ latent vector์™€ ํ˜„์žฌ ๋ Œ๋”์˜ ๋ฐฉํ–ฅ ์ •๋ณด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋””์ฝ”๋”๋ฅผ ํ‰๊ฐ€ํ•ด phase, albedo, coverage๋ฅผ ์–ป์Šต๋‹ˆ๋‹ค. ์ด๋“ค์„ ์กฐํ•ฉํ•˜์—ฌ ์ตœ์ข… ์ด๋ฏธ์ง€๋ฅผ ํ•ฉ์„ฑํ•˜๋ฉฐ, ์›๋ณธ ๊ธฐํ•˜ํ•™ ๋ฐ ์žฌ๋ฃŒ๋Š” ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๊ฒฐ๊ณผ ๋ฐ ์ด์ :
Deep Appearance Prefiltering(DAP)๋Š” ๊ธฐ์กด SGGX, EGGX, MMSS, HybridLoD ๊ฐ™์€ ์ตœ์‹  ๋ฐฉ๋ฒ•๋ณด๋‹ค ๋” ๋†’์€ ์ถฉ์‹ค๋„๋กœ ๋ณต์žกํ•œ ์™ธํ˜•์„ ๋ณด์กดํ•ฉ๋‹ˆ๋‹ค. ํŠนํžˆ Disney BRDF ๊ฐ™์€ ๋ณต์žกํ•œ ์žฌ๋ฃŒ์˜ anisotropic specularity, glint, local occlusion์„ ์ •ํ™•ํ•˜๊ฒŒ ์บก์ฒ˜ํ•˜๋ฉฐ, ์ด๋Š” ๊ทผ์‚ฌ ๋ชจ๋ธ๋กœ๋Š” ๋‹ฌ์„ฑํ•˜๊ธฐ ์–ด๋ ค์šด ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.
๋ณธ ๋ฐฉ๋ฒ•์€ per-pixel memory footprint๋ฅผ ํฌ๊ฒŒ ์ค„์ž…๋‹ˆ๋‹ค. City ์žฅ๋ฉด์—์„œ scale 0(๊ฐ€์žฅ ๊ฑฐ์นœ ํ•ด์ƒ๋„)์˜ ๊ฒฝ์šฐ ๋ ˆ์ด ํŠธ๋ ˆ์ด์‹ฑ ๋Œ€๋น„ ์•ฝ 280,000๋ฐฐ, scale 8(๊ฐ€์žฅ ๋ฏธ์„ธํ•œ ํ•ด์ƒ๋„, 256ร—256 ์ด๋ฏธ์ง€)์˜ ๊ฒฝ์šฐ ์•ฝ 28๋ฐฐ์˜ ๋ฉ”๋ชจ๋ฆฌ ์ ˆ๊ฐ ํšจ๊ณผ๋ฅผ ๋ณด์˜€์Šต๋‹ˆ๋‹ค. ๋ Œ๋”๋ง ์‹œ๊ฐ„์€ scale 5๊นŒ์ง€๋Š” ๋ ˆ์ด ํŠธ๋ ˆ์ด์‹ฑ๋ณด๋‹ค ๋น ๋ฅด์ง€๋งŒ, ๊ทธ ์ด์ƒ์˜ ๋ฏธ์„ธํ•œ ์Šค์ผ€์ผ์—์„œ๋Š” ๋„คํŠธ์›Œํฌ ์ถ”๋ก  ๋น„์šฉ ์ฆ๊ฐ€๋กœ ์ธํ•ด ๋ ˆ์ด ํŠธ๋ ˆ์ด์‹ฑ์ด ๋” ๋นจ๋ผ์ง€๋Š” ๋ณ€๊ณก์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
๋˜ํ•œ ์ด ํ”„๋ ˆ์ž„์›Œํฌ๋Š” temporal coherence๋ฅผ ์œ ์ง€ํ•˜์—ฌ ๋ถ€๋“œ๋Ÿฌ์šด ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๋ Œ๋”๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•™์Šต๋œ ์‹ ๊ฒฝ๋ง์€ ์›๋ณธ ๋ฐ์ดํ„ฐ์˜ ๋…ธ์ด์ฆˆ๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  view/light direction์„ ๋ณด๊ฐ„ํ•˜๋Š” ๋Šฅ๋ ฅ๋„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. diffuse albedo ๊ฐ™์€ ํŠน์ • ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ latent vector๋ฅผ ํ†ตํ•ด ์ˆ˜์ •ํ•˜์—ฌ ์žฅ๋ฉด์˜ ์™ธํ˜•์„ ์†์‰ฝ๊ฒŒ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์—ฐ์„ฑ๋„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
ํ•œ๊ณ„ ๋ฐ ํ–ฅํ›„ ์—ฐ๊ตฌ:
โ€ข
๋†’์€ ์‚ฌ์ „ ๊ณ„์‚ฐ ๋น„์šฉ: ๊ฐ ์žฅ๋ฉด๋งˆ๋‹ค ๋ณต์…€ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์ „ ๊ณ„์‚ฐํ•˜๊ณ  ๋„คํŠธ์›Œํฌ๋ฅผ ํ•™์Šตํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
โ€ข
๋ณต์…€ ๊ฒฝ๊ณ„ ์•„ํ‹ฐํŒฉํŠธ: City ์žฅ๋ฉด์˜ ์ง€๋ถ• ์˜ˆ์‹œ์ฒ˜๋Ÿผ ๋ณต์…€์ด ๊ฐ€๋ ค์ง„ ๊ธฐํ•˜ํ•™๊ณผ ๋‹ค๋ฅธ ๊ธฐ๋ณธ ์ƒ‰์ƒ์„ ๊ฐ€์ง„ ๊ฐ€๋ ค์ง€์ง€ ์•Š์€ ๊ธฐํ•˜ํ•™์„ ๊ฑธ์น  ๋•Œ albedo๊ฐ€ ๋ถ€์ •ํ™•ํ•˜๊ฒŒ ํ‰๊ท ํ™”๋˜์–ด ์•„ํ‹ฐํŒฉํŠธ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. RGBA ๋งˆ์Šคํฌ๋กœ albedo๋ฅผ ๊ณต๊ฐ„์ ์œผ๋กœ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ์•ˆ์ด ์ œ์‹œ๋ฉ๋‹ˆ๋‹ค.
โ€ข
๋‚ ์นด๋กœ์šด ํ•˜์ด๋ผ์ดํŠธ์˜ ๊ณผ๋„ํ•œ ๋ธ”๋Ÿฌ๋ง: ๋งค์šฐ ์ž‘์€ solid angle์—์„œ๋งŒ ๋ฐœ์ƒํ•˜๋Š” ๋‚ ์นด๋กœ์šด delta highlight๋Š” ์ˆ˜๋ฐฑ๋งŒ ๊ฐœ์˜ ๋ณต์…€์„ ํ•™์Šตํ•  ๋•Œ ๋„คํŠธ์›Œํฌ๊ฐ€ ์ •ํ™•ํ•˜๊ฒŒ ์บก์ฒ˜ํ•˜๊ธฐ ์–ด๋ ค์›Œ ์•ฝ๊ฐ„ ํ๋ ค์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
๋‹จ์ผ ๋ฐ”์šด์Šค ์ดˆ์ : ํ˜„์žฌ ๊ตฌํ˜„์€ ์ฃผ๋กœ primary beams์— ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค. global illumination ๊ฐ™์€ multi-bounce ํšจ๊ณผ์— ๋Œ€ํ•œ ํšจ์œจ์ ์ธ ํ™•์žฅ์€ ํ–ฅํ›„ ์—ฐ๊ตฌ ๊ณผ์ œ์ž…๋‹ˆ๋‹ค.
โ€ข
importance sampling ๋ถ€์žฌ: ๋น” ํŠธ๋ ˆ์ด์„œ์—์„œ multiple importance sampling(MIS) ๊ฐ™์€ ํšจ์œจ์ ์ธ ์ƒ˜ํ”Œ๋ง ์ „๋žต์„ ๊ตฌํ˜„ํ•˜๋ ค๋ฉด phase function์˜ importance sampling ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
๊ฒฐ๋ก ์ ์œผ๋กœ, ๋ณธ ๋…ผ๋ฌธ์€ ๋ณต์žกํ•œ 3D ํ™˜๊ฒฝ์˜ ์™ธํ˜• ์‚ฌ์ „ ํ•„ํ„ฐ๋ง์„ ์œ„ํ•œ ์ตœ์ดˆ์˜ ๋”ฅ ๋Ÿฌ๋‹ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๋ฐฉ๋ฒ•๋ก ์˜ ํ•œ๊ณ„๋ฅผ ๋›ฐ์–ด๋„˜์–ด ๋ณต์…€ํ™”๋œ ์žฅ๋ฉด์— ๋Œ€ํ•œ ํฌ๊ด„์ ์ธ ์™ธํ˜• ํ‘œํ˜„์„ ์ œ๊ณตํ•˜๋ฉฐ, ๋ Œ๋”๋ง ์‹œ ์›๋ณธ ๊ธฐํ•˜ํ•™์ด๋‚˜ ์žฌ๋ฃŒ ์˜์กด์„ฑ ์—†์ด ์ƒ๋‹นํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ ˆ๊ฐ๊ณผ ์™ธํ˜• ๋ณด์กด์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๋ณต์žกํ•œ ์žฅ๋ฉด์˜ ํšจ์œจ์ ์ธ ๋ Œ๋”๋ง ๋ถ„์•ผ์— ์ƒˆ๋กœ์šด ์—ฐ๊ตฌ ๋ฐฉํ–ฅ์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค.

3.2 NeuMIP: Multi-Resolution Neural Materials (2022)

๋ณธ ๋…ผ๋ฌธ์€ ๋‹ค์–‘ํ•œ ์Šค์ผ€์ผ์—์„œ ๋ณต์žกํ•œ ์žฌ๋ฃŒ์˜ ์™ธ๊ด€์„ ํ‘œํ˜„ํ•˜๊ณ  ๋ Œ๋”๋งํ•˜๊ธฐ ์œ„ํ•œ ์ƒˆ๋กœ์šด ์‹ ๊ฒฝ๋ง ๊ธฐ๋ฐ˜ ๊ธฐ๋ฒ•์ธ NeuMIP(Multi-Resolution Neural Materials)๋ฅผ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด์˜ ์ „์ฒ˜๋ฆฌ(prefiltering) ๊ธฐ๋ฒ•์ธ ๋ฐ‰๋งคํ•‘(mipmapping)์€ ํ™•์‚ฐ ์ƒ‰์ƒ(diffuse color) ๊ฐ™์€ ๋‹จ์ˆœํ•œ ์žฌ๋ฃŒ ํŠน์„ฑ์—๋Š” ํšจ๊ณผ์ ์ด์ง€๋งŒ, ๋…ธ๋ฉ€(normals), ์ž๊ธฐ ๊ทธ๋ฆผ์ž(self-shadowing), ์„ฌ์œ (fibers) ๋˜๋Š” ๋” ๋ณต์žกํ•œ ๋ฏธ์„ธ ๊ตฌ์กฐ ๋ฐ ๋ฐ˜์‚ฌ(reflectances)์—๋Š” ์ผ๋ฐ˜ํ™”๋˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค. NeuMIP๋Š” ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ „ํ†ต์ ์ธ ๋ฐ‰๋งต ํ”ผ๋ผ๋ฏธ๋“œ๋ฅผ '์‹ ๊ฒฝ๋ง ํ…์Šค์ฒ˜ ํ”ผ๋ผ๋ฏธ๋“œ(neural texture pyramid)'๋กœ ์ผ๋ฐ˜ํ™”ํ•˜๊ณ , ์ด๋ฅผ ์™„์ „ ์—ฐ๊ฒฐ ์‹ ๊ฒฝ๋ง(fully connected network)๊ณผ ๊ฒฐํ•ฉํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ '์‹ ๊ฒฝ๋ง ์˜คํ”„์…‹(neural offsets)'์ด๋ผ๋Š” ์ƒˆ๋กœ์šด ๊ธฐ๋ฒ•์„ ๋„์ž…ํ•˜์—ฌ ๋ณต์žกํ•œ ์‹œ์ฐจ ํšจ๊ณผ(parallax effects)๋ฅผ ๊ฐ€์ง„ ์žฌ๋ฃŒ๋ฅผ ํ…Œ์…€๋ ˆ์ด์…˜(tessellation) ์—†์ด ๋ Œ๋”๋งํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ์ด ์‹ ๊ฒฝ๋ง ์˜คํ”„์…‹์€ ๋ช…์‹œ์ ์ธ ๋†’์ด ํ•„๋“œ(heightfield)์˜ ์ง€๋„ ์—†์ด(unsupervised) ํ›ˆ๋ จ๋ฉ๋‹ˆ๋‹ค.
NeuMIP ์‹œ์Šคํ…œ ๋‚ด์˜ ์‹ ๊ฒฝ๋ง ์žฌ๋ฃŒ๋Š” ์œ„์น˜(position), ์ž…์‚ฌ ๋ฐฉํ–ฅ(incoming direction), ์ถœ์‚ฌ ๋ฐฉํ–ฅ(outgoing direction), ๊ทธ๋ฆฌ๊ณ  ํ•„ํ„ฐ ์ปค๋„ ํฌ๊ธฐ(filter kernel size)๋ฅผ ํฌํ•จํ•˜๋Š” 7์ฐจ์› ์ฟผ๋ฆฌ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์žฌ๋ฃŒ ํ‘œํ˜„์€ ํ‘œ์ค€ ๋ฐ‰๋งคํ•‘๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ์ ์€ ์ €์žฅ ๊ณต๊ฐ„์„ ์š”๊ตฌํ•˜๋ฉฐ(๋” ๋งŽ์€ ํ…์Šค์ฒ˜ ์ฑ„๋„์„ ์‚ฌ์šฉํ•˜์ง€๋งŒ), ์ผ๋ฐ˜์ ์ธ ๋ชฌํ…Œ์นด๋ฅผ๋กœ ๊ฒฝ๋กœ ์ถ”์ (Monte Carlo path tracing) ์‹œ์Šคํ…œ์— ์‰ฝ๊ฒŒ ํ†ตํ•ฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํ•ต์‹ฌ ๋ฐฉ๋ฒ•๋ก :
๋ณธ ๋…ผ๋ฌธ์€ ๋‹ค์ค‘ ํ•ด์ƒ๋„ ์–‘๋ฐฉํ–ฅ ํ…์Šค์ฒ˜ ํ•จ์ˆ˜(multi-resolution Bidirectional Texture Function, MBTF)๋ฅผ ์ •์˜ํ•˜๊ณ  ์ด๋ฅผ ์‹ ๊ฒฝ๋ง ์•„ํ‚คํ…์ฒ˜๋กœ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.
3.1 ๋‹ค์ค‘ ํ•ด์ƒ๋„ BTF ์ •์˜
์ „ํ†ต์ ์ธ BTF๋Š” ๊ณ ์ •๋œ ์Šค์ผ€์ผ์—์„œ ์žฌ๋ฃŒ๋ฅผ ๋ชจ๋ธ๋งํ•ฉ๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด NeuMIP๋Š” ์—ฐ์†์ ์ธ ๊ฐ€์šฐ์‹œ์•ˆ ์ฟผ๋ฆฌ ์ปค๋„ ํฌ๊ธฐ ฯƒ๋ฅผ ์ง€์›ํ•˜๋Š” MBTF๋ฅผ ํ†ตํ•ด ์ž„์˜์˜ ์„ธ๋ถ€ ์ˆ˜์ค€(level of detail)์—์„œ ์žฌ๋ฃŒ์˜ ์™ธ๊ด€์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. MBTF๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜๋ฉ๋‹ˆ๋‹ค:
M(u,ฯƒ,ฯ‰i,ฯ‰o)=โˆซR2G(u,ฯƒ;x)B(x,ฯ‰i,ฯ‰o)dxM (\mathbf{u}, \sigma, \boldsymbol{\omega_i}, \boldsymbol{\omega_o}) = \int_{\mathbb{R}^2} G (\mathbf{u}, \sigma; \mathbf{x}) B(\mathbf{x}, \boldsymbol{\omega_i}, \boldsymbol{\omega_o}) d\mathbf{x}
์—ฌ๊ธฐ์„œ G(u, ฯƒ; x)๋Š” ํ‰๊ท  u์™€ ํ‘œ์ค€ ํŽธ์ฐจ ฯƒ๋ฅผ ๊ฐ€์ง„ ์ •๊ทœํ™”๋œ 2D ๊ฐ€์šฐ์‹œ์•ˆ ํ•จ์ˆ˜์ด๋ฉฐ, B(u, ฯ‰แตข, ฯ‰โ‚’)๋Š” ๊ฐ€์žฅ ๋ฏธ์„ธํ•œ ์žฌ๋ฃŒ ์ˆ˜์ค€์—์„œ์˜ ์ „ํ†ต์ ์ธ BTF์ž…๋‹ˆ๋‹ค. ์ด๋Š” ํŠน์ • ์œ„์น˜ u, ์ปค๋„ ๋ฐ˜๊ฒฝ ฯƒ, ์ž…์‚ฌ ๋ฐฉํ–ฅ ฯ‰แตข, ์ถœ์‚ฌ ๋ฐฉํ–ฅ ฯ‰โ‚’์— ๋Œ€ํ•ด ์žฌ๋ฃŒ ํ‘œ๋ฉด์—์„œ ๋ฐ˜์‚ฌ๋œ ๋ณต์‚ฌํœ˜๋„(radiance)๋ฅผ ๋ฏธ๋ฆฌ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.
3.2 ์‹ ๊ฒฝ๋ง MBTF ๊ธฐ๋ณธ ๋ชจ๋ธ (Neural MBTF baseline)
7์ฐจ์› MBTF๋ฅผ ์ง์ ‘ ์ €์žฅํ•˜๋Š” ๊ฒƒ์€ ๋น„ํ˜„์‹ค์ ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ €์ž๋“ค์€ ์ด๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๋ชจ๋ธ๋งํ•˜๋Š” ์‹ ๊ฒฝ๋ง ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์•„ํ‚คํ…์ฒ˜๋Š” ๋‘ ๊ฐ€์ง€ ํ•ต์‹ฌ ์š”์†Œ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค: ๋ณต์žกํ•œ ๋‹ค์ค‘ ์Šค์ผ€์ผ ๊ณต๊ฐ„ ๊ฐ€๋ณ€ ์žฌ๋ฃŒ ์™ธ๊ด€์„ ์ธ์ฝ”๋”ฉํ•˜๋Š” '์‹ ๊ฒฝ๋ง ํ…์Šค์ฒ˜ ํ”ผ๋ผ๋ฏธ๋“œ P'์™€ ํ”ผ๋ผ๋ฏธ๋“œ์—์„œ ๋ฐฉํ–ฅ์„ฑ ๋ฐ˜์‚ฌ์œจ์„ ๊ณ„์‚ฐํ•˜๋Š” '์žฌ๋ฃŒ ๋””์ฝ”๋” ๋„คํŠธ์›Œํฌ F'์ž…๋‹ˆ๋‹ค.
M(u,ฯƒ,ฯ‰i,ฯ‰o)=F(P(u,ฯƒ),ฯ‰i,ฯ‰o)M (\mathbf{u}, \sigma, \boldsymbol{\omega_i}, \boldsymbol{\omega_o}) = F (P (\mathbf{u}, \sigma), \boldsymbol{\omega_i}, \boldsymbol{\omega_o})
์‹ ๊ฒฝ๋ง ํ…์Šค์ฒ˜ ํ”ผ๋ผ๋ฏธ๋“œ (Neural texture pyramid): P = {Tโ‚›}๋Š” ์ผ๋ จ์˜ ์‹ ๊ฒฝ๋ง ํ…์Šค์ฒ˜ Tโ‚›๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ๊ฐ Tโ‚›๋Š” 2หข ร— 2หข ร— c ํฌ๊ธฐ๋ฅผ ๊ฐ€์ง€๋ฉฐ, ๊ฐ ํ…์…€(texel)์€ c ์ฑ„๋„ ์ž ์žฌ ์‹ ๊ฒฝ๋ง ํŠน์ง•(latent neural feature)์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. s๋Š” ์ด์‚ฐ์ ์ธ ์„ธ๋ถ€ ์ˆ˜์ค€์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ, 0 โ‰ค s โ‰ค k์ž…๋‹ˆ๋‹ค. ์ด ํ”ผ๋ผ๋ฏธ๋“œ ๊ตฌ์กฐ๋Š” ์—ฌ๋Ÿฌ ์Šค์ผ€์ผ์—์„œ ๋ณต์žกํ•œ ์žฌ๋ฃŒ ์™ธ๊ด€์„ ์ธ์ฝ”๋”ฉํ•ฉ๋‹ˆ๋‹ค. ๊ณ ์ „์ ์ธ ๋ฐ‰๋งคํ•‘๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ, ์—ฐ์†์ ์ธ ์ˆ˜์ค€ ฯƒ์™€ ์œ„์น˜ u์—์„œ ์‹ ๊ฒฝ๋ง ํŠน์ง• P(u, ฯƒ)๋ฅผ ์–ป๊ธฐ ์œ„ํ•ด trilinear interpolation์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ๊ณต๊ฐ„ ์ฐจ์›์—์„œ๋Š” bilinear interpolation์„, ์Šค์ผ€์ผ ์ฐจ์›(๋กœ๊ทธ ์Šค์ผ€์ผ)์—์„œ๋Š” linear interpolation์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
v=P(u,ฯƒ)=w1TโŒŠlโŒ‹(u)+w2TโŒˆlโŒ‰(u)\mathbf{v} = P (\mathbf{u}, \sigma) = w_1 T_{\lfloor l \rfloor} (\mathbf{u}) + w_2 T_{\lceil l \rceil} (\mathbf{u})
์—ฌ๊ธฐ์„œl=log2(ฯƒ),w1=(โŒˆlโŒ‰โˆ’l),w2=(lโˆ’โŒŠlโŒ‹) l = logโ‚‚(ฯƒ), wโ‚ = (โŒˆlโŒ‰ - l), wโ‚‚ = (l - โŒŠlโŒ‹)์ž…๋‹ˆ๋‹ค.
์žฌ๋ฃŒ ๋””์ฝ”๋” (Material decoder): ๋””์ฝ”๋” F๋Š” ์‹ ๊ฒฝ๋ง ํ”ผ๋ผ๋ฏธ๋“œ์—์„œ ์ฟผ๋ฆฌ๋œ ์‹ ๊ฒฝ๋ง ํŠน์ง•๊ณผ ์ž…์‚ฌ ๋ฐ ์ถœ์‚ฌ ๋ฐฉํ–ฅ์„ ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์•„ ์ตœ์ข… RGB ๋ฐ˜์‚ฌ์œจ ๊ฐ’์„ ๊ณ„์‚ฐํ•˜๋Š” ๋‹ค์ธต ํผ์…‰ํŠธ๋ก (MLP) ๋„คํŠธ์›Œํฌ์ž…๋‹ˆ๋‹ค. ์ด ๋„คํŠธ์›Œํฌ๋Š” 4๊ฐœ์˜ ๋ ˆ์ด์–ด๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ, ๊ฐ ์ค‘๊ฐ„ ๋ ˆ์ด์–ด๋Š” 25๊ฐœ์˜ ์ถœ๋ ฅ ์ฑ„๋„์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค. ReLU ํ™œ์„ฑํ™” ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ, ๋งˆ์ง€๋ง‰ ๋ ˆ์ด์–ด์—์„œ๋„ ReLU๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ถœ๋ ฅ์ด ์Œ์ˆ˜๊ฐ€ ๋˜์ง€ ์•Š๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
3.3 ์‹ ๊ฒฝ๋ง ์˜คํ”„์…‹์„ ํฌํ•จํ•œ ์‹ ๊ฒฝ๋ง MBTF (Neural MBTF with Neural Offset)
๊ธฐ๋ณธ ๋ชจ๋ธ์€ ๋งŽ์€ ์žฌ๋ฃŒ๋ฅผ ๋ชจ๋ธ๋งํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ์‹œ์ฐจ ๋ฐ ํ์ƒ‰(occlusion) ํšจ๊ณผ๊ฐ€ ๋‘๋“œ๋Ÿฌ์ง„ ๋น„ํ‰๋ฉด ์žฌ๋ฃŒ(non-flat materials)๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐ๋Š” ํ•œ๊ณ„๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ํ…์Šค์ฒ˜ ์ฟผ๋ฆฌ ์œ„์น˜์˜ ์ขŒํ‘œ ์˜คํ”„์…‹์„ ์˜ˆ์ธกํ•˜๋Š” '์‹ ๊ฒฝ๋ง ์˜คํ”„์…‹ ๋ชจ๋“ˆ O'๋ฅผ ๋„์ž…ํ•ฉ๋‹ˆ๋‹ค.
unew=u+O(u,ฯ‰o)\mathbf{u}_{new} = \mathbf{u} + O (\mathbf{u}, \boldsymbol{\omega_o})
์‹ ๊ฒฝ๋ง ์˜คํ”„์…‹(Neural offset): 2D ์˜คํ”„์…‹์„ ์ง์ ‘ ํšŒ๊ท€ํ•˜๋Š” ๋Œ€์‹ , ๋ ˆ์ด ๊นŠ์ด(ray depth) r์„ ๋‚˜ํƒ€๋‚ด๋Š” 1D ์Šค์นผ๋ผ ๊ฐ’์„ ํšŒ๊ท€ํ•˜๋„๋ก ๋„คํŠธ์›Œํฌ๋ฅผ ํ›ˆ๋ จํ•ฉ๋‹ˆ๋‹ค. ์ด r ๊ฐ’์€ ์‹œ์•ผ ๋ฐฉํ–ฅ ฯ‰โ‚’๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ์ตœ์ข… 2D ์˜คํ”„์…‹์œผ๋กœ ๋ณ€ํ™˜๋ฉ๋‹ˆ๋‹ค. ์‹ ๊ฒฝ๋ง ์˜คํ”„์…‹ ๋ชจ๋“ˆ์€ '์‹ ๊ฒฝ๋ง ์˜คํ”„์…‹ ํ…์Šค์ฒ˜ T_off', T_off์—์„œ ๋ ˆ์ด ๊นŠ์ด r์„ ํšŒ๊ท€ํ•˜๋Š” 'MLP F_off', ๊ทธ๋ฆฌ๊ณ  ์˜คํ”„์…‹์„ ์ถœ๋ ฅํ•˜๋Š” '๊ณ ์ • ํ•จ์ˆ˜(fixed function) H'๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.
r=Foff(ฯˆ,ฯ‰o)=Foff(Toff(u),ฯ‰o)r = F_{off} (\boldsymbol{\psi}, \boldsymbol{\omega_o}) = F_{off} (T_{off} (\mathbf{u}), \boldsymbol{\omega_o})
์—ฌ๊ธฐ์„œ ฯˆ = T_off(u)๋Š” ์ดˆ๊ธฐ ์œ„์น˜ u์—์„œ T_off์— ๋Œ€ํ•œ ์ž ์žฌ ํŠน์ง• ๋ฒกํ„ฐ ๋ฃฉ์—…์ž…๋‹ˆ๋‹ค. F_off๋Š” 4๊ฐœ์˜ ๋ ˆ์ด์–ด๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ ReLU ํ™œ์„ฑํ™” ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ถ”์ •๋œ ๋ ˆ์ด ๊นŠ์ด r์ด ์ฃผ์–ด์ง€๋ฉด ์˜คํ”„์…‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ณ„์‚ฐ๋ฉ๋‹ˆ๋‹ค:
H(r,ฯ‰o)=r1ฯ‰z(ฯ‰x,ฯ‰y)H (r, \boldsymbol{\omega_o}) = r \frac{1}{\boldsymbol{\omega_z}} (\boldsymbol{\omega_x}, \boldsymbol{\omega_y})
์—ฌ๊ธฐ์„œ ฯ‰โ‚“, ฯ‰แตง, ฯ‰แตค๋Š” ฯ‰โ‚’์˜ ๊ตฌ์„ฑ ์š”์†Œ์ž…๋‹ˆ๋‹ค. ์ตœ์ข… ์ฟผ๋ฆฌ ์œ„์น˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:
unew=u+H(r,ฯ‰o)=u+r1ฯ‰z(ฯ‰x,ฯ‰y)\mathbf{u}_{new} = \mathbf{u} + H (r, \boldsymbol{\omega_o}) = \mathbf{u} + r \frac{1}{\boldsymbol{\omega_z}} (\boldsymbol{\omega_x}, \boldsymbol{\omega_y})
์ด ์ƒˆ๋กœ์šด ๋ฃฉ์—… ์œ„์น˜ u_new๋Š” ์‹ ๊ฒฝ๋ง ํ…์Šค์ฒ˜ ํ”ผ๋ผ๋ฏธ๋“œ์—์„œ ์ž ์žฌ ๋ฒกํ„ฐ๋ฅผ ๋ฃฉ์—…ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
์ „์ฒด ์‹ ๊ฒฝ๋ง MBTF ํ‘œํ˜„์€ ์‹ ๊ฒฝ๋ง ์˜คํ”„์…‹ ๋ชจ๋“ˆ์„ ๊ธฐ๋ณธ ์‹ ๊ฒฝ๋ง MBTF ๋„คํŠธ์›Œํฌ ์•ž์— ์—ฐ๊ฒฐํ•˜์—ฌ ๋ชจ๋ธ๋ง๋ฉ๋‹ˆ๋‹ค:
M(u,ฯƒ,ฯ‰i,ฯ‰o)=F(P(u+O(u,ฯ‰o),ฯƒ),ฯ‰i,ฯ‰o)M (\mathbf{u}, \sigma, \boldsymbol{\omega_i}, \boldsymbol{\omega_o}) = F (P (\mathbf{u} + O (\mathbf{u}, \boldsymbol{\omega_o}), \sigma), \boldsymbol{\omega_i}, \boldsymbol{\omega_o})
์ด ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ์™„์ „ํžˆ ๋ฏธ๋ถ„ ๊ฐ€๋Šฅ(differentiable)ํ•˜์—ฌ ์‹ ๊ฒฝ๋ง ์˜คํ”„์…‹, ๋‹ค์ค‘ ์Šค์ผ€์ผ ํ”ผ๋ผ๋ฏธ๋“œ ๋ฐ ๋””์ฝ”๋”๋ฅผ ๋™์‹œ์— ์ตœ์ ํ™”ํ•˜๋Š” ์—”๋“œ-ํˆฌ-์—”๋“œ ํ›ˆ๋ จ(end-to-end training)์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์‹ ๊ฒฝ๋ง ์˜คํ”„์…‹ ๋ชจ๋“ˆ์€ ground truth ์˜คํ”„์…‹ ์—†์ด ๋น„์ง€๋„ ํ•™์Šต ๋ฐฉ์‹์œผ๋กœ ํ›ˆ๋ จ๋ฉ๋‹ˆ๋‹ค.
๋ฐ์ดํ„ฐ ์ƒ์„ฑ ๋ฐ ํ›ˆ๋ จ:
ํ•ฉ์„ฑ MBTF ๋ฐ์ดํ„ฐ๋Š” ๋งˆ์ดํฌ๋กœ ์ง€์˜ค๋ฉ”ํŠธ๋ฆฌ(microgeometry)๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ  CPU ๊ธฐ๋ฐ˜ ํ‘œ์ค€ ๊ฒฝ๋กœ ์ถ”์ ๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•„์š”ํ•œ ์ฟผ๋ฆฌ๋ฅผ ๋ Œ๋”๋งํ•จ์œผ๋กœ์จ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ํ›ˆ๋ จ์€ ๋น› ๋ฐฉํ–ฅ, ์นด๋ฉ”๋ผ ๋ฐฉํ–ฅ, UV ์œ„์น˜ ๋ฐ ์ปค๋„ ๋ฐ˜๊ฒฝ์œผ๋กœ ๊ตฌ์„ฑ๋œ 7D ์ฟผ๋ฆฌ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์•„ ๋„คํŠธ์›Œํฌ๊ฐ€ RGB ์ƒ‰์ƒ์„ ์ƒ์„ฑํ•˜๊ณ  ์—ญ์ „ํŒŒ(back-propagation)๋ฅผ ํ†ตํ•ด ๋„คํŠธ์›Œํฌ ๊ฐ€์ค‘์น˜์™€ ์‹ ๊ฒฝ๋ง ํ…์Šค์ฒ˜๋ฅผ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ํ›ˆ๋ จ ์ค‘์—๋Š” ์‹ ๊ฒฝ๋ง ํ…์Šค์ฒ˜์— ๊ฐ€์šฐ์‹œ์•ˆ ๋ธ”๋Ÿฌ(Gaussian blur)๋ฅผ ์ ์šฉํ•˜๊ณ , ํ›ˆ๋ จ์ด ์ง„ํ–‰๋จ์— ๋”ฐ๋ผ ํ‘œ์ค€ ํŽธ์ฐจ๋ฅผ ์ง€์ˆ˜์ ์œผ๋กœ ๊ฐ์†Œ์‹œ์ผœ ๋…ธ์ด์ฆˆ๋ฅผ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค.
๋ Œ๋”๋ง:
NeuMIP ์žฌ๋ฃŒ๋Š” Mitsuba ๋ Œ๋”๋ง ์—”์ง„์— ํ†ตํ•ฉ๋˜์–ด ์ผ๋ฐ˜ ์˜ค๋ธŒ์ ํŠธ์™€ ์‹ ๊ฒฝ๋ง ์žฌ๋ฃŒ ์˜ค๋ธŒ์ ํŠธ ๊ฐ„์— ๋น›์ด ์›ํ™œํ•˜๊ฒŒ ์ƒํ˜ธ์ž‘์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹ ๊ฒฝ๋ง ์žฌ๋ฃŒ๊ฐ€ ํžˆํŠธ๋˜๋ฉด ์‹ ๊ฒฝ๋ง ๋ชจ๋“ˆ์„ ํ‰๊ฐ€ํ•˜๊ณ , ๊ฐ„์ ‘ ์กฐ๋ช…(indirect illumination)์„ ์œ„ํ•ด ์ถœ์‚ฌ ๋ฐฉํ–ฅ์„ ์ƒ˜ํ”Œ๋งํ•ฉ๋‹ˆ๋‹ค.
NeuMIP๋Š” ๋‹ค์–‘ํ•œ ๋ณต์žกํ•œ ์žฌ๋ฃŒ๋ฅผ ์—ฌ๋Ÿฌ ์Šค์ผ€์ผ์—์„œ ์ •ํ™•ํ•˜๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ์‹ ๊ฒฝ๋ง ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์‹ ๊ฒฝ๋ง ์˜คํ”„์…‹ ๊ธฐ๋ฒ•์„ ํ†ตํ•ด ํ…Œ์…€๋ ˆ์ด์…˜ ์—†์ด ์‹œ์ฐจ ํšจ๊ณผ๋ฅผ ํฌํ•จํ•œ ๋ณต์žกํ•œ ๊ธฐํ•˜ํ•™์  ์™ธ๊ด€์„ ๋ Œ๋”๋งํ•˜๋ฉฐ, ์ธ์ฝ”๋”-๋ฆฌ์Šค ์•„ํ‚คํ…์ฒ˜(encoder-less architecture) ๋•๋ถ„์— ํ…์…€๋‹น 200~400๊ฐœ์˜ ๋ฌด์ž‘์œ„ ์ฟผ๋ฆฌ๋งŒ์œผ๋กœ ํ›ˆ๋ จ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๋ณ€์œ„(displacement), ์‹œ์ฐจ, ์ž๊ธฐ ๊ทธ๋ฆผ์ž ๋ฐ ๊ธฐํƒ€ ํšจ๊ณผ๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ํ‘œํ˜„ํ•˜๋Š” ๊ณ ํ’ˆ์งˆ ์™ธ๊ด€์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

NeuMIP์˜ ์žฅ์ 

โ€ข
๋‹ค์–‘ํ•œ ์žฌ๋ฃŒ ํ‘œํ˜„: normals, self-shadowing, fibers, parallax ๋“ฑ ๋ณต์žกํ•œ ๊ธฐํ•˜ํ•™์  ํŠน์ง•๊ณผ ๋น› ๋ฐ˜์‚ฌ ํšจ๊ณผ๋ฅผ multi-resolution์œผ๋กœ ์ •ํ™•ํ•˜๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
3D ๋ชจ๋ธ๋ง ๋ถˆํ•„์š”: neural offset ๋•๋ถ„์— ๋ณต์žกํ•œ 3D tessellation(์„ธ๋ถ„ํ™”)์ด๋‚˜ heightfield ์—†์ด๋„ parallax effect ๊ฐ™์€ ๊นŠ์ด๊ฐ์„ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์–ด ์ €์žฅ ๊ณต๊ฐ„๊ณผ ๋ Œ๋”๋ง ๋น„์šฉ์„ ํฌ๊ฒŒ ์ค„์ž…๋‹ˆ๋‹ค.
โ€ข
ํšจ์œจ์ ์ธ ํ•™์Šต: encoder-less architecture ๋•๋ถ„์— ์ƒˆ๋กœ์šด ์žฌ๋ฃŒ๋ฅผ ํ•™์Šต์‹œํ‚ฌ ๋•Œ texel๋‹น 200~400๊ฐœ์˜ query(์งˆ์˜)๋งŒ์œผ๋กœ ํ›ˆ๋ จ์ด ๊ฐ€๋Šฅํ•˜๋ฉฐ, ์ด๋Š” ๊ธฐ์กด ๋ฐฉ์‹๋ณด๋‹ค ํ›จ์”ฌ ํšจ์œจ์ ์ž…๋‹ˆ๋‹ค.
โ€ข
์ž‘์€ ๋ชจ๋ธ ํฌ๊ธฐ: Rainer et al. [2020] ๊ฐ™์€ ์ด์ „ ์—ฐ๊ตฌ์— ๋น„ํ•ด network weights(์‹ ๊ฒฝ๋ง ๊ฐ€์ค‘์น˜)๊ฐ€ 10๋ฐฐ ์ด์ƒ ์ ๊ณ , texture channels(ํ…์Šค์ฒ˜ ์ฑ„๋„)๋„ ์ ˆ๋ฐ˜ ์ดํ•˜๋กœ ์ ์–ด ๋” ๊ฐ€๋ณ๊ณ  ๋น ๋ฆ…๋‹ˆ๋‹ค.
โ€ข
๊ธฐ์กด ๋ Œ๋”๋ง ์‹œ์Šคํ…œ๊ณผ ํ˜ธํ™˜: Monte Carlo path tracing๊ณผ ๊ฐ™์€ ํ‘œ์ค€ ๋ Œ๋”๋ง ์—”์ง„์— ์‰ฝ๊ฒŒ ํ†ตํ•ฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ œํ•œ ์‚ฌํ•ญ ๋ฐ ๋ฏธ๋ž˜ ์—ฐ๊ตฌ ๋ฐฉํ–ฅ

โ€ข
Importance Sampling ๊ฐœ์„ : ๋น›์„ ํšจ์œจ์ ์œผ๋กœ ์ƒ˜ํ”Œ๋งํ•˜๋Š” importance sampling ๋ฐฉ์‹์ด ์•„์ง ๋‹จ์ˆœํ•˜์—ฌ ๋” specular(๋ฐ˜์‚ฌ์„ฑ์ด ๊ฐ•ํ•œ) ์žฌ๋ฃŒ์—๋Š” ๊ฐœ์„ ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. texel๋ณ„๋กœ parametric pdf model์„ ํ•™์Šต์‹œํ‚ค๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
Glinty ์žฌ๋ฃŒ: ๋ฐ˜์ง์ด๋Š”(glinty) ์žฌ๋ฃŒ๋Š” blurring(ํ๋ฆผ) ์—†์ด ์ฒ˜๋ฆฌํ•˜๊ธฐ ์–ด๋ ค์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. decoder์— random vector(๋ฌด์ž‘์œ„ ๋ฒกํ„ฐ)๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ stochastic detail(ํ™•๋ฅ ์  ๋””ํ…Œ์ผ)์„ ์ƒ์„ฑํ•˜๊ณ  GAN loss๋กœ ํ›ˆ๋ จํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์—ฐ๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
๋ฐ˜ํˆฌ๋ช… ์žฌ๋ฃŒ ์ง€์›: reflectance ์™ธ์— alpha transparency๋ฅผ ์˜ˆ์ธกํ•˜์—ฌ ๋ฐ˜ํˆฌ๋ช… ์žฌ๋ฃŒ๋ฅผ ์ง€์›ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

3.3 Neural Layered BRDFs

๋ณธ ๋…ผ๋ฌธ์€ ๋ ˆ์ด์–ด๋“œ BRDF(Bidirectional Reflectance Distribution Functions)๋ฅผ ์‚ฌ์‹ค์ ์œผ๋กœ ๋ Œ๋”๋งํ•˜๋Š” ๋ฐ ์žˆ์–ด ๊ธฐ์กด Monte Carlo ์‹œ๋ฎฌ๋ ˆ์ด์…˜์˜ ๋†’์€ ๊ณ„์‚ฐ ๋น„์šฉ๊ณผ ๋…ธ์ด์ฆˆ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๋‰ด๋Ÿด ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ์ด ํ”„๋ ˆ์ž„์›Œํฌ๋Š” BRDF๋ฅผ ์ž ์žฌ ๊ณต๊ฐ„(latent space)์˜ ์••์ถ•๋œ ์ฝ”๋“œ๋กœ ํ‘œํ˜„ํ•˜๊ณ , ์ด ์ž ์žฌ ๋ฒกํ„ฐ๋“ค ๊ฐ„์˜ ๋ ˆ์ด์–ด๋ง ์—ฐ์‚ฐ์„ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.
ํ•ต์‹ฌ ๋ฐฉ๋ฒ•๋ก ์€ ๋‘ ๊ฐ€์ง€ ์ฃผ์š” ๋‰ด๋Ÿด ๋„คํŠธ์›Œํฌ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค:
Neural BRDF Representation (์‹ ๊ฒฝ๋ง BRDF ํ‘œํ˜„):
โ€ข
์ž„์˜์˜ BRDF f(ฯ‰i,ฯ‰o)f(\omega_i, \omega_o)๋ฅผ ์ปดํŒฉํŠธํ•œ ์ž ์žฌ ๋ฒกํ„ฐ VfV_f๋กœ ์••์ถ•ํ•˜๋Š” ๊ฒƒ์ด ๋ชฉํ‘œ์ž…๋‹ˆ๋‹ค. ฯ‰i\omega_i์™€ ฯ‰o\omega_o๋Š” ๊ฐ๊ฐ ์ž…์‚ฌ ๋ฐฉํ–ฅ๊ณผ ์ถœ์‚ฌ ๋ฐฉํ–ฅ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
โ€ข
์ด๋ฅผ ์œ„ํ•ด ๋””์ฝ”๋” ์—ญํ• ์„ ํ•˜๋Š” ๋ฒ”์šฉ ํ‰๊ฐ€ ๋„คํŠธ์›Œํฌ๋ฅผ ์„ค๊ณ„ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋„คํŠธ์›Œํฌ๋Š” ์ž ์žฌ ๋ฒกํ„ฐ VfV_f์™€ ๋ฐฉํ–ฅ ์Œ (ฯ‰i,ฯ‰o)(\omega_i, \omega_o)์„ ์ž…๋ ฅ๋ฐ›์•„ ํ•ด๋‹น BRDF ๊ฐ’์„ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค(๊ทธ๋ฆผ 2 ์ฐธ์กฐ).
โ€ข
๋„คํŠธ์›Œํฌ ํ›ˆ๋ จ์€ ํ•™์Šต ๋ฐ์ดํ„ฐ์…‹์˜ ๋ชจ๋“  BRDF ๊ฐ’์„ ์‚ฌ์šฉํ•˜๋ฉฐ, ๋‘ ๊ฐ€์ง€ ์—ญ์ „ํŒŒ ๊ฒฝ๋กœ๋ฅผ ํ†ตํ•ด ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค. ์ฒซ์งธ, ํ˜„์žฌ ์ž…๋ ฅ BRDF์˜ ์ž ์žฌ ๋ฒกํ„ฐ๋ฅผ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ๋‘˜์งธ, ํ‰๊ฐ€ ๋„คํŠธ์›Œํฌ์˜ ๊ฐ€์ค‘์น˜๋ฅผ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋„คํŠธ์›Œํฌ๋Š” ๋‹ค์–‘ํ•œ BRDF๋ฅผ ์„œ๋กœ ๋‹ค๋ฅธ ์ž ์žฌ ๋ฒกํ„ฐ๋กœ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.
โ€ข
์ƒˆ๋กœ์šด BRDF๋ฅผ ์ž ์žฌ ๊ณต๊ฐ„์œผ๋กœ ํˆฌ์˜ํ•  ๋•Œ๋Š” ํ•™์Šต๋œ ํ‰๊ฐ€ ๋„คํŠธ์›Œํฌ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๊ณ ์ •ํ•˜๊ณ  ์ž ์žฌ ๋ฒกํ„ฐ๋งŒ ์ตœ์ ํ™”ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ณผ์ •์€ ์•ฝ 10~45์ดˆ๊ฐ€ ์†Œ์š”๋ฉ๋‹ˆ๋‹ค.
โ€ข
์ด ๋ชจ๋ธ์€ ์ฃผ๋กœ ๋“ฑ๋ฐฉ์„ฑ BRDF๋ฅผ ๊ฐ€์ •ํ•˜๋ฉฐ, ์ŠคํŽ™ํ˜๋Ÿฌํ•œ BRDF๋ฅผ ํฌํ•จํ•œ ๋‹ค์–‘ํ•œ BRDF๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
Neural BRDF Layering (์‹ ๊ฒฝ๋ง BRDF ๋ ˆ์ด์–ด๋ง):
โ€ข
๊ธฐ์กด Monte Carlo ๊ธฐ๋ฐ˜ ๋ ˆ์ด์–ด๋ง ๋ฐฉ์‹์€ ์ •ํ™•ํ•˜์ง€๋งŒ ๋น„์šฉ์ด ๋งŽ์ด ๋“ค๊ณ  ๋ถ„์‚ฐ(variance)์ด ๋†’์Šต๋‹ˆ๋‹ค. ๋ณธ ๋…ผ๋ฌธ์€ ์ด๋Ÿฌํ•œ ๋ณต์žกํ•œ ๊ด‘์› ์ƒํ˜ธ์ž‘์šฉ์„ ์ž ์žฌ ๊ณต๊ฐ„์—์„œ ํ•™์Šตํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.
โ€ข
๋ ˆ์ด์–ด๋ง ์—ฐ์‚ฐ์€ ๋‘ ๊ฐœ์˜ ์ธต(top layer, bottom layer)๊ณผ ๊ทธ ์‚ฌ์ด ๊ท ์ผํ•œ ๋งค์งˆ(homogeneous participating media)์„ ๊ณ ๋ คํ•ฉ๋‹ˆ๋‹ค(๊ทธ๋ฆผ 5 ์ฐธ์กฐ). ์ตœ์ƒ์ธต์€ ๊ฑฐ์นœ ์œ ์ „์ฒด(rough dielectric) BSDF๋กœ, ์ตœํ•˜์ธต์€ ์ž„์˜์˜ BRDF๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ๋งค์งˆ์€ ์‚ฐ๋ž€ ์•Œ๋ฒ ๋„(scattering albedo) AA์™€ ์†Œ๋ฉธ ๊ณ„์ˆ˜(extinction coefficient) ฯƒT\sigma_T๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค.
โ€ข
๋ ˆ์ด์–ด๋ง ๋„คํŠธ์›Œํฌ๋Š” MLP(Multi-Layer Perceptron) ๊ธฐ๋ฐ˜ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง€๋ฉฐ(๊ทธ๋ฆผ 3 ์ฐธ์กฐ), ์ตœ์ƒ์ธต BRDF์˜ ์ž ์žฌ ๋ฒกํ„ฐ VtopV_{top}, ์ตœํ•˜์ธต BRDF์˜ ์ž ์žฌ ๋ฒกํ„ฐ VbottomV_{bottom}, ๊ทธ๋ฆฌ๊ณ  ๋งค์งˆ ํŒŒ๋ผ๋ฏธํ„ฐ AA์™€ ฯƒT\sigma_T๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ์ตœ์ข… ๋ ˆ์ด์–ด๋“œ BRDF๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ž ์žฌ ๋ฒกํ„ฐ VlayeredV_{layered}๋ฅผ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.
โ€ข
์ด ๋ ˆ์ด์–ด๋ง ๋„คํŠธ์›Œํฌ๋Š” ์žฌ๊ท€์ ์œผ๋กœ ์ ์šฉ๋˜์–ด ๋‹ค์ธต(multi-layer) BRDF๋„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋ฐ์ดํ„ฐ์…‹ ๋ฐ ํ›ˆ๋ จ:
โ€ข
Mitsuba ๋ Œ๋”๋Ÿฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฑฐ์นœ ๋„์ฒด(rough conductor), ๊ฑฐ์นœ ์œ ์ „์ฒด(rough dielectric) BRDF ๋ฐ ๋‹ค์–‘ํ•œ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๊ฐ–๋Š” 2์ธต, 3์ธต ๋ ˆ์ด์–ด๋“œ BRDF ๋ฐ์ดํ„ฐ์…‹์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
โ€ข
ํ‘œํ˜„ ๋„คํŠธ์›Œํฌ๋Š” 2์ธต BRDF ๋ฐ์ดํ„ฐ๋กœ L1L_1 ์†์‹ค ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ›ˆ๋ จ๋ฉ๋‹ˆ๋‹ค. ์ž ์žฌ ๋ฒกํ„ฐ์™€ ๋„คํŠธ์›Œํฌ ๊ฐ€์ค‘์น˜๋ฅผ ๋™์‹œ์— ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.
โ€ข
๋ ˆ์ด์–ด๋ง ๋„คํŠธ์›Œํฌ๋Š” ํ›ˆ๋ จ๋œ ํ‘œํ˜„ ๋„คํŠธ์›Œํฌ์—์„œ ์–ป์€ ์ž ์žฌ ๋ฒกํ„ฐ๋ฅผ ์ž…๋ ฅ ๋ฐ ์ถœ๋ ฅ์œผ๋กœ ํ™œ์šฉํ•˜๋ฉฐ L1L_1 ์†์‹ค ํ•จ์ˆ˜๋กœ ํ›ˆ๋ จ๋ฉ๋‹ˆ๋‹ค. ํŠนํžˆ 3์ธต BRDF ๋ฐ์ดํ„ฐ๋กœ ๋ฏธ์„ธ ์กฐ์ •(finetune)๋ฉ๋‹ˆ๋‹ค.
๋ Œ๋”๋ง ํŒŒ์ดํ”„๋ผ์ธ:
โ€ข
BRDF๋ฅผ ์ž ์žฌ ๋ฒกํ„ฐ๋กœ ํ‘œํ˜„ํ•˜๊ณ , ๋ ˆ์ด์–ด๋“œ BRDF์˜ ๊ฒฝ์šฐ ๋ ˆ์ด์–ด๋ง ์—ฐ์‚ฐ์„ ํ†ตํ•ด ๋ ˆ์ด์–ด๋“œ ์ž ์žฌ ๋ฒกํ„ฐ๋ฅผ ์–ป์Šต๋‹ˆ๋‹ค. SVBRDF(Spatially Varying BRDF)์˜ ๊ฒฝ์šฐ ๊ฐ ํ…์…€์— ์ž ์žฌ ๋ฒกํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ์ž ์žฌ ํ…์Šค์ฒ˜(latent texture)๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
โ€ข
ํŒจ์Šค ํŠธ๋ ˆ์ด์‹ฑ(path tracing) ๋ Œ๋”๋ง์—์„œ ๊ต์ฐจ์ ์˜ BRDF ๊ฐ’์€ ์ €์žฅ๋œ ์ž ์žฌ ๋ฒกํ„ฐ์™€ ์ฟผ๋ฆฌ ๋ฐฉํ–ฅ์„ ํ‘œํ˜„ ๋„คํŠธ์›Œํฌ์— ์ž…๋ ฅํ•˜์—ฌ ์ถ”๋ก ํ•ฉ๋‹ˆ๋‹ค.
โ€ข
GPU ์ถ”๋ก  ๊ฐ€์†ํ™”๋ฅผ ์œ„ํ•ด NVIDIA Cutlass CUDA Templates๋ฅผ ํ™œ์šฉํ•˜์—ฌ CUDA๋กœ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค. BRDF์˜ ์ค‘์š”๋„ ์ƒ˜ํ”Œ๋ง(importance sampling)์„ ์œ„ํ•ด PDF ํ”„๋ก์‹œ๋ฅผ ์˜ˆ์ธกํ•˜๋Š” ์ž‘์€ ๋„คํŠธ์›Œํฌ๋„ ์ถ”๊ฐ€๋กœ ํ›ˆ๋ จํ•ฉ๋‹ˆ๋‹ค.
๊ฒฐ๊ณผ: ๋ณธ ๋ฐฉ๋ฒ•์€ ๊ธฐ์กด Guo et al. [2018]์˜ Monte Carlo ๊ธฐ๋ฐ˜ ๋ฐฉ์‹๊ณผ ๋น„๊ตํ•˜์—ฌ ์œ ์‚ฌํ•œ ํ’ˆ์งˆ์˜ ๊ฒฐ๊ณผ๋ฅผ ํ›จ์”ฌ ์ ์€ ๋น„์šฉ๊ณผ ๋…ธ์ด์ฆˆ ์—†์ด ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค(๊ทธ๋ฆผ 1, 6, 7, 10, 11). ํŠนํžˆ GPU๋ฅผ ํ™œ์šฉํ•œ ๋„คํŠธ์›Œํฌ ์ถ”๋ก  ๋•๋ถ„์— ๋ Œ๋”๋ง ์‹œ๊ฐ„์ด ํฌ๊ฒŒ ๋‹จ์ถ•๋ฉ๋‹ˆ๋‹ค. ์ธก์ •๋œ BRDF(MERL ๋ฐ์ดํ„ฐ์…‹)์—๋„ ํšจ๊ณผ์ ์œผ๋กœ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค(๊ทธ๋ฆผ 9). ๋‹ค์ธต BRDF์— ์žฌ๊ท€์ ์œผ๋กœ ์ ์šฉ๋  ๋•Œ๋„ ์ฐธ์กฐ ๊ฒฐ๊ณผ์— ๊ทผ์ ‘ํ•ฉ๋‹ˆ๋‹ค(๊ทธ๋ฆผ 8).
ํ•œ๊ณ„: ํ˜„์žฌ ๋ชจ๋ธ์€ ๋“ฑ๋ฐฉ์„ฑ ์žฌ์งˆ๊ณผ ๋งค์งˆ์— ์ดˆ์ ์„ ๋งž์ถ”๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋น„๋“ฑ๋ฐฉ์„ฑ(anisotropic) ์žฌ์งˆ, ๋…ธ๋ฉ€ ๋งคํ•‘๋œ BRDF, ๊ทธ๋ฆฌ๊ณ  BTDF(Bidirectional Transmittance Distribution Functions)์— ๋Œ€ํ•œ ๋ช…์‹œ์ ์ธ ์ฒ˜๋ฆฌ๋Š” ํ–ฅํ›„ ์—ฐ๊ตฌ ๊ณผ์ œ์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ ์žฌ๊ท€์  ๋ ˆ์ด์–ด๋ง ์‹œ ์˜ค๋ฅ˜๊ฐ€ ๋ˆ„์ ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์‹ ๊ฒฝ๋ง์˜ ํŠน์„ฑ์ƒ ์—๋„ˆ์ง€ ๋ณด์กด ๋ฒ•์น™์„ ์™„๋ฒฝํ•˜๊ฒŒ ๋งŒ์กฑํ•˜์ง€ ๋ชปํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ฒฐ๋ก ์ ์œผ๋กœ, ์ด ๋…ผ๋ฌธ์€ BRDF๋ฅผ ์••์ถ•๋œ ์ž ์žฌ ๋ฒกํ„ฐ๋กœ ํ‘œํ˜„ํ•˜๊ณ  ์ž ์žฌ ๊ณต๊ฐ„์—์„œ ๋ ˆ์ด์–ด๋ง ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์‹ ๊ฒฝ๋ง ๊ธฐ๋ฐ˜ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๋…ธ์ด์ฆˆ๊ฐ€ ์—†๊ณ  ๊ณ„์‚ฐ ํšจ์œจ์ ์ธ ๋ ˆ์ด์–ด๋“œ ์žฌ์งˆ ํ‰๊ฐ€๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” "Neural BRDF algebra"์˜ ์ฒซ๊ฑธ์Œ์œผ๋กœ ํ‰๊ฐ€๋ฉ๋‹ˆ๋‹ค.

3.4 Unified Neural Encoding of BTFs (Bidirectional Texture Functions)

๋ณธ ๋…ผ๋ฌธ์€ ์‹ค์„ธ๊ณ„ ์žฌ๋ฃŒ์˜ ์‚ฌ์‹ค์ ์ธ ๋ Œ๋”๋ง์„ ์œ„ํ•œ BTF(Bidirectional Texture Function) ํ‘œํ˜„์— ๋Œ€ํ•ด ์ƒˆ๋กœ์šด ํ†ตํ•ฉ ์‹ ๊ฒฝ๋ง ์ธ์ฝ”๋”ฉ(Unified Neural Encoding) ๋ฐฉ์‹์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด BTF ๋ฐ์ดํ„ฐ๋Š” ๋ฐฉ๋Œ€ํ•œ ๋ฉ”๋ชจ๋ฆฌ ์š”๊ตฌ์‚ฌํ•ญ๊ณผ ๋ถˆ์—ฐ์†์ ์ธ ์ธก์ •๊ฐ’์œผ๋กœ ์ธํ•ด ๋ Œ๋”๋ง ์‹œ ๋ณด๊ฐ„ ๋ฌธ์ œ์™€ ๋†’์€ ๊ณ„์‚ฐ ๋น„์šฉ์ด ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์‹ ๊ฒฝ๋ง ๊ธฐ๋ฐ˜ ์ ‘๊ทผ ๋ฐฉ์‹์ด ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋“ฑ์žฅํ–ˆ์œผ๋‚˜, ๊ธฐ์กด ๋ฐฉ์‹๋“ค์€ ๊ฐ ์žฌ๋ฃŒ๋งˆ๋‹ค ๋ณ„๋„์˜ ๋„คํŠธ์›Œํฌ๋ฅผ ํ•™์Šตํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์žฌ๋ฃŒ ๊ฐ„ ๊ณต์œ ๋œ ์ž ์žฌ ๊ณต๊ฐ„(latent space)์ด ์—†์—ˆ๊ณ , ์ƒˆ๋กœ์šด ์žฌ๋ฃŒ์— ๋Œ€ํ•œ ํšจ์œจ์ ์ธ ์ธ์ฝ”๋”ฉ์ด ์–ด๋ ค์› ์Šต๋‹ˆ๋‹ค.
์ €์ž๋“ค์€ ์ด๋Ÿฌํ•œ ํ•œ๊ณ„๋ฅผ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด ์˜คํ† ์ธ์ฝ”๋”(autoencoder)์—์„œ ์˜๊ฐ์„ ๋ฐ›์€ ํ†ตํ•ฉ ๋„คํŠธ์›Œํฌ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ์ด ์•„ํ‚คํ…์ฒ˜๋Š” ๋‹ค์–‘ํ•œ ์žฌ๋ฃŒ๋ฅผ ํ•™์Šตํ•˜์—ฌ ๋ฐ˜์‚ฌ์œจ ์ธก์ •๊ฐ’์„ ๊ณต์œ ๋œ ์ž ์žฌ ํŒŒ๋ผ๋ฏธํ„ฐ ๊ณต๊ฐ„์œผ๋กœ ํˆฌ์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” SVBRDF(Spatially-Varying BRDF) ํ”ผํŒ…๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ์‹ค์„ธ๊ณ„ ์žฌ๋ฃŒ๋ฅผ ํŒŒ๋ผ๋ฏธํ„ฐ ๋งต์œผ๋กœ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๋””์ฝ”๋” ๋„คํŠธ์›Œํฌ๋Š” ๋ถ„์„์  BRDF ํ‘œํ˜„์ฒ˜๋Ÿผ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.
ํ•ต์‹ฌ ๋ฐฉ๋ฒ•๋ก :
์ด ๋…ผ๋ฌธ์˜ ํ•ต์‹ฌ์€ ์ž…๋ ฅ ABRDF(Apparent BRDF)์˜ ๊ฐ€๋ณ€์ ์ธ ๊ฐ๋„ ์ƒ˜ํ”Œ ์ˆ˜์™€ ๋ถˆ๊ทœ์น™ํ•œ ์ƒ˜ํ”Œ ์œ„์น˜์— ๊ด€๊ณ„์—†์ด ์ž‘๋™ํ•˜๋Š” ์ธ์ฝ”๋” ์•„ํ‚คํ…์ฒ˜์ž…๋‹ˆ๋‹ค. ABRDF๋Š” nn๊ฐœ์˜ 77์ฐจ์› ์—”ํŠธ๋ฆฌ(ฯ‰i\omega_i, ฯ‰o\omega_o, R, G, B)๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ฯ‰i\omega_i, ฯ‰o\omega_o๋Š” ์ž…์‚ฌ ๋ฐ ์ถœ์‚ฌ ๋ฐฉํ–ฅ์˜ ์Šคํ…Œ๋ ˆ์˜ค๊ทธ๋ž˜ํ”ฝ(stereographic) 2D ์ขŒํ‘œ์ด๋ฉฐ, R, G, B๋Š” ๋ฐ˜์‚ฌ์œจ ์ธก์ •๊ฐ’์ž…๋‹ˆ๋‹ค.
1.
์ธ์ฝ”๋” ๋„คํŠธ์›Œํฌ(Encoder Network): ์œ ์—ฐ์„ฑ์„ ์œ„ํ•ด ์ธ์ฝ”๋”๋Š” ๋‘ ๋ถ€๋ถ„์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.
โ€ข
๊ฐ๋„ MLP (Angular Multi-Layer Perceptron): ๋‹จ์ผ ๊ด‘์›-์‹œ์  ์กฐํ•ฉ์˜ ๊ฐ๋„(ฯ‰i\omega_i, ฯ‰o\omega_o)๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ mm์ฐจ์› ๊ฐ€์ค‘์น˜ ๋ฒกํ„ฐ๋ฅผ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค. ์ž…๋ ฅ ABRDF์˜ nn๊ฐœ ์ƒ˜ํ”Œ ๊ฐ๊ฐ์— ๋Œ€ํ•ด ์ด MLP๊ฐ€ ์‹คํ–‰๋˜์–ด nร—mn \times m ํฌ๊ธฐ์˜ ๊ฐ€์ค‘์น˜ ํ–‰๋ ฌ AA๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
โ€ข
๋ฐ˜์‚ฌ์œจ ํ™•์žฅ ๋ฐ ๊ณฑ์…ˆ: ์ž…๋ ฅ ABRDF์˜ RGB ๋ฐ˜์‚ฌ์œจ ๊ฐ’์„ mm๋ฒˆ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค. ํ™•์žฅ๋œ RGB ๊ฐ’์€ ๊ฐ€์ค‘์น˜ ํ–‰๋ ฌ AA์™€ ์›์†Œ๋ณ„๋กœ ๊ณฑํ•ด์ง‘๋‹ˆ๋‹ค. ์ด๋Š” ๋ฐ˜์‚ฌ์œจ ์‹ ํ˜ธ์™€ ํ•™์Šต๋œ ๊ฐ๋„ ํ•„ํ„ฐ์˜ ๊ณฑ์„ ๊ฐ๋„ ๊ณต๊ฐ„์—์„œ ์ด์‚ฐ์ ์œผ๋กœ ์ ๋ถ„ํ•˜๋Š” ๊ฒƒ๊ณผ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
โ€ข
ํ‰๊ท ํ™” ์—ฐ์‚ฐ (Averaging Operation): ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค. ๊ฐ€์ค‘์น˜ ํ–‰๋ ฌ AA์™€ ๊ณฑํ•ด์ง„ ๊ฒฐ๊ณผ์— ๋Œ€ํ•ด ์ˆ˜์ง ๋ฐฉํ–ฅ(nn๊ฐœ ์ƒ˜ํ”Œ ์ „์ฒด)์œผ๋กœ ํ‰๊ท ํ™” ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์ถœ๋ ฅ์€ ์ž…๋ ฅ ์ƒ˜ํ”Œ์˜ ๊ฐœ์ˆ˜๋‚˜ ์ˆœ์„œ์— ๊ด€๊ณ„์—†์ด ํ•ญ์ƒ ๊ณ ์ •๋œ 3ร—m3 \times m ํฌ๊ธฐ์˜ ํŠน์ง• ํ–‰๋ ฌ(feature matrix)์ด ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๊ธฐ์กด ๋ฐฉ์‹์˜ 1์ฐจ์› ์ปจ๋ณผ๋ฃจ์…˜์ด๋‚˜ ๋งฅ์Šค ํ’€๋ง๊ณผ ๋‹ฌ๋ฆฌ ๊ฐ๋„ ์ƒ˜ํ”Œ๋ง์— ๋Œ€ํ•œ ๋ถˆ๋ณ€์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
โ€ข
์™„์ „ ์—ฐ๊ฒฐ ๊ณ„์ธต (Fully-Connected Layers): 3ร—m3 \times m ํŠน์ง• ๋ฒกํ„ฐ๋ฅผ ํŽผ์นœ ํ›„ PReLU ํ™œ์„ฑํ™” ํ•จ์ˆ˜๋ฅผ ๊ฑฐ์ณ, ํ•˜๋‚˜์˜ ์€๋‹‰ ๊ณ„์ธต๊ณผ ReLU ํ™œ์„ฑํ™” ํ•จ์ˆ˜๋ฅผ ํฌํ•จํ•˜๋Š” ์™„์ „ ์—ฐ๊ฒฐ ๊ณ„์ธต์„ ํ†ตํ•ด ์ €์ฐจ์› ์ž ์žฌ ๋ฒกํ„ฐ(latent vector)๋กœ ํˆฌ์˜ํ•ฉ๋‹ˆ๋‹ค.
2.
๋””์ฝ”๋” ๋„คํŠธ์›Œํฌ(Decoder Network):
โ€ข
๋””์ฝ”๋”๋Š” ABRDF์˜ ์ž ์žฌ ์ขŒํ‘œ์™€ ์Šคํ…Œ๋ ˆ์˜ค๊ทธ๋ž˜ํ”ฝ ์ขŒํ‘œ๋กœ ํ‘œํ˜„๋œ ๊ด‘์› ๋ฐ ์‹œ์  ๋ฐฉํ–ฅ์„ ์ž…๋ ฅ๋ฐ›์Šต๋‹ˆ๋‹ค.
โ€ข
4๊ฐœ์˜ ์€๋‹‰ ๊ณ„์ธต๊ณผ ReLU ํ™œ์„ฑํ™” ํ•จ์ˆ˜๋กœ ๊ตฌ์„ฑ๋œ ํ‘œ์ค€ ์™„์ „ ์—ฐ๊ฒฐ ๋„คํŠธ์›Œํฌ๋กœ, ์ฃผ์–ด์ง„ ๋ฐฉํ–ฅ์— ๋Œ€ํ•œ RGB ๋ฐ˜์‚ฌ์œจ ๊ฐ’์„ ์žฌ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.
ํ•™์Šต ๋ฐ ๊ฒฐ๊ณผ:
๋„คํŠธ์›Œํฌ๋Š” Bonn BTF ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ 77๊ฐœ ์žฌ๋ฃŒ(7๊ฐœ ํด๋ž˜์Šค)์— ๋Œ€ํ•ด end-to-end ๋ฐฉ์‹์œผ๋กœ ํ•™์Šต๋ฉ๋‹ˆ๋‹ค. ํ•™์Šต ์‹œ RGB ์ฑ„๋„์„ ์ˆœ์—ด(permute)ํ•˜๊ณ  20%์—์„œ 100% ์‚ฌ์ด์˜ ๋ฌด์ž‘์œ„ ๊ฐ๋„ ์ƒ˜ํ”Œ ๋ถ€๋ถ„ ์ง‘ํ•ฉ์„ ์ž…๋ ฅํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์ฆ๊ฐ•(data augmentation)์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ๊ฐ๋„ ํ•ด์ƒ๋„ ๋ณ€ํ™”์— ๋Œ€ํ•œ ๊ฒฌ๊ณ ์„ฑ์„ ํ™•๋ณดํ–ˆ์Šต๋‹ˆ๋‹ค. ์žฌ๋ฃŒ์˜ ๋†’์€ ๋™์  ๋ฒ”์œ„(HDR)๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ๋กœ๊ทธ ๋ณ€ํ™˜๊ณผ ์ •๊ทœํ™”๋ฅผ ์ ์šฉํ–ˆ์œผ๋ฉฐ, L1 ์†์‹ค ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ‰๊ท  ์ƒ‰์กฐ ์ •ํ™•๋„์™€ ๋Œ€๋น„ ๋ณด์กด์„ ํ–ฅ์ƒ์‹œ์ผฐ์Šต๋‹ˆ๋‹ค.
์ œ์•ˆ๋œ ๋„คํŠธ์›Œํฌ๋Š” ํ•™์Šต๋˜์ง€ ์•Š์€ ์žฌ๋ฃŒ์— ๋Œ€ํ•ด์„œ๋„ ์žฌ๋ฃŒ๋ณ„๋กœ ๊ณผ์ ํ•ฉ๋œ ๋„คํŠธ์›Œํฌ์— ํ•„์ ํ•˜๋Š” ์žฌ๊ตฌ์„ฑ ์„ฑ๋Šฅ์„ ๋ณด์˜€์Šต๋‹ˆ๋‹ค. ํŠนํžˆ ๊ณต๊ฐ„ ์„ธ๋ถ€ ์‚ฌํ•ญ, ์„œ๋ธŒ์„œํ”ผ์Šค ์‚ฐ๋ž€(subsurface scattering), ์ƒํ˜ธ ๊ทธ๋ฆผ์ž(intershadowing)์™€ ๊ฐ™์€ ๋น„์ง€์—ญ์ (non-local) ํšจ๊ณผ๋ฅผ ์ž˜ ์žฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค. 32์ฐจ์›์˜ ์ž ์žฌ ๊ณต๊ฐ„์ด ์ •ํ™•์„ฑ๊ณผ ์••์ถ•๋ฅ  ๊ฐ„์˜ ์ตœ์  ์ ˆ์ถฉ์ ์œผ๋กœ ์„ ํƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
์ด ํ†ตํ•ฉ ์•„ํ‚คํ…์ฒ˜๋Š” ๊ฐ๋„ ์ƒ˜ํ”Œ ํ•ด์ƒ๋„์— ๋Œ€ํ•œ ๊ฒฌ๊ณ ์„ฑ์„ ์ž…์ฆํ–ˆ์Šต๋‹ˆ๋‹ค. ์›๋ž˜ ์ƒ˜ํ”Œ์˜ 10% ๋ฏธ๋งŒ์œผ๋กœ๋„ ์•ˆ์ •์ ์ธ ์žฌ๊ตฌ์„ฑ์ด ๊ฐ€๋Šฅํ–ˆ์Šต๋‹ˆ๋‹ค. ์ž ์žฌ ๊ณต๊ฐ„์—์„œ์˜ ํ•„ํ„ฐ๋ง์€ ๊ฑฐ์˜ ๋ˆˆ์— ๋„์ง€ ์•Š๋Š” ํ’ˆ์งˆ ์†์‹ค๋กœ ๊ฐ€๋Šฅํ–ˆ์œผ๋ฉฐ, ์ด๋Š” ๋ฐ‰๋งคํ•‘(mipmapping)๊ณผ ๊ฐ™์€ ์‘์šฉ์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์•ˆ์ •์ ์ธ ์ž ์žฌ ๊ณต๊ฐ„์€ ์ž ์žฌ ๋งต์„ ์ง์ ‘ ์‚ฌ์šฉํ•˜์—ฌ ํšจ์œจ์ ์ธ BTF ํ…์Šค์ฒ˜ ํ•ฉ์„ฑ(texture synthesis)์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.
์ด ์—ฐ๊ตฌ๋Š” ๋‹ค์–‘ํ•œ ์‹ค์„ธ๊ณ„ ์žฌ๋ฃŒ์˜ BTF๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ธ์ฝ”๋”ฉํ•˜๊ณ  ๊ณต์œ ๋œ ์ž ์žฌ ๊ณต๊ฐ„์—์„œ ์žฌ๋ฃŒ๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ์‹ ๊ฒฝ๋ง ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” BTF ๋ Œ๋”๋ง ๋ฐ ํŽธ์ง‘ ๋ถ„์•ผ์— ์ค‘์š”ํ•œ ์ง„์ „์„ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค. ํ–ฅํ›„ ์—ฐ๊ตฌ๋กœ๋Š” ๋” ๋งŽ์€ ํ•™์Šต ๋ฐ์ดํ„ฐ ํ™•๋ณด ๋ฐ ํ•ฉ์„ฑ ๋ฐ์ดํ„ฐ ํ™œ์šฉ ๋ฐฉ์•ˆ์ด ๋ชจ์ƒ‰๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

3.5 A Compact Representation of Measured BRDFs Using Neural Processes

๋ณธ ๋…ผ๋ฌธ์€ Neural Processes(NPs)๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ธก์ •๋œ BRDF(Bidirectional Reflectance Distribution Functions)๋ฅผ ์ƒˆ๋กญ๊ณ  ์••์ถ•์ ์œผ๋กœ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ์‹์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๋ฐฉ๋ฒ•๋ก ๋“ค์€ BRDF๋ฅผ ์ด์‚ฐ์ ์ธ ๊ณ ์ฐจ์› ํ–‰๋ ฌ์ด๋‚˜ ํ…์„œ๋กœ ํ‘œํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด์™€ ๋‹ฌ๋ฆฌ ๋ณธ ์ ‘๊ทผ ๋ฐฉ์‹์€ BRDF๋ฅผ ์—ฐ์† ํ•จ์ˆ˜๋กœ ๊ฐ„์ฃผํ•˜๊ณ  ํ•ด๋‹น ํ•จ์ˆ˜ ๊ณต๊ฐ„์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๊ตฌ์ฒด์ ์œผ๋กœ, MERL ๋ฐ EPFL ๋ฐ์ดํ„ฐ์…‹๊ณผ ๊ฐ™์€ ์ธก์ •๋œ BRDF ์„ธํŠธ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ €์ฐจ์› ์ž ์žฌ ๊ณต๊ฐ„(latent space)๊ณผ ์‹ ๊ฒฝ๋ง์„ ํ•™์Šต์‹œํ‚ต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด BRDF๋ฅผ ๋น„์„ ํ˜• ๋ฐฉ์‹์œผ๋กœ ์ธ์ฝ”๋”ฉํ•˜๊ณ  ๋””์ฝ”๋”ฉํ•ฉ๋‹ˆ๋‹ค. NPs ํ”„๋ ˆ์ž„์›Œํฌ์˜ ์œ ์—ฐ์„ฑ๊ณผ ํ•™์Šต๋œ ์ž ์žฌ ๊ณต๊ฐ„ ๋•๋ถ„์— ์ธ์ฝ”๋”ฉ๋œ BRDF๋Š” ๋งค์šฐ ์••์ถ•์ ์ด๋ฉฐ ๊ธฐ์กด ๋ฐฉ๋ฒ•๋ก ๋ณด๋‹ค ๋†’์€ ์ •ํ™•๋„๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ €์ž๋“ค์€ BRDF ์••์ถ• ๋ฐ ํŽธ์ง‘์ด๋ผ๋Š” ๋‘ ๊ฐ€์ง€ ์‘์šฉ ๋ถ„์•ผ๋ฅผ ํ†ตํ•ด ์ด ์ ‘๊ทผ ๋ฐฉ์‹์˜ ์‹ค์šฉ์„ฑ์„ ์ž…์ฆํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ๊ฐœ๋ณ„ BRDF์— ๋Œ€ํ•œ ๋” ๋‚˜์€ ์••์ถ•๋ฅ ์„ ๋‹ฌ์„ฑํ•˜๊ณ  ์ค‘์š” ์ƒ˜ํ”Œ๋ง(importance sampling)์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” ๋‘ ๊ฐ€์ง€ ํ›„์ฒ˜๋ฆฌ ํ•™์Šต ๋””์ฝ”๋”(post-trained decoders)๋ฅผ ์„ค๊ณ„ํ–ˆ์Šต๋‹ˆ๋‹ค.
ํ•ต์‹ฌ ๋ฐฉ๋ฒ•๋ก  (Core Methodology)
๋ณธ ์—ฐ๊ตฌ์˜ ํ•ต์‹ฌ์€ BRDF ff๋ฅผ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  BRDF ์ง‘ํ•ฉ F\mathcal{F}์—์„œ ๋ฌด์ž‘์œ„๋กœ ์ถ”์ถœ๋œ ์ƒ˜ํ”Œ๋กœ ๊ฐ„์ฃผํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ํ™•๋ฅ  ๋ถ„ํฌ๋ฅผ ์–ป๊ธฐ ์œ„ํ•ด ์ธก์ •๋œ BRDF ์ปฌ๋ ‰์…˜ FM\mathcal{F}_M์„ ff์˜ ๊ด€์ธก๊ฐ’์œผ๋กœ ํ™œ์šฉํ•˜๋Š” ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜ ์ ‘๊ทผ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. BRDF ff๋Š” ๊ณ ์ฐจ์› ์ž ์žฌ ๋ฒกํ„ฐ zz์™€ ์‹ ๊ฒฝ๋ง ํ•จ์ˆ˜ g\text{g}๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์Œ ์‹์œผ๋กœ ๊ทผ์‚ฌ๋ฉ๋‹ˆ๋‹ค.
f(ฯ‰i,ฯ‰o)โ‰ˆg(ฯ‰i,ฯ‰o;z)f(\omega_i, \omega_o) \approx \text{g}(\omega_i, \omega_o ; z) (1)
์—ฌ๊ธฐ์„œ ฯ‰i\omega_i๋Š” ์ž…์‚ฌ ๋ฐฉํ–ฅ, ฯ‰o\omega_o๋Š” ๋ฐ˜์‚ฌ ๋ฐฉํ–ฅ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ์ธก์ •๋œ BRDF ์ปฌ๋ ‰์…˜ FM:={fk:kโˆˆM}\mathcal{F}_M := \{ f_k : k \in M \}๋Š” ๋™์ผํ•œ ํ•จ์ˆ˜ g\text{g}์™€ ์ž ์žฌ ๋ฒกํ„ฐ ์„ธํŠธ {zk:kโˆˆM}\{ z_k : k \in M \}๋กœ ๋ชจ๋ธ๋ง๋˜๋ฉฐ, fk(ฯ‰i,ฯ‰o)โ‰ˆg(ฯ‰i,ฯ‰o;zk)f_k(\omega_i, \omega_o) \approx \text{g}(\omega_i, \omega_o ; z_k)๋ฅผ ๋งŒ์กฑํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ์ž ์žฌ ๋ฒกํ„ฐ zkz_k๋Š” ํ‰๊ท  ฮผk\mu_k, ๊ณต๋ถ„์‚ฐ ฮฃk\Sigma_k๋ฅผ ๊ฐ–๋Š” ์ •๊ทœ ๋ถ„ํฌ N(ฮผk,ฮฃk)\mathcal{N}(\mu_k, \Sigma_k)๋ฅผ ๋”ฐ๋ฅธ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ FM\mathcal{F}_M๋ฅผ ๋ชจ๋ธ๋งํ•˜๋Š” ๋ฌธ์ œ๋Š” ๋‘ ๊ฐ€์ง€๋กœ ์š”์•ฝ๋ฉ๋‹ˆ๋‹ค:
(i) ์‹ (1)์—์„œ ํ•จ์ˆ˜ g\text{g}๋ฅผ ๊ฒฐ์ •ํ•˜๊ธฐ,
(ii) ๋ชจ๋“  kk์— ๋Œ€ํ•ด ๋ถ„ํฌ ๋งค๊ฐœ๋ณ€์ˆ˜ ฮผk\mu_k์™€ ฮฃk\Sigma_k๋ฅผ ์ฐพ๊ธฐ.

๋ฐ์ดํ„ฐ ํ‘œํ˜„ ๋ฐ ์šฐ๋„ ๋ชจ๋ธ๋ง

์ธก์ •๋œ BRDF ff๋Š” ๊ด€์ธก๊ฐ’ ์‹œํ€€์Šค X:=(x1,x2,โ€ฆ)X := (x_1, x_2, \ldots)์™€ Y:=(y1,y2,โ€ฆ)Y := (y_1, y_2, \ldots)๋กœ ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ xjx_j๋Š” jj๋ฒˆ์งธ ๊ด€์ธก์˜ ์กฐ๋ช… ๋ฐ ์‹œ์•ผ ๋ฐฉํ–ฅ์„ ์ธ์ฝ”๋”ฉํ•˜๊ณ , yj:=f(xj)y_j := f(x_j)๋Š” ํ•ด๋‹น BRDF ๊ฐ’์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
๋ชจ๋“  kk์— ๋Œ€ํ•œ fkf_k์˜ ๊ด€์ธก๊ฐ’์„ Xk:=(xk,j:j=1,2,โ€ฆ)X_k := (x_{k,j} : j = 1, 2, \ldots) ๋ฐ Yk=(yk,j:j=1,2,โ€ฆ)Y_k = (y_{k,j} : j = 1, 2, \ldots)๋ผ๊ณ  ํ•˜๋ฉด, ๋ชฉํ‘œ ์šฐ๋„(target likelihood) p(YMโˆฃXM)p(Y_M | X_M)๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค:
p(YMโˆฃXM)=โˆkโˆˆMโˆซp(YkโˆฃXk,zk)p(zk)dzkp(Y_M | X_M) = \prod_{k \in M} \int p(Y_k | X_k, z_k) p(z_k) dz_k (2)
์—ฌ๊ธฐ์„œ p(YkโˆฃXk,zk)=N(Yk;g(Xk,zk),ฮฃerr)p(Y_k | X_k, z_k) = \mathcal{N}(Y_k ; \text{g}(X_k, z_k), \Sigma_{\text{err}})๋Š” ์žฌ๊ตฌ์„ฑ ์˜ค์ฐจ์™€ ์ธก์ • ๋…ธ์ด์ฆˆ๋ฅผ ๋ชจ๋ธ๋งํ•ฉ๋‹ˆ๋‹ค.
๋ชจ๋“  ๊ฐ€๋Šฅํ•œ BRDF์˜ ์‚ฌ์ „ ๋ถ„ํฌ(prior) p(zk)p(z_k)๋Š” ์–ป๊ธฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์กฐ๊ฑด๋ถ€ ์‚ฌํ›„ ๋ถ„ํฌ(conditional posterior) p(zk)โ‰ˆq(zkโˆฃXk,Yk)=N(zk;ฮผk,ฮฃk)p(z_k) \approx q(z_k | X_k, Y_k) = \mathcal{N}(z_k ; \mu_k, \Sigma_k)๋กœ ๊ทผ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
ํ•จ์ˆ˜ l\text{l}์€ ๊ด€์ธก๊ฐ’ Xk,YkX_k, Y_k๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ zkz_k์˜ ๋ถ„ํฌ ๋งค๊ฐœ๋ณ€์ˆ˜ ฮผk\mu_k์™€ ฮฃk\Sigma_k๋ฅผ ์˜ˆ์ธกํ•ฉ๋‹ˆ๋‹ค: l(Xk,Yk)=(ฮผk,ฮฃk)\text{l}(X_k, Y_k) = (\mu_k, \Sigma_k).

๋„คํŠธ์›Œํฌ ๊ตฌ์กฐ ๋ฐ ํ›ˆ๋ จ

ํ•จ์ˆ˜ g\text{g}์™€ l\text{l}์€ ์‹ฌ์ธต ์‹ ๊ฒฝ๋ง์œผ๋กœ ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค. l\text{l}์€ ๋‘ ๋ถ€๋ถ„์œผ๋กœ ๋ถ„ํ•ด๋ฉ๋‹ˆ๋‹ค: ๊ฐœ๋ณ„ ๊ด€์ธก๊ฐ’์„ ์ธ์ฝ”๋”ฉํ•˜๋Š” ๋น„์„ ํ˜• ํ•จ์ˆ˜ h\text{h}์™€ ์ธ์ฝ”๋”ฉ๋œ ๊ด€์ธก๊ฐ’ ์„ธํŠธ๋ฅผ ํ†ตํ•ฉํ•˜๋Š” ํ•จ์ˆ˜ a\text{a}์ž…๋‹ˆ๋‹ค.
l(X,Y)=a({h(xj,yj):j=1,2,โ€ฆ})\text{l}(X, Y) = \text{a}(\{ \text{h}(x_j, y_j) : j = 1, 2, \ldots \}). ์—ฌ๊ธฐ์„œ h\text{h}๋ฅผ ์ธ์ฝ”๋”, a\text{a}๋ฅผ ์–ด๊ทธ๋ฆฌ๊ฒŒ์ดํ„ฐ, g\text{g}๋ฅผ ๋””์ฝ”๋”๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค. ์–ด๊ทธ๋ฆฌ๊ฒŒ์ดํ„ฐ a\text{a}๋Š” ์ž…๋ ฅ ๊ด€์ธก๊ฐ’์˜ ์ˆœ์„œ ๋ถˆ๋ณ€์„ฑ์„ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•ด ํ‰๊ท  ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ๋„คํŠธ์›Œํฌ๋Š” ์™„์ „ ์—ฐ๊ฒฐ(fully connected, FC) ๋ ˆ์ด์–ด๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ, ๋””์ฝ”๋”์˜ ๋งˆ์ง€๋ง‰ ๋ ˆ์ด์–ด์—๋Š” ReLU(rectified linear units)๋ฅผ ์ ์šฉํ•˜์—ฌ BRDF ๋ฐ˜์‚ฌ์œจ์˜ ์Œ์ˆ˜ ๊ฐ’์„ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค.
ํ›ˆ๋ จ ๊ณผ์ •์€ ์‹ (2)์˜ ๋ณ€๋ถ„ ์‚ฌํ›„ ๋ถ„ํฌ(variational posterior)๋ฅผ ์ตœ๋Œ€ํ™”ํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ง์ ‘ ์ตœ์ ํ™”๊ฐ€ ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ์— ELBO(Evidence Lower Bound)๋ฅผ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค. BRDF์— ๋Œ€ํ•œ ์‚ฌ์ „ ์ง€์‹์ด ๋ถ€์กฑํ•˜๋ฏ€๋กœ, ์‚ฌ์ „ ๋ถ„ํฌ p(zk)p(z_k) ๋Œ€์‹  NPs์˜ ์•„์ด๋””์–ด๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค. ์ปจํ…์ŠคํŠธ ์„ธํŠธ (Xkc,Ykc)(X_k^c, Y_k^c)๋ฅผ ์ƒ˜ํ”Œ๋งํ•˜๊ณ , ์ปจํ…์ŠคํŠธ ์„ธํŠธ์˜ ์‚ฌํ›„ ๋ถ„ํฌ p(zkโˆฃXkc,Ykc)p(z_k | X_k^c, Y_k^c)๊ฐ€ ์ „์ฒด ์„ธํŠธ์˜ ์‚ฌ์ „ ๋ถ„ํฌ p(zk)p(z_k)๋ฅผ ๊ทผ์‚ฌํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด ๋‹ค์Œ ์†์‹ค ํ•จ์ˆ˜๋ฅผ ์ตœ์†Œํ™”ํ•˜์—ฌ g\text{g}์™€ l\text{l}์„ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.
12Ezk[ฮ”YkTฮฃerrโˆ’1ฮ”Yk]+KL[N(l(Xk,Yk))โˆฅN(l(Xkc,Ykc))]\frac{1}{2} E_{z_k}[\Delta Y_k^T \Sigma_{\text{err}}^{-1} \Delta Y_k] + KL [N(\text{l}(X_k, Y_k)) \parallel N(\text{l}(X_k^c, Y_k^c))] (12)
์—ฌ๊ธฐ์„œ ฮ”Yk:=(yk,jโˆ’g(xk,j;zk):j=1,2,โ€ฆ)\Delta Y_k := (y_{k,j} - \text{g}(x_{k,j} ; z_k) : j = 1, 2, \ldots)์ด๋ฉฐ, KL[โ‹…โˆฅโ‹…]KL[\cdot \parallel \cdot]์€ Kullback-Leibler ๋ฐœ์‚ฐ์ž…๋‹ˆ๋‹ค. ํ›ˆ๋ จ์€ MERL ๋ฐ EPFL ๋ฐ์ดํ„ฐ์…‹์˜ BRDF๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Adam ์˜ตํ‹ฐ๋งˆ์ด์ €๋กœ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค.

ํ•™์Šต๋œ ์ž ์žฌ ๊ณต๊ฐ„ ๋ถ„์„

ํ›ˆ๋ จ๋œ ์ธ์ฝ”๋” ๋„คํŠธ์›Œํฌ๋Š” ๋ชจ๋“  BRDF(๊ด€์ธก ์Œ X,YX, Y๋กœ ํ‘œํ˜„)๋ฅผ ์ด ์ž ์žฌ ๊ณต๊ฐ„์œผ๋กœ ํˆฌ์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž ์žฌ ๊ณต๊ฐ„์€ 2์ฐจ์›๋ถ€ํ„ฐ 7์ฐจ์›๊นŒ์ง€ ํ‰๊ฐ€๋˜์—ˆ์œผ๋ฉฐ, 7D ๊ณต๊ฐ„์ด ์—ฌ๋Ÿฌ ์‘์šฉ ๋ถ„์•ผ์—์„œ ์šฐ์ˆ˜ํ•œ ์„ฑ๋Šฅ์„ ๋ณด์˜€์Šต๋‹ˆ๋‹ค. ์ด ๊ณต๊ฐ„์€ ์˜๋ฏธ์ ์œผ๋กœ ์œ ์˜๋ฏธํ•œ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค. ์œ ์‚ฌํ•œ ์™ธ๊ด€์˜ ์žฌ๋ฃŒ๋“ค์€ ์ž ์žฌ ๊ณต๊ฐ„์—์„œ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ํ˜•์„ฑํ•˜๊ณ , ํ™•์‚ฐ ๋ฐ˜์‚ฌ๋„(diffuse reflectivity)์™€ ๊ฑฐ์น ๊ธฐ(roughness)๋Š” ๊ฐ๊ฐ ํŠน์ • ์ฃผ์„ฑ๋ถ„(principal component) ์ถ•์„ ๋”ฐ๋ผ ๋‹จ์กฐ๋กญ๊ฒŒ ๋ณ€ํ™”ํ•ฉ๋‹ˆ๋‹ค.

์‘์šฉ 1: ์••์ถ•

NP ๊ธฐ๋ฐ˜ ๊ธฐ์ˆ ์€ ์ธก์ •๋œ BRDF๋ฅผ ์ตœ๋Œ€ 7์ฐจ์›์˜ ์ž ์žฌ ๋ฒกํ„ฐ๋กœ ์ธ์ฝ”๋”ฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ์…‹์„ ์••์ถ•ํ•ฉ๋‹ˆ๋‹ค. ๋””์ฝ”๋” ๋„คํŠธ์›Œํฌ g\text{g}์˜ ํฌ๊ธฐ๋Š” ์•ฝ 3.11MB์ด๋ฉฐ, ์ž ์žฌ ๊ณต๊ฐ„์˜ ์ฐจ์›(dd)์ด ์ด ์ €์žฅ ๊ณต๊ฐ„์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์€ ๋ฏธ๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์†Œ์ˆ˜์˜ BRDF๋ฅผ ์••์ถ•ํ•  ๋•Œ๋Š” ๋””์ฝ”๋” ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์ปค์งˆ ์ˆ˜ ์žˆ์–ด, ๊ฐ BRDF์— ํŠนํ™”๋œ ๊ฒฝ๋Ÿ‰ "ํ•˜์ดํผ๋„คํŠธ์›Œํฌ(hypernetworks)"๋ฅผ ํ›„์ฒ˜๋ฆฌ ํ•™์Šตํ•˜์—ฌ ๋””์ฝ”๋”ฉํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ดํผ๋„คํŠธ์›Œํฌ๋Š” ์ž ์žฌ ๋ฒกํ„ฐ zz๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ๋ฉ”์ธ ๋„คํŠธ์›Œํฌ(mainNet)์˜ ๊ฐ€์ค‘์น˜ z^\hat{z}๋ฅผ ์ƒ์„ฑํ•˜๊ณ , ๋ฉ”์ธ ๋„คํŠธ์›Œํฌ๋Š” ๋ฐฉํ–ฅ xx๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ BRDF ๊ฐ’์„ ์˜ˆ์ธกํ•ฉ๋‹ˆ๋‹ค: g(x,z)โ‰ˆmainNet(x;z^)\text{g}(x, z) \approx \text{mainNet}(x; \hat{z}), ์—ฌ๊ธฐ์„œ z^=hyperNet(z)\hat{z} = \text{hyperNet}(z)์ž…๋‹ˆ๋‹ค. ์••์ถ• ์‹œ z^\hat{z}๋งŒ ์ €์žฅํ•˜๋ฉด ๋˜๋ฉฐ, ์ด๋Š” BRDF๋‹น 9KB๋กœ ๋งค์šฐ ๋†’์€ ์••์ถ•๋ฅ ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. PSNR ๋น„๊ต ๊ฒฐ๊ณผ, ๋ณธ ๋ฐฉ๋ฒ•์€ ๊ธฐ์กด ์ตœ์‹  ์••์ถ• ๋ฐฉ๋ฒ•๋ณด๋‹ค ๋Œ€๋ถ€๋ถ„์˜ BRDF์—์„œ ๋” ๋†’์€ ํ’ˆ์งˆ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์‘์šฉ 2: BRDF ํŽธ์ง‘

ํ•™์Šต๋œ ์ž ์žฌ ๊ณต๊ฐ„์€ ํšจ์œจ์ ์ธ BRDF ํŽธ์ง‘ ๋ฐ ๋ณด๊ฐ„์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.
1.
BRDF ์ค‘์š” ์ƒ˜ํ”Œ๋ง: ๋ชฌํ…Œ ์นด๋ฅผ๋กœ ๋ Œ๋”๋ง์˜ ๋น ๋ฅธ ์ˆ˜๋ ด์„ ์œ„ํ•ด ์ค‘์š” ์ƒ˜ํ”Œ๋ง์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค. ๋ณธ ์—ฐ๊ตฌ๋Š” NICE(Non-linear Independent Components Estimation)๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋Œ€์ƒ ๋ถ„ํฌ์™€ ๋ถ„ํ•ด๋œ ๋ถ„ํฌ(factorized distribution) ์‚ฌ์ด์˜ ๋น„์„ ํ˜• ๊ฒฐ์ •๋ก ์  ๋ณ€ํ™˜์„ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค. ์ฝ”์‚ฌ์ธ ๊ฐ€์ค‘ BRDF๋ฅผ ์ •๊ทœํ™”ํ•˜์—ฌ ๋ชฉํ‘œ PDF๋ฅผ ์–ป๊ณ , NICE๋Š” ์™ธํ–ฅ ๋ฐฉํ–ฅ ฯ‰o\omega_o์™€ BRDF ์ž ์žฌ ๋ฒกํ„ฐ zz๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ์ž…์‚ฌ ๋ฐฉํ–ฅ ฯ‰i\omega_i๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ค‘์š” ์ƒ˜ํ”Œ๋งํ•ฉ๋‹ˆ๋‹ค. ์ค‘๊ฐ„ ๋ฒกํ„ฐ(halfway vector) ๋ฐฉํ–ฅ์„ ์ƒ˜ํ”Œ๋งํ•˜๋ฉฐ, ๋„คํŠธ์›Œํฌ๋Š” ์•ฝ 37KB์˜ ์ €์žฅ ๊ณต๊ฐ„๊ณผ 8ms์˜ ์ƒ˜ํ”Œ ์ƒ์„ฑ ์‹œ๊ฐ„์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค. ์ค‘์š” ์ƒ˜ํ”Œ๋ง ๊ฒฐ๊ณผ๋Š” ์ฝ”์‚ฌ์ธ ๊ฐ€์ค‘ ์ƒ˜ํ”Œ๋ง์ด๋‚˜ GGX ๊ธฐ๋ฐ˜ ์ƒ˜ํ”Œ๋ง๋ณด๋‹ค ๋…ธ์ด์ฆˆ๊ฐ€ ์ ๊ณ  ์šฐ์ˆ˜ํ•œ ๋ Œ๋”๋ง ํ’ˆ์งˆ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
2.
BRDF ๋ณด๊ฐ„ ๋ฐ ํŽธ์ง‘: ๋‘ BRDF์˜ ์ž ์žฌ ๋ฒกํ„ฐ๋ฅผ ์„ ํ˜• ํ˜ผํ•ฉํ•˜์—ฌ ๋ณด๊ฐ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋ฐ˜์‚ฌ ํ•˜์ด๋ผ์ดํŠธ์˜ ๋ชจ์–‘๊ณผ ํ™•์‚ฐ ๋ฐ˜์‚ฌ ๊ฐ•๋„๋ฅผ ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ๋ณ€ํ™”์‹œํ‚ต๋‹ˆ๋‹ค. ๋˜ํ•œ ์ž ์žฌ ๊ณต๊ฐ„์˜ ์˜๋ฏธ๋ก ์  ๊ตฌ์กฐ๋ฅผ ํ™œ์šฉํ•˜์—ฌ "ํŠน์„ฑ ๋ฒกํ„ฐ(trait vectors)"๋ฅผ ๋”ฐ๋ผ BRDF๋ฅผ ํŽธ์ง‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. SVM(Support Vector Machine)์œผ๋กœ 13๊ฐ€์ง€ ์ง€๊ฐ์  ํŠน์„ฑ(์˜ˆ: ๊ณ ๋ฌด, ๊ธˆ์†์„ฑ, ์ง๋ฌผ ๋“ฑ)์— ๋Œ€ํ•œ ํ•˜์ดํผํ”Œ๋ ˆ์ธ์„ ๊ตฌํ•˜๊ณ , ์ด ํ‰๋ฉด์˜ ๋ฒ•์„  ๋ฐฉํ–ฅ(ํŠน์„ฑ ๋ฒกํ„ฐ)์„ ๋”ฐ๋ผ ์ด๋™ํ•˜์—ฌ ์žฌ๋ฃŒ ์™ธ๊ด€์˜ ๋ณ€ํ™”๋ฅผ ๊ด€์ฐฐํ•ฉ๋‹ˆ๋‹ค.
๊ฒฐ๋ก 
๋ณธ ์—ฐ๊ตฌ๋Š” NPs๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ธก์ •๋œ BRDF๋ฅผ ์œ„ํ•œ ์ƒˆ๋กญ๊ณ  ์••์ถ•์ ์ธ ํ‘œํ˜„์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค. BRDF๋ฅผ ์ด์‚ฐ์  ํ–‰๋ ฌ์ด ์•„๋‹Œ ์—ฐ์† ํ•จ์ˆ˜๋กœ ์ฒ˜๋ฆฌํ•จ์œผ๋กœ์จ, ์‹ ๊ฒฝ๋ง์œผ๋กœ ๋ณต์žกํ•œ ๋น„์„ ํ˜• ๊ด€๊ณ„๋ฅผ ํ•™์Šตํ•˜์—ฌ ์ „๋ก€ ์—†๋Š” ์••์ถ•์„ฑ๊ณผ ์ •ํ™•๋„๋ฅผ ๋‹ฌ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ณธ ๋ฐฉ๋ฒ•์€ ์ž์„ธํ•œ ํ†ต๊ณ„์™€ ์ตœ์‹  ๋ฐฉ๋ฒ•๊ณผ์˜ ๋น„๊ต๋ฅผ ํ†ตํ•ด ํšจ์œจ์„ฑ์„ ์ž…์ฆํ–ˆ์œผ๋ฉฐ, BRDF ์••์ถ• ๋ฐ ํŽธ์ง‘์ด๋ผ๋Š” ๋‘ ๊ฐ€์ง€ ์‘์šฉ์„ ํ†ตํ•ด ์‹ค์šฉ์„ฑ์„ ๋ณด์—ฌ์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค. ํ›„์ฒ˜๋ฆฌ ํ•™์Šต๋œ ํ•˜์ดํผ๋„คํŠธ์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์†Œ์ˆ˜์˜ BRDF๋„ ํšจ์œจ์ ์œผ๋กœ ์••์ถ•ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ค‘์š” ์ƒ˜ํ”Œ๋ง ์‹ ๊ฒฝ๋ง๊ณผ ํ†ตํ•ฉ๋œ ๋Œ€ํ™”ํ˜• ํŽธ์ง‘ ๋„๊ตฌ๋Š” BRDF ํƒ์ƒ‰๊ณผ ์กฐ์ž‘์„ ์šฉ์ดํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

4. ๋…ผ๋ฌธ ๋น„๊ต

Paper (Year)
RT-NAM (2024)
Deep Appearance Prefiltering (2019)
NeuMIP (2022)
Neural Layered BRDFs
Unified Neural Encoding of BTFs
NPs for Measured BRDFs
Target Representation
BRDF + unified latent textures
MBTF (volumetric/SVO)
MBTF (7D query)
Layered BRDF (latents)
BTF (imageโ€‘based, measured)
BRDF (measured)
LOD/Filtering
โœ… MIP-hierarchy
โœ… multi-scale SVO
โœ… neural pyramid
โš ๏ธ
โœ… (latent filterable)
โš ๏ธ
Importance Sampling
โœ… microfacet-prior PDF
โŒ
โŒ (๊ธฐ๋ณธ)
โš ๏ธ (PDF proxy)
โŒ
โœ… (learned sampler)
Anisotropy(์ด๋ฐฉ์„ฑ)
โœ…
โœ…
โœ…
โš ๏ธ (isotropic focus)
โš ๏ธ
โš ๏ธ
Layered/Graph Bake
โœ… bake material graphs
โŒ
โŒ
โœ… (latent-space layering)
โŒ
โŒ
Normals/Parallax/Disp.
Normals โœ… / Parallax โš ๏ธ / Displacement. โŒ
Normals โœ… / Parallax โœ… / Displacement. โš ๏ธ(volumetric)
Normals โœ… / Parallax โœ…(neural offset) / Displacement. โŒ
Normals โš ๏ธ / Parallax โŒ / Displacement. โŒ
Normals(implicit) / Parallax โŒ / Displacement. โŒ
Normals โŒ / Parallax โŒ / Displacement. โŒ
Transmission(ํˆฌ๊ณผ)
โŒ
โš ๏ธ
โš ๏ธ
โŒ
โŒ
โŒ
Encoder/Decoder Style
Encoderโ†’Latent Tex โ†’ 2 Decoders
๐Ÿ’ก Shared E/D for all voxels
Encoder-less (latent pyramids + MLP)
Shared decoder + layering net
Autoencoder (shared latent)
Neural Process (g,l) + hypernet
Latent Storage
c channels / texel
latent per voxel
๐Ÿ’ก Latent per texel in MIP pyramid
latent per material/texel
latent per material
7D latent per BRDF
Training Time (per material)
~4โ€“5 h
scene-level hours~days
๐Ÿ’ก Relatively fast
minutes per BRDF fit
dataset-wise
dataset-wise
Runtime Speed vs Ref
Shading ร—2.3โ€“9.1, Frame ร—1.6โ€“4.1
scaleโ‰ค5 faster; fine scales slower
renderer-dependent
faster than MC layering
n/a
n/a
Physical Guarantees (Energy/Reciprocity)
Energy โš ๏ธ / Reciprocity โš ๏ธ
Energy โš ๏ธ
Energy โš ๏ธ
Energy โš ๏ธ
Energy โš ๏ธ
Energy โš ๏ธ
Limitations
coarser MIP softening, Fresnel grazing error, training stability
voxel boundary artifacts, sharp glints blur, precompute heavy
specular MIS ๋ถ€์กฑ, glinty blur, transparency N/A
recursion error acc., isotropy focus, BTDF ๋ฏธํฌํ•จ
per-material overfit ๋ฐฉ์ง€, sampling ๋ฏธ์ง€์›
requires dataset, editing via latents only
Primary Use Case
Real-time film-quality
Offline prefiltering/LoD
Multi-scale neural materials
Layered BRDF eval
Measured BTF reconstruction
Compression + IS + edit

5. Practical Application Scenarios from Research & Development Perspective

๐Ÿ’ก
"๋„ˆ๋ฌด ํฌ๊ณ , ๋„ˆ๋ฌด ๋А๋ฆฌ๊ณ , ๋„ˆ๋ฌด ๋ณต์žกํ•œ" ํ˜„์‹ค์˜ ์žฌ์งˆ(Material) ๋ฐ์ดํ„ฐ๋ฅผ "์ž‘๊ณ , ๋น ๋ฅด๊ณ , ํšจ์œจ์ ์ธ" ๋”ฅ๋Ÿฌ๋‹ ๋ชจ๋ธ๋กœ ์••์ถ•(ํ‘œํ˜„)ํ•ด์„œ ์‹ค์‹œ๊ฐ„ ๋ Œ๋”๋ง์— ์“ฐ์ž!

1. RT-NAM (Real-Time Neural Appearance Models, 2024)

์ด ๊ธฐ์ˆ ์€ '๋ณต์žกํ•œ ์˜คํ”„๋ผ์ธ ์žฌ์งˆ์„ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๊ฐ€์ ธ์˜ค๋Š” ์ตœ์ข… ๋‹จ๊ณ„'์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค. ํ˜„์กดํ•˜๋Š” ๊ฒŒ์ž„ ์—”์ง„์ด๋‚˜ ์‹ค์‹œ๊ฐ„ ๋ Œ๋”๋ง ํ™˜๊ฒฝ์— ๊ฐ€์žฅ ์ง์ ‘์ ์œผ๋กœ ํ†ตํ•ฉ๋  ์ˆ˜ ์žˆ๋Š” ์‹ค์šฉ์ ์ธ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค.
โ€ข
ํ™œ์šฉ ๋ฐฉ๋ฒ•
1.
Substance Designer, Blender ๋“ฑ์—์„œ ์˜ํ™”๋‚˜ VFX ์ˆ˜์ค€์˜ ๋ณต์žกํ•œ ๋‹ค์ธต(Multi-layer) ๋จธํ‹ฐ๋ฆฌ์–ผ์„ ์ œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. (์˜ˆ: ์—ฌ๋Ÿฌ ์žฅ์˜ ํ…์Šค์ฒ˜์™€ ๋ณต์žกํ•œ ๋…ธ๋“œ๋กœ ๊ตฌ์„ฑ)
2.
์ด ๋จธํ‹ฐ๋ฆฌ์–ผ์„ RT-NAM์˜ ํ•™์Šต ํŒŒ์ดํ”„๋ผ์ธ์— ์ž…๋ ฅํ•˜์—ฌ '๋ฒ ์ดํ‚น(Baking)'ํ•ฉ๋‹ˆ๋‹ค.
3.
๊ฒฐ๊ณผ๋ฌผ๋กœ ๋‚˜์˜จ ๊ณ ๋„๋กœ ์••์ถ•๋œ 'ํ†ตํ•ฉ ์ž ์žฌ ํ…์Šค์ฒ˜(Unified Latent Texture)'์™€ ์‹ ๊ฒฝ๋ง ์…ฐ์ด๋”๋ฅผ ์–ป์Šต๋‹ˆ๋‹ค.
4.
์ด ๊ฒฐ๊ณผ๋ฌผ์„ ์–ธ๋ฆฌ์–ผ, ์œ ๋‹ˆํ‹ฐ ๊ฐ™์€ ๊ฒŒ์ž„ ์—”์ง„์— ๊ทธ๋Œ€๋กœ ๊ฐ€์ ธ์™€ ๊ณ ํ’ˆ์งˆ ์žฌ์งˆ์„ ๋งค์šฐ ๊ฐ€๋ณ๊ฒŒ ๋ Œ๋”๋งํ•ฉ๋‹ˆ๋‹ค.
โ€ข
๊ตฌ์ฒด์ ์ธ ์˜ˆ์‹œ
โ—ฆ
AAA๊ธ‰ ๊ฒŒ์ž„ ์บ๋ฆญํ„ฐ: ๊ธฐ์‚ฌ์˜ ๊ฐ‘์˜ท์— ํ‘œํ˜„๋œ ๋…น, ํ ์ง‘, ๋จผ์ง€, ์ฝ”ํŒ… ํšจ๊ณผ ๋“ฑ์„ ์ˆ˜๋งŽ์€ ํ…์Šค์ฒ˜ ๋Œ€์‹  ๋‹จ ํ•œ ์žฅ์˜ ์ž ์žฌ ํ…์Šค์ฒ˜๋กœ ๊ตฌํ˜„ํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ์™€ ์„ฑ๋Šฅ์„ ํš๊ธฐ์ ์œผ๋กœ ์ ˆ์•ฝํ•ฉ๋‹ˆ๋‹ค.
โ—ฆ
์ž๋™์ฐจ ์‹ค์‹œ๊ฐ„ ์‹œ๊ฐํ™”: ๋ณด๋Š” ๊ฐ๋„์— ๋”ฐ๋ผ ์ƒ‰์ด ๋ฏธ๋ฌ˜ํ•˜๊ฒŒ ๋ณ€ํ•˜๋Š” ๋‹ค์ธต ์ž๋™์ฐจ ํŽ˜์ธํŠธ๋ฅผ ์›น์ด๋‚˜ ์•ฑ์—์„œ ์‚ฌ์šฉ์ž๊ฐ€ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋Œ๋ ค๋ณด๋ฉฐ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ์ฝ˜ํ…์ธ ๋ฅผ ์ œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.
โ—ฆ
๊ฑด์ถ• ์‹œ๊ฐํ™”: ์˜ค๋ž˜๋œ ๊ฐ€์ฃฝ ์†ŒํŒŒ์˜ ๋‹ณ์€ ๋А๋‚Œ์ด๋‚˜ ๊ธˆ์†์˜ ๋ถ€์‹(Patina) ํšจ๊ณผ์ฒ˜๋Ÿผ ์‚ฌ์‹ค์ ์ธ ์žฌ์งˆ์„ VR/AR ํ™˜๊ฒฝ์—์„œ ๋Š๊น€ ์—†์ด ํƒ์ƒ‰ํ•ฉ๋‹ˆ๋‹ค.
โ€ข
๋ฏธ๋ž˜ ๊ฐ€๋Šฅ์„ฑ์˜ํ™” ํ’ˆ์งˆ์˜ ์—์…‹์„ ๊ฒŒ์ž„์—์„œ ์‚ฌ์šฉํ•˜๋Š” '์‹œ๋„ค๋งˆํ‹ฑ ๋ฆฌ์–ผ๋ฆฌ์ฆ˜'์„ ๋Œ€์ค‘ํ™”ํ•  ํ•ต์‹ฌ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. ๋ณต์žกํ•œ ๋จธํ‹ฐ๋ฆฌ์–ผ์„ ๊ฐ€๋ณ๊ฒŒ ์••์ถ•ํ•˜๋Š” ์‚ฐ์—… ํ‘œ์ค€ ํฌ๋งท์œผ๋กœ ๋ฐœ์ „ํ•˜์—ฌ, ๋‹ค์–‘ํ•œ ํˆด๊ณผ ์—”์ง„ ๊ฐ„์˜ ์žฌ์งˆ ํ˜ธํ™˜์„ฑ์„ ๋†’์ผ ๊ฐ€๋Šฅ์„ฑ์ด ํฝ๋‹ˆ๋‹ค.

2. Deep Appearance Prefiltering (2019)

์ด ๊ธฐ์ˆ ์€ ๊ฐœ๋ณ„ ์žฌ์งˆ๋ณด๋‹ค๋Š” '๊ฑฐ๋Œ€ํ•œ 3D ํ™˜๊ฒฝ ์ „์ฒด์˜ ์™ธํ˜•์„ ํ†ต์งธ๋กœ ๊ตฌ์›Œ๋‚ด๋Š”' ์•ผ์‹ฌ ์ฐฌ ์ ‘๊ทผ๋ฒ•์ž…๋‹ˆ๋‹ค.
โ€ข
ํ™œ์šฉ ๋ฐฉ๋ฒ•
1.
๋„์‹œ, ์ˆฒ ๋“ฑ ๋งค์šฐ ๋ณต์žกํ•˜๊ณ  ๊ฑฐ๋Œ€ํ•œ 3D ์”ฌ(Scene) ์ „์ฒด๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
2.
์˜คํ”„๋ผ์ธ์—์„œ ๋ฉฐ์น ์— ๊ฑธ์ณ ์ด ์”ฌ์˜ ๋ชจ๋“  ์ง€์˜ค๋ฉ”ํŠธ๋ฆฌ์™€ ์žฌ์งˆ ์ •๋ณด๋ฅผ ๋‹ค์ค‘ ์Šค์ผ€์ผ ๋ณต์…€(SVO) ๋ฐ์ดํ„ฐ๋กœ ์‚ฌ์ „ ๊ณ„์‚ฐ(Prefiltering)ํ•ฉ๋‹ˆ๋‹ค.
3.
๋Ÿฐํƒ€์ž„ ์‹œ์—๋Š” ์›๋ณธ 3D ๋ฐ์ดํ„ฐ ์—†์ด, ์ด ๊ฐ€๋ฒผ์šด ๋ณต์…€ ๋ฐ์ดํ„ฐ๋งŒ์„ ํŠน์ˆ˜ํ•œ ๋ Œ๋”๋Ÿฌ(๋น” ํŠธ๋ ˆ์ด์„œ)๋กœ ์ฝ์–ด์™€ ํ™”๋ฉด์„ ๊ทธ๋ฆฝ๋‹ˆ๋‹ค.
โ€ข
๊ตฌ์ฒด์ ์ธ ์˜ˆ์‹œ
โ—ฆ
AR/VR ๋„์‹œ ์ฒดํ—˜: ์Šค๋งˆํŠธํฐ ์นด๋ฉ”๋ผ๋กœ ๋„์‹œ๋ฅผ ๋น„์ถ”๋ฉด, ์‹ค์ œ ๊ฑด๋ฌผ ์œ„์— ๊ณ ํ’ˆ์งˆ์˜ ๊ฐ€์ƒ ๊ฑด๋ฌผ์ด ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๊ฒน์ณ ๋ณด์ด๋Š” AR ์•ฑ์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๋ฌด๊ฑฐ์šด 3D ๋ชจ๋ธ์„ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๊ณ„์‚ฐํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.
โ—ฆ
๋””์ง€ํ„ธ ํŠธ์œˆ ๋ฐ ๋ฌธํ™”์œ ์‚ฐ ์•„์นด์ด๋น™: ๊ฑฐ๋Œ€ํ•œ ๊ณต์žฅ ์„ค๋น„๋‚˜ ์†Œ์‹ค ์œ„ํ—˜์ด ์žˆ๋Š” ๋ฌธํ™”์œ ์‚ฐ ์ „์ฒด๋ฅผ ๊ทน๋„๋กœ ์ƒ์„ธํ•˜๊ฒŒ ์Šค์บ”ํ•˜์—ฌ, ์‚ฌ์šฉ์ž๊ฐ€ ์›น์ด๋‚˜ VR์—์„œ ์ž์œ ๋กญ๊ฒŒ ํƒํ—˜ํ•  ์ˆ˜ ์žˆ๋Š” ๋””์ง€ํ„ธ ์•„์นด์ด๋ธŒ๋ฅผ ๊ตฌ์ถ•ํ•ฉ๋‹ˆ๋‹ค.
โ€ข
๋ฏธ๋ž˜ ๊ฐ€๋Šฅ์„ฑํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ๋ Œ๋”๋ง์ด๋‚˜ ์ŠคํŠธ๋ฆฌ๋ฐ ์„œ๋น„์Šค์— ๋งค์šฐ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์„œ๋ฒ„์—์„œ ๋ฏธ๋ฆฌ ๋ชจ๋“  ๊ณ„์‚ฐ์„ ๋๋‚ด๊ณ , ์‚ฌ์šฉ์ž๋Š” ๊ฐ€๋ฒผ์šด ๋ฐ์ดํ„ฐ๋งŒ ์ŠคํŠธ๋ฆฌ๋ฐ ๋ฐ›์•„ ๊ณ ํ’ˆ์งˆ ๊ทธ๋ž˜ํ”ฝ์„ ์ฒดํ—˜ํ•˜๋Š” ๋ฏธ๋ž˜ํ˜• ํ”Œ๋žซํผ์˜ ๊ธฐ๋ฐ˜ ๊ธฐ์ˆ ์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

3. NeuMIP (Multi-Resolution Neural Materials, 2022)

์ด ๊ธฐ์ˆ ์€ '์‹ค์ œ ์ง€์˜ค๋ฉ”ํŠธ๋ฆฌ ์—†์ด๋„ ๋ฏธ์„ธํ•œ ์ž…์ฒด๊ฐ๊ณผ ๊นŠ์ด๊ฐ์„ ํ‘œํ˜„ํ•˜๋Š” ์ „๋ฌธ๊ฐ€'์ž…๋‹ˆ๋‹ค. ํŠนํžˆ ํ‘œ๋ฉด์˜ ์‹œ์ฐจ(Parallax) ํšจ๊ณผ์— ํŠนํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
ํ™œ์šฉ ๋ฐฉ๋ฒ•
1.
์นดํŽซ์˜ ํ„ธ, ์ด๋ผ ๋‚€ ๋Œ, ์งœ์ž„์ด ๊ตต์€ ์ง๋ฌผ์ฒ˜๋Ÿผ ๋ฏธ์„ธํ•œ ์ง€์˜ค๋ฉ”ํŠธ๋ฆฌ๊ฐ€ ์ค‘์š”ํ•œ ์žฌ์งˆ์„ ์ค€๋น„ํ•ฉ๋‹ˆ๋‹ค.
2.
์ด ์žฌ์งˆ์„ ์—ฌ๋Ÿฌ ๊ฐ๋„์—์„œ ๋ Œ๋”๋งํ•˜์—ฌ ํ•™์Šต ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
3.
NeuMIP ๋ชจ๋ธ์„ ํ•™์Šต์‹œ์ผœ '์‹ ๊ฒฝ ํ…์Šค์ฒ˜ ํ”ผ๋ผ๋ฏธ๋“œ'๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
4.
๊ณ ํ’ˆ์งˆ ์˜คํ”„๋ผ์ธ ๋ Œ๋”๋Ÿฌ์—์„œ ํ‰ํ‰ํ•œ ๋ฉด์— ์ด ์žฌ์งˆ์„ ์ ์šฉํ•˜๋ฉด, '์‹ ๊ฒฝ ์˜คํ”„์…‹' ๊ธฐ์ˆ ์ด ์ž‘๋™ํ•˜์—ฌ ์‹œ์ ์— ๋”ฐ๋ผ ํ‘œ๋ฉด์ด ์‹ค์ œ๋กœ ์šธํ‰๋ถˆํ‰ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.
โ€ข
๊ตฌ์ฒด์ ์ธ ์˜ˆ์‹œ
โ—ฆ
์‹ค์‚ฌ ์˜ํ™”์˜ ์ง๋ฌผ ํด๋กœ์ฆˆ์—…: ์บ๋ฆญํ„ฐ๊ฐ€ ์ž…์€ ์Šค์›จํ„ฐ์˜ ํ„ธ์‹ค ์งœ์ž„์ด๋‚˜ ์นดํŽซ์˜ ์„ฌ์œ  ํ•œ ์˜ฌ ํ•œ ์˜ฌ์ด ์‚ด์•„์žˆ๋Š” ๋“ฏํ•œ ๊ทน์‚ฌ์‹ค์ ์ธ ์žฅ๋ฉด์„ ๋ Œ๋”๋งํ•ฉ๋‹ˆ๋‹ค.
โ—ฆ
์ œํ’ˆ ๊ด‘๊ณ : ๊ฑฐ์นœ ์งˆ๊ฐ์˜ ์Šคํ”ผ์ปค ๊ทธ๋ฆด์ด๋‚˜ ๊ฐ€์ฃฝ ์ œํ’ˆ์˜ ํ‘œ๋ฉด์„ ๋งค์šฐ ์ƒ์„ธํ•˜๊ฒŒ ๋ณด์—ฌ์ฃผ๋Š” ๊ณ ํ’ˆ์งˆ ์ œํ’ˆ ๊ด‘๊ณ  ์ด๋ฏธ์ง€๋ฅผ ์ œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.
โ€ข
๋ฏธ๋ž˜ ๊ฐ€๋Šฅ์„ฑ๋ฌด๊ฑฐ์šด ๋ณ€์œ„ ๋งคํ•‘(Displacement Mapping)์„ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ•๋ ฅํ•œ ๋Œ€์•ˆ์ž…๋‹ˆ๋‹ค. '์‹ ๊ฒฝ ์˜คํ”„์…‹' ์•„์ด๋””์–ด๋Š” ๋”์šฑ ๋ฐœ์ „ํ•˜์—ฌ, ๋ฏธ๋ž˜์—๋Š” ์‹ค์‹œ๊ฐ„ ๋ Œ๋”๋ง์—์„œ๋„ ์ €๋น„์šฉ์œผ๋กœ ๊ณ ํ’ˆ์งˆ์˜ ์ž…์ฒด๊ฐ์„ ํ‘œํ˜„ํ•˜๋Š” ๊ธฐ์ˆ ๋กœ ์ง„ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

4. Neural Layered BRDFs (2021)

์ด ๊ธฐ์ˆ ์€ '์žฌ์งˆ ๊ณผํ•™์ž์˜ ๋ณต์žกํ•œ ๊ณ„์‚ฐ์„ ๋Œ€์‹ ํ•ด์ฃผ๋Š” AI ๊ณ„์‚ฐ๊ธฐ'์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋‹ค์ธต ์žฌ์งˆ์˜ ์ตœ์ข… ๊ฒฐ๊ณผ๋ฅผ ์˜ˆ์ธกํ•˜๋Š” ๋ฐ ํŠนํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
ํ™œ์šฉ ๋ฐฉ๋ฒ•
1.
์žฌ์งˆ ์ œ์ž‘ ํˆด์—์„œ ์—ฌ๋Ÿฌ ์žฌ์งˆ ์ธต(์˜ˆ: ๊ธˆ์† ์œ„์— ํˆฌ๋ช… ์ฝ”ํŒ…)์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.
2.
๊ธฐ์กด์—๋Š” ์ด ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋ ค๋ฉด ๋…ธ์ด์ฆˆ๊ฐ€ ๋งŽ์€ ๋А๋ฆฐ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ๋Œ๋ ค์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค.
3.
๋Œ€์‹ , ๊ฐ ์ธต์˜ ์ž ์žฌ ๋ฒกํ„ฐ๋ฅผ ์ด ์‹ ๊ฒฝ๋ง์— ์ž…๋ ฅํ•˜๋ฉด, ์ฆ‰์‹œ ๋…ธ์ด์ฆˆ ์—†์ด ๊นจ๋—ํ•œ ์ตœ์ข… ๊ฒฐ๊ณผ๊ฐ’์„ ์˜ˆ์ธกํ•ด ์ค๋‹ˆ๋‹ค.
โ€ข
๊ตฌ์ฒด์ ์ธ ์˜ˆ์‹œ
โ—ฆ
์ฐจ์„ธ๋Œ€ ์žฌ์งˆ ๋””์ž์ธ ํˆด: ์•„ํ‹ฐ์ŠคํŠธ๊ฐ€ ์ฝ”ํŒ…์˜ ๋‘๊ป˜๋‚˜ ๊ฑฐ์น ๊ธฐ๋ฅผ ์Šฌ๋ผ์ด๋”๋กœ ์กฐ์ ˆํ•  ๋•Œ, ๊ทธ ๊ฒฐ๊ณผ๊ฐ€ ๋ฌผ๋ฆฌ์ ์œผ๋กœ ์ •ํ™•ํ•˜๋ฉด์„œ๋„ ์‹ค์‹œ๊ฐ„์œผ๋กœ ํ”„๋ฆฌ๋ทฐ์— ๋ฐ˜์˜๋˜๋Š” ์žฌ์งˆ ์ €์ž‘ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.
โ—ฆ
๊ด‘ํ•™ ์‹œ๋ฎฌ๋ ˆ์ด์…˜: ๋ Œ์ฆˆ ์ฝ”ํŒ…์ด๋‚˜ ํŠน์ˆ˜ ํ•„๋ฆ„์ฒ˜๋Ÿผ ์—ฌ๋Ÿฌ ์–‡์€ ์ธต์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ์žฌ๋ฃŒ์˜ ๊ด‘ํ•™์  ํŠน์„ฑ์„ ๋น ๋ฅด๊ฒŒ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ํ•˜๋Š” ๊ณผํ•™ ์—ฐ๊ตฌ์— ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค.
โ€ข
๋ฏธ๋ž˜ ๊ฐ€๋Šฅ์„ฑ'์ž ์žฌ ๊ณต๊ฐ„์—์„œ์˜ ์žฌ์งˆ ์—ฐ์‚ฐ(BRDF Algebra)'์ด๋ผ๋Š” ๊ฐœ๋…์€ ๋งค์šฐ ํ˜์‹ ์ ์ž…๋‹ˆ๋‹ค. ์žฌ์งˆ์„ ๋”ํ•˜๊ณ  ๋นผ๊ณ  ์„ž๋Š” ๋“ฑ์˜ ์ฐฝ์˜์ ์ธ ์ž‘์—…์ด ๋ฌผ๋ฆฌ ๋ฒ•์น™์„ ์ง€ํ‚ค๋ฉด์„œ๋„ ์ง๊ด€์ ์œผ๋กœ ์ด๋ฃจ์–ด์ง€๋Š” ์ƒˆ๋กœ์šด ๋ฐฉ์‹์˜ ์žฌ์งˆ ๋””์ž์ธ ์›Œํฌํ”Œ๋กœ์šฐ๋ฅผ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

5 & 6. Unified Neural Encoding & NPs for Measured BRDFs

์ด ๋‘ ๊ธฐ์ˆ ์€ 'ํ˜„์‹ค ์„ธ๊ณ„์˜ ๋ชจ๋“  ์žฌ์งˆ์„ ๋””์ง€ํ„ธ ๋„์„œ๊ด€์— ๋ณด๊ด€ํ•˜๋Š” ์‚ฌ์„œ' ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ์‹ค์ œ ์žฌ์งˆ์˜ ์ธก์ • ๋ฐ์ดํ„ฐ๋ฅผ ์••์ถ•ํ•˜๊ณ , ํŽธ์ง‘ํ•˜๊ณ , ์žฌ์ฐฝ์กฐํ•˜๋Š” ๋ฐ ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค.
โ€ข
ํ™œ์šฉ ๋ฐฉ๋ฒ•
1.
ํŠน์ˆ˜ ์žฅ๋น„๋กœ ์‹ค์ œ ์ฒœ, ๊ฐ€์ฃฝ, ํ”Œ๋ผ์Šคํ‹ฑ, ๊ธˆ์† ์ƒ˜ํ”Œ์˜ ์™ธํ˜• ๋ฐ์ดํ„ฐ๋ฅผ ์Šค์บ”ํ•ฉ๋‹ˆ๋‹ค. (์ด ์›๋ณธ ๋ฐ์ดํ„ฐ๋Š” ์šฉ๋Ÿ‰์ด ๋งค์šฐ ํฝ๋‹ˆ๋‹ค.)
2.
์ด ์‹ ๊ฒฝ๋ง ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•ด ๊ฐ ์žฌ์งˆ ์ƒ˜ํ”Œ์„ ์•„์ฃผ ์ž‘์€ ํฌ๊ธฐ์˜ '์ž ์žฌ ๋ฒกํ„ฐ(Latent Vector)'๋กœ ์••์ถ•ํ•ฉ๋‹ˆ๋‹ค.
3.
์ด์ œ ์ˆ˜์ฒœ ๊ฐœ์˜ ์žฌ์งˆ์ด ๋‹ด๊ธด ๊ฐ€๋ฒผ์šด ๋””์ง€ํ„ธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์™„์„ฑ๋ฉ๋‹ˆ๋‹ค. ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—์„œ ์žฌ์งˆ์„ ๊ฒ€์ƒ‰ํ•˜๊ณ , ์„ž์–ด์„œ ์ƒˆ๋กœ์šด ์žฌ์งˆ์„ ๋งŒ๋“ค ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
๊ตฌ์ฒด์ ์ธ ์˜ˆ์‹œ
โ—ฆ
๋””์ง€ํ„ธ ํŒจ์…˜/์ž๋™์ฐจ ์‚ฐ์—…: ์‹ค์ œ ์›๋‹จ๊ณผ ํŽ˜์ธํŠธ ์ƒ˜ํ”Œ์„ ์Šค์บ”ํ•˜์—ฌ ๋งŒ๋“  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—์„œ ๋””์ž์ด๋„ˆ๊ฐ€ ์žฌ์งˆ์„ ๊ณ ๋ฅด๊ณ , "A ์›๋‹จ๊ณผ B ์›๋‹จ์˜ ํŠน์ง•์„ 50:50์œผ๋กœ ์„ž์€ ์ƒˆ๋กœ์šด ๋А๋‚Œ"์„ ์ฆ‰์‹œ ์‹œ๊ฐํ™”ํ•ฉ๋‹ˆ๋‹ค.
โ—ฆ
์ „์ž ์ƒ๊ฑฐ๋ž˜: ์˜จ๋ผ์ธ ์‡ผํ•‘๋ชฐ์—์„œ ๊ฐ€๋ฐฉ์ด๋‚˜ ์‹ ๋ฐœ ๊ฐ™์€ ์ œํ’ˆ์„ ์„ ํƒํ•˜๊ณ , "๊ฐ€์ฃฝ ์ข…๋ฅ˜๋ฅผ ์ด๊ฑธ๋กœ ๋ฐ”๊พธ๋ฉด ์–ด๋–จ๊นŒ?"๋ฅผ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ํ•˜์—ฌ ์‹ค์ œ์™€ ๊ฑฐ์˜ ๊ฐ™์€ ๋ชจ์Šต์œผ๋กœ ๋ฏธ๋ฆฌ ํ™•์ธํ•˜๋Š” ๊ฐ€์ƒ ํ”ผํŒ…์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.
โ€ข
๋ฏธ๋ž˜ ๊ฐ€๋Šฅ์„ฑ์žฌ์งˆ ๋ฐ์ดํ„ฐ์˜ ํ‘œ์ค€ํ™”๋ฅผ ์ด๋Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฏธ๋ž˜์—๋Š” 3D ๋ชจ๋ธ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ '์žฌ์งˆ' ์ž์ฒด๋„ ํ•˜๋‚˜์˜ ์ž ์žฌ ๋ฒกํ„ฐ ํŒŒ์ผ๋กœ ๊ณต์œ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” "๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜์˜ ์žฌ์งˆ ๋””์ž์ธ" ์‹œ๋Œ€๋ฅผ ์—ฌ๋Š” ์ค‘์š”ํ•œ ๊ธฐ๋ฐ˜ ๊ธฐ์ˆ ์ด๋ฉฐ, AI๊ฐ€ ์ƒˆ๋กœ์šด ์žฌ์งˆ์„ ์ฐฝ์กฐํ•˜๋Š” ์—ฐ๊ตฌ๋กœ๋„ ์ด์–ด์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

6. Conclusion: RT-NAM

RT-NAM์€ ์˜ํ™” ์ˆ˜์ค€์˜ ๋ณต์žกํ•œ ์žฌ์งˆ์„ ์‹ค์‹œ๊ฐ„ ๊ฒŒ์ž„์—์„œ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ๋“ฑ์žฅํ•œ ํ˜์‹ ์ ์ธ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. ํ•ต์‹ฌ์€ AI๋ฅผ ์ด์šฉํ•ด ๋ฌด๊ฑฐ์šด ์žฌ์งˆ ๋ฐ์ดํ„ฐ๋ฅผ '๋ฒ ์ดํ‚น'ํ•˜์—ฌ ๊ฐ€๋ฒผ์šด 'ํ†ตํ•ฉ ์ž ์žฌ ํ…์Šค์ฒ˜'๋กœ ์••์ถ•ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ์••์ถ•๋œ ์žฌ์งˆ์€ ๊ฒŒ์ž„ ์—”์ง„์—์„œ '์‹ ๊ฒฝ ๋””์ฝ”๋”'๊ฐ€ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์œผ๋กœ ๋ Œ๋”๋งํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ์ˆ  ๋•๋ถ„์— ์••๋„์ ์ธ ์„ฑ๋Šฅ์œผ๋กœ ์˜ํ™” ๊ฐ™์€ ๋น„์ฃผ์–ผ์„ ๊ฒŒ์ž„์—์„œ ์ฆ๊ธธ ์ˆ˜ ์žˆ๊ฒŒ ๋˜์–ด, ์‹ค์‹œ๊ฐ„ ๊ทธ๋ž˜ํ”ฝ๊ณผ ์˜คํ”„๋ผ์ธ VFX์˜ ๊ฒฝ๊ณ„๋ฅผ ํ—ˆ๋ฌด๋Š” ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
LOD/๋ฉ”๋ชจ๋ฆฌ ๊ฐ•ํ™” (from NeuMIP): RT-NAM์˜ MIP-Map ๊ธฐ๋ฐ˜ LOD๋ฅผ NeuMIP์˜ ์‹ ๊ฒฝ ํ…์Šค์ฒ˜ ํ”ผ๋ผ๋ฏธ๋“œ์ฒ˜๋Ÿผ ๋” ๋ฐœ์ „์‹œ์ผœ, ๋ฉ”๋ชจ๋ฆฌ ํšจ์œจ๊ณผ ํ•„ํ„ฐ๋ง ํ’ˆ์งˆ์„ ํ•œ ๋‹จ๊ณ„ ๋Œ์–ด์˜ฌ๋ฆฝ๋‹ˆ๋‹ค.
โ€ข
์•ˆํ‹ฐ์—์ผ๋ฆฌ์–ด์‹ฑ/์ƒ˜ํ”Œ๋ง ์•ˆ์ •ํ™” (from DAP, LEADR): DAP์˜ ์‚ฌ์ „ ํ•„ํ„ฐ๋ง ๊ฐœ๋…์ด๋‚˜ LEADR ๊ฐ™์€ ์‹ ๊ฒฝ ๋ Œ๋”๋ง AA ๊ธฐ์ˆ ์„ ํ†ตํ•ฉํ•˜์—ฌ, ๋ฏธ์„ธํ•œ ํ…์Šค์ฒ˜๊ฐ€ ๋ฐ˜์ง์ด๊ฑฐ๋‚˜ ์ง€๊ธ€๊ฑฐ๋ฆฌ๋Š” ํ˜„์ƒ ์—†์ด ์•ˆ์ •์ ์ธ ์ด๋ฏธ์ง€๋ฅผ ํ™•๋ณดํ•ฉ๋‹ˆ๋‹ค.
โ€ข
ํ’ˆ์งˆ ์ƒํ•œ์„ /์ •ํ™•๋„ ํ–ฅ์ƒ (from Layered BRDFs, BTF Encoding): Neural Layered BRDFs์˜ ์ •๊ตํ•œ ๊ฐ๋„๋ณ„ ๋ฐ˜์‘์„ฑ์ด๋‚˜, BTF ์ธ์ฝ”๋”ฉ์˜ ์‚ฌ์‹ค์ ์ธ ์ธก์ • ๋ฐ์ดํ„ฐ ํ‘œํ˜„๋ ฅ์„ ํ•™์Šต ๊ณผ์ •์— ๋„์ž…ํ•˜์—ฌ, ์žฌ์งˆ์˜ ํ‘œํ˜„๋ ฅ๊ณผ ๋ฌผ๋ฆฌ์  ์ •ํ™•๋„๋ฅผ ๊ทนํ•œ์œผ๋กœ ๋†’์ž…๋‹ˆ๋‹ค.
โ€ข
๋ฐ์ดํ„ฐ ๋น„์šฉ ๊ฒฝ๊ฐ (from NPs): Neural Processes์˜ ๊ฐ•๋ ฅํ•œ ์••์ถ• ๊ธฐ์ˆ ์„ ํ™œ์šฉํ•˜์—ฌ, ์ž ์žฌ ํ…์Šค์ฒ˜์˜ ํฌ๊ธฐ๋ฅผ ๋”์šฑ ์ค„์—ฌ ์ €์žฅ ๊ณต๊ฐ„๊ณผ ์ „์†ก ๋น„์šฉ์„ ์ตœ์†Œํ™”ํ•ฉ๋‹ˆ๋‹ค.
ํ–ฅํ›„ ๊ณ ๋ฏผ ํ•ด๋ด์•ผ ํ•  ๋ถ€๋ถ„
1.
๋™์  ์กฐ๋ช… ์ผ๋ฐ˜ํ™” (Dynamic Illumination Generalization) ํ˜„์žฌ ๋ชจ๋ธ์€ ํŠน์ • ์กฐ๋ช… ํ™˜๊ฒฝ์— ๋งž์ถฐ '๋ฒ ์ดํ‚น'๋˜๋Š” ๊ฒฝํ–ฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์–ด๋–ค ์กฐ๋ช… ์กฐ๊ฑด์—์„œ๋„ ๋ฌผ๋ฆฌ์ ์œผ๋กœ ์ •ํ™•ํ•˜๊ฒŒ ๋ฐ˜์‘ํ•˜๋Š”, ์กฐ๋ช… ๋ณ€ํ™”์— ๊ฐ•๊ฑดํ•œ ๋ชจ๋ธ ๊ฐœ๋ฐœ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
2.
์‹œ๊ฐ„์  ์•ˆ์ •์„ฑ (Temporal Stability) ์• ๋‹ˆ๋ฉ”์ด์…˜์ด๋‚˜ ์นด๋ฉ”๋ผ ์ด๋™ ์‹œ, ํ”„๋ ˆ์ž„ ๊ฐ„ ๋ฏธ์„ธํ•œ ๋–จ๋ฆผ(flickering) ์—†์ด ์•ˆ์ •์ ์ธ ๊ฒฐ๊ณผ๋ฌผ์„ ๋ณด์žฅํ•˜๋Š” ๊ธฐ์ˆ ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.
3.
๋ฌผ๋ฆฌ ์ œ์•ฝ์„ ๋ฐ˜์˜ํ•œ ํ•ด์„ ๊ฐ€๋Šฅํ•œ ๋””์ฝ”๋”ฉ (Physically-Guided Interpretable Decoding) ํ˜„์žฌ์˜ ์‹ ๊ฒฝ ๋””์ฝ”๋”๋Š” '๋ธ”๋ž™๋ฐ•์Šค'์ฒ˜๋Ÿผ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์—๋„ˆ์ง€ ๋ณด์กด ๋ฒ•์น™ ๋“ฑ ๋ฌผ๋ฆฌ์  ์ œ์•ฝ์„ ๋””์ฝ”๋” ์„ค๊ณ„์— ์ง์ ‘ ๋ฐ˜์˜ํ•˜์—ฌ, ๊ฒฐ๊ณผ๋ฌผ์˜ ์‹ ๋ขฐ๋„๋ฅผ ๋†’์ด๊ณ  ์˜ˆ์ธก ๊ฐ€๋Šฅํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ์—ฐ๊ตฌ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.