from: http://geek.csdn.net/news/detail/126153

本文来源微信公众号:深度学习大讲堂,已授权发布。 
作者:刘峰,四川大学计算机学院生物特征识别实验室博士三年级学生,导师游志胜教授、赵启军博士。研究方向为机器学习与模式识别(三维人脸建模与识别、二维人脸特征点检测等)。 
原文:【ECCV2016论文速读】回归框架下的人脸对齐和三维重建 
欢迎技术投稿、约稿、给文章纠错,请发送邮件至heyc@csdn.net

输入二维头像

三维重构结果

三维人脸重建的目标是根据某个人的一张或者多张二维人脸图像重建出其三维人脸模型(此处的三维人脸模型一般仅指形状模型,定义为三维点云)。今天我们只讨论由单张二维图像重建三维人脸的问题。这个问题本身其实是个病态(ill-posed)问题,因为在将人脸从三维空间投影到二维平面上形成我们看到的二维人脸图像的过程中,人脸的绝对尺寸(如鼻子高度)、以及由于自遮挡而不可见的部分等很多信息已经丢失。在不掌握相机和拍摄环境的相关参数的情况下,这个问题其实是没有确定解的。

为了解决这一病态问题,一个直接思路是借助机器视觉中的Shape-from-Shading(SFS)方法。但是该方法依赖于光照条件和光照模型的先验知识,而未考虑人脸结构的特殊性,在任意拍摄的人脸图像上效果一般。后来,Kemelmacher-Shizerman和Basri [1] 引入了平均三维人脸模型作为约束条件对传统的SFS方法进行了改进,取得了不错的效果。然而,重建结果往往都接近平均模型,缺少个性化特征。另一个常用思路是建立三维人脸的统计模型,再将该模型拟合到输入的二维人脸图像上,利用拟合参数实现三维人脸的重建。这类方法基本都是基于Blanz和Vetter提出的三维形变模型(3D Morphable Model,简称3DMM) [2]。由于3DMM采用主成分分析(PCA)方法构建统计模型,而PCA本质上是一种低通滤波,所以这类方法在恢复人脸的细节特征方面效果仍然不理想。此外,上述两类方法在重建过程中对每幅图像都需要求解优化问题,因而实时性较差。

受到近年来回归方法在人脸对齐中的成功应用的启发,我们最早试图建立二维人脸图像上的面部特征点(包括眼角、鼻尖、嘴角等)与人脸三维模型之间的回归关系。这一思路的基本出发点是面部特征点是反映人脸三维结构的最直观依据。我们尝试根据二维特征点的偏差直接预测三维人脸形状的调整量。这就好比我们知道二维特征点是由三维人脸形状投影得到的,如果我们发现二维特征点存在偏差,那么根据这一线索我们就应该能够计算出三维人脸形状应该做怎样的调整。而这个计算过程可以用事先训练好的二维特征点偏差与三维形状调整量之间的回归函数来实现。基于这样的思路,我们成功地设计实现了在给定输入二维人脸图像上的特征点的条件下实时重建其三维模型的新方法。相关结果发布在Arxiv [3]。

沿着上述思路,基于2D人脸特征点和3D人脸形状之间很强的相关性,我们进一步尝试将二维人脸图像特征点检测(即人脸对齐)与三维人脸重建过程耦合起来,在回归的框架下同时实现这两个任务。这就是我们今天要介绍的发表在ECCV2016上的工作 [4] (以下称ECCV2016方法)。扯了这么多(希望不是那么远^_^),下面正式进入正题。

另一方面,2D特征点携带有丰富的几何信息,这也是3D重建方法的基础。

现有的2D特征点检测方法大部分是基于2D人脸形状建模的,主要存在以下几个问题:i)很难去刻画3D平面外旋转的人脸特征点;ii)在人脸姿态不是很大的情况下,通过变化人脸轮廓特征点语义位置来解决自遮挡的情况,这样会导致不同姿态下检测的特征点语义信息不一致 [5](如上图,人脸图像中蓝色点所示);iii)在更大姿态下,尤其是yaw方向超过60度以后,人脸区域存在近一半自遮挡,遮挡区域的纹理特征信息完全缺失,导致特征点检测失败。

现有的利用2D特征点来恢复3D人脸形状的方法也存在以下几个问题:i)需要第三方2D特征点检测算法或者手动得到2D特征点;ii)不同姿态下检测的特征点语义信息不一致,难以确定3D点云中与其对应的点 [6];iii)只生成与输入人脸图像同样姿态和表情的3D人脸,而这样的3D人脸,相对于姿态和表情归一化的3D人脸而言,显然并不有利于人脸识别。

ECCV2016方法的整体框架如下:

我们先给出利用训练好的回归模型检测任意一张二维人脸图像上的特征点,并重建其三维模型的过程。

值得指出的是:Step 5中,从3D人脸投影得到2D特征点对人脸形状和姿态都有很强的约束。而Step 2中,特征点是通过纹理特征指导得到的,其中自遮挡区域由于纹理信息的缺失,回归得到的特征点常常是不准确的。通过此步骤3D投影来修正能够有效地提高特征点检测的准确度。

在训练过程中,为了得到上述回归模型,需要提供成对的标定好特征点的二维人脸图像及其对应的三维人脸数据

为了更好地处理任意姿态、任意表情的二维人脸图像,训练数据中需要包括尽量多不同姿态和不同表情的人脸,而对应的三维人脸则都是中性表情的、且已经稠密对齐的点云数据。下面我们重点介绍一下用于人脸对齐的2D特征点回归的目标函数和用于三维人脸重建的3D形状回归的目标函数。

该目标函数建立当前2D特征点周围的纹理特征与其距离真实位置的偏移量之间的回归关系。我们训练所用2D特征点是从3D形状投影得到的,因而确保了语义上的一致性。同时为了处理大姿态人脸图像,如果某个特征点被判定为不可见点,那这个点的SIFT特征向量置为0。

3D形状回归建立的是2D特征点修正量与3D形状修正量之间的关系。所有训练3D人脸都进行了稠密对齐,且2D特征点之间也作好了对齐,所以并不需要增加额外的平滑约束,同时也尽量保持了3D人脸的个性化差异。训练数据中的3D形状是姿态-表情归一化(Pose and Expression Normalized,简称PEN)3D人脸,如此重建得到的PEN 3D人脸更适用于人脸识别。

在公开测试集上的实验结果证明了在统一的回归框架下同时解决人脸对齐和三维重建的有效性。ECCV2016论文中还进一步证明了重构出来的姿态与表情归一化的三维人脸在提升人脸识别准确率方面的有效性。最后,我们展示利用ECCV2016方法得到的人脸对齐和三维重建的几个典型结果。

参考文献 
[1] Kemelmacher-Shlizerman, I., Basri, R.: 3D face reconstruction from a single image using a single reference face shape. TPAMI (2011). 
[2] Blanz, V., Vetter, T.: A morphable model for the synthesis of 3D faces. In: SIGGRAPH (1999). 
[3] Liu, F., Zeng, D., Li, J., Zhao, Q.: Cascaded regressor based 3D face reconstruction from a single arbitrary view image. arXiv preprint arXiv:1509.06161 (2015 Version) 
[4] Liu F, Zeng D, Zhao Q, Liu X.: Joint face alignment and 3D face reconstruction. In: ECCV (2016). 
[5] Jourabloo, A., Liu, X.: Pose-invariant 3D face alignment. In: ICCV (2015) 
[6] Qu C, Monari E, Schuchert T. Fast, robust and automatic 3D face model reconstruction from videos. In: AVSS, 113-118 (2014) 
[7] Xiong X, De la Torre F. Supervised descent method and its applications to face alignment. In: CVPR. 532-539 (2013)

回归框架下的人脸对齐和三维重建相关推荐

  1. 【ECCV2016论文速读】回归框架下的人脸对齐和三维重建

    本文来源微信公众号:深度学习大讲堂,已授权发布. 作者:刘峰,四川大学计算机学院生物特征识别实验室博士三年级学生,导师游志胜教授.赵启军博士.研究方向为机器学习与模式识别(三维人脸建模与识别.二维人脸 ...

  2. 人脸对齐(十八)--Joint Face Alignment and 3D Face Reconstruction

    Joint Face Alignment and 3D Face Reconstruction(2016) 本文主要提出了一种新的方法来解决任意姿态和表情的2D人脸图片的特征点定位和3D人脸重构.该方 ...

  3. 两篇人脸对齐文献概述

    [1] X. Jin, X.Y. Tan, Face alignment in-the-wild: A survey, CVIU2017 [2] E Zhou, H Fan, Z Cao, Y Jia ...

  4. (三)混合边缘AI人脸对齐

    目录 介绍 对齐算法 算法的实现 向检测器添加人脸对齐 修改对齐算法 下一步 在这里,我们将简要说明如何在Raspberry Pi上安装MTCNN.TensorFlow和Keras.然后我们在视频文件 ...

  5. tensorflow精进之路(二十八)——人脸识别(下)(MTCNN人脸检查和人脸对齐+CASIA-WebFace数据集模型)

    1.概述 这一讲,我们来训练自己的人脸识别模型. 2.下载CASIA-WebFace人脸数据集 CASIA-WebFace人脸数据集包含了10575个人的494414张人脸图片,需要在 http:// ...

  6. RPNet++:人脸对齐faceAlignment和基于CNN的三维人脸恢复

    参考,人脸pose检测算法:https://blog.csdn.net/wishchin/article/details/51554036. 人脸的Pose检测需要一个 SolvePNP 的过程,对于 ...

  7. 重磅!清华商汤开源CVPR2018超高精度人脸对齐算法LAB

    清华&商汤开源超高精度人脸对齐算法LAB 同时发布含10000张人脸的多属性人脸关键点数据集 该算法来自CVPR2018论文<Look at Boundary: A Boundary-A ...

  8. 人脸对齐(十四)--LPFA

    Large-Pose Face Alignment via CNN-Based Dense 3D Model Fitting(LPFA) 作者试图使用3D人脸建模解决大姿态下面部特征点定位问题.其实跟 ...

  9. 人脸对齐(十三)--3DDFA

    Face Alignment Across Large Poses: A 3D Solution(3DDFA2015) 本篇文章针对的问题: 1).一般的人脸特征点定位模型都是基于可见的特征点训练得到 ...

最新文章

  1. anemometer mysql_MySQL慢日志简介及Anemometer工具介绍 | | For DBA
  2. python获取文件夹下文件_Python获取目录下的所有文件
  3. vc++6.0打开文件闪退_VC++6.0下载及安装教程
  4. selective gaussian blur /adaptive-blur
  5. a标签的href与onclick中使用js的区别
  6. python wget安装_Macbook系统环境安装wget的2个方法 - 传统包及Homebrew安装
  7. 宁波政务云资源的介绍与申请
  8. 10以内逆向运算题_【七年级上】数学 有理数运算典型易错题分析(下)
  9. 谷歌 AI 中国中心彻底变天了!
  10. Android反射修改view,Android 修改viewpage滑动速度的实现代码
  11. Ble扫描导致wifi信号弱/断开解决
  12. Nsight Compute内存访问常用Metrics含义理解
  13. 艾宾浩斯曲线在线 PDF 文件生成 在线背单词 背单词计划表 高考-四级-六级-SAT-托福-雅思-GRE-17 天搞定 GRE 单词, 背单词神器-动态生成时间表! 利用艾宾浩斯记忆曲线自动生成背单
  14. liunx 操作系统的区别和之间的关系
  15. 最新的android系统版本,Android8.0以上系统成为主流,你的手机更新到安卓那个版本了?...
  16. 基于移动位置服务器,基于移动位置的服务系统及方法
  17. cadcene17.4改背景颜色
  18. OpenGL入门第三课--矩阵变换与坐标系统
  19. 【HTML5】网页实用技巧3:将方形图片设置成圆形后,添加圆形虚线边框
  20. 清空MySQL单库下所有表数据 || 删除MySQL单库下所有表

热门文章

  1. myeclipse6-ejb3入门
  2. Scott Mitchell的ASP.NET2.0数据指南中文版索引
  3. VS2012下安装配置OpenCV2.4.9的方法
  4. 未来智能社会的一砖一瓦都需要今天我们一点点的探索发现!
  5. OpenCV下三对点计算仿射变换实现图像的水平镜像(翻转)的详细说明和源程序
  6. linux网卡绑定lacp,服务器网卡绑定为LACP 802.3ad,交换机是应该配置链路聚合吗?...
  7. mysql 存储过程声明式游标_Mysql 存储过程中使用游标循环读取临时表
  8. Java中重载(overload)和重写(override)
  9. 计算机网络是啥意思啊,no signal是什么意思啊
  10. Crypto++库在VS 2005中的使用——RSA加解密