APP下载

具有网络一致结构的三维人脸模型重建研究

2020-12-01刘政董洪伟杨振

软件导刊 2020年10期

刘政 董洪伟 杨振

摘 要:针对传统方法及机器学习方法对大量三维人脸数据、训练样本数量与质量依赖性大的问题,采用基于光照立体的方法,利用人脸图像重建三维人脸。综合利用基于法线的模型变形法和非刚性变形法,提出一种基于法线的非刚性变形算法。利用SFS算法计算顶点法线,然后使用法线和局部刚性约束使参考模型变形,进而得到与参考模型具有一致网络结构的三维人脸模型,从而得到三维人脸图像。该方法与传统方法相比,节省了大量样本要求,并且立体效果更好。

关键词:SFS; 三维人脸; 非刚性网格变形

DOI:10. 11907/rjdk. 201042

中图分类号:TP317.4 文献标识码:A 文章编号:1672-7800(2020)010-0156-04

Abstract: Aiming at the problem that traditional methods and machine learning methods depend on a large number of 3D face data, the number and quality of training samples, this paper uses the method based on lighting stereo to realize the reconstruction of a three-dimensional face from a face image. A non-rigid model deformation algorithm based on normal is proposed, which combines a normal based deformation algorithm and a non-rigid model deformation algorithm. The SFS is used to estimate the normal of the vertices, then updated normal are used to deform the reference face model with local rigid constrain, finally a deformed 3D face model is obtained, which has the same mesh structure with the reference model, thereby obtaining a 3D face image. Compared with the traditional method, the proposed method can save a lot of sample requirementsand the stereo effect is better.

Key Words: SFS; 3D face; non-rigid mesh deformation

0 引言

三维人脸重建是计算机图形学的研究热点。目前三维人脸重建方法可大致分为基于仪器扫描的方法和基于图像的重建方法。使用仪器扫描虽然可以获得较高质量的三维人脸模型,但被扫描对象需与扫描仪器进行交互,且扫描期间目标对象需尽可能保持静止;通过扫描设备扫描得到三维人脸模型后,还需对扫描数据进行一系列复杂的处理才能得到较高质量的三维人脸模型。另外扫描设备价格高、操作较复杂性,使该方法难以普及。基于图像的重建方法包括基于统计模型的三维人脸重建[1-4]、基于多视几何的三维人脸重建[5]、 基于光照立体的三维人脸重建[6-11]以及近年来发展迅速的基于机器学习的三维人脸重建[12-14]。

基于统计模型的三维人脸重建方法依赖于大量的三维人脸数据,这些数据一般是对扫描得到的人脸模型进行PCA(Principal Components Analysis)处理后获得的。另外,该方法重建结果严重依赖于数据库中的人脸模型,数据库中模型空间有限,限制了重建灵活性。传统基于多视几何的方法需获取不同角度的多张正交人脸图像,为计算图像匹配点,首先需足够多的匹配点数量,然后匹配精确度也要求很高。而基于机器学习的方法则需要大量三维人脸数据用以训练,其最终重建结果同样依赖于训练样本数量,与基于统计模型的方法有相同的弊端。 本文采用基于光照立体的方法,利用人脸图像实现三维人脸重建。

Woodham[6]在1980年首次利用光度立体(Photometric Stereo,PS)重建三维模型,PS理论依据是物体表面反射光强度及物体表面与光的夹角及观察位置相关,利用不小于3张视角固定且光照不同的图像恢复形状和反射率[7]。从阴影恢复形状法(Shape-from-shading,SFS)是PS的特例。Horn[8]在1989年提出SFS与传统PS的区别是它可从一张图像上重建三维模型。

传统SFS需要已知目标表面反射率属性和光照条件以及边界值,然而这些条件并不容易获得。为了避免这些苛刻的条件,Ira[15]基于不同的人脸模型在尺寸、长宽比及鼻子、眼睛等主要特征位置是相似的特点,并且假设人脸模型满足朗伯反射,通过引入一个参考人脸模型,将问题转化为求解图像辐照度方程的问题,利用球谐函数先计算光照强度,再计算每个像素点深度值;Nehab[16]提出一种基于法线的三维模型变形方法;Yang[17]将Nehab的模型应用于三维人脸重建,从多张图像重建三维人脸,与文献[15]直接计算像素点深度值这种2.5D的方法不同,Yang首先利用图像更新参考模型中顶点的法线,进而利用法线使参考模型变形;文献[18]在此基础上增加了法线可信度,即,对每张图像计算出的法线计算加权和,法线权值大小与法线和相机方向的夹角成正比;文献[19]同样使用法线优化三维人脸模型。但是文献[19]理论上至少需要4张图像,该方法利用了SVD建立图像与球协函数的联系,但是由于人脸是非刚性的,不同图像中的人脸会有表情差异, 這会影响SVD结果。本文亦是利用法线使初始模型变形,但与文献[18]、[19]不同的是,本文利用局部刚性约束,最终变形后的人脸模型与初始人脸模型具有一致的网络结构,如图1所示。

1 算法概述

本文算法主要包括两部分:第一部分是更新模型中顶点的法线,即利用输入的人脸图像和辐照度方程计算初始模型中顶点法线;第二部分是利用法线使初始模型变形,进而得到与目标图像相似的三维人脸模型。

3DMM是一种基于统计的从图像重建三维人脸方法,虽然该方法重建的三维人脸模型受其数据库中人脸模型空间约束,难以实现高质量的三维人脸重建,但其输出模型结构一致性使该方法拟合的三维人脸模型可作为初始模型,进而使用其它优化方法进一步处理。故本文先使用文献[3]中3DMM方法,用一张人脸图像生成1个初始三维人脸模型,然后计算每张图像到初始模型的相机参数。利用相机参数,可获取初始模型在每张图像视角下的可见顶点,将这些可见顶点投影到对应的人脸图像上可获得顶点在图像上的颜色信息,之后利用SFS技术更新每个顶点法线,进而更新三维人脸模型。本文算法流程如图2所示。

2 法线计算

首先使用文献[3]中的形变模型方法拟合一个初始三维人脸模型,然后利用文献[21]的特征点检测法,标记出人脸图像中的特征点,利用图像上的特征点以及初始三维人脸模型上与之对应的特征点,计算模型到图像的相机参数,与文献[3]相同,相机参数采用弱透视投影。

利用相机参数,可以获得初始三维人脸模型在每个图像视角下的可见顶点及可见顶点的颜色信息。与文献[18]相同,使用球谐函数,基于每个顶点的颜色信息即可更新顶点法线。

文献[18]使用一个参考模型将问题转化为求解图像辐照度方程[I=ρln]的问题, 进一步利用球谐函数将其表示为:

其中,[ρ]是物体表面反射率,[l]是光照系数,[n=(nx,ny,nz)]是物体表面顶点的法线,[Y(n)]是球谐基, 给出其前9项。

与文献[11]相同,本文省略其中的常数项,将常数项归入光照系数中。已有分析表明,一阶谐波近似 (球协基中的前4项) 至少可捕捉87.5%的图像信息,而实际使用时只考虑模型中面对相机的部分,因此实际精度接近95%;二阶谐波近似 (球协基中的9项) 至少可以捕获99.2%的信息[11]。因此为了便于求解,本文只使用球谐函数的第一阶近似,既只使用[Y(n)]的前4项,使问题线性化。

由于公式(1)中[l]和[ρ]也是未知量,欲求[n]首先需计算出[l]、[ρ]。文献[19]提到人脸上的局部阴影会影响光照系数和反射率精确度。因此为增加鲁棒性将式(2)改写为:

其中,[m]指第[m]张图像,[lm]是图像[m]的光照系数,[ρm,i]是顶点[i]在对应于图像[m]的反射率,[dm,i]是顶点[i]对应于图像[m]的反射率补偿值,[vi]表示模型上第[i]个顶点,[Sm]表示参考模型在图像[m]视角下的所有可见点,[nm,i]表示模型中顶点[i]在图像[m]视角下的法线,[cm,i]表示顶点[i]在图像[m]上的颜色,[Vi,ring]表示顶点[i]的相邻点,[α]是反射率补偿值平滑约束的权重。

基于公式(3)可以首先令图像[m]视角下所有[ρm,i]等于该视角下所有[cm,i]的平均灰度值,并且所有补偿值[dm,i]为0,此时公式(3)可简化为:

公式(4)可直接利用线性最小二乘求解获得每张图像光照系数,由于本文利用球谐函数的第一阶近似,此[lm]是一个4行1列的向量。将公式(4)计算得到的光照系数代入式(3),且反射率仍固定不变,可以进一步利用最小二乘法计算反射率补偿值。将以上计算得到的光照系数和反射率补偿值代入式(5)即可计算得到反射率为:

反射率计算完毕后,将补偿值[dm,i]置零,用以下一次迭代使用。在计算得到[lm]、[ρm,i]后还不能直接使用公式(4)计算[nm,i],因为此时(4)是一个欠约束的问题,需要增加合理的约束项。最终优化公式为:

其中[t]是迭代次数,当[t=0]时,[nm,i]值為初始人脸模型上顶点[vi]的法线值。式(6)中第3项使更新后的法线不过于偏离初始值。

此时将已计算得到的[lm]、[ρm,i]代入式(6),可其简化为:

3 模型优化

Nehab等[16]提出了一种利用顶点法线优化三角形网格的方法,但是该方法需要已知所有顶点的法线,以此为约束使模型变形。本文与文献[16]相同,首先定义:

其中,[vu,vw]是顶点[vi]的邻居顶点,它们构成1个三角形网格,[vu,vw]构成[vi]的1条对边。公式(8)约束每个顶点的法线须垂直于顶点的所有对边,即利用更新后的法线改变初始模型中顶点位置。文献[16]中的第二项约束可简化为:

其中,[vi]是更新后的顶点坐标,[vi*]是更新前的顶点坐标,[ti,1]、[ti,2]是[ni]的切平面中两个相互垂直的单位向量,式(9)约束顶点沿着法线方向移动,以保持模型网络结构。

但是在本文中,初始三维人脸模型在每个图像的视角下只有一部分顶点是可见的,当输入图像太少时,比如仅有1张时,会有大量顶点法线没有通过计算得到更新;即使输入图像很多时也难以保证所有法线均能更新。故本文结合文献[16]、[20]中的非刚性变形法使初始人脸模型变形,定义:

由于公式(8)已经达到文献[20]中通过局部旋转变换改变顶点位置的目的,因此丢弃文献[20]中的旋转变换以减少需计算的参数数量。公式(10)要求模型中的每个顶点在改变位置时,须保持其与邻居顶点的边长不变。最终目标函数为:

其中,[λ1、λ2、λ3]分别是[En、Ep、Eedge]的权重,公式(11)同样是一个线性最小二乘问题。利用公式(6)、(11)可以从图像重建出网络结构一致的三维人脸模型。

4 实验

由于人脸角度不同,进行特征点检测时,人脸轮廓处特征点会有很大偏差,即正面人脸和侧面人脸特征点位置并不一致。因此在生成初始3DMM模型时使用一张正面人脸,根据文献[21]检测的68个特征点生成初始模型;而在更新顶点法线时,为了可更好地使模型与每张图像对齐,只使用内部51个特征点,并且对于偏差过大的特征点,可手动修正其位置。本文算法与其它算法对比如图3所示。

從图3可以看出,本文算法实现的三维人脸,立体细节更加真实丰富。

5 结语

现有三维人脸模型重建研究大多采用机器学习等方法,无法充分利用人脸一致性网络结构。本文针对传统算法进行优化,提高了针对性,且成本低、效果好。相比于其它基于光照立体的三维人脸重建方法,本文利用局部刚性约束,使变形后的人脸模型与初始人脸模型具有一致的网络结构,从而使三维人脸立体性更强、真实度更高。

在使用SFS时,图像与初始模型对齐程度对最终重建结果有很大影响,因此可通过提高初始模型与目标人脸的相似度及特征点匹配准确度,改进重建结果。将来可进一步将本文算法扩展到基于视频的三维人脸动画、三维人脸表情转移等领域,拓展算法适用性。

参考文献:

[1] LEO M J, MANIMEGALAI D. 3D modeling of human faces——a survey[C].  International Conference on Trendz in Information Sciences and Computing, 2011:40-45.

[2] BLANZ V,VETTER T. A morphable model for the synthesis of 3D faces[C]. Conference on Computer Graphics and Interactive Techniques,1999:187-194.

[3] PAYSAN P, KNOTHE R, AMBERG B, et al. A 3D face model for pose and illumination invariant face recognition[C]. IEEE International Conference on Advanced Video and Signal Based Surveillance,2009:296-301.

[4] BAS A, SMITH W A P, BOLKART T, et al. Fitting a 3D morphable model to edges: a comparison between hard and soft correspondences[DB/OL].  https://arxiv.org/pdf/1602.01125.pdf.

[5] 董洪伟. 基于网格变形的三维人脸重建[J].  计算机辅助设计与图形学学报, 2012, 24(7):932-940.

[6] WOODHAM R J. Photometric method for determining surface orientation from multiple images[J].  Optical Engineering,1980,19(1):1-22.

[7] BASRI R, JACOBS D. Photometric stereo with general, unknown lighting[J].  International Journal of Computer Vision,2007,72(3):239-257.

[8] HORN B K P. Obtaining shape from shading information[M].  Massachusetts:MIT Press,1989.

[9] LEE S W, WANG P, SVETLANA N, et al. Noniterative 3D face reconstruction based on photometric stereo[J].  International Journal of Pattern Recognition & Artificial Intelligence, 2008, 22(3):389-410.

[10] KEMELMACHERSHLIZERMAN I, BASRI R. 3D face reconstruction from a single image using a single reference face shape[J].  IEEE Transactions on Pattern Analysis & Machine Intelligence, 2011, 33(2):394-405.

[11] KEMELMACHERSHLIZERMAN I, Seitz S M. Face reconstruction in the wild[C]. IEEE International Conference on Computer Vision, 2012:1746-1753.

[12] SONG M, TAO D, HUANG X, et al. Three-dimensional face reconstruction from a single image by a coupled RBF network[J].  IEEE Transactions on Image Process, 2012, 21(5):2887-2897.

[13] RICHARDSON E, SELA M, KIMMEL R. 3D face reconstruction by learning from synthetic data[C].  International Conference on 3D Vision, 2016:460-469.

[14] RICHARDSON E, SELA M, OREL R, et al. Learning detailed face reconstruction from a single image[C].  IEEE Conference on Computer Vision and Pattern ,2016:5553-5562.

[15] KEMELMACHER-SHLIZERMAN I,BASRI R. 3D face reconstruction from a single image using a single reference face shape[J].  IEEE Transactions on Pattern Analysis & Machine Intelligence,2011,33(2):394-405.

[16] NEHAB D,RUSINKIEWICZ S,DAVIS J,et al. Efficiently combining positions and normals for precise 3D geometry[J].  ACM Transactions on Graphics,2005,24(3):536-543.

[17] YANG C,CHEN J,SU N,ET AL. Improving 3D face details based on normal map of hetero-source images[C].  IEEE Conference on Computer Vision and Pattern Recognition Workshops,2016:9-14.

[18] ROTH J,TONG Y,LIU X. Adaptive 3D face reconstruction from unconstrained photo collections[C].   Las Vegas :Proceedings of IEEE Computer Vision and Pattern Recognition,2018.

[19] ROTH J,TONG Y,LIU X. Unconstrained 3D face reconstruction[C].  IEEE Computer Vision and Pattern Recognition,2017:2606-2615.

[20] BOUAZIZ S, TAGLIASACCHI A, PAULY M. Dynamic 2D/3D registration[EB/OL]. https://www.ixueshu.com/document/9f8b4eb4e828 cf8a318947a18e7f9386.html.

[21] RAMANAN D. Face detection, pose estimation, and landmark localization in the wild[C].  IEEE Conference on Computer Vision and Pattern Recognition, 2012:2879-2886.

(責任编辑:江 艳)