前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一键上妆的BeautyGAN

一键上妆的BeautyGAN

作者头像
张宏伦
发布2019-07-31 12:34:47
9260
发布2019-07-31 12:34:47
举报
文章被收录于专栏:宏伦工作室宏伦工作室

一键上妆效果如下

BeautyGAN

  • 论文名称:BeautyGAN: Instance-level Facial Makeup Transfer with Deep Generative Adversarial Network,2018年的ACM MM
  • 官方网站:http://liusi-group.com/projects/BeautyGAN
  • 实现功能:输入两张人脸图片,一张无妆,一张有妆,模型输出换妆之后的结果,即一张上妆图和一张卸妆图

采用了经典的图像翻译结构:

  • 生成器G包括两个输入,分别是无妆图、有妆图,通过encoder、residual blocks、decoder得到两个输出,分别是上妆图、卸妆图
  • 上妆和卸妆不能改变原始的人物信息,这里通过perceptual loss保证
  • 使用两个判别器,DA区分真假无妆图,DB区分真假有妆图
  • 训练了一个语义分割网络用于提取人脸不同区域的mask,上妆图和有妆图在脸部、眼部、嘴部三个区域需满足makeup loss,通过直方图匹配实现
  • 把上妆图和卸妆图再次输入给G,重新执行一次卸妆和上妆,从而得到两张重建图,通过cycle consistency loss需要和原始图相同

论文中的上妆结果看起来很nice~

作者也很nice地给出了自建的数据集,包括1116张无妆图、2720张有妆图,在官方网站提供了下载链接

唯一不nice的是,没有开源代码,也没有提供训练好的模型

自己动手

看了论文中的效果,正好数据集也可以下载,感觉挺有意思,当然要手动复现一下啦

复现结果如下,看起来还阔以~

  • 项目放到了Github上,https://github.com/Honlan/BeautyGAN
  • 训练好的模型传到了网盘上,https://pan.baidu.com/s/1wngvgT0qzcKJ5LfLMO7m8A,7lip
  • 编程环境为Python3.6和TensorFlow1.9
  • 项目中包括11张无妆图片,以及9张有妆图片
  • 下载训练好的模型,新建文件夹model,将模型文件放于其中

默认对 imgs/no_makeup/xfsy_0068.png 进行上妆

代码语言:javascript
复制
python main.py

如果需要对其他人脸图片上妆,传入图片路径即可,推荐使用大小合适的正脸图片

代码语言:javascript
复制
python main.py --no_makeup xxx.xxx
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-05-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 宏伦工作室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档