目标分割、目标识别、目标检测和目标跟踪的区别

来源:互联网 发布:毁灭战士4优化 编辑:程序博客网 时间:2024/05/01 04:58

参考知乎上的帖子:https://www.zhihu.com/question/36500536

因为最近在做一个行人检测的分类,对于这四个概念总是分不清,知乎上讲的很好,所以get一下


1)目标分割,应该是Target Segmentation,任务是把目标对应的部分分割出来


2)目标检测,应该是Target Detection。检测到图片当中的目标的具体位置


3) 目标识别,应该是Target Recognition。即是在所有的给定数据中,分类出哪一些sample是目标,哪一些不是。这个仅仅做一下分类任务。yes or no


4)目标追踪,应该是Target Tracking。这个任务很重要的第一点是目标定位(Target Locating)

而且这个任务设计到的数据一般具有时间序列(Temporal Data)。常见的情况是首先Target被Identify以后,算法或者系统需要在接下来时序的数据中,快速并高效地对给定目标进行再定位。任务需要区别类似目标,需要避免不要的重复计算,充分利用好时序相关性(Temporal Correlation),并且需要对一些简单的变化Robust,必须旋转,遮盖,缩小放大,Motion Blur之类的线性或者非线性变化。

目标跟踪:追踪目标运动轨迹。这个仅仅应用在视频当中。

典型的技术路线是:目标分割 ——>目标检测 ——>目标识别 ——>目标跟踪
举个栗子,如:需要对视频中的小明进行跟踪,处理过程将经历如下过程:
(1)首先,采集第一帧视频图像,因为人脸部的肤色偏黄,因此可以通过颜色特征将人脸与背景分割出来(目标分割);
(2)分割出来后的图像有可能不仅仅包含人脸,可能还有部分环境中颜色也偏黄的物体,此时可以通过一定的形状特征将图像中所有的人脸准确找出来,确定其位置及范围(目标检测);
(3)接下来需将图像中的所有人脸与小明的人脸特征进行对比,找到匹配度最好的,从而确定哪个是小明(目标识别);
(4)之后的每一帧就不需要像第一帧那样在全图中对小明进行检测,而是可以根据小明的运动轨迹建立运动模型,通过模型对下一帧小明的位置进行预测,从而提升跟踪的效率(目标跟踪)