赞
踩
Gated Convolution是对部分卷积网络(Partial Convolutions)《Image Inpainting for Irregular Holes Using Partial Convolutions》的改进
ICCV 2019《Free-Form Image Inpainting with Gated Convolution》
gated convolution
来替代传统的vanilla convolution
,解决了vanilla convolution
将所有元素均视为有效像素。vanilla convolutions
)是将每一个像素都当成有效值去计算的,这个特性适用于分类和检测任务,在这些任务中,输入图像的所有像素都是有效的,以滑动窗口的方式提取局部特征。但是不适用于inpainting
任务,因为inpainting
任务中hole
里面的像素是无效值,因此对hole
里面的内容和外面的内容要加以区分,partial conv
虽然将里面和外面的内容加以区分了,但是它将含有1个有效值像素的区域与含有9个有效值像素的区域同等对待,这明显是不合理的,gated conv
则是使用卷积和sigmoid函数来使得网络去学习这种区分。mask
设置为1
;没有满足用户的意愿来进行修复(也就是没有使用guidance
);部分卷积网络的mask
在较深的层逐渐消失,并且消失的规则为只要存在一个像素为有效像素,则设置当前所对应的Mask
为1
。对于此,本文提出了能够自动学习的mask
更新规则;所有图像的通道共用相同的mask,这样限制了灵活性。实际上部分卷积可以认为是不可学习的单通道特征hard-gating
。部分卷积公式及Mask更新规则
部分卷积和门控卷积对比
gated convolution公式形式表示
Network Architecture
修复网络结构图,SN-PatchGAN将在之后Loss章节介绍
这是一个由粗到细两阶段的网络,带有门控卷积。粗糙生成器以RGB图像、掩码图像和可选的用户草图图像作为输入(以增强模型的交互编辑能力),对缺失区域进行粗糙重建。然后,粗填充的图像将被传递到第二个细化生成器网络进行细化。请注意,DeepFill v1中提出的上下文注意(CA)层被用于此细化网络。
对于鉴别器,除了使用PatchGAN之外,作者还对鉴别器的每个标准卷积层使用了谱归一化(SN),以提高训练的稳定性。
local GAN
(局部GAN)来提升实验的结果。
Generator的损失函数:
训练模型的损失函数由两个损失项组成,一个是像素级L1重建损失(L1损失),另一个是SN-PatchGAN损失。请注意,用于平衡这两个损耗项的超参数为1:1。生成器的SN-PatchGAN损耗非常简单。它是SN-PatchGAN鉴别器输出的负平均值。实际上,这是铰链损耗,这在许多GAN框架中也很常见。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。