文章目录
- 一、大掩模修复(LaMa)简介
- 二、大掩模修复(LaMa)的主要方法
- 三、快速傅里叶卷积的修补网络
- 四、损失函数
- 五、训练中的动态掩膜生成
一、大掩模修复(LaMa)简介
- LaMa方法的提出背景:现代图像修复技术主要受阻于大缺失区域、复杂几何结构和高分辨率图像,主要受阻原因是修复网络和损失函数都缺乏有效的感受野。
- LaMa方法的核心思想:使用快速傅立叶卷积 fast Fourier convolutions (FFCs)来增大感受野,最终形成large mask inpainting (LaMa)。
- LaMa的主要组成部分:
- 一种新的使用快速傅里叶卷积的修补网络,具有图像范围感受野,傅里叶卷积可以视为self-attention的轻量级替代;
- 一个高感受野感知loss;
- large training masks,能发挥前两个组件的潜力。
二、大掩模修复(LaMa)的主要方法
目标: 修复一幅被未知像素m的二值遮罩遮罩的彩色图像x
方法:
- 遮罩后的图像被表示为x⊙ m,m与x⊙ m堆叠在一起,产生一个四通道输入张量:x′=stack(x⊙ m、 m)
- 使用一个前馈修复网络fθ(·),以x′为例,修复网络以完全卷积的方式处理输入,并产生修复的三通道彩色图像ˆx=fθ(x′)。
- 训练是在从真实图像和合成生成的mask中获得的(image、mask)对数据集上进行的。
三、快速傅里叶卷积的修补网络
FFC基于一个channel-wise fast Fourier transform (FFT),具有覆盖整幅图像的感受野,因此允许网络在 early layers 使用全局上下文,从而实现正确修复大mask。
图像与mask组成pair对输入网络并经过下采样后,进入FFC残差块。在FFC的处理过程中,会将输入tensor基于通道分为2部分分别走2个不同的分支:
- 使用传统卷积的局部分支,负责提取局部信息;
- 使用 real FFT 来获取全局上下文的全局分支,负责提取全局信息;
- 最后将局部信息和全局信息进行交叉融合,再基于通道进行拼接,得到最终的输出结果。
四、损失函数
总的损失,包括GAN的损失,生成器感知损失,判别器感知损失,判别器梯度惩罚。
-
GAN的损失
-
生成器感知损失
-
判别器感知损失
-
判别器梯度惩罚
五、训练中的动态掩膜生成
- 作者认为掩膜的生成类似于数据增强,对模型的效果非常重要。作者采取了多种大掩膜生成方式,但也同时注意避免生成大于原始图像50%的掩膜;
- 每个训练样本 x′ 都是真实照片与合成生成的mask的叠加;
- 大掩模生成策略:统一使用从多边形链中提取的样本,该多边形链由高随机宽度(宽遮罩)和任意纵横比的矩形(长方体遮罩)展开。
参考:
深度学习-Resolution-robust Large Mask Inpainting with Fourier Convolutions基于傅里叶卷积的对分辨率鲁棒的掩模修复
Lama:《Resolution-robust Large Mask Inpainting with Fourier Convolutions》解读及实操
Resolution-robust Large Mask Inpainting with Fourier Convolutions 阅读笔记
图像修复之lama