Guided Lens Sampling for Efficient Monte Carlo Circle-of-Confusion Rendering
International Digital Economy Academy; Tsinghua University; Tohoku University
一句话总结
本文从测量方程出发推导出一套针对薄透镜的通用镜头空间重要性采样理论,用世界空间的 3D 高斯辐射场加上”双极锥投影”把全局高光分布转成每个像素的镜头采样分布,从而高效、无偏地渲染景深下的弥散圆(Circle of Confusion,即散景光斑)。
研究背景
- 领域现状:渲染景深(DoF)效果的经典做法是分布式光线追踪,在透镜圆盘上扰动相机光线的起点;实践中游戏与影视也常用针孔成像加后处理模糊来合成 DoF。
- 核心痛点:透镜圆盘上做均匀采样效率极低——只有极少数光线能打中场景中贡献最大的微小高光点,导致弥散圆区域噪声严重;后处理法虽然快且无噪,但无法正确处理视角相关效果(如被部分遮挡的光斑、镜面反射),还会在细物体(如发丝)周围产生光晕伪影。路径重采样方法(Area ReSTIR)虽被引入 DoF,但仍建立在均匀采样的基础分布上,改进受限。
- 本文 idea:路径引导(path guiding)已在全局光照中被证明有效,但由于相邻像素在透镜上的入射辐射分布差异极大(强视差),一直没有针对弥散圆的引导技术。作者提出把高光在世界空间用一个全局共享的辐射场建模,再通过与传感器点相关的投影,动态转换成每个像素的镜头空间采样分布,从而绕开逐像素直接拟合的难题。
方法
整体框架:作者先从测量方程推出”给定样本权重函数后,镜头采样可以使用任意分布”这一广义结论,指出均匀采样只是某个特定权重下的次优解。随后不直接在镜头空间拟合分布(因为它随传感器点剧烈变化),而是维护一个与传感器点无关的世界空间辐射场(用各向同性 3D 高斯表示),并用双极锥投影(Bipolar-Cone Projection, BCP)把它实时转换为当前像素的镜头分布来生成相机光线;最后再加两个在线优化扩展修正视差与遮挡。
flowchart LR
A[1-SPP 路径追踪] --> B[2D 记录缓冲<br/>位置/辐射/计数]
B --> C[高光点筛选与连通合并]
C --> D[拟合世界空间<br/>3D 高斯辐射场]
D --> E[双极锥投影 BCP<br/>转到镜头空间分布]
E --> F[引导相机光线采样]
F --> G[在线优化:<br/>混合权重 β / 多项式偏移]
G -.迭代精化.-> B
关键设计:
-
广义镜头空间重要性采样:从薄透镜测量方程出发,把 Monte Carlo 估计里的第一项整理成一个”样本权重函数” \(W(\mathbf{x}_l)\),从而说明镜头采样可用任意分布 \(\hat p(\mathbf{x}_l)\),只要它正比于 \(W(\mathbf{x}_l)\cdot L(\mathbf{x}_l)\) 就能降方差。为了让结果与主流均匀采样一致,作者取与均匀采样相同的权重,此时目标分布退化为正比于入射辐射 \(\hat p'(\mathbf{x}_l)\propto L(\mathbf{x}_l)\)。这一步的意义是:把”均匀采样忽略了透镜上的入射辐射”这一低效根源说清楚,并给出无偏的替代空间。
-
双极锥投影(BCP):核心洞察是,随传感器点变化的镜头分布 \(\hat p'(\mathbf{x}_l)\) 可以分解为”与传感器点无关的世界空间分布”经过”与传感器点相关的投影”。由于薄透镜下所有到达同一传感器点的光线都会汇聚于焦平面上的焦点,只有落在由透镜圆周连到焦点并延伸而成的双极锥体内的空间点才有贡献。于是定义一个裁剪函数 \(C(\mathbf{x})\) 判断世界点是否落在可见锥体内,再把世界空间辐射场沿光线积分、并考虑面积到立体角的测度变换,投影成镜头分布。这样只需拟合一个全局一致的辐射场,就能为任意像素导出其最优镜头采样分布。
-
用 3D 高斯实现辐射场:BCP 要求表示满足三点——是空间表示、能在空间上闭式积分、支持给定点处按方向采样与求 PDF。作者采用各向同性 3D 高斯混合,借助已有工作给出的沿射线闭式积分与方向采样性质恰好满足需求。辐射场的拟合是在线迭代的:每次 1-SPP 追踪后,把主命中点按针孔相机重投影进一个固定大小的 2D 记录缓冲,用弥散圆直径公式筛出显著离焦的高能”光斑”元素,做 2D 连通合并成 patch,再把每个 patch 近似成一个 3D 高斯(用包围球半径乘系数 \(\alpha=0.5\) 作为标准差)。
-
两个局部自适应扩展:3D 高斯是视角无关且假设恒可见的,会带来遮挡和视差问题。二者都用 Müller 等人的在线 KL 散度优化(Adam)来精化后验分布。其一是混合权重优化:按像素在线优化 \(\beta\),把拟合分布与均匀分布混合 \(q(\mathbf{x}_l)=\beta\hat p'(\mathbf{x}_l)+(1-\beta)p_U(\mathbf{x}_l)\),当光斑被遮挡时把 \(\beta\) 压低、退回均匀采样。其二是多项式 3D 高斯:对视角相关高光(如镜面/折射),给高斯均值加一个随传感器光栅坐标变化的多项式偏移 \(\mu'=\mu+D(\mathbf{x}_r)\)(实践中二阶多项式即够),以捕捉视差。
实验结果
作者在 GPU 生产渲染器 Smaray 上实现,256 SPP 下与均匀采样、Area ReSTIR 比较,指标为原始输出上的平均绝对百分比误差(MAPE,越低越好)。方法分三档:基础 3D 高斯拟合(LIS)、加混合权重优化(LIS-B)、加全在线优化(LIS-O)。下表汇总各场景的 MAPE:
| 场景 | Uniform | Area ReSTIR | LIS | LIS-B | LIS-O |
|---|---|---|---|---|---|
| 教师图场景 | 0.052 | 0.048 | 0.043 | 0.042 | 0.039 |
| Drinks | 0.276 | 0.277 | 0.229 | 0.215 | 0.212 |
| Chess | 0.144 | 0.136 | 0.128 | 0.124 | 0.120 |
| Shanghai | 0.319 | 0.180 | 0.163 | 0.164 | 0.160 |
| Car | 0.163 | 0.125 | 0.114 | 0.115 | 0.113 |
在浅景深场景中,均匀采样几乎抓不住弥散圆,本文方法可将误差降低超过 75%(对应细节区域),且收敛曲线显示误差更快下降并稳定在更低水平。混合权重优化专门改善弥散圆边缘及被遮挡高光处的退化(否则会出现明显的圆环状伪影);多项式微调则显著改善镜面等视角相关高光的收敛。分布拟合实验中,把中心像素的镜头空间栅格化成 128×128 网格并统计辐射作为参考分布,本文与参考分布的 KL 散度(约 2.36)明显小于 Area ReSTIR(约 3.08)——后者因搜索半径(50 像素)小于弥散圆而探索受限。开销方面,1920×1080 下辐射场拟合与引导恒定增加约 15ms/SPP,混合权重优化再加约 2ms、多项式优化再加约 20ms,另需约 68MB 缓冲。
亮点与局限
- 亮点:
- 理论干净——从测量方程推出广义镜头采样,把”均匀采样为何低效”讲成一个可替换的权重/分布选择问题,并保证无偏。
- 双极锥投影巧妙规避了逐像素拟合的强视差难题,只需一个全局辐射场就能服务整个传感器平面。
- 用 3D 高斯 + 在线优化,开销小、易集成进生产 GPU 路径追踪器,且与 Area ReSTIR、双向渲染等技术正交,可叠加。
- 局限:
- 3D 高斯由 2D 记录缓冲生成,每个纹素只能产生一个高斯;当不同深度的两个高光投影到同一纹素时会冲突、导致欠采样与质量下降(可用 3D 表示如体素网格缓解,但额外开销大且此类重叠较少见)。
- 由 3D 高斯采到的透镜外样本会使每像素的 alpha 估计有偏(辐射可累加零值保持无偏,但 alpha 不能同样处理),需在生产中独立近似 alpha 作为变通。
延伸思考
- 本文明确把自己定位为与路径重采样(Area ReSTIR)、双向路径追踪/顶点连接合并等技术正交,作者也指出把引导得到的高质量候选喂给 ReSTIR 重采样是有前景的结合方向,值得后续验证两者叠加能否同时拿下大面积亮面与视角相关高光。
- 方法目前限定薄透镜模型;作者提出可通过流形探索扩展到真实复杂镜头系统,这将把”散景重要性采样”推向物理镜头级别。
- 用世界空间 3D 高斯 + 与视点相关投影来重建局部采样分布的思路,与 3D 高斯在路径引导/焦散引导中的用法一脉相承,是否能进一步统一为一个跨相机效果(DoF、运动模糊、光谱色散)的通用镜头引导框架,是一个可追问的点。