发表在2017年ICCV。

核心任务:加速图像处理算子(accelerate image processing operators)。

核心方法:将算子处理前、后的图像,训练一个全卷积CNN网络,从而代替传统算子。

核心贡献:作者选择了一种CNN结构,在10种算子上表现优异。

故事

  • 历史上已经有很多图像处理算子,解决各种各样的图像处理问题。比如双边带滤波器等。但它们的普遍问题是慢,难以实时。

  • 有些人尝试:将图像降采样,再进行处理,最后再升采样。这种办法一是会导致性能下降,因为高频细节在降采样时丢掉了;二是即便这样也很难实时。

  • 本文的方法:将算子处理前、后的图像,用于训练一个全卷积CNN网络。然后我们就用CNN处理图像啦!再也不用降采样啦!

  • 此外,在选择网络结构时,作者综合考虑了它们(1)近似图像处理算子的精度,(2)运行时间,(3)结构复杂性(如参数规模,使得能够存储在移动设备上),并最终选择了一个效果最好的网络结构。作者同时考虑了10种图像处理算子。

  • 最后,作者还提出了一个很有意思的实验:由于CNN将这些算子参数化了,因此我们可以在测试阶段调整这些参数,从而实现交互式图像处理。

方法

直接看原文中比较重要的一段:

We have experimented with a large number of network architectures derived from prior work in high-level vision, specifically on semantic segmentation. We found that when some of these high-level networks are applied to low-level image processing problems, they generally outperform dedicated architectures previously designed for these image processing problems. The key advantage of architectures designed for high-level vision is their large receptive field. Many image processing operators are based on global optimization over the entire image, analysis of global image properties, or nonlocal information aggregation. To model such operators faithfully, the network must collect data from spatially distributed locations, aggregating information at multiple scales that are ultimately large enough to provide a global view of the image.

重点:作者尝试将一些 原本用于high-level任务(如图像分割)的网络 用于图像处理任务,发现性能很好。原因可能是:这些网络的感受野通常比较大,因此在全局特征提取上做得比较好。而传统图像算子也很强调这一点,比如NL方法。

作者最终选择了[78]中提出的网络结构【该文三作也是[78]的作者。[78]谷歌引用2k+】,最初用于语义分割。

首先,输入和输出尺寸相同,都是\(m \times n \times w\)。中间特征的获取流程都是:\(3 \times 3\)空洞卷积(dilated convolution) => 自适应正则化 => LReLU非线性激活。

其中:

  • 空洞卷积的好处是:特征图的尺寸不会随着深度下降而变小,因此我们可以增大深度,从而增大感受野。最后一层不用空洞卷积,而是采用\(1 \times 1\)卷积,并且不使用非线性激活。

  • 自适应正则化先对特征BN,然后再作线性变换。注意有两个分支:一个是恒等分支,还有一个是BN分支。

网络中不含任何短连接,因此最大内存消耗只有前后两个卷积结构。

训练采用的是MSE损失。作者声称:尽管MSE被认为在感知质量方面不够理想,但其PSNR和SSIM精度表现好。作者尝试了其他损失,如对抗损失,结果发现近似精度不高。

实验

首先看拟合精度:

然后看速度和参数规模:

其他的不看了。我们看看如何交互。在本文中,作者是增加了一个可调整的输入通道,来实现交互。

最后最后,作者尝试用一个网络实现10个功能。做法:

  1. 增加了10个输入通道。每个通道都是一个二值通道,来指示任务选择。

  2. 训练时随机切换任务和训练对象。

效果一般。如论文中表2。

这篇文章怎么能引用近100次的???把一篇2k+引用文章里的网络拿来,也能发一篇ICCV,实在没明白。

Paper | Fast image processing with fully-convolutional networks的更多相关文章

  1. Fully Convolutional Networks for Semantic Segmentation 译文

    Fully Convolutional Networks for Semantic Segmentation 译文 Abstract   Convolutional networks are powe ...

  2. 【Detection】R-FCN: Object Detection via Region-based Fully Convolutional Networks论文分析

    目录 0. Paper link 1. Overview 2. position-sensitive score maps 2.1 Background 2.2 position-sensitive ...

  3. 中文版 R-FCN: Object Detection via Region-based Fully Convolutional Networks

    R-FCN: Object Detection via Region-based Fully Convolutional Networks 摘要 我们提出了基于区域的全卷积网络,以实现准确和高效的目标 ...

  4. 论文阅读(Xiang Bai——【CVPR2016】Multi-Oriented Text Detection with Fully Convolutional Networks)

    Xiang Bai--[CVPR2016]Multi-Oriented Text Detection with Fully Convolutional Networks 目录 作者和相关链接 方法概括 ...

  5. 【Semantic Segmentation】 Instance-sensitive Fully Convolutional Networks论文解析(转)

    这篇文章比较简单,但还是不想写overview,转自: https://blog.csdn.net/zimenglan_sysu/article/details/52451098 另外,读这篇pape ...

  6. 论文笔记之:Visual Tracking with Fully Convolutional Networks

    论文笔记之:Visual Tracking with Fully Convolutional Networks ICCV 2015  CUHK 本文利用 FCN 来做跟踪问题,但开篇就提到并非将其看做 ...

  7. 论文学习:Fully Convolutional Networks for Semantic Segmentation

    发表于2015年这篇<Fully Convolutional Networks for Semantic Segmentation>在图像语义分割领域举足轻重. 1 CNN 与 FCN 通 ...

  8. 『计算机视觉』R-FCN:Object Detection via Region-based Fully Convolutional Networks

    一.网络介绍 参考文章:R-FCN详解 论文地址:Object Detection via Region-based Fully Convolutional Networks R-FCN是Faster ...

  9. 全卷积网络Fully Convolutional Networks (FCN)实战

    全卷积网络Fully Convolutional Networks (FCN)实战 使用图像中的每个像素进行类别预测的语义分割.全卷积网络(FCN)使用卷积神经网络将图像像素转换为像素类别.与之前介绍 ...

  10. Fully Convolutional Networks for semantic Segmentation(深度学习经典论文翻译)

    摘要 卷积网络在特征分层领域是非常强大的视觉模型.我们证明了经过端到端.像素到像素训练的卷积网络超过语义分割中最先进的技术.我们的核心观点是建立"全卷积"网络,输入任意尺寸,经过有 ...

随机推荐

  1. xml模块(了解)

    目录 一.xml简介 二.Python使用xml 三.自己创建xml文档 一.xml简介 xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单,不过,古时候,在 ...

  2. vue中\$refs、\$emit、$on的使用场景

    1.$emit的使用场景 子组件调用父组件的方法并传递数据注意:子组件标签中的时间也不区分大小写要用“-”隔开 子组件: <template> <button @click=&quo ...

  3. SQLserver无法删除数据库 "XXXX",因为该数据库当前正在使用。

    问题描述: 有时候删除库的时候,会显示无法删除数据库,因为该数据库当前正在使用. 解决方法: 方法一: EXEC msdb.dbo.sp_delete_database_backuphistory @ ...

  4. 《细说PHP》第四版 样章 第23章 自定义PHP接口规范 1

    如今的项目开发中,接口是很普遍的应用技术.现在好多项目组都单独设有接口开发人员.像腾讯.微博.淘宝等开放平台,其所谓的开放,就是提供一些可调用的接口,用于获取相关的信息.例如,微信用户基本信息.淘宝店 ...

  5. gitlab与jenkins结合构建持续集成

    Jenkins是java编写,需要安装JDK,这里采用 yum 安装,对版本有需求的,可以到 oracle 官网下载 JDK. yum install -y java-1.8.0-openjdk 一. ...

  6. 深入理解JVM,虚拟机类加载机制

    类加载过程概览 类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括以下7个阶段: 加载(Loading) 验证(Verification) 准备(Preparation) 解析(Re ...

  7. SpringMVC详解------参数绑定

    SpringMVC详解------参数绑定  转载于:https://blog.csdn.net/swebin/article/details/92795422 目录 1.SpringMVC 参数绑定 ...

  8. 阿里P7工作总结:Spring MVC的工作原理,看完受益匪浅

    这篇文章将深入探讨Spring框架的一部分——Spring Web MVC的强大功能及其内部工作原理. 项目安装 在本文中,我们将使用最新.最好的Spring Framework 5.我们将重点介绍S ...

  9. 2019年上半年收集到的人工智能Python编程干货文章

    2019年上半年收集到的人工智能Python编程干货文章 一文了解Python深拷贝与浅拷贝问题 Python广度优先查找和深度优先查找(内附python教程分享) Python基础之函数2 (参数的 ...

  10. Django和前端用ajax传输json等数据

    需要传输的是下图中所有的input中客户端设置的数据 整个页面是用js生成,代码不长,但是用了许多拼接,看起来开比较乱,页面的核心就是下面的部分,有一些关键参数部分就不放了,可以跳过这个 下面开始重点 ...