图像复原 -----MIRNet

MIRNet是一种新型的深度学习模型,专门用于图像恢复和增强任务。通过多尺度残差块和选择性核融合机制,它能够在保持高分辨率细节的同时,获取丰富的上下文信息。网络的并行多分辨率卷积流和信息交换机制使其在图像去噪、超分辨率和增强方面表现出优越的性能。此外,双注意力单元进一步增强了模型在通道和空间维度的上下文捕获能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

系列文章目录


文章名称:Learning Enriched Features for Real ImageRestoration and Enhancement
文章地址:https://arxiv.org/abs/2003.0679
代码地址:https://github.com/swz30/MIRNet
发表时间:2020
应用领域:
核心模块:
补充材料:https://drive.google.com/file/d



Abstract

以从低分辨率(退化)图像中恢复出高质量图像内容为目标,图像恢复(Image Restoration)已经在众多领域得到广泛应用。现有的基于CNN的方法通常在全分辨率(full-resolution)或渐进式低分辨率(progressively low-resolution)上进行:
1.在full-resolution下虽然得到了良好的空间精确度(spatially precise),但是不能获得鲁棒性较好的上下文信息(context)
2.而在progressively low-resolution下,虽然在语义上可靠(semantically reliable)/得到好的上下文信息,但是在空间上并不太准确。那么在本文中,提出了一种新颖的结构,可以通过神经网络保持空间上精确的高分辨率表示;并从低分辨率表示中获取良好的上下文信息(strong contextual information)。网络的核心是包含几个关键元素的多尺度残差块(multi-scale residual block):(
(a)用于提取多尺度特征的并行多分辨率卷积流(parallel multi-resolution convolution streams)
(b)跨多分辨率流的信息交换
©用于捕捉上下文信息的空间和通道注意机制(spatial and channel attention mechanisms);
(d)基于注意机制的多尺度特征聚合(aggregation)。
简言之,MIRNet学习丰富的特征,结合了多个尺度的上下文信息的同时保持了高分辨率的细节,在图像去噪、超分辨率、图像增强任务上取得了极好的效果。

Itroduction

在图像采集时,经常会引入不同程度的退化(degradation),这可能是由于相机的物理因素限制,也可能是由于不合适的照明条件。因此常常会产生有噪点(noisy)和低对比度(low-contrast)的图像。近年来,深度学习模型在图像恢复和增强(image restoration and enhancement)方面取得重大进展,因为它可以从大规模数据集中学习到较强的前沿信息。现有的CNN通常遵循两种结构设计(这部分在Abstract里已经描述了,所以简单提一下,详细的可以参考原文):
(a)Encoder-Decoder:将输入逐步映射为低分辨率(下采样),然后再反向映射为原始分辨率(上采样),这种U-Net结构的模型能够充分学习上下文信息(broad context),但是缺点是下/上采样过程中难以将空间细节恢复回来;
(b)High-resolution(single-scale):不采用任何下采样操作,能够保持准确的空间细节,但是由于网络的感受野有限,在上下文信息获取方面的效率很低。

图像恢复重要的是清除不需要的退化图像内容(例如噪声),同时保持需要的空间细节(例如真实的纹理和边缘)。为了实现这一目标,本文提出了一种新的多尺度方法,该方法保持住原始高分辨率特征,减少了精确的空间细节损失;同时使用并行卷积流在较低分辨率下获取上下文特征,多分辨率并行分支与主要高分辨率分支进行信息交换和互补,从而提供了空间细节精确而又上下文信息丰富的特征。

文中提出的方法与现有的多尺度图像处理方法的主要区别在于聚合上下文信息(aggregate contextual infomation)的方式。已有的方法通常分别(in isolation)处理各个尺度,并仅以从上向下的方式交换信息。相反,作者在各个分辨率上将所有尺度的信息逐步融合,从而有了自下而上和自上而下的信息交换;同时,使用提出的选择性核融合机制(selective kernel fusion mechanism),结合了具有不同感受野的特征。
本文的主要贡献包括:

  • 提出了一种新型的特征提取模型(feature extraction model),可以在多尺度上提取互补的特征,同时保持原有的高分辨率特征以保留精确的空间细节。
  • 提出定期重复的信息交换机制,将跨分辨率分支的特征逐渐融合在一起。
  • 提出一种选择性核网络融合多尺度特征的方法,结合可变的感受野(receptive fields),在每个空间分辨率下保持原始特征信息。
  • 递归残差设计(recursive residual design)简化了整体学习过程,允许构建更深的网络。
  • 在5个真实图像基准数据集上进行试验,分别进行图像去噪、超分辨率、图像增强任务,均达到SOTA(state-of-the-art)的水平。

Proposed Methos

首先概述提出的MIRNet,再对各部分细节进行详细的描述。MIRNet主要包括以下几个部分:

并行的多分辨率卷积流,用于提取(fine-to-coarse)从语义上更丰富和(coarse-to-fine)空间上精确的特征;
跨多分辨率流的信息交换;
来自多个流的特征基于注意机制的聚合(aggregation);
对偶注意单元(dual-attention units)用于捕获空间和通道维度的上下文信息;
残差大小调整模块,执行下采样和上采样操作。
在这里插入图片描述
从上图可以看出,MIRNet主要是由多层RRG(Recursive Residual Group)堆叠而成的,而每个RRG内又包括多个MRB(Multi-scale Residual Block)模块,每个MRB展开后,内部有DAU(Dual Attention Unit)、SKFF(Selective Kernel Feature Fusion)等模块。整个网络的流水线(Pipeline)可以概述为:输入一张图片 I ∈ R H × W × 3 I\in\mathcal{R}^{H\times W\times3} IRH×W×3,首先经过一个Conv层提取低级特征 X 0 ∈ R H × W × C X_{0}\in{\mathcal{R}}^{H\times W\times C} X0RH×W×C,接下来特征图 X 0 X_0 X0经过N层RRG后得到深层特征 X d ∈ R H × W × C X_{d}\in R^{H\times W\times C} XdRH×W×C,再通过一个Conv层获得残差图 R ∈ R H × W × 3 R\in{\mathcal{R}}^{H\times W\times3} RRH×W×3。最后通过 I ^ = I + R \hat{I}=I+R I^=I+R获得重建的图像。使用Charbonnier loss对网络进行优化 L ( I ^ , I ∗ ) = ∣ ∣ I ^ − I ∗ ∣ ∣ 2 + ϵ 2 \mathcal{L}(\hat{I},I^*)=\sqrt{||\hat{I}-I^*||^2+\epsilon^2} L(I^,I)=∣∣I^I2+ϵ2 ,其中, I ∗ I^{\ast} I表示ground-truth image, ϵ \epsilon ϵ是一个常数,文中各实验中均取为 1 0 − 3 10^{-3} 103.

Multi-scale Residual Block(MRB)

为了对上下文进行encode,现有的CNN通常采用以下的架构设计:(a)神经元的感受野(receptive field)在每个层/阶段都是固定的;(b)特征图的空间大小逐渐减小以获得较强的低分辨率表示;©从低分辨率中逐渐恢复出高分辨率表示。但是众所周知,灵长类动物的视觉皮层中,同一区域的神经元的局部感受野的大小是不同的,在本文中,提出了多尺度残差块(MRB),通过保持高分辨率表示而生成空间精确的输出,同时从低分辨率接收丰富的上下文信息,文中的MRB包括并行连接的的多个(3个)卷积流。它允许跨并行卷积流进行信息交换,以便在低分辨率特征的帮助下合并高分辨率特征。

Selective kernel feature fusion(SKFF)

视觉皮层中的神经元的基本特征之一是能够根据刺激(stimulus)改变感受野,通过在同一层中使用多尺度特征生成(multi-scale feature generation),然后进行特征聚合和选择(feature aggregation and selection),可以将这种自适应调整感受野的机制并入CNN中。特征聚合最常用的方法包括简单的串联(concatenation)或加和(summation),然而这些选择只能为网络提供有限的表达能力,在MRB中,引入了一种利用自注意机制对多种分辨率的融合特征进行非线性处理的过程,将其称为选择性核特征融合(SKFF)

SKFF模块通过FuseSelect两个操作对感受野进行动态调整,如上图所示。**Fuse通过组合来自多分辨率流的信息来生成全局特征描述子(global feature descriptors),Select使用这些描述子对特征图进行重新校准并进行聚合。**针对本文中的三个分支流:

Fuse:

从三个并行卷积流接收输入,首先按元素求和的方式将多尺度特征组合在一起: L = L 1 + L 2 + L 3 L=L_1+L_2+L_3 L=L1+L2+L3, L ∈ R H × W × C L\in\mathcal{R}^{H\times W\times C} LRH×W×C维度上使用全局平均池化(GAP)计算channel-wise statistics s ∈ R 1 × 1 × C s\in\mathcal{R}^{1\times1\times C} sR1×1×C。接下来使用channel-downscaling Conv层生成紧致的特征表示 z ∈ R 1 × 1 × r z\in\mathcal{R}^{1\times1\times r} zR1×1×r。其中, r = C 8 r=\frac{C}{8} r=8C,最后特征向量 z 穿过三个并行通道上采样层,为我们提供三个特征描述子 v 1 , v 2 , v 3 ∈ R 1 × 1 × C v_{1},v_{2},v_{3}\in{\mathcal{R}}^{1\times1\times C} v1,v2,v3R1×1×C

Select:

v 1 , v 2 , v 3 v_{1},v_{2},v_{3} v1,v2,v3使用Softmax函数,生成attention activations s 1 , s 2 , s 3 s_{1},s_{2},s_{3} s1,s2,s3,用于自适应地重新校准多尺度特征图 V 1 , V 2 , V 3 V_{1},V_{2},V_{3} V1,V2,V3,特征重新校准和聚合的过程定义为: U = s 1 ⋅ L 1 + s 2 ⋅ L 2 + s 3 ⋅ L 3 . U=s_1\cdot L_1+s_2\cdot L_2+s_3\cdot L_3. U=s1L1+s2L2+s3L3.。SKFF使用的参数要比使用串联地聚合的参数少6倍,但能产生更好的效果。

Dual attention unit(DAU)

SKFF模块可以在多分辨率分支上融合信息,那么还需要一种在空间和通道维度上与特征张量进行信息共享的机制,此处作者提出了对偶注意力单元(dual attention unit,DAU)用来提取卷积流中的特征。DAU抑制作用较弱的特征,而仅允许带有更多信息的特征继续传递,DAU由CA(channel attention)和SA(spatial attention)两部分组成。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
将上面的两图对比看,可以看出两个模块基本上完全一致,DAU(DAB)的确是该团队提出的网络中的关键模块,在CycleISP中并没有对CA和SA两个模块进行十分详细的描述,在本文中则着重讲了一下(这里推荐结合CycleISP以及SA和CA两篇参考文章一起学习):

Channel attention(CA):

通过squeeze和excitation操作来利用卷积特征图通道间的关系。给定一个特征图 M ∈ R H × W × C M\in\mathcal{R}^{H\times W\times C} MRH×W×C,squeeze操作使用global average pooling对全局上下文进行encode,从而产生一个特征描述子 d ∈ R 1 × 1 × C d\in\mathcal{R}^{1\times1\times C} dR1×1×Cexcitation操作将 d d d传递过两个Conv层,紧跟着一个sigmoid gate,生成激励 d ^ ∈ R 1 × 1 × C \hat{d}\in\mathcal{R}^{1\times1\times C} d^R1×1×C,最后根据 d d d rescaling M M M,得到CA分支的输出。

Spatial attention(SA):

旨在利用卷积特征图的空间依赖性,SA的目标是生成空间注意图,并使用它来重新校准传入的特征 M M M ,SA首先在通道尺度上对特征 M M M应用global average pooling和max pooling操作,将输出连接起来形成特征图 f ∈ R H × W × 2 f\in\mathcal{R}^{H\times W\times2} fRH×W×2,将 f f f传递过一个Conv层和sigmoid activation,得到空间注意图 f ^ ∈ R H × W × 1 \hat{f}\in\mathcal{R}^{H\times W\times1} f^RH×W×1,并根据它对 M M M进行rescale。

Residual resizing modules

MIRNet采用递归残差设计(recursive residual design)具有skip connections,可以简化学习过程中的信息流,为了保持结构中的残差性质(residual nature),引入了残差大小调整模块(residual resizing modules)来进行下采样和上采样。
在这里插入图片描述
在MRB中,特征图的大小沿卷积流保持不变,而跨流方向,特征图的大小根据输入分辨率索引和输出分辨率索引进行变化(下采样或上采样),执行2倍下采样则将上图中的下采样模块应用一次,对于4倍下采样,则将该模块连续使用两次,上采样也是类似的操作。在上图中,作者集成了抗混叠下采样(anti-aliasing downsampling)来改善平移方差(shift-equivariance)。

Experiment

Real Image Datasets

Image denoising:
(1)DND:由于不包含训练和验证集,所以50张图均用于test;
(2)SIDD:320个图像对用于train,1280个图像对用于validation。

Implementation Details

提出的网络是end-to-end可训练的,不需要预训练子模块,作者使用了3个RRG,每个RRG还包含2个MRB,每个MRB由3个并行卷积流组成,通道维度为64、128、256,分辨率的scale factors分别为1、1/2 、1/4,每个流中有2个DAU,使用Adam Optimizer( β 1 = 0.9 , β 2 = 0.999 ) \beta_1=0.9,\beta_2=0.999) β1=0.9,β2=0.999)),迭代 7 × 1 0 5 7\times10^{5} 7×105次,初始学习率为 2 × 1 0 − 4 2\times10^{-4} 2×104,采用余弦退火(cosine annealing strategy)来稳定降低学习率。

对比试验

在这里插入图片描述
在这里插入图片描述
不难看出,MIRNet的确表现优异,在PSNR、SSIM数值上和视觉效果上,超过了RIDNet、VDN等算法,达到SOTA级别的效果。

此外,文章中在三个应用领域部分分别提及了模型的泛化能力(generalization),这里也只做一个综述:去噪方面,SIDD和DND数据集中的图片有着不同特征的噪声,而训练时仅使用SIDD训练集,模型在SIDD和DND测试集上均表现良好,证明了MIRNet良好的泛化能力;超分辨率方面,使用Canon和Nikon两种相机的图片进行了一个交叉实验,验证了MIRNet的泛化能力较强。
在这里插入图片描述

Ablation Studies

由于投稿篇幅的限制,有一部分消融实验(Ablation studies)的数据被放在了补充材料中,这部分,作者主要验证了使用的Skip connections、DAU、SKFF、residual resizing modules等模块的必要性,对性能的提升,以及内部结构的选择,在这里主要选取一部分结果图即可。
在这里插入图片描述
在这里插入图片描述

Conclusion

在本文中,作者团队提出了一种新颖的网络结构,主要分支致力于全分辨率处理,而互补的并行分支则提供了良好的上下文特征,网络学习每个分支以及跨多尺度分支的特征间的关系,在确保不牺牲原始特征细节的情况下动态调整感受野,进行特征融合,在图像去噪、超分辨率、图像增强三个任务,五个数据集上均表现优异

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值