精华内容
下载资源
问答
  • 多目标跟踪MOT16数据集和评价指标

    千次阅读 2020-02-23 17:46:00
    最近要做一个有关多目标跟踪的项目,刚刚接触MOT,所以先来了解一下MOT16这个比较经典的数据集以及比较经典的评价标准。1. 多目标跟踪多目标跟踪处理的对象是视频,从视频的第一帧到最后一...

    最近要做一个有关多目标跟踪的项目,刚刚接触MOT,所以先来了解一下MOT16这个比较经典的数据集以及比较经典的评价标准。

    1. 多目标跟踪

    多目标跟踪处理的对象是视频,从视频的第一帧到最后一帧,里边有多个目标在不断运动。多目标跟踪的目的就是将每个目标和其他目标进行区分开来,具体方法是给每个目标分配一个ID,并记录他们的轨迹。

    刚开始接触,可能觉得直接将目标检测的算法应用在视频的每一帧就可以完成这个任务了。实际上,目标检测的效果是很不稳定的,其实最大的区别在于,仅仅使用目标检测无法给对象分配ID,并且多目标跟踪算法能够优化轨迹,能让目标框更加稳定。

    多目标跟踪中一个比较经典的和深度学习结合比较好的方法就是Detection Based Tracking,对前后两帧进行目标检测,然后根据得到的前后两帧的所有目标进行匹配,从而维持ID。初学者接触比较多的就是SORT和Deep SORT算法了。

    2. MOT16数据集

    MOT16数据集是在2016年提出来的用于衡量多目标跟踪检测和跟踪方法标准的数据集,专门用于行人跟踪。官网地址是:https://motchallenge.net/

    从官网下载的数据是按照以下的文件结构进行组织的:

    - MOT16
    	- train
    		- MOT16-02
    			- det
    				- det.txt
    			- gt
    				- gt.txt
    			- img1
    			- seqinfo.init
    		- MOT16-04
    		- MOT16-05
    		- MOT16-09
    		- MOT16-10
    		- MOT16-11
    		- MOT16-13
    	- test
    		- MOT16-01
    			- det
    				- det.txt
    			- img1
    			- seqinfo.ini
    		- MOT16-03
    		- MOT16-06
    		- MOT16-07
    		- MOT16-08
    		- MOT16-12
    		- MOT16-14		
    

    在MOT16数据集中,是包含了检测得到的框的,这样是可以免去目标检测这个部分,提供统一的目标检测框以后,然后可以比较目标跟踪更关注的部分,而不用在花费精力在目标检测上。

    1. seqinfo.ini

    在每个子文件夹中都有这个,主要用于说明这个文件的一些信息,比如长度,帧率,图片的长和宽,图片的后缀名。

    [Sequence]
    name=MOT16-09
    imDir=img1
    frameRate=30
    seqLength=525
    imWidth=1920
    imHeight=1080
    imExt=.jpg
    
    1. det.txt

    这个文件中存储了图片的检测框的信息(检测得到的信息文件),部分内容展示如下:

    1,-1,1359.1,413.27,120.26,362.77,2.3092,-1,-1,-1
    1,-1,571.03,402.13,104.56,315.68,1.5028,-1,-1,-1
    1,-1,650.8,455.86,63.98,193.94,0.33276,-1,-1,-1
    1,-1,721.23,446.86,41.871,127.61,0.27401,-1,-1,-1
    2,-1,460.48,442.1,90.896,274.69,0.26749,-1,-1,-1
    2,-1,643.66,461.78,59.629,180.89,0.18023,-1,-1,-1
    2,-1,1494.4,408.29,112.14,338.41,0.16075,-1,-1,-1
    2,-1,572.83,364.89,128.96,388.88,-0.011851,-1,-1,-1
    3,-1,1359.1,413.27,120.26,362.77,2.3387,-1,-1,-1
    3,-1,571.03,402.13,104.56,315.68,0.79923,-1,-1,-1
    3,-1,1482.5,390.88,128.96,388.88,0.35271,-1,-1,-1
    ...
    600,-1,708.37,476.87,20.435,63.306,-0.1483,-1,-1,-1
    600,-1,421.14,446.86,41.871,127.61,-0.19971,-1,-1,-1
    600,-1,613.25,412.69,51.78,157.34,-0.38627,-1,-1,-1
    600,-1,375.27,454.06,48.246,146.74,-0.42444,-1,-1,-1
    

    从左到右分别代表:

    • frame: 第几帧图片

    • id: 这个检测框分配的id,在这里都是-1代表没有id信息

    • bbox(四位): 分别是左上角坐标和长宽

    • conf:这个bbox包含物体的置信度,可以看到并不是传统意义的0-1,分数越高代表置信度越高

    • MOT3D(x,y,z): 是在MOT3D中使用到的内容,这里关心的是MOT2D,所以都设置为-1

    可以看出以上内容主要提供的和目标检测的信息没有区别,所以也在一定程度上可以用于检测器的训练。

    1. gt.txt

    这个文件只有train的子文件夹中有,test中没有,其中内容的格式和det.txt有一些类似,部分内容如下:

    1,1,912,484,97,109,0,7,1
    2,1,912,484,97,109,0,7,1
    3,1,912,484,97,109,0,7,1
    ...
    136,1,912,484,97,109,0,7,0.93878
    137,1,912,484,97,109,0,7,0.86735
    138,1,912,484,97,109,0,7,0.79592
    139,1,912,484,97,109,0,7,0.72449
    140,1,912,484,97,109,0,7,0.65306
    ...
    338,1,912,484,97,109,0,7,0
    339,1,912,484,97,109,0,7,0
    340,1,912,484,97,109,0,7,0
    341,1,912,484,97,109,0,7,0
    ...
    599,1,912,484,97,109,0,7,1
    600,1,912,484,97,109,0,7,1
    
    1,2,1338,418,167,379,1,1,1
    2,2,1342,417,168,380,1,1,1
    3,2,1346,417,170,380,1,1,1
    ...
    

    从左到右分别是:

    • frame: 第几帧图片

    • ID:也就是轨迹的ID,可以看出gt里边是按照轨迹的ID号进行排序的

    • bbox:  分别是左上角坐标和长宽

    • 是否忽略:0代表忽略

    • classes:目标的类别个数(这里是驾驶场景包括12个类别),7代表的是静止的人。

    第8个类代表错检,9-11代表被遮挡的类别

    • 最后一个代表目标运动时被其他目标包含、覆盖、边缘裁剪的情况。

    总结:

    • train中含有的标注信息主要来自det.txt和gt.txt。test中只含有det.txt。

    • det.txt含有的有用信息有:frame, bbox, conf

    • gt.txt含有的有用信息有:frame,bbox, conf, id, class

    • output.txt(使用deepsort得到的文件)中含有的有用信息有:frame,bbox, id

    3. MOT中的评价指标

    评价出发点

    • 所有出现的目标都要及时能够找到;

    • 目标位置要尽可能与真实目标位置一致;

    • 每个目标都应该被分配一个独一无二的ID,并且该目标分配的这个ID在整个序列中保持不变。

    评价指标数学模型:评价过程的步骤:

    1. 建立 目标与假设最优间的最优一一对应关系,称为correspondence

    2. 对所有的correspondence,计算位置偏移误差

    3. 累积结构误差 a. 计算漏检数 b. 计算虚警数(不存在目标却判断为目标) c. 跟踪目标发生跳变的次数

    1. MOTA(Multiple Object Tracking Accuracy)

    FN为False Negative, FP为False Positve, IDSW为ID Switch, GT是Ground Truth物体的数量。

    MOTA主要考虑的是tracking中所有对象匹配错误,主要是FP,FN,IDs. MOTA给出的是非常直观的衡量跟踪其在检测物体和保持轨迹时的性能,与目标检测精度无关。

    MOTA取值小于100,但是当跟踪器产生的错误超过了场景中的物体,MOTA可以变为负数。

    ps: MOTA&MOTP是计算所有帧相关指标后再进行平均的,不是计算每帧的rate然后进行rate平均。

    1. MOTP(Multiple Object Tracking Precision)

    d为检测目标 和给它分配的ground truth之间在所有帧中的平均度量距离,在这里是使用bonding box的overlap rate来进行度量(在这里MOTP是越大越好,但对于使用欧氏距离进行度量的就是MOTP越小越好,这主要取决于度量距离d的定义方式);而c为在当前帧匹配成功的数目。MOTP主要量化检测器的定位精度,几乎不包含与跟踪器实际性能相关的信息。

    1. MT(Mostly Tracked)

    满足Ground Truth至少在80%的时间内都匹配成功的track,在所有追踪目标中所占的比例。注意这里的MT和ML与当前track的ID是否发生变化无关,只要Ground Truth与目标匹配上即可。

    1. ML (Mostly Lost)

    满足Ground Truth在小于20%的时间内匹配成功的track,在所有追踪目标中所占的比例。

    1. ID Switch

    Ground Truth所分配的ID发生变化的次数,如图1中(a)所示。

    1. FM (Fragmentation)

    FM计算的是跟踪有多少次被打断(既Ground Truth的track没有被匹配上),换句话说每当轨迹将其状态从跟踪状态改变为未跟踪状态,并且在稍后的时间点跟踪相同的轨迹时,就会对FM进行计数。此处需要注意的是,FM计数时要求ground truth的状态需要满足:tracked->untracked->tracked,如图1中(b)所示,而(c)中的不算FM。需要注意的是,FM与ID是否发生变化无关。

    1. FP (False Positive)

    当前帧预测的track和detection没有匹配上,将错误预测的track点称为FP,如图1所示。是否匹配成功与匹配时所设置的阈值有关。

    1. FN (False Negative)

    当前帧预测的track和detection没有匹配上,将未被匹配的ground truth点称为FN(也可以称为Miss)

    1. ID scores

    MOTA的主要问题是仅仅考虑跟踪器出错的次数,但是有一些场景(比如航空场景)更加关注一个跟踪器是否尽可能长的跟踪一个目标。这个问题通过构建二分图来解决,主要计算对象是IDTP、IDFP、IDFN。

    • IDP:

    • IDR:

    • IDF1:  正确识别的检测与真实数和计算检测的平均数之比

    4. 参考资料

    Evaluating Multiple Object Tracking Performance: The CLEAR MOT Metrics.

    https://motchallenge.net/

    https://blog.csdn.net/u012477435/article/details/104158573

    (完)

    展开全文
  • 1 写在前面 之前分享了自动驾驶数据集KITTI的百度网盘链接(点击进入kitti百度云),很多...MOT16是2016年 MOT Challenge多目标检测跟踪方法公开基准数据集,随后的MOT算法基本都会给出在MOT16上的性能表现,即使随后

    1 写在前面
    之前分享了自动驾驶数据集KITTI的百度网盘链接(点击进入kitti百度云),很多朋友从StrongerTang这里获得了链接,并且不少朋友在后天给了好评,很是开心,可以帮助到有需要的朋友。有朋友在后台留言说主要是做多目标跟踪MOT的,所以希望可以分享一下MOT16数据集。于是写了这篇文章,同样希望可以帮到有需要的小伙伴。

    2 MOT16数据集简介
    MOT16是2016年 MOT Challenge多目标检测跟踪方法公开基准数据集,随后的MOT算法基本都会给出在MOT16上的性能表现,即使随后有了MOT17、MOT20数据集。
    官方网站:https://motchallenge.net/
    论文可见:https://arxiv.org/abs/1603.00831

    MOT16主要标注目标为移动的行人与车辆,是基于MOT15的添加了细化的标注、更多bounding box的数据集, MOT16拥有更加丰富的画面,不同拍摄视角和相机运动,也包含了不同天气状况的视频。是由一批合格的研究人员严格遵从相应的标注准则进行标注的,最后通过双重检测的方法来保证标注信息的高精确度。MOT16标注的运动轨迹为2D。

    MOT16数据集共有14个视频序列,其中7个为带有标注信息的训练集,其它7个为测试集,如下图所示,其中第一行为训练集示例,第二行为测试集示例。
    在这里插入图片描述

    MOT16数据集的数据统计表如下图所示,第一个表为训练集,第二个表为测试集,表格信息包含视频帧率(帧/秒),每帧图像的尺寸,时长,标注box数量,平均每一帧出现的行人数,相机运动情况和拍摄视角以及天气状况。
    在这里插入图片描述
    3 MOT16数据集格式
    解压MOT16后在文件夹下面有两个目录:traint和tes,分别表示训练集和测试集。
    两个目录分别有7个子目录。每个子目录下都是一段视频的抽帧图片及标注。由于train里面的内容比较全,train里面的数据比test多了一个ground truth。

    以train为例,在MOT16/train/MOT16-02目录下有三个目录和一个文件:det、gt,img1和 seqinfo.ini。
    在这里插入图片描述
    det文件夹:
    det目录下只有一个det.txt文件,每行一个标注,代表一个检测的物体。
    在这里插入图片描述
    其格式为:

    <frame>, <id>, <bb_left>, <bb_top>, <bb_width>, <bb_height>, <conf>, <x>, <y>, <z> 
    

    每行10个数字,第一个代表第几帧,第二个代表轨迹编号(在这个文件里总是为-1)

    bb开头的4个数代表物体框的左上角坐标及长宽。conf代表置信度,最后3个是MOT3D用到的内容,2D检测总是为-1。

    img1文件夹:
    img1文件夹下就是把视频一帧帧抽取出来的图片,总共600张。文件名则是从000001.jpg到000600.jpg。
    在这里插入图片描述
    gt文件夹:
    gt文件夹下有一个gt.txt文件,内容和上面的det.txt相似。
    在这里插入图片描述
    第一个值含义同det,第二个值为目标运动轨迹的ID号,第三个到第六个值的同上,第七个值为目标轨迹是否进入考虑范围内的标志,0表示忽略,1表示active。第八个值为该轨迹对应的目标类别(类别见下面的表格中的label-ID对应情况),第九个值为box的visibility ratio,表示目标运动时被其他目标box包含/覆盖或者目标之间box边缘裁剪情况。

    目标类别:
    在这里插入图片描述
    seqinfo.ini文件:
    主要介绍视频的帧率、分辨率等基本信息。
    在这里插入图片描述
    4 百度网盘链接
    如果有需要网盘链接的小伙伴,可以按下面方式免费获取:
    1.搜索公,,-众-。。号:StrongerTang

    2.后台回复关键词:MOT16

    输入正确的关键词后即可免费获取!

    声明:此资料免费分享,仅作知识分享,勿用于任何商业用途。赠人玫瑰,手有余香!

    推荐阅读:kitti数据集简介、百度网盘分享 kitti-object、kitti-tracking 全套数据集 自动驾驶

    展开全文
  • 多目标跟踪-MOT16数据集格式介绍

    万次阅读 多人点赞 2018-04-04 15:56:23
    背景介绍 多目标跟踪的问题是这样的:有一段视频,视频是由 N 个 连续帧...所以MOTchallenge上的大多数算法直接使用数据集里标注的检测结果,而不是自己检测,他们的主要精力在:Occlusions,similar appearance,com...

    背景介绍

    多目标跟踪的问题是这样的:有一段视频,视频是由 N 个 连续帧构成的。从第一帧到最后一帧,里面有多个目标,不断地有出有进,不断地运动。我们的目的是对每个目标,能跟其他目标区分开,维持他们的ID、记录他们的轨迹。
    所以MOTchallenge上的大多数算法直接使用数据集里标注的检测结果,而不是自己检测,他们的主要精力在:Occlusions,similar appearance,complex motion,false alarms方面。

    MOT16提供了标注好的检测结果。各个算法基本不自己做检测。

    数据集介绍

    MOT16是2016年提出的多目标跟踪MOT Challenge系列的一个衡量多目标检测跟踪方法标准的数据集。

    官方网站:https://motchallenge.net/

    论文可见:https://arxiv.org/abs/1603.00831

    理解数据集过程参考了这篇博客

    解压MOT16后在文件夹下面有两个目录:test和train。分别代表训练集和测试集。
    这两个目录分别有7个子目录。每个子目录下都是一段视频的抽帧图片及标注。由于train里面的内容比较全,train里面的数据比test多了一个ground truth,所以下面以train为例介绍。

    在“MOT16\train\MOT16-02”目录下有三个目录和一个文件,三个目录分别是:det、gt和img1。一个文件是seqinfo.ini.

    det目录

    det目录下只有一个det.txt文件,每行一个标注,代表一个检测的物体。
    内容摘抄为:

    1,-1,1359.1,413.27,120.26,362.77,2.3092,-1,-1,-1
    1,-1,571.03,402.13,104.56,315.68,1.5028,-1,-1,-1
    1,-1,650.8,455.86,63.98,193.94,0.33276,-1,-1,-1
    1,-1,721.23,446.86,41.871,127.61,0.27401,-1,-1,-1
    1,-1,454.06,434.36,97.492,294.47,0.20818,-1,-1,-1
    1,-1,1254.6,446.72,33.822,103.47,0.14776,-1,-1,-1
    1,-1,1301.1,237.38,195.98,589.95,0.051818,-1,-1,-1
    .....

    其格式为:

    <frame>, <id>, <bb_left>, <bb_top>, <bb_width>, <bb_height>, <conf>, <x>, <y>, <z> 

    每行10个数字,第一个代表第几帧,第二个代表轨迹编号(在这个文件里总是为-1)

    bb开头的4个数代表物体框的左上角坐标及长宽。conf代表置信度,最后3个是MOT3D用到的内容,2D检测总是为-1.

    总结:有用的字段主要是frame, bb_left, bb_top, bb_width, bb_height, conf

    img1目录

    这个目录下就是把视频一帧帧抽取出来的图片,总共600张。文件名则是从000001.jpg到000600.jpg。

    gt目录

    这个目录下有一个gt.txt文件,内容和上面的det.txt很像。
    内容摘抄如下:

    1,1,912,484,97,109,0,7,1
    2,1,912,484,97,109,0,7,1
    3,1,912,484,97,109,0,7,1
    4,1,912,484,97,109,0,7,1
    5,1,912,484,97,109,0,7,1
    6,1,912,484,97,109,0,7,1
    7,1,912,484,97,109,0,7,1
    .......
    

    第一个值含义同上,第二个值为目标运动轨迹的ID号,第三个到第六个值的同上,第七个值为目标轨迹是否进入考虑范围内的标志,0表示忽略,1表示active。第八个值为该轨迹对应的目标种类(种类见下面的表格中的label-ID对应情况),第九个值为box的visibility ratio,表示目标运动时被其他目标box包含/覆盖或者目标之间box边缘裁剪情况。
    第8个值得含义参考下图:

    image

    seqinfo.ini文件

    内容摘抄如下:

    [Sequence]
    name=MOT16-02
    imDir=img1
    frameRate=30
    seqLength=600
    imWidth=1920
    imHeight=1080
    imExt=.jpg
    

    主要介绍视频的帧率、分辨率等基本信息。

    自己的理解

    即使有了一个online的MOT跟踪算法,在MOTchanllenge上获得了好成绩,也不是立马可投入生产了。如果想要做一个实时的多目标跟踪器,还需要一个实时的图像检测器程序。这两部分需要足够块,才能适应实时的生产环境。

    展开全文
  • 最近要做一个有关多目标跟踪的项目,刚刚接触MOT,所以先来了解一下MOT16这个比较经典的数据集以及比较经典的评价标准。 1. 多目标跟踪 多目标跟踪处理的对象是视频,从视频的第一帧到最后一帧,里边有多个目标在...

    最近要做一个有关多目标跟踪的项目,刚刚接触MOT,所以先来了解一下MOT16这个比较经典的数据集以及比较经典的评价标准。

    1. 多目标跟踪

    多目标跟踪处理的对象是视频,从视频的第一帧到最后一帧,里边有多个目标在不断运动。多目标跟踪的目的就是将每个目标和其他目标进行区分开来,具体方法是给每个目标分配一个ID,并记录他们的轨迹。

    已开始接触,可能觉得直接将目标检测的算法应用在视频的每一帧就可以完成这个任务了。实际上,目标检测的效果是很不稳定的,其实最大的区别在于,仅仅使用目标检测无法给对象分配ID,并且跟踪能够优化整个跟踪过程,能让目标框更加稳定。

    多目标跟踪中一个比较经典的和深度学习结合比较好的方法就是Detection Based Tracking,对前后两帧进行目标检测检测,然后根据得到的前后两帧的所有目标进行匹配,从而维持ID。初学者接触比较多的就是SORT和Deep SORT算法了。

    2. MOT16数据集

    MOT16数据集是在2016年提出来的用于衡量多目标跟踪检测和跟踪方法标准的数据集,专门用于行人跟踪。官网地址是:https://motchallenge.net/

    从官网下载的数据是按照以下的文件结构进行组织的:

    - MOT16
    	- train
    		- MOT16-02
    			- det
    				- det.txt
    			- gt
    				- gt.txt
    			- img1
    			- seqinfo.init
    		- MOT16-04
    		- MOT16-05
    		- MOT16-09
    		- MOT16-10
    		- MOT16-11
    		- MOT16-13
    	- test
    		- MOT16-01
    			- det
    				- det.txt
    			- img1
    			- seqinfo.ini
    		- MOT16-03
    		- MOT16-06
    		- MOT16-07
    		- MOT16-08
    		- MOT16-12
    		- MOT16-14		
    

    在MOT16数据集中,是包含了检测得到的框的,这样是可以免去目标检测这个部分,提供统一的目标检测框以后,然后可以比较目标跟踪更关注的部分,而不用在花费精力在目标检测上。

    1. seqinfo.ini

    在每个子文件夹中都有这个,主要用于说明这个文件的一些信息,比如长度,帧率,图片的长和宽,图片的后缀名。

    [Sequence]
    name=MOT16-09
    imDir=img1
    frameRate=30
    seqLength=525
    imWidth=1920
    imHeight=1080
    imExt=.jpg
    
    1. det.txt

    这个文件中存储了图片的检测框的信息(检测得到的信息文件),部分内容展示如下:

    1,-1,1359.1,413.27,120.26,362.77,2.3092,-1,-1,-1
    1,-1,571.03,402.13,104.56,315.68,1.5028,-1,-1,-1
    1,-1,650.8,455.86,63.98,193.94,0.33276,-1,-1,-1
    1,-1,721.23,446.86,41.871,127.61,0.27401,-1,-1,-1
    2,-1,460.48,442.1,90.896,274.69,0.26749,-1,-1,-1
    2,-1,643.66,461.78,59.629,180.89,0.18023,-1,-1,-1
    2,-1,1494.4,408.29,112.14,338.41,0.16075,-1,-1,-1
    2,-1,572.83,364.89,128.96,388.88,-0.011851,-1,-1,-1
    3,-1,1359.1,413.27,120.26,362.77,2.3387,-1,-1,-1
    3,-1,571.03,402.13,104.56,315.68,0.79923,-1,-1,-1
    3,-1,1482.5,390.88,128.96,388.88,0.35271,-1,-1,-1
    ...
    600,-1,708.37,476.87,20.435,63.306,-0.1483,-1,-1,-1
    600,-1,421.14,446.86,41.871,127.61,-0.19971,-1,-1,-1
    600,-1,613.25,412.69,51.78,157.34,-0.38627,-1,-1,-1
    600,-1,375.27,454.06,48.246,146.74,-0.42444,-1,-1,-1
    

    从左到右分别代表:

    • frame: 第几帧图片
    • id: 这个检测框分配的id,在这里都是-1代表没有id信息
    • bbox(四位): 分别是左上角坐标和长宽
    • conf:这个bbox包含物体的置信度,可以看到并不是传统意义的0-1,分数越高代表置信度越高
    • MOT3D(x,y,z): 是在MOT3D中使用到的内容,这里关心的是MOT2D,所以都设置为-1

    可以看出以上内容主要提供的和目标检测的信息没有区别,所以也在一定程度上可以用于检测器的训练。

    1. gt.txt

    这个文件只有train的子文件夹中有,test中没有,其中内容的格式和det.txt有一些类似,部分内容如下:

    1,1,912,484,97,109,0,7,1
    2,1,912,484,97,109,0,7,1
    3,1,912,484,97,109,0,7,1
    ...
    136,1,912,484,97,109,0,7,0.93878
    137,1,912,484,97,109,0,7,0.86735
    138,1,912,484,97,109,0,7,0.79592
    139,1,912,484,97,109,0,7,0.72449
    140,1,912,484,97,109,0,7,0.65306
    ...
    338,1,912,484,97,109,0,7,0
    339,1,912,484,97,109,0,7,0
    340,1,912,484,97,109,0,7,0
    341,1,912,484,97,109,0,7,0
    ...
    599,1,912,484,97,109,0,7,1
    600,1,912,484,97,109,0,7,1
    
    1,2,1338,418,167,379,1,1,1
    2,2,1342,417,168,380,1,1,1
    3,2,1346,417,170,380,1,1,1
    ...
    

    从左到右分别是:

    • frame: 第几帧图片

    • ID:也就是轨迹的ID,可以看出gt里边是按照轨迹的ID号进行排序的

    • bbox: 分别是左上角坐标和长宽

    • 是否忽略:0代表忽略

    • classes:目标的类别个数(这里是驾驶场景包括12个类别),7代表的是静止的人。

      第8个类代表错检,9-11代表被遮挡的类别

    • 最后一个代表目标运动时被其他目标包含、覆盖、边缘裁剪的情况。

    总结:

    • train中含有的标注信息主要来自det.txt和gt.txt。test中只含有det.txt。
    • det.txt含有的有用信息有:frame, bbox, conf
    • gt.txt含有的有用信息有:frame,bbox, conf, id, class
    • output.txt(使用deepsort得到的文件)中含有的有用信息有:frame,bbox, id

    3. MOT中的评价指标

    评价出发点

    • 所有出现的目标都要及时能够找到;
    • 目标位置要尽可能与真实目标位置一致;
    • 每个目标都应该被分配一个独一无二的ID,并且该目标分配的这个ID在整个序列中保持不变。

    评价指标数学模型
    评价过程的步骤:

    1. 建立 目标与假设最优间的最优一一对应关系,称为correspondence
    2. 对所有的correspondence,计算位置偏移误差
    3. 累积结构误差 a. 计算漏检数 b. 计算虚警数(不存在目标却判断为目标) c. 跟踪目标发生跳变的次数

    1. MOTA(Multiple Object Tracking Accuracy)

    M O T A = 1 − ∑ ( F N + F P + I D S W ) ∑ G T ∈ ( − ∞ , 1 ] MOTA=1-\frac{\sum(FN+FP+IDSW)}{\sum GT}\in (-\infty,1] MOTA=1GT(FN+FP+IDSW)(,1]

    FN为False Negative, FP为False Positve, IDSW为ID Switch, GT是Ground Truth物体的数量。

    MOTA主要考虑的是tracking中所有对象匹配错误,主要是FP,FN,IDs. MOTA给出的是非常直观的衡量跟踪其在检测物体和保持轨迹时的性能,与目标检测精度无关。

    MOTA取值小于100,但是当跟踪器产生的错误超过了场景中的物体,MOTA可以变为负数。

    ps: MOTA&MOTP是计算所有帧相关指标后再进行平均的,不是计算每帧的rate然后进行rate平均。

    1. MOTP(Multiple Object Tracking Precision)

    M O T P = ∑ t , i d t , i ∑ t c t MOTP=\frac{\sum_{t,i}d_{t,i}}{\sum_tc_t} MOTP=tctt,idt,i

    d为检测目标 i ​ i​ i和给它分配的ground truth之间在所有帧中的平均度量距离,在这里是使用bonding box的overlap rate来进行度量(在这里MOTP是越大越好,但对于使用欧氏距离进行度量的就是MOTP越小越好,这主要取决于度量距离d的定义方式);而c为在当前帧匹配成功的数目。MOTP主要量化检测器的定位精度,几乎不包含与跟踪器实际性能相关的信息。

    1. MT(Mostly Tracked)

    满足Ground Truth至少在80%的时间内都匹配成功的track,在所有追踪目标中所占的比例。注意这里的MT和ML与当前track的ID是否发生变化无关,只要Ground Truth与目标匹配上即可。

    1. ML (Mostly Lost)

    满足Ground Truth在小于20%的时间内匹配成功的track,在所有追踪目标中所占的比例。

    1. ID Switch

    Ground Truth所分配的ID发生变化的次数,如图1中(a)所示。

    1. FM (Fragmentation)

    FM计算的是跟踪有多少次被打断(既Ground Truth的track没有被匹配上),换句话说每当轨迹将其状态从跟踪状态改变为未跟踪状态,并且在稍后的时间点跟踪相同的轨迹时,就会对FM进行计数。此处需要注意的是,FM计数时要求ground truth的状态需要满足:tracked->untracked->tracked,如图1中(b)所示,而©中的不算FM。需要注意的是,FM与ID是否发生变化无关。

    1. FP (False Positive)

    当前帧预测的track和detection没有匹配上,将错误预测的track点称为FP,如图1所示。是否匹配成功与匹配时所设置的阈值有关。

    1. FN (False Negative)

    当前帧预测的track和detection没有匹配上,将未被匹配的ground truth点称为FN(也可以称为Miss)

    1. ID scores

    MOTA的主要问题是仅仅考虑跟踪器出错的次数,但是有一些场景(比如航空场景)更加关注一个跟踪器是否尽可能长的跟踪一个目标。这个问题功过构建二分图来解决,主要计算对象是IDTP、IDFP、IDFN。

    • IDP:

    I D P = I D T P I D T P + I D F P IDP=\frac{IDTP}{IDTP+IDFP} IDP=IDTP+IDFPIDTP

    • IDR:

    I D R = I D T P I D T P + I D F N IDR=\frac{IDTP}{IDTP+IDFN} IDR=IDTP+IDFNIDTP

    • IDF1: 正确识别的检测与真实数和计算检测的平均数之比

    I D F 1 = 2 I D T P 2 I D T P + I D F P + I D F N IDF1=\frac{2IDTP}{2IDTP+IDFP+IDFN} IDF1=2IDTP+IDFP+IDFN2IDTP

    4. 参考资料

    Evaluating Multiple Object Tracking Performance: The CLEAR MOT Metrics.

    https://motchallenge.net/

    https://blog.csdn.net/u012477435/article/details/104158573

    展开全文
  • MOT数据集

    千次阅读 2020-10-22 16:01:59
    这里写自定义目录标题基本数据集MOT 数据集KITTI 数据集MOT16 基本数据集 MOT 数据集 数据集用的最多的是 MOTChallenge,专注于行人追踪的。 15 年的都是采集的老的数据集的视频做的修正。参考论文:MOTChallenge ...
  • MOT17数据集说明

    千次阅读 热门讨论 2018-05-15 14:48:28
    本文翻译自MOT17数据集自有说明,英文原文为 link 介绍 文件格式 请提交你的结果为一个单独的.zip文件,每一个序列必须存储在一个.txt文件中,同时保存在根目录下。文件名必须与序列名字相同。 上传的...
  • MOT2020数据集介绍

    千次阅读 2021-01-19 16:02:25
    测试的gt没有给出,因此想要得到测试的结果需要在MOT官网上传你的结果去评估。 每个图片都是jpg格式,且命名为6个数字的文件如(000001.jpg) 平均每帧有246个行人。 除了行人,注释还包括车辆和自行车等其他类别...
  • 1 前言 MOT数据集中的测试数据是包含相机运动的;
  • #多目标跟踪# #数据集#TAO: A Large-Scale Benchmark for Tracking Any Object大规模类别多样的多目标跟踪数据集TAO在多目标跟踪领域类...
  • 多目标跟踪数据集格式介绍(MOTChallenge)2D MOT 2015train文件夹test文件夹参考文献 2D MOT 2015 所有图像都转换为JPEG格式,并按顺序命名为6位文件名(例如000001.jpg)。检测和注释文件是简单的逗号分隔值(CSV...
  • 多目标跟踪使用的数据集,可作学习使用! 详细介绍链接:https://motchallenge.net/data/MOT16/#download MOT16下载地址: 链接:https://pan.baidu.com/s/1qs67CWl9JsE9AE7L3j1pFw 提取码:fzde 复制这段内容后打开...
  • 这是MOT跟踪算法深度排序的一种实现。 深度排序与排序基本相同,但深度CNN模型添加了CNN模型以提取受检测器限制的人体部位图像中的特征。 这个CNN模型确实是一个RE-ID模型, 使用的检测器是FasterRCNN,原始源代码是...
  • Argoverse: 3D跟踪数据集

    千次阅读 2020-01-27 23:01:07
    该文为CVPR2019文章,由...文章介绍了用于支持研究自动驾驶汽车感知任务(3D 跟踪与运动预测)的数据集Argoverse。对Argoverse做简要介绍如下:Argoverse官网地址为www.argoverse.org。数据包括Argoverse 3D Trackin...
  • 在进行多目标跟踪数据集数量对模型效果的影响分析时,以MOT17数据集为基础,增加了CS、Caltech等5个数据集,训练后的模型在MOT17验证集上测试时得到的效果都比单个数据集时要差,根据JDE和FairMOT两个文章的分析来...
  • 对于培训MOT跟踪器: python bdd2mot/bdd2mot.py --img_dir '/bdd_root/bdd100k/images/track' --label_dir '/bdd_root/bdd100k/labels-20/box-track' --save_path '/save_path/data/MOT' 对于训练探测器: ...
  • MOT16是2016年提出的多目标跟踪MOT Challenge系列的一个衡量多目标检测跟踪方法标准的数据集。 官方网站:https://motchallenge.net/ 论文可见:https://arxiv.org/abs/1603.00831 MOT16主要标注目标为移动的...
  • 跟踪篇(4)--对于MOT16 Benchmark的理解

    千次阅读 2019-07-23 19:11:07
    本文主要是看了这篇论文:MOT16: A ...之前介绍的OTB数据集主要是单目标跟踪,而MOT,是Multi-Object Tracking,故名思意,主要是针对多目标跟踪数据集MOT16数据集的介绍 这个数据集总共包括14个序列,不...
  • UA_DETRAC是一个公开的车辆跟踪数据集, 共8万多张训练数据集,每一张图的每一辆车都经过了精心的标注。 训练方法(具体调用时,根据服务器目录, 修改自定义路径) (1). 使用gen_labels_detrac.py脚本
  • 多目标跟踪学习笔记 多目标跟踪处理的对象是视频,从视频的第一帧到最后一帧,里边有多个目标在不断运动...1.MOT16数据集 链接:https://pan.baidu.com/s/19y8dSEM9tOIqPK2vxLfrBQ 提取码:mpvi MOT——Multiple Objec
  • 多目标跟踪MOT踩坑记录

    万次阅读 多人点赞 2018-12-25 22:10:11
    数据集1.Github2.资源综述3.工具包CodeMOT 工具包MOT 评估 Python版4.算法Codedeep sort `python`计算多目标跟踪性能1 实验:Deep SORT2 实验:Resnet50 MOT163 实验:Resnet50 MOT174 实验:计算MOT17的gt的指标5 ...
  • 目标跟踪数据集整理(三)----GOT-10k

    千次阅读 2019-08-09 18:43:45
    GOT-10k: A Large High...官网页面 可以下载paper、toolkits、数据集 官网里面有很直观的介绍,还有一段视频 它总共66G,比LaSOT小,比TrackingNet更小。但目标类别很多,有额外的标注信息(bounding box / visible ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 848
精华内容 339
关键字:

mot跟踪数据集