GAN人脸生成技术

Posted 人工智能AI技术

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GAN人脸生成技术相关的知识,希望对你有一定的参考价值。

朋友们,如需转载请标明出处:https://blog.csdn.net/jiangjunshow

GAN目前有非常多在人脸生成方向上的应用。比如2018年年初社交媒体Reddit与Twitter的项目DeepFake,它的核心功能非常简单,就是将视频或图片中的人脸进行互换。这个功能对于那些制图高手来说似乎并不困难,但是DeepFake完全是基于计算机自身的能力进行处理完成的,并且最终实现的效果非常棒,有时让人几乎看不出修改的样子。下图是两位名人在DeepFake中的人脸互换例子。
在这里插入图片描述

最初版本的DeepFake使用的是自动编码器的技术,后来网络上有了基于GAN的改进版本faceswap-GAN,下面简单介绍一下它的整体运行思路。下图是faceswap-GAN训练阶段与测试阶段的示意图,训练过程中需要大量的人脸A数据,通过算法将其进行扭曲处理变得与人脸A不同,再通过自动编码器生成遮罩于重建的人脸,最终通过遮罩信息与之前输入的信息还原人脸A的数据。在测试过程中,网络会将人脸B的信息认为是训练集中扭曲过的训练集人脸,经过同样的步骤将其还原为人脸A的状态。
在这里插入图片描述

下图是上述faceswap-GAN的目标函数,由三个损失函数组成。第一项为重建损失,确保重建后的人脸与原始人脸相似。第二项为GAN中的对抗损失,需要计算机判断输出的人脸是真实的还是生成的。最后一项为可选项,是人脸数据的感知损失,用于判断原图像与生成图像的整体相似度。
在这里插入图片描述

目前faceswap-GAN完整的代码设计在GitHub的项目源码中可以找到。从应用的角度看,目前对于“换脸”依然大部分用于网络趣味性应用,比如国外知名的社交软件SnapChat就有一款非常流行的滤镜,可将用户的脸进行互换。此外从商用角度考虑,比如可以将该技术应用于电影制作中的后期处理,对于替身演员的人脸更换可以完全使用该技术来进行处理。

此外GAN也应用了到更多其他的人脸变化中,比如对于人脸的年龄变化预测。如下图所示,输入是年轻时候的照片,而输出则是随着年龄增长对于该用户长相改变的预测。
在这里插入图片描述

我的微信公众号是“人工智能知识分享”

在这里插入图片描述

以上是关于GAN人脸生成技术的主要内容,如果未能解决你的问题,请参考以下文章

深度学习系列46:人脸图像超分GFP-GAN

对抗生成网络GAN系列——DCGAN简介及人脸图像生成案例

GAN-生成对抗网络-生成人脸图像-CNN

GAN-生成对抗网络-生成人脸图像-CNN

用Keras生成面部Python实现

使用PyTorch构建GAN生成对抗网络源码(详细步骤讲解+注释版)02 人脸识别 上