简要介绍CycleGAN


原文地址

CycleGAN:
J. Zhu, T. Park, P. Isola and A. A. Efros, “Unpaired Image-to-Image Translation Using Cycle-Consistent Adversarial Networks,” 2017 IEEE International Conference on Computer Vision (ICCV), 2017, pp. 2242-2251, doi: 10.1109/ICCV.2017.244.

beta-CycleGAN:
J. Lee, J. Gu and J. C. Ye, “Unsupervised CT Metal Artifact Learning Using Attention-Guided β-CycleGAN,” in IEEE Transactions on Medical Imaging, vol. 40, no. 12, pp. 3932-3944, Dec. 2021, doi:10.1109/TMI.2021.3101363.


一、CycleGAN的理论理解

在这里插入图片描述

目的:图像之间的风格迁移
贡献:不需要成对的配对样本,只需要源域和目标域的图像。

如何定义成对图像呢?
左边为成对图像,两者风格不一样,但内容是一样的,我们还是能看出都是皮鞋、靴子等;右边则是不成对图像,但X,Y两侧都由各自的共同点,左边X都为真实的风景照,右边Y为油画。那如何能利用不成对的图像来训练一个网络,当网络训练好之后,能输入一张风景照,输出一张油画呢。CycleGAN的目的就是解决这一问题。

在这里插入图片描述
那么CycleGAN是如何解决这一问题的呢?
我们可以看到对于成对图像,如果要进行风格迁移,通常只要学习成对样本(xi,yi)之间xi到yi 的映射关系即可;而对于成对图像,如果要进行风格迁移,就需要学习X域到Y域之间的映射关系。便有G: X->Y,对于具体的例子就有y’ = G(x),x属于X,所生成的y满足Y的分布。按理来说,我们只需要学习X域到Y域的映射关系便可以完成风格转换,也就是将风景图转换为油画。但是在实践中,作者发现很难孤立的优化这一目标,通常会导致网络崩溃,即所有输入图像都会映射到同一输出图像。

那么又是如何优化这一目标呢?
作者为这个网络增加了更多的结构,这里利用了“循环一致性”(cycle consistent)(不知道这样翻译对不对)。简单理解就是,我们如果用一个翻译器将中文翻译为英文,然后再将英文翻译为中文,那么句子的意思应该不变。用公式表示为G:X->Y;F: Y->X.

二、CycleGAN细节介绍

在这里插入图片描述
图(a)是CycleGAN的整体思路,G完成X域到Y域的风格迁移,DY判断G所生成图像是否符合Y域;F完成Y域到X域的风格迁移,DX 判断F所生成的图像是否符合X域。
但是还有一个问题,那就是只是单纯的风格迁移也不行,加入网络输入一张真实的人脸的照片,不能输出一张风景油画吧。也就是说我们要保证图像内容不变,上图的图(b)和图©就是为了确保图像内容不变。例如我们输入一张真实的人脸的照片x,通过生成器G得到相应的人脸油画y’,再通过生成器Y应该要生成一张真实人脸照片x’,x和x’的内容应该是一样的。

通过上述介绍,损失函数也可以确定下来了,一方面就是对抗损失,确保G和F分别能生成Y域和X域的图像;另一方面就是循环一致性损失,确保我们在将中译英,英译中过程里,句子的意思不变。

总体损失:
在这里插入图片描述
对抗损失:
在这里插入图片描述
循环一致损失:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值