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

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

可执行的程序链接:CSDN; Github

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

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 函数封装

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

综合封装:

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

相关推荐
极速蜗牛2 分钟前
我在 Taro 小程序项目里实践的 API First + AI 编程方式
前端·人工智能·后端
桜吹雪7 分钟前
所有智能体架构(3):Planning(计划任务)
javascript·人工智能·langchain
武子康7 分钟前
调查研究-176 taste-skill:AI 编程时代,前端开发最缺的不是代码,而是品味
人工智能·openai·claude
码语智行9 分钟前
工具调用MCP_Server 开发梳理
人工智能
lili001214 分钟前
2026 企业 AI 选型新范式:OpenRouter Fusion 证明多模型融合性价比远超单模型,企业该如何重构技术栈? - 微元算力(weytoken)
java·人工智能·python·重构·ai编程
shushangyun_16 分钟前
汽车服务行业B2B平台+AI解决方案哪家专业:2026年最新测评
java·运维·网络·数据库·人工智能·汽车
A.说学逗唱的Coke19 分钟前
【大模型专题】Spring AI Alibaba × Skill 整合实战:让 AI 真正“会干活
java·人工智能·spring
米小虾26 分钟前
AI Agent 记忆系统:从对话记录到认知架构
人工智能·agent
-山中问答-30 分钟前
【智能体工具使用实战08】实战项目:代码仓库健康度分析Agent
人工智能·智能体·工具调用·工程实战
林间码客31 分钟前
05 逻辑斯蒂回归(Logistic Regression)
人工智能·数据挖掘·回归