RCAN - yubo105139/paper GitHub Wiki

TOC

(RCAN 2018 ECCV)Image Super-Resolution Using Very DeepResidual Channel Attention Networks

github:https://github.com/yulunzhang/RCAN

基于残差注意力的超分方法

contribution

  • 深的网络对SR难以训练。提出RIR 以构建更深的网络,通过多个跳连接丢弃低频信息,强调高频信息。

  • 低重要性的信息在通道间被均等对待。提出了一种通道注意机制,通过考虑通道之间的相互依赖性来自适应地重新调整通道的特征。

网络结构

RCAN_network

Lr --> 一个卷积层-->浅层特征-->RIR层-->深层特征--> 后处理上采样模块-->重建SR

shallow feature F0 : F0 = Hsf(Lr)

deep feature Fdf : Fdf = Hrir(F0)

upscaled feature Fup: Fup = Hup(Fdf)

SR = Hrec(Fup) = Hrcan(Lr)

RIR模块

RG (residual group): (由叠加的残差通道注意力块构成)

LSC(long skip connectioin): (可以学习到底层信息)

SR中过深的网络面临难以训练和表现难以提升的问题。提出使用RG作为基础模块构建更深的网络。

只叠加RG表现无法提升,提出使用LSC。对残差组使用LSC跳连接: $$ F_{DF} = F_0+W_{LSC}F_G = F_0 + W_{LSC}H_g(H_{g-1}(...H_1(F_0)...)) $$

CA通道注意力

CA(channel attention): concentrate on useful channels

怎样得到每个通道特征的不同注意力,考虑到:

1.低频信息复杂,高频信息通常为区域,边缘,纹理等细节

2.卷积得到局部感受野,无法感知局部外的上下文信息

RCAN_CA

F--->global pooling---> conv--->ReLU--->conv--->sigmoid---> M_at--->element-wise

使用全局平均池化层,使通道全局信息包含入通道描述。

gating mechanism : sigmoid function

1.学习通道间的非线性关系;

2.保留多通道特征,不是one-hot;

残差通道注意块(RCAB)

Residual channel attention block (RCAB)

RCAN_rcab

将CA集成到残差块RB中,得到RCAB

实验

参数配置

训练集:800 trainning image DIV2K dataset

测试集:five datasets: Set5 [1],Set14 [41], B100 [24], Urban100 [13], and Manga109

下采样方法:Bicubic (BI) and blur-downscale (BD)

评价指标:PSNR and SSIM ; YCbCr space Y channel;

数据增强: rotate;flip;

优化器:ADAM 学习率设置

配置: Titan Xp GPU.

网络设计细节

RIR中10个RG, 每个RG中20个RCAB, 全部为3×3卷积除了通道大小变化为1×1卷积。

浅层特征层通道为C=64, 通道减小为C/r = 4, r设置为16.

上采样模块,使用ESPCNN

RIR和CA的影响

1.不要LSC或SSC或CA, 测试PSNR值。证明LSC,SSC对RIR的重要性。

2.深得网络表现很好,很难提升,加入CA后有明显提升,不要RIR,CA也能提升超分性能。

与多个模型在不同测试集上的量化结果比较

效果最好,相比效果也好的EDSR 43M模型更小 16M

视觉结果分析

RCAN减小模糊,还原细节,而基于bicubic的可能导致完全错误的重建。

针对小的模糊图的超分效果,视觉效果
在分类任务上的表现

restnet50 1000数据测试, 56×56 -- >224×224

模型大小

x:参数数量, y:PSNR 图比较。取得了模型大小和性能效果的平衡。

更深的网络比更宽的网络更容易达到更好的性能

总结:

1.使用LSC全局残差,SSC局部残差使网络更深

2.使用通道注意力