PEN-Net(2019年)
论文代码:https://github.com/researchmm/PEN-Net-for-Inpainting PEN-Net 是以 U-Net网络为主干结构搭建的。根据观察,低层特征具有更丰富的纹理细节,高层特征具有更抽象的语义,高层特征可逐层次指导低层特征的补全,PEN-Net的核心是将高层特征图上通过注意力机制计算出的受损区域和未受损区域的区域相似度,应用于下一层低层特征图上的特征补全,补全后的特征图继续指导下一层特征图缺失区域的补全,直到最浅层的像素层。在这个过程中,网络进行了多次的不同层次的特征补全。最终,解码网络将补全后的特征以及具有高层语义的特征结合,生成最后的补全图像,使得补全图像不仅语义合理,补全内容还具有更清晰丰富的纹理细节。 引入ATN注意力模块来加强高层特征引导底层特征补全。编码器得到高层特征,ATN以高层特征作为输入提取得到attention score,然后引导低一层的特征来实现对较低层的特征进行补全,一次递推。同时,解码器解码高层特征,并与ATN模块的输出特征进行拼接,作为多尺度解码器的输入。
1. 图b) Multi-scale Decoder为什么还有真图? 答:不是真图,而是解码器将特征图解码成图片。 2. 那为什么有3张,用来干嘛的? 答:通过L1和对抗性损失来将特征图解码成彩色图,用于pyramid_L1 损失运算函数的输入。文章提到(我们还提出了深度监督的金字塔L1损失来逐步细化每个尺度上缺失区域的预测。 )
Attention Transfer Network工作原理
注意力通常是通过缺失区域内部/外部的补丁之间的区域亲和力(通常是3×3)来获得的,因此外部的相关特征(即通过亲和力从上下文中加权复制)可以转移到内部区域。ATN首先从一个高级特征图 ψl中学习区域亲和力。从ψl中提取补丁,计算缺失区域内外补丁之间的余弦相似度: 在从一个高级的特征地图中获得注意力得分后,其相邻的低级特征图上的漏洞可以用由注意力得分加权的上下文来填充: 我们建议进一步细化ATN中填充的特征,如图2中的C所示。具体来说,多尺度的上下文信息可以通过四组具有不同比率的空洞卷积进行聚合。
实验代码
代码地址:https://github.com/researchmm/PEN-Net-for-Inpainting 下载Readme提供的数据集,按照介绍测试网络; 重新跑数据集时,要在configs/.json中修改save的地址,否则你会报错缺少dis_0000.pth文件的错误。
|