Journal

Proxy Tracing: Unbiased Reciprocal Estimation for Optimized Sampling in BDPT

Fujia Su, Bingxuan Li, Qingyang Yin, Yanchen Zhang, Sheng Li

Peking University

一句话总结

本文提出 “代理追踪(Proxy Tracing)” 方法:当双向路径追踪(BDPT)在镜面/高光顶点上做连接产生低贡献路径时,丢弃紧邻镜面顶点的问题顶点并重新追踪一条 “代理子路径” 来补全路径,使连接满足窄瓣 BSDF 约束;并配套一个高效、方差有上界的无偏倒数估计器(unbiased reciprocal estimator)来估计不完整路径的 PDF 倒数,从而在保持无偏的前提下高效采样 \(LDD(S|D)^*SDS^*E\) 这类含镜面的困难路径。

研究背景

双向路径追踪(BDPT)是渲染真实感图像的主流技术之一,其核心是连接(connection)策略:从相机追踪一条眼子路径、从光源追踪一条光子路径,再把两者的端点连接成一条完整路径。当两端点都落在漫反射表面时,连接工作得很好;但只要有一个端点落在镜面或高光表面(具有窄瓣、高频特性的 BSDF),连接出的完整路径几乎无法满足 BSDF 的方向约束,贡献可忽略,导致方差急剧上升。

作者用 Veach 的路径记号来刻画这类困难路径:\(L\) 表示光源顶点、\(D\) 表示漫反射顶点、\(S\) 表示镜面/高光顶点、\(E\) 表示相机,连字符 \(-\) 表示眼子路径与光子路径的连接位置。像 \(LDD{-}SDSE\)、\(LDDS{-}DSE\) 等在镜面处发生连接的策略都表现很差;唯一可行的往往是从相机单向追踪整条 \(LDDSDSE\),但当镜面 \(S\) 离漫反射面 \(D\) 很远时,从 \(D\) 弹射到 \(S\) 的 PDF 极小,单向追踪同样低效。

已有的概率连接方法(Popov、Nabata、SPCBPT 等)擅长根据眼子路径重采样光子路径,但仍无法满足高频镜面约束;多重重要性采样(MIS)也无法从根本上解决问题。因此,如何在 BDPT 的连接框架内高效、无偏地采样含镜面的困难路径,是本文要解决的核心问题。

核心方法

代理采样(Proxy Sampling)的思想

作者的关键想法是 “丢弃并补全(dropout-and-complement)”:对一条从初始分布采到的完整路径 \(\bar{x}\),把导致高方差的问题顶点 \(\bar{g}\) 丢掉,得到不完整路径 \(\bar{h}\),再从一个更有利的条件分布重新追踪代理顶点 \(\bar{g}\) 补回来,构成新的完整路径。形式化地定义丢弃操作 \(\bar{h}=D(\bar{x},\bar{g})\) 与修补操作 \(\bar{x}=R(\bar{h},\bar{g})\),最终路径的采样 PDF 为:

\[p_d(\bar{x}) = p(\bar{h})\,p(\bar{g}\mid\bar{h})\]

具体到 BDPT 的镜面场景:当光子路径终止在镜面顶点 \(y_{s-1}\)、要与眼子路径连接时,保持眼子路径与镜面顶点不变,丢弃紧邻镜面顶点的顶点(倒数第二个顶点 \(y_{s-2}\)),根据眼子路径端点 \(z_{t-1}\) 的方向和镜面 BSDF 重新追踪一个 “代理顶点”。这样连接方向天然落在镜面窄瓣内,把原本无效的路径转化为高贡献路径。若末端有 \(u\) 个连续镜面顶点,则重追踪 \(u\) 个顶点。为保证代理路径唯一可确定,重追踪出的顶点在镜面/漫反射属性上必须与被替换的原顶点一致,否则丢弃该连接。

核心难点:不完整路径的 PDF 倒数

难点在于:不完整路径 \(\bar{h}\) 可能来自无穷多条不同的原始路径,其 PDF 需要对所有可能的问题路径积分:

\[p(\bar{h}) = \int_{A^u} p[R(\bar{h},\bar{g})]\,d\mu(\bar{g})\]

这个积分一般无法解析求出。虽然可以用蒙特卡洛得到 \(p(\bar{h})\) 的无偏估计 \(\tilde{p}(\bar{h})\),但 \(1/\tilde{p}(\bar{h})\) 并不是 \(1/p(\bar{h})\) 的无偏估计——直接代入路径积分分母会引入偏差。因此必须构造 \(1/p(\bar{h})\) 的无偏倒数估计

作者也讨论了替代方案:随机多重重要性采样(SMIS)/边缘多重重要性采样(MMIS)可把不同原始路径视为连续技术空间中的不同技术再做 MIS。但 SMIS 在 \(\alpha\to 0\)(不同技术只覆盖 \(f(x)\) 的不同片段)时方差急剧增大,纯镜面时甚至产生偏差;且其代价随技术数呈 \(O(n^2)\) 增长(跨技术需做可见性测试),不适合代理采样这类复杂分布。

无偏倒数估计器

作者采用 Blanchet 等人的泰勒展开框架。设 \(\beta=\int_R f(x)\,dx\),目标是无偏估计 \(\alpha=1/\beta\)。取常数 \(B\)、令 \(A=B-\beta\),在 \(A=0\) 处泰勒展开:

\[\frac{1}{B-A} = \frac{1}{B}\sum_{n=0}^{\infty}\frac{A^n}{B^n}\]

用支撑分布 \(q\) 采样,可用 \(n\) 个独立样本构造 \(A^n/B^n\) 的无偏估计:

\[\tilde{I}_n = \prod_{i}^{n}\left(1-\frac{f(x_i)}{B\,q(x_i)}\right)\]

因为 \(E\big[1-\tfrac{f(x_i)}{B q(x_i)}\big]=\tfrac{A}{B}\)。这里刻意用 \(1-\tfrac{f}{Bq}\) 而非 \(\tfrac{B-f}{Bq}\),是因为前者的最优支撑分布是 \(q\propto f(x)\)(易于构造),后者则是 \(q\propto 1-f(x)\)(难构造)。

针对无穷求和,作者不直接采样项数 \(N\)(Blanchet 的成本最优分布含无法闭式求解的项),而是借鉴单向路径追踪,用俄罗斯轮盘赌与分裂(RRS) 逐前缀地控制采样。对含 \(k\) 个顶点的路径 \(\bar{x}\),估计器为:

\[\tilde{I}(\bar{x}) = \frac{\prod_{0\le i

作者提出的 RRS 函数为:

\[r(\bar{x}) = \left|\,1-\frac{f(x_{k-1})}{B\,q(x_{k-1})}\,\right|\]

并在附录中证明该 RRS 函数是 “次优(sub-optimal,即在特定假设下最优)”,无需手动设置任何超参数——这与 Booth [2007] 需要手调参数 \(r\) 的俄罗斯轮盘赌形成对比。代入后估计器简化为:

\[\tilde{I}(\bar{x}) = \left(1-\frac{f(x_{k-1})}{B\,q(x_{k-1})}\right) S(\bar{x})\]

其中 \(S(\bar{x})=\prod_{0\le j

技术细节

支撑分布构造。 估计 \(1/\mathcal{P}(u,h_c,y_{s-1},\omega_c)\) 时,用三种策略采样代理路径并均匀混合:(1) 光源采样(仅当唯一待追踪顶点在光源上、\(\bar{g}=y_0\));(2) 从控制顶点 \(h_c\) 追踪(\(u=1\) 且 \(y_0\notin\bar{g}\),按 \(h_c\) 处 BSDF 或余弦半球采样方向);(3) 从镜面顶点 \(y_{s-1}\) 追踪(\(u>1\) 时唯一可用策略,从 \(y_{s-1}\) 余弦半球出发逐个追踪)。

倒数估计的四个决定变量。 不完整光子路径的 PDF 由光泽计数 \(u\)、控制顶点 \(h_c\)、控制方向 \(\omega_c\)、镜面顶点 \(y_{s-1}\) 唯一确定。这四个量都在光子路径追踪阶段就能确定,与眼子路径无关。因此倒数估计可在光子路径追踪时完成,而非运行时连接时,从而复用光子子路径(light sub-path reuse):只对少量不完整光子路径做倒数估计,再与所有像素的眼子路径连接,大幅降低开销。

MIS 权重。 由于 \(1/p(\bar{h})\) 是随机变量会引入额外方差,标准的 PDF 正比平衡启发式不再最优。作者重新推导了适用于倒数估计的最优 MIS 权重:

\[w_t(\bar{x}) = \frac{1/\big(E[\tfrac{1}{\tilde{p}_t^2(\bar{x})}]\,p_t(\bar{x})\big)}{\sum_i 1/\big(E[\tfrac{1}{\tilde{p}_i^2(\bar{x})}]\,p_i(\bar{x})\big)}\]

当 \(p_t\) 无方差可精确计算时,退化为经典平衡启发式;倒数估计方差越大,代理采样分到的 MIS 权重越小。

子空间统计与概率光源选择。 借鉴 SPCBPT 的子空间思想,渲染前用 PT 预追踪少量 \(L(S|D)^*SDS^*E\) 路径,把 \((h_c,\omega_c)\) 归入控制子空间、\(y_{s-1}\) 归入镜面子空间,用 \(\mathcal{P}(u,C,S)\) 近似统计数据,用于选择上界 \(B\) 和计算 MIS 权重。方法基于 SPCBPT 实现,用镜面子空间缓存并重采样不完整光子路径,并在线学习子空间采样矩阵 \(\Gamma[T,S]\)。

实验结果

实验基于 OptiX 架构,在 RTX 3090 上以 1920×1000 分辨率、六个场景(Bedroom、Breakfast、Projector、Hallway、Kitchen、Water)测试,覆盖不同光照与光泽表面设置。对比基线包括:PT+NEE、SPCBPT、SPCBPT+光追踪(LT)、LVCBPT+LT(GPU 加速 BDPT 基线)。评价指标为平均绝对百分比误差(MAPE)。

  • 等时对比与收敛。 在所有场景中本方法的时间收敛性能都显著优于其他方法。对 \(LDD(S|D)^*SDS^*E\) 这类困难路径,本方法既能高效采样镜面路径,又保留 SPCBPT 处理间接光照的优势。
  • 达到目标 MAPE 的开销(Table 3)。 提升幅度惊人:例如 Hallway 达到 35% MAPE,本方法仅需 27 次迭代 / 5.73 秒,而 PT、SPCBPT、SPCBPT+LT、LVCBPT+LT 均在 200 秒内无法达标;Breakfast 达到 30% 需 62 次迭代 / 8.63 秒,其余方法需 78~200+ 秒。
  • 对比纯光追踪(LT)。 Breakfast 中本方法 60 秒即可得到优于 LT 用 180 秒的结果,且噪声更少。
  • 子空间采样消融。 当漫反射面离镜面较远时代理采样本身已很高效,子空间重要性采样提升有限(Bedroom 20.96%→19.74%);当漫反射面靠近镜面时,概率连接帮助显著(Water 69.13%→54.98%)。
  • 结合路径引导(PG)。 可与基于 SD-tree 的路径引导良好集成;在 Water 这类漫反射面贴近镜面的复杂设置下,Ours+PG 能取两者之长进一步提速。
  • RR 技术消融。 与 Booth [2007] 在不同手调参数 \(r\) 下对比,本文无参数的 RRS 技术表现更优且更稳定。
  • 额外应用。 倒数估计器还可作为 SMIS 的替代嵌入 CMIS 框架,在光子平面体渲染(photon plane sampling)中取得优于 SMIS 的效果。

代价方面:由于倒数估计、代理顶点重追踪与 MIS 权重计算,本方法每次迭代比 SPCBPT 慢约 25%~50%。

贡献与局限

主要贡献:

  • 提出用路径替换(代理采样)的新型路径采样技术,大幅提升 BDPT 处理困难镜面路径的能力;
  • 提出一个更高效、实用、方差有理论上界且无需手动调参的无偏倒数估计器,为代理采样提供可行的 PDF 倒数估计手段;
  • 与概率连接 BDPT(SPCBPT)及路径引导无缝集成,并展示了倒数估计在体渲染中替代 SMIS 的通用价值。

局限:

  • 每次迭代有 25%~50% 的额外开销;当漫反射面与镜面顶点非常接近时(如 Water),合适的不完整子路径的镜面顶点常紧邻眼子路径、难以选中,代理采样效率下降,此时反而需要借助路径引导等随机方向采样来弥补;
  • 实现上对路径类型做了约束(限定 \(LDDS^+\)、\(LDDDS^+\),光泽计数 \(1\le u\le 4\)),其余路径仍交由 SPCBPT 处理;镜面判定依赖 Disney principled BSDF 且粗糙度阈值(<0.2)为经验设定。

延伸思考

代理追踪的本质是把 “难采样的路径片段” 替换成 “在给定约束下容易采样的等价片段”,并用无偏倒数估计补偿由此带来的 PDF 不可解析问题。这一 “丢弃—补全—倒数估计” 范式并不局限于镜面路径:任何在某局部分布下高方差、但在条件分布下易采样的场景(体渲染、光子映射、可微渲染中的路径重参数化等)都可能受益。文中已展示其在光子平面体渲染中替代 SMIS 的潜力,提示无偏倒数估计有望成为一种通用的方差缩减工具,与概率连接、路径引导、重采样等现代蒙特卡洛技术组合,进一步扩展鲁棒光线传输算法的适用边界。