在这里插入图片描述


标题:《IBGS: Image-Based Gaussian Splatting》
项目:https://hoangchuongnguyen.github.io/ibgs
来源:澳大利亚国立大学;nvidia

摘要

  三维高斯溅射(3DGS)近年来作为新型视图合成(NVS)的快速高效方法崭露头角。然而,其采用的低阶球面谐波限制了对空间变化色彩及视图依赖效应(如镜面高光)的捕捉能力。现有研究要么通过全局纹理贴图增强高斯(该方法在复杂场景中表现欠佳),要么采用逐高斯贴图(这会带来高昂的存储开销)。我们提出IBGS,一种高效替代方案,通过利用高分辨率源图像实现精细细节与视图特定色彩建模。具体而言,我们将每个像素颜色建模为标准3DGS渲染基础色与从邻近训练图像中学习到的残差的组合。这种设计不仅实现了精准的表面对齐,还能渲染出高频细节与精确视图依赖效果。在标准 NVS 基准测试中的实验表明,我们的方法在渲染质量上显著优于传统高斯贴片方法,且未增加存储开销。

  

一、高斯溅射

  3DGS将场景表示为一组三维高斯基元。每个三维高斯基元G由三维位置 µ ∈ R 3 µ ∈R^3 µR3和协方差矩阵 Σ ∈ R 3 × 3 Σ ∈R^{3×3} ΣR3×3参数化,其中协方差矩阵分解为旋转矩阵R∈SO(3)和对角尺度矩阵 S ∈ R 3 × 3 S∈R^{3×3} SR3×3,满足 Σ = R S S T R T Σ = RSS^TR^T Σ=RSSTRT。在视点处渲染图像时,每个三维高斯基元 G G G被投影到图像平面上,生成二维高斯基元 G 2 D G^{2D} G2D。随后可通过体绘制方程计算像素 p p p的颜色:
在这里插入图片描述

其中 v i v_i vi表示从相机中心到第 i i i个高中心的向量, Ψ l ( h , v ) Ψ_l(h,v) Ψl(h,v)将高斯分布的SH系数 h h h映射为颜色 c c c,条件是方向 v v v

二、空间变化和视点相关颜色的建模

  3DGS的色彩建模中,虽然高斯光照模型(Gi)在特定视角下能覆盖图像中的多个像素点,但由于所有像素共享SH系数 h h h和视点方向 v v v,该模型只能表示单一颜色。这种特性导致模型在建模高频细节区域色彩时存在局限性。此外,由于3DGS采用低阶SH函数(l≤3)来模拟视点相关色彩,该方法难以捕捉反射或镜面高光等复杂视点效应。一种简单的解决方案是增加SH函数阶数l,但这会导致SH系数数量呈二次增长,从而引发存储需求激增的问题。

  IBGS 可在不增加存储空间的前提下,对图像的高频细节和视点相关色彩进行建模:采用基于图像的高斯溅射

  • (1)通过SH函数获取base 色彩,
  • (2) 通过色彩残差项捕捉邻近源图像的视点特异性及高频信息

在这里插入图片描述

其中 d ( p ) ∈ R 3 d(p)∈R^3 d(p)R3 表示穿过像素 p p p 的相机光线方向。 ∆ c m ∈ R 3 ∆c_m∈R^3 cmR3 ∆ d m ∈ R 4 ∆d_m ∈ R^4 dmR4 分别表示从第 m m m个邻近光源视图中提取的外观特征和相机特征。 F ( ⋅ ) F(·) F()是一个轻量级网络,以提取的特征作为输入,预测一个残差项 ∆ c ( p ) ∆c(p) c(p),该残差项用于补充由高斯光栅化生成的基础颜色 c ( p ) c(p) c(p)

  基于多视角特征 ∆ c m ∆c_m cm(该特征能捕捉不同视角间的高频细节与色彩变化),预测当前视角的像素颜色,模型可学习光照效果随视角变化的规律。图1展示了IBGS整体流程。

在这里插入图片描述

三、源视图的特征提取

  为预测像素 p p p的颜色残差 ∆ c ( p ) ∆c(p) c(p),首先从多幅源图像中提取颜色信息 ∆ c m ( p ) ∆c_m(p) cm(p):首先(1)从相机中心 o o o出发、方向为 d ( p ) d(p) d(p)的相机光线与(2)由高斯中心 µ i µ_i µi 及其法向量 n i n_i ni参数化的平面的交集(法向量 n i ∈ R 3 n_i∈R^3 niR3作为每个高斯 G i G_i Gi的附加可学习属性,推导见最后):

在这里插入图片描述
对于第 m m m个源视图,将交点 x i ( p ) x_i(p) xi(p)投影至邻近源视图的图像平面,从而提取颜色信息

在这里插入图片描述

其中 π m ( x ) π_m (x) πm(x)表示一个函数:将交点投影到源视图的像平面。函数 B ( ⋅ ) B(·) B()以图像坐标作为输入,生成由输入源图像 C m r e a l ∈ R H × W × 3 C^{real}_m∈R^{H×W×3} CmrealRH×W×3通过双线性插值得到的颜色。

  根据公式4,扭曲的颜色 c i , m w a r p ( p ) c^{warp}_{i,m}(p) ci,mwarp(p)只有在交点 x i ( p ) x_i(p) xi(p)接近实际表面时才准确。这意味着无需将所有高斯射线的交点投影到源视图中,因为远离真实表面的浮动高斯会引入噪声到提取的外观特征中。遵循2DGS,假设实际表面位于中位数交点附近,使得累积透射率Ti(等式1)接近0.5,因此仅将K个中位数交点{ x k , m x_{k,m} xk,m} k = 1 K ^K_{k=1} k=1K投影到源视图中。最终,我们为每个源视图 m m m获得一组 K K K个扭曲的颜色 { c k , m w a r p c^{warp}_{k,m} ck,mwarp } k = 1 K ^K_{k=1} k=1K

  随后计算每个源视图的加权平均颜色,并测量其与高斯栅格化颜色 c ( p ) c(p) c(p)(等式1)的偏差:

在这里插入图片描述

其中 w k w_k wk是根据等式1计算出的高斯颜色的相同混合权重。直观地说, c m w a r p ( p ) c^{warp}_m (p) cmwarp(p)通过利用相邻视图的信息来近似真实像素颜色。因此,它约束真实表面附近的高斯权重 w k w_k wk大于其他权重。除外观,还计算 ∆ d m ∆d_m dm,即目标与每个源视图之间相机位置和方向的差异:

在这里插入图片描述

  其中 o m o_m om表示第 m m m个源视图的相机中心。对 M M M个邻近源视图重复该特征提取过程,得到一组颜色特征{ ∆ c m ∆c_m cm} m = 1 M ^M_{m=1} m=1M和相机特征{ ∆ d m ∆d_m dm} m = 1 M ^M_{ m=1} m=1M,作为颜色残差预测网络的输入。

四、颜色残差预测

  采用 轻量级网络 预测颜色残差:逐像素特征提取器 E ( ⋅ ) E(·) E()卷积神经网络解码器 D ( ⋅ ) D(·) D()。提取器采用PointNet风格结构[以处理任意数量的源视角M。对于每个视角 m m m,其通过两个32维输出层处理颜色特征 ∆ c m ( p ) ∆c_m(p) cm(p)和相机特征 ∆ d m ( p ) ∆d_m(p) dm(p),+ReLU激活函数。

在这里插入图片描述

  随后对向量集合{ f m ( p ) f_m(p) fm(p)} ( m = 1 ) M ^M_{(m=1)} (m=1)M应用最大池化操作,得到聚合特征 f ˉ ( p ) ∈ R 32 \bar{f}(p)∈R^{32} fˉ(p)R32。将这些特征在所有像素上拼接后,可生成特征图 F ∈ R H × W × 32 F∈R^{ H×W×32} FRH×W×32。类似地,通过在所有像素上叠加 c ( p ) c(p) c(p) d ( p ) d(p) d(p),得到高斯栅格化图像 C ∈ R H × W × 3 C ∈R^{H×W×3} CRH×W×3和射线方向图 D ∈ R H × W × 3 D∈R^{H×W×3} DRH×W×3。随后输入9层卷积解码器(kernel为3),以预测颜色残差图 ∆ C ∈ R H × W × 3 ∆C ∈ R^{H×W×3} CRH×W×3

在这里插入图片描述

  最终将预测残差与高斯栅格化图像相加,得到最终图像:

在这里插入图片描述

五、曝光校正

  由于自动曝光相机的光照条件存在差异,先前研究 [Pgsr、A hierarchical 3d gaussian representation for real-time rendering of very large datasets]针对每个训练视角优化了颜色仿射变换矩阵。但这种方法无法推广到修正新视角渲染图像的曝光问题

  为解决这一难题,假设相邻拍摄位置的图像具有相似的整体光照条件,因此提出通过模拟最近光源视角的曝光设置来校正高斯光栅化图像的曝光。具体而言,我们首先通过求解以下最小二乘问题,获得表征目标视角曝光状态的仿射变换矩阵 A ⋆ A^⋆ A

在这里插入图片描述

  其中 χ χ χ 是一组在映射到源视图时具有有效坐标的像素,而 c 1 w a r p ( p ) c^{warp}_1(p) c1warp(p)是从最近的源视图中颜色变形的。之后 使用 A ⋆ A^⋆ A来校正渲染图像的曝光,即 c e x p o ( p ) = A ⋆ [ c ( p ) 1 ] c^{expo}(p) = A^⋆ \begin{bmatrix} c(p) \\ 1 \\ \end{bmatrix} cexpo(p)=A[c(p)1]。需要注意的是,如果应用了曝光校正,那么在计算外观特征(等式5)、残差预测(等式8)以及获取最终图像(等式9)时,将使用经过曝光校正的 c e x p o ( p ) c^{expo}(p) cexpo(p)颜色来替代原始渲染的颜色 c ( p ) c(p) c(p)

  

六、优化

  总体损失函数为:

在这里插入图片描述

  颜色渲染损失:计算最终图像和高斯渲染图像的损失(β设为0.8):

在这里插入图片描述
在这里插入图片描述

  多视角颜色一致性损失:强制相邻视角间的光度一致性,以促进像素匹配的准确性:

在这里插入图片描述

C m w a r p C^{warp}_m Cmwarp 是通过堆叠等式5中计算的所有 c m w a r p ( p ) c^{warp}_m(p) cmwarp(p)得到的扭曲图像。

  法线一致性损失:根据2DGS,优化整体几何结构:

在这里插入图片描述
其中 Ω Ω Ω表示所有像素坐标的集合, N N N表示光栅化法线贴图。 N d e p t h N_{depth} Ndepth是通过点贴图 X X X的有限差分(由等式6 x ( p ) x(p) x(p)构建)导出的法线贴图。

  基于可见性的源视图选择(定位邻近源视图):首先计算目标与各源视图的距离,随后选取距离最近的 S S S个源视图作为候选,进而筛选出 M M M个可见源视图(即 M ≤ S M ≤ S MS)。具体而言,对于每个像素 p p p,仅当第 s s s个源视图满足以下条件时,才将其用于特征提取:

在这里插入图片描述
其中 τ τ τ 为深度误差阈值, z ( x ) z(x) z(x)表示三维点 x x x的深度值。点云 X ~ s \tilde{X}_s X~s可通过将源视图的点云 X s X_s Xs转换至目标视图坐标系获得。直观来说,该方法通过深度一致性检查来排除点 x ( p ) x(p) x(p)不可见的源视图。

实验

  数据集。基于3DGS采用Tanks and Temples(TNT)数据集中的2个场景、Deep Blending 数据集中的2个场景以及Mip-NeRF360]数据集中的9个场景,评估了本方法的 NVS 性能。同时展示了Shiny数据集[32]中3个场景的结果,这些场景包含镜面高光、反射和圆盘衍射等具有挑战性的视点依赖效应。所有场景均采用每8张图像进行评估,其余图像用于训练。

  实现细节。与3DGS类似,进行30,000次迭代训练。在前7,000次迭代中,λ1 = λ2 =0,仅在后续迭代中启用光度与法线一致性损失(λ1 =0.3, λ2 =0.03)。权重 γ 初始设为1,最后20,000次迭代时逐步降至0.5。超参数设置为:SH度l=2、中位交点数K=4、候选源视图数S=4、可见源视图数M=3、深度误差阈值 τ =0.001。同时剔除不透明度低于0.05的高斯分布。参照[6],我们仅对TNT数据集应用其曝光补偿方法及本文提出的曝光校正方案。采用Adam优化器[19]训练残差预测网络,初始学习率设为0.001,第18,000次和25,000次迭代时减半。所有实验均使用单块 RTX 4090 GPU完成。

在这里插入图片描述

  图2:定性结果。本方法可生成同时具备高频细节(前两个场景)和视点依赖效应(后两个场景)的图像。

在这里插入图片描述

在这里插入图片描述

  

  

射线与平面的交点 计算:

给定平面上一点 μ i μ_i μi 和法向量 n i n_i ni,平面方程可写为( x x x为平面上任意点):

在这里插入图片描述

射线参数方程:从相机中心 o o o 沿方向 d ( p ) d(p) d(p) 的射线方程为: x = o + t ⋅ d ( p ) , t ∈ R x=o+t⋅d(p),t∈R x=o+td(p),tR

将射线方程代入平面方程:

在这里插入图片描述

可求得 t t t和对应的 x i ( p ) x_i(p) xi(p),如公式3.

有限差分计算法线的原理

  对于图像平面上的相邻像素 (u,v),如果知道每个像素对应的 3D 点 P ( u , v ) P(u,v) P(u,v),可以近似计算该点的表面法线:

在这里插入图片描述

#pic_center =40%x80%







d \sqrt{d} d 1 8 \frac {1}{8} 81 x ˉ \bar{x} xˉ D ^ \hat{D} D^ I ~ \tilde{I} I~ ϵ \epsilon ϵ
ϕ \phi ϕ ∏ \prod a b c \sqrt{abc} abc ∑ a b c \sum{abc} abc
/ $$ E \mathcal{E} E

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐