【图像修复】AOT-GAN《Aggregated Contextual Transformations for High-Resolution Image Inpainting》
文章目录
- 贡献
- 模型结构
- 实验
- 结论
贡献
- 提出用于高分辨率图像修复的aggregated contextual transformations(AOT),它允许捕获信息丰富的远程上下文和丰富的感兴趣模式,以进行上下文推理。
- 设计了一个新的掩模预测任务来训练用于图像修复的判别器,使判别器可以区分真实patch和合成patch,从而有助于生成器合成细粒度纹理。
模型结构
整体结构
AOT block
生成器先通过几层标准的卷积层进行编码,再通过AOT块,最后再通过转置卷积进行解码。
AOT块通过三个步骤采用拆分转换合并策略:
(1)拆分:AOT块将标准卷积的卷积核拆分为多个子核,每个子卷积核具有较少的输出通道;
(2)转换:每个子卷积核具有不同的膨胀率。较大的膨胀率使子卷积核能够关注到输入图像的较大区域,而使用较小膨胀率的子核则关注较小感受野的局部模式。
(3)聚合:来自不同感受野的上下文转换最终通过串联和标准卷积进行聚合,以进行特征融合。
这样的设计能够让AOT块通过不同的视图预测图像的每个输出像素。
下面的公式中对传统的相同剩余连接进行改进,改进为选通剩余连接,聚合公式中g是空间可变门控值。这种空间变化的特征聚合在尽可能更新缺失区域内的特征的同时,保留缺失区域外的已知特征。
x3=x1×g+x2×(1−g)x_{3}=x_{1} \times g+x_{2}{\large }\times(1-g) x3=x1×g+x2×(1−g)
Soft Mask-Guided PatchGAN (SM-PatchGAN)
解决什么问题?
大多数深度修复模型往往基于重建损失(L1 Loss)生成所有可能解决方案的平均值,这会导致纹理模糊。
修复结果表示为:
z=x⊙(1−m)+G(x⊙(1−m),m)⊙mz=x \odot(1-m)+G(x \odot(1-m), m) \odot m z=x⊙(1−m)+G(x⊙(1−m),m)⊙m
修复结果为两部分的叠加,原图像的完好区域和生成的空洞区域。其中,m为二进制掩码(0表示已知像素,1表示未知像素),即缺失区域表示为白色。
判别器的对抗损失:
LadvD=Ez∼pz[(D(z)−σ(1−m))2]+Ex∼pdata [(D(x)−1)2]\begin{array}{c} L_{a d v}^{D}=\mathbb{E}_{z \sim p_{z}}\left[(D(z)-\sigma(1-m))^{2}\right]+ \mathbb{E}_{x \sim p_{\text {data }}}\left[(D(x)-1)^{2}\right] \end{array}LadvD=Ez∼pz[(D(z)−σ(1−m))2]+Ex∼pdata [(D(x)−1)2]
其中,σ\sigmaσ 表示下采样和高斯滤波的合成函数。
生成器的对抗损失:
LadvG=Ez∼pz[(D(z)−1)2⊙m]L_{a d v}^{G}=\mathbb{E}_{z \sim p_{z}}\left[(D(z)-1)^{2} \odot m\right]LadvG=Ez∼pz[(D(z)−1)2⊙m]
判别器上的设计
对于判别器设计了soft patch-level mask。
不同设计的比较:
PatchGAN的判别器将所有修复图像中的补丁都判别为假,这忽略了缺失区域之外的补丁确实来自真实图像。 而所提出的SM-PatchGAN能够将缺失区域的合成补丁与上下文的真实补丁区分开来,这可以增强鉴别器的能力。
HM-PatchGAN中没有使用高斯滤波器,从而忽略了修补图像的边界周围可能同时包含真实像素和合成像素。而所提出的SM-PatchGAN引入了高斯滤波器解决了这个问题。
总体优化
优化函数包括四个:L1L_1L1 loss(重建损失)、style loss(风格损失)、perceptual loss(感知损失)和adversarial loss (对抗损失)。
(1)L1L_1L1 loss确保像素级的重建精度
Lrec=∥x−G(x⊙(1−m),m)∥1L_{r e c}=\|x-G(x \odot(1-m), m)\|_{1} Lrec=∥x−G(x⊙(1−m),m)∥1
(2)perceptual loss旨在最小化修复图像和真实图像的激活图之间的L1L_1L1距离
Lper=∑i∥ϕi(x)−ϕi(z)∥1NiL_{p e r}=\sum_{i} \frac{\left\|\phi_{i}(x)-\phi_{i}(z)\right\|_{1}}{N_{i}} Lper=i∑Ni∥ϕi(x)−ϕi(z)∥1
其中,ϕi\phi_{i}ϕi 来自预训练网络(如VGG19)第i层的激活图,NiN_iNi 是 ϕi\phi_{i}ϕi 中的总数量。
(3)style loss被定义为修复图像和真实图像深层特征的Gram矩阵之间的L1L_1L1距离:
Lsty=Ei[∥ϕi(x)Tϕi(x)−ϕi(z)Tϕi(z)∥1]L_{s t y}=\mathbb{E}_{i}\left[\left\|\phi_{i}(x)^{T} \phi_{i}(x)-\phi_{i}(z)^{T} \phi_{i}(z)\right\|_{1}\right] Lsty=Ei[∥∥ϕi(x)Tϕi(x)−ϕi(z)Tϕi(z)∥∥1]
(4)adversarial loss
Ladv=Ez∼pz[(D(z)−1)2⊙m]L_{a d v}=\mathbb{E}_{z \sim p_{z}}\left[(D(z)-1)^{2} \odot m\right] Ladv=Ez∼pz[(D(z)−1)2⊙m]
总的优化目标:
L=λadvLadvG+λrecLrec+λperLper+λstyLstyL=\lambda_{a d v} L_{a d v}^{G}+\lambda_{r e c} L_{r e c}+\lambda_{p e r} L_{p e r}+\lambda_{s t y} L_{s t y} L=λadvLadvG+λrecLrec+λperLper+λstyLsty
参数设置:λadv\lambda_{a d v}λadv = 0.01, λrec\lambda_{rec}λrec = 1, λper\lambda_{per}λper = 0.1, λsty\lambda_{sty}λsty = 250。
实现细节
SM-PatchGAN中的高斯滤波处理,将高斯核的核大小设置为了70×70。为了避免归一化层引起的颜色偏移问题,移除了生成器网络中的所有归一化层。
训练参数设置:
一个mini-batch中,随机采8张图片和相应的掩码。生成器和鉴别器的学习率都为10−410^{-4}10−4,使用β1=0和 β2=0.9\beta_{1}=0 \text { 和 } \beta_{2}=0.9β1=0 和 β2=0.9 的优化器。使用ImageNet数据集上预训练的VGG19作为预训练网络,用于计算风格损失和感知损失。
实验
使用的数据集
Places2、CELEBA-HQ、QMUL-OpenLogo
掩膜数据集
论文Image Inpainting for Irregular Holes Using Partial Convolutions中所提供的掩膜数据集,也是大多数图像修复任务中所使用的。
对比的模型基准
(1)CA:Context encoders: Feature learning by inpainting. (2016)
(2)PEN-Net:Learning pyramid-context encoder network for high-quality image inpainting. (2019)
(3)PConv:Image inpainting for irregular holes using partial convolutions. (2018)
(4)EdgeConnect:Edgeconnect: Generative image inpainting with adversarial edge learning. (2019)
(5)GatedConv:Free-form image inpainting with gated convolution. (2019)
(6)HiFill :Contextual residual aggregation for ultra high-resolution image inpainting. (2020)
(7)MNPS :High-resolution image inpainting using multi-scale neural patch synthesis. (2017)
上述7个模型都是Image Inpainting领域比较经典的模型。
评估标准
L1L_1L1 error、PSNR、SSIM、FID
然后就是定性实验、定量实验、User Study,结果肯定都优于其他,就不总结了,细节看论文。
消融实验
验证AOT-GAN中三种组成要素的有效性 :gated contextual transformations(选通上下文转换)、gated residual connections(选通残余连接)、SM-PatchGAN discriminator(SM PatchGAN鉴别器)。
结论
局限性
(1)AOT块的分支数和扩张率是根据经验性的研究和设置,当图像大小改变时,可能就要重新去设置参数,无法自适应。
(2)在实际应用(如logo移除)中很难自动分割logo的区域。
【图像修复】AOT-GAN《Aggregated Contextual Transformations for High-Resolution Image Inpainting》相关推荐
- 基于生成对抗网络结构的图像修复(GAN)
GAN网络的最初发展史 自2014 年10 月Goodfellow 等人提出了一个通过对抗过程生成模型的框架开始,GAN 网络就成为近年来在无监督学习复杂分布中最具前景的方法之一.而其最初给研究人员的 ...
- 【每周CV论文】初学深度学习图像修复应该要读的文章
欢迎来到<每周CV论文>.在这个专栏里,还是本着有三AI一贯的原则,专注于让大家能够系统性完成学习,所以我们推荐的文章也必定是同一主题的. 图像修复(image inpainting)或补 ...
- 深度图像修复的一个突破
作者:Chu-Tak Li 编译:ronghuaiyang(AI 公园) 导读 使用上下文注意力来进行深度图像修复. 今天,我们将深入探讨深度图像修复的一个突破,上下文注意力.通过使用上下文注意力,我 ...
- 【每周CV论文推荐】基于GAN的图像修复值得阅读的文章
欢迎来到<每周CV论文推荐>.在这个专栏里,还是本着有三AI一贯的原则,专注于让大家能够系统性完成学习,所以我们推荐的文章也必定是同一主题的. 图像修复(补全)是一个非常基础的图像处理领域 ...
- 基于GAN的图像修复--论文笔记
文献下载看下载处或评论链接 /1 Region Normalization for Image Inpainting 主要内容:将损坏的图像输入到神经网络中可能会产生问题,例如无效像素的卷积.归一化的 ...
- 【深度学习】揭秘2021抖音和快手APP图像修复背后的核心技术,毫无ps痕迹
作者 | 对白 出品 | 对白的算法屋 编者寄语: 本文看完,相信你会对抖音和快手APP中使用的图像修复技术有一番了解和掌握. 大家好,我是对白. 由于CNN.GAN.Transformer等模型在C ...
- ICCV 2019 | 基于关联语义注意力模型的图像修复
作者丨薛洁婷 学校丨北京交通大学硕士生 研究方向丨图像翻译 论文引入 图像修复问题的关键是维持修复后图像的全局语义一致性以及破损区域的细节纹理合理性.近期关于图像修复问题的研究主要集中于通过使用空间注 ...
- 图像修复神器!带上口罩都能还原!DDPM:用去噪扩散概率模型极限修复图像,效果太牛了!...
点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 转载自:机器之心 | 编辑:杜伟.陈萍 无论掩码类型如何多变,苏黎世联邦理工学院计算机视觉实验室(CVL)的 ...
- CVPR 2020 论文大盘点-图像修复Inpainting篇
转自:https://mp.weixin.qq.com/s?__biz=MzIwMTE1NjQxMQ==&mid=2247519592&idx=2&sn=3a0598c9f52 ...
- 图像修复必读的10篇论文
点击上方"AI公园",关注公众号,选择加"星标"或"置顶" 因公众号更改了推送规则,记得读完点"在看"~下次AI公园的新 ...
最新文章
- C#温故而知新学习系列之面向对象编程—构造函数(七)
- C++类型转换总结【转】
- 诺基亚收购了阿朗:那与 TCL 的“阿尔卡特”品牌授权协议到期后咱办?
- hdfs java api读写
- 官宣!CSDN 发布 C 站软件工程师能力认证
- [Python] L1-007. 念数字-PAT团体程序设计天梯赛GPLT
- 给CentOS添加第三方源(RPMForge源)
- 2017-2018-1 20155201 20155313 实验一 开发环境的熟悉
- Erlang编程语言的一些痛点
- accept 返回0_Netty深入浅出系列:Netty源码分析之accept过程
- HyperLPR车牌识别算法学习
- 浮动时间怎么计算_轻松搞定PMP考试的计算题(四)时间参数计算
- 树莓派3B制作无线wifi(桥接模式)
- 系统集成项目管理工程师(一)
- PX4-小型固定翼滑跑起飞问题分析
- Android studio编程常用控件
- Testin云层天咨众测学院开课了!
- 嵌入式工程师,怎么不被历史洪流冲走?
- 一个 Git 库内管理多个子项目
- 2021-07-23 N卡显示器亮度设置
热门文章
- LTE中的名词解释(分集增益 RSRP RSRQ SINR AWGN 空中接口)
- Hi3531添加16GByte(128Gbit) NAND Flash支持
- jQuery的$.ajax()访问json文件【亲测有效】
- 关于英语前缀和后缀的区别
- 计算机从外部世界接收信息和向外部世界反馈运算结果的手段
- 计算机科学与技术专业论文评语,计算机论文指导教师评语大全.doc
- My Hotmail Has Been Upgraded to 250MB!
- 第六章金融衍生工具市场
- 机器人定位误差标定模型
- 数据库入门_查询语句