Physically Based Rendering in the Latent Space
Vuk Radovanovic, Vishesh Gupta, Adrien Gruson, Binh-Son Hua
cs.GR, cs.AI, cs.LG
2026-09-18
都柏林三一学院把路径追踪改写进扩散 VAE 潜空间,用符号辐射、平坦响应和遮挡项拟合潜变量。Cornell Box 相机序列 LPIPS 从 0.502 降到 0.075。
扩散模型好生成、难控。物理渲染好控、不会自己长出「像照片」的纹理统计。两边中间隔着 VAE 潜空间:一张 1024×1024×3 的图在 Stable Diffusion 3.5 里被压成 128×128×16,大约 12 倍压缩,通道里仍能看出几何边、阴影和光源。
直接在 RGB 里做路径追踪,再送进 encoder,等于每改一次场景都要走一遍编码。如果光传输能直接出潜变量,场景参数就可以和扩散先验对接,不必每次穿过 encoder。
潜变量和 RGB 不是线性关系。发射项可正可负,阴影区强度可以高于亮区,部分通道几乎是平的。标准渲染方程写不出这些。
做法是把潜变量拆成「物理可渲染部分」和「残差」。物理部分改写渲染方程,三项相加:
三项沿同一条路径估计,正负值分别做 γ=2.2 的校正。用 Mitsuba 的 path replay backpropagation 优化每条路径顶点上的符号发射、平坦项、遮挡项,以及 BSDF 参数。损失是潜空间 Huber,δ=1。场景参数先训 3000 步。
残差交给按场景训练的小型卷积 MLP,输入是渲染潜变量加法线、深度等 AOV。损失是潜空间 MSE+SSIM,外加解码 RGB 上的 LPIPS。精修网络也训 3000 步。Cornell Box 在 RTX 4090 上两段各约 5 分钟。整条管线只用一张参考渲染的编码结果。
对照是「用传统非负渲染出 16 通道,再 logit 拉回潜变量范围,同样接精修」。Lamp 场景上,改写方程之后颜色偏移和伪影都明显更轻。
消融看解码 RGB 的平均 LPIPS / MSE×100。Cornell Box 相机序列:只开符号发射是 0.502 / 2.264,加上平坦项到 0.228 / 0.335,再加上遮挡项到 0.213 / 0.222,精修后 0.075 / 0.069。物体移动精修后 LPIPS 0.032,灯光移动 0.013。Lamp 和 Living Room 趋势相同,灯光大位移是最难的一组。
训练视角上精修几乎贴住参考。改相机、挪灯、动物体之后,主内容和阴影、高光仍由物理项承担,精修负责边和对比度。蒙特卡洛在潜空间里随 spp 收敛;精修和 decoder 会引入偏差。
算力分两种目标。只需要潜变量时,这条路径比「先 RGB 路径追踪再编码」快 42 到 84 倍。若最终要 RGB,单次 decoder 占满时间,整体比直接 RGB 路径追踪慢 6 到 35 倍。
这是把光传输接到扩散潜空间的第一版工程,不是又一个 ControlNet。单图拟合之后,相机、灯、物体可以按图形学方式改,SDS 也可以直接打在精修后的潜变量上,省掉 encoder。
它还不能替代 RGB 渲染器。要出最终像素,decoder 比路径追踪还贵。精修网络按场景过拟合,跨场景不能复用。
作者自己列了三条:潜空间空间分辨率低,细结构容易走样;精修只看一张图、一个场景;RGB 输出在等误差设置下慢于直接路径追踪。优化只走渲染方程的内部项,几何可见性突变不在范围内。实验默认已知几何、材质类型、光源位置和相机,单图估几何再渲染被留作后续。纹理场景的新视角结果仍偏初步。