源文网址:https://arxiv.org/abs/1707.03718

tensorflow代码:https://github.com/luofan18/linknet-tensorflow

基于Linknet的分割实验:https://github.com/fourmi1995/IronSegExperiment-LinkNet

摘要

像素级分割不仅准确率上有要求,同时需要应用的实际中实时的应用中。虽然精度上较高,但参数与操作上的数量都是十分巨大的。本文提出的网络结构参数并未增加。只使用了11.5million的参数量,与21.2GFLOPs用于处理3x360x480的图片。该网络在CAMVID上取得state-of-the-art的效果,同时,在Cityscapes上取得较好的结果。该文同时以不同图像分辨率在NVIDIA GPU上的处理时间进行比较。

介绍

由于像增强现实,自动驾驶等大量任务应用于像素级的分类分割任务上,因此像素级分割成为一个较热的研究点。受自编码器的启发,目前现存的分割网络以encoder-decoder作为主要网络结构。编码层将输入的信息编码到特征信息上,解码器将特征信息映射到空间分类中以进行分割。目标检测上中Fast RCNN,YOLO,SSD致力于实时的目标检测,但分割任务上实时性的相关工作仍未有所进展。

该文的贡献是在不影响处理时间的条件下得到较高分割准确率。一般,编码层由于卷积池化丢失的位置信息通过池化层最大值的索引或者全卷积操作进行恢复。

该文主要贡献是并未使用上述方法进行恢复,绕过空间信息,直接将编码器与解码器连接来提高准确率,一定程度上减少了处理时间。通过这种方式,保留编码部分中不同层丢失的信息,同时,在进行重新学习丢失的信息时并未增加额外的参数与操作。

相关工作

分割任务需要对每个像素进行标记,因此,空间信息的保留就比较重要,用于场景分析的分割网络一般可以分为编码-解码部分,分别用于分类与生成。state-of-the-art的分割网络大多使用ImageNet上的分类模型作为encoder部分。解码部分使用最大池化操作保留的索引或者学习反卷积的参数等。编码部分与解码部分可以是对称的,也可以是非对称的。大多数分割网络在嵌入式上都无法进行实时的分割。使用RNN来获得语义信息,但RNN的计算量较大。

网络结构

     

 结果

比较方向:(1)网络执行前行过程的操作数。(2)Cityscapes与CamVid数据集上的准确率。

操作:类别不平衡处理,基于Pytorch框架,RMSProp优化方法。

 参考

[1] Y. LeCun and Y. Bengio, “Convolutional networks for images, speech, and time series,” The handbook of brain theory and neural networks, pp. 255–258, 1998.

[2] Y. LeCun, L. Bottou, G. B. Orr, and K. R. M¨uller, Neural Networks: Tricks of the Trade. Berlin, Heidelberg: Springer Berlin Heidelberg, 1998, ch. Efficient BackProp, pp. 9–50.

[3] M. A. Ranzato, F. J. Huang, Y.-L. Boureau, and Y. LeCun, “Unsupervised learning of invariant feature hierarchies with applications to object recognition,” in Computer Vision and Pattern Recognition, 2007. CVPR’07. IEEE Conference on, 2007, pp. 1–8.

论文阅读笔记二十:LinkNet: Exploiting Encoder Representations for Efficient Semantic Segmentation(CVPR2017)的更多相关文章

  1. 论文阅读笔记二十四:Rich feature hierarchies for accurate object detection and semantic segmentation Tech report(R-CNN CVPR2014)

    论文源址:http://www.cs.berkeley.edu/~rbg/#girshick2014rcnn 摘要 在PASCAL VOC数据集上,最好的方法的思路是将低级信息与较高层次的上下文信息进 ...

  2. 论文阅读笔记二十六:Fast R-CNN (ICCV2015)

    论文源址:https://arxiv.org/abs/1504.08083 参考博客:https://blog.csdn.net/shenxiaolu1984/article/details/5103 ...

  3. 论文阅读笔记二十二:End-to-End Instance Segmentation with Recurrent Attention(CVPR2017)

    论文源址:https://arxiv.org/abs/1605.09410 tensorflow 代码:https://github.com/renmengye/rec-attend-public 摘 ...

  4. 论文阅读笔记二十五:Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition(SPPNet CVPR2014)

    论文源址:https://arxiv.org/abs/1406.4729 tensorflow相关代码:https://github.com/peace195/sppnet 摘要 深度卷积网络需要输入 ...

  5. 论文阅读笔记二十九:SSD: Single Shot MultiBox Detector(ECCV2016)

    论文源址:https://arxiv.org/abs/1512.02325 tensorflow代码:https://github.com/balancap/SSD-Tensorflow 摘要 SSD ...

  6. 论文阅读笔记二十八:You Only Look Once: Unified,Real-Time Object Detection(YOLO v1 CVPR2015)

    论文源址:https://arxiv.org/abs/1506.02640 tensorflow代码:https://github.com/nilboy/tensorflow-yolo 摘要 该文提出 ...

  7. 论文阅读笔记六十五:Enhanced Deep Residual Networks for Single Image Super-Resolution(CVPR2017)

    论文原址:https://arxiv.org/abs/1707.02921 代码: https://github.com/LimBee/NTIRE2017 摘要 以DNN进行超分辨的研究比较流行,其中 ...

  8. 论文阅读笔记(十八)【ITIP2019】:Dynamic Graph Co-Matching for Unsupervised Video-Based Person Re-Identification

    论文阅读笔记(十七)ICCV2017的扩刊(会议论文[传送门]) 改进部分: (1)惩罚函数:原本由两部分组成的惩罚函数,改为只包含 Sequence Cost 函数: (2)对重新权重改进: ① P ...

  9. 论文阅读笔记(十二)【CVPR2018】:Exploit the Unknown Gradually: One-Shot Video-Based Person Re-Identification by Stepwise Learning

    Introduction (1)Motivation: 大量标记数据成本过高,采用半监督的方式只标注一部分的行人,且采用单样本学习,每个行人只标注一个数据. (2)Method: 对没有标记的数据生成 ...

随机推荐

  1. 1173 - The Vindictive Coach

    题目大意:n个不同身高的队员和教练的按照身高排成波浪形……每个人按照身高由低到高编号,其中第m个是教练,他必须在第一个,如果条件允许,排第二的要比m低,如果条件不允许,即其余人都比教练高,则要让差距尽 ...

  2. maven坐标的获取

    网址:https://mvnrepository.com 网站上可以搜索具体的组织或项目关键字,之后复制对应的坐标到pom.xml中.如:

  3. ubuntu14.04升级mysql5.5至mysql5.7

    原文链接:https://www.cnblogs.com/os-python/p/6842485.html 1.下载mysql-apt的配置包,并安装 wget https://dev.mysql.c ...

  4. tensorflow开发基本步骤

    Tensorflow开发的基本步骤: 定义Tensorflow输入节点 通过占位符定义: X = tf.placeholder("float") 2.通过字典类型定义: input ...

  5. YOLOv1

    学习资料: https://blog.paperspace.com/tag/series-yolo/ https://blog.csdn.net/u014380165/article/details/ ...

  6. 【转】PEP8 规范

    [转]PEP8 规范 Python PEP8 编码规范中文版   原文链接:http://legacy.python.org/dev/peps/pep-0008/ item detail PEP 8 ...

  7. Linux内存分配小结--malloc、brk、mmap【转】

    转自:https://blog.csdn.net/gfgdsg/article/details/42709943 http://blog.163.com/xychenbaihu@yeah/blog/s ...

  8. Windows PowerShell 入門(4)-変数と演算子

    Windows PowerShellにおける変数と演算子の使用方法について学びます.今回は代表的な演算子として.算術演算子.代入演算子.論理演算子.比較演算子.範囲演算子.置換演算子.ビット演算子.型 ...

  9. Git学习笔记06-版本回退

    在实际中,向版本库提交多次后,几千行代码肯定不记得每次都改了什么,可以使用git log来查看提交日志.也就是git commit -m 后面填写的这部分内容 ​ 也可以使用git log --pre ...

  10. hibernate框架学习第二天:核心API、工具类、事务、查询、方言、主键生成策略等

    核心API Configuration 描述的是一个封装所有配置信息的对象 1.加载hibernate.properties(非主流,早期) Configuration conf = new Conf ...