留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

利用卷积神经网络和小面元进行人脸图像替换

黄若冰 贾永红

黄若冰, 贾永红. 利用卷积神经网络和小面元进行人脸图像替换[J]. 武汉大学学报 ● 信息科学版, 2021, 46(3): 335-340. doi: 10.13203/j.whugis20180500
引用本文: 黄若冰, 贾永红. 利用卷积神经网络和小面元进行人脸图像替换[J]. 武汉大学学报 ● 信息科学版, 2021, 46(3): 335-340. doi: 10.13203/j.whugis20180500
HUANG Ruobing, JIA Yonghong. Face Swapping Using Convolutional Neural Network and Tiny Facet Primitive[J]. Geomatics and Information Science of Wuhan University, 2021, 46(3): 335-340. doi: 10.13203/j.whugis20180500
Citation: HUANG Ruobing, JIA Yonghong. Face Swapping Using Convolutional Neural Network and Tiny Facet Primitive[J]. Geomatics and Information Science of Wuhan University, 2021, 46(3): 335-340. doi: 10.13203/j.whugis20180500

利用卷积神经网络和小面元进行人脸图像替换

doi: 10.13203/j.whugis20180500
详细信息

Face Swapping Using Convolutional Neural Network and Tiny Facet Primitive

More Information
图(4) / 表(1)
计量
  • 文章访问数:  77
  • HTML全文浏览量:  14
  • PDF下载量:  44
  • 被引次数: 0
出版历程
  • 收稿日期:  2019-12-27
  • 刊出日期:  2021-03-05

利用卷积神经网络和小面元进行人脸图像替换

doi: 10.13203/j.whugis20180500
    作者简介:

    黄若冰,硕士,主要从事计算机视觉研究。hrbing23456@163.com

    通讯作者: 贾永红,博士,教授。yhjia2000@sina.com
  • 中图分类号: P237

摘要: 提出了一种基于卷积神经网络和小面元的人脸替换方法。首先,使用级联卷积神经网络确定人脸位置,并应用全卷积网络对人脸进行分割以确定替换区域;然后,应用回归森林的人脸关键点技术和Delaunay三角剖分建立人脸三角网,对人脸小面元进行替换;最后, 应用泊松融合消除拼接痕迹。定性和定量的试验结果表明,该方法是有效的,并且可较好地解决人脸姿态一致性限制和人脸遮挡的问题。

English Abstract

黄若冰, 贾永红. 利用卷积神经网络和小面元进行人脸图像替换[J]. 武汉大学学报 ● 信息科学版, 2021, 46(3): 335-340. doi: 10.13203/j.whugis20180500
引用本文: 黄若冰, 贾永红. 利用卷积神经网络和小面元进行人脸图像替换[J]. 武汉大学学报 ● 信息科学版, 2021, 46(3): 335-340. doi: 10.13203/j.whugis20180500
HUANG Ruobing, JIA Yonghong. Face Swapping Using Convolutional Neural Network and Tiny Facet Primitive[J]. Geomatics and Information Science of Wuhan University, 2021, 46(3): 335-340. doi: 10.13203/j.whugis20180500
Citation: HUANG Ruobing, JIA Yonghong. Face Swapping Using Convolutional Neural Network and Tiny Facet Primitive[J]. Geomatics and Information Science of Wuhan University, 2021, 46(3): 335-340. doi: 10.13203/j.whugis20180500
  • 人脸替换是指用源图像中的人脸替换目标图像中的人脸,该技术在娱乐、商业、虚拟现实、影视创作、游戏等中具有重要的应用价值。例如,在影视作品拍摄过程当中,把替身动作作为基础层,将演员的脸部特写替换在年轻替身的脸部上,可以使演员“返老还童”。

    近年来,国内外学者对人脸替换方法开展了研究。目前主要分为基于二维图像和基于人脸三维模型两类替换方法。文献[1-3]采用基于三维模型的人脸替换方法,通过对人脸进行姿态估计、交互调整与校正,可对不同角度的人脸图像进行替换,但是该类方法建模过程复杂,计算量较大。文献[4]从建立的人脸图像数据库中搜索与源图像姿态、表情等一致的图像作为候选目标,对目标图像进行颜色校正与图像融合,再输出替换效果最好的图像。该方法的缺点是基于图像库,不能保证用指定的目标图像能达到很好的效果。文献[5]利用薄板样条插值函数对齐人脸五官,将图像分解为面部结构层、皮肤细节层和颜色层,对每一层进行融合后重建生成结果图像,该方法只限于正视图像。文献[6]根据源图像与目标图像的人脸关键点位置,对图像进行旋转、缩放、平移等操作,使得两幅图像人脸尽可能对齐,利用高斯滤波法融合两幅图像的人脸的眼鼻嘴区域。相比其他的基于二维图像人脸替换方法,该方法可以实现不同姿态下的人脸替换,但是在人脸姿态差异较大的情况下,变换整张人脸存在替换效果不自然的问题。

    为解决现有方法受人脸姿态一致性限制的问题,在利用级联卷积神经网络(convolutional neural network,CNN)人脸检测和回归森林法的人脸关键点定位的基础上,本文提出了采用Delaunay三角剖分构建人脸模型的小面元人脸替换法,应用全卷积网络实现人脸分割确定替换区域,以克服人脸遮挡物带来的影响,并采用肤色调整和泊松融合,使替换结果更加逼真。

    • 人脸检测是人脸替换的第一步,其目的是获取人脸在图像上的位置,以人脸为对象进行后续的处理,可以缩小处理范围,从而提高处理效果和速度。在人脸检测过程中,由于人脸姿态、遮挡物等外在因素,使用单个CNN网络直接提取深度抽象特征,容易导致网络结构复杂,无法在速度与精度上取得均衡[7]。因此,应用级联CNN网络[8]进行人脸检测,网络结构如图 1所示。

      图  1  级联CNN人脸检测网络

      Figure 1.  Cascading CNN Face Detection Network

      该级联网络由6个网络构成,其中,3个二分类网络用于判断输入是否是人脸,3个校正网络对上一步骤得到的候选框进行微调,以获取更准确的边框位置。对于一张输入图像,先用浅层网络过滤掉大部分非人脸区域,再对人脸候选区边框进行校正,并输入到后面的深层网络,以获得更准确的人脸检测结果。此外,为了检测更小的人脸,将24-分类网络和48-分类网络的输入图像尺寸缩小并输入到前一层,再将前一层的全连接层输出与该层的全连接层连接。该级联网络将多分辨率检测与检测-校正结合,可快速地检测出图像中不同大小的人脸。

    • 级联CNN人脸检测网络需要通过卷积层获取图像特征,用全连接层得到固定长度的特征向量,可实现人脸检测。但检测的人脸图像中常会有墨镜、头发、手或者其他遮挡物,现有的替换方法通常是根据人脸关键点或先验知识划分人脸替换区域。在进行替换时,如果源图像人脸区域内有遮挡物,会被当作人脸替换到目标图像上;如果目标图像人脸区域内有遮挡物,则会被源图像人脸替换掉,造成遮挡物不完整。为了使替换结果更加逼真与自然,在替换前需要分离人脸和遮挡物,要对人脸区域进行分割。全卷积网络(fully convolutional networks,FCN)利用反卷积层对CNN网络产生的特征图进行上采样,使它与输入图像尺寸相同,从而预测原始图像每个像素的类别[9]。因此,本文应用FCN-8s网络模型进行人脸分割,该网络结构如图 2所示。

      图  2  FCN-8s网络

      Figure 2.  FCN-8s Network

      该网络由卷积与上采样两过程组成,图像在卷积过程中经5次池化,得到的特征图变为原图的1/32大小,对深层卷积特征图上采样32个步长不能很好地还原细节特征,为了融合浅层细节特征,对最后一层卷积层输出结果进行2倍上采样,并与第4次池化的特征融合;对融合结果进行2倍上采样后,与第3次池化的结果融合;对上述融合结果进行8倍上采样恢复图像大小,实现图像分割。通过分割人脸图像,可以克服墨镜、头发、手部等遮挡物对人脸替换的影响。

      此外,由于肤色和光照等原因,源图像和目标图像的人脸存在颜色差异,造成替换后人脸肤色不连续,因此,需要对人脸肤色进行调整。文献[6]采用RGB缩放校色的方式,对源图像上每个像素乘以两幅图像的高斯模糊比例系数,该方法造成调整后的人脸模糊;应用文献[10]提出的颜色迁移理论,利用lab色彩空间更能模拟人类视觉系统的特性,将源图像和目标图像的人脸检测结果从RGB空间转换到lab空间,然后分离lab通道,对源图像各通道进行Wallis变换,表达式为:

      $$ {I}^{k}\left(x, y\right)=\left[{S}^{k}\left(x, y\right)-\mathrm{m}\mathrm{e}\mathrm{a}\mathrm{n}\left({S}^{k}\right)\right]\frac{c{\sigma }_{T}^{k}}{c{\sigma }_{S}^{k}+\left(1-c\right){\sigma }_{T}^{k}}+\\ p\times \mathrm{m}\mathrm{e}\mathrm{a}\mathrm{n}\left({T}^{k}\right)+\left(1-p\right)\mathrm{m}\mathrm{e}\mathrm{a}\mathrm{n}\left({S}^{k}\right) $$ (1)

      式中,$ S(x, y) $为源图像灰度值;$ I(x, y) $为变换后的灰度值;T为目标图像;k表示lab通道;$ \mathrm{m}\mathrm{e}\mathrm{a}\mathrm{n}\left({S}^{k}\right) $、$ \mathrm{m}\mathrm{e}\mathrm{a}\mathrm{n}\left({T}^{k}\right) $、$ {\sigma }_{S}^{k} $、$ {\sigma }_{T}^{k} $分别为源图像的均值、目标图像的均值、源图像的标准差、目标图像的标准差;$ c $表示图像方差的扩展常数;p表示亮度系数。令p=1,$ c $=1,可使变换后的源图像均值和方差与目标图像一致。将变换后的lab各通道值逆变换到RGB空间,再经过上述操作,可以把源图像人脸肤色调整为与目标图像人脸肤色一致。

      当人脸检测区域存在遮挡物时,如果不进行人脸分割操作,计算出来的各通道均值与方差就会受到遮挡物的影响,导致调整后的肤色与目标图像不一致;经人脸分割模型得到的人脸区域不包含遮挡物,利用分割后的人脸范围计算均值和方差,代入式(1)对源图像进行肤色调整,可以避免遮挡物的影响,使得调整后的源图像人脸与目标图像人脸肤色一致,改善肤色调整效果。

    • 文献[6]利用普氏分析法对源图像人脸进行旋转、缩放等变换,使两张图像的人脸五官尽可能对齐。当两张图像人脸姿势相差较大时,直接地对人脸变换无法使源图像五官与目标图像五官位置完全一致,人脸替换效果不自然。因此,构建输入图像人脸三角网,对同名小面元逐个替换。构建三角网首先需要定位人脸关键点位置,常用的人脸关键点检测方法有模板拟合法和回归器学习法。模板拟合法采取局部搜索策略,若初始位置定位不理想,光照、姿态等因素的影响下,会使局部匹配产生错误,难以收敛到局部目标。因此,应用基于回归森林(ensemble of regression trees,ERT)[11]的人脸关键点检测方法,该方法通过训练一个级联的回归决策树来使人脸关键点一步一步地回归到真实位置,不受初始位置的影响。

      在众多三角网中,Delaunay三角网满足最大最小角特性、外接圆特性和唯一性,保证了三角网中不会出现过于狭长的三角形,使得三角网的构建更加合理与准确[12]。每个三角形大小趋于一致,不会出现某个三角形所占面积比例过大或过小导致的面部明显拉伸或压缩。计算源图像与目标图像同名三角单元仿射变换参数,利用该变换,将源图像像元替换到目标图像对应的几何位置上,对人脸替换区域的每个小面元重复此操作,可以得到整张人脸的替换结果。

      由于不同图像的光照、灰度和纹理不一致,在拼接位置上,直接替换人脸会出现明显不连续的痕迹,为此,采用泊松融合对目标图像和基于小面元变换后的源图像进行无缝融合。

    • 试验数据来自人脸识别数据集CASIA-FACE[13],从中选取不同姿态的人脸图像组成输入图像对,将本文方法与文献[6]提出的方法进行对比试验,对选取的部分结果进行比较与分析,如图 3图 4所示。

      图  3  第1组试验结果

      Figure 3.  Experimental Results of the First Group

      图  4  第2组试验结果

      Figure 4.  Experimental Results of the Second Group

      在第1组试验中,文献[6]方法根据眼睛、鼻子和嘴附近的关键点确定的源图像替换区域内有帽檐,目标图像替换区域内有墨镜,在替换时帽檐和墨镜被误当作人脸进行替换,导致替换结果墨镜上有帽檐痕迹且不完整;采用高斯模糊调整肤色,并利用加权平均法对两幅图像进行融合,造成替换后的人脸模糊。本文方法应用人脸分割模型将墨镜和帽子与人脸区域分开,只在人脸区域进行替换和人脸肤色调整,不受遮挡物影响;采用泊松融合进行图像融合,替换后的人脸视觉效果更清晰、逼真。

      在第2组试验中,文献[6]方法根据人脸关键点确定的目标图像替换区域有头发,而源图像替换区域无头发,导致替换后的刘海被眉毛遮挡;利用普氏变换对齐人脸,由于输入图像人脸姿态差别较大,替换后的五官位置明显超出人脸范围;采用高斯模糊调整肤色,对两幅图像进行线性融合,导致替换结果五官模糊。本文方法应用人脸分割模型确定的替换区域不包含刘海等遮挡物,应用基于小面元的方法对不同姿态的输入图像进行替换,替换后的五官位置、表情等与目标图像一致,在视觉效果上更自然。

      人脸替换要满足两个要求:(1)替换结果的人脸能辨认出是源图像人脸,即源图像人脸和替换结果人脸相似;(2)替换结果的肤色、表情、脸型等与目标图像一致,即替换结果与目标图像人脸需具有相似性。因此,除了目视效果评价外,本文应用Face++的人脸比对技术对替换效果进行定量评价,通过计算两种方法得到的替换结果与源图像、目标图像的人脸相似度,评判替换效果好坏。该技术的核心思想:首先,提取人脸局部二值模式特征;然后,利用多个支持向量机算法训练的人脸分类器计算特征向量的相关性,从而得到人脸相似度(取值范围为0~100)。表 1图 3图 4两组输入图像得到的换脸结果与源图像人脸、目标图像人脸的相似度计算结果。

      表 1  相似度评定结果/%

      Table 1.  Similarity Evaluation Results/%

      方法 第1组 第2组
      与源图像 与目标图像 与源图像 与目标图像
      文献[6]方法 59.2 70.8 59.0 80.9
      本文方法 82.4 83.3 77.5 90.5

      人脸替换的两种方法将源图像人脸的肤色、姿态等按照目标图像人脸进行调整,替换结果图像的非人脸区域与目标图像的非人脸区域一致,所以表 1中两种方法的替换结果图像与目标图像的人脸相似度皆高于与源图像的人脸相似度。

      在第1组试验中,对比方法没有做人脸分割,导致源图像中的帽子被误当作人脸替换到目标图像的墨镜上;本文方法通过人脸分割确定的人脸区域,遮挡物不参与替换,目标图像中的墨镜不受替换影响,替换结果与目标图像的人脸相似度更高。在第2组试验中,人脸姿态相差较大,对比方法对源图像整体进行变换,难以使两者姿态完全一致;本文方法采用基于小面元的替换方法,替换后的人脸五官、表情等与目标图像人脸一致,替换结果与目标图像的人脸相似度更高。

      在两组试验中,对比方法仅将源图像人脸的眼、鼻子和嘴的区域替换到目标图像上;本文方法将分割确定的源图像人脸区域全部替换到目标图像的人脸区域,能保留更多的源图像人脸特征,替换结果人脸与源图像人脸的相似度更高。

    • 本文设计了一种基于卷积神经网络和小面元的人脸替换方法。首先,应用级联CNN网络判断图像中是否有人脸并获取人脸位置,利用FCN网络对人脸进行分割,确定替换区域,避免了替换过程中人脸遮挡物的影响,并对人脸肤色进行调整;然后,利用Delaunay三角剖分算法构建人脸三角网模型,通过计算同名小面元的几何变换参数对人脸进行替换;最后,利用泊松融合算法消除人脸替换痕迹。将本文方法与现有方法的试验结果进行定性和定量对比与分析,结果表明,本文方法可较好地解决人脸姿态不同和遮挡物带来的问题,具有良好的应用前景。

参考文献 (13)

目录

    /

    返回文章
    返回