• 基于CNN多阶段图像超分+去噪(超级简单版)


    这是之前的一项工作,非常简单,简单的复现了两个算法,然后把它们串起来了。

    可执行的程序链接:CSDNGithub

    我们分成两部分进行讲解:

    1. 图像去噪

    1.1 基本思路

    图像的去噪工作基于很普通的CNN去噪,效果很差。

    为了去除椒盐噪声并且提升暗图像的亮度,从以下方面入手:

    1)针对椒盐噪声,使用了小核(3×3)中值滤波

    2)针对图像亮度太低,梯度难以获取,使用直方图均衡化

    3)使用传统CNN模型搭建去噪网络

    4)增添了锐化环境,但不建议去噪时使用,效果并不好、

    网络模型很简单,CNN模拟高斯滤波的去噪过程。本节采用17个3×3卷积核堆叠的形式(每层配BN层和Relu激活函数)。最后,将原图跳跃连接到最后一个3×3卷积的特征上(最后为通道压缩,则Tensor都为1×3×H×W)。训练思路为,有监督学习。

    1.2 函数封装

    直接在test_data里填写输入图片的路径即可

    其余都不用管。

    输出图片的路径很简单:

    都可以进行更改。

    最后的这个函数,是封装的函数。Hist是是否直方图增量,m_Blur是是否进行中值滤波,sharp是是否进行锐化(单独去噪程序不要使用,效果很差),kernal是中值滤波的卷积核大小(本文为3,太大容易模糊)

    2. 图像超分

    2.1 基本思路

    也是很简单的基于ResNet的超分应用:

    骨干网络很简单,堆叠额RFDB块+普通的3×3卷积构成一个端对端残差网络。最后使用上采样进行有监督学习。RFDB,参考的多半是MobileNet等残差块的设计,在我看来没啥创新的地方。不想多讲。就是一个深度的残差块。

    我们综合的应用把锐化的函数加在了超分里,总体效果还可以。

    2.2 函数封装

    基本和图像去噪一样。单独使用,建议加上锐化。感觉还可以。

    综合封装:

    两个函数放在一起,参数是一样的。在这个函数里,我把属于图像去噪的锐化去除了。你直接运行我的程序就行了。

  • 相关阅读:
    洛谷 P4616 [COCI2017-2018#5] Pictionary
    什么是DDoS攻击?企业服务器是否需要DDoS防御
    2022年的有关语义分割的论文,含CVPR、ECCV、ICLR、AAAI
    Java内存空间(学习随笔)
    新书速览|FFmpeg开发实战:从零基础到短视频上线
    高精度算法详解
    兔老大的系统设计(一)健康度系统
    数值分析思考题(钟尓杰版)参考解答——第四章
    Java:2022年最流行的Web开发Java框架
    C++ STL & 标准库
  • 原文地址:https://blog.csdn.net/m0_57628341/article/details/136762775