除了多目标跟踪任务外,研究经典的、通用的单目标跟踪任务对于整个跟踪领域的发展有重要意义。

本期给大家介绍一个包含包含超过3万个视频,共有27个目标类别,视频数量和标注数量比以往的跟踪数据集更大的数据集——TrackingNet。该数据集进行了训练集和测试集的划分,提供的大规模训练视频能够有效地缓解当前跟踪领域的训练数据不足的问题。

一、数据集简介

发布方:King Abdullah University of Science and Technology

发布时间:2018

背景:

作者发现当前的目标跟踪社区缺少一个大规模的自然场景下专门用于训练目标跟踪模型的数据集;现有的数据集很多没有明确的训练集/测试集的划分。

简介:

TrackingNet是一个大规模的目标跟踪数据集,包含了30643个视频片段,平均每个视频片段时长16.6s。从140个小时提取的14431266帧图像都使用了bounding box进行标注。

TrackingNet比之前的最大的同类型数据集大两个数量级以上。该数据集囊括了自然场景下的各种情形,包含了各种帧率,分辨率,上下文场景以及目标类别。与之前的目标跟踪数据集不同,TrackingNet分为训练集和测试集两部分,作者仔细地从Youtube-BoundingBoxes中选择了30132个训练视频,并且自己构建了511个与训练集分布相似的视频构成测试集。

二、数据集详细信息

1. 标注数据量

与其他数据集的对比情况如下图,图中横坐标为数据集中视频数量,纵坐标为视频的平均帧数,圆形的尺寸与数据集中标注的bounding box数量成正比:

2. 标注类别

尽管数据集中被标注的目标包含了多个类别,但是在TrackingNet的标注文件中只提供了矩形框标注,并没有提供每个目标的类别。

3. 数据集的构建方式

● 从YT-BB中构建训练集

Youtube-BoundingBoxes(YT-BB)是一个用于目标检测的大规模数据集,其中包含了大约380000个视频片段,每一帧都标注了bounding box,这些视频直接从YouTube上采集,涵盖了各种分辨率,帧率和时长。

YT-BB中包含了23个目标类别,为了构建目标跟踪数据集,作者将其中不会运动类别(盆栽、厕所)排除。由于person类别占了所有标注数量的25%,作者根据其上下文场景,将person类别细分为了7个不同的类别,最终,TrackingNet的目标类别统计情况如下图所示:

为了保证数据集中视频的质量,作者按照下述步骤过滤掉了90%的视频,具体步骤为:

1. 过滤掉时长小于15秒的视频;

2. 只保留覆盖图像范围不超过50%的bounding box;

3. 只保留包含的的bounding box有合理移动量的视频片段。

经过上述过滤后,最终训练集中共有320132个视频片段,这些片段被分到了12个训练子集当中,每个子集包含了2511个视频,每个子集都保留了原始的YT-BB的类别分布。

原始的YT-BB的标注是粗粒度的,只有1fps,为了提高标注密度,作者使用DCF tracker将视频每秒间的前向跟踪结果和后向跟踪结果进行加权平均得到最终的细粒度标注结果。

● 从YT-CC中构建测试集

出来训练集,作者还构建了一个全新的数据集用来测试,其中包含了511个视频,这些视频是从YouTube上采集的,能够反映出训练集目标类别的分布情况,每个视频都遵循了Creative Commons licence,所以作者将该数据集简写为 YT-CC。

然后作者使用了 Amazon Mechanical Turk workers 和 VATIC 工具,将 YT-CC 进行细粒度的标注,最终构建出了 TrackingNet 测试集。

TrackingNet 测试集中,每个视频都被标注了一些属性,属性列表如下:

其中前5个属性是通过分析视频中的bounding box的变化自动标注的,后10个属性则是通过人工标注的。测试集的属性标注方便研究者更好地分析模型在不同场景下的效果。数据集中这15个属性的分布情况如下图所示:

4. 可视化

每段视频都在每一帧用矩形框标注一个单目标:

三、数据集任务定义及介绍

1. 单目标跟踪

● 任务定义

在单目标跟踪(Single Object Tracking, SOT)任务中,在视频的第一帧中会给出目标的bounding box,模型的目标则是在视频的后续所有帧中定位该指定目标,因此单目标跟踪任务属于detection-free 跟踪任务。

● 评价指标

success(S),该分数通过计算ground truth和prediction bounding box的IoU得到,计算公式如下:

其中  为模型预测的bounding box,  为ground truth bounding box。在验证模型时,会根据不同的IoU阈值(在文中称为Overlap threshold),计算出对应阈值的success rate,并画出横坐标为阈值,纵坐标为success rate的曲线,最终通过该曲线的AUC来对模型的性能进行排序。


precision(P),该分数通过计算ground truth和prediction bounding box中心点之间的距离得到,计算公式如下:

其中  为模型预测的bounding box的中心坐标,  为ground truth bounding box的中心坐标。在验证模型时,会根据不同的距离阈值(在文中称为Location error threshold),计算出对应阈值的precision,并画出横坐标为阈值,纵坐标为precision的曲线,最终通过阈值为20的precision来对模型的性能进行排序。


normalized precision(  ),该分数使用ground truth bounding box的尺寸对precision   进行标准化,计算公式如下:

其中  表示构建对角矩阵,  ,  分别是ground truth bounding box的横坐标和纵坐标。在验证模型时,会根据不同的normalized precision阈值(在文中称为Normalized distance error threshold,范围限制在0到0.5之间),计算出对应阈值的precision,并画出横坐标为阈值,纵坐标为precision的曲线,最终通过该曲线的AUC来对模型的性能进行排序。

各模型在TrackingNet上的表现:

四、数据集文件结构解读

1. 数据集存在的问题

● 只提供了目标的矩形框,未提供目标的类别,视频的属性等信息;

● 测试集未提供全部帧的标注,只提供了每个测试视频的第一帧的矩形框标注信息,如果要在测试集上测试,需要将模型在测试集上的推理结果上传到http://eval.tracking-net.org/featured-challenges/39/participate才能查看验证结果。

2. 数据集目录结构

首先需要对初始的数据集压缩文件进行解压,解压脚本如下:

#!/bin/bashdata_dir=$1
for chunk in $(ls "${data_dir}"); do# unzip chunk zipif [ ${chunk##*.} == "zip" ]; thenchunk_name=${chunk%.zip}unzip_dir=$data_dir/$chunk_nameif [ ! -d $unzip_dir ]; thenmkdir $unzip_dirfiunzip -n $data_dir/$chunk -d  $unzip_dir# unzip zips in every chunkfor zips in $(ls "${unzip_dir}/zips"); doif [ ${zips##*.} == "zip" ]; thenvid_name=${zips%.zip}if [ ! -d $unzip_dir/frames/$vid_name ]; thenmkdir -p $unzip_dir/frames/$vid_namefiunzip -n $unzip_dir/zips/$zips -d $unzip_dir/frames/$vid_namefidonefi
done

(左右滑动查看)

解压后的数据集目录结构如下:

dataset_root/                   # 数据集中包含了TEST,TRAIN_0,TRAIN_1,...,TRAIN_11,一共13个目录,代表了一个测试集和12个训练子集
├── TEST/                       # 每个目录中都包含了 anno 和 frames两个子目录
│   ├── anno/                   # anno中放了若干个 .txt 文件,
│   │   ├── 0-6LB4FqxoE_0.txt   # 每个 .txt 文件都标注了一段视频,被标注的视频与该 .txt 文件名称相同,存储在frames目录当中
│   │   ├── 07Ysk1C0ZX0_0.txt
│   │   └── ...
│   └── frames/                 # frames中放了若干个 子目录,每个子目录代表一段视频,存储了该视频的每一帧图像
│       ├── 0-6LB4FqxoE_0/
│       │   ├── 0.jpg           # 每帧图像的命名形如:0.jpg,1.jpg
│       │   ├── 1.jpg
│       │   └── ...
│       ├── 07Ysk1C0ZX0_0/
│       │   └── ...
│       └── ...
├── TRAIN_0/
│   ├── anno/
│   │   └── ...
│   └── frames/
│       └── ...
├── TRAIN_1/
│   └── ...
└── ...

(左右滑动查看)

3. 标注文件格式

● 训练集标注文件格式

在 TRAIN_0 到 TRAIN_11 的12个训练集目录中,每个标注 .txt 文件都提供了其对应视频的每一帧的矩形框标注,具体格式如下:

308.00, 1.00,173.00,275.00
307.97, 1.10,172.60,274.92
307.94, 1.20,172.20,274.84
307.91, 1.30,171.80,274.76
309.12, 1.00,171.88,275.48
309.40, 1.00,171.60,275.60
309.68, 1.00,171.32,275.72
306.27,-1.16,173.20,280.16
309.22,-1.04,172.80,280.04
315.11,-2.00,173.48,282.08
313.81,-3.50,175.60,285.20
314.45,-2.08,173.84,282.48
314.49,-1.86,173.28,282.16
314.53,-1.64,172.72,281.84
...
...

每一行为视频的对应帧中目标的矩形框的 [x,y,w,h],即矩形框左上角的横坐标,纵坐标与矩形框的宽和高。

● 测试集标注文件格式

在测试集TEST目录中,每个标注 .txt 文件只提供了对应视频的第一帧的矩形框的标注,具体格式如下:

1,79,307,186

表示视频第一帧中的目标的矩形框的 [x,y,w,h] ,即矩形框左上角的横坐标,纵坐标与矩形框的宽和高。

五、数据集下载链接

OpenDataLab平台为大家提供了‍TrackingNet数据集完整的数据集信息、直观的数据分布统计、流畅的下载速度、便捷的可视化脚本,欢迎体验。点击链接查看:

https://opendatalab.com/TrackingNet/download

参考资料

[1]官网:https://tracking-net.org/

[2]论文:M Muller, A Bibi, S Giancola, et al. Trackingnet: A large-scale dataset and benchmark for object tracking in the wild, in ECCV, 2018: 300-317.

(PDF下载链接:‍https://arxiv.org/abs/1803.10794)

[3]下载:https://drive.google.com/drive/folders/1gJOR-r-jPFFFCzKKlMOW80WFtuaMiaf6

更多数据集上架动态、更全面的数据集内容解读、最牛大佬在线答疑、最活跃的同行圈子……欢迎添加微信opendatalab_yunying 加入OpenDataLab官方交流群。

TrackingNet:最经典大规模、多样化的单目标跟踪数据集相关推荐

  1. 352万帧标注图片,1400个视频,亮风台推最大单目标跟踪数据集

    CVPR 2019期间,专注于AR技术,整合软硬件的人工智能公司亮风台公开大规模单目标跟踪高质量数据集LaSOT,包含超过352万帧手工标注的图片和1400个视频,这也是目前为止最大的拥有密集标注的单 ...

  2. CVPR 2019 | 亮风台发布全球最大单目标跟踪数据集LaSOT

    点击我爱计算机视觉标星,更快获取CVML新技术 CVPR 2019 正在美国加州举行,发布交流来自全球的工业界与学术界最新研究成果. 会上,亮风台公开大规模单目标跟踪高质量数据集LaSOT,包含超过3 ...

  3. 常见目标跟踪数据集下载链接整理(更新中)

    搜罗一下,感觉没人把常见的目标跟踪数据集下载链接汇总整理的,这里就整理一下,因为有些网址很难打开,这里也是想方便之后大家获取,来看看吧!我就从大佬图中来找几个吧!因为不是全接触过,有些链接不是很好,有 ...

  4. 单目标跟踪——【数据集基准】RGB数据集OTB / NFS / TrackingNet / LaSOT / GOT-10k / UAV123 / VOT 简介

    入手单目标跟踪的三个方面之数据集简介 目前单目标跟踪领域有哪些公认比较好的数据集? 这可以从一些优秀论文中找,看他们在验证自己的tracker用到哪些数据集.这些数据集的侧重不一,有的会包含快速移动: ...

  5. 视觉单目标跟踪任务概述

      视觉目标跟踪的主要目的是:模仿生理视觉系统的运动感知功能,通过对摄像头捕获到的图像序列进行分析,计算出运动目标在每一帧图像中的位置:然后,根据运动目标相关的特征值,将图像序列中连续帧的同一运动目标 ...

  6. python 粒子滤波目标追踪_Python实现基于相关滤波的单目标跟踪算法

    最近在阅读一些单目标跟踪的算法论文,主要看了一系列基于相关滤波的算法,尝试着用python实现了其中一些比较经典的算法,地址在https://github.com/wwdguu/pyCFTracker ...

  7. 单目标跟踪——个人笔记

    单目标跟踪--个人笔记 以<Handcrafted and Deep Trackers: A Review of Recent ObjectTracking Approaches>为主线看 ...

  8. 基于嵌入式设备的 单目标跟踪算法

    基于嵌入式设备的单目标跟踪实现 最近基于嵌入式设备(Khadas Vim3)做了一套单目标跟踪算法,跟踪效率可以做到每秒25帧左右. 算法运行耗时记录 time is:37.6241 ms time ...

  9. 单目标跟踪SiamMask:特定目标车辆追踪 part2

    日萌社 人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新) CNN:RCNN.SPPNet.Fast RCNN.Faste ...

最新文章

  1. 【蓝桥java】递归基础之输出连续数字
  2. Petapoco 连接oracle11g 自动生成poco时遇到的问题
  3. 引号快捷键_干货收藏|excel2016常用快捷键
  4. go var type 互转_Go语言学习笔记(第九章) 结构体
  5. php自动停止原因,解析mysql自动停止服务解决办法
  6. java写类似百度统计_资讯 | 与百度统计功能类似的产品—360分析系统
  7. appium定位WebView页面元素
  8. win10专业版和企业版的区别_深度完美Win10_1809_LTSC.1158_64位企业版V2020.0415
  9. Azure 内容审查器之羞羞图审查
  10. html 实现格子效果,div+css实现九宫格效果
  11. centos7挂载nas存储_NAS同步百度云全攻略!一篇打尽win虚拟机、黑群、Docker操作演示...
  12. 升级到NVelocity1.1版本
  13. java截取字符串函数
  14. redhat linux查看进程cpu,Redhat Linux 查看cpu、memory 等命令
  15. 华为机试题HJ106
  16. An error occurred while starting the application
  17. 小姜的毕设_Software
  18. Java学习—画图程序项目(2)
  19. CMOS相机和CCD相机的区别
  20. Linux系统中的管道通信

热门文章

  1. 哥去面试,每次都被赶出来,没天理
  2. 从智能锁谈STM32安全技术
  3. 神经网络处理器设计原理,神经网络控制系统设计
  4. 12个体育运动LUTs调色预设包
  5. u盘安装linux找不到驱动,利用U盘加载控制器驱动来安装Linux系统的方法
  6. 解决ImportError: cannot import name 'imread' from 'scipy.misc'
  7. [乐意黎转载]从零开始学习jQuery (十一) 实战表单验证与自动完成提示插件
  8. 小冬冬历险记_行为驱动发展历险记
  9. 在ORANGES的基础上改进操作系统
  10. 英集芯ip6806无线充电方案5W过Qi认证外围精简14颗器件