Image Super Resolution Using Conventional Neural Network (SRCNN)
前言
打算写些文档记录一下自己看过的一些经典的论文,不然过一段时间都忘记自己看过的文章了。算是对自己文档写作能力的一个锻炼,也是对自己的某种监督吧。
这篇论文是16年发表于TPAMI的关于图像超分辨率的,是较早的将深度学习应用在图像超分辨率的工作,相较于传统的基于稀疏表示的字典学习方法,一定程度上提升了图像重建的质量。
原文链接:[SRCNN]
http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=7115171
摘要
这篇文章提出了用深度卷积神经网络(CNN)进行图像的超分辨率重建。网络输入为低分辨率图像经过双三次插值后的图像,网络输出为超分辨率重建图像。网络由三个卷积层组成,完成了由低分辨率图像到高分辨率图像的端到端的映射。在文章中,作者Chao Dong et. al还解释了SRCNN网络与基于稀疏表示的图像超分辨率方法的关系。在实验部分也展示了不同网络层数、卷积核大小等对重建结果的影响。
SRCNN的网络结构
SRCNN的网络结构如上图所示,由三个卷积神经网络组成,分别为图像块提取与表示层、非线性映射层及图像重建层。作者将这三层网络分别与基于稀疏表示的SR的三个步骤对应。
1. Patch Extraction and Representation
在图像恢复(restoration) 任务中,常常通过对图像进行密集采样,然后用预训练的原子进行表示。这些原子通常由PCA、DCT、Haar等方法训练得到。这个提取图像块及表示过程等价于用一组卷积核对图像进行卷积,每一个卷积核可以看作一个对应的原子。第一层用 F1F_1 来表示:
F_1\left ( Y \right )=max\left ( 0, W_1*Y+B_1 \right )
这里 W1W_1和 B1B_1分别代表卷积核的权重和偏置。通过第一层的卷积,我们对每个图像块提取出了 n1n_1维的特征图。
2. Non-linear Mapping
通过第二层的卷积,将上面得到的n1n_1维特征映射为n2n_2维特征。作者认为这个n2n_2维特征可以看做是对高分辨率图像块的特征表示。这一层卷积核的大小为1×11\times1、或者3×33\times3、5×55\times5。第二层可以表示为:
F_2\left ( Y \right )=max\left ( 0, W_2*F_1\left ( Y \right )+B_1 \right )
这一层对应于基于稀疏表示的图像超分辨率中,低分辨率稀疏编码向量到高分辨率稀疏编码向量的映射过程。
3. Reconstruction
在传统的SR算法中,通常将重建图像块重叠部分取平均作为最后的输出。这样的取平均操作可以看作是“预训练”的卷积操作。 第三层可以定义为:
F_3\left ( Y \right )=max\left ( 0, W_3*F_2\left ( Y \right )+B_1 \right )
三个卷积层与基于稀疏表示的SR的对应关系如下图所示:
这里想要说明的一个感受野的问题:如Fig.3图中,我们最终重建结果的一个点(红圈中的黄点)是利用其周围一定范围领域内(蓝色虚线框内)像素点的信息重建的。例如,如果三层卷积的卷积核大小分别为:9×99\times9、1×11\times1和5×55\times5,最终每个像素点重建就会利用到周围(9+5−1)2=169\left ( 9+5-1 \right )^{2}=169个像素点的信息。这就是感受野的含义。后续的一些改进工作比如VDSR、DRCN等都是着眼于增大感受野的范围来提高超分辨率结果。
训练
要训练一个端到端的映射FF要求估计得到的网络参数Θ={W1,W2,W3,B1,B2,B3}\Theta =\left \{ W_1, W_2, W_3, B_1, B_2, B_3 \right \}能使得网络的输出结果F(Y;Θ)F\left(Y; \Theta \right)尽可能的接近原来的高分辨率图像XX。因此,网络的损失函数定义为SR与GT的欧氏距离,其实也就是MSE:
L(Θ)=1n∑t=1n∥F(Yi;Θ)−Xi∥L\left ( \Theta \right )=\frac{1}{n}\sum_{n}^{t=1}\left \| F(Y_i; \Theta )-X_i \right \|
其中,nn为训练样本的总数。使用MSE作为损失函数可以得到更高的PSNR值。(这里我想吐槽一句,虽然SR用PSNR作为重建的指标,但是高PSNR并不意味着重建结果越好。SR是病态问题,这就意味着可能解有无穷多个。以MSE(PSNR)为loss函数得到的解往往是这些可能解的平均,而不是最优解。这就导致以MSE为loss的SR算法得到的结果有些区域看起来过于模糊,缺乏应有的细节。)
网络训练的优化方法采用的是随机梯度下降法,WiW_i用方差为0.001的标准正态分布初始化,BiB_i初值为0。权重更新的方法如下:
Δi+1=0.9Δi+η∂L∂Θi,Θi+1=Θi+Δi+1\Delta _{i+1}=0.9\Delta _{i}+\eta \frac{\partial L}{\partial \Theta _i}, \Theta _{i+1}=\Theta _{i}+\Delta _{i+1}
结果与分析
SRCNN的结果与传统的state-of-the-art的对比如下表,虽然其性能提升有限,但是作为较早的(开创性的?)将深度学习引入SR的工作还是有很大意义的。
再一个问题就是,作为一个比较初期的基于深度学习的SR模型,其网络结构只有三层,如此这样“浅的”网络模型也导致其收敛速度非常慢,要训练到10910^9个epoch才会得到比较满意的结果。
其后,很多工作例如VDSR、DRCN都设法引入更多的卷积层以及残差学习来构造更深的网络,获取了更好的重建效果。
第一次写博客,难免有些错误和不足,欢迎大家批评指正!
Image Super Resolution Using Conventional Neural Network (SRCNN)相关推荐
- deep_learning_初学neural network
神经网络--最易懂最清晰的一篇文章 神经网络是一门重要的机器学习技术.它是目前最为火热的研究方向--深度学习的基础.学习神经网络不仅可以让你掌握一门强大的机器学习方法,同时也可以更好地帮助你理解深度学 ...
- 论文翻译:2019_Speech Super Resolution Generative Adversarial Network
博客作者:凌逆战 论文地址:基于GAN的音频超分辨率 博客地址:https://www.cnblogs.com/LXP-Never/p/10874993.html 论文作者:Sefik Emre Es ...
- 论文翻译:Speech Super Resolution Generative Adversarial Network
博客作者:凌逆战 论文地址:https://ieeexplore.ieee.org/document/8682215 博客地址:https://www.cnblogs.com/LXP-Never/p/ ...
- 【Super Resolution】超分辨率——SRCNN
SRCNN 01 闲聊--图像的超分辨率 02 SRCNN--超分和DL的结合 02-1 双三次插值 02-2 SRCNN的网络结构 02-3 Training 训练阶段 03 EXPERIMENTS ...
- 图像超分辨率:小米低功耗超分,适用于移动端Extreme Low-Power Super Resolution Network For Mobile Devices
4. ELSR: Extreme Low-Power Super Resolution Network For Mobile Devices 小米的论文,网络很简单很快,训练步骤比较多.
- Paper翻译:《A Novel Convolutional Neural Network Based Model for Recognition and Classification of App》
论文名称:<A Novel Convolutional Neural Network Based Model for Recognition and Classification of Appl ...
- 漫谈深度学习在Super Resolution(超分辨率)领域上的应用
1.前言 清晨,师兄推荐给我一篇文章,关于利用DeepLearning思想进行图像超分辨恢复的.超分辨这个话题几年之前还是比较火爆的,无论是BiCube.SP.A*都给出了令人振奋的结果.但是细节恢复 ...
- (zhuan) Recurrent Neural Network
Recurrent Neural Network 2016年07月01日 Deep learning Deep learning 字数:24235 this blog from: http://jxg ...
- Bayesian Neural Network for regression (PRML)
Bayesian Neural Network : PRML 5.7章节 参考代码:https://nbviewer.jupyter.org/github/ctgk/PRML/blob/master ...
- 20-Joint entity and relation extraction based on a hybrid neural network(LSTM-ED+CNN),考虑长距离的实体标签之间的关
文章目录 abstract 1.introduction 2.相关工作 2.1. Named entity recognition 2.2. Relation classification 2.3 联合 ...
最新文章
- toolbar.netcraft.com查询域名等信息
- 数据与AI如何提升IT运维价值?锐捷发布乐享智能运维管理平台
- Docker(一):基础入门篇
- ★LeetCode(538)——把二叉搜索树转换为累加树(JavaScript)
- java接口_Java接口
- 股市的逻辑-201006-2
- mikrotik固件升级
- 游戏地图主要功能实现
- p2p与反p2p的博弈,一劳永逸真的不容易么
- JavaSE入门:面向对象(三)
- 《复杂网络分析》习题及自我解答
- QTcreater学习笔记
- java解析shp文件以及坐标转换(工具类)
- 12个黑科技网站,每个都是十分良心了 zt – 步行街主干道 – 虎扑社区
- 神器啊,理工男的春天来了!
- 苹果ios超级签名源码包java版带分发页面支持安卓合并部署教程
- 修改远程仓库地址,更换远程仓库https://www.cnblogs.com/tangshengwei/p/15843585.html
- 无线网卡(RTL8188EU)驱动编译、使用DHCP配置无线网络(1
- 怎么在不重启服务器情况下查看管理口-IPMI的ip是多少?
- SharedObject对象聊天室
热门文章
- tpshop报 商业用途必须购买正版,使用盗版将追究法律责任
- 斐讯c 语言面试题,斐讯面试记录—三线程交替打印ABC
- 企业邮箱哪个最好用?企业内部邮箱多少钱? 企业邮箱安全怎么选择?
- 基于历史使用数据的虚拟机动态整合研究( 文献阅读与问题理解)
- Python PyAutoGUI模块自动化控制鼠标和键盘
- 2019 计蒜之道 初赛 第一场 商汤的AI伴游小精灵
- rdt 可靠数据传输协议
- ISO26262-道路车辆功能安全
- java eml 附件_向EML文件追加附件的Java实现
- Niushop开源商城:618电商大趴开始预热啦!你的开源商城系统呢?