SRCNN与FSRCNN

SRCNN(DONGC, CHEN C L, HE K, ET AL. LEARNING A DEEP CONVOLUTIONAL NETWORK FOR IMAGESUPER-RESOLUTION[J].ECCV2014)


方法:对于一个低分辨率图像,先使用双三次(bicubic)插值将其放大到目标大小,再通过三层卷积网络做非线性映射,得到的结果作为高分辨率图像输出

层卷积的结构解释成图像块提取和特征表示;特征非线性映射;最终的重建。

SRCNN的基本框架

  1.     第一层对输入图像执行特征提取并将每个补丁表示为高维特征向量。 
  2.     第二层然后非线性地将这些特征向量映射到另一组特征向量,这些特征向量在概念上是HR图像片的表示。
  3.     最后一层重新组合这些表示并重建最终的HR图像

•方法:对于一个低分辨率图像,先使用双三次(bicubic)插值将其放大到目标大小,再通过三层卷积网络做非线性映射,得到的结果作为高分辨率图像输出

•网络结构:

  1. LR 特征提取,对LR进行特征提取,并将其特征表征为一些特征图;“卷积层(c*f1*f1卷积核)+RELU”
  2. 特征的非线性映射:将第一阶段提取的特征映射至HR所需的特征图;“卷积层(n1*1*1卷积核)+RELU”
  3. HR重建:将第二阶段映射后的特征恢复为HR图像;“卷积层(n2*f3*f3)三个卷积层使用的卷积核的大小分为为9x9, 1x15x5,前两个的输出特征个数分别为6432.
  4. 三个卷积层使用的卷积核的大小分为为9x9,,1x1和5x5,前两个的输出特征个数分别为64和32。
数据集:

Timofte数据集(包含91幅图像)和ImageNet大数据集进行训练。

损失函数:

使用均方误差(Mean Squared Error, MSE)作为损失函数,有利于获得较高的PSNR

•优点:

网络结构十分简单,仅仅用了三个卷积层。框架在选择参数时很灵活,可以采用四层或更多层,更大的过滤器尺寸来进一步提高性能。

•缺点:

SRCNN针对单个尺度因子进行训练,如果需要新的规模,则必须对新模型进行培训。特征提取只用了一层卷积层,存在着感受野比较小的问题,提取出来的特征是非常局部的特征,细节无法恢复出来。

•改进点:

  1. 它依赖于小图像区域的上下文;
  2. 训练收敛太慢;
  3. 网络只对于某一个比例有效。作者认为网络越深效果越好的这个定律不适用于SR领域。为了解决该问题,VSDR的作者将残差的思想引入了网络架构中,VGG不再需要学习如何恢复一张高清的HR图像,而是学习HR与LR图像拉伸之后的残差;


FSRCNN(DONG C, CHEN C L, TANG X. ACCELERATING THE SUPER-RESOLUTION CONVOLUTIONAL NEURAL NETWORK, ECCV2016)



对SRCNN的改进:
  1. 在最后使用了一个反卷积层放大尺寸,因此可以直接将原始的低分辨率图像输入到网络中,(和ESPCN思路一致)而不是像之前SRCNN那样需要先通过BICUBIC方法放大尺寸。
  2. 改变特征维数,使用更小的卷积核和使用更多的映射层。
  3. SRCNN中的NON-LINEAR MAPPING分为SHRINKING、MAPPING、EXPANDING三个阶段。
  4. 可以共享其中的映射层,如果需要训练不同上采样倍率的模型,只需要改变最后的反卷积层。
  5. 由于FSRCNN不需要在网络外部进行放大图片尺寸的操作,同时通过添加收缩层和扩张层,将一个大层用一些小层来代替,因此FSRCNNSRCNN相比有较大的速度提升。FSRCNN在训练时也可以只FINE-TUNING最后的反卷积层,因此训练速度也更快。

FSRCNN网络结构

  1. 特征提取:直接是对低分辨率图像进行操作,卷积核5×5
  2. 收缩降维,减少网络的参数,降低计算复杂度。卷积核1×1。
  3. 非线性映射:用两个串联的3×3的卷积核可以替代一个5×5的卷积核。感受野比SRCNN大。两个串联的小卷积核需要的参数3×3×2=18比一个大卷积核5×5=25的参数要小。FSRCNN网络中通过M个核大小为3×3的卷积层进行串联。
  4. 扩张收缩的逆过程。作者发现低维度的特征带来的重建效果不是太好,因此应用1×1的卷积核进行扩维。
  5. 反卷积层上采样操作,放大图像尺寸。如果步长为N,那么尺寸放大N倍。


猜你喜欢

转载自blog.csdn.net/weixin_38203533/article/details/80704039