0
点赞
收藏
分享

微信扫一扫

3D Morphable Face Models—Past, Present, and Future

快乐与微笑的淘气 2022-02-06 阅读 60
3d

这是一篇关于3DMM(3D Morphable Face Model)的综述,该输了过去20年间这个领域的发展概况。

1. 介绍

3DMM自从提出开始已经有20多年的历史,当年提出的时候收获了论文影响力奖,而且效果视频在油管也曾经登上过热门。近两年,随着深度学习的发展,3DMM又开始重回人们的事业,很多研究者开始进一步挖掘3DMM在现如今各种任务中的应用。

1.1 定义

3DMM是一个用于生成面部形状和外观的模型,它基于两个关键想法:

1. 所有的人脸都可以构建点对点的对应关系,也即一个人的鼻尖可以对应到另一个人的鼻尖,一个人的嘴角也可以对应到另一个人的嘴角。基于这个想法,我们就可以通过线性组合一些人脸基底(一些典型的人脸)来描述一个人脸。

2. 人脸的形状和颜色需要和外部参数解耦,外部参数包括相机内参和光照。

Morphable Model(MM)通常会用到一些统计模型来描述人脸的分布,而在最原始的文章中使用的就是PCA。当然后续也有人套用了其他的模型。

1.2 历史

如何设计一个视觉系统来描述来自同一类物体不同图片并用于其他视觉任务,这是3DMM在设计之初要解决的问题(说人话,就是比如我们要有一个视觉系统专门给人脸建模,但每个人长得都不一样,甚至同一个人照片之间的光照,人的表情也都不一样,这就会给系统带来很大的困难。所以这里就是要找到一种方式可以将所有人脸照片都囊括到同一种表示方式,这样就可以很简单的用于其他视觉任务了。)。但从2D图形到3D模型的重建必然是病态问题,因此3DMM的想法就是最大化的利用类别信息的先验(也就是说,既然我们都知道要模仿的是人脸,那就把所有人脸共性的部分都事先提取出来,省的模型再去花精力学习)。3DMM就是可以自动化的抽取这样的先验。

人脸表示事实上已经有了很久的研究,在3DMM之前就有一套名为Eigenfaces的方法被提出来了。想法很简单,就是把人脸图片看做一个很大的向量,然后在所有图片上做PCA来降维,从而表示不同人脸。但一大问题是Eigenface要求光照和姿势不能变(因为所有特征都混在一起了,因此单独光照和姿势变肯定会全都影响),而且当微调特征向量的参数时,面部的变化是不连续的,也就意味着Eigenface没有很好的解缠面部特征。

在此之后,有人提出了基于2D面部形状(shape)的Eigendecomposition,也就是试图将形状信息从eigenface中解缠。为了做到这一点,他们使用了200个landmark用于对齐人脸(Eigenfaces只用了一个)。再然后有人进一步解缠了外貌(appearance),效果也很不错。除此以外,还有人尝试使用粒子流算法(optic-flow algorithm)来描述面部形状的变化。

在之后又有人在这基础上让模型可以捕捉基于姿态的变化,甚至应用到了别的类别,例如汽车。但这些方法通常非常复杂,需要对每个姿态和光照的小区间分别建模,就很不实用。但与此同时,在计算机图形学中的发展显示,其实姿势和光找事很简单就能建模的,因此3DMM就借用了计算机图形学中的人脸模型来帮助表示人脸了。因此,3DMM最大的贡献就是两点:1.将计算机图形学中的人脸模型应用于人脸表示 2.使用了analysis-by-synthesis来构建2D和3D之间的连接(所谓analysis-by-synthesis就是说我们先分析输入的2D人脸,找出他的各种参数(analysis),然后基于参数模拟出3D模型后渲染回2D图像(synthesis),再将渲染好的图像和原始2D人脸做对比,从而学到更好的参数)

未完待续...

举报

相关推荐

0 条评论