1. 引言
从单张图像估计场景光照是计算机视觉中一个基础但病态的问题,对于增强现实和基于图像的渲染等应用至关重要。传统方法依赖于已知物体(光照探针)或额外数据(深度、多视角),限制了实用性。近期基于学习的方法,如Gardner等人[8]的工作,能够预测全局光照,但无法捕捉室内光照的空间变化特性,即靠近光源和遮挡物会造成显著的局部变化。商业AR系统(如ARKit)提供基础的光照估计,但缺乏实现逼真重光照所需的精细度。
本文提出一种实时方法,可从单张RGB图像估计空间变化的室内光照。给定一张图像和一个二维像素坐标,一个卷积神经网络可在20毫秒内预测该特定位置光照的五阶球谐函数表示,从而能够在场景中任意位置实现逼真的虚拟物体插入。
核心见解
- 局部优于全局:室内光照并非均匀;单一的全局估计会导致不真实的AR渲染效果。
- 效率是关键:对于交互式AR应用,实时性能(<20ms)是硬性要求。
- 无需几何信息:该方法从图像中隐式推断局部光照可见性和遮挡,无需深度输入。
- 实用的表示:使用低维球谐函数(36个系数)可实现快速预测,并能直接集成到标准渲染管线中。
2. 方法
核心思想是训练一个CNN,以二维图像坐标为条件,回归球谐函数系数。
2.1 网络架构
网络接收两个输入:输入的RGB图像和归一化到$[-1, 1]$的二维坐标$(u, v)$。图像通过一个特征编码器(例如基于ResNet)。二维坐标通过全连接层处理,生成位置编码。图像特征和位置编码在融合后(通常通过拼接或注意力机制),由一个紧凑的解码器预测RGB通道的最终SH系数。这种设计明确地将光照预测与空间位置关联起来。
2.2 球谐函数表示
某一点的光照使用五阶球谐函数表示。SH提供了一种紧凑的、基于频率的球面函数表示。法线为$\mathbf{n}$的表面点处的辐照度$E$近似为:
$E(\mathbf{n}) \approx \sum_{l=0}^{L} \sum_{m=-l}^{l} c_{l}^{m} Y_{l}^{m}(\mathbf{n})$
其中$L=5$,$Y_{l}^{m}$是SH基函数,$c_{l}^{m}$是网络预测的系数(每个颜色通道9个系数,RGB共27个)。这种低维输出是实现实时推理的关键。
3. 实验与结果
推理时间
< 20 毫秒
基于 Nvidia GTX 970M
SH阶数
5阶
共27个系数
用户偏好
~75%
优于当前最佳方法[8]
3.1 定量评估
该方法在合成和真实数据集上进行了评估。评估指标包括预测环境贴图与真实环境贴图之间的角度误差,以及渲染物体上的均方根误差。所提出的空间变化方法始终优于Gardner等人[8]的全局光照估计方法,尤其是在光照差异较大的远离图像中心的位置。
3.2 用户研究
进行了一项感知用户研究,参与者比较了使用不同方法的光照进行重光照的虚拟物体。结果显示,与使用[8]的全局估计生成的渲染结果相比,用户明显更偏好(约75%)使用本文提出的空间变化光照生成的渲染结果,这证实了局部光照效果在感知上的重要性。
3.3 实时性能
该网络在笔记本电脑级GPU(Nvidia GTX 970M)上实现了低于20毫秒的推理时间。此性能使得实时AR应用成为可能,当虚拟物体或相机移动时,光照可以即时更新。
4. 技术分析与核心见解
核心见解:本文的根本突破不仅仅是另一个光照估计模型;它是从场景中心到点中心光照范式的战略性转变。虽然像Gardner等人的工作(常与用于病态问题的CycleGAN式图像到图像转换原理进行基准比较)将图像视为整体以输出一个全局光照,但本文认识到,对于AR而言,唯一重要的是在特定插入点的光照。这是一个深刻的转变,符合实时图形学的需求,在实时图形学中,着色器是按片段而非按场景计算光照的。
逻辑流程:逻辑简洁优雅:1)承认空间变化是室内环境中的首要问题(得到如Kajiya的渲染方程等权威来源的基本辐射度量学原理支持)。2)选择一种既能表达低频室内光照,又天然兼容实时渲染器(例如,通过PRT或在着色器中直接评估SH)的表示(SH)。3)设计一个明确将位置作为输入的网络,迫使其学习从局部图像上下文到局部SH参数的映射。训练数据(可能来自已知光照的合成或捕获的3D场景)教会网络将视觉线索(阴影、颜色溢出、高光)与局部光照条件关联起来。
优势与不足:主要优势在于其实用性。<20ms的运行时间和SH输出使其成为现有AR引擎的“即插即用”解决方案,与输出完整HDR环境贴图的方法形成鲜明对比。其无需几何信息的特性是一个巧妙的变通方法,使用CNN作为复杂光线追踪的代理。然而,其不足也很显著。首先,它本质上是训练数据光照的插值。它无法在完全未观测到的区域(例如,关闭的橱柜内部)推测光照。其次,五阶SH虽然快速,但无法捕捉高频光照细节,如小光源产生的锐利阴影——这是SH近似的已知局限。第三,其性能与训练集的多样性相关;在高度新颖的环境中可能失效。
可操作的见解:对于研究人员,前进方向很明确:1)混合模型:将预测的粗糙SH与轻量级神经辐射场或一小组学习的虚拟点光源结合,以恢复高频效果。2)不确定性估计:网络应输出其预测的置信度度量,这对于安全关键的AR应用至关重要。3)动态场景:当前方法是静态的。下一个前沿是动态场景和移动光源的时间一致性光照估计,或许可以通过集成光流或循环网络实现。对于从业者,此方法已准备好试点集成到移动AR应用中,以显著提升相对于当前SDK产品的真实感。
5. 分析框架示例
场景:评估该方法在极端情况下的鲁棒性。
输入:一张房间图像,其中一个角落远离任何窗户或光源,处于深度阴影中。需要在该暗角放置一个虚拟物体。
框架应用:
- 上下文查询:网络接收图像和阴影角落的(u,v)坐标。
- 特征分析:编码器提取指示低亮度、缺乏直接光路以及可能来自相邻墙壁的环境光色偏的特征。
- 预测:融合后的特征引导解码器预测代表低强度、漫反射且可能带有颜色偏差的光照环境的SH系数。
- 验证:渲染的虚拟物体应呈现昏暗光照、柔和阴影和暗淡色彩,与角落的视觉上下文匹配。如果物体看起来像在房间中心一样明亮,则表明网络忽略了空间条件,即为失败。
6. 未来应用与方向
- 高级AR/VR:超越物体插入,应用于逼真的虚拟化身远程呈现,其中虚拟人物必须与其看似所处的局部环境光照保持一致。
- 计算摄影:驱动具有空间感知能力的照片编辑工具(例如,以不同方式“重光照此人”和“重光照那个物体”)。
- 机器人学与自主系统:为机器人提供快速、无需几何信息的场景光照理解,以改进材质感知和规划。
- 神经渲染:作为逆向渲染任务的快速光照先验,或用于初始化更复杂但更慢的模型(如NeRF)。
- 未来研究:扩展到室外场景,建模动态光照变化,并与隐式几何(例如,来自单目深度估计器)结合以实现更精确的可见性推理。
7. 参考文献
- Kajiya, J. T. (1986). The rendering equation. ACM SIGGRAPH Computer Graphics.
- Gardner, M., et al. (2017). Learning to Predict Indoor Illumination from a Single Image. ACM TOG.
- Zhu, J., et al. (2017). Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks (CycleGAN). ICCV.
- Ramamoorthi, R., & Hanrahan, P. (2001). An efficient representation for irradiance environment maps. ACM SIGGRAPH.
- Apple Inc. (2017, 2018). ARKit Documentation and WWDC Sessions.
- Mildenhall, B., et al. (2020). NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis. ECCV.
- Garon, M., Sunkavalli, K., Hadap, S., Carr, N., & Lalonde, J. (2019). Fast Spatially-Varying Indoor Lighting Estimation. arXiv:1906.03799.