超分辨率卷积神经网络最近证明了单个图像的高质量恢复。然而,现有算法通常需要非常深的架构和长的训练时间。此外,目前用于超分辨率的卷积神经网络无法利用多种尺度的特征并对它们进行相同的权衡,从而限制了它们的学习能力。在本次论述中,我们提出了一种紧凑而精确的超分辨率算法,即Densely Residual Laplacian Network (DRLN))。所提出的网络在残余结构上采用级联残差,以允许低频信息的流动,以此来专注于学习中高级特征。此外,通过密集连接的残差块设置实现深度监督,这也有助于从高级复杂特征中学习。此外,我们建议拉普拉斯注意模拟关键特征,以了解特征映射之间的层间和层内依赖关系。此外,对低分辨率,噪声低分辨率和真实历史图像基准数据集的全面定量和定性评估表明,我们的DRLN算法在视觉和准确方面对最先进的方法表现出色。
主要贡献有四方面:
模型由四部分构成:特征提取,残差上的级联残差,上采样和重建。假设低分辨率输入图像和超分辨率输出图像分别由 x x x和 y ^ \hat{y} y^表示。为了正式说明模型实现,设 f f f为卷积层, τ \tau τ为非线性激活函数; 然后,我们定义了一个特征提取组件,它由一个卷积层组成,从低分辨率输入中提取原始特征。
(1) f 0 = H f ( x ) f_{0}=H_{f}(x) \tag{1} f0=Hf(x)(1)
H f ( ⋅ ) H_{f}(\cdot) Hf(⋅)是应用于低分辨率图像的卷积算子,接下来,将 f 0 f_0 f0传递给残差模块上的级联残差,称为 H c r i r H_{crir} Hcrir
(2) f r = H c r i r ( f 0 ) f_{r}=H_{c r i r}\left(f_{0}\right) \tag{2} fr=Hcrir(f0)(2)
其中 f r f_r fr是估计特征, H c r i r ( ⋅ ) H_{crir}(\cdot) Hcrir(⋅)是残差部件上的主要级联残差,它由级联在一起的密集残差拉普拉斯模块组成。 在我们的图像超分辨率知识方面, H c r i r H_{crir} Hcrir的输出特征是创新的。与RCAN相比,我们的方法深度并不重要[7]; 然而,它提供了广泛的感受野和最好的结果。 在此之后,从残差模块上的级联残差中提取的深度特征 f r f_r fr通过上采样部件进行放大,
(3) f u = H u ( f r ) f_{u}=H_{u}\left(f_{r}\right) \tag{3} fu=Hu(fr)(3)
H u ( ⋅ ) H_u(\cdot) Hu(⋅) 和 f u f_u fu 各自表示上采样操作和上采样后的特征。虽然 H u ( ⋅ ) H_u(\cdot) Hu(⋅)有多种选择,例如反卷积层[20],或最近邻上采样卷积[38]; 我们选择ESPCN [39]跟随[5],[7]的脚步。 接下来, f u f_u fu特征传到重建组件,该组件由一个卷积层组成,以预测超分辨RGB颜色通道作为输出,表示为
(4) y ^ = H r ( f u ) \hat{y}=H_{r}\left(f_{u}\right) \tag{4} y^=Hr(fu)(4)
其中 y ^ \hat{y} y^是估计的超分辨率图像,而 H r ( ⋅ ) H_r(\cdot) Hr(⋅)表示重建操作。
损失函数采用了 l 1 l_1 l1损失
(5) L ( W ) = 1 N ∑ i = 1 N ∥ DRLN ( x i ) − y i ∥ 1 L(\mathcal{W})=\frac{1}{N} \sum_{i=1}^{N}\left\|\operatorname{DRLN}\left(x_{i}\right)-y_{i}\right\|_{1} \tag{5} L(W)=N1i=1∑N∥DRLN(xi)−yi∥1(5)
D R L N ( ⋅ ) DRLN(\cdot) DRLN(⋅)是网络, W W W是参数集合
在本节中,我们提供了有关残差结构的级联残差的更多细节,它具有分层结构并由级联块组成。 每个级联块有medium skip-connection(MSC)和级联特征链接,并且由dense residual Laplacian modules (DRLM)组成,每个DRLM由密集连接的残差单元,压缩单元和拉普拉斯金字塔注意力单元组成。 图2的下半部分显示了DRLM。
我们介绍了使用中长跳过连接的块的级联。 假设第m个级联块的第n个稠密残差拉普拉斯模块(DRLM) B m , n B^{m,n} Bm,n给出如下:
(6) f n , m = f ( [ Z u − 0 ; m , Z u − 1 ; m , B u ; m ( w u , 1 ; m ) , b u , 1 ; m ) f_{n, m}=f\left(\left[Z^{u-0 ; m}, Z^{u-1 ; m}, B^{u ; m}\left(w^{u, 1 ; m}\right), b^{u, 1 ; m}\right)\right. \tag{6} fn,m=f([Zu−0;m,Zu−1;m,Bu;m(wu,1;m),bu,1;m)(6)
其中 f n , m f_{n,m} fn,m是来自第m级联块的第n稠密残差拉普拉斯模块(DRLM)的特征。 每个级联块由k个DRLM组成,因此级联块的输入与k DRLM的输出相加为 f n + k , m = f n + k , m + f n , m f_{n + k,m} = f_{n + k,m} + f_{n,m} fn+k,m=fn+k,m+fn,m,即中等跳过连接(MSC),表示为
(7) f g = f 0 + H c r i r ( W w , b ) f_{g}=f_{0}+H_{c r i r}\left(\mathcal{W}_{w, b}\right) \tag{7} fg=f0+Hcrir(Ww,b)(7)
其中 W w , b W_{w,b} Ww,b是在级联块中学习的权重和偏差。 添加中等长度跳过连接可以简化跨DRLM组的信息流,同时添加长跳连接(LSC)有助于通过级联块传输信息。 组特征 f g f_g fg被传递到重建层以输出与网络输入相同数量的通道。 接下来,我们提供有关密集残差拉普拉斯模块及其子组件的信息。
我们采用的残差块具有传统的两个卷积层和两个ReLU结构,然后从残差块的输入中相加。
(8) R i ( w i , b i ) = τ ( f ( τ ) ( f ( w i , 1 , b i , 1 ) ; b i , 2 ) + Z i − 1 ) R_{i}\left(w_{i}, b_{i}\right)=\tau\left(f(\tau)\left(f\left(w_{i, 1}, b_{i, 1}\right) ; b_{i, 2}\right)+Z_{i-1}\right) \tag{8} Ri(wi,bi)=τ(f(τ)(f(wi,1,bi,1);bi,2)+Zi−1)(8)
其中 Z i − 1 Z_{i-1} Zi−1是先前卷积层或残差块的输出,而 w i , j w_{i,j} wi,j是卷积层的权重, b i , j b_{i,j} bi,j是偏差(j∈{1,2})。 每个密集连接的残差单元具有三个具有密集连接的残差块。
(9) R c = [ R i − 1 ( w i − 1 , b i − 1 ) ; R i − 2 ( w i − 2 , b i − 2 ) ] f R = R i ( w i , b i ) = τ ( f ( f ( f c ) ) + R c ) \begin{array}{l}{R_{c}=\left[R_{i-1}\left(w_{i-1}, b_{i-1}\right) ; R_{i-2}\left(w_{i-2}, b_{i-2}\right)\right]} \\ {f_{R}=R_{i}\left(w_{i}, b_{i}\right)=\tau\left(f\left(f\left(f_{c}\right)\right)+R_{c}\right)}\end{array} \tag{9} Rc=[Ri−1(wi−1,bi−1);Ri−2(wi−2,bi−2)]fR=Ri(wi,bi)=τ(f(f(fc))+Rc)(9)
其中 R c R_c Rc是先前残差块的串联, f R f_R fR是密集连接的残余单元的最终输出。 然后, f R f_R fR特征通过压缩单元,压缩单元压缩由密集级联产生的大量参数。 压缩单元由单个卷积层组成,内核为1×1。 然后将压缩特征fc转发到拉普拉斯注意单元。
拉普拉斯注意力机制
实际上是把 h x w x c的组,先做全局平均,变成1 x 1 x c
(10) g d = 1 h × w ∑ i = 1 h ∑ i = 1 w f c ( i , j ) g_{d}=\frac{1}{h \times w} \sum_{i=1}^{h} \sum_{i=1}^{w} f_{c}(i, j) \tag{10} gd=h×w1i=1∑hi=1∑wfc(i,j)(10)
然后在这个基础上做核为3,5,7的卷积,相当于获取不同尺度特征,也就是不同的注意力。
(11) r 3 = τ ( D f 3 ( g d ) ) r 5 = τ ( D f 5 ( g d ) ) r 7 = τ ( D f 7 ( g d ) ) \begin{aligned} r_{3} &=\tau\left(D_{f_{3}}\left(g_{d}\right)\right) \\ r_{5} &=\tau\left(D_{f_{5}}\left(g_{d}\right)\right) \\ r_{7} &=\tau\left(D_{f_{7}}\left(g_{d}\right)\right) \end{aligned} \tag{11} r3r5r7=τ(Df3(gd))=τ(Df5(gd))=τ(Df7(gd))(11)
最后展开一维
(12) g p = [ r 3 ; r 5 ; r 7 ] g_{p}=\left[r_{3} ; r_{5} ; r_{7}\right] \tag{12} gp=[r3;r5;r7](12)
此外,如等式11所示,拉普拉斯金字塔的输出与下采样算子卷积。 因此,为了对特征映射进行上采样和区分,然后将输出馈送到上采样运算符 U f U_f Uf,然后进行sigmoid激活,如下所示:
(13) L p = σ ( U f ( g p ) ) L_{p}=\sigma\left(U_{f}\left(g_{p}\right)\right) \tag{13} Lp=σ(Uf(gp))(13)
作为最后一步,通过拉普拉斯注意单元的输入 f c f_c fc自适应地重新调整sigmoid函数的输出(即Lp)来利用所学习的统计量:
(14) f ^ c = L p × f c \hat{f}_{c}=L_{p} \times f_{c} \tag{14} f^c=Lp×fc(14)