Paper Information
Title: SonoWorld: From One Image to a 3D Audio-Visual Scene
Authors: Derong Jin, Xiyi Chen, Ming C. Lin, Ruohan Gao
Venue: CVPR 2026
Link: [Paper], [Project], [GitHub]

Teaser Image

Introduction

๊ธฐ์กด์˜ ๋ชฐ์ž…์ ์ธ 3D Scene์„ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•๋ก ๋“ค ๊ทธ๋ฆฌ๊ณ  ๊ธฐ๋ฒ•๋“ค์€ ์‚ฌ์‹ค์ ์ธ 3D world๋ฅผ single image๋กœ๋ถ€ํ„ฐ ๋งŒ๋“ค ์ˆ˜ ์žˆ์ง€๋งŒ, ์ด๋Š” ์ฒญ๊ฐ์ ์ธ ๊ฒฝํ—˜์€ ๊ฒฐ์—ฌ๋˜์–ด ์žˆ์–ด ์ธ์ง€์ ์œผ๋กœ ๋ถˆ์™„์ „ํ•˜๋‹ค๊ณ  ๋…ผ๋ฌธ์˜ ์ €์ž๋“ค์€ ์ฃผ์žฅํ•œ๋‹ค.

๊ทธ๋ž˜์„œ ๋…ผ๋ฌธ์˜ ์ €์ž๋“ค์€ single image๋กœ๋ถ€ํ„ฐ training free ๋ฐฉ์‹์œผ๋กœ ์ผ๊ด€์ ์ธ 3D Scene์„ ๋งŒ๋“œ๋Š” ๋™์‹œ์— ๊ณต๊ฐ„์ ์ธ sound field๋ฅผ ๋งŒ๋“ค์–ด user interaction๊นŒ์ง€ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•œ๋‹ค.

์ด๋ฅผ ์œ„ํ•ด์„œ 3๊ฐ€์ง€ challenge๊ฐ€ ์กด์žฌํ•œ๋‹ค:

  1. scene-level์˜ audio generation์€ ์  ์Œ์›(point source), ์˜์–ต ์Œ์›(areal source) ๊ทธ๋ฆฌ๊ณ  ์ฃผ๋ณ€ ํ™˜๊ฒฝ ์Œ์› ๋“ฑ ๋‹ค์–‘ํ•œ ํƒ€์ž…๊ณผ ์Šค์ผ€์ผ์˜ ์Œ์›์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด์•ผํ•œ๋‹ค.
  2. ์‹œ์Šคํ…œ์€ ๊ฐ์ฒด๊ฐ€ ๋ฌด์—‡์ธ์ง€, ์–ด๋–ป๊ฒŒ ๋“ค๋ฆฌ๋Š”์ง€, ์–ผ๋งˆ๋‚˜ ์‹œ๋„๋Ÿฌ์šธ์ง€ ๋“ฑ์„ ์œ ์ถ”ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ด์ œ์ ์ด๊ณ  ์˜๋ฏธ๋ก ์ ์ธ scene์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ํ•„์š”ํ•˜๋‹ค.
  3. ์ƒ์„ฑ๋œ ๋ชจ๋“  ์†Œ๋ฆฌ๋Š” ์ด๋ฏธ์ง€๋กœ๋ถ€ํ„ฐ ์ถ”๋ก ๋œ ํƒ€๋‹นํ•œ 3D ์œ„์น˜์— ์žˆ์–ด์•ผ ํ•˜๋ฉฐ, ์ธ์ง€์ ์œผ๋กœ ์‹ค์ œ์™€ ๊ฐ™์€ ๊ณต๊ฐ„์ ํšจ๊ณผ๋กœ ๋ Œ๋”๋ง๋˜์–ด์•ผ ํ•œ๋‹ค.

๊ด€๋ จ๋œ ์—ฐ๊ตฌ ๋ถ„์•ผ๋“ค์—์„œ๋Š” ์•„๋ž˜์™€ ๊ฐ™์€ ํ•œ๊ณ„์ ๋“ค์ด ์กด์žฌํ•œ๋‹ค(์—ฐ๊ตฌ ๋™ํ–ฅ ํ™•์ธ์ด ์•„๋‹ˆ๋ผ๋ฉด ๊ฑด๋„ˆ๋›ฐ์–ด๋„ ๋ฉ๋‹ˆ๋‹ค.):

  • ํ•ด๋‹น ๋…ผ๋ฌธ์€ ์ผ๊ด€์„ฑ ์žˆ๋Š” 360๋„ ํŒŒ๋…ธ๋ผ๋งˆ๋ฅผ outpaintingํ•˜๊ณ , depth alignment์™€ ๊ฐ€์šฐ์‹œ์•ˆ ์ตœ์ ํ™”๋ฅผ ํ†ตํ•ด ์ด๋ฅผ 3D ๋กœ liftingํ•˜์—ฌ Scene์„ ์™„์„ฑํ•˜๋Š” ๊ธฐ์กด์˜ Panoramic method๋ฅผ ๋”ฐ๋ผ๊ฐ€์ง€๋งŒ, ์‹œ๊ฐ ์ •๋ณด์™€ ํ•จ๊ป˜ spatial audio๋ฅผ ๊ณต๋™์œผ๋กœ ๋ชจ๋ธ๋งํ•œ๋‹ค๋Š” ์ ์—์„œ ์ฐจ๋ณ„ํ™”๋œ๋‹ค.
  • ๊ธฐ์กด ๊ณต๊ฐ„ ์Œํ–ฅ ์ƒ์„ฑ ๋ถ„์•ผ์—์„œ ์ง„ํ–‰๋œ ์—ฐ๊ตฌ์ธ Sonic4D์˜ ๊ฒฝ์šฐ ๊ณต๊ฐ„ ์Œํ–ฅ ์ƒ์„ฑ์„ 4D Dynamic Scene๊ณผ ๊ฒฐํ•ฉํ•˜๋Š” ์ˆ˜์ค€๊นŒ์ง€ ๋‚˜์•„๊ฐ”์œผ๋‚˜, ๋‹จ์ผ ๊ฐ์ฒด, ์ข์€ ์‹œ์•ผ๊ฐ, ๊ทธ๋ฆฌ๊ณ  ์˜คํ”„๋ผ์ธ ์ฒ˜๋ฆฌ์—๋งŒ ๊ตญํ•œ๋˜์–ด ์ž‘๋™ํ•œ๋‹ค๋Š” ํ•œ๊ณ„๊ฐ€ ์žˆ๋Š”๋ฐ, SonoWorld๋Š” ์ด๋ฅผ ๋„˜์–ด ์ (point), ์˜์—ญ(areal), ์ฃผ๋ณ€(ambient) ์Œ์›๋“ค๊ณผ ์‹ค์‹œ๊ฐ„์ ์ธ exploration์„ ์ง€์›ํ•œ๋‹ค.
  • Visual Scene์—์„œ sound localization๊ณผ Audio-Visual Source Separation ๋ถ„์•ผ์—์„œ๋„ ๊ฐ๊ฐ ๋‹จ์ˆœํžˆ ์‹œ๊ฐ์  ์žฅ๋ฉด ๋‚ด์—์„œ ์†Œ๋ฆฌ๊ฐ€ ๋‚˜๋Š” ์œ„์น˜๋ฅผ ์ถ”์ ํ•˜๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ VLM์„ ํ™œ์šฉํ•ด์„œ ์ƒ์„ฑ๋œ 3D ํŒŒ๋…ธ๋ผ๋งˆ ์žฅ๋ฉด ์†์˜ ์ž ์žฌ์ ์ธ ์Œ์›๋“ค์„ ์ฐพ๊ณ  ์ด๋ฅผ ๊ณต๊ฐ„ ์ƒ์— ์œ„์น˜์‹œํ‚ค๊ฑฐ๋‚˜ ๋‹จ์ˆœํžˆ ํ˜ผํ•ฉ ์˜ค๋””์˜ค๋ฅผ ๊ฐœ๋ณ„ component ์˜ค๋””๋กœ๋กœ ๋ถ„๋ฆฌํ•˜๋Š”๋ฐ ๊ทธ์น˜์ง€ ์•Š๊ณ , ์ƒ์„ฑ๋œ 3D ์‹œ๊ฐ ์žฅ๋ฉด ๋‚ด์— ์œ„์น˜๋œ ๋ชจ๋“  ์Œ์›์— ๋Œ€ํ•œ์ƒˆ๋กœ์šด ๊ณต๊ฐ„ ์Œํ–ฅ ์ƒ์„ฑ์„ ์ง์ ‘ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์ฐจ๋ณ„์ ์„ ๋ช…์‹œํ•œ๋‹ค.

The Image2AVScene Task

Ambisonics Concept

1. Spatial Sound representation

Ambisonics๋Š” โ€œ๋‚ด ์ฃผ๋ณ€ 360๋„ ๊ณต๊ฐ„์—์„œ ์–ด๋А ๋ฐฉํ–ฅ์œผ๋กœ ์–ด๋–ค ์†Œ๋ฆฌ๊ฐ€ ๋“ค๋ฆฌ๋Š”๊ฐ€โ€๋ฅผ ๋ช‡ ๊ฐœ์˜ ์˜ค๋””์˜ค ์ฑ„๋„๋กœ ์••์ถ•ํ•ด์„œ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•โ€์ด๋‹ค.

SonoWorld๋Š” 3D Scene ์•ˆ์— ๋†“์ธ sound source๋“ค์˜ ์œ„์น˜๋ฅผ ์ด์šฉํ•ด ์ด Ambisonics ์ฑ„๋„๋“ค์„ ์ง์ ‘ ๊ณ„์‚ฐํ•œ๋‹ค.

์ฐจ๊ทผ ์ฐจ๊ทผ ์ดํ•ดํ•ด๋ณด์ž.

์šฐ๋ฆฌ๊ฐ€ ๋“ฃ๋Š” ์ผ๋ฐ˜์ ์ธ mono audio(๊ณต๊ฐ„ ์Œํ–ฅ์ด ์•„๋‹˜)๋Š”

\(a(t)\) ์ฒ˜๋Ÿผ ์‹œ๊ฐ„์— ๋”ฐ๋ฅธ ์†Œ๋ฆฌ๋งŒ ํ‘œํ˜„ํ•œ๋‹ค.

๊ณต๊ฐ„์Œํ–ฅ์—์„œ๋Š” ์†Œ๋ฆฌ๊ฐ€ ์–ด๋А ๋ฐฉํ–ฅ์—์„œ ์˜ค๋Š”์ง€๋„ ์•Œ์•„์•ผ ํ•˜๋ฏ€๋กœ:

\[a(\theta, \phi, t)\]

๋กœ ํ‘œํ˜„ํ•˜์—ฌ \(\theta=azimuth, ์ขŒ์šฐ๋ฐฉํ–ฅ\), \(\phi=elevation, ์ƒํ•˜ ๋ฐฉํ–ฅ\)๋ฅผ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์‚ฌ์šฉํ•œ๋‹ค. ์ฆ‰, ๊ตฌ ๋ชจ์–‘์„ ์ƒ๊ฐํ•˜๋ฉด ํŽธํ•˜๊ฒŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋‹ค:

alt text

2. Spherical Harmonics

๋ฌธ์ œ๋Š” 360๋„ ๋ชจ๋“  ๋ฐฉํ–ฅ์˜ ์†Œ๋ฆฌ๋ฅผ ๊ทธ๋Œ€๋กœ ์ €์žฅํ•˜๊ฒŒ ๋˜๋ฉด, ์‹ค์‹œ๊ฐ„ ์†Œ๋ฆฌ ๋ Œ๋”๋ง๋„ ํž˜๋“ค ๋ฟ๋”๋Ÿฌ ์ €์žฅ์šฉ๋Ÿ‰๋„ ์ปค์ง€๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค. ๋Œ€์‹ , Ambisonics๋Š” ๋ช‡ ๊ฐœ์˜ ๊ธฐ๋ณธ์ ์ธ ๊ณต๊ฐ„ ํŒจํ„ด์„ ์ด์šฉํ•ด์„œ ์ „์ฒด sound field๋ฅผ ํ‘œํ˜„ํ•œ๋‹ค.

์ž ์—ฌ๊ธฐ์„œ ๊ธฐ๋ณธ ๊ณต๊ฐ„ ํŒจํ„ด์„ ์šฐ๋ฆฌ๋Š” ์ด๋ ‡๊ฒŒ ํ‘œํ˜„ํ•˜๊ฒ ๋‹ค:

\[Y_l^m(\theta, \phi)\]

์ด ์‹์€ ์šฐ๋ฆฌ๊ฐ€ ํŠน์ • ๋ฐฉํ–ฅ์— ๋Œ€ํ•œ \(\theta, \phi\) ๋ฅผ ๋„ฃ์–ด์คฌ์„ ๋•Œ, ํ•ด๋‹น ๋ฐฉํ–ฅ์— ๋Œ€ํ•œ ๊ฐ€์ค‘์น˜๋ฅผ ์ฃผ๋Š” ํ•จ์ˆ˜๋‹ค. ์ฆ‰, ํ•ด๋‹น ํ•œ์ˆ˜๋Š” 360๋„ ๊ฐ ๋ฐฉํ–ฅ์— ๋Œ€ํ•ด ์„œ๋กœ ๋‹ค๋ฅธ ๊ฐ€์ค‘์น˜๋ฅผ ์ฃผ๋Š” ํŒจํ„ด์ธ ๊ฒƒ์ด๋‹ค.

๋ฌผ๋ก , ์ด๋ฅผ ์„ค๋ช…ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” Fourier Transform์ด๋ผ๋Š” ๊ฑธ ์„ค๋ช…ํ•˜๋Š”๊ฒŒ ์ข‹๊ฒ ์ง€๋งŒ, ๊ทธ๋ ‡๊ฒŒ ๋˜๋ฉด ๋„ˆ๋ฌด ๊ธธ์–ด์ง€๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฅผ ๊ทธ๋ƒฅ โ€œํŠน์ •ํ•œ 3D ๋ฐฉํ–ฅ ํŒจํ„ด์„ ๋‚˜ํƒ€๋‚ด๋Š” basisโ€ ๋ผ๊ณ  ์ƒ๊ฐํ•ด์ฃผ๋ฉด ์ข‹๋‹ค. basis๋Š” ๋‹จ์ˆœํžˆ ๊ธฐ๋ณธ ์„ ํ˜•๋Œ€์ˆ˜ํ•™์—์„œ ๋‚˜์˜ค๋Š” ํ‘œํ˜„์ด๋‹ˆ ๋„˜์–ด๊ฐ€๋„๋ก ํ•˜๊ฒ ๋‹ค.

๊ฐ„๋‹จํ•˜๊ฒŒ,

Fourier Transform์—์„œ sin/cos ์ด basis ์—ญํ• ์„ ํ•˜๋“ฏ, ๊ตฌ๋ฉด ๊ณต๊ฐ„์—์„œ๋Š” spherical harmonics๊ฐ€ basis ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.

3. Ambisonics coefficient

๋…ผ๋ฌธ์˜ Equation (1)์€

\[a(\theta, \phi, t) \approx \sum_{l=0}^L \sum_{m=-l}^l Y_l^m (\theta, \phi)a_{l,m}(t) = y_L(\theta, \phi)^T \mathcal{a}_L(t)\]

์ด๋‹ค.

์—ฌ๊ธฐ์„œ \(Y_l^m (\theta, \phi)\) ๋Š” ๊ณต๊ฐ„ ๋ฐฉํ–ฅ ํŒจํ„ด์ด๊ณ , \(a_{l,m}(t)\)๋Š” ๊ทธ ํŒจํ„ด์— ๋Œ€์‘ํ•˜๋Š”(Ambisonics๋กœ ์ธ์ฝ”๋”ฉ๋œ) audio waveform์ด๋‹ค.

์ฆ‰, Ambisonics ์—์„œ๋Š” 360๋„ sound field ์ „์ฒด๋ฅผ ์ง์ ‘ ์ €์žฅํ•˜์ง€ ์•Š๊ณ ,

\[a_{0,0}(t), a_{1,-1}(t), a_{1,0}(t), a_{1,1}(t) ...\]

๊ฐ™์€ ์—ฌ๋Ÿฌ ๊ฐœ์˜ audio channel๋กœ ์ €์žฅํ•œ๋‹ค.

์ด๊ฒƒ๋“ค์ด ๋…ผ๋ฌธ์—์„œ ๋งํ•˜๋Š” Ambisonics coefficients, ์ฆ‰ Ambisonics channel์ด๋‹ค.

๋‹จ์ˆœํ•˜๊ฒŒ, Equation (1)์˜ ์˜๋ฏธ๋Š”

Directional Sound = Spatial Basis (Weights) ๊ฐ’ X Ambisonics Channels์— ๋‹ด๊ธด waveform

๋ผ๊ณ  ์ดํ•ดํ•˜์ž.

4. Ambisonics order๊ณผ FOA

Ambisonics order ์ธ \(L\)์€ ๊ณต๊ฐ„ ํ‘œํ˜„ ์ •๋ฐ€๋„๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค.

๋…ผ๋ฌธ์—์„œ ์ฃผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ \(L=1\)์ธ First-Order Ambisonics, FOA๋‹ค.

Ambisoncis channel ์ˆ˜๋Š” \((L+1)^2\) ๊ฐœ ์ด๋ฏ€๋กœ FOA ์—์„œ๋Š” 4๊ฐœ์˜ audio channel์„ ์‚ฌ์šฉํ•œ๋‹ค(Eq(1)์„ ๋ณด๋ฉด ์•Œ๊ฒ ์ง€๋งŒ, L=1์ด๋ฉด \(\sum\) ์— ์˜ํ•ด ๋‚˜์˜ค๋Š” ๊ฒฐ๊ณผ๊ฐ’์€ ์ด 4๊ฐœ๋‹ค).

์ฆ‰ ์ด ๋…ผ๋ฌธ์—์„œ๋Š” \(a_1(t) \in \mathbb{R}^4\) ๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค.

5. Point source๋ฅผ Ambisonics๋กœ ๋งŒ๋“ค๊ธฐ

์ด ๋…ผ๋ฌธ์—์„œ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ์ˆ˜์‹์€ Equation (1)์ด ์•„๋‹Œ Equation (2)๋‹ค.

\[\mathcal{a}_L^{\text{single}} (t) = \sigma(d)a_{\text{src}}(t)y_L(u)\]
  • $a_{\text{src}}(t)$๋Š” ์›๋ž˜ sound waveform.
  • $u$๋Š” listener์—์„œ source๋ฅผ ๋ฐ”๋ผ๋ณด๋Š” ๋ฐฉํ–ฅ.
  • $\sigma(d)$๋Š” ๊ฑฐ๋ฆฌ์— ๋”ฐ๋ฅธ sound attenuation.

๊ฐ„๋‹จํ•˜๊ฒŒ, ์•„๋ž˜์™€ ๊ฐ™์ด ์ดํ•ดํ•˜๋ฉด ๋œ๋‹ค.

Ambisonics = ์›๋ž˜ ์†Œ๋ฆฌ $\times$ ๋ฐฉํ–ฅ์ •๋ณด $\times$ ๊ฑฐ๋ฆฌ ํšจ๊ณผ

6. 3-DOF ์™€ 6-DOF

์ผ๋ฐ˜์ ์ธ Ambisoncis recording์€ ํ•œ ์œ„์น˜์—์„œ ์ธก์ •ํ•œ sound field ์ด๊ธฐ ๋•Œ๋ฌธ์—

\[R \in SO(3)\]

๋กœ yaw, pitch, roll ์„ ์ˆ˜ํ–‰ํ•˜๋Š” 3D rotation์ธ 3-DOF ๋‹ค.

ํ•˜์ง€๋งŒ listener๊ฐ€ ๋‹ค๋ฅธ ์œ„์น˜๋กœ ์ด๋™ํ•˜๋ฉด source ๊นŒ์ง€์˜ ๋ฐฉํ–ฅ, ๊ฑฐ๋ฆฌ๊ฐ€ ๋‹ฌ๋ผ์ง„๋‹ค.

Sonoworld๋Š” 3D ์œ„์น˜๋ฅผ ์•Œ๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, listener๊ฐ€ ์ด๋™ํ•˜๋ฉด ์ƒˆ๋กœ์šด ์œ„์น˜์—์„œ u์™€ d๋ฅผ ๋‹ค์‹œ ๊ณ„์‚ฐํ•˜์—ฌ Equation (2)๋ฅผ ๋‹ค์‹œ ์ ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

๋”ฐ๋ผ์„œ,

3 rotation DoF + 3 translation DoF = 6-DoF

์ธ 6-DoF exploration์ด ๊ฐ€๋Šฅํ•ด์ง„๋‹ค.

7. ํ—ท๊ฐˆ๋ฆด ์ˆ˜ ์žˆ๋Š” ๋ถ€๋ถ„

Equation (2)๋Š” ์‹ค์ œ ์›๋ณธ source waveform์ธ mono audio์— source์˜ ๋ฐฉํ–ฅ๊ณผ ๊ฑฐ๋ฆฌ ์ •๋ณด๋ฅผ ๋ฐ˜์˜ํ•˜์—ฌ ์—ฌ๋Ÿฌ ๊ฐœ์˜ Ambisonics channel waveform์œผ๋กœ ์ธ์ฝ”๋”ฉํ•˜๋Š” ์‹์ด๋‹ค.

Equation (1)์€ ๊ทธ๋ ‡๊ฒŒ ๋งŒ๋“ค์–ด์ง„ ์—ฌ๋Ÿฌ Ambisonics channel waveform์„ ํŠน์ • ๋ฐฉํ–ฅ (ฮธ,ฯ•)์˜ Spherical Harmonics ๊ฐ’์œผ๋กœ ๊ฐ€์ค‘ํ•ฉํ•˜์—ฌ, ๊ทธ ๋ฐฉํ–ฅ์„ ๋ฐ”๋ผ๋ณด๋Š” virtual microphone์˜ directional waveform์„ ์–ป๋Š” ์‹์ด๋‹ค.

๋ฐฉํ–ฅ $\mathbf{u}_{\mathrm{query}}$๋ฅผ ๋ฐ”๋ผ๋ณด๋Š” virtual microphone์˜ waveform์€

\[a_{\mathbf{u}_{\mathrm{query}}}(t) = \mathbf{y}_L(\mathbf{u}_{\mathrm{query}})^T \mathbf{a}_L(t)\]

์ด๋‹ค.

Equation (2)๋ฅผ Equation (1)์— ๋Œ€์ž…ํ•˜๋ฉด ์กฐ๊ธˆ ๋” ์‰ฝ๊ฒŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ,

\[\mathbf{a}_L(t) = \sigma(d)\, a_{\mathrm{src}}(t)\, \mathbf{y}_L(\mathbf{u}_{\mathrm{src}})\]

๋ฅผ Equation (1)์— ๋Œ€์ž…ํ•˜๋ฉด,

\[a_{\mathbf{u}_{\mathrm{query}}}(t) = \mathbf{y}_L(\mathbf{u}_{\mathrm{query}})^T \left[ \sigma(d)\, a_{\mathrm{src}}(t)\, \mathbf{y}_L(\mathbf{u}_{\mathrm{src}}) \right]\]

$\sigma(d)$์™€ $a_{\mathrm{src}}(t)$๋Š” scalar์ด๋ฏ€๋กœ ๋ฐ–์œผ๋กœ ๋นผ๋ฉด,

\[a_{\mathbf{u}_{\mathrm{query}}}(t) = \sigma(d)\, a_{\mathrm{src}}(t)\, \mathbf{y}_L(\mathbf{u}_{\mathrm{query}})^T \mathbf{y}_L(\mathbf{u}_{\mathrm{src}})\]

๋”ฐ๋ผ์„œ

\[\boxed{ a_{\mathbf{u}_{\mathrm{query}}}(t) = \sigma(d)\, a_{\mathrm{src}}(t)\, \underbrace{ \mathbf{y}_L(\mathbf{u}_{\mathrm{query}})^T \mathbf{y}_L(\mathbf{u}_{\mathrm{src}}) }_{\text{directional matching term}} }\]

์—ฌ๊ธฐ์„œ,

\[\mathbf{y}_L(\mathbf{u}_{\mathrm{query}})^T \mathbf{y}_L(\mathbf{u}_{\mathrm{src}})\]

๊ฐ€ ํฌ๋ฉด, virtual microphone์ด ๋ฐ”๋ผ๋ณด๋Š” ๋ฐฉํ–ฅ๊ณผ ์‹ค์ œ source ๋ฐฉํ–ฅ์ด Ambisonics basis ์ƒ ์ž˜ ๋งž์•„ ์†Œ๋ฆฌ๊ฐ€ ํฌ๊ฒŒ ๋“ค๋ฆฌ๋Š” ๋“ฑ์˜ ์˜ํ–ฅ์ด ์ผ์–ด๋‚œ๋‹ค.

Task Goal

\[\mathcal{G}: I \rightarrow \{V(p), A(p,t)\}\]

ํ•ด๋‹น ์ˆ˜์‹์„ ๋ณด๋‹ค์‹œํ”ผ, ํŠน์ • observer์˜ pose p๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, visual representation์ธ \(V(p)\)์™€ \(A(p,t)\)๋ฅผ ์ถ”์ •ํ•ด framework์ธ \(\mathcal{G}\)๋ฅผ ๋งŒ๋“ค์–ด๋‚ด๋Š” ๊ฒƒ์ด๋‹ค.

์ด \(V(p)\) ๊ฐ™์€ ๊ฒฝ์šฐ๋Š” 3D guassian splats ๋ฅผ ์ด์šฉํ•ด ํ‘œํ˜„ํ•˜๊ณ , \(A(p,t)\)์˜ ๊ฒฝ์šฐ์—๋Š” point-cloud๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ambisonics rendering์„ ํ†ตํ•ด์„œ ํ‘œํ˜„ํ•œ๋‹ค:

\[a_L(t) = A(p,t) \in \mathbb{R}^{(L+1)^2}\]

Method & Technical Details

SonoWorld์˜ Key Technique์€ ์ด 4๊ฐœ๋กœ ๋‚˜๋‰œ๋‹ค.

  • ์ฒซ ๋ฒˆ์งธ๋กœ, single image๋ฅผ ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์•„ 360๋„ ํŒŒ๋…ธ๋ผ๋งˆ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์ด๋ฅผ 3D Scene์— Liftํ•˜๋Š” ๊ฒƒ
  • ๋‘ ๋ฒˆ์งธ๋กœ, reconstructed๋œ 3D ๊ณต๊ฐ„์—์„œ ์†Œ๋ฆฌ๊ฐ€ ์žˆ์„ ๋ฒ•ํ•œ ์‹ค์ฒด๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ์œ„์น˜๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๊ฒƒ
  • ์„ธ ๋ฒˆ์งธ๋กœ, spatial sound field๋ฅผ ์ƒ์„ฑํ•˜๋Š” ambisonics encoder๋ฅผ ์„ค๊ณ„ํ•˜๋Š” ๊ฒƒ
  • ๋„ค ๋ฒˆ์งธ๋กœ, ์ฒญ์ทจ์ž ์ž…์žฅ์—์„œ ์–ด๋А ์œ„์น˜(pose)์—์„œ๋„ ์ž…์ฒด์ ์ธ binaural audio๋ฅผ ๋ Œ๋”๋งํ•˜๋Š” ๊ฒƒ

Panorama-Based Visual Scene Generation

๋จผ์ € single image๋ฅผ ๋ฐ›๊ฒŒ ๋˜๋ฉด, ๋ณดํ†ต ๊ธฐ์กด์˜ ๊ธฐ๋ฒ•๋“ค์€ ํ•ด๋‹น ์ด๋ฏธ์ง€๊ฐ€ ์ •๋ฉด์„ ๋ฐ”๋ผ๋ณด๊ณ  ์ˆ˜ํ‰ ์ƒํƒœ์— ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜, ์ด ๊ฐ€์ •์€ single image๊ฐ€ ๊ธฐ์šธ์–ด์ ธ ์žˆ๊ฑฐ๋‚˜ elevation์ด ๋‹ค๋ฅผ ๊ฒฝ์šฐ misalignment ๋ฌธ์ œ๋ฅผ ์•ผ๊ธฐํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ, SonoWorld๋Š” ๋จผ์ € single image๋ฅผ ๋ฐ›์•„ ์ด๋ฅผ calibrationํ•˜๋Š” ๊ฒƒ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•œ๋‹ค.

\[(\phi,f) = Calib(I) ,\]

์ž…๋ ฅ ์ด๋ฏธ์ง€ \(I\)๋กœ GeoCalib๋ผ๋Š” ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•ด์„œ gravity direction๊ณผ camera FOV๋ฅผ ์ถ”์ •ํ•˜์—ฌ \((\phi, f)\)์ธ camera elevation๊ณผ FoV๋ฅผ ์ถ”์ •ํ•œ๋‹ค. ๋‹ค์Œ์œผ๋กœ perspective image \(I\)๋ฅผ equirectangular panorama์— reprojectionํ•˜๊ธฐ์œ„ํ•ด \(\mathcal{W}_G\) Gaussian Pyramid๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” warping operator๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ํ•ด๋‹น operator๋Š” ๋‹ค์ค‘ ์Šค์ผ€์ผ ์•ˆํ‹ฐ์•จ๋ฆฌ์–ด์‹ฑ ์ƒ˜ํ”Œ๋ง์„ ์ˆ˜ํ–‰ํ•˜๊ณ , ์ดํ›„์— warped image๋Š” WorldGen์ด๋ผ๊ณ  ํ•˜๋Š” outpainting model \(g_{outpaint}\)์„ ์‚ฌ์šฉํ•ด์„œ 360๋„ ํŒŒ๋…ธ๋ผ๋งˆ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค:

\[I_{pano} = g_{outpaint}(\mathcal{W}_G(I, \phi, f))\]

๊ทธ๋ฆฌ๊ณ  ๊ธฐ์กด์˜ panorama-to-3D reconstruction method๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์™„์„ฑ๋œ ํŒŒ๋…ธ๋ผ๋งˆ๋ฅผ 3D Scene์œผ๋กœ liftํ•œ๋‹ค:

\[V = \mathcal{G}_v(I_{pano})\]

์—ฌ๊ธฐ์„œ ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋ธ์€ Marble model ์ด๋‚˜ HunyuanWorld 1.0์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์‹ค์ ์ธ 3D ํ™˜๊ฒฝ์„ ๊ตฌ์„ฑํ•œ๋‹ค.

360ยฐ Audio-Visual Semantic Grounding

์ด๋ฒˆ์—๋Š” 3D Scene ์•ˆ์—์„œ ์–ด๋–ค ๋ฌผ์ฒด๊ฐ€ ์†Œ๋ฆฌ๋ฅผ ๋‚ผ ์ˆ˜ ์žˆ๊ณ , ๊ทธ ๋ฌผ์ฒด๊ฐ€ ์ •ํ™•ํžˆ 3D ๊ณต๊ฐ„์˜ ์–ด๋””์— ์žˆ๋Š”์ง€๋ฅผ ์ฐพ์•„๋‚ด๋Š” ๋‹จ๊ณ„๋‹ค.

๋จผ์ €, VLMํ•œํ…Œ ์ž…๋ ฅ ์ด๋ฏธ์ง€ \(I\)๋ฅผ ์ฃผ๊ณ , 4๊ฐ€์ง€์˜ ์ •๋ณด๋ฅผ ์–ป์–ด๋‚ธ๋‹ค.

  • sound source ํ›„๋ณด category๋“ค์˜ ์ง‘ํ•ฉ \(C\)
  • point/clustered/ambient sound type ๋ถ„๋ฅ˜
  • MMAudio๊ฐ€ waveform์„ ์ƒ์„ฑํ•  ๋•Œ ์‚ฌ์šฉํ•  text prompt
  • ๊ฐ sound source๊ฐ€ ์–ผ๋งˆ๋‚˜ ํฌ๊ฒŒ ๋“ค๋ ค์•ผ ํ•˜๋Š”์ง€๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” Amplitude equalization parameter

๊ทธ๋Ÿผ ์ด์ œ ์šฐ๋ฆฌ๋Š” category ์ง‘ํ•ฉ \(C\)๋ฅผ ๊ฐ€์ง€๊ณ , ํ•ด๋‹น sound category๋“ค์ด panorama์˜ ์–ด๋А ์œ„์น˜์— ์žˆ๋Š” ์ง€ ์•Œ์•„์•ผ ํ•œ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด์„œ open-vocabulary segmentation model์ธ X-Decoder๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ, X-Decoder ๋Š” ์ผ๋ฐ˜ perspective image๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ํ•™์Šต๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํŒŒ๋…ธ๋ผ๋งˆ ์ด๋ฏธ์ง€์ธ \(I_{pano}\)๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ฒน์น˜๋Š” perspective FoV image๋กœ ์ž˜๋ผ์„œ ์‚ฌ์šฉํ•œ๋‹ค. ์ด๋ ‡๊ฒŒ tile image๋“ค์„ category๋ฅผ ์กฐ๊ฑด์œผ๋กœ ๊ฐ tile image์— ํ•ด๋‹น๋˜๋Š” category segmentation mask๋ฅผ ๋ฝ‘๋Š”๋‹ค:

\[M_{OVS, c}\]

๊ทธ๋Ÿฌ๋‚˜, X-Decoder๊ฐ€ ์—ฌ๋Ÿฌ tile๋กœ ์ž˜๋ผ์„œ ์ฒ˜๋ฆฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— tile ๊ฒฝ๊ณ„์—์„œ mask๊ฐ€ ๋Š๊ธฐ๊ฑฐ๋‚˜, sky/ground์ฒ˜๋Ÿผ ํฐ ์˜์—ญ์— ๋ถˆ์•ˆํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํŒŒ๋…ธ๋ผ๋งˆ ์ด๋ฏธ์ง€์—์„œ๋„ ๋ฌผ์ฒด์˜ ์˜์—ญ ์ž์ฒด๋ฅผ ๊น”๋”ํ•˜๊ฒŒ ์ฐพ์•„๋„ค๋Š” SAM2๋ฅผ ์ด์šฉํ•ด์„œ mask๋ฅผ ํ•œ ๋ฒˆ ๋” ๋ฝ‘๋Š”๋‹ค. ๋ฌผ๋ก , X-Decoder๋Š” segmentation mask์— ๋Œ€ํ•ด ์˜์—ญ์ด ์–ด๋–ค ๋ฌผ์ฒด์ธ์ง€ semantic label์„ ์–ป์„ ์ˆ˜ ์žˆ๊ณ , SAM2๋Š” ๊ทธ๋Ÿด ์ˆ˜ ์—†๋‹ค๋Š” ์„œ๋กœ์˜ ์žฅ๋‹จ์ ์„ ๋ณด์™„ํ•ด์ฃผ๊ธฐ๋„ ํ•œ๋‹ค.

์ฆ‰, SAM2 ๋Š” class-agnostic sementation mask ์ธ

\[M_{pano}\]

๋ฅผ ๋ฝ‘์•„๋‚ธ๋‹ค.

๊ทธ๋ฆฌ๊ณ  X-Decoder์˜ ๊ฒฐ๊ณผ๋ฅผ SAM2 region์— confidence-weighted vote๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค.

overlapping๊ณผ semantic confidence๊ฐ€ ์ถฉ๋ถ„ํžˆ ํฌ๋‹ค๋ฉด ํ•ด๋‹น SAM2 mask๋ฅผ ํŠน์ • ์นดํ…Œ๊ณ ๋ฆฌ์˜ mask๋กœ ์ฑ„ํƒํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์ตœ์ข…์ ์œผ๋กœ category \(c\)๋งˆ๋‹ค \(M_c\)๋ฅผ ์–ป์–ด ์ตœ์ข…์ ์œผ๋กœ:

\[M=\cup_{c\in C}M_c\]

๊ฐ€ ๋œ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜, ์•„์ง 2D ์œ„์น˜์ผ ๋ฟ์ด๋ผ์„œ ์ด๋ฅผ 3D ๊ณต๊ฐ„์— ์˜ฌ๋ ค๋†“์•„์•ผ ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ๊ฐ€ ์ด์ „์— ๋งŒ๋“ค์–ด ๋†“์€ 3D Scene \(V\)๊ฐ€ ์žˆ์–ด ํ•ด๋‹น scene์œผ๋กœ ๋ถ€ํ„ฐ depth map \(D\)๋ฅผ ๋ Œ๋”๋งํ•˜๊ณ , ๊ฐ sound source mask \(M_i\)์™€ depth \(D\)๋ฅผ ์ด์šฉํ•ด์„œ

\[P_i = Lift(M_i, D)\]

๋ฅผ ์ˆ˜ํ–‰ํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ํ•˜๋‚˜์˜ source๊ฐ€

\[P_i = \{p_1, p_2, ... , p_N\}\]

๊ฐ™์€ 3D point ์ง‘ํ•ฉ์œผ๋กœ ํ‘œํ˜„๋œ๋‹ค.

๋…ผ๋ฌธ์€ ๋ชจ๋“  source์˜ \(P_i\)๋ฅผ ๋ชจ์€ ๊ฒฐ๊ณผ๋ฅผ \(P\)๋ผ๊ณ  ํ•˜๊ณ , ์ด๊ฒƒ์ด scene ๋‚ด sounding object๋“ค์˜ 3D ์œ„์น˜๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค๊ณ  ์„ค๋ช…ํ•œ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ ์—ฌ๊ธฐ์—์„œ SonoWorld github ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด, X-Decoder์™€ SAM2๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฒŒ ์•„๋‹Œ SAM3๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฑธ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ์•„๋งˆ๋„ ์ด์ „์— X-Decoder์™€ SAM2๋ฅผ ์‚ฌ์šฉํ–ˆ์„ ๋•Œ๋Š” IOU ๋ฐฉ์‹์œผ๋กœ ์ฒ˜๋ฆฌํ•ด์„œ ๋ณด์™„๋œ mask๋ฅผ ์–ป์—ˆ๊ฒ ์ง€๋งŒ, SAM3๋Š” semantic label๊ณผ ์ •๊ตํ•œ ์˜์—ญ mask๋ฅผ ๋ชจ๋‘ ๋ฝ‘์„ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด์ œ ๋‘ ๋ชจ๋ธ์„ ๋Œ๋ฆฌ๊ณ  ์ถ”๊ฐ€ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•ด์„œ mask๋ฅผ ๊ฑธ๋Ÿฌ๋‚ด๋Š” ์ž‘์—…์„ ํ•  ํ•„์š”๊ฐ€ ์—†์–ด์ง„ ๊ฒƒ ๊ฐ™๋‹ค. ์ฆ‰, SAM3 ์ž์ฒด๊ฐ€ text concept์œผ๋กœ instance๋ฅผ ์ฐพ๊ณ  segmentationํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋ธ์ด๊ธฐ ๋•Œ๋ฌธ์— ๊ธฐ์กด ๋ฐฉ์‹์ธ SAM2 ์™€ X-Decoder๋ฅผ ๊ฐ™์ด ์‚ฌ์šฉํ•  ํ•„์š”๊ฐ€ ์—†์–ด์ง„ ๊ฒƒ์ด๋‹ค.

Ambisonics Encoding

์ด๋ฒˆ stage์—์„œ๋Š” ์žฅ๋ฉด์— ๋“ค์–ด๊ฐˆ ์†Œ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์ตœ์ข…์ ์œผ๋กœ ๋“ค๋ฆด 3D ์ž…์ฒด ์˜ค๋””์˜ค ์‹ ํ˜ธ๋ฅผ ์ˆ˜ํ•™์ ์œผ๋กœ ์กฐ๋ฆฝํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

๋จผ์ € ์ „์— VLM์ด ์ด๋ฏธ์ง€ ๋ถ„์„์„ ํ†ตํ•ด ์ œ์•ˆํ•œ ํ…์ŠคํŠธ ํ”„๋กฌํฌํŠธ๋ฅผ ์˜ค๋””์˜ค ์ƒ์„ฑ AI์ธ MMAudio์— ์ฃผ์ž…ํ•˜์—ฌ, ๊ฐ object์— ์–ด์šธ๋ฆฌ๋Š” ์†Œ๋ฆฌ(\(a_{i,raw}\))์™€ ์ „์ฒด ๋ฐฐ๊ฒฝ ์†Œ๋ฆฌ(\(a_{global}\))๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ์ƒ์„ฑ๋œ waveform์˜ volume์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ , VLM์ด ์˜ˆ์ธกํ•œ sound energy (\(v_i\))๋ฅผ ๋ฐ‘์˜ ์ˆ˜์‹์„ ํ†ตํ•ด ์ด ํŒŒ๋ผ๋ฏธํ„ฐ ์ˆ˜์น˜๋งŒํผ ๋ฐ์‹œ๋ฒจ์„ ์‹ค์ œ ๋ฌผ๋ฆฌ ์‹ ํ˜ธ ์Šค์ผ€์ผ๋กœ ํ™˜์‚ฐํ•˜์—ฌ ๊ณฑํ•ด์ค€๋‹ค:

\[a_i(t) = 10^{v_i/20}a_{i,raw}(t)\]

์ด๋ ‡๊ฒŒ ๊ณฑํ•ด์ฃผ๋ฉด ๊ฐ ์†Œ๋ฆฌ์˜ ๊ท ํ˜•๊ฐ ์žˆ๋Š” ๋ณผ๋ฅจ ์กฐ์ ˆ์„ ๋งˆ์นœ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์ด์ œ ์•ž์—์„œ ์šฐ๋ฆฌ๊ฐ€ global์ธ ์ „์ฒด ๋ฐฐ๊ฒฝ ์†Œ๋ฆฌ์™€ ๊ฐ object์˜ ์†Œ๋ฆฌ๋ฅผ ๋ถ„๋ฆฌํ–ˆ์—ˆ๋Š”๋ฐ, ์—ฌ๊ธฐ์„œ global์€ ๊ทธ๋Œ€๋กœ ๋‘๊ณ  grounding ๋œ source๋“ค์„ \(\mathcal{O}\)๋ผ๊ณ  ํ•˜๊ณ , ์ด๋ฅผ \(\mathcal{O}_{point}\)์™€ \(\mathcal{O}_{cluster}\) ๋กœ ๋‚˜๋ˆˆ๋‹ค.

๊ฐœ๋…์ ์œผ๋กœ, point source๋Š” ๊ณต๊ฐ„์ ์œผ๋กœ ์ž‘์€ source๋กœ ํ•˜๋‚˜์˜ ์œ„์น˜๋กœ ๋Œ€ํ‘œํ•ด๋„ ๊ดœ์ฐฎ์€ ๊ฒฝ์šฐ๊ณ , clustered surce๋Š” ๊ณต๊ฐ„์ ์œผ๋กœ ๋„“๊ฒŒ ํผ์ ธ์žˆ์–ด ํ•œ ์ ์—์„œ ์†Œ๋ฆฌ๊ฐ€ ๋‚œ๋‹ค๊ณ  ํ•˜๊ธฐ๋ณด๋‹ค, ์ „์ฒด์˜ ์—ฌ๋Ÿฌ ์œ„์น˜์—์„œ ์†Œ๋ฆฌ๊ฐ€ ๋‚˜๋Š” ๊ฒฝ์šฐ๋กœ ๋ณด๋ฉด๋œ๋‹ค.

sound field๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” listener pose ๋„ ์ค‘์š”ํ•˜๋‹ค. ๊ฒฐ๊ตญ user tracking์ด ๊ฐ€๋Šฅํ•ด์•ผ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ž…์ฒด๊ฐ ์žˆ๋Š” ์‚ฌ์šด๋“œ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋Ÿฌ๊ธฐ ์œ„ํ•ด์„œ listener๊ฐ€ ์–ด๋””์— ์žˆ๊ณ  ์–ด๋А ๋ฐฉํ–ฅ์„ ๋ฐ”๋ผ๋ณด๋Š” ์ง€(pose)๋ฅผ ์ด๋ ‡๊ฒŒ ํ‘œํ˜„ํ•œ๋‹ค:

\[p = [R, t] \in SE(3)\]

์—ฌ๊ธฐ์„œ t๋Š” listener์˜ 3D position, R์€ listener์˜ rotation์ด๋‹ค. ์ด๋กœ์จ ์ฒญ์ž์˜ ๊ณ ๊ฐœ๋ฅผ ๋Œ๋ ธ์„ ๋•Œ, ๊ทธ๋ฆฌ๊ณ  ์ด๋™ํ–ˆ์„ ๋•Œ ์‚ฌ์šด๋“œ๊ฐ€ ์–ด๋–ป๊ฒŒ ๋ณ€ํ•  ์ง€ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. ์—ฌ๊ธฐ์— ๋”ํ•ด source์™€ listener ์‚ฌ์ด์˜ ๊ฑฐ๋ฆฌ(\(d\))๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐ์‡ ํšจ๊ณผ๋ฅผ ๋งŒ๋“ค์–ด์•ผ ํ•œ๋‹ค. ๊ทธ ์ˆ˜์‹์€ ์ด์™€ ๊ฐ™์ด ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค:

\[\sigma(d) = \frac{e^{-\alpha d}}{d}\]

์—ฌ๊ธฐ์„œ d๋ฅผ ๋ถ„๋ชจ์— ๋‘ ์œผ๋กœ์จ source๊ฐ€ ๋ฉ€์–ด์งˆ์ˆ˜๋ก ์†Œ๋ฆฌ๊ฐ€ ์ž‘์•„์ง€๋Š” distance attenuation ํšจ๊ณผ๋ฅผ ๋‚ด๊ณ , ๋ถ„์ž์— ์žˆ๋Š” \(e^{-\alpha d}\)๋ฅผ ํ†ตํ•ด ๊ฑฐ๋ฆฌ๊ฐ€ ๋ฉ€์–ด์งˆ์ˆ˜๋ก ๊ณต๊ธฐ๋ฅผ ์ง€๋‚˜๋ฉฐ ์†Œ๋ฆฌ๊ฐ€ ์ถ”๊ฐ€๋กœ ๊ฐ์‡ ๋˜๋Š” air absorption์„ ๋ชจ๋ธ๋งํ•  ์ˆ˜ ์žˆ๋‹ค.

์ฆ‰, ๋ฉ€๋ฆฌ ์žˆ์„์ˆ˜๋ก ์†Œ์‹œ๋ฅผ ์ค„์ด๋Š” ํ•จ์ˆ˜๋ฅผ ๊ตฌํ˜„ํ–ˆ๋‹ค๊ณ  ๋ณด๋ฉด ๋œ๋‹ค.

๊ทธ๋Ÿผ ์ด์ œ ์šฐ๋ฆฌ๋Š” Ambisonics๋ฅผ ์„ธ ์ข…๋ฅ˜์˜ soruce ๊ณต๊ฐ„ ์Œํ–ฅ์œผ๋กœ ๊ตฌ์„ฑ๋œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค:

\[A = A_{point} + A_{cluster} + A_{global}\]

๊ฐ source ๋“ค์˜ Ambisonics๋ฅผ ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์•„๋ž˜๋ฅผ ์—ด์–ด์„œ ํ™•์ธํ•ด๋ณด๊ธธ ๋ฐ”๋ž€๋‹ค.

Point source

์—ฌ๊ธฐ์„œ point source๋Š” source \(i\)์˜ 3D point cluster \(P_i\)๋ฅผ ํ•˜๋‚˜์˜ centroid \(o_i\)๋กœ ํ‘œํ˜„ํ•œ๋‹ค.

๊ทธ๋Ÿฌ๋ฉด ์ƒ๋Œ€ ์œ„์น˜ ๋ฒกํ„ฐ๋Š”

\[d_i = t - o_i\]

์•ž์—์„œ ์šฐ๋ฆฌ๋Š” Ambisonics๋กœ ๋งŒ๋“œ๋Š” ์ˆ˜์‹์„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜ํ–ˆ๋‹ค.

\[a_L(t) = \sigma(d)a_{\mathrm{src}}(t)y_L(u)\]

์ด ์ˆ˜์‹์˜ ๊ตฌ์กฐ๋ฅผ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•˜์—ฌ point source๋ฅผ Ambisonics๋กœ ๋งŒ๋“ค๋ฉด,

\[A_{\mathrm{point}} = \sum_{i \in \mathcal{O}_{\mathrm{point}}} a_{i,L} \sigma(\lVert d_i \rVert) y_L\left( R^T \frac{d_i}{\lVert d_i \rVert} \right)\]

์ด๋ ‡๊ฒŒ ๋œ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ ์—ฌ๊ธฐ์„œ \(u \rightarrow R^T \frac{d_i}{\lVert d_i \rVert}\)๋กœ ๋˜์–ด ์žˆ๋Š”๋ฐ, ์™œ \(R^T\)๊ฐ€ ๋“ค์–ด๊ฐ€๋Š”์ง€ ์‚ดํŽด๋ณด์ž.

๊ทธ๋ƒฅ \(\frac{d_i}{\lVert d_i \rVert}\)๋Š” 3D world coordinate์—์„œ์˜ source ๋ฐฉํ–ฅ์ด๋‹ค. ํ•˜์ง€๋งŒ ์šฐ๋ฆฌ๋Š” listener๊ฐ€ ํ˜„์žฌ ๋ฐ”๋ผ๋ณด๊ณ  ์žˆ๋Š” ๋ฐฉํ–ฅ์„ ๊ธฐ์ค€์œผ๋กœ source๊ฐ€ ์–ด๋””์— ์žˆ๋Š”์ง€๋ฅผ ์›ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, listener rotation \(R\)์„ ์ด์šฉํ•ด ๋ฐฉํ–ฅ์„ listener ๊ธฐ์ค€์œผ๋กœ ๋ฐ”๊ฟ”์ฃผ์–ด์•ผ ํ•œ๋‹ค.

\[y_L\left( R^T \frac{d_i}{\lVert d_i \rVert} \right)\]

๋”ฐ๋ผ์„œ ์ด ์‹์€ ํ˜„์žฌ listener ๊ธฐ์ค€์œผ๋กœ source \(i\)๊ฐ€ ์œ„์น˜ํ•œ ๋ฐฉํ–ฅ์˜ Spherical Harmonics ๊ฐ’์ด๋‹ค.

์ž, ๊ทธ๋Ÿฌ๋ฉด ๊ฐ„๋žตํ•˜๊ฒŒ ์ •๋ฆฌํ•ด๋ณด์ž.

์ด ๋ณต์žกํ•œ ํ‘œ๊ธฐ๋ฅผ ์ง๊ด€์ ์œผ๋กœ ์ ์œผ๋ฉด,

\[\boxed{ \text{Point Ambisonics} = \sum_i \text{source waveform} \times \text{distance attenuation} \times \text{source direction SH} }\]

๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

์ฆ‰,

\[a_L(t) = \sigma(d)a_{\mathrm{src}}(t)y_L(u)\]

ํ•ด๋‹น ์ˆ˜์‹์„ source๋งˆ๋‹ค ๊ณ„์‚ฐํ•œ ๋‹ค์Œ ๋ชจ๋‘ ๋”ํ•œ ๊ฒƒ์ด Point Source Ambisonics๋‹ค.

Clustered sources

๊ฐ•์ด๋‚˜ ํญํฌ์ฒ˜๋Ÿผ ๋„“๊ฒŒ ํŽผ์ณ์ง„ source๋Š” centroid ํ•œ ์ ์œผ๋กœ ํ‘œํ˜„ํ•˜๊ธฐ ์–ด๋ ค์›Œ์„œ \(P_i\) ์•ˆ์— ์žˆ๋Š” ๋ชจ๋“  3D point๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค:

\[A_{\mathrm{cluster}} = \sum_{i \in \mathcal{O}_{\mathrm{cluster}}} \frac{a_i}{\lvert P_i \rvert} \sum_{o \in P_i} \sigma\left(\lVert d \rVert\right) y_L\left( R^T \frac{d}{\lVert d \rVert} \right)\]

์—ฌ๊ธฐ์„œ point souce์™€ ๋‹ค๋ฅธ ์ ์€ ๊ทธ์ € source ํ•˜๋‚˜์— ์—ฌ๋Ÿฌ 3D point๋“ค์ด ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ์ฆ‰, ์•„๋ž˜์˜ clustered source ๋‚ด๋ถ€์— ์žˆ๋Š” ๋งŽ์€ ๊ฐ point source์— ๋Œ€ํ•ด ์•„๋ž˜๋ฅผ ๊ณ„์‚ฐํ•˜๊ณ :

\[\sigma(\lVert d \rVert)y_L(\text{direction})\]

์ „๋ถ€ ๋”ํ•œ ๋‹ค์Œ, \(\frac{1}{\left \vert P_i \right \vert}\)๋กœ ๋‚˜๋ˆ„์–ด ํ‰๊ท ์„ ๋‚ธ๋‹ค.

์‰ฝ๊ฒŒ ๋งํ•˜๋ฉด, \(\text{Clustered source} = \text{Average of point sources}\)์ด ๋œ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ, ๋…ผ๋ฌธ์˜ ์ €์ž๋Š” ํ•˜๋‚˜์˜ insight๋ฅผ ๋” ์ œ๊ณตํ•œ๋‹ค.

์œ„์˜ ์ˆ˜์‹์ฒ˜๋Ÿผ clustered source๋ฅผ ์—ฌ๋Ÿฌ point source์ฒ˜๋Ÿผ ์ฒ˜๋ฆฌํ•˜๊ฒŒ ๋˜๋ฉด, ๊ฐ point๋งˆ๋‹ค ๋ฐฉํ–ฅ์ด ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค๋ฅธ \(y_L\) ๊ฐ’์ด ๋‚˜์˜ค๊ฒŒ ๋˜๋Š”๋ฐ, ๊ทธ๋ ‡๊ฒŒ ๋˜๋ฉด Spherical Harmonics์˜ \(l>0\) ์„ฑ๋ถ„์€ ๋ฐฉํ–ฅ์— ๋”ฐ๋ผ ์–‘์ˆ˜/์Œ์ˆ˜ ๊ฐ’์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ์—ฌ๋Ÿฌ ๋ฐฉํ–ฅ์˜ ๊ฐ’์„ ํ•ฉ์น˜๋ฉด ์ผ๋ถ€๊ฐ€ ์„œ๋กœ ์—†์–ด์งˆ ์ˆ˜ ์žˆ๋‹ค.

๋”ฐ๋ผ์„œ, area sound๊ฐ€ listener๋ฅผ ๋‘˜๋Ÿฌ์‹ธ๋Š” ๊ฒฝ์šฐ \(l>0\) ๋ฐฉํ–ฅ ์„ฑ๋ถ„๋“ค์ด ์„œ๋กœ ์ƒ์‡„๋˜๋Š” ๊ฒฝํ–ฅ์ด ์žˆ์–ด, head rotation์— ๋œ ๋ฏผ๊ฐํ•ด์งˆ ์ˆ˜ ์žˆ๋‹ค.

Global ambience

์ด์ œ ๋งˆ์ง€๋ง‰ ๋ฐ”๋žŒ, ์•„์ฃผ ๋จผ traffic ๋“ฑ์€ ํŠน์ • 3D object์— ๋ถ™์–ด ์žˆ๋Š” ์†Œ๋ฆฌ๋กœ ์ฒ˜๋ฆฌํ•˜์ง€ ์•Š๋Š”๋‹ค.

์ฆ‰, global ambience์—๋Š” ๋ฐฉํ–ฅ์ •๋ณด๋ฅผ ๋„ฃ์ง€ ์•Š๊ฒ ๋‹ค๋Š” ์˜๋ฏธ๋‹ค.

\[A_{global} = a_{global} \begin{bmatrix} 1 \\ 0 \\ 0 \\ \vdots \\ 0 \end{bmatrix}\]

๋ผ๋Š” ์ˆ˜์‹์œผ๋กœ ํ‘œํ˜„๋œ๋‹ค.

์ฒซ channel๋งŒ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ์ฒซ ๋ฒˆ์งธ๊ฐ€ \(l=0\)์ธ omnidirectional component ์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

Free-Viewpoint Rendering

์•ž์˜๊ณผ์ •๋“ค์ด ๋ชจ๋‘ ๋๋‚ฌ์œผ๋ฉด, ์ด์ œ ์šฐ๋ฆฌ๋Š” ๋งŒ๋“ค์–ด์ง„ visual scene๊ณผ ambisonics๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ visual๊ณผ binaural audio๋ฅผ ๋ Œ๋”๋งํ•ด์ฃผ์–ด์•ผ ์‚ฌ์šฉ์ž๊ฐ€ ๋ณด๊ณ  ๋“ค์„ ์ˆ˜ ์žˆ๋‹ค.

binural audio๋ผ๋Š” ๊ฒƒ์€ left ear์™€ right ear ํ˜•ํƒœ๋กœ ํ—ค๋“œํฐ์šฉ ์˜ค๋””์˜ค๋ฅผ ๋งํ•œ๋‹ค.

์•ž์˜ ๊ณผ์ •๋“ค์ด ๋ชจ๋‘ ๋๋‚˜๋ฉด ์šฐ๋ฆฌ๋Š” listenter pose \(p\) ์—์„œ

\[a_L(t) = A(p,t)\]

๋ผ๋Š” Ambisonics๊ฐ€ ๋งŒ๋“ค์–ด์กŒ๋‹ค.

FOA๋ผ๋ฉด L=1์ด๋ฏ€๋กœ 4๊ฐœ์˜ waveform์ด ๋งŒ๋“ค์–ด์กŒ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค:

\[a_1(t)= \begin{bmatrix} a_{0,0}(t) \\ a_{1,-1}(t) \\ a_{1,0}(t) \\ a_{1,1}(t) \end{bmatrix}\]

์ด์™ธ์— visual scene ๊ทธ๋ƒฅ 3DGS renderer๋กœ pose \(p\) ์— ๋Œ€ํ•ด \(V(p)\)๋กœ ๊ทธ ์œ„์น˜์—์„œ์˜ ์นด๋ฉ”๋ผ ์ด๋ฏธ์ง€๋ฅผ ์ œ๊ณตํ•˜๋ฉด ๋œ๋‹ค.

Ambisonics๋ฅผ ์–ด๋–ป๊ฒŒ left/right ear audio๋กœ ์ œ๊ณตํ• ๊นŒ? ๊ทธ๊ฑด HRTF๋ผ๋Š” ๊ธฐ๋ฒ•์ด ๋‹ต์ด ๋  ์ˆ˜ ์žˆ๋‹ค.

HRTF๋Š” ํŠน์ • ๋ฐฉํ–ฅ์—์„œ ์˜จ ์†Œ๋ฆฌ๊ฐ€ ์‚ฌ๋žŒ์˜ ๋จธ๋ฆฌ์™€ ๊ท€๋ฅผ ๊ฑฐ์ณ ์™ผ์ชฝ ๊ท€์™€ ์˜ค๋ฅธ์ชฝ ๊ท€์— ๊ฐ๊ฐ ์–ด๋–ป๊ฒŒ ๋„๋‹ฌํ•˜๋Š”์ง€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ•„ํ„ฐ๋‹ค.

๊ทธ๋Ÿผ ์ด HRTF ๊ธฐ๋ฐ˜ binaural rendering์„ ํ†ตํ•ด์„œ ๋…ผ๋ฌธ์—์„œ๋Š” time-domain filter๋ฅผ

\[h_{l,m}^{left}, h_{l,m}^{right}\]

๋ผ๊ณ  ํ‘œํ˜„ํ•œ๋‹ค. ์ •ํ™•ํžˆ๋Š” ์ด๋ฅผ HRIR์ด๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค. ์ˆ˜์‹์„ ๋ณด๋ฉด ์•Œ๊ฒ ์ง€๋งŒ, Ambisonics์˜ ๊ฐ channel์— ๋Œ€ํ•ด ํ•ด๋‹น filter๋ฅผ convolution ํ•ด์ค€๋‹ค. ๊ทธ๋Ÿผ ํ•ด๋‹น Ambisonics channel์ด left/right ear์— ์–ด๋–ป๊ฒŒ ์‹ค์ œ๋กœ ๋“ค๋ฆด์ง€ ๊ณ„์‚ฐ๋œ๋‹ค.

์ˆ˜์‹์œผ๋กœ ์˜ˆ์‹œ๋ฅผ ๋ณด๋ฉด,

\[h_{l,m}^{left} * a_{l,m} ,\; h_{l,m}^{right} * a_{l,m}\]

๊ฐ€ ๊ณ„์‚ฐ๋œ๋‹ค๊ณ  ๋ณด๋ฉด ๋œ๋‹ค.

๊ทธ๋Ÿฌ๋ฉด ์ตœ์ข…์‹์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค:

\[\begin{bmatrix} b_{\mathrm{left}} \\ b_{\mathrm{right}} \end{bmatrix} (t) = \sum_{\ell=0}^{L} \sum_{m=-\ell}^{\ell} \begin{bmatrix} h_{\ell,m}^{\mathrm{left}} * a_{\ell,m} \\ h_{\ell,m}^{\mathrm{right}} * a_{\ell,m} \end{bmatrix} (t)\]

์ฆ‰, ์™ผ์ชฝ ๊ท€์— ๋Œ€ํ•œ ๋ชจ๋“  ambisonics channel๋“ค๊ณผ filter์˜ convolution ๊ฐ’๋“ค์„ ๋”ํ•˜๊ณ , ์˜ค๋ฅธ์ชฝ ๊ท€๋„ ๋˜‘๊ฐ™์ด ํ•ด์ค€ ๋‹ค์Œ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

Experiments

3d ๊ณต๊ฐ„์—์„œ listener๊ฐ€ ํŠน์ • ์œ„์น˜์— ์žˆ์„ ๋•Œ ์–ด๋А ๋ฐฉํ–ฅ์—์„œ ์–ด๋–ค ์†Œ๋ฆฌ๊ฐ€ ๋“ค๋ ค์•ผํ•˜๋Š” ์ง€๋ฅผ ํ‰๊ฐ€ํ•˜๋Š” ๋ฐ์ดํ„ฐ์…‹์ด๋‚˜ ๋ฒค์น˜๋งˆํฌ๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ •๋Ÿ‰ ํ‰๊ฐ€๋ฅผ ์œ„ํ•ด ์ €์ž๋“ค์ด ๋งŒ๋“  SONOSCENE360์„ ๋ฐ์ดํ„ฐ์…‹์œผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค. ํ•ด๋‹น ๋ฐ์ดํ„ฐ์…‹์—๋Š” 360ยฐ ์˜์ƒ๊ณผ FOA audio๊ฐ€ ํ•จ๊ป˜ ๋“ค์–ด ์žˆ๋‹ค. ์ •์„ฑ ํ‰๊ฐ€์™€ user study์—์„œ๋Š” ์ธํ„ฐ๋„ท์—์„œ ๊ฐ€์ ธ์˜จ ์‚ฌ์ง„๊ณผ diffusion์œผ๋กœ ์ƒ์„ฑํ•œ ์ด๋ฏธ์ง€ ๋ชจ๋‘ ์ถ”๊ฐ€๋กœ ์‚ฌ์šฉํ•œ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ, ๊ธฐ์กด์— baselines๋กœ ์‚ผ์„ SonoWorld์™€ ๊ฐ™์ด IMAGE2AVSCENE task๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์—†๋‹ค๋Š” ๊ฒƒ์ด ๋ฌธ์ œ์ธ๋ฐ, ๊ทธ๋ž˜์„œ ์ €์ž๋“ค์€ ๋น„์Šทํ•œ visual-conditioned spatial audio generation methods๋ฅผ baseline์œผ๋กœ ๊ฐ€์ ธ์™€์„œ SonoWorld setting์— ๋งž๊ฒŒ ์ž…๋ ฅ์„ ๋ณ€ํ˜•ํ•ด์ค€๋‹ค. ๊ทธ๋ž˜์„œ ๋น„๊ตํ•˜๋Š” ๋ฐฉ๋ฒ•์€ MMAudio, SEE-2-SOUND, ViSAGe, OmniAudio๋‹ค. ์ด ์ค‘์—์„œ MMAudio๋งŒ monaural audio generator๊ณ , ๋‚˜๋จธ์ง€๋Š” spatial audio generation ๋ฐฉ๋ฒ•๋“ค์ด๋‹ค.

๋‹น์—ฐํžˆ ์ค‘์š”ํ•˜๊ฒŒ๋„, Visual Scene์€ SonoWorld ๊ฒƒ์„ ์ œ๊ณตํ•œ๋‹ค. ๋ฌผ๋ก  ๋ชจ๋ธ๋“ค์ด ์ž…๋ ฅ์œผ๋กœ ์š”๊ตฌํ•˜๋Š” ๊ฒƒ์€ ๊ฐ๊ธฐ ๋‹ค๋ฅด๋‚˜, ๊ฐ™์€ visual scene์—์„œ ๋ Œ๋”๋ง๋œ ๊ฑธ ํ† ๋Œ€๋กœ spatial audio๋ฅผ ์–ผ๋งˆ๋‚˜ ์ž˜ ๋งŒ๋“œ๋Š” ์ง€ ํ‰๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๊ฐ baselines์˜ input์„ ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌํ•ด์„œ ์ฃผ์—ˆ๋Š” ์ง€๋Š” ๋…ผ๋ฌธ์„ ํ™•์ธํ•ด๋ณด๊ธธ ๋ฐ”๋ž€๋‹ค.

Quantitative Results

๋จผ์ € SonoWorld๋Š” ๋‘ ๊ฐ€์ง€ ํƒ€์ž…์˜ ํŒŒ์ดํ”„๋ผ์ธ์„ ์ค€๋น„ํ•œ๋‹ค:

  • Open-Source version: 3D reconstruction model์„ HunyuanWorld-1.0๊ณผ sound-source proposal ๋ชจ๋ธ (VLM)์„ LLaVA-Next-34B ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฒ„์ „
  • Proprietary version: 3D reconstruction model์„ Marble๊ณผ sound-source propoasal ๋ชจ๋ธ (VLM)์„ GPT-5๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฒ„์ „

ํ•ด๋‹น Table์€ ๋‘ ์ข…๋ฅ˜์˜ metric์„ ๋ณธ๋‹ค: Spatial Metrics, Semantic Metric

์ฆ‰, ์†Œ๋ฆฌ๊ฐ€ ์˜ฌ๋ฐ”๋ฅธ 3D ๋ฐฉํ–ฅ์—์„œ ๋“ค๋ฆฌ๋Š” ์ง€, ๊ทธ๋ฆฌ๊ณ  ๊ทธ ๋ฐฉํ–ฅ์—์„œ ์‹ค์ œ๋กœ ์ ์ ˆํ•œ ์ข…๋ฅ˜์˜ ์†Œ๋ฆฌ๊ฐ€ ๋“ค๋ฆฌ๋Š” ์ง€ ํ‰๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

$\triangle_{abs \theta}$๋Š” zimuth ์˜ค์ฐจ๋ฅผ ๋งํ•˜๊ณ , $\triangle_{abs \phi}$๋Š” elevation ์˜ค์ฐจ๋ฅผ ๋งํ•˜๊ณ , $\triangle_{Angular}$๋Š” ์ „์ฒด์ ์ธ 3D ๊ฐ๋„ ์˜ค์ฐจ๋ฅผ ๋งํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  CC์™€ AUC๋Š” ์—ฌ๋Ÿฌ source๊ฐ€ ์žˆ์„ ๋•Œ ๊ตฌ๋ฉด ์ „์ฒด์˜ sound energy distribution์ด GT์™€ ์–ผ๋งˆ๋‚˜ ๋น„์Šทํ•œ๊ฐ€๋ฅผ ๋ณด๋Š” metric์ด๋‹ค.

ํ‘œ๋ฅผ ๋ณด๋ฉด ์•Œ๊ฒ ์ง€๋งŒ, ์ „๋ฐ˜์ ์œผ๋กœ Open-source ๋ชจ๋ธ๋กœ ํ•ด๋‹น ๋ฐฉ๋ฒ•๋ก ์œผ๋กœ ์ง„ํ–‰ํ•ด๋„ ๊ธฐ์กด ๋ฐฉ๋ฒ•๋“ค๋ณด๋‹ค ์ข‹์€ ์„ฑ๋Šฅ์„ ๋ณด์ด๋Š” ๊ฑธ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ๋˜ํ•œ Proprietary model๋“ค๋กœ ๋ฐ”๊ฟจ์„ ๋•Œ๋Š” ๋”์šฑ ์ข‹์€ ์„ฑ๋Šฅ์„ ๋ณด์—ฌ์ค€๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์ €์ž๋“ค์€ ๋ณธ์ธ๋“ค์ด ์ •ํ•œ scene๋“ค์ด sonoworld์—๋งŒ ์œ ๋ฆฌํ•˜๊ฒŒ ์ž‘์šฉํ•˜์ง€ ์•Š์•˜์Œ์„ ๋ณด์—ฌ์ฃผ๊ธฐ ์œ„ํ•ด์„œ SONOSCENE360์˜ ๊ฐ scene์— ๋Œ€ํ•ด ๋”ฐ๋กœ metric ๊ฒฐ๊ณผ๋ฅผ ๋ณด์—ฌ์ค€๋‹ค. ํ•ด๋‹น figure๋ฅผ ๋ณด๋ฉด ์•Œ๊ฒ ์ง€๋งŒ, ๋ชจ๋“  scene์—์„œ baseline๋ณด๋‹ค ์ผ๊ด€๋˜๊ฒŒ ๋†’์€ ์„ฑ๋Šฅ์„ ๋ณด์˜€๋‹ค๊ณ  ์„ค๋ช…ํ•œ๋‹ค.

์ €์ž๋“ค์€ User study๋„ ์ง„ํ–‰ํ–ˆ๋‹ค. ์ฐธ๊ฐ€์ž๋Š” 50๋ช…, scene์€ ์ด 12๊ฐœ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์„ธ ๊ฐ€์ง€ pair-wise comparison์„ ์ˆ˜ํ–‰ํ•œ๋‹ค:

  • ours vs. MMAudio
  • ours vs. OmniAudio
  • OmniAudio vs. MMAudio

๊ฐ scene์—์„œ visual video๋Š” ๋ชจ๋“  ๋ฐฉ๋ฒ•์ด ์™„์ „ํžˆ ๋™์ผํ•˜๊ณ , audio๋งŒ ๋‹ค๋ฅด๊ฒŒ ์ƒ์„ฑํ•œ๋‹ค.

์ฐธ๊ฐ€์ž๋Š” spatial coherence, audio-visual semantic alignmnet๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์–ด๋А audio๊ฐ€ ๋” ์ข‹์€์ง€ ์„ ํƒํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  real scene๊ณผ synthetic scene ๋ชจ๋‘์—์„œ SonoWorld์˜ human preference๊ฐ€ ๊ฐ€์žฅ ๋†’๊ฒŒ ๋‚˜ํƒ€๋‚ฌ๋‹ค.

Qualitative Results

๋…ผ๋ฌธ์—์„œ๋Š” ๋จผ์ € SonoWorld๋กœ ๋งŒ๋“  3D audio-visual scene์„ ์‹ค์ œ๋กœ ์ž์œ ๋กญ๊ฒŒ ๋Œ์•„๋‹ค๋‹ˆ๋ฉด์„œ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ณผ ์ˆ˜ ์žˆ๋Š” ์ง€ ํ™•์ธํ–ˆ๋‹ค.

๋…ผ๋ฌธ์—์„œ๋Š” ์ด๋ ‡๊ฒŒ ๋งํ•œ๋‹ค:

โ€œFountain scene์—์„œ Apple M3 Pro ๊ธฐ์ค€ audio callback์ด 1 ms ๋ฏธ๋งŒ์ด๊ณ , 48 kHz์—์„œ 256-sample buffer ํ•˜๋‚˜๊ฐ€ ์žฌ์ƒ๋˜๋Š” ์‹œ๊ฐ„์ด ์•ฝ 5.3 ms์ด๋‹ค.โ€

audio ์„ค์ •์€ 48 kHz ๋ผ๊ณ  ์–ธ๊ธ‰ํ•œ๋‹ค. ์ด ์˜๋ฏธ๋Š” 1์ดˆ์˜ audio waveform์„ 48000๊ฐœ์˜ ์ˆซ์ž๋กœ ํ‘œํ˜„ํ•œ๋‹ค๋Š” ๋œป์ด๋ฉฐ, sample ํ•˜๋‚˜๊ฐ€ ๋‹ด๋‹นํ•˜๋Š” ์‹œ๊ฐ„์€ \(\frac{1}{48000} sec\)์ด๋‹ค. ์•ฝ 0.0208ms ์ •๋„๋‹ค. audio system์€ sample ํ•˜๋‚˜๊ฐ€ ๋๋‚˜๋ฉด ๋งค๋ฒˆ CPU๋ฅผ ํ˜ธ์ถœํ•ด์„œ ๋‹ค์Œ sample์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ์‹์ด ๋น„ํšจ์œจ์ ์ด์–ด์„œ ์—ฌ๋Ÿฌ sample์„ buffer๋ผ๋Š” ๋ฌถ์Œ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š”๋ฐ, SonoWorld์˜ ๊ฒฝ์šฐ ๋…ผ๋ฌธ์—์„œ ์–ธ๊ธ‰ํ•˜๋Š” buffer size๊ฐ€ 256 samples ์ธ ๊ฒƒ์ด๋‹ค.

์—ฌ๊ธฐ์„œ audio callback์€ ํ˜„์žฌ 256 sample์˜ ์žฌ์ƒ์ด ๋๋‚˜๊ณ  listener์˜ ์œ„์น˜๊ฐ€ ๋ณ€๊ฒฝ๋˜๋ฉด, ๋‹ค์Œ 256 samples์— ๋Œ€ํ•ด ์•„๋ž˜์˜ ๊ณ„์‚ฐ ๊ณผ์ •์„ ์˜ค๋””์˜ค ์žฌ์ƒ์‹œ๊ฐ„ 5.3ms ์ด๋‚ด์— ๋๋‚ด๋†”์•ผ listener๊ฐ€ ๊ณ„์† ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋“ค์„ ์ˆ˜ ์žˆ๋‹ค:

\[\boxed{ \begin{gathered} \text{Audio system:} \\ \text{"๋‹ค์Œ 256 samples ํ•„์š”."} \\ \downarrow \\ \text{SonoWorld audio callback} \\ \downarrow \\ \text{ํ˜„์žฌ listener pose ํ™•์ธ} \\ \downarrow \\ \text{sound source์™€ ๊ฑฐ๋ฆฌ/๋ฐฉํ–ฅ ๊ณ„์‚ฐ} \\ \downarrow \\ \text{Ambisonics ๊ณ„์‚ฐ} \\ \downarrow \\ \text{HRTF decoding} \\ \downarrow \\ \text{Left/Right 256 samples ์ƒ์„ฑ} \end{gathered} }\]

์ด๋ ‡๊ฒŒ ๋Š๊น€์—†์ด ์‹ค์‹œ๊ฐ„์œผ๋กœ listener๊ฐ€ ๊ณต๊ฐ„ ์Œํ–ฅ์„ ๋“ฃ๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

ํ•ด๋‹น figure๋Š” 360ยฐ ๊ณต๊ฐ„์—์„œ ์–ด๋А ๋ฐฉํ–ฅ์— sound energy๊ฐ€ ๊ฐ•ํ•˜๊ฒŒ ์กด์žฌํ•˜๋Š” ์ง€ ๋ณด์—ฌ์ค€๋‹ค. ์ด๋ฅผ ํ†ตํ•ด spatial audio์˜ ๋ฐฉํ–ฅ ๋ถ„ํฌ๊ฐ€ ์‹ค์ œ FOA์™€๋„ ์‹œ๊ฐ์ ์œผ๋กœ ๋น„์Šทํ•˜๋‹ค๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

Contribution

  1. ๊ณต๊ฐ„ ์Œํ–ฅ ํ•„๋“œ์™€ ์ƒํ˜ธ์ž‘์šฉ์ด ๊ฐ€๋Šฅํ•œ 3D ์‹œ๊ฐ ์žฅ๋ฉด์„ ๊ณต๋™ ์ƒ์„ฑํ•˜๋Š” ์ƒˆ๋กœ์šด ๋„์ „ ๊ณผ์ œ์ธ โ€œIMAGE2AVSCENEโ€์„ ์ •์˜ํ•˜๊ณ  ์ตœ์ดˆ์˜ ํšจ๊ณผ์ ์ธ ํ”„๋ ˆ์ž„์›Œํฌ์ธ SONOWORLD๋ฅผ ๊ตฌ์ถ•
  2. ํ‰๊ฐ€ ๋ฐ์ดํ„ฐ์…‹์ธ SONOSCENE360์„ ์ง์ ‘ ์ˆ˜์ง‘ํ•˜๊ณ  ๊ธฐ์—ฌํ•˜์˜€๋‹ค.
  3. ์ •๋Ÿ‰ ํ‰๊ฐ€ ์ง€ํ‘œ์™€ ์ •์„ฑ ํ‰๊ฐ€ ๊ทธ๋ฆฌ๊ณ  ์ฃผ๊ด€์  ์ธ์ง€ ํ‰๊ฐ€๋ฅผ ํ†ตํ‹€์–ด ๊ธฐ์กด์˜ ์šฐ์ˆ˜ํ•œ ๋ฒ ์ด์Šค๋ผ์ธ ๋ชจ๋ธ๋“ค์„ ํฐ ์ฐจ์ด๋กœ ์•ž์„ฐ์œผ๋ฉฐ, ์—ฌ๋Ÿฌ applications์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅ์„ฑ์„ ๋ณด์—ฌ์ฃผ์—ˆ๋‹ค.

Limitations & Future work

์•„์‰ฝ๊ฒŒ๋„ ์ด ๋…ผ๋ฌธ์€ staticํ•œ 3D visual scene์„ ๊ธฐ์ค€์œผ๋กœ ์ง„ํ–‰๋˜์—ˆ๋‹ค. ์ฆ‰, object๋“ค์ด ์›€์ง์ด๋Š” 4D Scene์—๋Š” ์ ์šฉ๋˜์ง€ ์•Š์€ ๊ฒƒ์ด๋‹ค. ๊ฐ„๋‹จํ•˜๊ฒŒ, ํ•ด๋‹น ๋…ผ๋ฌธ์€ user tracking์„ ํ†ตํ•œ ๊ณต๊ฐ„ ์Œํ–ฅ ์ฒ˜๋ฆฌ์— ์ง‘์ค‘ํ–ˆ๋‹ค๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ์ดํ›„์˜ ์—ฐ๊ตฌ๋ฅผ ํ†ตํ•ด 4D Scene์— ์ ์šฉํ•  ๋•Œ๋Š” user tracking ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ object tracking์„ ๋™์‹œ์— ์ˆ˜ํ–‰ํ•˜์—ฌ ์›€์ง์ด๋Š” ์Œ์›์ด ๊ณต๊ฐ„ ์Œํ–ฅ์— ์˜ํ–ฅ์„ ์ฃผ๋Š” ๊ฒƒ๊นŒ์ง€ ๋ Œ๋”๋ง๋  ์ˆ˜ ์žˆ๋„๋ก ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋‹ค.