语义分割

你需要知道的3件事

什么是语义细分?

语义分割是一种深度学习算法,它将标签或类别与图像中的每个像素相关联。它用于识别构成不同类别的像素集合。例如,自动驾驶汽车需要识别车辆、行人、交通标志、人行道和其他道路特征。

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

语义分割的一个简单例子是将图像分成两个类。例如,在图1中,一个显示在海滩上的人的图像与一个显示图像像素的版本配对,这些像素被分割成两个单独的类:人和背景。

图1:图像和标记像素。

语义分割不限于两类。您可以更改分类图像内容的类别数。例如,该相同的图像可能被分成四个类:人,天空,水和背景。

语义切分与对象检测有何不同?

语义分割可以是对象检测的有用替代方法,因为它允许感兴趣的对象在像素级别跨越图像中的多个区域。该技术与对象检测相比,该技术可干净地检测不规则形状的物体,其中物体必须在边界框内装配(图2)。

图2:物体检测,显示边界框来识别物体。

如何使用语义分割?

因为图像中的语义分割标签像素,所以它比其他形式的物体检测更精确。这使得在需要精确图像映射的各种行业中的应用程序进行语义分割,例如:

  • 自动驾驶-通过将道路与行人、人行道、电线杆和其他车辆等障碍物分开来识别汽车可行驶的道路
  • 工业检测-用于检测材料缺陷,如晶圆检查
  • 卫星图像- 识别山脉,河流,沙漠和其他地形
  • 医学成像- 在细胞中分析和检测癌症异常
  • 机器人视觉- 识别和导航对象和地形

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

语义分割如何运作

训练语义分割网络对图像进行分类的过程如下:

  1. 分析像素标记图像集合。
  2. 创建一个语义分割网络。
  3. 训练网络将图像分类为像素类。
  4. 评估网络的准确性。

示例:自动化驾驶应用

图4中的序列显示了用于自动驾驶的语义分段的真实界限示例。道路的图像自动从其他车辆分段。下一节显示了如何创建这些网络。

图4:自动驾驶应用程序的语义分割。

理解体系结构

语义分割的一种常见方法是创建一个基于a的SEGNET卷积神经网络(CNN)架构。典型的CNN架构如图5所示。

此CNN将整个图像分类为众多预定义类别中的一个。

图5:CNN的典型结构。

为了在像素级而不是整个图像进行分类,您可以附加一个CNN的反向实现。上采样过程与下采样过程执行相同的次数,以确保最终图像与输入图像的大小相同。最后,使用像素分类输出层,将每个像素映射到特定的类。这形成了一个编码器-解码器体系结构,它支持语义分割。

图6:CNN在每一层执行与图像相关的功能,然后使用池化层(绿色)对图像进行降采样。这一过程在网络的前半部分重复多次。该图前半部分的输出后面是等量的解池层(橙色)。

利用MATLAB实现语义分割

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

  1. 标注数据或获取标注数据。
  2. 为原始图像和标记图像创建一个数据存储。
  3. 分区数据存储。
  4. 导入CNN并将其修改为SegNet。
  5. 训练并评估网络。

第1步:标注数据或获取标注数据。

深度学习模型建立在大量数据上,并且语义分割也不例外。一个选项是在Internet上找到标记的数据。如果您有自己的数据集,则可以使用Matlab中的图像贴标程序应用程序。您可以使用此数据集培训SEGNET。

图7:MATLAB Image Labeler应用程序对图像进行语义分割。

学到更多

步骤2:为原始图像和标记图像创建一个数据存储。

使用大量数据时,通常无法将所有信息加载到内存中。要管理大型数据集,可以使用数据存储。数据存储区包含要访问的文件的位置,允许您在需要在文件上运行时才能将其读入内存中。

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

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

步骤3:分区数据存储。

创建SegNet时,必须将数据存储分区为两部分:

  1. 用来训练SegNet的训练集
  2. 测试集,用于评估网络的准确性

图8:显示彩色图像(左)和相应标记像素(右)的高速公路场景。

步骤4:导入CNN并将其修改为SegNet。

加载一个预先训练过的网络,比如VGG16,并使用SegNetLayers命令,创建像素级标签所必需的编码器-解码器体系结构。

图9:在MATLAB中使用一行代码创建SEGNET架构。

第五步:训练和评估网络。

在最后一步中,为网络设置超参数并训练网络。

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

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

CUDA支持培训和预测金宝app®能力的GPU,计算能力为3.0或更高。建议使用GPU并要求并行计算工具箱™。

视频

例子和如何

软件参考

获得免费试用

30天的探索触手可及。