摘要:
3D高斯泼溅(3DGS)能够实现实时、高质量的novel view合成。然而,现有方法在处理兼具复杂反射和清晰透射的半透明镜面表面时,往往会产生模糊的反射或过度遮挡的透射。
RT-Splatting框架,将每个高斯的几何占用 与光学不透明度分离开来。
这种分解方式通过单一的高斯图元集合,得到了一种统一的表面-体积场景表示。利用混合渲染器将这种表示既解释为用于捕捉高频反射的表面,也解释为用于保留清晰透射的体积。
为了减轻联合优化反射和透射时的模糊性,引入了镜面感知梯度门控机制,该机制抑制了来自高镜面区域的误导性梯度进入透射分支,从而有效减少了干扰性的漂浮物。
在具有挑战性的半透明场景上的实验表明,RT-Splatting达到了最先进的性能,能够以实时渲染的速度提供高保真度的反射和清晰的透射。此外,我们的分解方式自然地支持灵活的场景编辑。项目页面位于 RT-Splatting。

图1. 存在反射与透射共存的真实世界场景的光真实感渲染与分解。(左)与先前工作相比,RT-GS方法稳健地处理了半透明表面,避免了模糊的反射或过度遮挡的透射。(右)高保真结果是通过将场景辐射度分解为反射层和透射层实现的,这由联合捕获表面几何和场景体积的统一高斯表示所支持。
贡献:
-
引入了一种统一的表面-体积高斯场景表示,用于联合建模真实世界中包含薄半透明表面的锐利镜面反射和清晰透射。
-
提出了镜面感知梯度门控机制,以抑制来自复杂镜面区域的误导性梯度,从而显著减少透射分支中的漂浮物。
-
大量实验表明,RT-Splatting在保持实时渲染和灵活场景编辑能力的同时,显著优于先前的方法
预备知识
高斯泼溅
3D高斯泼溅(3DGS18 已成为一种强大的实时、高保真novel view合成技术。它将3D场景表示为一组各向异性的3D高斯图元集合,每个图元由其位置、协方差、不透明度α和由球谐函数(SH)表示的颜色定义。在渲染过程中,这些3D高斯被投影到2D图像平面上,并按深度排序。然后,通过按从近到远的顺序对这些高斯进行alpha混合来计算像素的最终颜色C:

为了更好地将场景表示与表面对齐,最近的工作提出了2D高斯泼溅(2DGS)。2DGS不采用3D图元,而是将场景建模为一组嵌入在3D空间中的2D高斯表面元(surfels)。这种表面对齐的表示为每个图元提供了一个定义良好的表面法线,通常源自2D圆盘的方向。此外,它减轻了投影3D高斯可能出现的多视角深度不一致问题,从而产生更几何精确的表面表示。RT-Splatting的工作建立在这个2DGS框架之上。
延迟着色
延迟着色是一种两阶段渲染技术,它将几何处理与光照和材质计算解耦。
在第一阶段,即几何阶段,最近表面的各种属性,如深度、法线、反照率和粗糙度,被渲染到一组中间2D缓冲区中,统称为G缓冲区。
在第二阶段,为每个像素执行着色程序,利用G缓冲区中存储的信息计算最终颜色。通过在逐像素而非逐高斯的基础上执行复杂着色计算,延迟着色显著提高了复杂材质的渲染质量和性能。
方法
RT-Splatting 旨在重建具有薄半透明表面的场景,这些表面既表现出清晰的反射,也表现出清晰的透射。
将每高斯不透明度分解为几何占用和光学不透明,产生一个统一的表面-体积表示,支持用于渲染反射和透射的混合管线。
为了抑制由残余反射误差引起的漂浮物我们引入了镜面感知梯度门控。框架概览如图2所示。

图2. RT-Splatting 概览。(左)透明物体由具有高几何占用但低光学不透明度的高斯表示,从而在表面聚合中产生强贡献,同时在体积合成时避免遮挡。(右)我们的混合渲染管线将来自延迟通道的基于表面的反射与来自前向通道的体积透射合成,以产生最终颜色,并根据相应像素的镜面复杂度抑制流向透射分支的图像损失梯度。
(1)占用-不透明度分解
标准高斯泼溅管线使用单一不透明度参数进行alpha混合,主要目的是建模光学遮挡。虽然最近的延迟着色方法已成功地将此不透明度重新用于将表面属性光栅化到G缓冲区,但这种公式将高斯的几何存在与其光学属性混为一谈。这种近似对于不透明物体是合理的,但对于半透明表面(如窗户或塑料薄膜)则根本失效。对于这些材料,表面在几何上是固态的(需要用于渲染清晰反射),但在光学上是透明的(允许光透射)。单一不透明度参数无法同时满足这些相互冲突的要求,导致要么反射模糊,要么外观不透明。
为了解决这一限制,我们将标准的每高斯不透明度分解为两个具有物理意义、可学习的属性。
几何占用 σ∈0,1编码了光线与高斯物质相互作用的概率。
光学不透明度 α∈0,1则指定了在发生这种相互作用后,光线被吸收或散射的条件概率。
它们的乘积
定义了用于公式(1)中体积合成的有效不透明度,
这意味着光学衰减仅发生在高斯几何存在的地方。
这种分解使我们能够使用具有高几何占用但低光学不透明度的高斯来建模透明物体。
该分解自然地产生了一种用于首表面提取的概率公式,这对于延迟着色至关重要。给定沿光线按深度排序的一系列高斯,任何表面属性a(例如法线或粗糙度)的期望值计算如下:

这里,表示第i个高斯是光线与之相互作用的第一个表面元素的概率。
虽然在数学上类似于标准的alpha混合,但公式2提供了一个关键的重新解释:
将高斯集合视为一个统一的、单一表面的概率表示,而不是离散的、半透明的表面元。
这种物理基础的观点证明了在高斯泼溅中应用延迟着色进行高频反射建模的合理性。
(2)反射-透射建模
为了建模半透明表面的复杂外观,该外观涉及高频镜面反射和透射光,RT-Splatting提出了一种混合的延迟-前向渲染框架。
RT-Splatting框架从一个延迟通道开始,用于处理首命中表面上的高频镜面反射。
利用占用-不透明度分解,首先使用公式(2)中的概率公式将预期的表面属性聚合到G缓冲区中。一旦G缓冲区被填充,一个镜面着色函数 fspecfspec 将视线方向和一组表面属性(包括法线n、粗糙度ρ和材质特征z)作为输入,为每个像素计算镜面颜色Cspec。该函数旨在重现复杂的、依赖于视角的镜面效果,捕捉来自周围环境的反射。在我们的实现中,采用了类似于Ref-GS 50中的镜面着色网络架构,该架构已被证明对此任务有效。
为了捕捉彩色玻璃等材料的内在外观,这涉及内部散射和吸收,我们为每个高斯引入了两个额外的表面属性:固有散射颜色 和透射率比 τ∈0,1。
代表从材料内部散射回来的光,而 τ通过控制此散射光与透射背景光之间的平衡来决定材料的透射率。
背景辐射度本身 ,是通过一个并行的前向通道计算的。该通道像标准体积渲染一样操作,从不透明背景场景累积颜色。关键在于,它是使用我们的有效不透明度
进行累积的。这种公式允许正确地累积背景场景,而不会被透明物体遮挡。我们将所有在材料内部传播的辐射度,包括透射和散射分量,归入我们公式中的次表面传输分量:

最后,我们将镜面反射 和次表面传输分量
结合以产生最终像素颜色。纯基于物理的菲涅耳方程混合在实践中常常因色调映射和其他非线性相机响应而被破坏,并且无法捕捉我们关键感知观察:透射细节在微弱反射下清晰可见,但在强镜面高光下会被抑制甚至掩盖。为了建模这种动态效应,我们增强了镜面着色函数,使其还输出一个衰减因子 β∈0,1,直接调制次表面传输分量。最终颜色 C 计算如下:

与先前调制反射分量的方法8, 13, 49不同,RT-Splatting 衰减透射分量,这为建模背景光的抑制提供了一种直接且稳定的机制。
(3)镜面感知梯度门控
虽然本文的混合延迟-前向渲染管线清晰地分离了反射和透射的渲染方式,但联合优化两个分支仍然具有挑战性。
高频镜面反射本身难以完美建模,导致渲染的反射与真实观测之间存在残余差异。在反向传播过程中,由这些残余引起的梯度可能会被错误地引导到透射分支,然后透射分支通过幻影出表面后方的虚假漂浮物来进行补偿,从而降低透射背景的清晰度。
为了减轻这种错误的梯度流,本文引入了一种镜面感知梯度门控机制。关键见解是,这种错误补偿主要发生在具有高频镜面细节的图像区域。通过使用镜面分量的局部方差来估计其复杂性,从而识别这些区域。对于每个像素 x,我们计算其小邻域 N(x) 上的门控权重 g(x):

其中 Var(⋅) 是方差算子,k 是控制门控敏感度的超参数。
在反向传递过程中,此门控权重调制流向透射分支的梯度。具体来说,我们应用g(x) 来缩放图像损失 通过透射背景颜色
反向传播的梯度:

换句话说,这种镜面感知梯度门控会衰减由复杂镜面图案主导的像素处的梯度,但不会完全阻止对半透明表面后方背景场景的监督。
在镜面反射简单或微弱的视角和像素处,g(x) 保持接近1,因此透射背景继续通过透明界面接收完整的监督。这为背景几何和外观保留了一条有效的优化路径。
(4) 优化
透明掩码正则化。本文的占用-不透明度分解引入了一个特定的模糊性:具有高几何占用但光学不透明度接近于零的高斯可以存在于场景中的任何位置,而不影响最终的渲染颜色。这在缺乏强镜面线索的漫射区域尤其成问题,这些不受约束的"幽灵"几何体可能会累积起来,破坏表面表示并破坏优化过程的稳定性。
为了解决这种模糊性,本文引入了一个透明掩码损失,为高斯的光学不透明度提供显式监督。
利用从预训练的SAM2模型20, 31获得的透明掩码MM来提供额外的监督。在延迟通道期间,我们将首命中表面的预期光学不透明度α聚合到G缓冲区中。
然后,使用二元交叉熵(BCE)损失来监督这个不透明度图,鼓励其与反转的语义掩码匹配:

联合优化。对所有系统组件进行联合优化,同时精炼高斯图元、它们分解后的不透明度和着色函数。
与先前将透明掩码用于分割场景以进行单独处理的工作3, 15, 23不同,RT-Splatting方法仅将掩码用作正则化。这种联合优化至关重要,因为它使我们的方法适用于背景仅通过透明表面可见的复杂场景。
实验
(1)实现细节
在PyTorch 中实现RT-Splatting,构建于2DGS框架之上。延迟通道中着色函数的超参数与Ref-GS 保持一致。
(2) 数据集与指标
在几个真实世界数据集上评估,这些数据集突出地展示了半透明表面上高频镜面反射和清晰透射的共存。
从公共基准中,选择了六个场景:
来自Ref-Real 35的Sedan和Toycar,
来自NeRF-Casting 36的Compact和Hatchback,
来自EnvGS 41的Audi,
以及来自T&T 21的Truck。
还使用智能手机相机额外捕捉了两个真实世界场景Van和Swab,每个场景包含220到240个视角。
报告在完整图像和透明区域上测量的PSNR、SSIM 39和LPIPS 48。
(3)基线比较
RT-Splatting与几种最先进的高斯泼溅变体进行了全面比较。
基线包括基础方法3DGS 18、2DGS 14,以及专门为反射表面设计的方法。
其中包括GaussianShader 17, 以及最近的基于延迟着色的方法3DGSDR 43、Ref-GS 50和EnvGS 41。
所有基线模型均使用其公开可用的代码库和配置进行训练。
在公共基准和我们自己捕捉的场景上的定量结果分别见表1和表2。结果一致表明,我们的方法在所有评估指标上都优于所有基线。这种性能优势在评估透明区域时尤为显著, 突显了我们的模型在这些具有挑战性的区域具有更强的能力。值得注意的是,我们的方法实现了实时渲染速度并保持了有竞争力的训练时间,证明了其效率性和实际适用性。


图3中呈现的定性比较进一步展示了我们的方法能够同时忠实渲染锐利反射细节和清晰透射光的独特能力。现有方法难以处理半透明表面上反射和透射之间的固有模糊性。如图所示,它们通常无法重建锐利的反射细节,因为优化过程受到底层透射光的干扰。相反,试图建模强反射通常会导致表面被渲染为不透明,从而牺牲透射清晰度并完全遮挡背景场景。

图3. 真实世界场景测试集视图的定性比较。RT-Splatting显著提高了对先前方法的渲染质量,在半透明区域同时生成了更锐利的反射和更清晰的透射。
(4)消融研究
通过消融研究验证了我们关键组件的有效性,实验在Sedan和Truck上进行。定量和定性比较分别见表3和图5。

-
占用-不透明度分解:移除我们占用-不透明度分解的变体"w/o occupancy"强制使用单一不透明度参数来同时建模几何占用和光学不透明度。如表3和图5所示,这会产生冲突:实现锐利反射需要高不透明度,而这反过来又严重损害了透射清晰度,导致背景更被遮挡。
-
联合优化:分离反射和透射组件训练的变体"w/o joint optimization"如表3和图5所示,这完全阻止了卡车内部的重建,因为该内部仅通过车窗可见。
-
内部散射与吸收:移除了负责材料内在外观组件(即散射颜色Cscatter和透射率比ττ)的变体"w/o scattering"。这迫使模型将材料的内在外观烘焙到体积背景场景中,导致透射效果明显变暗,如图5和表3所示。
-
次表面衰减:移除了可学习衰减因子ββ的变体"w/o attenuation"。这无法建模次表面分量的视角依赖抑制,导致渲染质量下降,如表3所示。
-
镜面感知梯度门控:禁用了我们在第4.3节讨论的镜面感知梯度门控机制的变体"w/o gating"。这导致透射分支在透明表面附近产生视觉伪影,如图5和表3所示。
-
透明掩码正则化:移除了透明掩码正则化LmaskLmask的变体"w/o LmaskLmask"。这导致优化不稳定,表面质量下降,如表3所示。

图5. 不同消融设置下的分解透射组件
(5)应用
RT-Splatting的反射-透射分解自然地促进了各种强大的场景编辑应用。如图4所示,我们可以通过调整粗糙度、改变其透明度级别、移除镜面反射甚至改变材料色调来独立操控表面属性。这展示了我们解耦表示的有效性和提供的直观控制。

图4. 场景编辑。左:汽车窗户的编辑外观。右:塑料薄膜的编辑外观。
结论
RT-Splatting,一个用于在半透明表面上联合建模高保真反射和清晰透射的框架。通过将每个高斯图元的几何占用与其光学不透明度解耦,单一高斯集合支持一个混合渲染器,该渲染器同时将场景解释为用于锐利镜面高光的反射表面和用于清晰背景内容的透射体积。此外,我们引入了一种镜面感知梯度门控机制,以缓解反射和透射组件之间的优化模糊性。这些设计共同使RT-Splatting能够在反射和透射强耦合的挑战性场景中实现最先进的性能。
RT-Splatting的一个局限性在于它是为薄半透明表面设计的,因为它没有显式建模折射或多次光反弹。未来的工作可以探索扩展我们的框架以处理更厚的折射介质和多反弹光传输,例如在水或实体玻璃物体中。