非线性3DMM人脸重建和姿态归一化方法、装置、介质及设备制造方法及图纸

技术编号:27031568 阅读:64 留言:0更新日期:2021-01-12 11:14
本发明专利技术公开了一种非线性3DMM人脸重建和姿态归一化方法、装置、介质及设备,属于计算机视觉领域。该方法包括:对模型进行训练,将2D人脸图像输入模型,得到3D人脸。模型包括CNN编码器、形状解码器、纹理解码器和渲染层;CNN编码器对2D人脸图像样本估计得到相机投影参数、形状参数和纹理参数,形状解码器和纹理解码器将形状参数和纹理参数解码为3D形状和3D纹理。训练时渲染层得到渲染图像,通过损失函数训练模型。预测时渲染层进行3D渲染,得到3D人脸。本发明专利技术具有比线性3DMM更高的表示能力,训练和预测端到端进行,无需3D面部扫描即可利用2D图像进行网络训练,重建后的3D人脸在归一化后识别准确率高。

【技术实现步骤摘要】
非线性3DMM人脸重建和姿态归一化方法、装置、介质及设备
本专利技术涉及计算机视觉领域,特别是指一种非线性3DMM人脸重建方法、装置、计算机可读存储介质及设备,以及基于该非线性3DMM重建方法的人脸姿态归一化方法、装置、计算机可读存储介质及设备。
技术介绍
在人脸图像识别技术中,人脸的姿态是影响人脸识别率的重要因素,现有技术的人脸图像识别主要是对正面人脸图像或者小姿态(角度)人脸图像的识别,对于大姿态人脸图像的识别结果很不理想,为了提高识别准确率,需要对人脸图像(尤其是大姿态人脸图像)进行姿态归一化。前述的人脸图像、小姿态人脸图像和大姿态人脸图像都是2D人脸图像。基于3D重建的人脸姿态归一化方法是指将前述的2D人脸图像进行3D重建,得到3D人脸,对3D人脸进行姿态矫正(归一化)后重新投影成2D人脸图像以完成人脸姿态归一化的方法。基于3D重建的人脸姿态归一化方法的核心是对待归一化的2D人脸图像进行3D重建,一般的,3D在重建中3DMM类型的方法应用最多,3DMM方法主要分为如下方面。(1)线性3DMM参数估计方法3D形变模型(3DMorphableModel,3DMM),是一种基于统计学原理构建3D人脸模型的方法。线性3DMM参数估计方法的大致思路是利用一个人脸数据库构造一个平均(准确地说是特征人脸:平均人脸+特征向量组*对应系数,注:此系数非特征值,而是需要最终逆向求解的)人脸形变模型,在给出新的2D人脸图像后,将2D人脸图像与平均人脸形变模型进行匹配结合,调整平均人脸形变模型相应的参数,将平均人脸形变模型进行形变,直到平均人脸形变模型与人脸图像的差异减到最小,这时对纹理进行优化调整,即可完成3D人脸建模。通过以上步骤完成人脸3D建模后,再通过3D人脸旋转方法将3D人脸进行姿态旋转,最后将转正后的3D人脸在二维图像平面进行投影,完成2D人脸姿态的归一化。线性3DMM人脸重建是在面部扫描的基础上得到训练集,并基于该训练集执行主成分分析(PCA)来监督3DMM。主成分分析(PrincipalComponentAnalysis,PCA)是一种统计方法。通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。要模拟高度可变的3D脸部形状,需要大量高质量的3D脸部扫描。但是,这个要求对于实现来说是很昂贵的。广泛使用的巴塞尔人脸模型(BFM)是在中性表达式中仅有200名受试者构建的。缺乏的表情数据使用FaceWarehouse表情数据集来补偿。但几乎所有的模型都使用不到300次训练扫描。这样一个小的训练集远不足以描述人脸的完整变化。其次,在良好控制的条件下,线性3DMM的纹理模型通常用少量的3D扫描共同捕获的2D人脸图像构建。因此,这种模型只能学习在相似的条件下表现面部纹理,而在其他条件下(如在野外环境中)表现不佳。这大大限制了3DMM的应用场景。最后,线性3DMM的表示能力不仅受限于训练集的大小,而且还受其公式化。面部变化本质上是非线性的。例如,不同的面部表情或姿势的变化本来是非线性的,这违反了基于PCA的模型的线性假设。因此,线性3DMM模型不能很好地解释面部变化。(2)基于改进的线性3DMM方法标准的线性3DMM以PCA为基础,统计的分布是单模高斯分布。Koppen等人认为单模高斯不能代表真实世界的分布。他们提出了高斯混合3DMM,它将全球人口建模为高斯子群的混合,每个人都有自己的平均值,但共享协方差。通过该方法对3D人脸进行建模,建模精度得到了明显提升。但是,该方法仍然基于统计PCA。Duong等人通过使用深玻尔兹曼机解决人脸建模中的线性问题。但是,他们只使用2D面部和稀疏groundtruth,因此无法很好地处理大姿态变化面部。
技术实现思路
为解决上述技术问题,本专利技术提供一种非线性3DMM人脸重建方法、装置、计算机可读存储介质及设备,以及基于该非线性3DMM重建方法的人脸姿态归一化方法、装置、计算机可读存储介质及设备。本专利技术的非线性3DMM人脸重建方法具有比传统线性3DMM更高的表示能力,训练和预测端到端进行,无需收集3D面部扫描即可利用无约束2D图像进行网络训练。重建后的3D人脸在归一化后识别准确率高。本专利技术提供技术方案如下:第一方面,本专利技术提供一种非线性3DMM人脸重建方法,所述方法包括:使用训练集对非线性3DMM模型进行训练;其中,所述训练集包括多个2D人脸图像样本,所述非线性3DMM模型包括CNN编码器、多层感知形状解码器、CNN纹理解码器和渲染层;在训练时,输入所述非线性3DMM模型的2D人脸图像样本经过所述CNN编码器估计得到相机投影参数、形状参数和纹理参数,所述多层感知形状解码器将所述形状参数解码为3D形状,所述CNN纹理解码器将所述纹理参数解码为3D纹理,所述渲染层根据所述相机投影参数、3D形状和3D纹理得到渲染图像;通过损失函数训练所述CNN编码器、多层感知形状解码器和CNN纹理解码器的参数;将获取的2D人脸图像输入训练好的非线性3DMM模型,得到3D人脸;其中,2D人脸图像经过所述CNN编码器估计得到形状参数和纹理参数,所述多层感知形状解码器将所述形状参数解码为3D形状,所述CNN纹理解码器将所述纹理参数解码为3D纹理,所述渲染层根据所述3D形状、3D纹理和预定义的2D纹理图进行3D渲染,得到3D人脸。进一步的,所述非线性3DMM模型的训练包括先后进行的预训练阶段和微调阶段,其中:所述预训练阶段的损失函数L0为:L0=λ1L1+L2+λ3L3+λ4L4L1为关键点损失,L2为3D形状损失,L3为3D纹理损失,L4为投影参数损失;所述微调阶段的损失函数L为:L=L6+λ5L5+λ1L1L5为对抗损失,在对抗损失中,生成器为所述非线性3DMM模型,判别器为patchGAN的判别器;L6为重建损失;X(i,j)为渲染图像在坐标(i,j)处的值,Y(i,j)为2D人脸图像在坐标(i,j)处的值,H、W分别为2D人脸图像的高度和宽度;λ1~λ5为定义的系数。进一步的,所述CNN编码器包括依次连接的14个卷积层、AvgPool层和全连接层,所述CNN编码器在所述AvgPool层输出形状参数和纹理参数;所述CNN纹理解码器包括依次连接的全连接层、14个卷积层,所述CNN纹理解码器在最后一个卷积层输出3D纹理;所述多层感知形状解码器包括两个全连接层。进一步的,所述渲染层根据所述3D形状、3D纹理和预定义的2D纹理图进行3D渲染,得到3D人脸,包括:预定义2D纹理图,所述2D纹理图每个像素点与3D形状的顶点相对应;通过2D纹理图中每个像素点纹理值确定3D形状中每个顶点的纹理值。第二方面,本专利技术提供与第一方面所述的非线性3DMM人脸重建方法对应的一种非线性3DMM人脸重建装置,所述装置包括:训练模块,用于使用训练集对非线性3DMM模型进行训练;<本文档来自技高网
...

【技术保护点】
1.一种非线性3DMM人脸重建方法,其特征在于,所述方法包括:/n使用训练集对非线性3DMM模型进行训练;/n其中,所述训练集包括多个2D人脸图像样本,所述非线性3DMM模型包括CNN编码器、多层感知形状解码器、CNN纹理解码器和渲染层;/n在训练时,输入所述非线性3DMM模型的2D人脸图像样本经过所述CNN编码器估计得到相机投影参数、形状参数和纹理参数,所述多层感知形状解码器将所述形状参数解码为3D形状,所述CNN纹理解码器将所述纹理参数解码为3D纹理,所述渲染层根据所述相机投影参数、3D形状和3D纹理得到渲染图像;通过损失函数训练所述CNN编码器、多层感知形状解码器和CNN纹理解码器的参数;/n将获取的2D人脸图像输入训练好的非线性3DMM模型,得到3D人脸;/n其中,2D人脸图像经过所述CNN编码器估计得到形状参数和纹理参数,所述多层感知形状解码器将所述形状参数解码为3D形状,所述CNN纹理解码器将所述纹理参数解码为3D纹理,所述渲染层根据所述3D形状、3D纹理和预定义的2D纹理图进行3D渲染,得到3D人脸。/n

【技术特征摘要】
20190624 CN 20191055120091.一种非线性3DMM人脸重建方法,其特征在于,所述方法包括:
使用训练集对非线性3DMM模型进行训练;
其中,所述训练集包括多个2D人脸图像样本,所述非线性3DMM模型包括CNN编码器、多层感知形状解码器、CNN纹理解码器和渲染层;
在训练时,输入所述非线性3DMM模型的2D人脸图像样本经过所述CNN编码器估计得到相机投影参数、形状参数和纹理参数,所述多层感知形状解码器将所述形状参数解码为3D形状,所述CNN纹理解码器将所述纹理参数解码为3D纹理,所述渲染层根据所述相机投影参数、3D形状和3D纹理得到渲染图像;通过损失函数训练所述CNN编码器、多层感知形状解码器和CNN纹理解码器的参数;
将获取的2D人脸图像输入训练好的非线性3DMM模型,得到3D人脸;
其中,2D人脸图像经过所述CNN编码器估计得到形状参数和纹理参数,所述多层感知形状解码器将所述形状参数解码为3D形状,所述CNN纹理解码器将所述纹理参数解码为3D纹理,所述渲染层根据所述3D形状、3D纹理和预定义的2D纹理图进行3D渲染,得到3D人脸。


2.根据权利要求1所述的非线性3DMM人脸重建方法,其特征在于,所述非线性3DMM模型的训练包括先后进行的预训练阶段和微调阶段,其中:
所述预训练阶段的损失函数L0为:
L0=λ1L1+L2+λ3L3+λ4L4
L1为关键点损失,L2为3D形状损失,L3为3D纹理损失,L4为投影参数损失;
所述微调阶段的损失函数L为:
L=L6+λ5L5+λ1L1
L5为对抗损失,在对抗损失中,生成器为所述非线性3DMM模型,判别器为patchGAN的判别器;L6为重建损失;



X(i,j)为渲染图像在坐标(i,j)处的值,Y(i,j)为2D人脸图像在坐标(i,j)处的值,H、W分别为2D人脸图像的高度和宽度;
λ1~λ5为定义的系数。


3.根据权利要求1或2所述的非线性3DMM人脸重建方法,其特征在于,所述CNN编码器包括依次连接的14个卷积层、AvgPool层和全连接层,所述CNN编码器在所述AvgPool层输出形状参数和纹理参数;所述CNN纹理解码器包括依次连接的全连接层、14个卷积层,所述CNN纹理解码器在最后一个卷积层输出3D纹理;所述多层感知形状解码器包括两个全连接层。


4.根据权利要求3所述的非线性3DMM人脸重建方法,其特征在于,所述渲染层根据所述3D形状、3D纹理和预定义的2D纹理图进行3D渲染,得到3D人脸,包括:
预定义2D纹理图,所述2D纹理图每个像素点与3D形状的顶点相对应;
通过2D纹理图中每个像素点纹理值确定3D形状中每个顶点的纹理值。


5.一种非线性3DMM人脸重建装置,其特征在于,所述装置包括:
训练模块,用于使用训练集对非线性3DMM模型进行训练;
其中,所述训练集包括多个2D人脸图像样本,所述非线性3DMM模型包括CNN编码器、多层感知形状解码器、CNN纹理解码器和渲染层;
在训练时,输入所述非线性3DMM模型的2D人脸图像样本经过所述CNN编码器估计得到相机投影参数、形状参数和纹理参数,所述多层感知形状解码器将所述形状参数解码为3D形状,所述CNN纹理解码器将所述纹理参数解码为3D纹理,所述渲染层根据所述相机投影参数、3D形状和3D纹理得到渲染图像;通过损失函数训练所述CNN编码器、多层感知形状解码器和CNN纹理解码器的参数;
预测模块,用于将...

【专利技术属性】
技术研发人员:周军刘利朋江武明丁松
申请(专利权)人:北京眼神智能科技有限公司北京眼神科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1