开关网络

版权声明: https://blog.csdn.net/gwplovekimi/article/details/89047777

深度卷积神经网络极大地提高了各种图像恢复任务的性能。然而,这是以增加计算负担为代价的,这限制了它们的实际使用。我们认为一些损坏的图像区域天生比其他区域更容易恢复,因为图像中的失真和内容是不同的。为此,我们提出了一种多路径卷积神经网络(CNN) Path-Restore,它具有一个pathfinder,可以动态地为每个图像区域选择合适的路径。我们采用强化学习的方法对探路者进行训练,并对其进行难度调节奖励,这与探路者的表现、复杂性以及“区域恢复的难度”有关。我们进行了盲高斯去噪和混合恢复任务的实验。结果表明,该方法可根据具体任务的需要,以23% ~ 422%的速度实现与单一深度网络相当的性能。与现有的动态图像恢复模型相比,该方法具有平衡性能复杂度权衡的灵活性,更易于推广到不同的恢复任务中。

 

图像恢复的目的是通过对图像的畸变观测来估计图像的真伪。深度卷积神经网络(Very deep tional Neural network, CNNs)在各种恢复任务上取得了巨大的成功。例如,在NTIRE 2018挑战赛[34]中,顶级的超分辨率方法都是建立在非常深入的模型上,如EDSR[25]和DenseNet[15],即使输入图像被噪声和模糊破坏,其性能也令人印象深刻。然而,随着网络变得越来越深,不断增加的计算成本使得它在实际应用中变得不切实际。我们真的需要非常深入的CNN来处理一张扭曲图像的所有区域吗?在现实中,单个图像中可能存在大量的图像内容变化和失真,有些区域天生就比其他区域更容易处理。一个直观的例子如图1所示,我们使用几个不同深度的去噪cnn来恢复一个噪声图像。通过5层CNN,可以观察到红框中噪声较小的平滑区域得到了很好的恢复,进一步增加网络深度很难带来任何改善。在绿色框中,同样平滑但噪声严重的区域需要12层CNN来处理,蓝色框中的纹理区域在经过20层CNN处理后仍然有一些伪影。该观测通过根据每个区域的内容和失真程度为其分配最优网络路径,从而提高了节省计算量的可能性。

有几个作品探索处理每个输入图像的动态路径。Yu等人提出的RL-Restore可以动态选择一组小的CNNs序列来恢复被扭曲的图像。Wu et al.[39]和Wang et al.[35]提出对每张图像动态跳过ResNet[12]中的一些块,在保持单个分类任务良好性能的同时实现快速推理。然而,现有的动态网络将所有的图像区域视为一个整体,无法满足我们为不同区域分配不同路径的需求。

受这些现有动态网络的启发,我们提出了路径恢复(path - restore)框架,该框架能够动态地为具有特定内容和失真的每个图像区域选择路径。特别是,我们首先训练具有随机路径选择策略的多路径CNN。经过预处理后,与多路径CNN一起训练寻路器,寻找每个图像区域的最优调度策略。由于路径选择是不可微分的,寻路者在强化学习(RL)框架中接受训练,该框架由奖励驱动,鼓励高性能和更少的计算。主要有两个挑战。首先,多路径CNN应该能够在有限的计算下处理各种各样的失真。其次,探路者需要获得信息性的奖励,以学习针对不同内容和扭曲的地区的良好政策。

我们为应对这些挑战作出了两项贡献。在我们的第一个贡献中,我们设计了一个动态块作为多路径CNN的基本单元。如图2所示,一个动态块包含一个共享路径和几个具有不同复杂性的动态路径。动态路径的数量可以根据可能的失真类型的数量进行调整。该网络体系结构提供了足够的可选路径,可以根据手头的具体任务灵活设计。在我们的第二个贡献中,我们设计了一个困难的规则。

与传统的奖励函数不同,它更看重难示例的性能收益,而不是简单示例。具体来说,困难调节的奖励通过一个自适应系数来衡量不同区域的绩效收益,该自适应系数表示“该区域的恢复难度”。难度与损失函数成比例(例如MSE损失),因为损失较大表明区域难以恢复,如图1蓝色框所示。我们的实验发现,这种奖励有助于探路者学习合理的调度策略。所提出的路径恢复方法具有以下几个优点:1)由于采用了动态路径选择机制,我们的方法与静态深度网络具有相同的性能,根据具体任务的不同,恢复速度可以提高4倍。2)我们的方法可以很容易地推广到不同的恢复任务中。在盲去噪和混合失真方面的实验证明了该方法的有效性。3)我们的方法能够在训练过程中通过简单的调整所提出的奖励函数中的一个参数来平衡性能和复杂度的权衡。

用于图像恢复的CNN。几十年来,人们对图像恢复进行了广泛的研究。基于cnn的方法在去噪[22,16,5]、去模糊[40,31,27]、去死锁[7,37,10]和超分辨率[8,18,19,33,21,36]等修复任务中取得了显著改善。

虽然以往的文献多侧重于解决单一类型的失真,但也有一些开创性的工作旨在同时处理不同的修复任务[11,43]。这些方法使用单一的深度CNN在同一路径上处理所有的失真图像。然而,图像内容和失真程度的变化非常大。一个具有轻微失真的平滑图像实际上并不需要这么深的网络来恢复。因此,对所有图像进行平均处理会降低这些方法的效率。

与我们的方法更相关的是,Yu等人提出了RL-Restore来有效地处理混合失真。他们的方法能够自适应地选择一系列轻量级的CNNs来处理每个失真的图像,在使用较少的计算资源的情况下获得与单个深度网络相当的性能。与RL-Restore不同,RL-Restore需要手工设计12个小型CNNs,而我们只使用一个网络来实现动态路径选择。因此,我们的方法可以更容易地推广到各种任务。此外,我们的框架具有在性能和复杂性之间平衡的灵活性

通过简单的调整奖励函数,这在Yu等人的[42]中是不可能的。

动态网络。为了在不同的任务中更好地平衡速度和性能,对动态网络进行了研究。采用级联结构[23,24],在早期对容易的样本进行过滤,在后期将重点放在最具挑战性的样本上。Benjio等人使用条件计算一次选择性地激活网络的一部分。最近,有几种方法

为了节省ResNet[12]的计算成本,提出[9,39,35]动态跳过一些残块。上述方法主要针对单个任务,Rosenbaum等人开发了一个路由网络来促进多任务学习,他们的方法可以为每个与输入图像无关的任务找到合适的网络路径。

现有的动态网络成功地探索了依赖于整个图像内容或要处理的任务的路由策略。然而,我们的目标是选择动态路径来处理失真图像的不同区域。在这种情况下,无论是内容(如平滑区域或丰富纹理)还是恢复任务(如失真类型和严重程度)都对性能有重要影响,

在路径选择中两者都要考虑。为了解决这个具体的挑战,我们提出了一个动态块来提供不同的路径,并采用一个困难管理的奖励,以有效地培训探路者。

深的强化学习。对深度强化学习在不同任务中的综合研究,包括游戏玩法[26,13,30],神经网络设计[3,46,45],视觉跟踪[41,14,32]等。强化[38]和DQN[26]是两种常用的强化学习算法。例如,Wu等人[39]和Wang等人[35]在动态网络中使用强化学习路由策略。Yu et al.[42]采用DQN学习一个可以动态选择工具链进行图像恢复的agent。在本文中,我们使用了钢筋来训练探路者,因为钢筋是一种on-policy算法,它允许我们同时训练探路者和多路径CNN。

 

3.方法

我们的任务是将一幅清晰的图像y从其畸变观测x中恢复出来。图像y可能存在多种畸变类型(例如模糊和噪声),每种畸变的严重程度可能不同。我们希望我们的方法能够有效地扩展到复杂的修复任务。因此,挑战主要有两方面。首先,该网络应该能够有效地处理各种各样的扭曲现象。其次,探路者需要一个信息性的奖励来学习基于每个图像区域的内容和失真的有效调度策略。

我们建议路径恢复来解决上述挑战。我们首先在3.1节中概述路径恢复的体系结构。在3.2节中,我们介绍

探路者的结构及其奖励政策的评价。最后,我们在3.3节中详细介绍了训练算法。

3.1 Path-Restore 的结构

如图2所示,路径恢复由起始点和终点的卷积层组成,中间有N个动态块。在第i个动态块f中,有一个共享路径fi,每个图像都应该通过它。与共享路径并行,寻路器fPF生成一个可信路径的概率分布供选择。在共享路径之后,有M条动态路径,用fi1、fi2、…表示。,鱼翅。除了第一个路径是旁路连接之外,每个动态路径都包含一个剩余块。根据pathfinder的输出,激活概率最大的动态路径,其中路径索引为ai。因此,第i个动态块可以表示为:

其中xi和xi+1分别表示第i个动态块的输入和输出。注意,在两个不同的动态块中,每个对应路径的参数是不同的,而pathfinder的参数是共享的。

由式(1)可知,图像特征经过共享路径和一个动态路径。共享路径旨在探索不同任务和图像之间的相似性。动态路径提供了不同的复杂性选项。直观地说,简单的示例可能会被引导到旁路路径以保存计算,而复杂的示例可能会根据其内容和失真程度被引导到另一条路径。动态路径的数量是灵活的,取决于任务中有多少失真类型。例如,当图像同时被模糊、噪声和压缩破坏时,我们采用3条动态路径和1条旁路连接,即, M = 4。

 

3.2 Pathfinder

探路者是实现路径选择的关键部件。如图2所示,pathfinder包含C卷积层,然后是两个完全连接的层,中间是一个Long Short-Term Memory (LSTM)模块。卷积层的数量取决于我们将在第4节中指定的特定任务。LSTM模块用于捕获不同动态块中路径选择的相关性。探路者只占总计算量的不到3%。

由于路径选择是不可微分的,我们将序列路径选择表示为马尔可夫决策过程(Markov Decision Process, MDP),并采用强化学习方法对寻路者进行训练。我们将首先阐明这个MDP的状态和作用,然后举例说明提出的困难调节奖励训练探路者。

Difficulty-Regulated奖励。在RL框架中,训练探路者最大化累积奖励,因此正确的奖励函数设计至关重要。现有的分类动态模型[39,35]通常使用准确性和计算之间的权衡作为奖励。然而,在我们的任务中,需要更有效的奖励来学习对于不同内容和失真的不同图像区域的合理调度策略。因此,我们提出一个difficulty-regulated奖励,不仅考虑性能和复杂性,而且还取决于“恢复图像区域的困难”。其中,第i个动态块的奖励表示为:

时,奖励被p惩罚,表示寻路者选择了复杂的路径而不是旁路连接。性能和难度仅在最后一步考虑。特别是,−∆L2代表了L2性能的损失。难点由d表示,公式如下:

3.3 训练算法

培训过程分为两个阶段。在第一阶段,我们训练具有随机路径选择策略的多路径CNN。良好的多路径CNN初始化有助于探路者了解合理的策略。在第二阶段,我们同时对pathfinder和multi-path CNN进行训练,使这两个组件更好的关联和优化。

第一阶段。我们首先用随机选择的路径训练多路径CNN。损失函数由两部分组成。首先,最终的L2损耗限制输出图像具有合理的质量。其次,中间损失强制pathfinder在每个动态块上观察到的状态保持一致。损失函数具体表示为:

如果不采用中间损耗(intermediate),那么在不同的动态块中所观察到的特性可能会有很大的差异,这使得pathfinder更难学习一个好的调度策略。

4实验

在本节中,我们首先澄清所有实验的设置。

在4.1节中,我们给出了盲高斯去噪的结果。在第4.2节中,我们展示了路径恢复处理复杂失真的能力。最后,在4.3节中,我们提供了一些消融研究来验证所提出的网络架构的有效性和困难调节奖励。

评价基准。我们首先对一项盲去噪任务进行实验,其中畸变为标准差范围较大的高斯噪声[0,50]。训练数据集包括DIV2K[1]训练集的前750张图像(用DIV2K- t750表示)和[6]中使用的400张图像。我们在CBSD681和DIV2K训练集中剩下的50张图像(用DIV2K- t50表示)上测试我们的模型。除了均匀高斯噪声外,我们还利用[44]中的设置对空间变高斯噪声进行了实验。我们将结果与DnCNN2[43]进行了比较,并分析了路径选择策略。然后我们在一个复杂的恢复任务上评估我们的方法,就像在RL-Restore[42]中,图像被不同水平的高斯模糊,高斯噪声损坏

同时进行JPEG压缩。我们使用DIV2KT750进行培训,使用DIV2K-T50进行测试。为了将我们的方法与RL-Restore进行比较,我们不仅报告了像[42]这样的子图像的结果,还报告了具有2K分辨率的整个图像的结果。这两个任务的训练图像裁剪成63×63子图片。在测试时,每个图像分为63×63个地区大步53。经过多路径CNN处理后,将子图像合并成平均像素重叠的大图像。

网络体系结构。如表1所示,我们为每个恢复任务选择不同的架构。具体来说,我们采用N = 6个动态块,M = 2条路径进行盲去噪,pathfinder有C = 2个卷积层。为了解决混合失真问题,我们在pathfinder中采用了N = 5个动态块,M = 4条路径,C = 4个卷积层。这些参数是根据经验选择的,以获得良好的性能,并与基线方法进行公平比较。在补充材料中提供了关于网络架构和复杂性的更详细的讨论。

实现细节。如表1所示,根据具体任务设置难度L0和奖励惩罚p的阈值。一般情况下,当扭曲程度较重时,要求更大的阈值和奖励惩罚。对于这两个任务,难度d都用L2损耗来衡量。在第一个训练阶段,中间损失系数设置为α= 0.1。该方法在去噪时采用均匀分布,在混合失真时采用先验分布。具体地说,当一个图像区域被一种特定类型的失真所控制时,我们将其分配给一个具有更高概率的对应路径。更多细节见补充资料。两个培训阶段都要进行800k的迭代,批大小为32。学习速率是最初2×10−4和衰变一半后每季度的培训过程。我们使用Adam[20]作为优化器,并在TensorFlow上实现我们的方法。

 

4.1。盲高斯去噪方法的研究

定量和定性结果。盲高斯去噪的定量结果如表2所示。我们测试不同水平的高斯噪声,即、σ= 10、30、50。此外,我们还对两种具有类似于[44]中设置的空间变异高斯噪声进行了评估。其中“线性”表示高斯噪声水平从0到50从左到右逐渐增大

图像的侧面。另一种空间变异噪声,用“峰值”表示,满足二维高斯分布,噪声水平也在0 ~ 50之间。

如表2所示,Path-Restore能够达到近50%加速而DnCNN虽然噪音水平低(例如,σ= 10)。噪音水平高时(例如,σ= 50),Path-Restore过程所有地区使用更复杂的路径和实现类似的性能DnCNN略少的计算。平均来说,路径恢复比DnCNN快23%,同时在均匀高斯去噪上达到相同的性能。在空间变高斯去噪方面,PathRestore的性能与DnCNN相当

对不同的数据集和噪声类型加速24%-27%。DIV2K-T50的加速度略大于CBSD68,因为DIV2KT50中的高分辨率图像往往具有更平滑的区域,可以在短网络路径中恢复。空间变异(“峰”型)高斯去噪的几个定性结果如图3所示。虽然大多数恢复后的图像在视觉上是可以比较的,但是Path-Restore在一些纹理细粒度的区域可以取得更好的效果,对于Path-Restore来说,它可以选择更复杂的路径来处理纹理细节比较复杂的例子。

路径选择。我们首先在图4中可视化了均匀高斯去噪的路径选择。输入的噪声图像显示在第一行,下面是策略

p = 8×10−6和p = 5×10−6介绍了第二和第三行,分别。绿色代表一条短而简单的路径,红色代表一条长而复杂的路径。我们观察到奖励惩罚p越大,路径越短,因为探路者学会了避免选择奖励惩罚非常高的过于复杂的路径。尽管每个图像的噪声级别是一致的,但pathfinder可以学习依赖于图像内容的分派策略。例如,pathfinder专注于处理图像的主题(例如左图中的飞机和企鹅),同时将平滑的背景分配给简单的路径。空间变量(“线性”类型)高斯去噪调度策略如图5所示。随着噪声水平从左到右逐渐增大,所选路径变得越来越复杂。这表明探路者学习基于失真水平的调度策略。此外,在每条蓝色虚线上,噪声水平保持不变,但路径选择却非常多样化,再次说明pathfinder可以为平滑区域选择短路径,为纹理区域选择长路径。

 

4.2。混合失真评价

定量和定性结果。处理混合失真的定量结果如表3所示。我们第一次评估Path-Restore 63×63子图片DIV2K-T50 [42]。结果表明,路径恢复的性能与DnCNN和RLRestore相当,我们的方法比DnCNN快4倍以上,速度与RL-Restore相近。然后对DIV2KT50的2k分辨率图像进行实验。我们观察到路径恢复比DnCNN快近3倍,同时达到了相当的性能。与RL-Restore相比,我们的方法在复杂度相近的情况下,性能提高了0.2 dB。这些结果表明,与基线方法相比,路径恢复获得了更好的性能复杂性权衡。定性结果如图6所示。路径恢复和DnCNN的大多数结果在视觉上是可以比较的,而我们的方法倾向于在边缘生成较少的伪影。与RL-Restore相比,我们的结果具有较少的伪影,因为我们的路径选择是在单一的网络中进行的,因此恢复的结果在空间上更加一致。

路径选择。我们将在图7中显示路径选择的结果。选择的第2、第3和第4条路径的数量分别显示在红色、绿色和紫色的热图中。对于具有轻微噪声和压缩的模糊图像,pathfinder将几乎所有图像区域分配到第二路径,在第一训练阶段,第二路径比其他路径分配的图像更加模糊。平滑区域被路由到旁路路径,即使当模糊是严重的,因为模糊(没有其他类型的失真)不影响平滑区域的外观。对于噪声严重的图像,探路者会将大部分区域路由到第三条路径,当噪声水平较高时,即使是平滑区域也需要很长的路径来恢复。当多种失真并存时,路径选择既依赖于图像内容,也依赖于失真的组合。有趣的是,第4条路径在第一个训练阶段分配了许多JPEG图像,它经常在第一个动态块中被选中,而很少在连续块中被选中。也许探路者了解到在开始处理JPEG压缩是一种很好的恢复策略。

 

4.3。烧蚀研究

动态块的体系结构。我们研究每个动态块中的路径数。对于处理混合失真的任务,由于各种失真有3条路径和1条旁路连接,所以路径的数量最初设置为4条。如表4所示,我们也可以使用两条路径来处理相同的任务。可以观察到,当达到与原始设置相当的性能时,速度会下降。特别是DIV2K-T50数据集的子图像和整幅图像的速度比DnCNN基线分别下降了41%和26%。

Difficulty-Regulated奖励。奖励函数的选择影响绩效和路径选择策略。我们首先证明了在训练过程中通过调整奖励惩罚p可以实现性能复杂性的权衡。原来的设置是p = 8×10−6去噪任务,我们逐渐减少3×10−6 p。如图8所示,蓝色曲线描述了PSNR值和计算处理63×63(地区)都增加奖励惩罚会降低。这是合理的,因为较小的奖励惩罚鼓励探路者为每个区域选择较长的路径。我们还调整了DnCNN的深度,以达到PSNR与计算之间的平衡,如图8的绿色曲线所示。我们观察到,在相同的计算条件下,Path-Restore始终比DnCNN好0.1dB。在达到相同的性能时,我们的方法比DnCNN快了近30%。然后我们研究了“困难”对建议的奖励功能的影响。特别是,我们设置困难d≡1形成一个不受限制的奖励。如图8的橙色曲线所示,当我们减少奖励惩罚时,PSNR和计算量也会增加。然而,橙色曲线始终低于蓝色曲线,表明提出的困难调节奖励有助于路径恢复实现更好的性能复杂性权衡。我们在图9中进一步展示了不同奖励的路径选择策略。与非规则奖励相比,我们的困难规则奖励在处理容易区域(如红色框中的区域)时节省了更多的计算量,而使用较长的路径处理困难区域(如蓝色框中的区域)时节省了更多的计算量。

探路者的体系结构。我们根据经验选择了pathfinder中的卷积层数,即, 2层去噪,4层混合失真。我们试着交换他们的设置。, 4层去噪,2层混合失真。我们观察到,使用4层去噪效果大致相同,而使用2层去噪混合失真会导致路径选择策略的有效性降低。因此,我们需要大约10%的额外计算才能达到相同的性能。这一观察表明,当失真度越复杂时,探路者所需的开销越大。然而,路径选择的增益增加的比这个开销快,因为我们在混合失真中获得的加速度比去噪中更显著。

 

5. 结论

本文设计了一种计算量小的图像恢复新框架。受图像中不同区域的处理难度并不相同这一事实的启发,我们提出了路径恢复,允许为每个图像区域选择路径。具体来说,Path-Restore由一个多路径CNN和一个pathfinder组成。多路径CNN提供了多条路径来处理不同类型的失真,pathfinder能够找到有效恢复每个区域的最佳路径。为了学习一种合理的调度策略,我们提出了一种困难管理的奖励,鼓励寻路者为容易的区域选择较短的路径。路径恢复与静态深度网络相比,在各种恢复任务中的计算量要少得多。基于区域的路径选择的思想可以进一步应用到其他任务中,其中每个图像区域都应该得到不同的处理。

 

 

 

 

猜你喜欢

转载自blog.csdn.net/gwplovekimi/article/details/89047777