Fully Convolutional Networks for Semantic Segmentation 2015CVPR 链接:https://arxiv.org/abs/1411.4038 FCN是语义分割开山之作 这个框架是后面很多语义分割论文的基础。 Unet系列 Unet结构也是语义分割里常用的框架。 这个系列属于比较早期的语义分割论文,就不详细介绍了。现在看起来虽然简单,但是后面很多思路都有借鉴。 旷视系列 旷视出了很多关于语义分割的论文而且被CVPR收录,我们选几篇学习下 GCN 论文:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network CVPR2017 链接:https://arxiv.org/pdf/1703.02719.pdf 作者论文提出语义分割的任务实际可以分解为两个主要项
什么是语义分割 语义分割(Semantic Segmentation)是图像处理和机器视觉一个重要分支,其目标是精确理解图像场景与内容。 语义分割是在像素级别上的分类,属于同一类的像素都要被归为一类,因此语义分割是从像素级别来理解图像的。如下如所示的照片,属于人的像素部分划分成一类,属于摩托车的像素划分成一类,背景像素划分为一类。 语义分割 图像分割级别可以分为语义级分割、实例级分割和全景分割。 语义分割(semantic segmentation):对图像中的每个像素划分到不同的类别; 实例分割(instance segmentation):对图像中每个像素划分到不同的个体(可以理解为目标检测和语义分割的结合 MSCOCO 是一个新的图像识别、分割和图像语义数据集,是一个大规模的图像识别、分割、标注数据集。它可以用于多种竞赛,与本领域最相关的是检测部分,因为其一部分是致力于解决分割问题的。
目前,研究者们最为关注的研究方向主要有三个: 语义分割(semantic segmentation) 实例分割(instance segmentation) 全景分割(panoptic segmentation ,还包含了实例分割、医学图像分割和卫星图像分割等资料,可谓是图像分割领域相当全面的资料汇总,主要包含以下内容: 语义分割 实例分割 半监督分割 RNN和GAN 图模型 常用数据集 Benchmark 标注工具 评价指标和损失函数 医学图像分割 卫星图像分割 视频分割 自动驾驶 ... 语义分割 ---- 主要有:U-Net、SegNet、DeepLab系列、FCN、ENet、ICNet、ShelfNet、BiseNet、DFN和CCNet等网络 ? 医疗图像分割 ---- 提供了包括数据集、网络模型、各种深度学习框架下的实现、论文等等非常丰富的内容 ? 卫星图像分割 ---- ? 视频分割 ---- 这部分的资料提供的不是很多 ?
2、任务 基于赛事官方提供的数据及建模分析平台,参赛者需要对光学遥感图像中各类光谱信息和空间信息进行分析,将遥感图像进行土地类型语义分割处理,为图像中具有语义信息的各个像元赋予语义类别标签。 二、数据描述 此次算法赛采用了1.5 万+遥感影像语义分割样本数据,遥感数据为GF1-WFV拍摄的山东滨州附近地区的影像,预处理过程为正射校正、配准、裁剪。 高分一号是国家高分辨率对地观测系统重大专项天基系统中的首发星,其主要目的是突破高空间分辨率、多光谱与高时间分辨率结合的光学遥感技术,多载荷图像拼接融合技术,高精度高稳定度姿态控制技术,5-8年寿命高可靠低轨卫星技术
前几天刚好做了个图像语义分割的汇报,把最近看的论文和一些想法讲了一下。所以今天就把它总结成文章啦,方便大家一起讨论讨论。 介绍 图像语义分割,简单而言就是给定一张图片,对图片上的每一个像素点分类 从图像上来看,就是我们需要将实际的场景图分割成下面的分割图: 不同颜色代表不同类别。 经过我阅读“大量”论文(羞涩)和查看Pascal VOC 2012 Learderboard,我发现图像语义分割从深度学习引入这个任务(FCN)到现在而言,一个通用的框架已经大概确定了。 而图像语义分割的输出需要是个分割图,且不论尺寸大小,但是至少是二维的。所以,我们需要丢弃全连接层,换上全卷积层,而这就是全卷积网络了。 这是第一种结构,也是深度学习应用于图像语义分割的开山之作,所以得了CVPR2015的最佳论文。但是,还是有一些处理比较粗糙的地方,具体和后面对比就知道了。
其它三类占比大致差不多,但是玉米与薏仁米相对草地来说少了一个量级,所以可以对玉米与薏仁米占比大于7/8的小图做图像增强(反转,旋转等)。 1.3 图像增强(数据扩充) 一般什么时候会用到数据增强呢? 一般而言,训练模型为了增加模型的适应性,都需要做图像增强,扩充图像的多样性。 pytorch做图像增强,tensorflow做图像增强。 同样的,预测时,对图像做几个数据增强,分别输入模型进行训练,将输出取平均也会有一定效果。 2.2.2 图像增强 除了在训练时需要图像增强以外,在测试时也需要做图像增强,通过测试结果来取平均,可以一定程度上避免训练集缺乏多样性的问题,但是也会成倍增加测试时间。
对于做图像和视觉的就该一头扎到CNN(Convolutional Neural Netwok),做自然语言的就该投入到RNN(Recurrent Neural Network)。我是做图像的。 级别3:读paper,网络Train起来 当去搜索ICRL、CVPR、ICCV这些最前沿的计算机视觉、机器学习会议的时候,只要是涉及图像相关的深度学习实验,大都是基于Caffe来做的。 由于特殊原因,我不能公开我C++和matlab的Demo源码以及其中的一些后处理技术,暂且只能给大家看一些分割的结果 Sematic Segmentation Result 还有一个视频语义分割的结果 但对于分割的问题,图片的size对分割结果影响还是很大的,用全卷积网络的测试结果:输入图片的size从500x500降低到300x300,IoU果断直接降了3个点,太恐怖了!! 级别6:加速吧,GPU编程 呃,这一级还没练到,但迟早是要做的,说了“大数据是燃料,GPU是引擎”的,怎么能不懂引擎呢…… 关于语义分割的一些其它工作 CRF:CRF在图像分割中是最常见的refine
前言 FCN是一种用于图像语义分割的全卷积网络,可以端到端进行像素级预测。 语义分割 图像语义分割是图像处理和机器视觉技术中的重要一环,旨在对图像中的每个像素进行分类。 与普通的分类任务不同,语义分割任务输出与输入大小相同的图像,输出图像的每个像素对应了输入图像每个像素的类别。语义分割常被应用于人脸识别、物体检测、医学影像、卫星图像分析、自动驾驶感知等领域。 模型简介 FCN是一种用于图像分割的端到端的深度学习方法,通过全卷积神经网络实现像素级的预测,主要使用卷积化、上采样和跳跃结构等技术来实现图像分割。 FCN-32s、FCN-16s和FCN-8s分别通过反卷积将输出图像的尺寸扩大到与输入图像相同,并在不同层级上融合特征图以实现更精细的语义分割。 损失函数 语义分割是图像分类的一种形式,通过对图像中的每个像素点进行分类来实现。
本文旨在介绍深度学习在计算机视觉领域四大基本任务中的应用,包括分类(图a)、定位、检测(图b)、语义分割(图c)、和实例分割(图d)。 ? 语义分割(semantic segmentation) 语义分割是目标检测更进阶的任务,目标检测只需要框出每个目标的包围盒,语义分割需要进一步判断图像中哪些像素属于哪个目标。 有83k训练图像,41k验证图像,80k测试图像,80个类别。 (2) 语义分割基本思路 基本思路 逐像素进行图像分类。 实例分割(instance segmentation) 语义分割不区分属于相同类别的不同实例。例如,当图像中有多只猫时,语义分割会将两只猫整体的所有像素预测为“猫”这个类别。 与此不同的是,实例分割需要区分出哪些像素属于第一只猫、哪些像素属于第二只猫。 基本思路 目标检测+语义分割。先用目标检测方法将图像中的不同实例框出,再用语义分割方法在不同包围盒内进行逐像素标记。
全景图像,又称360°全景图,其数据分布在球面空间上。但是,当我们将全景图像展开时,会造成畸变。 怎么处理?直接将传统二维平面图像处理方法应用到球面数据上,其效果则会大大降低。 本文手把手带你实践一个有趣的应用——全景图像语义分割,使用多种传统CNN方法和球面CNN方法进行对比。 如下图所示,全景图分割实例像素级别分类,每种实例对应一个标签。 数据获取 使用2D-3D-S 数据集进行本实验,该数据集提供了来自 2D、2.5D 和 3D 域的各种相互注册的数据,以及实例级语义和几何注释。它收集在来自 3 座不同建筑的 6 个大型室内区域。 它包含超过 70,000 张 RGB 图像,以及相应的深度、表面法线、语义注释、全局 XYZ 图像(均以常规和 360° 等距柱状图图像的形式)以及相机信息。 它还包括注册的原始和语义注释 3D 网格和点云。 数据集从开源数据集网站格物钛获取,这个网站汇总了AI开发者常见的公开数据集,用户可以对数据集进行可视化预览、在线使用和下载等操作。
/scripts/caffe_to_chainermodel.py 2. load model,进行分割 . 训练自己的数据 这个前后搞了快一个月,才把最终的训练搞定,其中艰辛很多,在这里写出来供大家参考 准备自己的数据集 数据集做成VOC2012的segementClass的样子,下图是示例,上面一张是原图,下面一张是分割图 (label_rgb == rgb, axis=-1) label[mask] = l return label 按照此颜色表做图就没有问题,代码可以正确的读取分割的 ground-truth结果 原始的图像放在fcn/data/pascal/VOC2012/JPEGImages 分割的图像放在fcn/data/pascal/VOC2012/SegmentationClass 下创建一个目录叫做SegmentationClassDataset_db,里面存放训练的图片的pickle数据,如果需要修改原始的训练图片则需要将此目录删除,否则默认读取此目录内的pickle数据作为图像的原始数据
图像分类、物体检测、图像语义分割是计算机视觉的三大核心研究问题。其中图像语义分割任务最具有挑战性。 图像语义分割融合了传统的图像分割和目标识别两个任务,其目的是将图像分割成几组具有某种特定语义含义的像素区域,并识别出每个区域的类别,最终获得一副具有像素语义标注的图像。 3 )背景层次:通常干净的背景有助于实现图像的语义分割,但实际场景中的背景往往是错综复杂的,这种复杂性也大大提升了图像语义分割的难度。 3 基于DCNN的图像语义分割算法 图像语义分割算法已经有几十年的发展历史,本节主要对基于 DCNN (本节所涉及的用于语义分割的 DCNN 网络的初始参数大多数是通过 120万的ImageNet图像进行预训练获得 此外,更具挑战性的语义分割任务主要包括: 1 )小物体的语义分割.同物体检测任务相似,当前的图像语义分割网络往往很难识别图像中尺度较小的物体.如何有效地识别图像中小尺度的物体是图像语义分割中的重要内容。
引言 语义分割结合了图像分类、目标检测和图像分割,通过一定的方法将图像分割成具有一定语义含义的区域块,并识别出每个区域块的语义类别,实现从底层到高层的语义推理过程,最终得到一幅具有逐像素语义标注的分割图像 图像语义分割方法有传统方法和基于卷积神经网络的方法,其中传统的语义分割方法又可以分为基于统计的方法和基于几何的方法。 随着深度学习的发展,语义分割技术得到很大的进步,基于卷积神经网络的语义分割方法与传统的语义分割方法最大不同是,网络可以自动学习图像的特征,进行端到端的分类学习,大大提升语义分割的精确度。 简笔标注 Lin 等人提出基于用户交互的图像语义分割方法,该方法使用简笔对图像进行注释,利用图模型训练卷积网络,用来对简笔标注的图像进行语义分割,基于图模型将简笔标注的信息结合空间约束、外观及语义内容, 总结 本文主要对于图像语义分割技术的研究发展历程进行了详细评述,对于传统的语义分割方法到当前主流的基于深度学习的图像语义分割理论及其方法做出了综合性的评估,对基于深度学习语义分割技术需要用到的网络模型、
论文地址:https://arxiv.org/abs/1704.06857 应用于语义分割问题的深度学习技术综述 摘要 计算机视觉与机器学习研究者对图像语义分割问题越来越感兴趣。 1 引言 如今,语义分割(应用于静态2D图像、视频甚至3D数据、体数据)是计算机视觉的关键问题之一。在宏观意义上来说,语义分割是为场景理解铺平了道路的一种高层任务。 表 1 常见的大规模分割数据集 3.1 2维数据集 自始至终,语义分割问题最关注的是二维图像。因此,二维数据集在所有类型中是最丰富的。 本章我们讨论语义分割领域最流行的二维大规模数据集,这考虑到所有的包含二维表示如灰度或RGB图像的数据集。 语义边界数据集(SBD)[30] (http://home.bharathh.info/home/sbd):是PASCAL数据集的扩展,提供VOC中未标注图像的语义分割标注。
看分割算法,主要看人家是怎么做 decoder low resolution feature map 即怎么放大特征图
之前看过一篇使用分割思想进行目标检测,所以这里补习下一些分割相关的基础知识。这里重点说下语义分割、实力分割和全景分割的区别。 1 、semantic segmentation(语义分割) 通常意义上的目标分割指的就是语义分割,图像语义分割,简而言之就是对一张图片上的所有像素点进行分类 语义分割(下图左)就是需要区分到图中每一点像素点 相对目标检测的边界框,实例分割可精确到物体的边缘;相对语义分割,实例分割需要标注出图上同一物体的不同个体(羊1,羊2,羊3…) 3、Panoramic segmentation(全景分割) 全景分割是语义分割和实例分割的结合 跟实例分割不同的是:实例分割只对图像中的object进行检测,并对检测到的object进行分割,而全景分割是对图中的所有物体包括背景都要进行检测和分割。 最后放上一张总结的图片 参考文章: 图像分类、目标检测、语义分割、实例分割和全景分割的区别 (科普)——实例分割、语义分割、全景分割的区别 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn
这篇文章讲述卷积神经网络在图像语义分割(semantic image segmentation)的应用。图像分割这项计算机视觉任务需要判定一张图片中特定区域的所属类别。 这个图像里有什么? 它在图像中哪个位置? 更具体地说,图像语义分割的目标是将图像的每个像素所属类别进行标注。因为我们是预测图像中的每个像素,这个任务通常被称为密集预测(dense prediction)。 ? 02 架构设 对于图像语义分割任务,构建神经网络架构的一种简单方法是简单地堆叠多个卷积层(使用same padding以维持维度大小)并输出最终的分割图。 然而,对于图像分割,我们希望我们的模型最后给出全分辨率的语义预测。 作者对这种困境做出了如下评论: 语义分割面临语义和位置之间的内在矛盾:全局信息解决的是“是什么”问题,而局部信息解决的是“在哪里”的问题……结合细粒度层和粗粒度层使模型能在全局信息下做出局部预测。
RSNet [CVPR 2018]:点云的语义分割。 我们今天的讲课专注点云的分割。 所谓点云的分割,今天我想介绍的有两层,一层是语义分割和实例分割,所谓语义分割就是给每个点 assign 一个 label,比如说这个点是桌子还是椅子。 实例分割就是在 assign 语义分割的同时,把每个不同的物体给分割出来,比如一个房间里有很多椅子,每个点标 label 成椅子 1、椅子 2。 今天主要介绍在最新的 CVPR 上的两个工作,一个是对点云进行实例分割的网络:similarity group proposal network,还有一个是对点云进行语义分割的网络,recurrent 根据 faster R-CNN 的 ICCV 的 best paper 是 Mask R-CNN,它是通过做图像 level 的实例分割来实现,它们沿用了 faster R-CNN 的 Region Proposal
Semantic Segmentation in Street Scenes CVPR2017 Theano/Lasagne code:https://github.com/TobyPDE/FRRN 针对语义分割问题 ,本文侧重于分割中的物体边界精度, precise boundary adherence 通过两个 stream 实现:residual stream 保持图像的全尺寸大小,pooling stream 当前大部分分割算法都采样FCNs[38] 架构,很多文章依赖于在图像分类上的训练好的模型如 ResNet, VGG。 the receptive field,2)降采样可以提高网络对物体在图像中小平移的鲁棒性。 池化对于图像中物体的识别是很有帮助的,但是对于分割问题却降低了分割的 localization 性能。
High-Resolution Semantic Segmentation CVPR2017 https://github.com/guosheng/refinenet 本文还是使用 cascaded 思想来做语义分割 identity mappings 、 提出一个 chained residual pooling 1 Introduction 直接将 CNN 网络模型如 VGG 、Residual Net 用于 语义分割存在的问题就是 CNN 卷积池化得到的特征图是降采样32倍的,很多细节丢失,这对于分割问题来说得到的结果太粗糙了。 文献【36】【22】使用了 intermediate layers 来生成高分辨率分割结果。 这里我们认为 features from all levels 对于语义分割都是有帮助的。 这里我们提出了一个框架将所有的特征融合起来用于语义分割 ResNet 、Dilated convolutions 、 RefineNet ? RefineNet 模块示意图: ?