github:https://github.com/clovaai/stargan-v2
Paper: https://arxiv.org/abs/1912.01865
github上的代码没有预训练权重,并且给出下载地址也拒绝访问,所以基本上没有能跑的完整代码。
如果需要完整代码:https://download.csdn.net/download/weixin_48167570/85093151

文章目录

  • 解决问题
  • 内容
    • 1、框架
  • 效果图
  • 损失函数
  • 数据集

解决问题

理想的图片到图片的转换应该能够考虑到域内的各种各样的样式。但是这样的话,设计模型和学习模型都会变得复杂,因为域和样式都能有很多。

域(domain):一组可以在视觉上独特分类的图片,并且每一张图都有独特外观(称为样式style)。例如,可以设置图片的域是基于人的性别,这种情况下样式(style)可以包括妆容、胡须、发型等。

需要解决以下两点:

解决样式多样性(diversity):已知方法是向生成器(generator)中注入低纬度的latent code(可以从标准高斯分布中随机采样) 。 但是,由于这些方法仅考虑了两个域之间的映射,因此无法扩展到越来越多的域。例如,如果有K个域,这些方法需要训练K(K-1)个生成器来处理每个域之间的转换,从而限制了它们的实际使用。

解决可扩展性(scalability):一些统一的框架被提出。StarGAN 可以使用单个生成器学习所有可用域之间的映射,但是因为把预定标签作为附加输入使得映射是确定的,无法成为多模式。

解决方法:

为了解决以上问题,StarGAN v2这种可扩展方法被提出,它可以在多个域中生成各种图片。

StarGAN v2提出两个模块,一个映射网络mapping network和一个样式编码器style encoder。 映射网络学习将随机高斯噪声转换为style code,编码器则学习从给定的参考图像中提取style code。 考虑到多个域,两个模块都具有多个输出分支,每个分支都提供特定域的style code。 利用这些style code,生成器将学习成功地在多个域上成功合成各种图像。

内容

1、框架

X:图片集
Y:可能的域

生成器Generator

将输入图像x转换成能反映特定域style codes的输出图像G(x, s)。s 可以由mapping network F或者是style encoder E 提供。使用自适应实例归一化AdaIN 来将s注入G中。s 被设计成表示特定域y的样式,这样就不用向G提供y并且能够使G合成所有域的图像。

生成器将输入图像转换为反映特定于域(domain)的style code的输出图像。

映射网络Mapping network

给定一个latent code z和一个域y,映射网络F生成style code s = Fy(x)其中Fy(·)表示与域y相对应的F的输出。 F由带有多个输出分支的MLP组成,可为所有可用域提供样式代码。 F可以通过随机采样潜在向量z∈Z和域y∈Y来产生不同的style code。多任务架构使F可以有效地学习所有领域的样式表示。

映射网络将一个潜在的代码转换成多个域(domain)的style code,在训练过程中随机选择其中一个域(domain)。

样式编码器Style encoder

给定图像x及其对应的域y,编码器E提取x的style code s = Ey(x)其中Ey(·)表示与域y相对应的输出。与F相似,样式编码器是多任务学习设置, E可以使用不同的参考图像生成不同的style code。这允许G合成反映参考图像x的样式s的输出图像。

样式编码器提取图像的style code,允许生成器执行参考引导的图像合成。


鉴别器Discriminator

是一个多任务鉴别器,它由多个输出分支组成。每个分支Dy学习一个二进制分类,确定图像x是其域y的真实图像还是由G生成的假图像G(x,s)。

鉴别器从多个域(domain)区分真假图像。

效果图

第一行和第一列图像是真实图像,而其余图像由模型StarGanv2生成的图像。模型参考图像中提取高级语义,如发型、妆容、胡须和年龄,同时保留参考图像的姿势和特点。下图反应了StarGanV2可以合成反映不同参考样式的图像,包括发型、妆容和胡须,而不会损害源特性。

章中也分别对CelebA HQ和AFHQ数据集进行比较。文章中使用随机抽样的latent code将参考图像(最左边的列)转换为目标图像。(a) 前三行将男性转化为女性的结果,反之亦然。(b)顶部每两行按以下顺序显示合成图像:猫到狗,狗到野生动物,野生动物到猫。

损失函数

对抗性目标

其中,Dy(·)表示与域y相对应的D的输出,x为输入图片,s是style code

风格重构


这是为了让生成器G在生成图片G(x,s)的时候使用style code

风格多样化

s1和s2由两个随机的潜在编码(latent codes)z1和z2产生。最大化两个风格生成图像的差距,这种方式可以让生成器探索意义的风格特征以生成不同的图像。

保留原图特征

生成器G使用原图经过风格编码器(style encoder)所得进行重建,让G保留源图特征,有些像cyclegan。

总损失函数

其中λstyλ_{sty}λsty​,λdsλ_{ds}λds​,和λcycλ_{cyc}λcyc​是超参数。

数据集

CelebA-HQ 和新AFHQ数据集上评估StarGAN v2。 我们将CelebA-HQ分为男性和女性两个域,将AFHQ分为猫,狗和野生动物三个领域。 除主要标签外,我们不使用任何其他信息(例如CelebA-HQ的面部属性或AFHQ的品种),并让模型无需监督即可学习样式等信息。将所有图像调整为256×256分辨率以进行训练 。

Animal Faces HQ(AFHQ): 15000张512*512动物图片。猫,狗和野生动物分别有5000张图。每个域,500张用于测试。

starGan-v2论文复现-代码完整相关推荐

  1. starGAN v2 论文阅读

    StarGAN v2 文章目录 StarGAN v2 摘要 一.介绍 二.StarGANv2 1.网络结构 2.loss设置 三.实验结果展示 四.总结 Reference 摘要 优秀的图像-图像转换 ...

  2. 论文复现+代码翻译2----RESA

    论文代码:[2008.13719] RESA: Recurrent Feature-Shift Aggregator for Lane Detection (arxiv.org) 论文翻译: 论文翻译 ...

  3. 经典论文复现 | 基于深度卷积网络的图像超分辨率算法

    过去几年发表于各大 AI 顶会论文提出的 400 多种算法中,公开算法代码的仅占 6%,其中三分之一的论文作者分享了测试数据,约 54% 的分享包含"伪代码".这是今年 AAAI ...

  4. 这只狗,其实是猫变的:“撸猫神器”StarGAN v2来了!

      新智元报道  来源:arxiv 猫变狗.狗变虎.虎变豹,男人变女人,无缝切换是个什么神奇体验? 最近,一家名为Clova Research的机构的研究团队就像让用户体验一把这种神奇,他们提出的St ...

  5. 经典论文复现 | 基于标注策略的实体和关系联合抽取

    过去几年发表于各大 AI 顶会论文提出的 400 多种算法中,公开算法代码的仅占 6%,其中三分之一的论文作者分享了测试数据,约 54% 的分享包含"伪代码".这是今年 AAAI ...

  6. 经典论文复现 | ICML 2017大热论文:Wasserstein GAN

    过去几年发表于各大 AI 顶会论文提出的 400 多种算法中,公开算法代码的仅占 6%,其中三分之一的论文作者分享了测试数据,约 54% 的分享包含"伪代码".这是今年 AAAI ...

  7. 经典论文复现 | LSGAN:最小二乘生成对抗网络

    来源:PaperWeekly 本文约2500字,建议阅读10分钟. 本文介绍了经典AI论文--LSGAN,它比常规GAN更稳定,比WGAN收敛更迅速. 笔者这次选择复现的是 Least Squares ...

  8. 10 年深度学习顶级论文和代码精选,请务必收藏!

    点击上方"AI有道",选择"星标"公众号 重磅干货,第一时间送达 你是否经常花费时间或苦于寻找深度学习相关的顶会优秀论文极其相对应的代码?今天给大家介绍一个超赞 ...

  9. 经典论文复现 | InfoGAN:一种无监督生成方法

    过去几年发表于各大 AI 顶会论文提出的 400 多种算法中,公开算法代码的仅占 6%,其中三分之一的论文作者分享了测试数据,约 54% 的分享包含"伪代码".这是今年 AAAI ...

最新文章

  1. Docker 仓库管理
  2. 微课堂迎圣诞送福利 | 姬十三@你:我想和你相聚社区共度圣诞良宵,约么?
  3. 计算机软考网络工程师历年真题,计算机软考《网络工程师》考试历年真题精选(1)...
  4. CodeForces - 1350C Orac and LCM(数论)
  5. Mysql当前模式让不记录日志_MySQL日志binlog的三种模式
  6. [luogu-P4299] 首都(并查集 + LCT动态维护树的重心 / 维护虚儿子信息)
  7. LeetCode 218. 天际线问题(multiset优先队列)*
  8. php 换一换 功能,vue换一换功能原型
  9. mysql完全卸载大全
  10. Jmeter(GUI模式)教程
  11. 阿里云线上案例分析:网格应用存活状态异常
  12. 天涯明月刀如何修改登录服务器,天涯明月刀手游体验服和正式服怎么切换方法介绍...
  13. win10家庭版设置护眼色
  14. 启程Objectvie-C(绿柠檬学习笔记)
  15. WEB-QTP随想录—李密的猜想
  16. 云服务器安装软件,如何在云服务器中安装软件
  17. 全国大学生智能汽车竞赛图像采集处理上位机开源!
  18. (翻译)稀缺模式(Scarcity)
  19. EOS 一周回顾(12.2-12.8)
  20. matlab计算连续复利,Code 2-1 单利、离散复利与连续复利的对比

热门文章

  1. 区块链基础理论模拟试卷六
  2. PIX Moving x 宝马 | DIGITAL PLANT
  3. MSP430F5529通过nrf905模块实现无线接受和发送功能
  4. 冰蝎的前世今生:3.0新版本下的一些防护思考
  5. 如何使用python装饰器_如何使用装饰器(瓶子.py)
  6. 【openjudge 计算概论(A)】[基础编程练习(运算成分)]
  7. 【路径规划】基于蚁群算法求解机器人栅格地图路径规划matlab代码
  8. 【vue期末作业】化妆品商城系统
  9. 安徽大学第九届大学生程序设计竞赛 网络预选赛
  10. 虾皮马来西亚热销产品有哪些?