array(2) { ["docs"]=> array(10) { [0]=> array(10) { ["id"]=> string(3) "428" ["text"]=> string(77) "Visual Studio 2017 单独启动MSDN帮助(Microsoft Help Viewer)的方法" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(8) "DonetRen" ["tagsname"]=> string(55) "Visual Studio 2017|MSDN帮助|C#程序|.NET|Help Viewer" ["tagsid"]=> string(23) "[401,402,403,"300",404]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400964" ["_id"]=> string(3) "428" } [1]=> array(10) { ["id"]=> string(3) "427" ["text"]=> string(42) "npm -v;报错 cannot find module "wrapp"" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "zzty" ["tagsname"]=> string(50) "node.js|npm|cannot find module "wrapp“|node" ["tagsid"]=> string(19) "[398,"239",399,400]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400760" ["_id"]=> string(3) "427" } [2]=> array(10) { ["id"]=> string(3) "426" ["text"]=> string(54) "说说css中pt、px、em、rem都扮演了什么角色" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(12) "zhengqiaoyin" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400640" ["_id"]=> string(3) "426" } [3]=> array(10) { ["id"]=> string(3) "425" ["text"]=> string(83) "深入学习JS执行--创建执行上下文(变量对象,作用域链,this)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "Ry-yuan" ["tagsname"]=> string(33) "Javascript|Javascript执行过程" ["tagsid"]=> string(13) "["169","191"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511399901" ["_id"]=> string(3) "425" } [4]=> array(10) { ["id"]=> string(3) "424" ["text"]=> string(30) "C# 排序技术研究与对比" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "vveiliang" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(8) ".Net Dev" ["catesid"]=> string(5) "[199]" ["createtime"]=> string(10) "1511399150" ["_id"]=> string(3) "424" } [5]=> array(10) { ["id"]=> string(3) "423" ["text"]=> string(72) "【算法】小白的算法笔记:快速排序算法的编码和优化" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "penghuwan" ["tagsname"]=> string(6) "算法" ["tagsid"]=> string(7) "["344"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511398109" ["_id"]=> string(3) "423" } [6]=> array(10) { ["id"]=> string(3) "422" ["text"]=> string(64) "JavaScript数据可视化编程学习(二)Flotr2,雷达图" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "chengxs" ["tagsname"]=> string(28) "数据可视化|前端学习" ["tagsid"]=> string(9) "[396,397]" ["catesname"]=> string(18) "前端基本知识" ["catesid"]=> string(5) "[198]" ["createtime"]=> string(10) "1511397800" ["_id"]=> string(3) "422" } [7]=> array(10) { ["id"]=> string(3) "421" ["text"]=> string(36) "C#表达式目录树(Expression)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "wwym" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(4) ".NET" ["catesid"]=> string(7) "["119"]" ["createtime"]=> string(10) "1511397474" ["_id"]=> string(3) "421" } [8]=> array(10) { ["id"]=> string(3) "420" ["text"]=> string(47) "数据结构 队列_队列实例:事件处理" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "idreamo" ["tagsname"]=> string(40) "C语言|数据结构|队列|事件处理" ["tagsid"]=> string(23) "["246","247","248",395]" ["catesname"]=> string(12) "数据结构" ["catesid"]=> string(7) "["133"]" ["createtime"]=> string(10) "1511397279" ["_id"]=> string(3) "420" } [9]=> array(10) { ["id"]=> string(3) "419" ["text"]=> string(47) "久等了,博客园官方Android客户端发布" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(3) "cmt" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511396549" ["_id"]=> string(3) "419" } } ["count"]=> int(200) } 222 Scale-recurrent Network for Deep Image Deblurring - 爱码网
摘要:

在单张图片去模糊中,从粗糙到细致的模式例如在一个不同尺度的金字塔结构中,逐渐复原清晰图像在传统的基于优化的算法和最近的基于神经网络的方法中都非常成功。在本文中,我们研究了这种策略并且针对这种去模糊任务提出了一个尺度递归网络(SRN-DeblurNet)。相比较于文献[25]中的许多最近的基于学习的方法,它有一个更简单的网络结构,更少的参数,而且更加容易训练。我们在有复杂运动的大尺度去模糊数据集上评价了我们的算法。结果显示我们的方法在质量和数量上都能比目前的最优方法产生更好的质量结果。

1.介绍:
对于去模糊问题,coarse to fine的模式是一个很好的方法,主要就是多尺度。针对多尺度,本文提出的尺度循环网络(SRN)在两个方面进行了创新。
Scale-recurrent Structure
在多尺度模型里,每一尺度的网络结构和任务都相似,但是各尺度的参数仍然是相互独立的。本文提出的在不同尺度之间共享网络权重可以减少网络参数、使模型的学习能力更加稳固。
编解码残差网络结构
编解码器的结构在CV任务中非常有用,与残差网络相结合可以结合两者优势,还能扩大感受野,对于捕捉运动模糊很重要。本文设计的网络训练收敛快、参数少、去模糊效果好,超过了当前的最好水平。
2.相关工作:
利用图像的各种先验知识;带跳跃连接的自编码器。
U-net(编解码器网络)。多尺度网络。

3.网络结构:
  3.1 SRN
Scale-recurrent Network for Deep Image Deblurring

在每一个尺度上,以两张图像作为输入,一张模糊图像,一张上采样后的去模糊图像。同时还在中间输入了隐藏状态的特征。
循环网络用ConvLSTM.它能在利用时间相关性的同时利用空间相关性。
不同尺度之间对图像和feature的上采样都使用双线性插值(bilinear interpolation),因为简单有效。

3.2用残差网络构造的编解码器
编解码器用对称的结构先把输入数据编成小尺寸、多通道的特征图,然后把特征图解码成与与输入相同shape的输出。跳跃连接(skip-connection)在编解码器中广泛用来连接不同level的特征,有利于梯度传播与加速收敛。一般,编码器包括几级步长不为1的卷积,解码器包括几级解卷积或resize。
然而直接使用简单的编解码器有以下缺点:层数少导致感受野小,若层数过多又会导致特征图尺寸过小而不能充分保留空间信息,且层数过多还会增加参数,使网络难以收敛。
本文将残差模块用于编解码器,所有残差块没有BN层。在每一个编码残差块(EBlocks)中,先通过步长为2的卷积,将尺寸缩小一半,同时将特征维度增加一倍。然后通过若干个残差网络,每个残差网络包含两层卷积。在每一个解码模块(DBlocks)中,结构与编码模块(EBlocks)对称,即若干个残差网络和一个解卷积层(deconvolution),将尺寸增加一倍,特征维度减少一半。
隐藏层隐藏状态包含了有用的信息

     Scale-recurrent Network for Deep Image Deblurring

对每一个尺度,可以依次分成几部分:InBlocks 2*EBlocks ConvLSTMBlocks 2*Dblocks OutBlocks;InBlocks产生32通道特征,两个EBlocks分别产生64,128通道,DBlocks和OutBlocks与前面对称。
每一层卷积后都用ReLU层**,所有核的尺寸都为5.

3.3损失函数
多尺度MSE损失:
Scale-recurrent Network for Deep Image Deblurring
权重相同。
同时还尝试了total variation loss核adversarial loss

4.实验
训练时每次选取16张图片,在每张图片上随机截取256*256的patches.



相关文章: