Jialun Peng1 Dong Liu1* Songcen Xu2 Houqiang Li1 1 University of Science and Technology of China 2 Noah's Ark Lab, Huawei Technologies Co., Ltd.pjl@mail.ustc.edu.cn, {dongeliu, lihq}@ustc.edu.cn, xusongcen@huawei.com
原文提供代码链接:
GitHub - USTC-JialunPeng/Diverse-Structure-Inpainting: CVPR 2021: "Generating Diverse Structure for Image Inpainting With Hierarchical VQ-VAE"
摘要:
给定一个没有附加约束的不完整图像,只要图像看起来合理,图像修复就原生允许多个解决方案。最近,已经提出了多种解决方案修复方法,并展示了生成不同结果的潜力。然而,这些方法很难确保每个解决方案的质量,例如它们产生扭曲的结构和/或模糊的纹理。我们提出了一个用于不同修复的两阶段模型,其中第一阶段生成多个具有不同结构的粗结果,第二阶段通过增加纹理分别细化每个粗结果。所提出的模型受到分层向量量化变分自动编码器 (VQ-VAE) 的启发,其层次结构解开结构和纹理信息。此外,VQVAE 中的矢量量化能够对结构信息的离散分布进行自回归建模。从分布中采样可以很容易地生成多样化和高质量的结构,构成了我们模型的第一阶段。在第二阶段,我们在纹理生成网络内部提出了一个结构注意模块,该模块利用结构信息来捕获远距离相关性。我们进一步重用VQ-VAE来计算两个特征损失,分别有助于提高结构的一致性和纹理真实感。在CelebA-HQ、Places2和ImageNet数据集上的实验结果表明,我们的方法不仅增强了修复解决方案的多样性,而且提高了生成的多幅图像的视觉质量。
模型结构图:
第一阶段——生成粗结果:
我们首先提出了一种多样结构生成器Gs,它使用自回归网络来制定离散结构特征上的条件分布。从分布中取样可以产生不同的结构特征。
损失函数为:
第二阶段——生成精细结果,有两部分组成:
第一部分主要由纹理生成器+粗结果/gt结果 ,得到生成整张图。
另外提出了一个结构注意力模块,它直接计算结构特征的注意力得分。直观地说,具有相似结构的区域应该具有相似的纹理。计算结构特征上的注意力得分可以对结构信息的精确长程相关性进行建模,从而提高合成纹理和生成结构之间的一致性。
此处的判别器为:SN PatchGAN中的判别器
可以计算由判别器以及L1损失。
第二部分由在原始数据集上提前预训练好的分层VQ-VAE的编码器部分构成:
预训练Hierarchical VQ-VAE
这个模型在编码器部分会生成图像的结构特征,纹理特征。
然后拿训练好的Hierarchical VQ-VAE的编码器部分,固定编码器参数??,将第一部分中生成的comp图像作为输入,得到了生成图像comp对于这个编码器的结构特征以及纹理特征。
然后与gt图像的结构特征纹理特征得到另外的损失函数。用于指导模型训练。
结构损失函数为:
总损失函数为:
模型表现(部分):