当前位置:   article > 正文

110、2D Gaussian Splatting for Geometrically Accurate Radiance Fields

2d gaussian splatting

简介

官网
在这里插入图片描述
由于三维高斯的多视图不一致性,3DGS无法准确地表示表面

将三维体折叠成一组二维定向平面高斯盘。与3D高斯函数不同,2D高斯函数在本质上建模表面时提供了一致的视图几何。为了准确地恢复薄表面并实现稳定的优化,我们引入了一种利用射线-飞溅相交和光栅化的透视精度2D飞溅过程

与3DGS不同,用二维高斯基元表示3D场景,每个基元定义一个定向椭圆盘。2D高斯函数相对于3D高斯函数的显著优势在于在渲染过程中精确的几何表示。具体来说,3DGS在像素射线和3D高斯之间的交叉点评估高斯值,这导致从不同视点渲染时深度不一致。相比之下,利用明确的射线-飞溅相交,导致透视精度飞溅
在这里插入图片描述
3DGS在不同视点观看时,使用不同的相交平面进行价值评估,导致不一致。2DGS提供多视图一致的价值评估。

实现流程

首先,三维高斯的体积辐射表示与表面的薄性质相冲突

其次,3DGS不原生建模表面法线,这对于高质量的表面重建至关重要

第三,3DGS中的光栅化过程缺乏多视图一致性,导致不同视点的2D相交平面不同,如上图所示。此外,使用仿射矩阵将3D高斯变换为射线空间只能在中心附近产生准确的投影,影响周围区域的透视精度。因此,它经常导致噪声重构。

Modeling

在这里插入图片描述

在一个blob中建模整个角度辐射,通过在3D空间中嵌入“平面”二维高斯函数来简化三维建模。在二维高斯模型中,原语将密度分布在平面圆盘内,并将法线定义为密度变化最剧烈的方向。此功能可以更好地与薄表面对齐。

2D splat的特征是其中心点 p k p_k pk,两个主切向量 t μ t_\mu tμ t v t_v tv,以及控制2D高斯方差的缩放向量 S = ( s u , s b ) S =(s_u,s_b) S=(susb)。始法线是由两个正交的切向量 t w = t u × t v t_w = t_u \times t_v tw=tu×tv 定义的。可以将方向排列成一个3 × 3的旋转矩阵 R = [ t u , t v , t w ] R=[t_u,t_v,t_w] R=[tu,tv,tw],将缩放因子排列成一个3 × 3的对角矩阵 S,其最后一项为零

在世界空间的局部切平面上定义二维高斯函数
在这里插入图片描述
其中 H ∈ 4 × 4 H∈4 × 4 H4×4 是表示二维高斯几何的齐次变换矩阵。

对于 u v uv uv空间中的点 u = ( u , v ) u =(u,v) u=(uv),则可以用标准高斯函数求其二维高斯值
在这里插入图片描述
中心 p k p_k pk,缩放 ( s u , s v ) (s_u,s_v) (su,sv)和旋转 ( t u , t v ) (t_u,t_v) (tu,tv)是可学习的参数。与3DGS一样,每个2D高斯原语都具有不透明度的 α \alpha α和与视图相关的外观 c ,并以球面谐波参数化。

Splatting

渲染二维高斯图的一种常用策略是使用透视投影的仿射近似将二维高斯基元投影到图像空间上,这种投影仅在高斯中心准确,并且随着距离中心的增加,近似误差也会增加

这里使用基于齐次坐标的公式。具体来说,将2D图像投影到图像平面上可以用齐次坐标下的一般2D到2D映射来描述。设W∈4 × 4 为世界空间到屏幕空间的变换矩阵。屏幕空间点由
在这里插入图片描述
其中 x 表示从相机发出的均匀射线,穿过像素(x,y),并在深度 z 处与splat相交

使用 M = ( W H ) − 1 M = (WH)^{−1} M=(WH)1 的隐式方法将其二次曲线投影到屏幕空间中,逆变换引入了数值不稳定性,特别是当飞溅退化成线段时(即,如果从侧面观察),为了解决这个问题,以前的表面喷溅呈现方法使用预定义的阈值丢弃这种病态转换。然而,这种方案在可微分的呈现框架中提出了挑战,因为阈值设置可能导致不稳定的优化。为了解决这个问题,利用了一个明确的射线-拼板交叉

Ray-splat Intersection

通过寻找三个非平行平面的交点来有效地定位射线片的交点

给定一个图像坐标 x = ( x , y ) x = (x, y) x=(x,y),将像素的射线参数化为两个正交平面的交点:x-plane 和 y-plane

x-plane由一个法向量(- 1,0,0)和一个偏移量 x 定义,可以表示为一个四维齐次平面 h x = ( − 1 , 0 , 0 , x ) h_x = (-1,0,0,x) hx=(1,0,0,x),同样的y-plane表示为 h y = ( 0 , − 1 , 0 , y ) h_y=(0,-1,0,y) hy=(0,1,0,y)

射线 x = ( x , y ) x = (x, y) x=(x,y) 可以由 x-plane和y-planes的交集确定

将两个平面转换为二维高斯基元的局部坐标,即

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/612228
推荐阅读
相关标签