柏拉图数据智能。
垂直搜索和人工智能。

2020年语义细分指南

日期:


简介

深度学习在将图像作为数据使用时非常成功,并且目前处于在多个用例上比人类更好的工作阶段。 人们对使用计算机视觉解决感兴趣的最重要的问题是 图像分类,目标检测与分割 按照他们难度的增加顺序。

在普通的图像分类任务中,我们只是对获取图像中存在的所有对象的标签感兴趣。 在对象检测中,我们采取了进一步的步骤,并试图通过边界框来了解图像中存在的所有对象以及对象的存在位置。 图像分割通过尝试准确找出图像中对象的确切边界,将其提升到一个新的水平。

来源http://cs224d.stanford.edu/index.html

在本文中,我们将研究图像分割的概念,讨论相关用例,实现结果所涉及的不同神经网络体系结构,度量和要探索的数据集。

什么是图像分割

我们知道图像不过是像素的集合。 图像分割是对图像中属于特定类别的每个像素进行分类的过程,因此可以将其视为每个像素的分类问题。 有两种类型的细分技术

Source http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture11.pdf
  1. 语义分割 :-语义分割是对属于特定标签的每个像素进行分类的过程。 同一对象的不同实例之间没有什么不同。 例如,如果图像中有两只猫,则语义分割会为两只猫的所有像素赋予相同的标签
  2. 实例细分 实例分割与语义分割的不同之处在于,它为图像中特定对象的每个实例提供了唯一的标签。 从上面的图像可以看出,所有3条狗被分配了不同的颜色,即不同的标签。 使用语义分割,所有这些字符都将被分配相同的颜色。

所以我们现在到了需要这种算法的地步

图像分割的用例

手写识别 :-Junjo等人都演示了如何使用语义分割从手写文档中的手写文档中提取单词和行 2019年的研究论文 识别手写字符

来源

Google人像模式 :-在许多用例中,将前景与背景分开是绝对必要的。 例如,在Google的人像模式下,我们可以看到背景变得模糊,而前景保持不变,从而产生酷炫的效果

来源:-https://ai.googleblog.com/2018/03/mobile-real-time-video-segmentation.html

YouTube故事 :-Google最近发布了YouTube故事功能,供内容创建者在创建故事时显示不同的背景。

来源:-https://ai.googleblog.com/2018/03/mobile-real-time-video-segmentation.html

虚拟化妆 :-现在可以借助图像分割应用虚拟口红

资料来源:-https://www.theverge.com/2017/3/16/14946086/sephora-virtual-assistant-ios-app-update-ar-makeup

4.虚拟试穿 :-虚拟试穿衣服是一个有趣的功能,可以使用专门的硬件在商店中创建3D模型。 但是通过深度学习和图像分割,仅使用2d图像就可以获得相同的结果

资料来源:-https://arxiv.org/pdf/1807.07688.pdf

视觉影像搜寻 :-分割衣服的想法也用在电子商务中的图像检索算法中。 例如,Pinterest / Amazon允许您基于对衣服部分进行分割来进行图像搜索,从而上传任何图片并获得相关的相似外观产品

资料来源:-https://github.com/paucarre/tiefvision

自动驾驶汽车 :-自动驾驶汽车需要全面了解其周围环境,达到像素完美的水平。 因此,图像分割用于识别车道和其他必要信息

资料来源:-https://medium.com/intro-to-artificial-intelligence/semantic-segmentation-udaitys-self-driving-car-engineer-nanodegree-c01eb6eaf9d

Nanonets通过语义细分帮助财富500强公司实现更好的大规模客户体验。

方法与技巧

在深度学习出现之前,经典的机器学习技术(例如SVM,Random Forest,K-means聚类)用于解决图像分割问题。 但是,与大多数与图像相关的问题陈述一样,深度学习在整体上比现有技术更好,并且在处理语义分割时已成为一种规范。 让我们回顾一下用于解决问题的技术

全卷积网络

CNN的一般体系结构由很少的卷积和池化层组成,最后是很少的完全连接的层。 2014年发布的Fully Convolutional Network论文认为,可以将最终的完全连接层视为覆盖整个区域的1×1卷积。

资料来源:-https://arxiv.org/abs/1411.4038

因此,最终的致密层可以由达到相同结果的卷积层代替。 但是现在这样做的好处是输入的大小不再需要固定。 当涉及密集的层时,输入的大小受到限制,因此,当必须提供不同大小的输入时,必须调整其大小。 但是通过用卷积代替密集层,这种约束就不存在了。

同样,当提供更大尺寸的图像作为输入时,生成的输出将是一个特征图,而不仅仅是普通输入尺寸的图像的类输出。 同样,最终特征图的观察到的行为也代表了所需类别的热图,即在特征图中突出显示了对象的位置。 由于特征图的输出是所需对象的热图,因此对于我们的细分用例而言,这是有效的信息。

由于在输出层获得的特征图由于执行了一组卷积而被下采样,因此我们希望使用插值技术对其进行上采样。 双线性上采样是可行的,但本文提出使用带反卷积的学习型向上采样,甚至可以学习非线性上采样。

网络的下采样部分称为编码器,而上采样部分称为解码器。 我们将在许多架构中看到这种模式,即使用编码器减小大小,然后使用解码器进行上采样。 在理想的世界中,我们不想使用合并来缩减样本并在整个过程中保持相同大小,但这会导致大量参数,并且在计算上是不可行的。

资料来源:-https://arxiv.org/abs/1411.4038

尽管获得的输出结果是不错的,但是观察到的输出是粗糙且不平滑的。 其原因是由于使用卷积层进行32倍下采样而导致最终特征层的信息丢失。 现在,使用此少量信息使网络进行32倍的上采样变得非常困难。 这种架构称为FCN-32

为了解决这个问题,本文提出了另外两种架构FCN-2,FCN-16。 在FCN-8中,使用了来自先前合并层的信息以及最终的特征图,因此,现在网络的任务是学习16倍向上采样,这比FCN-16更好。 FCN-32试图通过包含来自先前一个池化层的信息来使其变得更好。

U-net从上面构建在全卷积网络之上。 它是为医疗目的而建立的,用于在肺部或大脑中发现肿瘤。 它还由一个编码器和一个解码器组成,该编码器使用学习的反卷积层将输入图像下采样到特征图,而解码器将特征图上采样到输入图像大小。

资料来源:-https://arxiv.org/abs/1505.04597

U-Net体系结构的主要贡献是快捷连接。 上面我们在FCN中看到,由于我们对图像进行下采样作为编码器的一部分,因此丢失了很多信息,这些信息无法在编码器部分轻松恢复。 FCN试图通过从最终要素层之前的合并层获取信息来解决此问题。

U-Net提出了一种解决此信息丢失问题的新方法。 它提议从编码器中的相应下采样层向解码器中的每个上采样层发送信息,如上图所示,从而捕获更精细的信息,同时还保持较低的计算量。 由于编码器开始处的层将具有更多信息,因此它们将通过提供与输入图像相对应的精细细节来支持解码器的上采样操作,从而大大改善了结果。 该论文还建议使用一种新颖的损失函数,我们将在下面讨论。

深度实验室

来自Google的一组研究人员的Deeplab提出了多种技术,以改善现有结果并以较低的计算成本获得更好的输出。 作为研究的一部分,建议的3个主要改进是

1)Atrous卷积
2)Atrous空间金字塔形合并
3)使用条件随机字段来改善最终输出
让我们讨论所有这些

原子卷积

FCN方法的主要问题之一是由于连续的池操作导致的过度精简。 由于存在一系列的合并,因此输入图像的采样率降低了32倍,采样率再次提高了采样率,从而获得了分割结果。 32倍下采样会导致信息丢失,这对于在分割任务中获得良好的输出至关重要。 由于将额外的参数包含在形成学习的采样中,因此将采样反卷积以32倍进行反卷积也是一项计算和内存昂贵的操作。

本文提出了Atrous卷积或空穴卷积或扩张卷积的用法,这有助于使用相同数量的参数来理解大型上下文。

Source:- https://www.mdpi.com/1424-8220/19/24/5361/htm

扩张卷积通过在滤波器后面附加零(称为孔)来填充参数之间的间隙来增加其大小。 滤波器参数之间填充的孔/零点的数量称为“膨胀率”。 当比率等于1时,就是正常的卷积。 当rate等于2时,在每个其他参数之间插入一个零,使滤波器看起来像5×5卷积。 现在它具有在具有5×5卷积参数的同时获得3×3卷积的上下文的能力。 类似地,对于速率3,接收场变为7×7。

在Deeplab中,最后的合并层被替换为跨度为1而不是2,从而将向下采样率保持为8倍。 然后应用一系列圆环卷积来捕获较大的上下文。 为了训练,将输出的标记遮罩下采样8倍,以比较每个像素。 为了进行推断,双线性上采样用于产生相同大小的输出,从而以较低的计算/内存成本提供足够不错的结果,因为双线性上采样不需要任何参数,而反卷积不需要上卷积。

ASPP

空间金字塔形池化是SPPNet中引入的一个概念,用于从特征图中捕获多尺度信息。 在引入SPP之前,需要提供不同分辨率的输入图像,并将计算出的特征图一起使用以获取多尺度信息,但这需要更多的计算和时间。 使用空间金字塔形合并,可以使用单个输入图像捕获多尺度信息。

资料来源:-http://kaiminghe.com/eccv14sppnet/index.html

使用SPP模块,网络可以产生3个尺寸为1×1(即GAP),2×2和4×4的输出。 通过转换为1d向量将这些值连接起来,从而以多种尺度捕获信息。 使用SPP的另一个优点是可以提供任何大小的输入图像。

ASPP采用融合不同规模信息的概念,并将其应用于Atrous卷积。 输入以不同的膨胀率卷积,并且它们的输出融合在一起。

资料来源:-http://liangchiehchen.com/projects/DeepLab.html

可以看出,输入是由3×3的扩展速率为6、12、18和24的滤波器卷积的,而输出则是串联在一起的,因为它们的大小相同。 1×1卷积输出也将添加到融合输出。 为了也提供全局信息,在向上采样之后,还将GAP输出添加到上面。 3×3可变的扩展输出,1×1和GAP输出的融合输出通过1×1卷积传递到所需的通道数。

由于要分割的所需图像在输入中可以是任何大小,因此来自ASPP的多尺度信息有助于改善结果。

使用CRF改善输出

池化是一种有助于减少神经网络中参数数量的操作,但它也带来了不变性。 不变性是神经网络的质量不受输入的轻微转换的影响。 由于合并时获得的此属性,因此由神经网络获得的分段输出很粗糙,并且边界没有具体定义。

资料来源:-http://liangchiehchen.com/projects/DeepLab.html

为了解决这个问题,本文提出使用图形模型CRF。 条件随机场操作后处理步骤,并尝试改善为定义成形器边界而产生的结果。 它不仅可以根据像素的标签对像素进行分类,还可以根据其他像素标签对像素进行分类。 从上图可以看出,神经网络产生的粗略边界在通过CRF后变得更加精细。

Deeplab-v3引入了批处理归一化,并建议在Resnet块的每一层内部将膨胀率乘以(1,2,4)。 还提议将图像级别的功能添加到以上关于ASPP的讨论中讨论的ASPP模块中,作为本文的一部分。

资料来源:-https://arxiv.org/pdf/1706.05587.pdf

Deeplab-v3 +建议使用解码器,而不是普通的双线性上采样16x。 解码器从U-Net之类的体系结构使用的解码器中获取提示,该体系从编码器层获取信息以改善结果。 使用双线性上采样对编码器输出进行上采样4倍,并将其与来自编码器的特征相连接,后者在执行4×3卷积后再次进行上采样3倍。 与直接进行16倍向上采样相比,此方法可产生更好的结果。 还提出了修改后的Xception体系结构,以代替Resnet用作编码器的一部分,并且现在在Atrous卷积之上使用了深度可分离卷积,以减少计算量。

全球卷积网络

来源:-https://arxiv.org/pdf/1703.02719.pdf

语义分割涉及同时执行两个任务

i)分类
ii)本地化

分类网络的创建对于平移和旋转是不变的,因此不重视位置信息,而本地化涉及获取位置的准确细节。 因此,这两个任务在本质上是矛盾的。 大多数分割算法都将重点放在本地化上,即上图中的第二个算法,因此看不到全局上下文。 在这项工作中,作者提出了一种在不丢失定位信息的同时也重视分类任务的方法

来源:-https://arxiv.org/pdf/1703.02719.pdf

作者建议通过使用大型内核作为网络的一部分来实现此目的,从而实现密集的连接,从而获得更多的信息。 如上图所示,这是借助GCN块实现的。 可以将GCN块视为akxk卷积滤波器,其中k可以大于3。为减少参数数量,akxk滤波器进一步分为1 xk和kx 1,然后将kx1和1xk块相加。 因此,通过增加值k,可以捕获更大的上下文。

另外,作者提出了一个边界细化块,该块与Resnet中看到的残差块相似,包括一个捷径连接和一个残差连接,将它们相加即可得出结果。 可以看出,具有边界细化块可以改善分割边界处的结果。

结果表明,GCN块提高了靠近对象中心的像素的分类精度,这表明由于捕获远距离上下文而导致的改进,而边界细化块有助于提高了接近边界的像素的精度。

多于一次– KSAC进行语义分割

Deeplab系列使用ASPP使多个接收场使用不同的无规则卷积速率捕获信息。 尽管ASPP在改善结果分割方面非常有用,但由于体系结构而引起了一些固有的问题。 ASPP的不同并行层之间没有共享信息,因此会影响每一层内核的泛化能力。 同样,由于每一层都适合不同的训练样本集(较小的对象到较小的原子率,较大的对象到较大的原子率),因此每个并行层的数据量将较少,从而影响总体可推广性。 而且,网络中的参数数量随参数数量线性增加,因此可能导致过度拟合。

来源:-https://arxiv.org/pdf/1908.09443.pdf

为了处理所有这些问题,作者提出了一种新颖的网络结构,称为内核共享Atrous卷积(KSAC)。 从上图中可以看出,ASPP不是每个并行层都有不同的内核,而是共享一个内核,从而提高了网络的泛化能力。 通过使用KSAC代替ASPP,当使用62和6,12的膨胀率时,可以节省18%的参数。

使用KSAC结构的另一个优点是参数的数量与所使用的膨胀率的数量无关。 因此,我们可以在不增加模型大小的情况下添加尽可能多的比率。 ASPP的速率为6,12,18时可提供最佳结果,但精度降低为6,12,18,24则表明可能过度拟合。 但是KSAC精度仍大大提高,表明增强了泛化能力。

由于同一内核应用于多种速率,因此该内核共享技术也可以看作是功能空间的增强。 与输入增强如何获得更好的结果类似,在网络中执行的特征增强应有助于改善网络的表示能力。

视频分割

对于无人驾驶汽车,机器人技术等用例,需要对观察到的视频进行实时分割。 到目前为止讨论的体系结构都是为准确性而不是速度而设计的。 因此,如果将它们逐帧应用于视频,则结果的速度将非常低。

同样,通常在视频中,连续帧之间的场景存在很多重叠,这可以用于改善结果和速度,如果以每帧为基础进行分析,这些结果将不会出现。 使用这些提示,让我们讨论专门为视频设计的体系结构

科技园

时空FCN建议与LSTM一起使用FCN进行视频分割。 我们已经知道如何使用FCN提取用于分割图像的特征。 LSTM是一种神经网络,可以随时间捕获顺序信息。 STFCN结合了FCN和LSTM的功能来捕获空间信息和时间信息

资料来源:-https://arxiv.org/abs/1608.05971

从上图可以看出,STFCN由FCN,时空模块和反卷积组成。 FCN生成的特征图被发送到时空模块,该模块还具有前一帧模块的输入。 基于这两个输入的模块除了捕获空间信息外,还捕获时间信息,并使用反卷积(类似于在FCN中进行的操作)将其发送到整个图像上,然后将其向上采样到图像的原始大小。

由于FCN和LSTM都是STFCN的一部分,因此该网络是端到端可训练的,并且性能优于单帧分段方法。 有类似的方法,其中LSTM被GRU代替,但是概念是捕获空间和时间信息的相同方法

通过表示变形的语义视频CNN

本文建议使用跨相邻帧的光流作为额外输入,以改善分割结果

资料来源:-https://arxiv.org/abs/1708.03088

可以将建议的方法作为插件连接到任何标准体系结构中。 发挥作用的关键因素是NetWarp模块。 为了计算分割图,计算当前帧和前一帧之间的光流,即Ft,并使其通过FlowCNN以获得Λ(Ft)。 此过程称为流转换。 该值通过扭曲模块传递,该扭曲模块也将通过网络计算得出的中间层的特征图作为输入。 这给出了变形的特征图,然后将其与当前层的中间特征图结合在一起,并对整个网络进行端到端训练。 该架构在CamVid和Cityscapes视频基准数据集上获得了SOTA结果。

用于视频语义分割的发条卷积网

本文提出了利用视频中语义信息与像素级信息相比变化缓慢的事实,来提高用于视频分割任务的神经网络的执行速度。 因此,与起始层相比,最终层中的信息变化速度要慢得多。 本文提出了不同的时代

资料来源:-https://arxiv.org/abs/1608.03609

上图表示中层池4和深层fc7的变化率比较。 在左侧,我们可以看到,由于帧之间的变化很大,所以两个层都显示了变化,但是pool4的变化更大。 在右侧,我们看到框架之间的变化不大。 因此,pool4显示了边际变化,而fc7显示了几乎零变化。

该研究利用了这一概念,并建议在帧间变化不大的情况下,无需再次计算特征/输出,并且可以使用前一帧的缓存值。 由于变化率随层而变化,因此可以为不同的层集设置不同的时钟。 时钟滴答时,将计算新的输出,否则将使用缓存的结果。 时钟滴答的速率可以是静态固定的,也可以是动态学习的

资料来源:-https://arxiv.org/abs/1608.03609

低延迟视频语义分割

本文在上述讨论的基础上进行了改进,方法是自适应地选择帧以计算分割图或使用缓存的结果,而不是使用固定的计时器或启发式方法。

资料来源:-https://arxiv.org/abs/1804.00389

本文提出将网络分为低级特征和高级特征两部分。 与高级功能相比,计算网络中低级功能的成本要低得多。 该研究建议使用低级网络特征作为分割图变化的指标。 在他们的观察中,他们发现低层特征变化与分割图变化之间存在很强的相关性。 因此,为了了解是否需要计算是否需要计算较高的特征,可以找到两帧之间较低的特征差异,并在超过特定阈值时进行比较。 整个过程由一个小型神经网络自动执行,该网络的任务是获取两个帧的较低特征并给出是否应计算较高特征的预测。 由于网络决策基于输入帧,因此与上述方法相比,决策是动态的。

点云分割

来自传感器(如激光雷达)的数据以称为点云的格式存储。 点云不过是3d数据点(或任何维度)的无序集合的集合。 它是3d中场景的稀疏表示,在这种情况下无法直接应用CNN。 同样,设计用于处理点云的任何体系结构都应考虑到它是无序集合,因此可以有很多可能的排列。 因此网络应该是置换不变的。 同样,可以通过它们之间的距离来描述在点云中定义的点。 因此,更近的点通常会携带有用的信息,这些信息对于细分任务非常有用

点网

PointNet是使用深度学习解决分类和分割任务的点云研究历史上的重要论文。 让我们研究Pointnet的体系结构

资料来源:-https://arxiv.org/abs/1612.00593

n点的网络输入是一个nx 3矩阵。 使用共享的多感知器层(完全连接的网络)将nx 3矩阵映射到nx 64,然后将其映射到nx 64,然后分别映射到nx 128和nx1024。应用最大池化以获得1024矢量,该矢量转换为k通过大小为512、256和k的MLP传递输出。 最终产生类似于任何分类网络的k类输出。

分类仅处理全局特征,但细分也需要局部特征。 因此,来自nx 64的中间层的局部特征与全局特征连接在一起,以得到anx 1088矩阵,该矩阵通过512和256的mlp发送到nx 256,然后通过128和m的MLP给出每个点的m输出类点云。

网络还涉及作为网络一部分的输入变换和特征变换,其任务是不更改输入的形状,而是为仿射变换(即平移,旋转等)增加不变性。

神经网络

资料来源:-https://arxiv.org/abs/1904.08017

A-CNN建议使用环形卷积来捕获空间信息。 从CNN中我们知道,卷积运算会捕获局部信息,这对于理解图像至关重要。 A-CNN设计了一种新的卷积,称为环形卷积,该卷积应用于点云中的邻点。

该体系结构以nx 3个点作为输入,并找到它们的法线,用于点的排序。 使用FPS算法获取点的子样本,得到ni x 3个点。 在这些环形卷积上增加了128个尺寸。 在使用KNN算法确定的邻域点上执行环形卷积。

执行另一组上述操作以将维数增加到256。然后应用mlp将维数更改为1024,并应用池化以获取类似于点云的1024全局矢量。 这整个部分被认为是编码器。 为了分类,编码器全局输出通过mlp传递以获得c类输出。 对于分割任务,全局和局部特征都被认为类似于PointCNN,然后通过MLP传递以获得每个点的m类输出。

指标

让我们讨论通常用于理解和评估模型结果的度量。

像素精度

像素精度是可用于验证结果的最基本指标。 通过取正确分类的像素与总像素之比来获得精度

精度=(TP + TN)/(TP + TN + FP + FN)

使用这种技术的主要缺点是,如果一个类别胜过另一个类别,结果可能看起来不错。 假设背景类别覆盖了90%的输入图像,我们只需将每个像素分类为背景就可以达到90%的准确性

联合路口

IOU定义为地面实况与预测分段输出在其并集上的交集之比。 如果我们要计算多个类别,则将计算每个类别的IOU并取其平均值。 与像素精度相比,这是一个更好的度量标准,因为好像每个像素都作为2类输入的背景给出,IOU值为(90/100 + 0/100)/ 2,即45%IOU,与90%相比,显示效果更好% 准确性。

资料来源:-https://www.pyimagesearch.com/2016/11/07/intersection-over-union-iou-for-object-detection

频率加权借条

这是对我们讨论过的平均借据的扩展,用于应对阶级失衡。 如果一个类别在数据集中(例如背景)中占据了大部分图像,则与其他类别相比,它需要权衡。 因此,不是取所有分类结果的平均值,而是根据数据集中分类区域的频率取加权平均值。

F1分数

分类F1分数中普遍使用的度量标准也可以用于细分任务,以处理类别不平衡问题。

资料来源:-https://en.wikipedia.org/wiki/F1_score

平均精度

针对不同类别的选定阈值IOU平均值,在Precision –召回曲线下的区域用于验证结果。

损失函数

损失函数用于指导神经网络进行优化。 让我们讨论一些用于语义分割任务的流行损失函数。

交叉熵损失

图像中每个像素的交叉熵分类损失的简单平均值可以用作总体函数。 但这又因班级不平衡而遭受损失,FCN建议使用班级加权来纠正

与内部像素相比,UNet尝试通过对边界附近的像素(属于边界的一部分)赋予更大的权重值来改善此问题,因为这使网络更加专注于识别边界而不提供粗略的输出。

焦点损失

焦点损失旨在通过提供更大的权重范围使网络专注于困难的示例,并且还可以处理在单级目标检测器中观察到的极端类别失衡。 同样可以应用于语义分割任务

骰子损失

骰子功能不过是F1得分。 此损失函数直接尝试优化F1得分。 同样,直接IOU分数也可以用于运行优化

特维尔斯基损失

它是骰子损失的一种变体,可赋予FN和FP不同的体重

Hausdorff距离

它是一种用于测量基本事实和预测边界之间的相似性的技术。 它是通过找出一个边界中任意点到另一边界中最近点的最大距离来计算的。 直接减少边界损失函数是近来的趋势,并且已经显示出可以提供更好的结果,尤其是在诸如医学图像分割之类的用例中,其中确定确切的边界起着关键作用。

与基于区域的损失(如IOU或骰子损失)相比,使用边界损失的优势在于它不受类不平衡的影响,因为不考虑整个区域的优化,只考虑边界。

来源https://en.wikipedia.org/wiki/Hausdorff_distance

这里考虑的两个术语是针对两个边界的,即基本事实和输出预测。

标签我 :-

用python编写的图像注释工具。
支持多边形标注。
开源免费。
在Windows,Mac,Ubuntu上运行,或通过Anaconda,Docker运行
链接: - https://github.com/wkentaro/labelme

来源:-https://github.com/wkentaro/labelme

计算机视觉注释工具:-

英特尔开发的视频和图像注释工具
免费在线提供
在Windows,Mac和Ubuntu上运行
链接: - https://github.com/opencv/cvat

VGG图像注释器:-

免费的开源图像注释工具
简单的html页面<200kb,可以离线运行
支持多边形注释和点。
链接: - https://github.com/ox-vgg/via

来源:-https://github.com/ox-vgg/via

Rectlabel:-

Mac的付费注释工具
可以使用核心ML模型预先注释图像
支持多边形,三次贝塞尔曲线,线和点
链接: - https://github.com/ryouchinsa/Rectlabel-support

标签框:-

付费注释工具
支持钢笔工具,可以更快,更准确地注释
链接: - https://labelbox.com/product/image-segmentation

数据集

作为本节的一部分,让我们讨论公众可以使用的各种流行且多样化的数据集,人们可以使用它们开始进行培训。

帕斯卡语境

该数据集是Pascal VOC 2010数据集的扩展,它通过为整个场景提供注释而超出了原始数据集,并具有400多个类别的真实世界数据。

来源:-https://cs.stanford.edu/~roozbeh/pascal-context/
来源:-https://cs.stanford.edu/~roozbeh/pascal-context/

链接: - https://cs.stanford.edu/~roozbeh/pascal-context/

可可数据集

COCO填充数据集具有带有像素级别注释的原始COCO数据集的164k图像,并且是常见的基准数据集。 它涵盖172个类别:80个事物类,91个填充类和1个“未标记”类

资料来源:-http://cocodataset.org/#home

链接: - http://cocodataset.org/

城市景观数据集

该数据集由道路,车道,车辆和道路上物体的地面真实情况分割而成。 数据集包含在不同环境和天气条件下收集的30个类别和50个城市。 还有一个带有精细注释图像的视频数据集,可用于视频分割。 奇蒂视频 是可用于训练自动驾驶汽车的类似数据集。

来源:-https://www.cityscapes-dataset.com/

链接: - https://www.cityscapes-dataset.com/

Lits数据集

创建数据集是从肝脏CT扫描中识别肿瘤病变的挑战的一部分。 数据集包含130个训练数据的CT扫描和70个测试数据的CT扫描。

来源:-https://competitions.codalab.org/competitions/17094

链接: - https://competitions.codalab.org/competitions/17094

CCP数据集

布料共同解析是一个数据集,该数据集是通过联合图像分割和标签研究论文服装共同解析而创建的。 数据集包含1000多个带有像素级注释的图像,总共59个标签。

来源:-https://github.com/bearpaw/clothing-co-parsing

资源 :- https://github.com/bearpaw/clothing-co-parsing

Pratheepan数据集

根据Google的图像为皮肤分割任务创建的数据集,其中包含32张面部照片和46张家庭照片

来源:-http://cs-chan.com/downloads_skin_dataset.html

链接: - http://cs-chan.com/downloads_skin_dataset.html

Inria航空影像标签

从公共领域图像创建的空中分割图的数据集。 占地面积810平方公里,分为建筑和非建筑两类。

来源:-https://project.inria.fr/aerialimagelabeling/
来源:-https://project.inria.fr/aerialimagelabeling/

链接: - https://project.inria.fr/aerialimagelabeling/

S3DIS

该数据集包含3座建筑物中六个大型室内部分的点云,图像超过70000。

来源:-http://buildingparser.stanford.edu/dataset.html

链接: - http://buildingparser.stanford.edu/dataset.html

总结

我们讨论了不同算法的分类法,这些算法可用于解决语义分割的用例,无论是图像,视频还是点云,以及它们的贡献和局限性。 我们还研究了评估结果的方法以及开始使用的数据集。 一般而言,这应该对语义分割有一个全面的了解。

要获取更多用于语义细分的资源列表,请开始使用 https://github.com/mrgloom/awesome-semantic-segmentation.

延伸阅读


更新:
添加了更多的阅读材料。

资料来源:https://nanonets.com/blog/semantic-image-segmentation-2020/

现货图片

最新情报

现货图片

在线答疑

你好呀! 我怎么帮你?