StarGAN v2

文章目录

  • StarGAN v2
    • 摘要
    • 一.介绍
    • 二.StarGANv2
      • 1.网络结构
      • 2.loss设置
    • 三.实验结果展示
    • 四.总结
    • Reference

摘要

优秀的图像-图像转换模型需要学习不同视觉域之间的映射,要同时满足以下属性:1)生成图像的多样性和 2)在多个域上的可扩展性。
因此提出了star-GAN v2和动物数据集AFHQ

一.介绍

域:可以分组为视觉上独特的类别的不同组图片
风格:每组图片中的每张图片都有独特的外观,这称之为风格。
比如,可以根据性别将人分为男性和女性两个域,而人物的装扮,胡子,发型等特征可以视为风格。大概就是范围更大的可区分特征叫做域,范围小的叫做风格。
一个理想的图像转换模型应该考虑域内的多样化的风格。但这种模型的设计和学习很困难,因为一种域内可以有大量的任意风格。

为了实现风格多样性。将从标准高斯分布中随机采样的低维隐向量喂给生成器,然后不同域的解码器则从上述向量中取得自己所需的风格内容,然后生成图片,这种一对一的映射会导致实现风格的多样性需要多种生成器,如K域,则需要K(K-1)个生成器。

为了实现可扩展性。star gan通过将输入图片于特定的域标签级联,使用一个生成器实现将输入图片转换到目标域的图片,但是这只是学到了每个域的确定映射(给标签的那一刻就确定了,毕竟是只给了一个one hot的标签),不能学到数据分布多种模态的特性(相当于不能同时转换多种风格)。
因此,如果使用风格特征代替域标签,那么引入的信息会更多。

改进1:将star gan中的域标签用特定域的风格特征(不是单一风格,如这个风格特征保护胡须,发型,性别等风格)代替,实现风格的多样性。使用了风格编码网络(提取目标图片的风格)和maping net(随机高斯噪声转换成目标域的一种随机的风格特征)来实现。当有多个域的时候,每个模块都将有多个输出分支,每个分支表示特定域的风格特征

二.StarGANv2

给出图片x和任意一个目标域的图片y,生成具有x的内容但是包含y的风格的图片。

1.网络结构

生成器
保留输入图片x的内容,使用mapping net或者style encoder得到目标域的风格特征s,将x的特征和s通过AdaIN变换,而不是直接级联,然后生成一张具有s风格的图片。

Mapping net
将一个隐向量z映射到不同域的风格特征,相当于mappingNet是一个多任务的全连接网络。训练的时候是随机采样Z中的样本z和随机采样域Y中的一张图片来使得该网络有效的学到所有域的风格表示。感觉有点像VAE?变换个参数(这里是稍微改变z),就可以得到目标域的风格相似的特征,因此可以实现多样性风格生成。

Style encoder
使用一个多任务的风格特征提取网络。因此,使用不同的参考图片训练,该网络可以提供多样性的风格特征。

判别器
多任务分类器,有多个输出分支。每个分支使用一个二进制分类判断真实图片x是否真实以及生成图片是否则真实。使用多个分类器是为了避免笼统地判断生成地是否真实,因为我们要的是生成地图片在特定域上地真实,而不是随便地真实,优化更加具体了。

2.loss设置

对抗loss

对抗阶段:从高斯空间中采样得到一个高斯编码z,将该z和目标域的一个随机选取的图片y的风格关联起来。将z通过mapping net映射成一个风格向量,然后将该风格向量与x图片特征通过AdaIN变换融合,然后生成图片。通过判别器和生成器的对抗,一方面是是mapping net 输出更好的Y域风格向量y,另一方面是使得生成器能够学会利用风格向量s来生成Y域内更加真实的图片。

风格重建loss

风格重建:直觉就是,我将x的图片内容和风格y结合生成图片c,这时候我对c提取到的Y域风格特征应和之前的y尽量相同。这里使用了一个L1的loss。
这个loss的目的是为了使生成器在生成图片的时候保留风格y的特征。
本文与其他的风格提取网络的差别是本文的风格提取是多任务的。

风格多样性loss

风格差异:这是为了使得生成器搜素图像空间,发现更有意义的特征来生成多样性的图片,看公式就可以知道这是为了最大化生成图片两个域之间的风格特征的L1 loss。
不以分子分母的形式表示(相当于输入的风格特征的差距作为分母,生成图片的风格特征差距作为分子)是因为分母的轻微变换会导致该分数值很大,训练不稳定,因此才使用了文中的公式。
由于这种最大化是个很难确定的问题,所以这个loss的超参后面会降至0

重建loss

总的loss

三.实验结果展示

四.总结

star GAN的话只能根据每次变换一种属性风格,当没有属性标签时无法变换;而v2的话是变换域的风格,这是主要的区别。我觉得它就只是将前人的成果融合起来而已,主要的贡献是开源了一个动物数据。

Reference

1.Choi Y, Uh Y, Yoo J, et al. Stargan v2: Diverse image synthesis for multiple domains[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 8188-8197.

2.有代码分析[CVPR2020] StarGAN v2

3.论文阅读】StarGAN v2

starGAN v2 论文阅读相关推荐

  1. SimCLR v2 论文阅读

    SimCLR v2 论文阅读 Big Self-Supervised Models are Strong Semi-Supervised Learners 前言:这篇文章通过把NLP领域上的 大规模数 ...

  2. ShuffleNet V2 论文阅读笔记

    ShuffleNet V2: Practical Guidelines for Efficient CNN Architecture Design 阅读笔记 论文链接:https://arxiv.or ...

  3. StarGAN v2 : Diverse Image Synthesis for Multiple Domains 不同图像多领域合成阅读理解

    StarGAN v2 : Diverse Image Synthesis for Multiple Domains 不同图像多领域合成阅读理解 目前该论文已经有TensorFlow算法实现,目前本人在 ...

  4. Action4D:人群和杂物中的在线动作识别:CVPR209论文阅读

    Action4D:人群和杂物中的在线动作识别:CVPR209论文阅读 Action4D: Online Action Recognition in the Crowd and Clutter 论文链接 ...

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

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

  6. 论文阅读——《Online Photometric Calibration of Auto Exposure Video for Realtime Visual Odometry and SLAM》

    论文阅读--<Online Photometric Calibration of Auto Exposure Video for Realtime Visual Odometry and SLA ...

  7. [论文阅读] (06) 万字详解什么是生成对抗网络GAN?经典论文及案例普及

    <娜璋带你读论文>系列主要是督促自己阅读优秀论文及听取学术讲座,并分享给大家,希望您喜欢.由于作者的英文水平和学术能力不高,需要不断提升,所以还请大家批评指正,非常欢迎大家给我留言评论,学 ...

  8. 听说读论文也有trick?这篇文章告诉你深度学习论文阅读最佳姿势

    2020年的今天,我们的专业是deep learning,但是我们要keep learning,每天早上一睁眼,arxiv每天更新上百篇的论文,著名微博博主@爱可可-爱生活保持也在推送最新的deep ...

  9. StarGAN v2: Diverse Image Synthesis for Multiple Domains (多域多样性图像合成)

    前言 StarGAN v2: Diverse Image Synthesis for Multiple Domains  (多域多样性图像合成) In CVPR 2020. Paper: https: ...

最新文章

  1. Curator Cache
  2. Xamarin ios 教程 Xamarin跨平台开发 C#苹果应用开发
  3. valgrind安装使用
  4. 连接MySQL的10060错误:Can't connect to MySQL server on '*.*.*.*'(10060)
  5. Redis | 001能做什么?
  6. [云炬创业基础笔记]第七张创业团队测试8
  7. PHP执行一个http请求
  8. Content-Script-Type的设置好象没多大用处,或许我不知道有什么用
  9. [linux]查看文件编码和编码转换
  10. 用tqdm可视化loop过程
  11. 【ThinkPHP5.0RC2吃螃蟹之】关于ThinkPHP5.0的渲染模板输出
  12. 【脑洞探究】等公交该站在哪儿比较合适?——关于减少吸入空气污染物(pm2.5 or 雾霾等)而选择合适等候公交车位置的探究
  13. Cramer_rule克莱姆法则讲解
  14. 深化高校人才培养体制机制改革
  15. Html控制大华摄像头
  16. 计算机专业毕业自我鉴定800字,计算机专业毕业自我鉴定范文
  17. ROS2-Foxy-配置
  18. VHDL行为描述方法实现与门
  19. 如何使用GoldWave合成音乐?
  20. 用u盘装linux的u盘格式化,高手分享:巧用U盘装Linux的小技巧

热门文章

  1. 少用的却实用的计算机知识
  2. Ubuntu实用工具/软件汇总
  3. channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILE
  4. c++ 编译 curl 报错 数组‘__curl_rule_01__’的大小为负 解决方法
  5. hive之反斜杠导致Unicode编码字段里的中文无法正常显示
  6. 叶筱静受邀主持北大“2019数字新金融领袖峰会”圆桌论坛
  7. mysql 共享nfs,服务器之间搭建NFS共享文件 - 老牛博客
  8. 高级数据操作--连接查询
  9. 集成gin 、zap和lumberjack
  10. 百信计算机管理员登录账号密码,192.168.0.1管理员密码是多少 管理员密码一般是啥...