基于GAN的单图重建高清3D面部纹理的方法

文档序号:29084491发布日期:2022-03-02 01:01阅读:465来源:国知局
基于GAN的单图重建高清3D面部纹理的方法
基于gan的单图重建高清3d面部纹理的方法
技术领域
1.本发明涉及的是一种图像处理领域的技术,具体是一种基于gan的单图重建高清3d面部纹理的方法。


背景技术:

2.现有3d人脸重建方法也即通过设计网络结构让模型学习3dmm参数。三维密集脸部对齐技术(3ddfa)[zhu x,zhen l,liu x,et al.face alignmentacross large poses:a 3d solution[c]//2016 ieee conference on computer vision and pattern recognition(cvpr).ieee,2016.]第一次在人脸对齐中引入卷积神经网络,这种做法在解决人脸重构问题上就相当于将3d人脸模型转换为图像问题解决。3dmm cnn[tran at,hassner t,masi i,et al.regressing robust and discriminative 3d morphable models with a very deep neural network[j].ieee,2017.]则是一个非常简单的回归模型,它使用resnet101网络直接回归出3dmm的形状系数和纹理系数。微软的基于弱监督学习的精确3d人脸重建[deng y,yang j,xu s,et al.accurate 3d face reconstruction with weakly-supervised learning:from single image to image set[j].2019.]引入一种同时考虑像素级别和感知级别的鲁棒的损失函数。2dasl[tu x,zhao j,xie m,et al.3d face reconstruction from a single image assisted by 2d face images in the wild[j].ieee transactions on multimedia,2020.]引入自监督的思想,目的是为当前2d对应3d的数据集太少带来的模型效果不够好的结果。
[0003]
尽管基于深度学习的3d人脸重建算法能够快速地生成输入图像的3d模型结果,但在训练过程中仍然面临许多的问题。一是高质量标注数据的缺乏,对于一个3d模型,通常由3d扫描仪器进行扫描,如果统一拓扑结构,那么还需要对扫描后的3d结果进行清洗重构。非常耗费时间以及金钱。对于高质量标注数据缺乏的问题,通常采用的是利用关键点拟合方法。如何更好的利用当前已有的高质量标注数据是个重要的突破口。二是3d人脸重建的精度问题,目前3d人脸重建存在两种方向,一种是训练模型拟合人脸参数,一种是训练模型直接拟合3d人脸顶点。这两种方式各有优缺点,如何优化模型框架来提高重建精度是个亟需解决的问题。三是重建出来的人脸的纹理清晰度,单图3d人脸重建存在一个很明显的问题就是重建出来的纹理十分依赖给定图像的分辨率,如何能够保证重建模型的清晰度下限则十分重要。


技术实现要素:

[0004]
本发明针对现有技术无法对带有噪声(如带有光线)的图像进行细致的超分辨率处理等不足,提出一种基于gan的单图重建高清3d面部纹理的方法,引入纹理超清并考虑不同角度的人脸图像,采用基于gan的模型对单图重构的3d模型进行重新建模,能够有效地生成高清的面部纹理。
[0005]
本发明是通过以下技术方案实现的:
[0006]
本发明涉及一种基于gan的单图重建高清3d面部纹理的方法,通过人脸数据集训练带有瓶颈残差块的生成网络,也即人脸密集对齐网络(dense alignment netfor face,danf),并进一步基于danf生成高清面部纹理数据集用于训练带有残差密集块的超分辨率网络,也即增强型纹理超分辨率生成对抗网络(enhanced texture super-resolution generative adversarial networks,etsrgan),最后通过训练后的etsrgan生成相应的高清面部纹理。
[0007]
所述的增强型纹理超分辨率生成对抗网络包括:依次相连的第一卷积层、若干密集残差块、第二卷积层、上采样层、第三和第四卷积层。技术效果
[0008]
本发明通过数据集拉伸算法和人脸密集对齐网络,并引入增强型纹理超分辨率生成对抗网络,将相对判别器改为绝对判别器,能够提升3d人脸对齐精度并将3d人脸重建结果提升至1k分辨率。与现有技术相比,本发明对人脸数据集的人脸关键点的边界部分进行扩充1.58倍裁剪,获取裁剪图像以及对应的人脸关键点后,将裁剪图像以及对应的人脸关键点进行上下压缩3/4和左右压缩3/4后对人脸关键点的边界部分再次进行扩充1.58倍裁剪,最后利用变换后的所有图像以及对应的人脸关键点进行3dmmfitting获取最终所需的人脸图像与对应的人脸参数数据对。
附图说明
[0009]
图1为本发明流程图;
[0010]
图2为实施例网络模型示意图(图中人物为虚构)。
具体实施方式
[0011]
如图1所示,为本实施例涉及一种基于gan的单图重建高清3d面部纹理的方法,本实施例采用人脸数据集300w-lp,利用python进行以下处理:
[0012]
步骤一:对人脸数据集按照预先标注的面部关键点确定裁剪范围,以对图像进行裁剪,得到目标尺寸的预处理数据,并对预处理数据比例划分为训练集和测试集,具体为:对68个人脸关键点的边界部分进行扩充1.58倍裁剪,获取裁剪图像以及对应的68个人脸关键点后,将裁剪图像以及对应的人脸关键点依次进行:
±
60
°

±
45
°

±
30
°

±
15
°
的旋转、翻转、上下压缩3/4和左右压缩3/4后对人脸关键点的边界部分再次进行扩充1.58倍裁剪,最后利用变换后的所有图像以及对应的人脸关键点进行3dmmfitting获取最终所需的人脸图像与对应的人脸参数数据对。
[0013]
所述的划分,对预处理得到的数据按照8:1:1的比例划分为训练集、验证集和测试集。
[0014]
步骤二:将训练集输入至人脸密集对齐网络得到人脸参数表示;
[0015]
所述的人脸参数表示包括:缩放参数t
gt
∈r3×3、平移参数offset
gt
∈r1×3、人脸参数α
gt
∈r
50
;t∈r3×3、offset∈r1×3、α∈r
50
,其中:gt表示真实值。
[0016]
所述的带有瓶颈残差块的生成网络结合mobilenet-v1与mobilenet-v2,将其中mobilenet-v1的深度可分块改为mobilenet-v2的瓶颈残差块,包括:标准卷积核层、若干瓶颈残差块、平均池化层和全连接层,其中:每一个瓶颈残差块均采用先升维再降维的结构。
[0017]
所述的瓶颈残差块均包括:1
×
1的卷积核、3
×
3各通道分别卷积、1
×
1的卷积核。
[0018]
步骤三:通过调用pytorch和python程序包,根据人脸参数表示计算人脸参数对齐损失人脸参数对齐损失l
para
=||w
t
·
tdiff||+||w
offset
·
offsetdiff||+||w
α
·
αdiff||,其中:权重w
t
∈r3×3,w
offset
∈r1×3,w
α
∈r
50
并且w
t
=tdiff
·
||s||,w
α
=f
·
αdiff
·
||a||,缩放参数对齐差异tdiff=abs(t
gt
)-abs(t),平移参数对齐差异offsetdiff=abs(offset
gt
)-abs(offset),人脸参数对齐差异αdiff=abs(α
gt
)-abs(α),a为形状和表情基,f为缩放因子,vn为人脸顶点数;
[0019]
为3ddfa([zhu x,zhen l,liu x,et al.face alignment across large poses:a 3d solution[c]//2016 ieee conference on computer vision and pattern recognition(cvpr).ieee,2016.])提供的平均人脸模型。
[0020]
步骤四:根据人脸参数表示以及平均人脸模型计算人脸顶点对齐损失l
vec
=s
gt-s,其中:
[0021]
所述的人脸密集对齐网络,其训练的目标函数为l
total
=l
para
+l
vec
;通过调用pytorch中的反向传播等优化函数,根据目标函数训练人脸密集对齐网络的参数,直到损失收敛。
[0022]
步骤五:利用人脸密集对齐网络构建高清面部纹理数据集,并对预处理数据比例划分为训练集和测试集。
[0023]
所述的高清面部纹理数据集,通过以下方式得到:
[0024]
i)采用基于stylegan的seeprettyface公开的高清人脸生成预处理模型快速生成大量的人物侧面高清照片;
[0025]
所述的高清人脸生成预处理模型采用但不限于stylegan2([karras t,laine s,aittala m,et al.analyzingand improving the image quality of stylegan[c]//2020 ieee/cvf conference on computer vision and pattern recognition(cvpr).ieee,2020.])
[0026]
ii)利用已训练的人脸密集对齐网络对步骤ii)得到的人物侧面高清照片生成对应的高清残缺纹理,通过侧面完整纹理部分对称获得高清完整纹理数据集;
[0027]
iii)对步骤ii)得到的每张完整纹理增加虚假光照以及虚假阴影,最终获取低分辨率残缺光照纹理(256,256)与高分辨率完整无光照纹理(1024,1024)作为面部纹理训练集。
[0028]
步骤六:将步骤五得到的训练集输入至带有残差密集块的超分辨率网络得到超分辨率面部纹理s
t

[0029]
所述的增强型纹理超分辨率生成对抗网络以esrgan([x wang,k yu,s wu,et al.esrgan:enhanced super-resolution generative adversarial networks[c]//computer science-computer vision and pattern recognition(cvpr).ieee,2018.])为基础,具体包括:依次相连的第一卷积层、若干密集残差块、第二卷积层、上采样层、第三和第四卷积层,其中:第一卷积层根据输入的图像信息,获取第一次卷积结果,若干密集残差块根据第一次卷积结果信息,进行多次密集残差处理,再进行第二次卷积,进一步的,上采
样层根据二次卷积结果,进行上采样处理,输出上采样结果,第三卷积层进行卷积处理,输出第三次卷积结果,第四卷积层根据三次卷积信息,进行最后一次的卷积处理,输出超分辨率的面部纹理结果。
[0030]
所述的卷积层的卷积核大小为3,步长为1,填充大小为1。
[0031]
所述的密集残差块由三个密集块组成,每个密集快进一步由五个卷积层组成。
[0032]
步骤七:根据步骤六训练得到的超分辨率面部纹理s
t
和步骤五得到的训练样本的真值,通过计算感知损失l
percep
、对抗损失对增强型纹理超分辨率生成对抗网络进行训练,包括以下步骤:
[0033]
e1.初始化批量大小的低分辨率纹理ldtexturebatch以及对应的高分辨率纹理hdtexturebatch;
[0034]
e2.通过esrgan网络的生成网络g获取生成结果;
[0035]
e3.最小化损失函数ld:
[0036]
通过反向传播更新判别网络参数θd;
[0037]
e4.最小化感知损失l
percep
:其中:l
vgg/i,j
为最小均方误差:
[0038]
e5.最小化损失函数lg:
[0039]
通过反向传播更新生成网络参数θg。
[0040]
步骤八:利用步骤三及步骤四训练得到的人脸密集对齐网络和步骤七训练得到的增强型纹理超分辨率生成对抗网络根据步骤一中的测试集生成相应的高清3d面部纹理。
[0041]
如图2所示,为本实施例涉及的一种实现上述方法的基于gan的单图重建高清3d人脸的系统,包括:人脸密集对齐网络和增强型纹理超分辨率生成对抗网络,其中:人脸密集对齐网络根据输入的包含人脸的图像信息得到预测的人脸参数结果,增强型纹理超分辨率生成对抗网络根据预测的人脸参数结果中的低分辨率面部纹理信息,进行超分辨率处理,得到1k分辨率的面部纹理结果,最终结合预测的人脸参数结果中的3d人脸模型与1k分辨率的面部纹理结果,产生最终的3d高清面部纹理。
[0042]
经过具体实际实验,在tesla p40 gpu,python pytorch框架的具体环境设置下,λ=10-4
的固定学习率从头开始训练50期,批量大小为1024,训练时间在40小时左右,模型训练数据大小均为120
×
120分辨率,项目在平均推断时间上为23ms。
[0043]
与现有技术相比,本方法利用对人脸数据集的拉伸算法以及提出的danf网络能够提升人脸对齐精度,例如对于3ddfa测试集,采用归一化平均误差(nme)来评估对准精度,3ddfa的对准精度误差在0.0698,本方法的对准精度误差在0.05712,提升了18.1%。本发明通过利用增强型纹理超分辨率生成对抗网络能够将生成的3d人脸模型面部纹理提升至1k。
[0044]
上述具体实施可由本领域技术人员在不背离本发明原理和宗旨的前提下以不同的方式对其进行局部调整,本发明的保护范围以权利要求书为准且不由上述具体实施所限,在其范围内的各个实现方案均受本发明之约束。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1