假戏真做:只用合成的面部图像进行面部分析!
三个要点
✔️ 通过合成精心设计的人脸数据,将与真实人脸数据的领域差距降到最低
✔️ 只用合成的人脸数据建立人脸相关模型,并达到与SOTA相当的准确度
✔️ 发布本文所构建的合成人脸数据集。
Fake It Till You Make It: Face analysis in the wild using synthetic data alone
written by Erroll Wood, Tadas Baltrušaitis, Charlie Hewitt, Sebastian Dziadzio, Matthew Johnson, Virginia Estellers, Thomas J. Cashman, Jamie Shotton
(Submitted on 30 Sep 2021 (v1), last revised 5 Oct 2021 (this version, v2))
Comments: ICCV 2021.
Subjects: Computer Vision and Pattern Recognition (cs.CV)
code:![]()
![]()
本文所使用的图片要么来自论文、介绍性幻灯片,要么是参考这些图片制作的。
摘要
在人脸识别领域使用的数据集已经发现了几个问题。到目前为止,已经发表的大多数大型数据集都是从互联网上收集的人脸图像。例如,一种方法是搜索一个演员的名字并收集搜索结果中出现的面部图像。这种方法往往导致结果参差不齐,除了名字之外没有任何标签,而且对某些种族、性别和年龄有偏见,在收集数据之后需要花费大量精力来检查和纠正标签,平衡数据。此外,所收集的大部分面部图像都是未经个人同意的。因此,由于标签噪音和隐私问题,这项技术的使用在一些地区开始受到限制。为了在未来进一步提高人脸识别技术,更大和更高质量的人脸图像数据集是必不可少的。然而,由人类来完成从每一个面部图像捐赠者那里获得同意、分配准确的标签和平衡数据的任务并不实际。
在这种背景下,带有合成面部图像的大规模数据集吸引了很多人的注意。到目前为止,已经报告了几项工作。然而,由于合成人脸图像和真实人脸图像之间的领域差距,已知基于合成人脸图像的人脸识别模型对于真实人脸图像来说是不准确的。
到目前为止,普遍的看法是,合成人脸图像很难完全取代真实的人脸图像。因此,人们提出了使用真实人脸图像的领域差距方法,如将一些真实人脸图像以及合成人脸图像混合起来。
然而,这里提出的论文试图最大限度地减少领域差距,只使用合成人脸图像,而不使用真实的人脸图像,建立一个高度准确的人脸识别相关模型。如果甚至需要一些真实的人脸图像,就会出现噪音标签和隐私问题。如果能够像本文所尝试的那样,只用完全合成的人脸图像来构建人脸识别相关模型,将对人脸识别领域做出重大贡献,因为这将促进未来的人脸识别相关研究。这是一个非常有前途的领域。
产生合成人脸数据的过程。
面部数据的生成过程包括六个步骤,如下图所示。首先,准备好基本的人脸数据(模板脸),对其随机应用身份、表情、纹理、头发、衣服和环境。
模板脸使用以前的研究(Gerig等人,2017,Li等人,2017)。接下来,身份数据使用从Infinite Realities和Ten24获得的511人的3D扫描数据。采集的数据(原始数据)被手动清理掉噪音和毛发(清洁),如下图所示。此外,从这些数据中不仅可以获得身份信息,还可以获得纹理信息。
三维扫描数据还从尽可能广泛的年龄、性别和种族中收集,如下面的直方图所示,以捕捉现实世界的多样性。
从上面来看,下面是一个脸部数据的样本,身份信息应用于模板脸。
下一步,表达。使用了带有注释的面部地标的二维面部图像。由于仅靠这些注释数据不足以满足各种面部表情的需要,因此创建了一个面部表情变化的动画,并加入了从动画序列中提取的各种面部表情。
接下来是纹理。在本文中,目的是合成一个可以替代真实人脸图像的人脸图像,因此它被设计成与真实人脸一模一样,即使在放大时也是如此。如上所述,从三维扫描数据中收集了200套高分辨率(8192 x 8192像素)的纹理,从中去除噪音和毛发(清洁)。
对于每个三维扫描,皮肤颜色的反照率和两个粒度的位移(粗和中)被提取出来。如下图所示,粗位移(+coarse disp.)代表较大的不规则,而中位移(+meso disp.)代表更详细的不规则,如孔隙。除此以外,还可根据需要使用眼影、眼线和睫毛膏等化妆效果。
接下来是头发,有512个发型,162个眉毛,142个山羊胡子和42个睫毛,这些都是随机组合应用的。下图是一个样本。请注意,每个资产都是由专门从事数字头发创作的艺术家创建的。
最后,应用 "衣服 "来创建30种不同类型的服装。如下图所示,这包括不同类型的正式、休闲和运动服装。除衣服外,该系统还包括头饰(36种)、面饰(7种)和眼镜(11种),包括头盔、头巾、面罩和眼镜。需要注意的是,衣服是通过适当的变形技术使其贴身,而眼镜则是为了放在太阳穴和鼻梁上。
下图显示了在随机应用迄今为止介绍的每个组件(身份、表情、纹理、头发、衣服和环境)后的最终复合脸部图像的样本。
已经合成了非常精细的人脸图像。在下一节中,我们将评估这些栩栩如生的人脸图像是否能在两个常见的人脸分析任务中取代真实的人脸图像:人脸解析和人脸地标。
用合成数据进行人脸解析。
脸部解析是一项对脸部图像进行逐个像素标记的任务。每个像素都被贴上眼睛、鼻子、嘴巴等标签,并评估与正确标签匹配的百分比。使用两个著名的基准,Helen和LaPa,对在合成人脸图像数据集上训练的模型进行了评估。
下表显示了使用海伦数据集与传统方法进行比较评估的结果(F1得分)。总体上是对鼻子、眉毛、眼睛和嘴巴的综合计算。从表中可以看出,结果显示Ours(合成)与传统SOTA相当。
下表显示了LaPa数据集与传统方法的比较评估结果(F1得分),其中L-eye和R-eye代表左眼和右眼,L-Brow和R-Brow代表左眉和右眉。U-lip、I-mouth和L-lip也代表上唇、上下唇之间的区域和下唇。在这里,表格也显示,Ours(合成)的结果与传统的SOTA相同。
SOTA和Ours(真实)是在真实的人脸图像上进行训练,并在真实的人脸图像上进行测试,而Ours(合成)只在合成的人脸图像上进行训练,并在真实的人脸图像上进行测试。
有合成数据的人脸地标
脸部地标是一项取自脸部的眼睛、鼻子、嘴巴和轮廓的位置(特征点)的任务。下表显示了在300W数据集上与传统方法的比较评估结果(NME=归一化平均误差,FR=故障率)。较低的数值表示较高的性能;取了68个点并进行了评估。
在这里,从表中也可以看出,Ours(合成)的结果与传统的SOTA具有相同的水平。下图 显示了在真实 (顶部)和合成(底部)人脸图像上训练的网络的预测结果。
除此之外,本文还提供了一些例子,说明如何利用面部数据生成模型来轻松生成高密度的地标和眼球追踪数据,而这些数据是很难用真实的面部数据获得的。论文称,生成与真实人脸图像一模一样的数据的能力将使添加和生成难以人工收集和标记的数据变得更加容易。
摘要
本文表明,可以生成精心设计的面部图像,以减少和取代与真实面部图像的领域差距。尽管已经有人尝试用合成的人脸图像来替代,但它们都包含了一定量的真实图像。然而,我们现在已经表明,在人脸解析和人脸地标方面,单独的合成人脸图像的表现与SOTA一样好。这是一个重要的成就,因为它表明许多其他与人脸有关的任务可以用合成人脸图像而不是真实的人脸图像来解决。更容易获得人脸图像可以进一步提高人脸相关任务的准确性。由于本文的验证仅限于从颈部向上的面部图像,没有表现与面部表情变化相关的皱纹,而且与真实的面部图像相比,是在更有限的条件下进行的,预计未来会有更广泛的验证。该数据集是公开可用的。有兴趣的人可以在这里查看。
与本文相关的类别