EDSR(Enhanced Deep Residual Networks for Single Image Super-Resolution)

Enhanced Deep Residual Networks for Single Image Super-Resolution

在这里插入图片描述2017年NTIRE图像超分辨率重构大赛中, 首尔大学SNU CVLab[38]团队获得了冠军, 他们提出了EDSR(Enhanced Deep Residual Networks for Super-Resolution)模型. 它在残差网络的基础上进行了改进, 去掉了批归一化(Batch Normalization,
BN)层. BN层用于解决高级图像问题如图像分类、检测等比较有效, 而图像超分辨率重构属于底层问题, 去掉BN层可以节省一半的内存和计算时间, 且重构效果良好. 结构如图
在这里插入图片描述网络由一系列残差块RB级联而成, 每个残差块内部不包括BN层, 上采样过程通过像素重排实现,且£4倍数结果可由£2倍数实现, 节省了一部分内存. 同时整个网络采用了L1范数作为损失函数.此外, EDSR模型还提出了一种数据增强策略以提高重构效果, 称为Geometric Self-ensemble. 具体做法是对LR图片进行几何变换, 输入到网络中获取高分辨率图片, 再对其进行相应的逆变换, 所有结果进行平均作为最终的重构结果. 这种策略能够使得网络从不同的“ 视角” 学习高低分辨率图片之间
的映射关系, 从而提高重构效果.EDSR模型在2017年NTIRE图像超分辨率重构
大赛中不仅获得了最好的重构效果, 也具有较快的重构速度, 还提出了一种新的数据增强策略, 是当之无愧的冠军。
在这里插入图片描述

摘要

提出了深度超分辨网络(EDSR),达到目前的SOTA水平,论文最主要提升性能的方法是在卷积残差网络里删除了不需要的模块,在稳定训练过程的同时,通过扩大模型的大小提升性能。最后还提出了多尺度深度超分辨系统(MDSR)和训练方法。即通过单个模型来重构不同放缩尺度的图片。

贡献:

  • 基于SRResNet,通过删掉不需要的模块来简化模型框架,当模型复杂时,训练网络就变得非常重要,因此,我们对网络进行了适当的损失函数训练,并对训练后的模型进行了细致的修改。实验表明,改进后的方案效果较好。
  • 我们研究了模型训练方法,从其他尺度的模型中转移知识。
    为了在训练中利用与尺度无关的信息,我们从预先训练好的低尺度模型训练出高尺度模型。此外,我们还提出了一种新的多尺度体系结构,它可以跨不同的尺度共享大部分参数。与多个单标度模型相比,该模型的多标度误码率显著降低,但性能基本相同。
  • 我们在标准基准数据集和新提供的DIV2K数据集上评估我们的模型。所提出的单标度和多标度超分辨率网络在PSNR和SSIM两方面均显示出最优的性能

方法

提出新的残差网络

去掉了BN层,可以加快网络训练,节省内存,还可以提升模型性能。( saves approximately 40% of memory usage compared to SRResnet),而且这里在残差块之后未使用ReLU

在这里插入图片描述

增加卷积通道数

增加通道比起增加层数在花费一定空间前提下可以增加参数,所以可以更值得用于提升信息。(General CNN architecture with depth (the number of layers) B and width (the number of feature channels) F occupies roughly O(BF) memory with O(BF 2 ) parameters. Therefore, increasing F instead of B can maximize the model capacity when considering limited computational resources.)

EDSR

在这里插入图片描述

加入参数乘积层

增加通道数之后会导致训练的数值不稳定,所以我们加入了残差放缩层 × \times × 0.1
在这里插入图片描述

MDSR

在这里插入图片描述这里用了主分支,共享参数。用于解决多个放大因子的情况,只需要用一个模型即可解决,而无需针对不同的放大因子进行模型训练。

### 单图像超分辨率技术概述 单图像超分辨率(Single Image Super-Resolution, SISR)是一种旨在从低分辨率图像重建高分辨率图像的技术。近年来,基于深度学习的方法显著提升了SISR的效果。其中,“Transformed Self-Exemplars”方法通过利用图像内部的自相似性来增强细节恢复能力[^1]。 #### Transformed Self-Exemplars 技术的核心概念 Transformed Self-Exemplars 方法的主要思想是从输入图像本身提取特征作为参考样本,并通过对这些样本进行变换以适应不同的局部结构。这种方法避免了对外部训练数据集的高度依赖,从而减少了过拟合的风险并提高了泛化性能[^2]。 具体而言,该算法设计了一个端到端可训练框架,其中包括以下几个关键组件: 1. **Self-Similarity Mining**: 自动检测图像中的重复模式或纹理区域。 2. **Transformation Module**: 对挖掘出的自相似块应用几何和光度变换,使其能够匹配目标位置的需求。 3. **Fusion Mechanism**: 将多个转换后的样例融合在一起,形成最终的高分辨率预测结果。 此过程不仅保留了原始信号的重要特性,还有效增强了边缘锐利度以及颜色一致性[^3]。 #### 相关研究进展 除了上述提到的技术外,还有其他一些重要的工作也值得关注。例如,Dong等人提出的 SRCNN (Super Resolution Convolutional Neural Network),首次将卷积神经网络引入到了超级解析领域;Kim等人开发的 EDSR (Enhanced Deep Residual Networks for Single Image Super-Resolution) 则进一步优化了模型架构,在速度与质量之间取得了更好的平衡[^4]。 值得注意的是,尽管当前许多先进方案都采用了复杂的多尺度特征表示或者注意力机制,但 Transforming Self-examples 的独特之处在于它强调充分利用单一输入源内的信息资源,这使得其特别适合处理那些难以获取充足外部标注资料的应用场景[^5]。 ```python import torch.nn as nn class SimpleSRModel(nn.Module): def __init__(self): super(SimpleSRModel, self).__init__() self.conv1 = nn.Conv2d(3, 64, kernel_size=9, padding=4) self.relu = nn.ReLU() self.conv2 = nn.Conv2d(64, 32, kernel_size=1, padding=0) self.conv3 = nn.Conv2d(32, 3, kernel_size=5, padding=2) def forward(self, x): out = self.relu(self.conv1(x)) out = self.relu(self.conv2(out)) out = self.conv3(out) return out ``` 上面展示了一种简单的 SR 模型定义方式,实际项目中可能需要更复杂的设计才能达到理想效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值