SRNHARB: A deep light-weight image super resolution network using hybrid activation residual blocks
(SRNHARB:一种基于混合激活残差块的深度轻量图像超分辨率网络)
在所有基于图像的应用中,特别是在计算机视觉应用中,图像的质量是非常关键的。因此,增强所获取图像的质量的轻量高性能图像超分辨率方案的设计对于这些应用的令人满意的功能是至关重要的。大多数图像超分辨率方案的设计都忽略了图像负值特征的提取和处理。本文提出了一种新的低权重残差块,它能有效地提取和处理正负值特征。这个新的残差块能够产生更丰富的特征集合,以便使用这样的块的集合来改进网络的超分辨率性能。使用新的残差块的网络被示出为产生上级现有的使用其他类型的残差块的轻量级超分辨率网络的性能。
介绍
图像的质量在许多应用程序中,如医疗诊断水下成像和自主车辆是非常重要的。然而,通过摄像机的图像退化的模糊和将采样操作。图像超分辨率,目的是提高质量的低分辨率图像通过增加其空间分辨率。图像超分辨率是一个不适定问题,因此,从理论上讲,对于一个给定的低分辨率图像,它有无数的高分辨率图像作为解决这一问题。
最初,图像超分辨率的问题已经用传统的信号处理方法解决。基于内插的算法是一种这样的方案,其中通过提出迭代多尺度算法来抑制由上采样操作产生的图像的高频区域周围的混叠伪影。在该算法的每一次迭代中,高分辨率图像的像素由从先前迭代获得的所有内插图像的最顶部纹理相关像素重构。在该算法中,用于确定最顶部纹理相关像素的搜索大小随着迭代的进行而减小,以便重建具有精细细节的区域。Jiang等人提出的方法是另一种基于插值的方案,其中通过对低分辨率图像进行双三次插值来获得高分辨率图像的低频内容,而通过使用Gabor空间中的特征距离的纹理合成方法来产生其高频内容。该方案还使用基于边缘的抗锯齿方法作为后处理步骤,以恢复被纹理合成方法损坏的高频分量。尽管传统的图像超分辨率方法已经以合理的计算复杂度提供了良好的结果,但是它们的性能能力受限于在这些方法中使用的手工特征的选择。然而,鉴于深度学习方法的数据驱动特征生成能力,它们在超分辨率性能方面表现出了显著的改进。基于深度神经网络的图像超分辨率方案使用低分辨率和高分辨率图像空间之间的端到端映射。深度网络存在的问题之一是它们遭受梯度消失问题,如果这个问题没有得到充分的处理,网络就不能被令人满意地训练,从而导致较差的性能。解决梯度消失问题最常用的机制是在深度网络中引入残差学习。存在两种类型的残差学习,全局残差学习和局部残差学习。在深度超分辨率神经网络中,通过使用退化的输入低分辨率图像和估计的输出高分辨率图像之间的长跳跃连接来建立全局残差学习。超分辨率网络VDSR和LapSRN是在其架构中仅采用全局残差学习的网络的示例。然而,结合全局残差学习使用局部残差学习进一步促进了网络的训练,并且导致甚至上级仅使用全局残差学习的网络所提供的性能。建立局部跳跃连接的网络的每一段被称为残差块。存在许多采用局部残差学习的超分辨率网络,它们在残差块的设计方面彼此不同。超分辨率网络EDSR是使用这种残差块的首要网络,每个残差块由通过ReLU激活分离的两个卷积层组成。网络RCAN采用所谓的残留信道注意块的级联,每个块由两个卷积层组成,其中第一卷积层之后是ReLU激活,第二卷积层之后是挤压和激励模块。挤压和激励模块根据其对超分辨率性能的影响对第二卷积层的输出的每个通道进行加权。
网络CARN使用所谓的增强残差块的级联。该网络中的剩余块由两个群卷积层组成,其中第一个群卷积层之后是ReLU激活,第二个群卷积层之后是ReLU激活和逐点卷积层。在增强的残差块的架构中使用组卷积运算导致在参数和运算的数量方面显著降低网络的复杂性。
图像超分辨率的任务本质上是低分辨率输入图像和地面真实图像之间的非线性映射。因此,在残差块中的两个卷积运算之间使用ReLU激活赋予网络必要的非线性。它还将特征图中包含的密集信息集分解为稀疏稳健信息集,因此简化了模型的学习过程。然而,由ReLU执行的特征校正导致丢失与负值特征相关联的信息,否则这些信息可能对图像超分辨率的任务有用。为了解决这个问题,可以采用允许负值特征通过的其他非线性激活,例如参数ReLU(PReLU)或ELU。即使使用PReLU或ELU也会带来稀疏性,但由这些激活产生的特征图并不像使用ReLU产生的特征图那样稀疏。即使使用PReLU或ELU也会带来稀疏性,但由这些激活产生的特征图并不像使用ReLU产生的特征图那样稀疏。本文提出了一种新的残差块,其中块输入的正、负值特征分别具有足够的稀疏性。具体地,通过分别使用ReLU以及反转和求反的ReLU激活,将到块的输入映射分解为正值特征和负值特征,并且通过群卷积在两个并行流中分别处理。因此,在这种处理特征图的机制中,各个流能够保持通过使用单个激活单元所提供的稀疏性,并且群卷积的使用允许控制由于处理正值和负值特征而不是仅处理正值特征所导致的计算复杂度的增加。
虽然采用大量参数并因此需要大量运算的深度超分辨率网络提供了非常高的性能,但是低功率和轻质的要求排除了它们在许多现实生活应用中的使用。另一方面,如果通过使用少量参数和消耗少量算术运算来将超分辨率网络设计为轻量的,则它可以用于许多现实生活应用,例如智能电话、机器人和智能车辆。在本文中,我们特别注意设计所提出的残差块,以生成丰富的特征图集,同时保持网络复杂度尽可能低。因此,采用所提出的残差块的超分辨率网络可以被部署到涉及低功率和轻量要求的许多情形。
相关工作
SRCNN是用于执行图像超分辨率任务的首要的基于神经网络的架构。该网络使用级联的三个卷积层,以便将内插的低分辨率图像映射到地面实况图像。该卷积神经网络是一个超轻量网络,但是其表示能力在提供令人满意的性能方面是有限的。
超分辨率网络DRRN使用残差块,残差块被递归地用于从低分辨率输入图像获得高质量超分辨率图像。考虑到重复地使用相同的参数集合,该网络能够消耗少量的参数来提供良好的性能。然而,网络所消耗的算术运算的数目仍然太高而不能用于需要低功率消耗的应用中。
受人类和哺乳动物大脑的记忆持久性特征的启发,网络MemNet采用记忆单元来完成图像超分辨率的任务。每个存储器单元在递归框架中使用残余块。使用逐点卷积运算将残差块在各种递归下的输出特征张量自适应地融合在一起,以便提供丰富的特征图集合。内存单元中剩余块的递归使用导致MemNet的算术运算数量显著增加。
方案IMDN、LatticeNet和A2F是通过采用少量参数和消耗少量算术运算来提供高的超分辨率性能的网络的示例。IMDN的超分辨率方案采用被称为渐进细化模块的残差块来执行图像超分辨率的任务。每个渐进细化模块由四个卷积层组成,其中每个卷积操作仅在其输入特征图的部分通道上执行。使用级联和逐点卷积操作来融合四个卷积操作的输出,以便产生块的残余特征。
Luo等人提出的LatticeNet通过使用格型滤波器的结构来构建残差块,称为网络块,用于图像超分辨率的任务。网格块通过将两组三个卷积层互连成网格结构而形成。这些网格块被示出为产生非常丰富的特征图集合,并且因此提供高的超分辨率性能。
Wang等人提出了注意辅助特征(A2F)的思想,并将其应用于图像超分辨率的任务中,开发了一种轻量级的高性能网络。在该网络中,在任何给定层,使用逐点卷积运算将其所有先前层的辅助特征图组合在一起。为了进一步增强组合辅助特征的丰富性,使用挤压和激励操作对它们进行信道关注。最后将注意辅助特征合并到残差块中。
Zhao等人提出了一种轻量级像素注意力网络(PAN)用于图像超分辨率的任务。PAN使用像素关注模块来加权在各个层级获得的特征。与分别产生用于加权特征图的一维和二维图的通道式关注度模块和空间关注度模块不同,像素关注度模块生成并使用三维权重图,即,单独地加权所提取的特征的每个值。利用这种加权特征的机制,PAN能够通过采用少量参数来提供高的超分辨率性能。
Guo等人提出的方案中,引入了一种新的超分辨网络,称为对偶回归网络(DRN)。DRN首先使用级联的残留通道关注块来将降级的低分辨率图像映射到地面实况图像。然后,对估计的高分辨率图像应用跨越卷积运算以将其映射到劣化的低分辨率图像。结果表明,使用二元回归网络可以提高超分辨性能。
Niu等人提出的方案中,引入了整体信道注意网络(HAN)来实现图像超分辨率。该网络将层注意模块应用于各个层次级别的特征地图,以抑制冗余特征并保留最有用的特征。HAN还采用通道式空间注意模块来基于特征的通道间和通道内依赖性来修改特征。结果表明,层注意和通道空间注意模块的使用提高了超分辨率性能。
方法
Proposed residual block
图1示出了所提出的残差块的架构。如从该图所见,𝐱首先使输入到残差块的特征张量经历卷积运算𝑊1,卷积运算使用64个滤波器,每个滤波器具有3 × 3的核大小,从而产生如下式给出的特征张量𝐮1
特征张量𝐮1然后同时通过ReLU以及反转和求反的ReLU激活,分别产生特征张量𝐮2和𝐮3,其由下式给出
从(2)可以看出,特征张量𝐮2和𝐮3分别包含的正值和负值特征𝐮1。因此,𝐮1中的信息被完全保留。特征张量𝐮2和𝐮3可以由卷积层单独处理。然而,这增加了残余块的复杂性。由于我们开发所提出的残差块的主要目的之一是以轻量级设计它,我们将群卷积𝑊2和𝑊3分别应用于特征张量𝐮2和𝐮3,产生特征张量𝐮4和𝐮5,如下式所示:
其中每组卷积运算𝑊2和𝑊3中的一个采用两组32个滤波器,每组具有3 × 3的核大小。由于在我们的群卷积中,卷积运算仅在一半输入通道上而不是在所有通道上执行,所以由所提出的残差块采用两个群卷积运算𝑊2和𝑊3的复杂度与采用使用64个滤波器的单个常规卷积运算的复杂度相同。接下来,特征张量𝐮4和𝐮5被连接,并且使所得到的特征张量经历逐点卷积运算𝑊4,从而产生残差特征张量:
其中逐点卷积运算𝑊4采用64个滤波器。最后,将残差特征张量𝐯与块的输入特征张量相加𝐱以获得其输出𝐲。
Network overall architecture
图2显示了所提出的图像超分辨率网络的总体架构。从该图中可以看出,在该网络中,低分辨率输入图像𝐗首先经历卷积运算,该卷积运算采用64个滤波器,每个滤波器具有3 × 3的核大小,从而产生特征图𝐔。接下来,使特征张量𝐔经历所提出的残差块的9个单元的级联的操作。每个残差块在不同的抽象层次生成一组特征图。因此,使用密集连接来融合各个残差块的输出导致由残差块生成丰富的特征集合。然而,在残差块之间使用密集连接增加了网络复杂度。为了通过使用密集连接来生成丰富的特征图集合并且同时保持网络复杂度低,我们在每个残差块之前放置使用64个滤波器的逐点卷积运算,以保持要由块处理的特征通道的数量低。从𝐕第9个残差块获得的输出特征张量被馈送到亚像素卷积层,并且其特征图的空间分辨率被增加到地面实况图像的空间分辨率。最后,𝐙使用3个滤波器(每个滤波器的核大小为3 × 3)对在亚像素卷积层的输出端获得的升级特征张量进行卷积运算,以获得𝐑地面真实图像与低分辨率输入图像的双线性插值版本之间的残差信号𝐁。
我们将图1的所提出的残差块称为混合激活残差块(HARB),因为它使用ReLU激活以及反转和求反的ReLU激活,并且将图2的所提出的超分辨率网络称为使用混合激活残差块的超分辨率网络(SRNHARB)。
Two-stage network training
为了训练我们的卷积神经网络,我们使用DIV2K数据集的图像。通过从该数据集的800张图像中提取大小为48 × 48的子图像,形成训练集的样本。
对于网络的训练,本文考虑了𝓁2范数、𝓁1范数和logcosh三个目标函数。图3显示了代表绝对值、平方值和误差的logcosh值表示估计的高分辨率值和像素的地面真实值之间的差𝑝。从该图可以清楚地看出,由于当𝑒(𝑝)的值小时,绝对函数的斜率大于其它两个函数中的任一个的斜率,因此可以预期使用𝓁1范数目标函数的网络训练将是最快的。然而,由于绝对值函数的梯度在𝑒(𝑝)= 0处不是连续函数,而其它两个函数的梯度是连续函数,因此可以预期,通过基于𝓁2范数或基于logcosh的目标函数可以实现最优解的更好收敛。针对这三个目标函数的特点,我们采用了分两部分训练SRNHARB的策略。最初,使用基于𝓁1范数的目标函数对SRNHARB的权重进行一定次数的迭代更新,然后,通过使用基于𝓁2范数或基于logcosh的目标函数对网络进行微调。优化过程采用随机梯度下降(SGD)技术进行。学习过程以0.1的步长开始,并且在每182,500次迭代之后以因子10减小。权重衰减参数的值为
1
0
−
4
10^{−4}
10−4,用于执行卷积运算。[20]的方法用于初始化卷积运算的参数。选择数值64作为批量。目标函数从基于𝓁1范数切换到基于𝓁2范数或基于logcosh的迭代次数是547,500,这是经验确定的数字。