0%

《Deep Learning for Rendering》阅读笔记

中科大第九届《计算机图形学前沿》暑期课程

主讲人:过洁

原视频地址:https://www.bilibili.com/video/BV1Kf4y157WW?p=17&vd_source=e4b21da575ef85d87ce1b8e9f64ca190

一、渲染

场景里的几何、材质、光照等通过一个渲染器,生成一张图片

几何

三角网格(传统)、体素、点云

image-20220619150852443

三角网格在复杂场景中数据量巨大

材质

材质 ≠ 纹理

描述 光线打到物体上后经过反射、折射等各种交互,出来后的形态各种各样

光源

次生光线、递归迭代

渲染中的某些场景元素(信号)的特点

  • 高纬度(High dimensionality)
  • 奇点 (Singularity)
  • 多模态 (Multi-modality)—网格、体素、点云
  • 数据量巨大 (Huge data size)

导致的问题:渲染很困难

二、深度学习中的渲染

深度学习中的功能

  • 处理高纬度和多模态的数据(高纬度可以压缩、多模态可以多模态融合)
  • 神经网络比某些人手写的公式更好、更快、更鲁棒
  • 可以在很复杂的问题中探索 low-rank 特征

深度学习在渲染中的两个角色

1、深度学习可以学习某种表征来对复杂场景元素进行编码

  • 对几何材质光源进行抽象
  • 可在 forward rendering 和 inverse rendering 中使用

2、学习一个domain到其他domain 的映射函数

  • 图片到图片
  • 传统方法是从手工推出的函数

第一个角色

学习一个 表示(representation)

可学习对象:几何、材质、光源、场景

(1)几何

用神经网络表示各种各样的几何体

在场景中表示几何:

  • 多视角图片
  • Signed distance function (SDF)三维重建
  • 稠密体素
  • 稀疏体素
  • 点云
  • 网格
  • ……

image-20220619153326564

image-20220619153443878

用网络去处理 mesh 的很少

image-20220619153520455

(2)材质

用神经网络去表示材质

材质可以抽象成一个函数,包含16个变量(入射、出射光方向、时间)

image-20220619153743048

  • 用经验模型简化材质
  • 直接采集:
    • 密集采样,
    • 移动相机光源采样、
    • 将数据保存在一个table里面。
    • 耗内存、速度慢

措施:压缩、降维

用深度学习去压缩材质

DeepBRDF :

image-20220619154412703

latent space :潜在空间、隐空间

参考: https://zhuanlan.zhihu.com/p/369946876

  • 潜在空间只是压缩数据的表示,其中相似的数据点在空间上更靠近在一起。
  • 潜在空间对于学习数据功能和查找更简单的数据表示形式以进行分析很有用。
  • 我们可以通过分析潜在空间中的数据(通过流形,聚类等)来了解数据点之间的模式或结构相似性。
  • 我们可以在潜在空间内插值数据,并使用模型的解码器来“生成”数据样本。
  • 我们可以使用t-SNE和LLE之类的算法来可视化潜在空间,该算法将我们的潜在空间表示形式转换为2D或3D。

将 BRDF Slice作为输入

image-20220619154908240

BRDF 不考虑材质的表面变化,若考虑表面变化还有一些光照效果等,我们采用 BTF

BTF: Bidirectional Texture Function

image-20220619155652279

对 SVBRDF 进行压缩

image-20220619163330460

image-20220619163830172

用神经网络去压缩材质空间,这个工作远没有结束

【三维体素型材质】:玉石、烟雾、半透明物体

image-20220619163930515

借鉴风格迁移

image-20220619164041610

只是风格相似,不一定是完全match

image-20220619164444074

对于任何一张图片,可以抽取其风格,然后迁移到三维物体上

(3)用神经网络表示光源

image-20220619164521562

环境光也是一种高维信号,同样的思想,采用神经网络去压缩,压缩形成的latent space并不是用于渲染,而是用于光照估计。

image-20220619164717253

先用神经网路抽取一个室外全景图的latent space,可以用于光照估计,输入一张图,去预测光照,先预测latent code,然后再用decode去恢复这张环境图。

应用:把虚拟物体插入到真实环境下

image-20220619164957649

这项工作在深度学习里有个非常重要的思想:disentanglement

刚才讲到是室外光,那么室内光是否也可以用auto-encode、GAN等进行压缩?

答案是不行,室内光过于复杂,难以压缩。

image-20220619165815866

该项工作把光源压缩到一个神经网络上

(4)场景

那么是否可以直接对整个场景,不分几何材质光照,进行压缩?

Neural scene

image-20220619170013686

限制:容易丢失细节

第二个角色: Mapping 映射

从一个 domain 到另一个 domain

image-20220619170931536

  • 去噪
  • 超分
  • 直接光—间接光
  • 渲染图片—材质贴图
(1)去噪

image-20220619171826353

  • 漫反射-镜面反射的分解
  • G-buffer
  • 无限的训练样本(理论上)
  • 解调 Demodulation (图象 / albedo)

在无监督去噪中,loss是关键

image-20220619172234941

(2)超分

典例:DLSS、Neual SS

image-20220619172322173

image-20220619172333668

(3)从直接光照预测间接光照

image-20220619172447406

该方向的研究较少

直接光照很快,间接光照很慢

(4)从渲染图片出发,反推场景元素

image-20220619172605439

从单张图片恢复 各种光照贴图,对于光泽效果的呈现尤为重要