引入
之前的模型不管是Pix2Pix还是CycleGAN,它们都是在两个领域上去做转换的
那么当有多个领域的时候,模型就会变得非常低效
比如说在美图秀秀上,可以做很多功能,美化人、人脸上加饰品、改变肤色等等
这么多种任务,如果要训练n多种Pix2pix/CycleGAN才可以去做,所以比较低效
同时,多个模型中学到的信息不能共享,效果有限
有没有办法可以只通过一个模型就能学到多种变换呢?
StarGAN多领域图像翻译
解决的仍然是成对图像问题![]()
GAN系列(四) —— StarGAN多领域图像翻译 在生成器G的输入需要添加目标领域信息
判别器D除了判断生成的图片是否是真实图片以外,还需要判断生成图片是属于哪个领域的
StarGAN输入的图像依然是成对的
![]()
GAN系列(四) —— StarGAN多领域图像翻译 判别器D输入2张图像,真实图像和假的图像,输出得到2个信息,这两个图像是不是一对,然后这两个图像对是不是一个类别的
生成器G输入一个领域信息和一个图像,输出这个图像在这个领域的生成图像
a、b、d反映的就是一个传统GAN
c是StarGAN特有的,多了一个重建损失,是确保一致性的,类似CycleGAN。将经过G生成的特定领域的图片和原图输入,得到input_img在原领域重建的图片,这两个图片之间再计算loss
![]()
GAN系列(四) —— StarGAN多领域图像翻译 损失函数
G和D在训练的时候目标函数不同![]()
GAN系列(四) —— StarGAN多领域图像翻译