语义分割

三件事情你需要知道的

什么是语义分割?

语义分割是一种深度学习算法,与图像中每个像素的标签或类别相关联。它被用于识别形成截然不同的类别的像素的集合。例如,自主车辆需要识别车辆,行人,交通标志,路面,和其他道路的特点。

语义分割在许多应用,例如自动驾驶,医学成像和工业检查使用。

语义分割的一个简单的例子是在图像分离成两个类。例如,在图1中,示出一个人在海滩的图像配对示出分割成两个独立的类图像的像素的版本:人与背景。

图1:图像和标记像素。

语义合并不限于两大类。您可以更改类别的数量为图像的内容进行分类。此相同的图像可以被划分为四类:人,天空,水,和背景的例子。

如何语义分割的目标检测不同?

语义分割可以是物体检测有用的替代方案,因为它允许的在像素级利益跨越多个区域中的图像中的对象。这种技术干净地检测出形状不规则,而相比之下,对象检测,其中,对象必须适合的边界框(图2)中的对象。

图2:对象检测,显示出边界框来识别对象。

如何语义分割使用?

因为语义分割图像中的像素标记,它比其他形式的物体检测更精确。这使得用于在各种需要精确的图像的地图,诸如产业应用语义分割有用:

  • 自动驾驶- 对于由像行人,人行道,电线杆,等车的障碍分离的道路标识的汽车可行驶路线
  • 工业检测- 用于检测材料中的缺陷,如晶片检查
  • 卫星图像- 用于识别山脉,河流,沙漠和其他地形
  • 医学影像- 用于分析和检测在细胞癌变的异常
  • 机器人视觉- 用于识别和导航对象和地形

图3:多光谱图像卫星的语义分割。

如何语义分割厂

一种训练语义分割网络来分类图像的处理步骤如下:

  1. 分析像素标记的图像的集合。
  2. 创建语义分割网络。
  3. 训练网络来分类图像转换成像素的类别。
  4. 评估网络的准确性。

例如:自动驾驶的应用

在图4中示出了该序列用于自动驾驶语义分割的一个真实的例子。道路的图像会自动从其他车辆分割。下一节将展示如何创建这些网络。

图4:用于自动驱动应用语义分割。

了解架构

语义分割的一种常见方法是创建一个SegNet,这是基于卷积神经网络(CNN)架构。一个典型的CNN架构显示在图5。

此CNN整个图像分类成多个预定义的类别之一。

图5:一个CNN的典型结构。

为了在像素级别,而不是整个图像进行分类,可以追加一个反向实施CNN的。上采样处理中执行相同的次数作为下采样过程,以确保最终的图像的尺寸与输入图像相同。最后,一个像素分类输出层被使用,其中,每个像素到某一类映射。这形成编码器 - 解码器的体系结构,这使得语义分割。

图6:在CNN每一层进行图像相关的功能,然后下采样使用池层(绿色)图像。这个过程重复多次为网络的前半部分。从该图的前半部分的输出,随后等量unpooling层(橙色)的。

使用MATLAB进行语义分割

在MATLAB中,执行语义分割的工作流程遵循以下五个步骤:

  1. 标签数据或获得标签数据。
  2. 创建原始图像和标记图像数据存储。
  3. 分区数据存储。
  4. 导入CNN和修改它是一个SegNet。
  5. 训练和评估网络。

步骤1:标签的数据或获得标签数据。

深学习模型是建立在大量的数据,以及语义分割也不例外。一种选择是在互联网上找到的标签数据。如果你有自己的数据集,你可以使用MATLAB中的图像贴标应用。您可以使用此数据集来训练SegNet。

图7:Matlab图像贴标应用标签图像语义分割。

学到更多

第2步:创建原始图像和标记图像数据存储。

当有大量数据的工作,它往往无法加载所有的信息到内存中。要管理大型数据集,您可以使用的数据存储。数据存储区包含您要访问的文件的位置,它可以让你阅读到内存只有当你需要对文件进行操作。

要创建一个SegNet,你需要两个数据存储:

  1. ImageDatastore,其中包含的原始图像
  2. PixelLabelDatastore,其中包含标记的图像

第3步:分区中的数据存储。

当创建一个SegNet,您必须将数据存储分为两个部分:

  1. 训练集,用来训练SegNet
  2. 测试集,用于评估网络的精度

图8:公路场景示出彩色图像(左)和对应的标记的像素(右)。

第4步:导入CNN和修改它是一个SegNet。

加载预训练的网络,诸如VGG16,以及使用该SegNetLayers命令,创建所必需的像素级的标记编码器 - 解码器架构。

图9:在MATLAB一行代码创建SegNet架构。

第5步:培训和评估网络。

在最后的步骤中,您为网络设置超参数和培训网络。

如何了解更多关于语义分割

下载188bet金宝搏产品,金宝app使用语义分割图像分析的支持包括:MATLAB®计算机视觉工具箱™像素标记,和深度学习工具箱™用于创建和训练网络。

培训与预测支撑在CUDA金宝app®能够GPU具有3.0或更高的计算能力。一个GPU的使用建议和要求并行计算工具箱™。

软件参考

获取免费试用

30天唾手可得的探索。