引言
在 3D 重建和渲染的快速发展世界中,我们正目睹着两个关键因素之间的拉锯战: 速度与质量 。 一方面,我们有 3D 高斯泼溅 (3DGS) ,它以利用光栅化进行实时渲染的能力席卷了全球。另一方面,我们有基于射线的高斯泼溅 (RayGS) 等高保真方法,它们提供了卓越的视觉质量——尤其是在复杂的几何结构和视点相关效果方面——但受限于沉重的计算负担,使其难以在实时应用中运行,特别是在虚拟现实 (VR) 中。
对于探索计算机视觉的本科生和硕士生来说,这种权衡是一个典型的工程问题。你是选择以 100 FPS 运行但有视觉伪影的方法,还是选择看起来完美但只有 5 FPS 的方法?
由 Meta Reality Labs 的 Samuel Rota Bulò 及其同事撰写的研究论文 “Hardware-Rasterized Ray-Based Gaussian Splatting” (硬件光栅化的基于射线的高斯泼溅) 提出了一种拒绝妥协的解决方案。他们提出了一种利用标准 GPU 中的硬件光栅化管线来渲染 RayGS模型的方法。结果如何?一种既保留了基于射线方法的数学精确性和视觉保真度,又实现了适合 VR 帧率的渲染引擎——比之前的基于射线的实现快了 40 倍 。
在这篇深度文章中,我们将解构他们是如何做到这一点的。我们将探索将 3D 高斯交集映射到硬件友好结构的数学原理,“提升”四边形到 3D 空间的几何学,以及如何在虚拟世界移动时处理锯齿问题。
背景: 泼溅之战
要理解这项创新,我们首先需要了解基准。3D 高斯泼溅将场景表示为一团 3D 高斯 (椭球体) ,每个高斯都有位置、旋转、缩放、不透明度和颜色。
渲染方程
无论具体方法如何,确定像素颜色的核心机制都遵循体渲染方程。它是沿射线分布的高斯颜色贡献的加权和,其中权重取决于不透明度和透射率 (光线被前方高斯阻挡了多少) 。

这里,\(\mathcal{R}\) 是最终的像素颜色,\(\xi\) 是特定高斯的颜色,而 \(\omega\) 是该高斯的渲染不透明度。标准 3DGS 和 RayGS 之间的核心区别完全在于这个不透明度 \(\omega\) 是如何计算的。
标准 3DGS vs. RayGS
渲染不透明度源自高斯的“先验”不透明度 (\(o_i\)) 及其偏离度 (\(\mathcal{D}\)) ,后者表示射线距离高斯中心的远近。

标准 3DGS: 近似法
在原始的 3DGS 论文中,3D 高斯被投影到 2D 图像平面上。渲染器使用仿射变换 (线性化) 近似透视投影。这会在屏幕上产生一个 2D 椭圆。

这种方法非常快,因为它完美地映射到了基于图块的光栅化器上。然而,这种线性化假设了针孔相机模型,并且当高斯靠近相机或以大角度观看时会引入误差。
RayGS: 精确解
基于射线的高斯泼溅 (RayGS) 放弃了投影近似。相反,它计算视线穿过 3D 高斯时的最大密度确切点 。

这里,\(\tau(x)x\) 代表沿射线 \(x\) 高斯密度最高的特定点。这个公式在几何上是精确的。它避免了标准 3DGS 中出现的“弹出”伪影和不一致性,尤其是在靠近物体导航时。
下图展示了实际差异。注意标准 GS 模型 (顶部) 中的尖刺和不一致的几何形状,对比 RayGS 模型 (底部) 中平滑、正确的几何形状。

问题在于: 计算精确的射线-高斯交集计算成本昂贵。之前的 RayGS 实现依赖于基于 CUDA 的光线追踪,这比标准 3DGS 使用的硬件加速光栅化要慢得多。
核心方法: 硬件光栅化的 RayGS
研究人员的目标是在快速、标准的顶点-片元着色器管线中实现高质量的 RayGS 数学运算。
要使用硬件光栅化,通常需要向 GPU 提供一个多边形 (通常是三角形或四边形) 进行绘制。在标准 3DGS 中,这很容易: 高斯的 2D 投影是屏幕上的一个椭圆,所以你只需在它周围画一个 2D 四边形。
然而在 RayGS 中,高斯的“支撑域” (可见区域) 并不是从线性投影导出的简单 2D 形状。与高斯相交且密度足够的射线集合形成了一个复杂的形状。
顶点着色器: 寻找包围四边形
这篇论文的核心是一个几何推导,允许顶点着色器计算出一个完美包围高斯可见部分的 3D 四边形 。
我们需要找到所有触及高斯可见体积边界 (由截止值 \(\kappa\) 定义) 的射线集合 \(\mathcal{E}\)。

直接在 3D 空间中为这个集合 \(\mathcal{E}\) 寻找包围盒是很困难的。作者通过在这个复杂的集合 \(\mathcal{E}\) 和 单位圆 \(\mathbb{S}_1\) 之间发现一个 同构 (保持结构的映射) 来解决这个问题。
几何直觉
想象一下射线锥和高斯椭球体之间复杂的交集。作者推导出一个变换 \(\Phi\),将这个复杂的 3D 几何形状映射到一个简单的 2D 单位圆上。
- 原始空间: 射线和高斯存在于标准的 3D 空间中。
- 变换: 通过应用一系列旋转和缩放 (涉及高斯的协方差矩阵 \(\Sigma\)) ,他们将 \(\mathcal{E}\) 中的向量映射到单位球面上,并最终将分量隔离到单位圆上。

上图可视化了这个变换。通过将问题映射到“单位圆世界” (子图 d) ,寻找包围盒变得微不足道——它只是圆周围的一个正方形。
创建 3D 四边形
一旦在单位圆周围定义了单位正方形,作者使用逆变换 \(\Phi^{-1}\) 将该正方形映射回真实的 3D 空间。这产生了一个包围高斯可见体积的 3D 四边形。

然而,有无数个正方形可以包围一个圆 (以任何角度旋转) 。哪一个是最好的?作者通过优化以找到在 3D 空间中跨越最小面积的四边形 (如上图红色所示) 。这种紧密的贴合最小化了片元着色器必须处理的像素数量,从而节省了计算时间。
他们通过求解特征向量问题来找到这个最佳方向:

该方程在单位圆上找到向量 \(u\),当映射回 3D 时,该向量会产生最长的轴。短轴则与其正交。
顶点着色器中四边形顶点 (\(V_{ray}\)) 的最终计算如下所示:

这个公式允许顶点着色器输出一个 3D 四边形。至关重要的是,因为这个四边形存在于 3D 中 (而不只是 2D 屏幕坐标) ,它能与相机的视锥体正确交互。然而,作者指出必须小心处理近平面裁剪。如果四边形与相机的近平面相交,必须将其完全剔除以避免视觉上的不连续性。

片元着色器: 计算不透明度
一旦光栅化器确定了哪些像素落在 3D 四边形内,片元着色器就会接管。它的工作是计算该特定像素射线的精确不透明度。
因为四边形是使用严格的 RayGS 公式构建的,片元着色器不需要进行昂贵的射线步进或迭代搜索。它可以解析地计算精确的偏离度 \(\mathcal{D}_{ray}\)。
推导结果为片元着色器提供了一个惊人简单的公式。通过插值在顶点处计算的值 (\(Z_{ray}\)) ,可以使用点积计算偏离度:

效率是关键。复杂的射线-椭球体相交数学运算被“烘焙”进了四边形顶点和插值常数中,使得片元着色器每个像素要做的工作非常少。
解决锯齿问题: RayGS 的 MIP
在 VR 和游戏中,“闪烁”或锯齿边缘 (混叠) 会破坏沉浸感。当我们用每个像素一条射线来采样 3D 场景时,就会发生这种情况。像素代表一个区域,而不是一个点。如果高斯很小或很远,单条射线可能会完全错过它,或者侥幸击中它,导致随着相机的移动出现闪烁。
标准 3DGS 有处理此问题的方法 (MIP-Splatting) ,但 RayGS 没有——直到这篇论文出现。
策略
作者提出了一种“多尺度”方法。他们不是将射线视为无限细的线,而是将像素视为 2D 高斯分布。他们将 3D 高斯图元投影到与射线正交的平面上,并将其与像素的覆盖范围进行卷积 (平滑) 。
由此产生的分布 \(P_{MIP}\) 描述了射线击中高斯的概率,并考虑了像素的大小 (\(\sigma_x\)) 。

这实际上使得高斯在远处时变得“更模糊”或更大,确保像素捕获其平均贡献,而不是嘈杂的点采样。
对于硬件实现,他们将其简化为一个调制因子,根据距离调整高斯的不透明度和协方差矩阵:

MIP 的视觉影响
这项技术的影响是显著的。在下图中,请看自行车的辐条。
- 左上 (No MIP): 辐条呈锯齿状且断裂 (混叠) 。
- 右上 (MSAA): 多重采样抗锯齿 (Multi-Sample Anti-Aliasing) 略有帮助,但昂贵且不完美。
- 右下 (MIP-VKRayGS): 辐条平滑且连续。

实验与结果
研究人员实现了这种方法 (称为 VKRayGS , 即 Vulkan Ray-Based Gaussian Splatting) ,并将其与最先进的基于 CUDA 的渲染器 (GOF) 进行了比较。
速度对比
性能提升是巨大的。在标准基准数据集 (MipNeRF360 和 Tanks&Temples) 上,VKRayGS 的帧率平均比竞争方法高出 40 倍 。

看这张表,像“bicycle”这样的场景从 GOF 在 RTX2080 上无法游玩的 4 FPS 变成了 VKRayGS 上流畅的 177 FPS 。 这是离线渲染和 VR 就绪应用之间的区别。
质量对比
速度的提升是否以牺牲质量为代价?并没有明显的牺牲。渲染逻辑在数学上等同于较慢的射线投射方法。指标 (PSNR, SSIM) 上的微小差异归因于细微的实现细节 (如裁剪平面) ,而不是方法的根本缺陷。
从定性上看,结果几乎无法区分。
MipNeRF360 场景: 在“bicycle”和“garden”等场景中,快速光栅化器 (右) 的视觉保真度与慢速光线追踪器 (左) 相匹配。

Tanks & Temples: 户外场景也是如此。光照、几何形状和纹理细节都得到了保留。

结论与启示
论文 “Hardware-Rasterized Ray-Based Gaussian Splatting” 填补了神经渲染领域的一个重要空白。通过在数学上架起射线交集世界与硬件加速光栅化世界之间的桥梁,作者解锁了适用于实时应用的高保真 3DGS。
关键结论:
- RayGS 更优越: 它比标准 3DGS 更好地处理几何结构,避免了弹出伪影和近相机畸变。
- 同构是关键: 将射线-高斯交集映射到单位圆,使得高效计算最佳 3D 包围四边形成为可能。
- 光栅化致胜: 通过将工作负载从通用 CUDA 计算转移到专用的图形管线 (顶点/片元着色器) ,性能突飞猛进 (40 倍加速) 。
- MIP 很重要: 集成依赖于尺度的平滑处理对于动态环境中的清晰、无锯齿渲染至关重要。
对于学生和开发者来说,这项工作凸显了理解问题底层几何原理的力量。让它变快的不是暴力优化,而是一种巧妙的数学变换,允许使用标准的、高度优化的硬件工具。
](https://deep-paper.org/en/paper/2503.18682/images/cover.png)