论文源址:https://arxiv.org/abs/1705.06820

tensorflow(github): https://github.com/HongyangGao/PixelDCN

基于PixelDCL分割实验:https://github.com/fourmi1995/IronsegExperiment-PixelDCL

摘要

反卷积被广泛用于深度学习的上采样过程中,包括语义分割的编码-解码网络与无监督学习的深度生成网络。反卷积的一个缺点是生成的特征图类似于棋盘状,相邻元素之间的关系无法较好的确定。为解决此问题,该文提出PixelDCL层,用于建立上采样输出的feature map中相邻像素之间的联系。该文对常规的反卷积进行重新解释。该网络可以应用于其他网络中,同时,并不会增加网络学习的参数量,其分割性能在准确率上会有所损失,但可以通过一些调参技巧进行克服。实验发现PixelDCL层相比常规的反卷积层,可以获得更多的形状及边等空间信息,进而得到更好的分割效果。

说明

通过反卷积实现上采样得到的feature map可以看作是通过独立的卷积核对多个隐藏层的feature map阶段性混合运算的结果。因此,feature map中相邻像素之间没有直接联系,从而产生“棋盘”问题。针对此问题,该文提出Pixel DCL层神经网络层,在这一层网络中的feature map是连续生成的,因此,后面生成的feature map依赖于先前生成的feature map,通过这种方式,建立起相邻像素之间直接联系.PixelDCL与基于概率密度评估的自恢复方法(PixelRNNs,PixelCNNs)相比,训练速度要快很多。虽然在PixelDCL中会有部分计算性能上的降低,但可以通过调参等技巧进行改善。

方法

反卷积:1D,2D卷积图如下,标准的反卷积操作可以分解为几个依赖于上采样因子的卷积操作。本文默认上采样因子为2。

 

通过如下操作可以计算得到上采样的输出,

代表卷积操作,代表阶段性的混搭操作,在常规的反卷积中,由于中间的feature map是由独立的卷积核得到的,因此中间过程的feature map像素中没有直接关联的信息。由于,相邻两个像素可能来自不同的卷积核的结果,因此,像素值会有所不同,进而会产生“棋盘”现象。如下图,通过后处理的方法进行平滑操作会造成额外的计算资源的消耗,增加网络的复杂度,同时无法进行end-to-end的训练。该文通过添加PixelDCL层给中间隐层feature map添加依赖信息。

像素级反卷积层:

由于常规反卷积操作得到的feature map中相邻像素来自不同卷积核得到的feature map,之间并无关联,该文提出PixelDCL,用于建立不同中间隐层特征的关联。中间隐层特征图是按序列生成,而不是同时生成。后一个feature map的生成依赖与上一个feature map的生成。PixelDCL的操作过程如下

后期生成的feature map可以依赖于前面部分或者全部的feature maps。

由于输入的feature map被重复利用,降低了计算的性能。因此,进行改进,使输入的feature map只与第一个feature map相关。操作过程如下:

像素级反卷积网络:

实验

图像分割

图像生成

时间比较

Reference

[1]  Liang-Chieh Chen, George Papandreou, Iasonas Kokkinos, Kevin Murphy, and Alan L Yuille. Deeplab: Semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected crfs. arXiv:1606.00915, 2016.

[2]  Mark Everingham, Luc Van Gool, Christopher KI Williams, John Winn, and Andrew Zisserman. The pascal visual object classes (voc) challenge. International journal of computer vision, 88(2): 303–338, 2010.

[3]  Mathieu Germain, Karol Gregor, Iain Murray, and Hugo Larochelle. Made: Masked autoencoder for distribution estimation. In Proceedings of The 32nd International Conference on Machine Learning, pp. 881–889, 2015.

论文阅读笔记十九:PIXEL DECONVOLUTIONAL NETWORKS(CVPR2017)的更多相关文章

  1. 论文阅读笔记(二十一)【CVPR2017】:Deep Spatial-Temporal Fusion Network for Video-Based Person Re-Identification

    Introduction (1)Motivation: 当前CNN无法提取图像序列的关系特征:RNN较为忽视视频序列前期的帧信息,也缺乏对于步态等具体信息的提取:Siamese损失和Triplet损失 ...

  2. 论文阅读笔记十八:ENet: A Deep Neural Network Architecture for Real-Time Semantic Segmentation(CVPR2016)

    论文源址:https://arxiv.org/abs/1606.02147 tensorflow github: https://github.com/kwotsin/TensorFlow-ENet ...

  3. 论文阅读笔记十六:DeconvNet:Learning Deconvolution Network for Semantic Segmentation(ICCV2015)

    论文源址:https://arxiv.org/abs/1505.04366 tensorflow代码:https://github.com/fabianbormann/Tensorflow-Decon ...

  4. 论文阅读笔记十五:Pyramid Scene Parsing Network(CVPR2016)

    论文源址:https://arxiv.org/pdf/1612.01105.pdf tensorflow代码:https://github.com/hellochick/PSPNet-tensorfl ...

  5. 论文阅读笔记十四:Decoupled Deep Neural Network for Semi-supervised Semantic Segmentation(CVPR2015)

    论文链接:https://arxiv.org/abs/1506.04924 摘要 该文提出了基于混合标签的半监督分割网络.与当前基于区域分类的单任务的分割方法不同,Decoupled 网络将分割与分类 ...

  6. 论文阅读笔记十:DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs (DeepLabv2)(CVPR2016)

    论文链接:https://arxiv.org/pdf/1606.00915.pdf 摘要 该文主要对基于深度学习的分割任务做了三个贡献,(1)使用空洞卷积来进行上采样来进行密集的预测任务.空洞卷积可以 ...

  7. 论文阅读笔记六十一:Selective Kernel Networks(SKNet CVPR2019)

    论文原址:https://arxiv.org/pdf/1903.06586.pdf github: https://github.com/implus/SKNet 摘要 在标准的卷积网络中,每层网络中 ...

  8. 论文阅读笔记(九)【TIFS2020】:True-Color and Grayscale Video Person Re-Identification

    Introduction (1)Motivation:在现实场景中,摄像头会因为故障呈现灰白色,或者为了节省视频的存储空间而人工设置为灰白色.灰度图像(grayscale images)由8位存储,而 ...

  9. 论文阅读笔记十二:Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation(DeepLabv3+)(CVPR2018)

    论文链接:https://arxiv.org/abs/1802.02611 tensorflow 官方实现: https: //github.com/tensorflow/models/tree/ma ...

随机推荐

  1. Windows10安装Ubuntu子系统设置Python3测试环境

    参考链接:https://blog.csdn.net/shanelee73/article/details/80238876

  2. Redis随笔

    dump.rdb:快照文件 删除这个文件 rm -f dump.rdb 第一步:创建6个redis实例,端口号从7001~7006 第二步:修改redis的配置文件 1.修改端口号 修改redis.c ...

  3. Spring Aware接口

    实现aware接口的bean必须在spring的xml文件中注册,由spring的IOC容器管理 1-ApplicationContextAware接口 可以获取spring的IOC容器 2-Bean ...

  4. inception_v2版本《Rethinking the Inception Architecture for Computer Vision》(转载)

    转载链接:https://www.jianshu.com/p/4e5b3e652639 Szegedy在2015年发表了论文Rethinking the Inception Architecture ...

  5. Food HDU - 4292 网络流 拆点建图

    http://acm.hdu.edu.cn/showproblem.php?pid=4292 给一些人想要的食物和饮料,和你拥有的数量,问最多多少人可以同时获得一份食物和一份饮料 写的时候一共用了2种 ...

  6. Control算法相关

    Control算法相关 添加新的control算法官方指导教程. 创建一个控制器: 在文件control_config中添加新控制器的配置信息: 注册新控制器. 如何添加新的CAN卡. Apollo中 ...

  7. RS485 通信接收时丢失0x11等数据

    RS485通信接收方,丢弃掉了值为 0x11 的数据. 怀疑 0x11 被转义,没有按照原始数据接收, 查看ASCII码对应表 0x11 代表 “本文结束”, 因此丢弃是有可能的. 要想接收原始数据而 ...

  8. FastCGI sent in stderr: "PHP Warning: simplexml_load_string(): Entity: line 1: parser error : Start tag expected, '<' not found in

    2018-4-16 17:59:03 星期一 1. 发送带有xml参数的请求时如果是用php curl, 需要将数组形式的post data 用 http_build_query() 转换 2. 接收 ...

  9. 设置Vmware中Kali_linux 共享文件夹

    kali_linux_2018.1 安装 Vmware-Tools 创建与 windows 的共享文件夹 vmware 设置共享目录 安装 Vmware-Tools root@kali:~# apt- ...

  10. javacv:调取本地摄像头,抓取人脸,保存为图片

    MAVEN: <dependency> <groupId>org.bytedeco</groupId> <artifactId>javacv-platf ...