Meta用神经网络从RGB反照率逼真还原皮肤主要成分,构建逼真AR/VR角色人脸复制品
人脸
(映维网Nweon 2022年03月10日)计算机图形学的一个长期目标是创造令人信服的逼真人脸复制品,而这通常需要依靠经验丰富的美术微调大量空间变化的着色参数。作为虚拟人的一个重要组成要素,社区在精确建模皮肤方面付出了巨大的努力。皮肤之所以具有挑战性,不仅是因为它与光存在复杂的交互,同时因为人类的视觉系统已经进化出强大的面部感知。
最近,学界对通过捕获来估计皮肤特性的兴趣有所增加,主要是集中于利用生物物理约束条件,从漫反射中反演皮肤的生物物理特性。在名为《Estimation of Spectral Biophysical Skin Properties from Captured RGB Albedo》的论文中,Meta,康奈尔大学和伦敦大学学院提出了一个全新的模型。其中,它可以基于生物物理的光谱皮肤反照率空间,并利用神经网络从简单的RGB反照率中准确恢复皮肤的主要成分和结构。
为了实现所述目标,模型以对人类皮肤主要特性的生物物理描述作为,并通过蒙特卡罗模拟将其转化为反照率。所述过程由两个步骤组成。首先,研究人员预先计算一个反照率空间,而它是由所有可能的皮肤参数组合产生的高维肤色张量。然后,学习从反照率到相关皮肤属性的逆映射。
团队描述了如何创建反照率空间、皮肤模型的细节和使用的数据,以及实际复杂性和表现力的平衡。
1. 皮肤模型:结构和光学特性
1.1 皮肤结构
团队决定将模型限制为两层,即表皮和真皮,因为类似的假设在过去已证明是足够的,并且符合团队的目的。表皮由两部分组成:活表皮和角质层。后者是最外层,其特性(表面粗糙度和皮脂生成)会影响皮肤的镜面反射。但鉴于其低吸收和相对较小的厚度,它对皮肤反照率的影响最小。另一方面,研究人员将真皮建模为两个子层(网状真皮和乳头状真皮)的平均散射和吸收特性的单层。它模拟为半无限介质,并忽略了皮下脂肪层。这是为了保持模型的通用性,重点是面部:真皮旁边不仅可以是脂肪,同时可以是软骨或肌肉等其他内部组织,这在很大程度上取决于被试的解剖位置和构成。另外,团队发现包括真皮厚度对产生的漫反射的影响最小。
1.2. 吸收
根据众所周知的多层组织光学模型,研究人员通过光谱吸收(µa)和散射(µs)系数来描述每一层的光学特性。每层µai的吸收是每层存在的各种生色团吸收µac的加性贡献的结果。
本着生物物理方法的相同精神,团队纳入了黑色素的作用,并将血液中存在的血红蛋白Vb整合到真皮中。
1.3. 散射
团队将表皮和真皮视为均质介质,后者是半无限。两层的折射率均为1.4,这是由相应亚层(角质层(1.53)、活表皮(1.34)、乳头状真皮(1.39)和网状真皮(1.395)的加权(按厚度)和得出。
2. 反照率生成的分层模型
为了计算皮肤斑块的漫反射,研究人员首先尝试使用基于Kubelka-Munk的分层模型。但它缺乏表现力,无法有力地恢复足够广泛的皮肤类型的参数。因此,研究人员决定转向brute force Monte Carlo random walk。在这个阶段,研究人员将重点放在通过皮肤结构不同层的堆叠来解决运输问题。接下来,在2D中进行行走,假设每个层的方位平面对称。表皮和真皮之间的界面仅考虑散射和吸收参数的变化,因为两层的折射率测量结果基本相同。对于每个肤色,对可见光范围内的波长进行光谱模拟,波长在380到780 nm之间。实验发现,10 nm的行走足以产生稳定、无噪点的反照率。对于每个波长,发射一百万个光子,模拟在两层半无限介质上的2D随机行走,以产生漫反射反照率(与渲染步骤相反,在渲染步骤中,利用uv映射反照率来进行真正的3D随机行走)。
研究人员将皮肤视为指数衰减的均质介质。请注意,一旦光子穿过最外面的界面并扩散到组织中,即从反向表面法线周围的朗伯分布中选择初始方向,模拟就会开始。然后,通过绘制不同肤色的光谱反射率来验证生物物理模型。
3. 反照率空间参数化和采样
基于生物物理的反照率空间是通过改变表1所列范围内的皮肤属性创建。请注意,研究人员认为表皮厚度是至关重要的参数估计。考虑到面部的这个参数,以及黑色素浓度的不同值,这有助于获得局部暗区(如痣),并泛化到任何皮肤类型。团队同时允许黑色素和血红蛋白超出测量的成人正常值,以便自动处理面部异常值。这个范围的扩大对于氧合水平是合理的,因为它可以根据人的身体状态变化很多。对于黑色素类型比率,在可用的测量数据中几乎没有一致性。
因此,诸如胆红素和β-胡萝卜素浓度等参数依然固定在人类皮肤测量的共同值。表皮厚度、黑色素类型比率和血红蛋白类型比率均得到统一处理。
4.恢复皮肤属性
团队提出的生物物理模型定义了从皮肤参数到皮肤反照率的正向映射。对于逆过程,研究人员需要描述从皮肤反照率到皮肤参数的映射。这种映射的非双射性质使得这项任务具有挑战性,其中大量皮肤属性的组合可以导致相同的反照率。
值得注意的是,所述模型在光谱空间中运行,以计算对应于每个皮肤参数组合的反射率,但随后将此类反射率集成到RGB中以学习映射。这是一种设计选择:它简化了捕获,并提供足够好的恢复皮肤参数贴图,以便a)重建原始反照率;b)执行合理的编辑。但在更高维空间中操作可以缓解同色异谱现象,这有助于更准确地分离皮肤参数,将模型泛化到任何光源,或对不同的曝光水平具有鲁棒性等等。
4.1. Look-up Tensor(LUT)
团队按照上述的采样策略预先计算肤色的宽张量。为了估计给定输入反照率的皮肤参数,搜索反照率的每个纹理上的LUT,以找到使重建L2误差最小化的最佳皮肤参数集。然后,操纵它们,并从LUT查询新的相应反照率。这种方法能够忠实地重建皮肤反照率,误差接近于零。然而,由于从RGB到皮肤参数的映射不平滑,所以反转参数贴图存在噪点,并且有许多不连续性。反过来,对相邻像素进行编辑操作可能会导致重建反照率发生意外的突变。
4.2. 神经皮肤参数
估计为了克服LUT方法的局限性,研究人员选择训练一个编码器-解码器网络来恢复平滑的皮肤参数图。编码器和解码器都是四个完全连接层的MLP,两个隐藏层各有70个神经元。编码器将3D皮肤反照率映射为5D皮肤参数向量,而解码器进行反向映射。
利用生物物理皮肤模型,团队生成了一个由600k对5D皮肤参数向量和相应的3D反照率组成的数据集,分别分割80%和20%用于训练和验证。为了验证,研究人员根据均匀分布对皮肤参数进行采样。对于训练,使用低差异序列,依靠准蒙特卡罗更好地覆盖皮肤参数。随后,按照上面描述的方案对两者进行非线性重绘,并使用生物物理模型计算相应的反照率。
5.实现与结果
反照率空间是通过光谱计算生成,但输入反照率是在RGB空间中。为了将多波段光谱值降采样为RGB,团队使用了现有的积分方法。考虑到漫反射反照率具有相当有限的色域和动态范围,大多数颜色空间将可行(使用sRGB)。研究人员对光源进行了改变,以便与之前的研究进行直接比较。
团队对Fitzpatrick量表涵盖的几种皮肤类型的皮肤参数进行估计和操作。在LUT方法中,在3.70GHz的英特尔至强W-2135中,使用最大张量(256k肤色)对张量进行force多线程(12)搜索,2k×2k图像的搜索时间从2小时到5小时不等,4k×4k图像的搜索时间超过7小时。相反,学习到的映射具有内存消耗少和计算效率高的优点(在上述同一英特尔至强CPU上,2k×2k图像的平均时间不到2秒)。
另外,为了空间正则化和性能,团队牺牲了一点点重建正确性(在最终渲染中不可察觉)。在实验比较中,一般的观察结果是:团队的重建误差要低得多。
相关论文:Estimation of Spectral Biophysical Skin Properties from Captured RGB Albedo
总的来说,团队的贡献主要包括:
-
光谱皮肤反照率的表达空间受到真实皮肤物理特性的限制,与组织光学和医学研究中报告的测量结果一致。这样的空间是通过一个复杂的人体皮肤生物物理模型所创造。
-
从皮肤反照率到其相关光谱生物物理皮肤特性的学习逆映射,其能够从RGB捕获的反照率恢复平滑、高分辨率的皮肤特性空间变化映射。
-
总之,这是一个以最小误差忠实再现各种皮肤类型的反照率的框架,并且可以通过估计的生物物理特性以稳健的方式实现编辑功能。