4 minute read

Reference

GeoGaussian: Geometry-aware Gaussian Splatting for Scene Rendering

Geometric Constraints: Tangent Space Constraint & Co-Planar Constraint

In this paper, we propose a geometry-aware Gaussian Splatting method emphasizing rendering fidelity and geometry structure simultaneously.

Initially, normal vectors are extracted from input point clouds, and then smoothly connected areas are detected based on normals.

For general regions, we follow the traditional initialization process [19] that represents every point as a sphere. However, each point is parameterized as a thin ellipsoid with explicit geometric information for smoothly connected areas.

  • Specifically, the third value of the scale vector $S$ is fixed to make the ellipsoid thin.
  • Additionally, the third column of rotation matrix $R$ decoupled from the covariance matrix $\Sigma$ is initialized by the normal vector, as shown in Figure 2.

    image

    • 3D Gaussian์˜ densification(split & clone)์ด tangent space์œ„์—์„œ ์ผ์–ด๋‚˜๋„๋ก constraint๋ฅผ ์ ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    • Based on the design, we encourage these thin ellipsoids to lie on the surface of smooth regions.

Tangent space (Normal vector, Tangent vector, Binormal vector)

Tangent space๋Š” 3D ๋ชจ๋ธ์˜ ํ‘œ๋ฉด์—์„œ ์ •์˜๋˜๋Š” ์ขŒํ‘œ๊ณ„๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์ด๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ๋‹ค์Œ ์„ธ ๊ฐ€์ง€ ๋ฒกํ„ฐ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค:

image

Normal ๋ฒกํ„ฐ

  • ์ •์˜: ํ‘œ๋ฉด์—์„œ โ€œ๋ฐ”๊นฅ์ชฝโ€์„ ๊ฐ€๋ฆฌํ‚ค๋Š” ๋ฐฉํ–ฅ ๋ฒกํ„ฐ
  • ํŠน์ง•: ํ‘œ๋ฉด์˜ ํ‰๋ฉด์ด๋‚˜ ์ ‘์„ ์— ์ˆ˜์ง(90๋„ ๊ฐ๋„)

Tangent ๋ฒกํ„ฐ

  • ์ •์˜: ํ‘œ๋ฉด์˜ ํ‰๋ฉด ๋‚ด์— ์กด์žฌํ•˜๊ฑฐ๋‚˜ ๊ณก๋ฉด์˜ ํ•œ ์ ์—์„œ ์ ‘ํ•˜๋Š” ๋ฒกํ„ฐ
  • ํŠน์ง•: Normal ๋ฒกํ„ฐ์™€ ์ˆ˜์ง

Binormal (Bitangent) ๋ฒกํ„ฐ

  • ์ •์˜: Normal ๋ฒกํ„ฐ์™€ Tangent ๋ฒกํ„ฐ ๋ชจ๋‘์— ์ˆ˜์ง์ธ โ€œ๋‹ค๋ฅธโ€ ์ ‘์„  ๋ฒกํ„ฐ
  • ํŠน์ง•: Normal, Tangent์™€ ํ•จ๊ป˜ ์ง๊ต ์ขŒํ‘œ๊ณ„ ํ˜•์„ฑ

์ด ๋…ผ๋ฌธ์—์„œ๋Š” ํŠนํžˆ smoothํ•œ ์˜์—ญ์—์„œ thin ellipsoid๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ tangent space๋ฅผ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค:

  • Ellipsoid์˜ ํšŒ์ „ ํ–‰๋ ฌ $R$์˜ ์„ธ ๋ฒˆ์งธ ์—ด์„ normal ๋ฒกํ„ฐ๋กœ ์ดˆ๊ธฐํ™”ํ•ฉ๋‹ˆ๋‹ค.
  • ์ด๋ฅผ ํ†ตํ•ด thin ellipsoid๊ฐ€ smoothํ•œ ์˜์—ญ์˜ ํ‘œ๋ฉด์— ๋†“์ด๋„๋ก ์œ ๋„ํ•ฉ๋‹ˆ๋‹ค.

Co-planar Constraint

Co-planar constraint๋Š” ์—ฌ๋Ÿฌ ์ ์ด๋‚˜ ๋ฒกํ„ฐ๊ฐ€ ๊ฐ™์€ ํ‰๋ฉด ์ƒ์— ์žˆ๋„๋ก ํ•˜๋Š” ์ œ์•ฝ ์กฐ๊ฑด์ž…๋‹ˆ๋‹ค.

์ด ๋…ผ๋ฌธ์—์„œ๋Š” ์ด ๊ฐœ๋…์„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค:

  • Gaussian ๋ถ„ํ• : ํฐ Gaussian ์ ์„ ๋‘ ๊ฐœ์˜ ์ž‘์€ co-planar Gaussian์œผ๋กœ ๋ถ„ํ• ํ•  ๋•Œ, ์ด๋“ค์ด ์›๋ž˜ Gaussian์˜ ์œ„์น˜์™€ normal ๋ฒกํ„ฐ๋กœ ์ •์˜๋œ ํ‰๋ฉด ์ƒ์— ๋†“์ด๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
  • Gaussian ๋ณต์ œ: ์ƒˆ๋กœ ์ƒ์„ฑ๋œ Gaussian์ด ์›๋ณธ๊ณผ ๊ฐ™์€ ํ‰๋ฉด ์ƒ์— ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์›๋ณธ์˜ normal ๋ฒกํ„ฐ์— ์ˆ˜์ง์ธ ๋ฐฉํ–ฅ์œผ๋กœ๋งŒ ์ด๋™์„ ํ—ˆ์šฉํ•จ์œผ๋กœ์จ ๋‹ฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.
  • ๊ธฐํ•˜ํ•™์  ์ผ๊ด€์„ฑ ์ œ์•ฝ: Smoothํ•œ ์˜์—ญ์— ์žˆ๋Š” thin ellipsoid๋“ค์— ๋Œ€ํ•ด, ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ด์›ƒ๋“ค์ด co-planarํ•˜๋„๋ก ์œ ๋„ํ•˜๋Š” ์ƒˆ๋กœ์šด ์ œ์•ฝ ์กฐ๊ฑด์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.

Method

3.2 Gaussian Initialization and Densification

Initialization.

we assume that the third column $r_3$ of the rotation matrix from the covariance matrix $\Sigma$ represents the normal while the other two columns are set as a group of normalized basis vectors perpendicular to $r_3$.

Densification in the tangential space.

Cloning.

โ€ฆ $r^{\intercal}_3 \mu$ shows the distance between the origin of the world coordinate and the plane established by normal $r_3$ and position $\mu$ vectors of $G_{\theta}$.

์•„๋ž˜ ์ง์ ‘ ๊ทธ๋ฆฐ ๊ทธ๋ฆผ๋“ค์— ์˜ค๋ฅ˜๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ง€์ ํ•ด์ฃผ์‹œ๋ฉด ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

image

Cloning ๊ณผ์ •์˜ ์ˆ˜์‹

The gradient of the position is calculated over 10 iterations [19]. The position $\mu_{i+1}$ of the new Gaussian is obtained when the accumulated gradient ($\delta \mu_i$) exceeds the threshold $\gamma$.

However, instead of being set along the direction of the gradient, the new position of the clone Gaussian is determined as follows:

\[\mu^{i+1} = \mu^i + \delta \mu^i - r_3^{\intercal} \delta \mu^i\]
  1. $\mu^i$
    • ํ˜„์žฌ Gaussian์˜ ์œ„์น˜ (์ค‘์‹ฌ์ ).
    • ๊ธฐ์กด Gaussian์˜ ์ค‘์‹ฌ ์œ„์น˜์—์„œ ์—…๋ฐ์ดํŠธ ์‹œ์ž‘.
  2. $\delta \mu^i$:
    • gradient vector
    • 3D Gaussian์˜ ์œ„์น˜๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉํ–ฅ๊ณผ ํฌ๊ธฐ๋ฅผ ์ œ๊ณต.
  3. $r_3 \delta \mu^i$:
    • $\delta \mu^i$์˜ ๋ฒ•์„  ๋ฒกํ„ฐ $r_3$ ๋ฐฉํ–ฅ ์„ฑ๋ถ„.
    • ๊ทธ๋ž˜๋””์–ธํŠธ ๋ฒกํ„ฐ๊ฐ€ ๋ฒ•์„  ๋ฒกํ„ฐ $r_3$์— ์ •๋ ฌ๋œ ๋ฐฉํ–ฅ ์„ฑ๋ถ„์„ ๊ณ„์‚ฐ.
  4. $\delta \mu^i - r_3 \delta \mu^i$:
    • ๊ทธ๋ž˜๋””์–ธํŠธ์—์„œ ๋ฒ•์„  ๋ฒกํ„ฐ ๋ฐฉํ–ฅ ์„ฑ๋ถ„์„ ์ œ๊ฑฐํ•˜์—ฌ, ๋ฒ•์„  ๋ฒกํ„ฐ์— ์ˆ˜์ง์ธ ๋ฐฉํ–ฅ๋งŒ ๋‚จ๊น€.
    • ๊ฒฐ๊ณผ: ์ƒˆ๋กœ์šด Gaussian์˜ ์ค‘์‹ฌ $\mu^{i+1}$์€ ์›๋ž˜ Gaussian์˜ ํ‰๋ฉด(๋ฒ•์„  $r_3$์— ์ˆ˜์ง)์— ์œ„์น˜ํ•˜๋„๋ก ๋ณด์žฅ.
  5. ๋ชฉ์ :
    • ์ƒˆ๋กญ๊ฒŒ clone๋œ Gaussian์ด ์›๋ž˜ Gaussian์˜ ํ‰๋ฉด์— ์œ„์— ๋จธ๋ฌผ๋„๋ก ํ•˜์—ฌ, ํ‘œ๋ฉด์˜ ๊ธฐํ•˜ํ•™์  ์ •ํ•ฉ์„ฑ์„ ์œ ์ง€.

Splitting.

$S_{co}$๋Š” ๋งค๋„๋Ÿฌ์šด ํ‘œ๋ฉด(smooth surface)์— ์œ„์น˜ํ•œ ํฌ์ธํŠธ๋“ค์˜ ์ง‘ํ•ฉ์ž…๋‹ˆ๋‹ค. ์ด ์ง‘ํ•ฉ์€ ํฌ์ธํŠธ ํด๋ผ์šฐ๋“œ์—์„œ ์ถ”์ถœ๋œ ๋ฒ•์„  ๋ฒกํ„ฐ(normal vector)๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ถ„๋ฅ˜๋˜๋ฉฐ, ๋‹ค์Œ ๊ณผ์ •์„ ํ†ตํ•ด ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค:

๋ฒ•์„  ๋ฒกํ„ฐ ์ถ”์ถœ:

  • ํฌ์ธํŠธ ํด๋ผ์šฐ๋“œ ๋ฐ์ดํ„ฐ์—์„œ ๋ฒ•์„  ๋ฒกํ„ฐ๋ฅผ ์ถ”์ถœํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฒ•์„  ๋ฒกํ„ฐ์˜ ์‹ ๋ขฐ๋„๋ฅผ ํ‰๊ฐ€ํ•˜๋Š” ๋‘ ๊ฐ€์ง€ ๊ธฐ์ค€:
    • ์ฃผ๋ณ€ ํฌ์ธํŠธ๋“ค๊ณผ์˜ ๊ฑฐ๋ฆฌ๊ฐ€ ๋„ˆ๋ฌด ๋จผ ์ (์™ธ๋”ด ์ )์€ ์ œ๊ฑฐ.
    • ๊ฐ€๊นŒ์šด ์ด์›ƒ์˜ ๋ฒ•์„  ๋ฒกํ„ฐ์™€ ํฐ ๊ฐ๋„๋ฅผ ์ด๋ฃจ๋Š” ์ ๋„ ์ œ๊ฑฐ.
    • ์ด๋Ÿฌํ•œ ๊ณผ์ •์„ ํ†ตํ•ด ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํฌ์ธํŠธ๋งŒ ์„ ํƒ๋ฉ๋‹ˆ๋‹ค.

๋‘ ๊ทธ๋ฃน์œผ๋กœ ๋ถ„๋ฅ˜:

  • $S_{co}$ : ๋งค๋„๋Ÿฌ์šด ํ‘œ๋ฉด(smooth surfaces)์— ์œ„์น˜ํ•œ ์‹ ๋ขฐ๋„ ๋†’์€ ํฌ์ธํŠธ๋“ค์˜ ์ง‘ํ•ฉ.
  • $S_{ind}$ : ๋…๋ฆฝ์ ์ด๊ณ  ๊ตฌ์กฐ์  ์—ฐ๊ฒฐ์„ฑ์ด ๋ถ€์กฑํ•œ ์ ๋“ค์˜ ์ง‘ํ•ฉ. (geometry ์ œ์•ฝ์ด ์—†๋Š” ์ผ๋ฐ˜์ ์ธ 3D Gaussian๋“ค์˜ ์ง‘ํ•ฉ)

Splitting ์ˆ˜์‹ ์„ค๋ช…

๋‚ด์ ์˜ ์„ฑ์งˆ์„ ์ด์šฉํ•ด์„œ ์ƒˆ๋กœ ๋ณต์ œ๋œ Gaussian์ด ๊ฐ™์€ ํ‰๋ฉด์— ์žˆ๋‹ค๊ณ  ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.

๋‚ด์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

image

๋‚ด์ ์„ ์ด์šฉํ•œ Co-planar constraint๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

image

Splitting ๊ณผ์ •์€ $S_{co}$ ์— ์†ํ•œ Gaussian๋“ค์ด ๋งค๋„๋Ÿฌ์šด ํ‘œ๋ฉด์˜ ๊ธฐํ•˜ํ•™์  ์ •๋ ฌ์„ฑ์„ ์œ ์ง€ํ•˜๋ฉด์„œ ๋ถ„๋ฆฌ๋˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์ˆ˜ํ•™์ ์œผ๋กœ ํ‘œํ˜„ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

\[[\mu^{i+1} | \mu^{i+1 \intercal} r_3^{i+1} = \mu^{i \intercal}r_3^i, \ \mathcal{G}\_{\theta}^{i+1} \in S_{co}]\]
  1. $\mu^{i+1 \intercal}r_3^{i+1} = \mu^{i \intercal}r_3^i$:
    • ์ƒˆ๋กœ์šด Gaussian $G_{\theta}^{i+1}$์˜ ์ค‘์‹ฌ $\mu^{i+1}$์ด ๊ธฐ์กด Gaussian $G_{\theta}^i$์˜ ๋ฒ•์„  ๋ฒกํ„ฐ $r_3^i$์™€ ๋™์ผํ•œ ํˆฌ์˜๊ฐ’์„ ๊ฐ€์ ธ์•ผ ํ•œ๋‹ค๋Š” ์กฐ๊ฑด.
    • ์ด๋Š” ์ƒˆ๋กœ์šด Gaussian์ด ๊ธฐ์กด Gaussian๊ณผ ๋™์ผํ•œ ํ‰๋ฉด์— ์กด์žฌํ•จ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.
  2. $G_{\theta}^{i+1} \in S_{co}$:
    • ์ƒˆ๋กœ์šด Gaussian $G_{\theta}^{i+1}$์€ ๋ฐ˜๋“œ์‹œ ๋งค๋„๋Ÿฌ์šด ํ‘œ๋ฉด ์˜์—ญ $S_{co}$์— ์†ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
    • ์ด๋Š” ์ƒˆ๋กœ์šด Gaussian์ด ๋งค๋„๋Ÿฌ์šด ํ‘œ๋ฉด์˜ ๊ตฌ์กฐ์™€ ์ •๋ ฌ์„ฑ์„ ์œ ์ง€ํ•ด์•ผ ํ•จ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

Splitting ๊ณผ์ •์˜ ์˜์˜

  • Splitting์€ ๊ธฐ์กด Gaussian์„ ๋‘ ๊ฐœ์˜ ๋” ์ž‘์€ Gaussian์œผ๋กœ ๋ถ„๋ฆฌํ•˜๋ฉด์„œ๋„, ๊ณตํ‰๋ฉด(co-planar) ์กฐ๊ฑด๊ณผ ๋งค๋„๋Ÿฌ์šด ํ‘œ๋ฉด ์ •๋ ฌ์„ฑ์„ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.
  • ์ƒˆ๋กœ์šด Gaussian๋“ค์€ ๊ธฐ์กด Gaussian์˜ ํ‰๋ฉด ์œ„์— ์œ„์น˜ํ•˜๋ฉฐ, $S_{co}$์˜ ๊ธฐํ•˜ํ•™์  ํŠน์„ฑ์„ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.

Leave a comment