Volumetric Rendering with Baked Quadrature Fields
作者: Gopal Sharma, Daniel Rebain, Kwang Moo Yi, Andrea Tagliasacchi
分类: cs.GR, cs.CV
发布日期: 2023-12-02 (更新: 2024-07-10)
💡 一句话要点
提出基于烘焙积分域的体渲染方法,加速非透明场景的NeRF渲染。
🎯 匹配领域: 支柱三:空间感知与语义 (Perception & Semantics)
关键词: 神经辐射场 体渲染 光线追踪 多边形网格 实时渲染
📋 核心要点
- NeRF虽然渲染质量高,但依赖于计算量大的体渲染,未能充分利用现代图形硬件加速。
- 该方法使用多边形网格建模场景,并从中提取积分点,结合纹理信息进行体渲染。
- 实验表明,该方法能以超过100帧/秒的速度渲染1920x1080的图像,同时支持非透明物体。
📝 摘要(中文)
本文提出了一种新颖的神经辐射场(NeRF)表示方法,用于非透明场景,该方法通过利用纹理多边形来实现快速推理。尽管NeRF提供了高质量的新视角渲染,但一个关键的限制是它依赖于计算成本可能很高的体渲染,并且没有利用现代图形硬件的进步。许多现有方法在建模体积效应方面存在不足,因为它们纯粹依赖于表面渲染。因此,我们建议使用多边形来建模场景,然后可以使用这些多边形来获得建模体积效应所需的积分点,以及来自纹理的不透明度和颜色。为了获得这样的多边形网格,我们训练一个专门的场,其零交叉点将对应于体渲染时的积分点,并在此场上执行行进立方体算法。然后,我们执行光线追踪,并利用光线追踪着色器来获得最终的彩色图像。我们的方法可以轻松地与现有的图形框架集成,从而实现超过100帧/秒的渲染速度(对于1920x1080的图像),同时仍然能够表示非透明对象。
🔬 方法详解
问题定义:NeRF的体渲染计算量大,难以实时渲染,尤其是在高分辨率下。现有方法难以兼顾高质量渲染和实时性,并且在处理非透明物体时存在局限性。
核心思路:将场景表示为多边形网格,并利用这些多边形来计算体渲染所需的积分点。通过在多边形上烘焙颜色和不透明度信息,可以避免昂贵的体渲染过程,从而加速渲染。这种方法结合了表面渲染和体渲染的优点,既能利用图形硬件加速,又能模拟体积效应。
技术框架:该方法包含以下几个主要阶段:1) 训练一个专门的场,其零交叉点对应于体渲染的积分点。2) 使用行进立方体算法从该场中提取多边形网格。3) 在多边形网格上烘焙颜色和不透明度信息。4) 使用光线追踪渲染最终图像。光线追踪着色器用于计算每个像素的颜色,并考虑体积效应。
关键创新:该方法的核心创新在于使用可微分的场来生成多边形网格,并利用这些网格来加速体渲染。通过将体渲染问题转化为表面渲染问题,可以充分利用图形硬件的加速能力。此外,该方法还提出了一种新的损失函数,用于训练该场,以确保生成高质量的多边形网格。
关键设计:该方法使用一个多层感知机(MLP)来表示该场。MLP的输入是空间坐标,输出是该点的密度值。损失函数包括两部分:一部分是重建损失,用于确保渲染的图像与真实图像一致;另一部分是正则化损失,用于确保生成的网格平滑且规则。行进立方体算法用于从该场中提取多边形网格。光线追踪着色器使用传统的体渲染公式来计算每个像素的颜色,但积分是在多边形上进行的。
📊 实验亮点
该方法在1920x1080分辨率下实现了超过100帧/秒的渲染速度,显著优于传统的NeRF方法。实验结果表明,该方法能够生成高质量的渲染图像,并且能够有效地处理非透明物体。与现有方法相比,该方法在渲染速度和渲染质量之间取得了更好的平衡。
🎯 应用场景
该方法可应用于虚拟现实、增强现实、游戏开发等领域,实现高质量、实时的非透明场景渲染。例如,可以用于创建逼真的烟雾、火焰、云雾等效果,提升用户体验。此外,该方法还可以用于科学可视化,帮助研究人员更好地理解复杂的数据。
📄 摘要(原文)
We propose a novel Neural Radiance Field (NeRF) representation for non-opaque scenes that enables fast inference by utilizing textured polygons. Despite the high-quality novel view rendering that NeRF provides, a critical limitation is that it relies on volume rendering that can be computationally expensive and does not utilize the advancements in modern graphics hardware. Many existing methods fall short when it comes to modelling volumetric effects as they rely purely on surface rendering. We thus propose to model the scene with polygons, which can then be used to obtain the quadrature points required to model volumetric effects, and also their opacity and colour from the texture. To obtain such polygonal mesh, we train a specialized field whose zero-crossings would correspond to the quadrature points when volume rendering, and perform marching cubes on this field. We then perform ray-tracing and utilize the ray-tracing shader to obtain the final colour image. Our method allows an easy integration with existing graphics frameworks allowing rendering speed of over 100 frames-per-second for a $1920\times1080$ image, while still being able to represent non-opaque objects.