语义分割和目标检测是什么关系?

机器学习初学者

共 1358字,需浏览 3分钟

 ·

2022-05-27 21:24

首先,让我们看一下语义分割和目标检测的目标分别是什么?

语义分割的目标

语义分割的任务是对输入的图像进行逐像素的分类,标记出像素级别的物体。

如上图,图1中把猫、天空、树、草地进行了逐像素的分类;图2中把牛、天空、树、草地进行了逐像素的分类。

目标检测的目标

目标检测的任务是对输入的图像进行物体检测,标注物体在图像上的位置,以及该位置上物体属于哪个分类。

如上图,模型把图中的人、狗、马分别进行了位置标注,并且也给出了对应的分类类别。

两种任务的异同之处:

一、从大方向的任务特点上来说

从大方向的任务特点来说,语义分割和目标检测任务目标都在意两个关键信息:

1)物体的位置

待检测的物体,它在图像中位于什么位置。

对于语义分割来说,这个信息需求的精准度在像素级别的。概括地说,我们需要把物体的轮廓描绘出来,以此来体现它的位置信息。

对于目标检测来说,这个信息需求的精准度仅在标注其外切矩形。换句话来说,把物体框出来,以此来体现它的位置信息。

2)物体的分类

有了位置信息之后,语义分割和目标检测都存在对物体的分类。不同的是:

对于语义分割来说,它提供的信息中位置信息和分类信息是有重叠的,即通过标记每个像素的分类,同时也达到提供位置信息。

对于目标检测来说,分类信息是针对每个标注的框的,每一个框对应着自己的分类。

二、从数据格式来说

正如前文所说,由于在任务的目标上存在着一些区别,这就使得它们需要不同的数据格式进行标注。

1)语音分割的数据格式

如上图,这张图中先验是5个类别。在分类中,会有5个channel,每个channel负责一个类别的概率预测。最后,每个像素上,以5个channel中的最大值作为最终分类,以此完成图像语义分割的标注工作。

2)目标检测的数据格式

从上图中我们可以看到,对于目标检测的数据格式分为了两个部分,分类和框的坐标。具体体现为:

分类最终体现在对每个潜在框分类的1*1*channel上,每个channel代表一个分类,取值最大的channel作为最终分类;位置信息会用4个值来保存:被分类的物体中它的框的坐标则为左上角的x和y坐标,以及宽和高的尺寸。

共享上游的特征提取网络

无论是语义分割和目标检测任务,它们都有一个特征提取的backbone。它们通常是从图像分类网络中进行嫁接的。当我们发现有性能更佳的分类网络时,把它嫁接到语义分割或目标检测上,通常也能带动下游任务性能的提升。

如上图,在Mask RCNN中,它同时处理了语义分割和目标检测的任务,在此网络的上游阶段,它们共享着ResNet的backbone网络。

小结

语义分割和目标检测,它们有着类似的任务目标,把物体标注出来,并且标记物体的具体分类信息。不同的是,语义分割所标记的物体是像素级别的颗粒度的,而目标检测标记的物体是其外切框。

不过,虽然存在着不同的任务细节特点,但是它们在网络上游上具有相同的特征提取的需求,于是,它们可以共享以图像分类为backbone的特征提取网络。


往期精彩回顾




浏览 32
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报