超分辨率重建总结(超分辨率重建算法程序)

1.SRCNN:—2,3改进开山之作,三个卷积层,输入图像是低分辨率图像经过双三次(bicubic)插值和高分辨率一个尺寸后输入CNN。图像块的提取和特征表示,特征非线性映射和最终的重建。使用均方误差(MSE)作为损失函数。2.FSRCNN特征提取:低分辨率图像,选取的核9×9设置为5×5。收缩:1×1的卷积核进行降维。非线性映射:用两个串联的3×3的卷积核可以替代一个5×5…

大家好,又见面了,我是你们的朋友全栈君。

1.SRCNN:—2,3改进

开山之作,三个卷积层,输入图像是低分辨率图像经过双三次(bicubic)插值和高分辨率一个尺寸后输入CNN。

图像块的提取和特征表示,特征非线性映射和最终的重建。使用均方误差(MSE)作为损失函数。

2. FSRCNN

特征提取:低分辨率图像,选取的核9×9设置为5×5。收缩:1×1的卷积核进行降维。非线性映射:用两个串联的3×3的卷积核可以替代一个5×5的卷积核。扩张:1×1的卷积核进行扩维。反卷积层:卷积层的逆操作,如果步长为n,那么尺寸放大n倍,实现了上采样的操作。

相对于SRCNN:

在最后使用了一个反卷积层放大尺寸,因此可以直接将原始的低分辨率图像输入到网络中;改变特征维数,使用更小的卷积核和使用更多的映射层;可以共享其中的映射层,如果需要训练不同上采样倍率的模型,只需要fine-tuning最后的反卷积层。

3. ESPCN

核心概念是亚像素卷积层,输入原始低分辨率图像,三个卷积层, 将  \[H \times W \times {r^2}\]的特征图像被重新排列成 \[rH \times rW \times 1\] 的高分辨率图像。

ESPCN激活函数采用tanh替代了ReLU。损失函数为均方误差。

4. VDSR–7改进

只学习高分辨率图像和低分辨率图像之间的高频部分残差即可——残差网络

输入低分辨率图像插值后的图像,再将这个图像与网络学到的残差相加得到最终的网络的输出。

1.加深了网络结构(20层),2.采用残差学习(自适应梯度裁剪将梯度限制在某一范围)。3.卷积补0操作,保证特征图和最终的输出图像在尺寸上都保持一致。4.多尺度图像共同训练

5. DRCN:–7改进

递归神经网络结构

输入的是插值后的图像,分为三个模块,第一个是Embedding network,相当于特征提取,第二个是Inference network, 相当于特征的非线性映射,第三个是Reconstruction network,即从特征图像恢复最后的重建结果。其中的Inference network是一个递归网络,即数据循环地通过该层多次。将这个循环进行展开,等效于使用同一组参数的多个串联的卷积层.

6. RED

对称的卷积层-反卷积层构成的网络结构

RED网络的结构是对称的,每个卷积层都有对应的反卷积层。卷积层用来获取图像的抽象内容,反卷积层用来放大特征尺寸并且恢复图像细节。

用到了与4同:网络中有一条线是将输入的图像连接到后面与最后的一层反卷积层的输出相加。

ED中间的卷积层和反卷积层学习的特征是目标图像和低质图像之间的残差。RED的网络深度为30层,损失函数用的均方误差。

7. DRRN:(4,5,残差网络)**********

ResNet是链模式的局部残差学习。VDSR是全局残差学习。DRCN是全局残差学习+单权重的递归学习+多目标优化。DRRN是多路径模式的局部残差学习+全局残差学习+多权重的递归学习。

选用的是1个递归块和25个残差单元,深度为52层的网络结构

8. LapSRN:**********(改进前面大部分算法

论文中作者先总结了之前的方法存在有三点问题。一是有的方法在输入图像进网络前,需要使用预先定义好的上采样操作(例如bicubic)来获得目标的空间尺寸,这样的操作增加了额外的计算开销,同时也会导致可见的重建伪影。而有的方法使用了亚像素卷积层或者反卷积层这样的操作来替换预先定义好的上采样操作,这些方法的网络结构又相对比较简单,性能较差,并不能学好低分辨率图像到高分辨率图像复杂的映射。二是在训练网络时使用 l2 型损失函数时,不可避免地会产生模糊的预测,恢复出的高分辨率图片往往会太过于平滑。三是在重建高分辨率图像时,如果只用一次上采样的操作,在获得大倍数(8倍以上)的上采样因子时就会比较困难。

LapSRN通过逐步上采样,一级一级预测残差的方式,在做高倍上采样时,也能得到中间低倍上采样结果的输出。由于尺寸是逐步放大,不是所有的操作都在大尺寸特征上进行,因此速度比较快。LapSRN设计了损失函数来训练网络,对每一级的结果都进行监督,因此取得了不错的结果。

9. SRDenseNet:

SRDenseNet将稠密块结构应用到了超分辨率问题上,这样的结构给整个网络带来了减轻梯度消失问题、加强特征传播、支持特征复用、减少参数数量的优点

10. SRGAN(SRResNet):**********

在这篇文章中,将生成对抗网络(Generative Adversarial Network, GAN)用在了解决超分辨率问题上

用均方误差优化SRResNet(SRGAN的生成网络部分),文章中的实验结果表明,用基于均方误差的损失函数训练的SRResNet,得到了结果具有很高的峰值信噪比,但是会丢失一些高频部分细节,图像比较平滑。而SRGAN得到的结果则有更好的视觉效果。其中,又对内容损失分别设置成基于均方误差、基于VGG模型(损失函数)低层特征和基于VGG模型高层特征三种情况作了比较,在基于均方误差的时候表现最差,基于VGG模型高层特征比基于VGG模型低层特征的内容损失能生成更好的纹理细节。

11. EDSR:**********

EDSR最有意义的模型性能提升是去除掉了SRResNet多余的模块,从而可以扩大模型的尺寸来提升结果质量

这篇文章还提出了一个能同时不同上采样倍数的网络结构MDSR。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/127434.html原文链接:https://javaforall.net

(2)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • StoredProcedure — 存储过程

    StoredProcedure — 存储过程1.声明变量DECLARE@F001SMALLINT,           @F002INTEGER,           @F003VARCHAR(20),           @F004CHAR(20),           @F002MONEY2.赋值语句set@F001=space(40)3.条件判断(IF…ELSE)Ifc

    2022年7月26日
    2
  • vscode 使用flake8和yapf[通俗易懂]

    vscode 使用flake8和yapf[通俗易懂]vscode使用flake8和yapf

    2025年11月2日
    4
  • seq2seq模型是什么_seq2seq原理

    seq2seq模型是什么_seq2seq原理1seq2seq模型简介seq2seq模型是一种基于【encoder-decoder】(编码器-解码器)框架的神经网络模型,广泛应用于自然语言翻译、人机对话等领域。目前,【seq2seq+attention】(注意力机制)已被学者拓展到各个领域。seq2seq于2014年被提出,注意力机制于2015年被提出,两者于2017年进入火热融合和拓展阶段。通常,编码器和解码器都是一个LSTM网络…

    2025年5月25日
    2
  • android 触屏处理流程,android触摸事件处理流程 ? FOOKWOOD「建议收藏」

    android 触屏处理流程,android触摸事件处理流程 ? FOOKWOOD「建议收藏」最近在工作中,经常需要处理触摸事件,但是有时候会出现一些奇怪的bug,比如有时候会检测不到ACTION_MOVE和ACTION_UP,我决定下决心写个测试的小程序,来研究一个触摸事件从上往下是怎么传递和处理的。先说下大概的流程吧,这个应该在很多博客中都有讲解:当一个事件来临的时候,会先传递给最外层的ViewGroup(比如LinearLayout,FrameLayout),如果这个ViewGrou…

    2025年10月24日
    6
  • Windows 7 连接 Windows 10 共享打印机,Windows 无法连接打印机,操作失败,错误为0x0000011b 的终极解决办法

    Windows 7 连接 Windows 10 共享打印机,Windows 无法连接打印机,操作失败,错误为0x0000011b 的终极解决办法Windows7连接Windows10共享打印机出现错误0x000001b,无法通过卸载KB5005565安全更新来解决该问题,正确的处理方法是手工添加一个本地打印机,本方法稳定可靠。本文详述了该方法的操作步骤。

    2025年10月22日
    5
  • MyBatisPlus–逻辑删除「建议收藏」

    MyBatisPlus–逻辑删除「建议收藏」逻辑删除开发系统时,有时候在实现功能时,删除操作需要实现逻辑删除,所谓欧吉删除就是将数据标记为删除,而并非真正的物理删除(非DELETE操作),查询时需要携带状态条件,确保被标记的数据不被查询,这样做的目的就是避免数据被真正的删除。配置application.properties#删除状态值为1mybatis-plus.global-config.db-config.logic-del…

    2022年5月5日
    76

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号