计图开源:智能P图神器DeepFaceEditing

2021/05/05 Tutorial

计图开源:智能P图神器DeepFaceEditing

不会PS也想精修照片?找不到惊艳的个性化滤镜?修出心目中的你,基于计图的DeepFaceEditing让这不再是梦想!

中科院计算所高林团队在计算机图形学顶会ACM SIGGRAPH 上次发表重磅成果DeepFaceEditing,并在计图框架上开源。

DeepFaceEditing是一种新的基于几何和外观解耦的人脸编辑的方法,可以通过草图自由编辑人脸。

基于该方法的智能人脸编辑软件,不需要用户拥有专业的PS技术,就能够通过草图实现面部细节的编辑与控制,并且同时支持个性化的外观定制,从而降低了人脸肖像修图的门槛,同时也减轻专业PS修图师的工作难度,简单实用。

先看2个使用DeepFaceEditing软件的惊艳效果!

       

图1 交互效果:如何将长发的伊万卡修图成短发老太太    

图2 搬砖十年后的那个少年将变成什么样子,生活的沧桑风蚀了容颜和发际线

Part1

从Sketch到DeepFaceEditing

草图作为一种图形交互媒介,很早便受到关注。1963年,图灵奖得主Sutherland的代表作便是关于草图绘板[1]。2009年,清华胡事民教授团队发表于ACM SIGGRAPH ASIA的Sketch2Photo[2]开创基于草图的互联网图像合成的新方向。2020年ACM SIGGRAPH上的DeepFaceDrawing[3]实现了由手绘的草图生成真实人脸。使用草图进行人脸肖像的合成与编辑是一个热门研究话题。

为了更好的控制生成人脸的外观特征,DeepFaceEditing 工作另辟蹊径。其核心思路是通过引入“深度几何学习”的研究思路,通过分析和解耦人脸图像的几何结构,将真实的人脸解耦为几何(Geometry)和外观(Appearance)两个特征。基于此,用户可以通过草图编辑人脸的几何特征,例如五官的形状、面部皱纹等,也可以通过选择参考图像,编辑人脸的肤色、发色等信息,定制个性化风格滤镜。

让我们先来看一下该方法的人脸生成的效果:

图3 DeepFaceEditing 人脸编辑效果

从图3中可以看出,在给定来自同一人(a)的几何和外观特征时,DeepFaceEditing 可以完美重建输入人脸(d)。与此同时,当改变对应的外观参考图片,DeepFaceEditing可以改变肤色、发色(b),生成个性化滤镜。用户也可以通过编辑草图,对人脸进行细节的编辑(e)。同时,该方法也可以通过手绘的草稿,生成具有特定外观的真实人脸(c)。

经典的人脸图像编辑工作[4]通过语义标签或对人脸图像进行属性编辑,近期工作[5]将人脸运动图像解耦为全局头部运动和局部表情运动来合成新的人脸图像,[6]设计了一种交换的策略来对一般图像的结构和纹理进行解耦与合成。DeepFaceDrawing[3]以草图为基础由草图生成真实的人脸图像,可以实现从无到有的人脸图像合成却无法用于编辑已经存在的人脸图像,而对已有人脸图像进行美颜和美妆具有巨大的需求。

 受上述系列工作的启发,DeepFaceEditing应运而生,该工作提供一种用户友好的草图交互方式对人脸图像进行编辑。作者将人脸图像解耦为几何特征和外观特征,用户既可以通过草图编辑几何细节,也可以通过参考图片编辑人脸外观。同时,针对人脸结构所具有的特殊性,该论文也采取了几何结构优化策略,对人脸的关键区域(双眼、鼻、嘴和其他区域)分别进行解耦,在生成关键区域中间结果后,再融合合成高质量的人脸图像。通过上述方法,该论文不仅可以实现局部细节的编辑优化,也可以合成全局一致的高质量的人脸图像。

Part2

DeepFaceEditing 算法原理

如图4所示,DeepFaceEditing 系统主要由两个模块组成:局部解耦模块(Local Disentanglement)和全局融合模块(Global Fusion)。局部解耦模块由三个组件构成:几何编码器、外观编码器、图像合成器。该模块可以同时从真实图片和草图中提取几何信息,以此支持用户的编辑。    

图4 DeepFaceEditing 网络构架

在局部解耦模块中,需要预先训练几何编码器。几何编码器针对草图和真实图像,分别使用了不同的编码网络,获取几何特征。训练完成几何编码器后,算法固定几何编码网络的权重,训练外观编码器与图像合成器。外观编码器使用全局平均池化,消除人脸外观特征图像上的空间信息并提取与几何特征无关的外观特征。图像合成器则以几何编码网络生成的结果作为输入,将外观特征与几何特征融合,生成局部图像及中间特征图。
局部解耦模块的训练包含了三部分损失函数:重建损失、对抗损失和交换损失。当几何特征和外观特征来自同一图像时,重建损失保证网络可以完美的重建对应的局部图像。算法局部和全局网络都使用了GAN的训练策略,用对抗损失保证局部生成图像的真实性。
在局部解耦的训练过程中,该论文使用了一种交换的策略:分别从图像I1和I2中提取几何特征和外观特征,合成新的交换结果I’。通过约束该交换结果I’与几何输入图像I1有相同的几何编码特征,来保证交换后几何特征不变。针对外观特征,使用一种循环重建的约束方式:从该交换结果I’中提取外观特征,与外观输入图像I2的几何特征进行合成I2’,循环重建对应的外观输入图像。
局部解耦模块训练完毕之后,则开始对全局融合网络进行训练。全局融合网络先对局部解耦网络生成的中间特征图进行拼接,再以拼接后的特征图作为输入,基于Pix2PixHD的网络结构,融合局部特征,生成具有全局外观一致性的人脸

Part3


用户怎么编辑

DeepFaceEditing可以从真实照片中提取草图,用户通过编辑草图,可以对人脸进行细节编辑。如图5界面中的(a),即为用户对图像提取到的草图编辑后的结果。(d)为外观参考图像列表,用户通过选取/加载外观参考图,实现人脸的肤色、发色等外观信息的编辑。控制菜单栏(c)中包含几何/参考图像加载,橡皮笔刷、控制笔触大小等功能。根据编辑的几何和选择的外观,最终合成的人脸编辑结果将实时展示在(b)上。     

图5 界面展示

Part4

更多结果展示和应用
再看2个DeepFaceEditing的精彩例子。
       
图6 人脸个性化设计结果展示   

图7 轻松回现年轻时的美颜

鉴于DeepFaceEditing将图像解耦为几何表示和外观表示,因此,在草图到真实人脸生成的过程中,可以添加外观控制。如图8所示,结合DeepFaceDrawing的流形投影技术,可以从手绘的草图生成具有不同外观特征的真实人脸图像。

图8 草图合成人脸

同时,基于解耦的优势,可以实现对不同图像的几何和外观特征进行插值,并进一步利用插值后的特征生成人脸图像,实现人脸变换,结果如图9所示。

图9 人脸变换

Part5

结语和研究团队
人脸图像编辑有着重要应用,不论是严肃认真的证件照或是个性潮流的艺术照,一张惊艳的照片都会带来便利与好运。然而修出一副自然完美的肖像照片,需要高超的PS技术与高昂的时间成本,对于没有深入学习过PS的新手,是非常困难的事情。同时,想要定制个性化的人脸滤镜,更是需要大量的精力与非凡的创造力。DeepFaceEditing 改变了这一切,使用该智能人脸编辑软件,每个人都是艺术家,有如神助!
DeepFaceEditing 采用局部到全局的方法,将人脸的几何特征(Geometry)和外观特征(Appearance)进行解耦(Disentanglement),能分别对真实图像的几何细节和外观特征进行编辑,这是该方法行之有效的原因。
DeepFaceEditing的论文已被图形学顶会ACM SIGGRAPH接受,并将刊登于著名期刊ACM Transactions on Graphics上。

论文的主要作者

高林博士,本文通讯作者。现为中国科学院计算技术研究所博士生导师/副研究员, 研究方向为智能计算机图形学、深度几何学习等。他毕业于清华大学,获得工学博士学位(导师:胡事民教授),曾在德国亚琛工业大学进行公派访问研究(合作导师:Leif Kobbelt 教授)。在ACM SIGGRAPH\TOG、IEEE TVCG、IEEE CVPR等国际知名期刊会议上发表论文40余篇。他曾获得亚洲图形学青年学者奖(Asia Graphics Young Researcher Award)、中国计算机学会科学技术奖技术发明一等奖、CCF-腾讯犀牛鸟基金卓越奖等,并入选英国皇家学会牛顿高级学者。

       
  高林博士

刘锋林,共同第一作者,中国科学院计算技术研究所客座本科实习生,研究方向为智能计算机图形学。

       

刘锋林

陈姝宇博士,共同第一作者。现为中国科学院计算技术研究所特别研究助理,于2021年在中国科学院计算技术研究所获得博士学位,主要研究方向为智能计算机图形学,相关的研究成果发表在计算机图形学领域国际顶级期刊与会议上,如ACM SIGGRAPH/TOG、IEEE TVCG、Eurographics/CGF和IEEE VR等,曾获得中科院院长优秀奖,中国科学院计算技术研究所所长特别奖等荣誉称号。

       

陈姝宇博士

该项目研究团队还包括英国卡迪夫大学煜坤教授、Paul Rosin教授、香港城市大学傅红波教授、以及中科院计算所李淳芃副研究员,有关论文的更多细节,及论文、视频、代码的下载,请浏览项目主页:

http://www.geometrylearning.com/DeepFaceEditing/

目前智能人脸编辑软件已经发布计图(Jittor)版本,Jittor是清华大学计算机图形学实验室开源的自主深度学习框架。开源代码见:

https://github.com/IGLICT/DeepFaceEditing-Jittor

计图(Jittor)是清华大学计算机图形学实验室开源的自主深度学习框架。


参考文献

  1. Sutherland, Ivan E. 1964. Sketch Pad a Man-Machine Graphical Communication System.

  2. Tao Chen, Ming-Ming Cheng, Ping Tan, Ariel Shamir and Shi-Min Hu. Sketch2Photo: Internet Image Montage. ACM Transactions on Graphics (SIGGRAPH Asia 2009), 28, 5 (2009), 124:1-124:10.

  3. Shu-Yu Chen, Wanchao Su, Lin Gao, Shihong Xia and Hongbo Fu. DeepFaceDrawing: Deep Generation of Face Images from Sketches. ACM Transactions on Graphics (SIGGRAPH 2020), 39, 4 (2020), 72:1-72:16.

  4. Zhenliang He, Wangmeng Zuo, Meina Kan, Shiguang Shan and Xilin Chen. AttGAN: Facial Attribute Editing by Only Changing What You Want. IEEE Transactions on Image Processing, 28, 11 (2019), 5464 – 5478.

  5. Yong Li, Jiabei Zeng and Shiguang Shan. Learning Representations for Facial Actions from Unlabeled Videos. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2020.

  6. Taesung Park, Jun-Yan Zhu, Oliver Wang, Jingwan Lu, Eli Shechtman, Alexei A. Efros and Richard Zhang. Swapping Autoencoder for Deep Image Manipulation. In Neural Information Processing Systems (NeurlPS), 2020.

GGC往期回顾

1. Computational Visual Media被SCI收录
2. 基于深度学习的蒙特卡洛降噪技术 | CVMJ Spotlight
3. Jittor开源:清华大学图形学实验室推出点云Transformer
4. 第三届“计图”论坛暨 “计图”人工智能挑战赛颁奖会将于4月18日举办 
5. 「计图」开源代码:这篇ACM SIGGRAPH论文帮你轻松画出心中的「林妹妹」
您可通过下方二维码,关注清华大学图形学实验室,了解图形学、Jittor框架、CVMJ期刊和CVM会议的相关资讯。

Search

    Table of Contents