ronghuaiyang · 2021年04月02日

先画轮廓,再涂色,一种新的图像修复方法

首发:AI公园公众号
作者:Chu-Tak Li
编译:ronghuaiyang

导读

EdgeConnect方法,使用GAN来生成边缘,再进一步生成完整的图像。
image.png
图1所示,一些使用提出的方法(EdgeConnect)的修复结果。左:输入损坏的/被masked的图像。中:完成的边缘图(黑色,使用Canny边缘检测器从有效区域计算出的边缘,右:使用EdgeConnect填充图像

你好👋:)。今天,我们将深入研究一种名为EdgeConnect的深度图像修复论文。简单地说,本文采用了一种非常直观的方法来处理图像修复,由浅入深。他们首先预测缺失区域的骨架(即边/线),然后根据生成的骨架来填充颜色。这是“先画线条,然后着色”的方法。图1显示了一些修复结果和使用本文方法预测的边缘图。看起来逼真吗?让我们深入研究这篇论文,抓住它的核心思想!

动机

正如我之前的文章中提到的,现有的深度图像修复方法通常会产生模糊的区域。其中一个可能的原因是L1损失的使用(即像素级重建精度)。请注意,较小的L1损失往往会给出模糊的结果(最小化平均像素差异)。为了进一步提高修复结果的质量,我们可以向generator network提供缺失区域的先验信息,从而产生更好的局部精细纹理细节。缺失区域的边缘图可能是一个很好的先验信息的选择,因为它包含了图像的整体结构

假设直接填充图像中缺失的区域比较困难,我们可以简化为两个简单的步骤,即边缘预测和颜色填充。本文假设缺失区域的边缘预测比直接完成缺失区域要容易得多。所以,他们采用了“线条优先,颜色其次”的策略。它们首先生成缺失区域的边缘作为第二生成器的先验信息。然后,第二个生成器使用生成的边缘来填补缺失区域的局部精细纹理细节。

介绍

和之前一样,我假设读者对深层图像修复有一个基本的了解。实际上,本文使用的网络结构和损失函数在前面已经介绍过了。在这一节中,我将简要介绍那些我认为不太重要的内容,感兴趣的读者可以参考这篇论文以获得更多的细节,因此我们可以有更多的时间在下面的章节中讨论这篇论文的主要思想。

实际上,本文的主要思想是采用两个生成器。一个用于边缘预测,另一个用于以所预测的边缘图为先验来完成图像。

网络结构。与我们之前提到的几篇论文一样,本文的作者使用了一个两级网络(即两个生成器和两个鉴别器)。与我们介绍的粗到细网络类似,你可以认为我们在本文中有一个边缘到图像的两阶段网络

方案

作者将图像修复简化为边缘预测和图像补全两个简单的步骤。第一个生成器只负责预测缺失区域的边缘,从而获得图像的整体结构。预测的边缘图也是一个二值图,以显示图像的骨架。第二个生成器以预测的边缘图为条件,负责用更好的纹理细节填充缺失的区域。

方法

image.png

图2,EdgeConnect的网络架构,我们有两个生成器和两个判别器

图2显示了EdgeConnect的整体网络结构。如你所见,我们对这种网络架构对于图像修复的任务很熟悉。第一个生成器G\_1以mask图像、被屏蔽的边缘图像和被屏蔽的灰度图像作为输入,给出一个预测的边缘图。这个生成器使用标准的对抗损失和特征匹配损失训练。

第二个生成器G\_2将预测的边缘映射和masked RGB图像作为输入输出一个完整的RGB图像。这个生成器器是使用风格损失,感知损失,L1重建损失和标准的对抗损失训练的。

特征匹配损失

image.png

正如我之前提到的,特征匹配损失与VGG感知损失非常相似。特征匹配损失计算的是边缘判别器D\_1的特征图之间的L1距离,而不是预训练的VGG-19网络。上式中,_L_为边缘鉴别器的层数,_N\_i_为边鉴别器第_i_层的元素数,C\__gt_和C\__pred_分别为ground truth边缘图和预测边缘图。同样,我们希望强制边缘生成器生成边缘图,其特征表示与由边缘判别器计算的ground truth边缘图相似。简单地说,特征匹配丢失需要在鉴别器中进行相似的特征表示。

第一阶段使用的一种训练技术是使用Spectral Normalization (SN)。作者声称,使用SN可以进一步稳定他们的训练过程,他们将SN应用于边缘生成器和边缘鉴别器的所有层。

感知损失

image.png

这里,我简要地提到了感知损失,以显示其与特征匹配损失的相似性。_Φ_\__i_(I)表示在给定输入第i层上的特征图。在本工作中,作者使用预先训练的VGG-19网络的relu1\_1、relu2\_1、relu3\_1、relu4\_1、relu5\_1来计算感知损失和风格损失。

总的损失

image.png
这是训练图像补全网络(即第二个生成器)的整体损失函数。λ\__l1_, λ\__adv_,2, λ\__p_, λ\__s_是平衡这四项损失的权重。在他们的实验中,这4个权重分别设置为1,0.1,0.1,250。与第一个边缘预测网络不同,本图像补全网络只将SN应用于识别器,以加快训练过程。

实验

边缘信息和掩码

为了训练边缘生成器G\_1,作者采用了一种非常著名的传统边缘检测算法Canny边缘检测器。我不会在这里详细介绍这些狡猾的边缘检测器,有兴趣的读者可以谷歌来了解更多细节。无论如何,对于Canny边缘检测器,我们必须输入一个参数σ,这将影响检测到的边缘图像的质量。作者发现,σ=2是图像修复的最佳边缘图像。我稍后会讲到这个消融研究。

对于mask的类型,本文使用了两种mask。第一种类型是在图像中的随机位置,一个大小固定(25%的像素被屏蔽)的矩形缺失区域。第二种类型是我们上次介绍的部分卷积中介绍的不规则mask。

作者在CelebA、Places2和Paris StreetView数据集上评估了他们提出的方法。如你所见,这些是一些常用的数据集,用于评估深层图像修复方法。

定性的比较

640.png

图3,使用EdgeConnect的一些修复结果,从左到右。ground truth图像、输入的mask图像、预测的边缘图和完成的图像

image.png

图4,不同最先进的方法的可视化比较

图3显示了使用EdgeConnect的一些修复结果。请放大以更好地查看已完成图像的质量。图4显示了不同修复方法的可视化对比。注意,图4 (c)和(d)表示上下文注意力和GLCIC。对于Canny,作者试图向图像生成器提供真实的边缘信息(在实践中无法获得),因此生成器只需要用完整的边缘信息填充局部细节。再放大一点,看得更清楚些。可以看到,图4(e)提出的方法提供了最好的修复结果。如果ground truth边缘信息可用,如图4(f),甚至可以产生更好的修复结果。

定量的比较

image.png

表1,对Places2数据集上不同的最新方法进行定量比较

表1列出了一些常用的图像修复任务的客观数值指标。注意,对于SSIM和PSNR,越高越好,而对于l1(%)和FID,越小越好。最后一列(Canny)表示第二个图像生成器可以获得完整的边缘信息。我们可以看到,在大多数情况下,EdgeConnect(即先进行边缘预测再进行图像补全)提供了最好的数值指标。
image.png
图5,不同mask大小对Places2数据集的PSNR和FID的影响

图5显示了不同mask大小对Places2数据集的PSNR(右)和FID(左)的影响。正如你所看到的,当mask比变大时,任务变得更加困难。

作者还做了视觉图灵测试来评估他们的修复结果。

消融研究

image.png

表2,使用边缘信息(Yes)和不使用边缘信息(No)的修复结果定量比较

首先,作者证明了利用边缘信息进行图像修复是有效的。表2列出了相关的数值指标,表明边缘信息的使用有助于提高修复效果。
image.png

图6,在三种不同的数据集上,σ值的不同对PSNR和FID的影响

然后,他们尝试了不同的参数σ值来获得不同的边缘图像,看看使用不同的边缘图像对最终修复结果的影响。图6显示了不同σ对三个不同数据集的PSNR和FID的影响。正如你所观察到的,σ=2(或2.xx)提供了最好的最终修补结果(最好的PSNR和FID)。

image.png

图7、不同σ参数对修复效果的影响

图7显示了不同σ对边缘图像和修复结果的影响。简单地说,正如你所看到的,当σ太小时,我们会有太多的小边,这对于图像补全来说可能会太复杂。另一方面,当σ太大时,很难检测到边缘,因此边缘映射可能不会对图像补全有用。因此,合适的σ值是产生良好修复效果的关键。

除了Canny边缘检测器外,作者还尝试采用更好的边缘检测算法,看看是否能带来进一步的改进。他们发现没有任何明显的改善,因此他们选择使用Canny边缘检测器。当然,边缘检测算法的选择还没有得到充分的探索。

应用的局限性

image.png

图8,一些修复的结果,边缘生成器不能产生满意的边缘信息。

图8显示了边缘生成器不能产生满意边缘信息的一些故障情况。可以看到,当缺失区域过大无法填充,场景过于复杂时,仍然很难完成具有良好视觉质量的图像。
image.png

图9、交互式图像编辑工具的可能扩展。(a)图像a (b)图像b (c)边缘图 (黑色:(a)左半部分的边缘图像,红色:(b)右半部分的边缘图像) (d)修复结果(输入图像为(a)右半部分被遮挡,(c)为完成时使用的边缘信息)。

图9显示了EdgeConnect到交互式图像编辑工具的可能扩展。可以看出,以图像修复的形式将两种图像的特征结合起来是有可能的。请放大看结果更清楚。

image.png

图10,使用本文提出的EdgeConnect方法进行目标移除和图像编辑的一些例子。左:原始图像。中间:蒙版图像与不需要的目标和可选的引导边缘。

图10显示了一些从原始图像中删除不需要的目标的例子。注意,边缘引导是可选的,你可以放大以便更好地看到结果。

总结

显然,本文的主要思想是将图像修复的任务分为两个简单的步骤,即边缘预测和基于预测的边缘图的图像补全。他们首先预测缺失区域的边缘,然后根据预测的边缘信息完成图像。通过这样做,可以得到更清晰的补全结果,而不是模糊的结果。事实上,本文中使用的大多数技术已经在我以前的文章中介绍过了。

要点

实际上,我们已经讨论了大多数常用的深度图像修复技术。现在,我们可以处理不同类型的mask,如规则的矩形mask和不规则mask。图像修复有多种可能的应用,如去除不需要的物体等图像编辑任务(如图9所示,将两张图像对半合并)。但与之前一样,对于结构复杂、mask比例大的图像,仍然很难完成。无论如何,对于深度图像修复,我们还有很长的路要走。

—END—

英文原文:https://towardsdatascience.co...

推荐阅读

关注图像处理,自然语言处理,机器学习等人工智能领域,请点击关注AI公园专栏
欢迎关注微信公众号
AI公园 公众号二维码.jfif
推荐阅读
关注数
8244
内容数
210
关注图像处理,NLP,机器学习等人工智能领域
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息