IEEE Conference Proceedings arXiv: Computer Vision and Pattern Recognition Jan 2019
解决的问题与改进
现有方法不能结合直接可视信息和深层语义信息。
- patch search等方缺少法高层语义一致性的理解。
- generative models的stacked constructions和poolings存在over-smooth, lack of visually-realistic等问题。
模型搭建
以UNet为骨架,能够在image-level 和 feature-level上填充缺失区域.
pyramid-context encoder:使用cross-layer 注意力传播和金字塔填充的机制
每一层的𝜓由这一层的feature map - 𝜙 和 更高一层的𝜓共同经过ATN(式中f)得到。
Attention Transfer Network(ATN)(即上面的f)
一、由高层语义重建特征图 ψ L \psi^L ψL填充下一层特征图的 ϕ L − 1 \phi^{L-1} ϕL−1,以获得下一层的重建特征图 ψ L − 1 \psi^{L-1} ψL−1。
-
首先提取 ψ l ψ^l ψl,然后计算patch之间的余弦相似度。
-
然后在相似度上使用Softmax函数来获得每个patch的注意力分数(Attention Score)。
-
获得高层语义特征的的注意力分数后(即上式 α i , j l α_{i,j}^l αi,jl),下一层的特征图就可以使用由注意力分数加权的context来填充。
计算全部的patch后,就可以得到
ψ
l
−
1
ψ^{l−1}
ψl−1 (上面i的所有计算都可以公式化为卷积计算以进行端对端的训练)。
二、细化
通过四组不同速率的膨胀卷积来聚合多尺度的上下文信息,这样的设计保证了最终重构特征的结构与环境的一致性,提高了测试的修复效果。
multi-scale decoder
- multi-scale decoder由通过ATN重建的特征和encoder的latent feature作输入。
- decoder的特征图 φ L − 1 、 φ L − 2 φ^{L−1} 、φ^{L−2} φL−1、φL−2等,由下式计算。
其中,由ATN生成的重建特征为缺失区域编码更低层级的信息,有利于使用细粒度的细节生成视觉上逼真的结果;由卷积提取的紧凑的latent特征能在缺失之外区域找不到物体时,合成新物体。
语义一致靠深层卷积,纹理一致靠ATN重建的浅层特征。
- Pyramid L1 losses
An adversarial training loss
总体损失函数组成:Generator + Discriminator
- 使用PatchGAN(Image-to-Image Translation with Conditional Adversarial Networks)作为本文的discriminator,同时使用光谱归一化来稳定训练。
- 本文中,pyramid-context encoder和multi-scale decoder构成Generator。
损失函数的定义:
-
定义generator的最终预测结果z:
z = G ( x ⊙ ( 1 − M ) , M ) ⊙ M + x ⊙ ( 1 − M ) z=G(x ⊙(1−M), M)⊙M+x ⊙(1−M) z=G(x⊙(1−M),M)⊙M+x⊙(1−M) -
discriminator的对抗损失函数可表示为:
-
generator的对抗损失函数为:
-
PEN-NET通过最小化对抗损失和pyramid L1损失(上一小节最后)来优化,总体目标函数为:
模型分析
分析pyramid L1 Loss和ATN这两个网络构成部分的作用。
Pyramid L1 Loss
Pyramid L1 Loss损失函数在每个尺度逐步细化,pyramid loss有利于逐层解码紧凑特征。
ATN
跨层的注意力传播机制给U-Net骨架带来改善。
第一行为不使用任何注意力机制的纯U-Net网络,第二行是没有对更深层guidance的CA方法,第三层是ATN应用在U-Net架构上的结果。