大家好,欢迎来到专栏《百战GAN》,在这个专栏里,我们会进行算法的核心思想讲解,代码的详解,模型的训练和测试等内容。
作者&编辑 | 言有三
本文资源与生成结果展示
本文篇幅:6800字
背景要求:会使用Python和Pytorch
附带资料:项目推荐,版本包括Pytorch+Tensorflow
同步平台:有三AI秋季划GAN小组
1 项目背景
美颜技术是祖国人民的刚需,当前的美颜技术已经从早期的美白,瘦脸隆鼻等技术发展到了更加复杂的应用,比如妆造迁移,就是将目标人脸面部完整的妆容迁移到自己的人脸图像,本节我们完成这样的一个任务。
本次我们使用GAN来完成人脸妆造迁移任务,需要做的准备工作包括:
(1) Linux系统或者windows系统,使用Linux效率更高。
(2) 安装好的Pytorch,需要GPU进行训练。
2 原理简介
所谓的妆造迁移技术如下图所示:
(a)是我们想化妆的图,(b)是参考的妆容图,(c)就是化妆的结果了。
最早期我们研究人脸妆造迁移算法,需要成对的妆造前后的图来进行模型训练,比如下面这样的。
但是化妆前后的图妹子你会公开给吗?怕是有点难呐,所以这限制了数据集的大小。
而基于GAN的框架中有一大类方法是无监督的,不需要成对的图就能实现两个风格(域)之间的转换,比如大家都熟悉的CycleGAN。
当然我们今天说的不是CycleGAN,整个框架示意图如下: