End-to-end 3D face reconstruction with deep neural networks
Abstract
该文未采用基于RGB图像以及预设3D面部表情生成的方法,并采用end-to-end manner(一种端到端的方法),从而绕过了繁琐的3D重建流程。我们从两个方面整合深度神经网络(DNN),即通过多任务损失函数以及集成深度神经网络来提升面部表情重建效果;其中运用多任务损失函数能够将复杂的3D重建问题分解为独立的两个子任务:即单独实现3D人脸重建以及细致的人脸表情重建。鉴于中性面部形状具有近似固定特性,在此选择网络高层特征来进行表示;而具体到 facial expressions则选用低层或中层神经网络层次特征来进行建模。
Method
用一系列的形状和融合形状(blendshape)去表示人脸的3D形状.
S = \bar{S} + U_{d} * \alpha_{d} + U_{e} * \alpha_{e},
设S为目标脸,则\bar{S}代表平均人脸形态;U_d由中性面部3D扫描的主要成分构成,并对应身份识别参数向量\alpha_d;而U_e则由带有表情的人脸与中性面部之间的偏差(offset)所构成的主要成分组成,并对应相应的表情参数向量\alpha_e。
Network architecture

Traning
原始图片通过一个人脸检测器识别出人脸区域, 在裁剪时采用将原始检测框放大25%以及选取较大边长进行裁剪的方式, 并对图片进行缩放以获得180×180像素的大小. 网络输出包含身份参数向量和表情参数向量.
注
Cost functions
损失函数选择训练得到的3D脸和 ground truth 之间的差距.
E_{c} = ||U_{c} * \hat{\alpha}{c} - U{c} * \alpha_{c}||_{2}^{2}
这里的c \in {e, d}. 总的损失函数为
E = \lambda_{d} E_{d} + \lambda_{e} E_{e}.
合成数据
因为没有足够的3D-2D人脸数据而难以直接获取高质量的数据集, 我们借鉴了文献[1]的方法去生成合成数据集. 首先我们利用随机参数生成了10,000张中性面部图像并提取了相应的纹理信息. 接着我们引入表情参数来创建多样化的面部表情. 然而在使用随机的表情参数时会生成大量不可靠的3D面部模型因此在文献研究的基础上我们最终采用了文献[3]中的方法来优化表情估计模型
接下来是相机参数和光照的设定.
暂时写到这里,后补.
参考文献
- [1] E. Richardson, M. Sela, and R. Kimmel. Three-dimensional face reconstruction through learning from synthetic datasets. In Proc. International Conference on 3D Vision, pages 460–469, California, USA, October 25-28 2016. 2, 3, 4, 8
- [2] P. Paysan, R. Knothe, B. Amberg, S. Romdhani, and T. Vetter. Three-dimensional face models designed for invariant recognition under varying poses and illumination conditions. In Proc. 6th IEEE International Conference on Advanced Video and Signal Based Surveillance, pages 296–301, Genoa, Italy, Sep. 2-4 2009.
- [3] X. Zhu et al., "Three-dimensional approach to achieving accurate facial alignment across extensive pose variations," Proc. IEEE Conf. Comput. Vision Pattern Recognit., vol Las Vegas NV Jun., pp146–155.
- [4] C.Cao et al., "Facial Expression Database (FED): A comprehensive three-dimensional dataset for visual computing applications," IEEE Trans Vis Comput Graphics vol., no., pp413–425 Mar.
