王老头

导航

[Papers-GAN]2018_07

【Papers-GAN】2018-07-06

本周完成情况:

  一、论文阅读

  1. 论文标题:《Context Encoders: Feature Learning by Inpainting》

  2. 论文实验:分为三个数据集

ucberkeley:

pairs:  

imagenet:

  实验结论:Context Encoders 对于简单背景及重复性纹理类图像修复效果还可以,对于复杂的图像修复效果较差。

  可改进点:1. Encoder采用AlexNet前五层卷积层网络作为backbone,AlexNet网络作为前期网络参数量大,训练困难,可以使用其它网络模型如VGG来作为Encoder的backbone,另外,所有参数都是随机初始化,可以设定参数初始化方式,加快模型收敛速度。

       2. Loss的设计,原论文采用Reconstruction Loss + Adversarial Loss的策略,但是Adversarial Loss只考虑Generator的loss,容易导致模型训练崩溃,考虑后期WassersteinGAN给网络添加约束正则项,例如加上Discriminator的Loss,可以提升网络训练的稳定性和提高图像修复的真实效果。

  相比pix2pix来说,之前pix2pix的修复效果要比context-encoder的要好,尝试阅读并修改pix2pix的generator结构部分。

  二、论文写作:无

  三、学习:DCGAN图像修复,尝试将WGAN或最新SRGAN的结构和Loss换到DCGAN中,提高网络训练的稳定性,收敛速度和修复效果。

  

【Papers-GAN】2018-07-13

本周完成情况:

  一、论文阅读

  1. 论文标题:《Image-to-Image Translation with Conditional Adversarial Networks

  2. 论文内容:i. 生成器采用U-Net网络结构,优化Encoder和Decoder,使得两者之间的low-level信息可以相互交流;

                            ii. 判别器采用PatchGAN结构,对固定size的待修复mask进行修复,判定修复区域N * N大小的patch是真是假。

        iii. Loss采用L1 loss+cGAN loss,代替传统基于欧式距离loss带来的模糊效果,L1 loss可以使得修复效果更sharp,cGAN loss使得修复效果更符合真实图像。

  3. 论文实验: 尝试修复任意size的mask,构建数据集,相同参数下进行实验,发现修复区域中间会出现白色块的噪声,觉得是判别器的PatchGAN和L1 loss导致,因为PatchGAN适用与对固定size的mask进行修复,L1 loss在修复内容不正确的时候容易导致引入其它噪声。

   

  

        (a)待修复图像                                      (b)修复结果                                              (c)目标图像

  二、论文阅读

  1. 论文标题:《Globally and Locally Consistent Image Completion

  2. 论文内容:i. Completion Network采用卷积和转置卷积结构实现对图像进行修复,使用转置卷积可以有更大的感受野,可以利用待修复区域周边的信息来进行修复,并且可以应用到更大size的mask修复中。

        ii. 判别器采用局部和全局的上下文判别器,局部判别器可以使得修复效果有更真实的纹理细节;全局判别器使得修复效果有较好的全局一致性。

        iii. Loss采用的是基于欧式距离,最小化网络的输出和相应的groundtruth。

  3. 论文实验: 本文实验采用了800多万张图像,训练了50w次迭代,在四块K80 GPU上训练将近两个月。。想借鉴下论文的生成器和判别器结构。

 

【Papers-GAN】2018-07-20

本周完成情况:

  一、论文实验:将原文固定size的修复区域修改为不固定size的修复区域,但是对于不固定size的修复区域修复效果较差,本实验在基于U-Net网络结构的基础上,对网络进行改进,并对实验参数进行调整,使其能够修复不固定size的修复区域,下面是每一步改进的两组实验结果。

        待修复图像                原网络修复效果               修复目标

  

  

  下面以这两组图为例,展示经过改进后的修复效果:

  1. 生成器的l1_weight权重由100设置为50:

  

  2. 调整batchsize由1到4/8,batch为4的效果较好:

  

  3. 生成器加上normalization,判别器norm则设置为false:

       

  4. 生成器decoder部分加上dropout,encoder部分设为false:(此处贴出encoder部分也加上dropout,效果较差)

  

  5. 生成器encoder和decoder部分激活函数设置为lrelu:

  

  相比最初网络修复不固定size的效果已经有一定的提升效果能看出大概轮廓,并且没有带来其它的噪点。后期待实验部分:

  1. 生成器和判别器卷积参数进行改进;

  2. 生成器中encoder和decoder的网络层数和输出特征通道数进行改进;  

  3. 对生成器encoder和decoder结构进行改进。

 

【Papers-GAN】2018-07-28

本周完成情况:本周继续对GAN图像修复进行实验,调整网络结构和参数来提高修复效果,本周整体实验效果都不算好。

1.  修改generator和discriminator中卷积核的ksize大小,设置为5/3,效果都较差:

2. 修改generator中卷积方式为深度可分离卷积,效果较差:(可分离卷积可带来更大的感受野,导致修复区域外也受到影响)

3. 修改discriminator中卷积核的padding方式,由valid改为same:

4. 修改generator和discriminator中卷积,激活函数和BN层的顺序,由relu->BN到BN-relu,效果变差:

5. 添加新的L2 loss,修改权重比例,效果较差:

6. 将L1 loss和L2 loss都添加到generator的loss中,效果较差:

 

下周实验计划:

1. 修改网络结构;

2. 修改discriminator的loss;

3. 修改网络layer的特征图channel数。

posted on 2018-07-06 14:49  王老头  阅读(367)  评论(0)    收藏  举报