基本介绍

ICCV 2017

Fast Image Processing with Fully-Convolutional Networks

笔记

  1. 作者想建立一个神经网络模型去近似一些图像里的操作,比如图像风格迁移,图像铅笔画,去雾,上色,增加细节等等。主要考虑三个方面,近似的精度、运行时间、内存占用多少。

  2. 现在加快图像处理的一种通用的手段,是downsample-evaluate-upsample approach。这种方法的主要问题是:
    • 操作主要低分辨率图像上,这个不利于交互式使用。
    • 主要的操作是针对低分辨率图像的,对精度有影响。
  3. 作者想用一个模型来拟合十种图像操作。

    All operators are approximated using an identical architecture with no hyperparameter tuning.

  4. 已经有很多中,图片处理的加速算法,比如中值滤波器等等,但是他们的问题没有一般性。有一般性的是上面提到的下采样方法。

  5. 整个网络是Context aggregation networks(CAN),核心就是:
    \[ L_i^s = \phi\left ( \psi^s(b_i^s+\sum_jL_j^{s-1}*_{r_s}K_{i,j}^s) \right) \]
    其中,\(L_i^s\)是\(s\)层\(L^s\)的第\(i\)个特征层,\(*_{r_s}\)代表空洞卷积操作,\(K_{i,j}^s\)代表3X3的卷积核,\(b_i^s\)是偏置项,$ \psi^s\(是自适应的归一化函数,\) \phi$ 是像素级的非线性单元LReLU:\(\phi(x) = max(\alpha x,x)\) 。其中\(\alpha\)取的是0.2。

  6. 在使用batch Normalization的时候,也就是在给网络添加了BN层,作者发现对风格迁移、铅笔画有帮助,在其他操作上的表现不是很好,越是提出来自适应的BN,也就是自适应归一化函数。
    \[\phi^s(x) = \lambda_s x + \mu_s BN(x)\]、
    其中,\(\lambda_s ,\mu_s \in \mathbb{R}\) 是在反向传播中学习的参数。

  7. 训练是时候,是输入图片对,进行有监督训练,用了很多loss函数训练,最后发现均方误差才是最好的。
    \[\ell(\mathcal{K},\mathcal{B}) = \sum_i \frac{1}{N_i} \parallel \hat{f} (I_i;\mathcal{K},\mathcal{B}) - f(I_i)\parallel \]
    那些复杂的loss,b并没有给实验提高精度。

  8. 为了提高模型对分辨率的使用能力,在训练的过程中,随机选择图片的分辨率在(320p到1440p)之间。这些图片是随机裁剪的获得的。训练的采用Adam ,迭代500k次,耗时一天。

  9. 实验进行近似模拟的十个操作如下:
    • Rudin-Osher-Fatemi:是一种图像复原模型。
    • TV-L1 image restoration:是一种图像复原模型。
    • L0 smoothing:L0范式的图像平滑。
    • relative total variation:一种通过剥离细节来提取图像结构的操作。
    • image enhancement by multiscale tone manipulation:通过多尺度进行图像增强。
    • multiscale detail manipulation based on local Laplacian filtering:通过低级算子仿造图像细节。
    • photographic style transfer from a reference image:图像风格迁移。
    • dark-channel dehazing :暗通道去雾。暗通道先验(Dark Channel Prior)是基于统计意义上的观测得到的结果。总结了大量的室外无雾的图像,提出基于暗通道先验的去雾算法,在大部分无雾图像的无天空区域,像素中至少存在一个颜色通道存在很低非常低的亮度值。这个最低的亮度值几乎等同于0。
    • nonlocal dehazing :非局部去雾。
    • pencil drawing :铅笔画风格。
  10. 网络的具体细节:

    上图只是演示图,实际上的更深。圆圈表示非线性函数LReLU。除了第一层和最后一层是三个通道外,其余均是多个通道,倒数第二层使用1X1的卷积,无非线性转化,得到最后的一层。
    CAN 32的结构(d = 10 and w = 32 )如下:

  11. 关于横向对比实验。
    • 对比的网络设计一个plain,就是将上面的网络的空洞卷积全部换了,换成普通的卷积。作者说这样是为了保证结构的相似性。
    • Encoder-decoder网络。说是参考U-Net搞得一个hourglass-shaped networks (沙漏型网络,这个形容词不错)。对于U-Net主要的修改是,为了减少计算量和内存,减少了一半的卷积核;缩放了最后结果输出,使得输出图片和输入一样大。(关于这个修改,我觉得很不科学啊,既然要和它对比,为什么要阉割之后再对比呢?)
      文章给出的理由是:

      we found that this is sufficient to get high accuracy and it matches our configuration of the other baselines.
      然后又说,能够获得差不多的精度,甚至更快~缺点主要是参数太多,高出两个数量级。

    • 还有一个是FCN-8s。这个模型的问题是,参数多,精度低。

  12. 泛化能力的训练和测试:(每个模型,分别两次训练,然后两个都数据集测试):
    • MIT-Adobe test set 和RAISE test set
    • MIT-Adobe training set 、 RAISE training set
  13. 作者另外做了关于深度和宽度(应该说是通道数)的实验。

总结

作者工作量不少,可能也跟任务特别多有关,相当于整合了很多任务。模型最大的特点就是参考那篇ICLR 2016,大量使用空洞卷积。这个模型我也想过,只是没想到去用来代替这么多任务。实验有些地方不是很好,比如Unet那块。还是有些启发的。2333。

转载于:https://www.cnblogs.com/blog4ljy/p/9064799.html

Note_Fast Image Processing with Fully-Convolutional Networks相关推荐

  1. Fully Convolutional Networks for Semantic Segmentation (FCN)论文翻译和理解

    论文题目:Fully Convolutional Networks for Semantic Segmentation 论文来源:Fully Convolutional Networks for Se ...

  2. 【论文翻译】Fully Convolutional Networks for Semantic Segmentation_2

    论文题目:Fully Convolutional Networks for Semantic Segmentation 论文来源:Fully Convolutional Networks for Se ...

  3. 【论文翻译】Fully Convolutional Networks for Semantic Segmentation

    论文题目:Fully Convolutional Networks for Semantic Segmentation 论文来源:Fully Convolutional Networks for Se ...

  4. 【FCN2015】Fully Convolutional Networks for Semantic Segmentation

    Fully Convolutional Networks for Semantic Segmentation 用于语义分割的全卷积网络 arXiv:1411.4038v2 [cs.CV] 8 Mar ...

  5. 目标检测经典论文——R-FCN论文翻译(中英文对照版):Object Detection via Region-based Fully Convolutional Networks

    目标检测经典论文翻译汇总:[翻译汇总] 翻译pdf文件下载:[下载地址] 此版为纯中文版,中英文对照版请稳步:[R-FCN纯中文版] R-FCN: Object Detection via Regio ...

  6. 医学图像分割--Stacked fully convolutional networks with multi-channel learning

    Stacked fully convolutional networks with multi-channel learning: application to medical image segme ...

  7. 对象分割--Instance-sensitive Fully Convolutional Networks

    Instance-sensitive Fully Convolutional Networks ECCV2016 Instance-sensitive 这里是什么意思了, FCN 语义分割对同一类型的 ...

  8. 目标检测--R-FCN: Object Detection via Region-based Fully Convolutional Networks

    R-FCN: Object Detection via Region-based Fully Convolutional Networks Code: https://github.com/daiji ...

  9. 深度图像分割 -- Fully Convolutional Networks for Semantic Segmentation

    CVPR2015 PAMI 2016 Fully Convolutional Networks for Semantic Segmentation Code: https://github.com/s ...

  10. Fully Convolutional Networks

    文章目录 基本概念 网络结构 全卷积网络 反卷积层 跳级(skip)结构 模型训练 FCN是深度学习应用在图像分割的代表作, 是一种端到端(end to end)的图像分割方法, 让网络做像素级别的预 ...

最新文章

  1. arXiv论文如何一键链接解读视频,这个浏览器扩展帮你实现
  2. silverlight 中javascript 代码与托管代码的互调用 以及一些思考
  3. 并发编程-单元练习题
  4. ubuntu下面的SecureCRT破解失败问题+本地ubuntu系统远程连接RHEL服务器的免密码登录问题(自己归纳总结)
  5. python功能选择模块_python – 组合功能和功能模块
  6. 有符号位和无符号位。——int8疑问有感
  7. 与MQ通讯的完整JAVA程序
  8. (转)Quartz任务调度(1)概念例析快速入门
  9. Labview学习笔记(一)
  10. 十进制、二进制、八进制、十六进制转换
  11. sap系统搭建教程_SAP系统和微信集成的系列教程之一:微信开发环境的搭建
  12. oracle客户端sqlplus镜像(可通过ssh客户端远程连接操作sqlplus命令)
  13. FireBug使用方法
  14. HTC G14解锁S-OFF、刷机、获取ROOT权限
  15. 瑞幸退市,董事长被罢免,但是我并不同情他!
  16. android测量图片工具,ImageMeter Pro(图像测距)
  17. 两个求和符号如何用计算机,计算:两个求和符号∑∑怎么办
  18. 用zabbix监测snmptrap的主动告警功能
  19. Java获取Prometheus监控指标数据
  20. ASp.net动态加载js和css文件

热门文章

  1. binlog 分析及回滚神器Analysisbinlog
  2. linux下,如何迁移mysql数据库存放目录。利用软连接简单快捷实现移动到home数据盘下...
  3. dedecms漏洞getshell EXP最新可用
  4. sun cluster 3.3 +oracle 10g R2 RAC with ASM on solaris 10 U9
  5. Spring Boot打包成jar包
  6. iOS自定义SearchBar样式
  7. 广州某IT公司HR招开发:“不加班的都是垃圾 ”、“考不上本科是智商有问题”,网友:听了想打人...
  8. Java 8 中的 CompletableFuture 太好用了!20 个示例全分享…
  9. 同事1000行又臭又长 的类!被我用IDEA几分钟重构!真香!
  10. 来,看我是如何把面试官问倒的!