请先看【专栏介绍文章】:【图像去噪(Image Denoising)】关于【图像去噪】专栏的相关说明,包含适配人群、专栏简介、专栏亮点、阅读方法、定价理由、品质承诺、关于更新、去噪概述、文章目录、资料汇总、问题汇总(更新中)
文章目录
- 前言
- Abstract
- 1. Introduction
- 2. Related work
- 2.1. Image denoising
- 2.2. Single image super-resolution
- 2.3. JPEG image artifacts removal
- 2.4. Other restoration tasks
- 3. Method
- 3.1. From multi-level WPT to MWCNN
- 3.2. Network architecture
- 3.3. Discussion
- 4. Experiments
- 4.1. Experimental setting
- 4.1.1 Training set
- 4.1.2 Network training
- 4.2. Quantitative and qualitative evaluation
- 4.2.1 Image denoising
- 4.2.2 Single image super-resolution
- 4.2.3 JPEG image artifacts removal
- 4.2.4 Run time
- 4.3. Comparison of MWCNN variants
- 5. Conclusion
前言
论文题目:Multi-level Wavelet-CNN for Image Restoration —— 用于图像恢复的多级小波CNN
论文地址:Multi-level Wavelet-CNN for Image Restoration
论文源码:https://github.com/lpj0/MWCNN
CVPR 2018!
Abstract
感受野大小和效率之间的权衡是低级视觉中的关键问题。普通卷积网络 (CNN) 通常以计算成本为代价来扩大感受野。最近,已经采用扩张过滤来解决这个问题。但它受到网格效应的影响,由此产生的感受野只是具有棋盘图案的输入图像的稀疏采样。在本文中,我们提出了一种新颖的多级小波 CNN (MWCNN) 模型,以更好地权衡感受野大小和计算效率。通过改进的U-Net架构,引入小波变换来减少收缩子网络中特征映射的大小。此外,进一步使用另一个卷积层来减少特征图的通道。在扩展子网络中,然后部署逆小波变换来重建高分辨率特征图。我们的 MWCNN 也可以解释为扩张过滤和子采样的泛化,可以应用于许多图像恢复任务。实验结果表明,MWCNN在图像去噪、单幅图像超分辨率和JPEG图像伪影去除方面的有效性。
摘要总览:膨胀卷积产生的感受野是稀疏的,本文提出的MWCNN使用小波变换平衡感受野大小(感受野扩大)和计算效率,U-Net架构。
1. Introduction
图像恢复旨在从退化的观测y中恢复潜在的干净图像x,是低级视觉中一个基本而长期存在的问题。几十年来,人们提出了各种从先验建模和判别学习角度进行图像恢复的方法[6,27,10,11,17,44,52]。最近,卷积神经网络(CNNs)也得到了广泛的研究,并在单幅图像超分辨率(SISR)[16,29,32]、图像去噪[57]、图像去模糊[58]和有损图像恢复任务中取得了最先进的性能。CNN在图像恢复中的受欢迎程度可以从两个方面解释。一方面,现有的基于 CNN 的解决方案在图像去噪和 SISR [16, 29, 32, 57] 等几个简单任务中大大优于其他方法。另一方面,最近的研究表明,可以将基于cnn的降噪器插入到基于模型的优化方法中,以解决更复杂的图像恢复任务[40,58],这也促进了cnn的广泛使用。
对于图像恢复,CNN 实际上表示从退化观察到潜在干净图像的映射。由于输入和输出图像通常应该具有相同的大小,一种具有代表性的策略是通过删除池化层来使用全卷积网络 (FCN)。一般来说,通过考虑更多的空间上下文,更大的感受野有助于恢复性能。然而,对于没有池化的 FCN,可以通过增加网络深度或使用更大尺寸的滤波器来扩大感受野大小,这无疑会导致更高的计算成本。在[58]中,扩张滤波[55]用于在不牺牲计算成本的情况下扩大感受野。然而,扩张滤波本质上受到网格效应[50]的影响,其中感受野只考虑具有棋盘图案的输入图像的稀疏采样。因此,应该小心扩大感受野,同时避免计算负担的增加和性能改进的潜在牺牲。以SISR为例,图1说明了几种具有代表性的CNN模型的接受域、运行时间和PSNR值。可以看出,FSRCNN[14]的感受野相对较大,但PSNR值低于VDSR[29]和DnCNN[57]。
在本文中,我们提出了一种多级小波 CNN (MWCNN) 模型来扩大感受野,以更好地权衡性能和效率。我们的 MWCNN 基于由收缩子网络和扩展子网络组成的 U-Net [41] 架构。在收缩子网络中,引入离散小波变换(DWT)来代替每个池化操作。由于 DWT 是可逆的,因此可以保证所有信息都可以通过这种下采样方案保留。此外,DWT 可以捕获特征图的频率和位置信息 [12, 13],这可能有助于保留详细的纹理。在扩展子网络中,利用逆小波变换(IWT)将低分辨率特征图上采样到高分辨率特征图。为了丰富特征表示并减少计算负担,采用元素求和来组合收缩子网络和扩展子网络的特征图。此外,扩张过滤也可以解释为 MWCNN 的一个特例,我们的方法在扩大感受野方面更通用和更有效。图像去噪、SISR 和 JPEG 图像伪影去除的实验验证了我们的 MWCNN 的有效性和效率。如图 1 所示,MWCNN 在运行时比 LapSRN [31]、DnCNN [57] 和 VDSR [29] 慢适度,但具有更大的感受野和更高的 PSNR 值。综上所述,这项工作的贡献包括:
- 一种新的MWCNN模型,以更好地权衡效率和恢复性能。
- 由于DWT良好的时频定位,有希望的细节保持能力。
- 图像去噪、SISR和JPEG图像伪影去除的最新性能。
工作介绍:下采样使用离散小波变换(discrete wavelet transform,DWT),上采样使用逆小波变换(inverse wavelet transform,IWT)。接下来看看MWCNN具体是如何构建的吧。
2. Related work
在本节中,我们简要回顾了cnn在图像去噪、SISR、JPEG图像伪影去除和其他图像恢复任务方面的发展。具体来说,关于扩大感受野并在 CNN 中结合 DWT 的相关研究的更多讨论。
2.1. Image denoising
自 2009 年以来,CNN 已应用于图像去噪 [25]。这些早期的方法通常无法达到最先进的去噪性能[2,25,53]。最近,采用多层感知(MLP)学习从噪声patch到干净像素的映射,实现了与BM3D[8]相当的性能。通过将残差学习与批处理归一化[24]相结合,Zhang等人[57]的DnCNN模型可以优于传统的基于非cnn的方法。毛等人[37] 建议在 FCN 中添加对称跳跃连接以提高去噪性能。为了更好地权衡速度和性能,Zhang等人[58]提出了一种具有扩张滤波的7层FCN。Santhanam等人[43]引入了一个递归分支反卷积网络(RBDN),其中采用池化/取消池化来获得和聚合多上下文表示。
2.2. Single image super-resolution
CNN 在 SISR 中的应用始于 SRCNN [16],它采用 3 层 FCN 而不进行池化,感受野很小。随后,还提出了非常深的网络 [29]、残差单元 [32]、拉普拉斯金字塔 [31] 和递归架构 [28,47] 来扩大感受野。然而,这些方法以增加计算成本或信息丢失为代价来扩大感受野。由于SISR的特殊性,一种有效的方法是将低分辨率(LR)图像作为CNN的输入[14,45],以更好地权衡接收野的大小和效率。此外,还引入了生成对抗网络(GANs)来提高SISR的视觉质量[26,32,42]。
2.3. JPEG image artifacts removal
由于压缩率高,JPEG图像通常会受到阻塞效应的影响,导致视觉质量不快。在[15]中,Dong等人采用4层ARCNN进行JPEG图像去块。Guo等人[18]考虑了JPEG压缩的退化模型[10,51],提出了一种双域卷积网络,将DCT和像素域中的先验结合起来。GAN 也被引入以生成更真实的结果 [19]。
2.4. Other restoration tasks
由于图像去噪、SISR 和 JPEG 伪影去除的相似性,通过再训练,可以为一项任务提出的模型可以很容易地扩展到其他任务。例如,DnCNN[57]和MemNet[48]都在所有三个任务上都进行了评估。此外,CNN去噪器还可以作为一种即插即用的先验。通过与展开推理相结合,可以通过顺序应用CNN去噪器[58]来解决任何恢复任务。Romano等人[40]通过去噪框架进一步提出了一种正则化,并为定义去噪器诱导的正则化提供了一个明确的功能。这些方法不仅促进了CNN在低级视觉中的应用,而且提出了许多解决方案来利用CNN去噪器进行其他图像恢复任务。
还研究了将小波变换与 CNN 相结合的研究。Bae等人[5]发现,在小波子带上学习CNN有利于CNN的学习,提出了一种用于图像去噪和SISR的小波残差网络(WavResNet)。同样,Guo等人[20]提出了一种深度小波超分辨率(DWSR)方法来恢复子带的缺失细节。随后,开发了深度卷积框架[21,54]来扩展低剂量CT的卷积框架。然而,WavResNet和DWSR都只考虑一级小波分解。深度卷积帧独立地从分解的角度处理每个子带,忽略了这些子带之间的依赖关系。相比之下,我们的 MWCNN 考虑了多级小波变换,以在没有信息丢失的情况下扩大感受野。在每个变换后将所有子带作为输入,我们的 MWCNN 可以将 DWT 嵌入到任何具有池化的 CNN 中,并拥有更多能力来对空间上下文和子带间依赖性进行建模。
3. Method
在本节中,我们首先介绍多级小波包变换(WPT)。然后我们介绍了由多级WPT驱动的MWCNN,并描述了它的网络架构。最后,给出了讨论来分析 MWCNN 与扩张过滤和子采样的联系。
3.1. From multi-level WPT to MWCNN
在 2D 离散小波变换 (DWT) 中,使用四个滤波器,即 f L L 、 f L H 、 f H L f_{LL}、f_{LH}、f_{HL} fLL、fLH、fHL 和 f H H f_{HH} fHH 与图像 x [36] 进行卷积。然后对卷积结果进行下采样,得到四个子带图像 x 1 、 x 2 、 x 3 x_1、x_2、x_3 x1、x2、x3和 x 4 x_4 x4。例如, x 1 x_1 x1定义为 ( f L L ⊗ x ) ↓ 2 (f_{LL}⊗x)↓2 (fLL⊗x)↓2。即使部署了下采样操作,由于DWT的双正交特性,通过逆小波变换(IWT)可以准确地重建原始图像x,即 x = I W T ( x 1 , x 2 , x 3 , x 4 ) x=IWT(x_1,x_2,x_3,x_4) x=IWT(x1,x2,x3,x4)。
在多级小波包变换(WPT)[4,13]中,利用DWT进一步处理子带图像
x
1
、
x
2
、
x
3
x_1、x_2、x_3
x1、x2、x3和
x
4
x_4
x4,得到分解结果。对于两级WPT,每个子带图像
x
i
x_i
xi (i = 1,2,3或4)被分解为四个子带图像
x
i
,
1
,
x
i
,
2
,
x
i
,
3
x_{i,1}, x_{i,2}, x_{i,3}
xi,1,xi,2,xi,3和
x
i
,
4
x_{i,4}
xi,4。递归,可以得到三个或更高级WPT的结果。图2(a)用WPT说明了图像的分解和重建。实际上,WPT是FCN的一个特例,没有非线性层。在分解阶段,将四个预定义的滤波器部署到每个(子带)图像中,下采样然后采用池化算子。在重建阶段,首先对四个子带图像进行上采样,然后与相应的滤波器进行卷积,生成当前级别的重建结果。最后,通过逆WPT可以准确地重建原始图像x。
在图像去噪和压缩中,通常需要一些操作,例如软阈值和量化来处理分解结果[9,33]。这些操作可以被视为针对特定任务量身定制的某种非线性。在这项工作中,我们通过在任意两个DWT级别之间添加一个CNN块,进一步将WPT扩展到多级小波CNN (MWCNN),如图2(b)所示。在每个级别的转换之后,所有子带图像都被视为 CNN 块的输入,以学习紧凑的表示作为后续转换级别的输入。很明显,MWCNN 是多级 WPT 的推广,当每个 CNN 块成为恒等映射时,它退化为 WPT。由于WPT的双正交特性,我们的MWCNN可以在没有信息丢失的情况下安全地使用子采样操作。此外,与传统的CNN相比,DWT的频率和位置特征也有望有利于细节纹理的保存。
将多级小波包变换(multi-level wavelet packet transform,WPT)应用到CNN中:根据图2a,WPT的过程为:输入通过DWT下采样分成四个feature map,每个feature map再通过DWT一分四,再通过两个IWT上采样回去得到输出,由于DWT的双正交特性,IWT可以准确重建图像。将WPT扩展到CNN中就是在每一级的DWT和IWT中间增加一个卷积块,卷积块的具体结构见下一节。
3.2. Network architecture
我们的MWCNN架构的关键是在DWT的每一层之后设计CNN块。如图 3 所示,每个 CNN 块都是一个没有池化的 4 层 FCN,并将所有子带图像作为输入。相比之下,在深度卷积帧[21,54]中,不同的cnn被部署到低频和高频波段。我们注意到DWT后的子带图像仍然是依赖的,对它们的依赖性的无知可能对恢复性能有害。CNN块的每一层都由3 × 3滤波器(Conv)、批处理归一化(BN)和整流线性单元(ReLU)操作的卷积组成。至于最后一个 CNN 块的最后一层,采用没有 BN 和 ReLU 的 Conv 来预测残差图像。
图3。多级小波-CNN架构。它由两部分组成:收缩子网络和扩展子网络。每个实心框对应一个多通道特征图。并且通道数在框的顶部进行注释。网络深度为 24。此外,我们的 MWCNN 可以通过复制第 3 层子网络的配置进一步扩展到更高级别的(例如,≥ 4)。
CNN块:四个3×3Conv+BN+ReLU,最后一个卷积块的最后一层只有Conv。整个网络深度为24。
图 3 显示了 MWCNN 的整体架构,它由一个收缩子网络和一个扩展子网络组成。一般来说,MWCNN 从三个方面修改了 U-Net。(i) 对于下采样和上采样,最大池化和上卷积用于传统的U-Net[41],而MWCNN采用DWT和IWT。(ii) 对于 MWCNN,下采样导致特征图通道的增加。除了第一个之外,还部署了其他 CNN 块来减少特征图通道以进行紧凑表示。相比之下,对于传统的UNet,下采样对特征图通道没有影响,随后的卷积层用于增加特征图通道。(iii) 在 MWCNN 中,元素求和用于将收缩子网络和扩展子网络的特征图结合起来。虽然在传统的 U-Net 连接中采用了。然后我们的最终网络包含 24 层。有关 MWCNN 设置的更多详细信息,请参见图 3。在我们的实现中,采用 Haar 小波作为 MWCNN 中的默认值。在我们的实验中也考虑了其他小波,例如 Daubechies 2 (DB2)。
网络结构:整个网络深度为24。特点为:1. DWT替代传统下采样(池化)IWT替代传统上采样(上采样卷积结构);2. 衔接处加入卷积块减少前面增加的feature map通道,目的应该是增加特征表示;3. 两边用逐个元素求和连接(DWT后CNN块的末尾和IWT后CNN块的起始)。
用 Θ 表示 MWCNN 的网络参数,F (y; Θ) 是网络输出。设{(yi, xi)}N i=1是一个训练集,其中yi是第i个输入图像,xi是对应的地面真实图像。学习 MWCNN 的目标函数由下式给出
L
(
Θ
)
=
1
2
N
∑
i
=
1
N
∥
F
(
y
i
;
Θ
)
−
x
i
∥
F
2
(1)
\mathcal{L}(\Theta)=\frac{1}{2 N} \sum_{i=1}^{N}\left\|F\left(\mathbf{y}_{i} ; \Theta\right)-\mathbf{x}_{i}\right\|_{F}^{2}\tag{1}
L(Θ)=2N1i=1∑N∥F(yi;Θ)−xi∥F2(1)
采用ADAM算法[30]通过最小化目标函数来训练MWCNN。与 VDSR [29] 和 DnCNN [57] 不同,我们没有采用残差学习公式,因为它可以自然地嵌入到 MWCNN 中。
损失函数:形式同DnCNN,但没有残差学习。输出-GT,学习的还是噪声。
3.3. Discussion
MWCNN 中的 DWT 与池化操作和扩张滤波密切相关。以Haar小波为例,我们解释了DWT和sum-pooling之间的联系。在2D Haar小波中,低通滤波器
f
L
L
f_{LL}
fLL定义为:
f
L
L
=
[
1
1
1
1
]
(2)
\mathbf{f}_{L L}=\left[\begin{array}{ll} 1 & 1 \\ 1 & 1 \end{array}\right]\tag{2}
fLL=[1111](2)
我们可以看到 (fLL ⊗ x) ↓2 实际上是求和池化操作。当只考虑低频子带时,DWT 和 IWT 将分别在 MWCNN 中起到池化和上卷积的作用。当考虑所有子带时,MWCNN 可以避免传统子采样引起的信息丢失,并可能有利于恢复结果。
为了说明MWCNN与因子2的扩张滤波之间的联系,我们首先给出
f
L
H
、
f
H
L
f_{LH}、f_{HL}
fLH、fHL和
f
H
H
f_{HH}
fHH的定义,
f
L
H
=
[
−
1
−
1
1
1
]
,
f
H
L
=
[
−
1
1
−
1
1
]
,
f
H
H
=
[
1
−
1
−
1
1
]
(3)
\mathbf{f}_{L H}=\left[\begin{array}{cc} -1 & -1 \\ 1 & 1 \end{array}\right], \mathbf{f}_{H L}=\left[\begin{array}{ll} -1 & 1 \\ -1 & 1 \end{array}\right], \mathbf{f}_{H H}=\left[\begin{array}{cc} 1 & -1 \\ -1 & 1 \end{array}\right]\tag{3}
fLH=[−11−11],fHL=[−1−111],fHH=[1−1−11](3)
给定一个大小为 m × n 的图像 x,二维 Haar 变换后 x1 的第 (i, j) 值可以写为 x1(i, j) =x(2i − 1, 2j − 1) + x(2i − 1, 2j) + x(2i, 2j − 1) +x(2i, 2j)。x2(i, j)、x3(i, j) 和 x4(i, j) 可以类似地定义。我们还有 x(2i − 1, 2j − 1) = (x1(i, j)− x2(i, j)− x3(i, j) + x4(i, j)) /4。 x 位置 (2i − 1, 2j − 1) 上因子 2 的扩张滤波可以写成
(
x
⊗
2
k
)
(
2
i
−
1
,
2
j
−
1
)
=
∑
p
+
2
s
=
2
i
−
1
q
+
2
t
=
2
j
−
1
x
(
p
,
q
)
k
(
s
,
t
)
(4)
\left(\mathbf{x} \otimes_{2} \mathbf{k}\right)(2 i-1,2 j-1)=\sum_{\substack{p+2 s=2 i-1 \\ q+2 t=2 j-1}} \mathbf{x}(p, q) \mathbf{k}(s, t)\tag{4}
(x⊗2k)(2i−1,2j−1)=p+2s=2i−1q+2t=2j−1∑x(p,q)k(s,t)(4)
其中 k 是 3×3 卷积核。实际上,也可以通过使用3×3卷积与子带图像来获得,
(
x
⊗
2
k
)
(
2
i
−
1
,
2
j
−
1
)
=
(
(
x
1
−
x
2
−
x
3
+
x
4
)
⊗
k
)
(
i
,
j
)
/
4
(5)
\left(\mathrm{x} \otimes_{2} \mathbf{k}\right)(2 i-1,2 j-1)=\left(\left(\mathbf{x}_{1}-\mathrm{x}_{2}-\mathrm{x}_{3}+\mathrm{x}_{4}\right) \otimes \mathbf{k}\right)(i, j) / 4\tag{5}
(x⊗2k)(2i−1,2j−1)=((x1−x2−x3+x4)⊗k)(i,j)/4(5)
类似地,我们可以分析 (x ⊗2 k)(2i − 1, 2j),(x ⊗2 k)(2i, 2j − 1), (x ⊗2 k)(2i, 2j) 的扩张过滤和 MWCNN 之间的联系。因此,x 上的 3 × 3 扩张卷积可以看作是子带图像上 4 × 3 × 3 卷积的特例。
与扩张滤波相比,MWCNN 还可以避免网格效应。经过几层扩张滤波后,只考虑棋盘图案位置的稀疏采样,导致大部分信息丢失(见图4(a))。扩张滤波的另一个问题是,两个相邻像素可能基于完全不重叠的位置的信息(见图 4(b)),并可能导致局部信息的不一致。相比之下,图 4© 说明了 MWCNN 的感受野。可以看出,MWCNN能够很好地解决局部信息的稀疏采样和不一致性,有望在定量和定性上有利于恢复性能。
图4。网格效应的说明。以 3 层 CNN 为例:(a)因子 2 的扩张滤波大部分信息丢失,(b)和两个相邻像素基于完全非重叠位置的信息,(c),而我们的 MWCNN 可以完美地避免潜在的缺点。
讨论:根据图4,MWCNN可以避免膨胀卷积信息丢失问题。
4. Experiments
对图像去噪、SISR和压缩伪影去除三个任务的性能评估进行了实验。还给出了几种MWCNN变体的比较来分析每个组件的贡献。代码和预训练模型将在 https://github.com/lpj0/MWCNN 给出。
4.1. Experimental setting
4.1.1 Training set
为了训练我们的 MWCNN,通过使用来自三个数据集的图像来构建大型训练集,即伯克利分割数据集 (BSD) [38]、DIV2K [3] 和滑铁卢探索数据库 (WED) [35]。具体来说,我们从 BSD、DIV2K 的 800 张图像和来自 WED 的 4, 744 张图像中收集 200 张图像。由于MWCNN的接受域不小于226 × 226,在训练阶段从训练图像中裁剪N = 24 × 6, 000个大小为240 × 240的补丁。
对于图像去噪,将具有特定噪声水平的高斯噪声添加到干净的patch中,训练MWCNN学习从噪声图像到去噪结果的映射。在[57]之后,我们考虑了三个噪声水平,即σ = 15, 25和50。对于SISR,我们在实验中考虑了双三次上采样作为MWCNN的输入的结果,考虑了三个特定的尺度因子,即×2、×3和×4。对于JPEG图像伪影去除,我们遵循[15],考虑JPEG编码器的四个压缩质量设置Q = 10,20,30和40。JPEG编码器和JPEG图像伪影去除都只应用于Y通道[15]。
4.1.2 Network training
为每个退化设置学习了一个 MWCNN 模型。网络参数根据[22]中描述的方法进行初始化。我们使用α = 0.01的ADAM算法[30], β1 = 0.9, β2 = 0.999, ε = 10−8进行优化,小批量大小为24。与ADAM的其他超参数一样,采用默认设置。在 40 个 epoch 中,学习率从 0.001 指数衰减到 0.0001。在小批量学习中使用基于旋转或/翻转的数据增强。我们使用带有cuDNN 6.0的MatConvNet包[49]来训练我们的MWCNN。所有实验均在配备 Intel® Core™ i7-5820K CPU 3.30GHz 和 Nvidia GTX1080 GPU 的 PC 上运行的 Matlab (R2016b) 环境中进行。学习算法收敛非常快,训练 MWCNN 模型大约需要两天时间。
4.2. Quantitative and qualitative evaluation
在本小节中,所有 MWCNN 模型都使用第 3.2 节中描述的相同网络设置,并采用 2D Haar 小波。
4.2.1 Image denoising
除了CBM3D[11]和CDnCNN[57]外,大多数去噪方法只在灰度图像上进行测试。因此,我们通过使用灰度图像来训练我们的 MWCNN,并与 BM3D [11]、TNRD [10]、DnCNN [57]、IRCNN [58]、RED30 [37] 和 MemNet [48] 六种竞争去噪方法进行比较。我们在Set12[57]、BSD68[38]和Urban100[23]三个测试数据集上评估去噪方法。表 1 列出了竞争方法在这三个数据集上的平均 PSNR/SSIM 结果。我们注意到,在BSD68上的PSNR方面,我们的MWCNN仅略优于DnCNN约0.1 ~ 0.3dB。与其他数据集相比,我们的MWCNN通常取得了良好的性能。当噪声水平较高(如σ = 50)时,我们的MWCNN的平均PSNR比Set12上的DnCNN高0.5dB,Urban100的平均PSNR高1.2dB。图5显示了来自Set68的图像Test0111的去噪结果,噪声水平σ = 50。可以看出,我们的MWCNN在恢复图像细节和结构方面很有前景,可以获得视觉上比竞争方法更令人愉悦的结果。有关 Set12 和 Urban100 的更多结果,请参阅补充材料。
4.2.2 Single image super-resolution
在[29]之后,SISR只应用于亮度通道,即YCbCr颜色空间。我们在Set5[7]、Set14[56]、BSD100[38]和Urban100[23]四个数据集上测试MWCNN,因为它们被广泛采用评估SISR性能。我们的MWCNN与基于cnn的SISR方法进行了比较,包括RCN[46]、VDSR[29]、DnCNN[57]、RED30[37]、SRResNet[32]、LapSRN[31]、DRRN[47]和MemNet[48]。由于SRResNet的源代码没有发布,其结果来自[32],不完整。
表 2 列出了竞争方法在四个数据集上的平均 PSNR/SSIM 结果。我们的 MWCNN 在 PSNR 和 SSIM 索引方面都表现出色。与 VDSR 相比,我们的 MWCNN 在 Set5 和 Set14 上的 PSNR 实现了约 0.4dB 的显着增益。在 Urban100 上,我们的 MWCNN 比 VDSR 高出约 0.9∼1.4dB。显然,WaveResNet 等人。 [5] 明显优于 VDSR,并且仍然不如 MWCNN。我们注意到 SRResNet 的网络深度为 34,MWCNN 的网络深度为 24。此外,SRResNet 使用比 MWCNN 大得多的训练集进行训练。即便如此,当比例因子为 4 时,MWCNN 在 Set5 和 BSD100 上实现了略高的 PSNR 值,并且在 Set14 上可与 SRResNet 相媲美。图 6 显示了 Set14 中图像 Barbara 上竞争方法的视觉比较。由于 DWT 的频率和位置特征,我们的 MWCNN 可以正确恢复精细和详细的纹理,并产生锐利的边缘。此外,对于NTIRE 2018 SR挑战(×8 SR)[1]的Track 1,我们改进的MWCNN低于Top-1方法0.37dB。
4.2.3 JPEG image artifacts removal
在JPEG压缩中,图像被分成不重叠的8 × 8块。然后将离散余弦变换(DCT)和量化应用于每个块,从而引入阻塞伪影。量化由质量因子 Q 决定,以控制压缩率。在[15]之后,我们考虑JPEG编码器的品质因数的四个设置,例如Q=10、20、30和40。JPEG编码器和JPEG图像伪影去除都只应用于Y通道。在我们的实验中,MWCNN 与两个数据集上的 ARCNN [15]、TNRD [10]、DnCNN [57] 和 MemNet [48] 四种竞争方法进行了比较,即 Classic5 和 LIVE1 [39]。我们不考虑 [18,19],因为它们的源代码不可用。
表 3 列出了 Classic5 和 LIVE1 上竞争方法的平均 PSNR/SSIM 结果。对于四个品质因素中的任何一个,我们的 MWCNN 在两个数据集的定量指标方面表现出色。在 Classic5 和 LIVE1 上,MWCNN 的 PSNR 值可以比第二好的方法(即 MemNet [48])高 0.2∼0.3dB,质量因子为 10 和 20。图 7 显示了LIVE1质量因子为10的结果。可以看到MWCNN在回复纹理细节和锐利的边缘。
4.2.4 Run time
4.3. Comparison of MWCNN variants
5. Conclusion
本文提出了一种用于图像恢复的多级小波-CNN (MWCNN)架构,该架构由收缩子网络和扩展子网络组成。收缩子网络由多层DWT和CNN块组成,而扩展子网络由多层IWT和CNN块组成。由于DWT的可逆性、频率和位置特性,MWCNN可以安全地进行无信息丢失的子采样,有效地从退化的观测中恢复详细的纹理和尖锐的结构。因此,MWCNN 可以在效率和性能之间更好地权衡扩大感受野。大量的实验证明了MWCNN在三个恢复任务上的有效性和效率,即图像去噪、SISR和JPEG压缩伪影去除。
在未来的工作中,我们将扩展MWCNN进行更一般的恢复任务,如图像去模糊和盲反褶积。此外,我们的 MWCNN 也可用于替代 CNN 架构中的池化操作,用于高级视觉任务,例如图像分类。
总结MWCNN:
- DWT和IWT各两级结构,网络共24层;
- 中间输出后跟一个CNN块,CNN块为4个3×3Conv+BN+ReLU,整个网络最后一层只有Conv;
- 对称位置使用Sum Connection
本文对应的复现文章:【图像去噪】论文复现:小波变换替代上下采样!Pytorch实现MWCNN,数据处理、模型训练和验证、推理测试全流程讲解,无论是科研还是应用,新手小白都能看懂,学习阅读毫无压力,去噪入门必看!
至此本文结束。
如果本文对你有所帮助,请点赞收藏,创作不易,感谢您的支持!