位置: IT常识 - 正文

超分算法之SRCNN(超分模型)

编辑:rootadmin
超分算法之SRCNN

推荐整理分享超分算法之SRCNN(超分模型),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:超分系统,超分系统,超分技术,超分算法原理,超分模型,超分技术,srcnn超分辨算法训练,srcnn超分辨算法训练,内容如对您有帮助,希望把文章链接给更多的朋友!

这篇文章是2014年的一篇论文,其主要意义在于作者推出的SRCNN是深度学习在超分上开篇之作!SRCNN证明了深度学习在超分领域的应用可以超越传统的插值等办法取得较高的表现力。

参考目录: ①深度学习图像超分辨率开山之作SRCNN(一)原理分析 ②深度学习端到端超分辨率方法发展历程

SRCNN1 SRCNN简介2 SRCNN模型结构3 Loss function:4 实验4.1 setup4.2 实验结果4.2.1 performance4.2.2 runtime5 进一步研究5.1 滤波器学习情况5.2 ImageNet学习5.3 滤波器数量5.4 滤波器大小6 效果展示7 总结1 SRCNN简介

作者推出了一种基于SISR的超分方法。这种方法基于深度学习,旨在实现一种端对端的网络模型——SRCNN,其用于将低分辨率的图像转换为高分辨图像。作者指出,SRCNN在当时的数据集下达到了SOAT的水平。

SRCNN具有结构简单且低失真度的特点:如上图所示,只需要一定的训练回合,SRCNN就可以超过传统的超分方法。

在一定数量的卷积层结构下,SRCNN可以达到fast-training。

实验表明,在一定范围内,越大的数据集和较大的网络模型可以提升SRCNN对图像的重建效果。

2 SRCNN模型结构

首先说明以下符号的含义:

YYY:输入图像经过预处理(双三次插值)得到的图像,我们仍将YYY当作是低分辨率图像,但它的size要比输入图像要大。F(Y)F(Y)F(Y):网络最后输出的图像,我们的目标就是通过优化F(Y)F(Y)F(Y)和Ground-Truth之间的loss来学会这个函数F(⋅)F(\cdot)F(⋅)。XXX:高分辨率图像,即Ground-Truth,它和YYY的size是相同的。

如上图所示是SRCNN的网络模型,其分为三部分,分别是: ①:Patch extraction and representation(其实就是图像特征提取层)。通过CNN将图像YYY的特征提取出来存到向量中,这个向量里包含了多张feature map,即一张图所含的一些特征。 ②:非线性映射层。将上一层的feature map进一步做非线性映射处理,使得网络深度加大,更有利于学到东西。 ③:网络重建层。重建用于将feature map进行还原成高分辨率图像F(Y)F(Y)F(Y),其与XXX做loss并通过反传来学习整个模型的参数。

超分算法之SRCNN(超分模型)

下面分别详细展开论述上面三个层。

特征提取层: 特征提取层用了一层的CNN以及ReLU去将图像YYY变成一堆堆向量,即feature map: F1(Y)=max(,W1⋅Y+B1).F_1(Y) = max(0, W_1\cdot Y+B_1).F1​(Y)=max(0,W1​⋅Y+B1​).其中W1、B1W_1、B_1W1​、B1​是滤波器(卷积核)的参数,这是一个f1×f1f_1\times f_1f1​×f1​大小的窗口,通道数为YYY的通道ccc,一共有n1n_1n1​个滤波器。 Note:

经过这一层,图像YYY的大小以及通道数都会发生改变。max(,x)max(0,x)max(0,x)表示ReLU层。

非线性映射层: 这一层就是将上一层的feature map再用卷积核过滤一次以及ReLU层进行激活,也可以理解为为了加深网络从而更好的学习函数F(⋅)F(\cdot)F(⋅): F2(Y)=max(,W2⋅F1(X)+B2).F_2(Y) = max(0, W_2\cdot F_1(X)+B_2).F2​(Y)=max(0,W2​⋅F1​(X)+B2​).大致结构和特征提取层一样,不一样的是这一层只是为了增加网络模型的非线性程度,所以只需采用1×11\times 11×1的卷积核就可以了,其通道数为n1n_1n1​,一共有n2n_2n2​个滤波器。当然可以继续增加非线性层,但是本文旨在推出一种通用性SR框架,所以会选择最简的网络模型。

图像重建层: 借鉴于传统超分的纯插值办法——对图像局部进行平均化的思想,其本质就是乘加结合的方式,因此作者决定采用卷积的方式(也是乘加结合的方式)去做重建: F(Y)=W3⋅F2(Y)+B3.F(Y) = W_3\cdot F_2(Y) + B_3.F(Y)=W3​⋅F2​(Y)+B3​.这一层是不需要ReLU层的,且卷积核的大小为n2×c×f3×f3n_2\times c \times f_3 \times f_3n2​×c×f3​×f3​. Note:

也可以从另一个角度来考虑,经过前面的卷积之后,图像的size变小了,因此需要上采样过程来恢复图像,势必需要一个反卷积来做这件事,而反卷积本质也是卷积的一种。3 Loss function:

设batchsize为nnn,SRCNN网络参数集为Θ={W1,W2,W3,B1,B2,B3}\Theta = \{W_1, W_2, W_3, B_1, B_2, B_3\}Θ={W1​,W2​,W3​,B1​,B2​,B3​},则Loss function可定义为: L(Θ)=1n∑i=1n∣∣F(Yi;Θ)−Xi∣∣2.L(\Theta) = \frac{1}{n}\sum^n_{i=1}||F(Y_i;\Theta) - X_i||^2.L(Θ)=n1​i=1∑n​∣∣F(Yi​;Θ)−Xi​∣∣2.Note:

选择MSE作为损失函数的一个重要原因是MSE的格式和我们图像失真评价指标PSNR很像,因此可以理解为SRCNN是直接冲着提升PSNR去的,从而让高分辨率的图像有较小的失真度。MSE就是迫使网络将我们恢复的SR图像向着Ground-Truth(标签XXX)的方向靠近。4 实验4.1 setup

实验的一些比较重要的配置如下:

Training-data涉及91张图片。Set5数据集涉及5张图片用于up-scale-factor={2,3,4}的验证与测试;Set14数据集涉及14张图片用于up-scale-factor=3的验证与测试。实验的一些参数设置:f1=9,f3=5,n1=64,n2=32f_1=9,f_3=5,n_1=64,n_2=32f1​=9,f3​=5,n1​=64,n2​=32.Ground-Truth的大小是32×3232\times 3232×32。卷积核的参数初始化来自于:wi∼N(,0.001)w_i^0\sim\mathcal{N}(0, 0.001)wi0​∼N(0,0.001)。SRCNN一共3层网络,前两层配置的学习率为1−410^{-4}10−4,最后一层的学习率配置为1−510^{-5}10−5,作者指出这种让最后一层较小的学习率有利于网络收敛。4.2 实验结果4.2.1 performance

从上图看出SRCNN的PSNR在大部分图片中都取得了最佳的值!此外,所消耗的时间也是最少的。

4.2.2 runtime

从上图可以看出SRCNN有最少的runtime!

5 进一步研究5.1 滤波器学习情况

上图是特征提取层滤波器的学习可视化图,在91张图片的训练结果,其中up-scale-factor=2。 图像a、f:类似于高斯分布。 图像b、c、d:类似于边缘检测。 图像e:类似于纹理检测。 其余:一些坏死的卷积核参数。

5.2 ImageNet学习

作者这一节旨在探究数据集的大小对performance的影响。

采用ILSVRC 2013的ImageNet数据集和91张图片这两个训练集做对比训练。在Set5数据上做测试,up-scale-factor=3。

实验结果如下: 从图中可知,大的数据集对表现力的提升是有帮助的(虽然我们都知道,但是作者还是做个实验来证明下)。

5.3 滤波器数量

作者研究滤波器数量对PSNR的提升影响,设置了3组实验,结果如下: 实验结果表明卷积核的数量对表现力是有提升的,但是数量的增加也带来了runtime的增加,如果你想获取快速的重建效果,建议还是取小数量的卷积核更好。

5.4 滤波器大小

作者研究滤波器size对PSNR的提升影响,进行了2组实验,分别是: f1=9,f3=5f_1=9,f_3=5f1​=9,f3​=5和f1=11,f3=7f_1=11,f_3=7f1​=11,f3​=7。 从实验结果来看,较大的卷积核可以提取更好的特征信息,但是也带来了runtime的上升,因此实际中我们需要根据实际情况进行trade-off。

6 效果展示

7 总结本文作为SR在深度学习领域的开篇之作,提出了一种通用性框架SRCNN,将输入图像进行Bicubic插值预处理,然后特征提取,非线性映射,最后进行重建;重建后的图像与Ground-Truth做loss来迫使网络学习到如何从LR→HRLR \to HRLR→HR的知识。选用深度学习常用的MSE作为Loss function,因为MSE与PSNR有着相似的表达式。SRCNN在PSNR和runtime上都表现不俗,超越了当时的SOAT,表征了这种框架的实用性。作者做了一系列实验,其中包括可视化乐特征提取到的向量是怎么样的;大的数据集对表现力的提升是有帮助的;卷积核的数量的增加对表现力是有提升的,但是数量的增加也带来了runtime的增加;较大的卷积核可以提取更好的特征信息,但是也带来了runtime的上升。
本文链接地址:https://www.jiuchutong.com/zhishi/288118.html 转载请保留说明!

上一篇:layui-icon各种常用动态图标(layui iconfont)

下一篇:vue中,给一个URL地址,利用FileSaver.js插件下载文件到本地(vue url 参数)

  • 未认证的进项税能做转出处理吗
  • 买材料通过公司走账合法吗
  • 每个月发工资扣个税扣的肉疼
  • 财务报表申报错误怎么办
  • 一次性分红到期还本的会计分录
  • 农产品普通发票抵扣政策
  • 计提坏账准备怎么理解
  • 个人购买商铺如何缴税
  • 公共部门管理中具有哪些作用
  • 房地产土地增值税的算法
  • 政府补助应计入
  • 包装材料报废后如何做会计核算?
  • 资质挂靠人员需要交个税吗?
  • 跨年度发票退回如何记账
  • 小规模企业申请破产流程
  • 小微企业月销售额不超过15万
  • 制造型企业采购
  • 报废固定资产增值税税率
  • 固定资产处置如何入账
  • 小规模纳税人自开专票
  • 权责发生制如何计算
  • 消防改造费用
  • 跨年暂估成本的账务处理冲回
  • 固定资产达到使用状态时发生的安装费用
  • 制造费用主要包括哪些内容
  • 银行利息为什么只算10个月
  • 厂区地面硬化的意义
  • 如何删除鸿蒙
  • macbook无限输入z
  • 未抵扣的固定资产处理
  • php tokenizer
  • 个人所得税的征收模式为()A分类征收B综合征收C
  • vue实现pdf下载
  • 企业亏损还需要交增值税吗
  • vue 播放视频流
  • 以摊余成本计量和以公允价值计量的区别
  • php获取浏览器ua
  • 非税收入票据是什么意思
  • 人力资源增加什么资金积累
  • 应收账款能想到什么
  • 工程发票预缴是什么意思
  • access如何设置宏的功能
  • 织梦相关文章调用
  • 资本性支出与资本性支出(基本建设)的区别
  • 公司法人怎么样才会没有责任
  • 工会经费税务代收是什么意思
  • 小规模企业出租不动产增值税税率
  • 固定资产的期末余额反映固定资产原值的结余额
  • 企业给加盟店的钱怎么算
  • 代收第三方补偿什么意思
  • 进项税额的ppt
  • 企业租用个人房屋的财税处理
  • 软件属于无形资产什么类别
  • sql做判断
  • mysql 5.7启动
  • 关闭默认共享的影响
  • 快启动U盘怎么进去
  • win10有三个系统
  • 主板bios恢复出厂默认设置方法
  • Ubuntu 32/64位安装音乐标签编辑器Kid3的方法
  • centos6 grub
  • CentOS系统中与时间的相关命令详解
  • vsftpd怎么配置
  • Following the pipeline
  • jquery提交form表单数据
  • Android Toast设置弹窗大小
  • js动态生成函数
  • linux中wget命令出现错误
  • js如何获取cookie的值
  • javascript的push方法
  • 广州市国家税务局第三分局
  • 贵阳市税务局投诉电话号码
  • 云南增值税查验平台
  • 税务稽查为什么不问证人
  • 税控发票开票软件(金税盘版)事件代码768功能代码5?
  • 江西发票税率
  • 公司给个人买房,怎么做账
  • 考公务员考国税局有什么要求吗
  • 太原公安分局有几个
  • 注册地址和税务登记可以不一致吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设