CVPR--2019 AI CITY CHALLENGE (track1成绩A榜第一,综合第二)

 官网:    https://www.aicitychallenge.org/

   基于来自交通,信号系统,基础设施和运输的传感器数据,存在使运输系统更智能的巨大机会.不幸的是,由于几个原因,进展受到限制:\,其中,数据质量差,缺少数据标签,缺乏可以将数据转化为可操作的视角的高质量模型,还需要能够处理从边缘到云的分析的平台,这将加速这些模型的开发和部署

        我们正在2019年CVPR组织AI城市挑战研讨会,通过鼓励研究和开发技术来帮助应对这些挑战  。这种方法较少依赖于监督方法,而更多地依赖于转移学习,无监督和半监督方法,超越了边界框方式。它将侧重于智能交通系统(ITS)等问题.

赛题(track1)解读:

README.md

数据简介:

  2019的基准是来自40个现实生活中的监控相机。在现实生活中,总共666个交通车辆被标注于5个场景中。其中,3个场景用于训练,2个场景用于测试。

  总共有195.03 分钟的视频。训练视频的分钟数是58.43分钟,测试视频是136.60分钟。

文件夹中的内容:

1. “train/*" 包含所有训练子集数据

2. ”test/*"  包含所有测试子集数据

3. “train(test)/<subset>/<cam>/'vdo.avi" 测试视频

4. ”train(test)/<subset> /<cam>/roi.jpg". 为感兴趣区域,其中白色区域覆盖整个目标的对象主体。

5. "trian/<subset>/<cam>/gt/gt.txt". MTMC赛题的真值数据,在MOTChallenge 格式[frame, ID, left, top, width, height, 1, -1, -1, -1] 仅考虑通过至少2个摄像机的车辆

6.  "train(test)/<subset>/<cam>/det/det_*.txt". 是基于不同MOTChallenge格式的baselines。每个baseline涉及的方法如下所示:

[YOLOv3] Redmon, Joseph and Farhadi, Ali, "YOLOv3: An Incremental Improvement," arXiv, 2018.
[SSD] Liu, Wei and Anguelov, Dragomir and Erhan, Dumitru and Szegedy, Christian and Reed, Scott and Fu, Cheng-Yang and Berg, Alexander C., "SSD: Single Shot MultiBox Detector," ECCV, 2016.
[Mask/Faster R-CNN] He, Kaiming and Gkioxari, Georgia and Dollár, Piotr and Girshick, Ross, "Mask R-CNN," ICCV, 2017.

7. "train(test)/<subset>/<cam>/mtsc/mtsc_*.txt" 是MTSC根据MOTChallenge格式的不同baseline进行跟踪的结果,每个baseline涉及的方法如下所示:

[Deep SORT] Wojke, Nicolai and Bewley, Alex and Paulus, Dietrich, "Simple Online and Realtime Tracking with a Deep Association Metric," ICIP, 2017.
[Tracklet Clustering] Tang, Zheng and Wang, Gaoang and Xiao, Hao and Zheng, Aotian and Hwang, Jenq-Neng, "Single-camera and Inter-camera Vehicle Tracking and 3D Speed Estimation Based on Fusion of Visual and Semantic Features," CVPRW, 2018.
[MOANA] Tang, Zheng and Hwang, Jenq-Neng, "MOANA: An Online Learned Adaptive Appearance Model for Robust Multiple Object Tracking in 3D," arXiv, 2019.

8.  "train(test)/<subset>/<cam>/segm/segm_mask_rcnn.txt" 这是基于mask r-cnn分割的结果(每一行对应检测结果)

9.  "train(test)/<subset>/<cam>/calibration.txt".它们是手动校准结果。 第一行给出从GPS坐标投射到2D图像像素位置的3×3单应矩阵。 对于鱼眼摄像机,第二行给出失真系数。

10.  "list_cam.txt". It lists the subfolder of each video for training/testing. 列出了用于训练和测试的视频

11.  "cam_loc/<subset>.png". 对应了相机位置的预览图。对于每个相机,我们不需要去获取精确的gps位置,但是每个场景近似中心的位置提供了:

The GPS location for S01.png is 42.525678, -90.723601.
The GPS location for S02.png is 42.491916, -90.723723.
The GPS location for S0345.png is 42.498780, -90.686393.

12.  "cam_timestamp/<subset>.txt". 列出了5个场景中每个场景的视频(起始)时间戳。注意:由于视频传输过程中的噪声问题,(这在现实的分布式场景中),在视频中将存在丢帧现象,

因此他们并不是严格对齐。所有的帧率是10FPS,除了c015在S03场景下的帧率是8FPS.

13.  cam_framenum/<subset>.txt". 列除了5个场景中,每个场景是视频帧数。

14.  "amilan-motchallenge-devkit/".这是一个额外的MOTChallenge的Matlab评估代码(https://bitbucket.org/amilan/motchallenge-devkit/) 当执行demo_evalAIC19.m 代码时,一个对于训练集合的评估将会自动处理。

15. "DataLicenseAgreement_AICityChallenge.pdf". 数据使用许可协议

If you have any question, please contact aicitychallenge2019@gmail.com.

数据和评估方法

重要的提醒:评估系统现已开放。有关说明,请参阅“挑战” - >“评估系统”或单击此处 (https://www.aicitychallenge.org/2019-evaluation-system/)

数据集

  我们很高兴地分享我们有一个独特的数据集。针对今年的挑战,该数据集合拥有全新的车辆并对车牌做了处理。数据来自美国某个城市的多个交通摄像头,以及爱荷华州的高速公路。

特别的,我们拥有跨城市的主要几个干路的跨城市且时间同步的摄像头。这些摄像头也是主要用于交通运输的目的。

1、城市交叉口和公路数据 - 从各个城市交叉口和高速公路的多个有利位置同步捕获近3小时的同步视频。视频为960p或更高,大多数视频以每秒10帧的速度捕获。

2、爱荷华州立大学数据 - 在爱荷华州的高速公路上捕获超过25小时的视频数据

3、有关收集的视频的元数据,包括摄像机的GPS位置,摄像机校准信息和视频中的其他派生数据

Download Links

 见官网

评估和提交

  1、对于三个挑战任务中的每一个,将提供不同的数据集作为一组视频或图像。

   2、通过按字母数字顺序对赛道视频(或存储它们的文件夹的名称)进行排序,获得每个赛道的关联数字视频ID,编号从1开始

  3、对于所有3个比赛,所有像素坐标都是0

  

  帧提取

    某些赛道的提交将会要求包含 帧间的ID,也就是包含感兴趣的信息。为了确保各个团队的框架ID一致,我们建议所有团队使用FFmpeg库(https://www.ffmpeg.org/)来提取/计算帧。    

Submission Policy (提交政策,这里只介绍track1)

  Track 1: City-Scale Multi-Camera Vehicle Tracking  

    该数据集包含从40个摄像机收集的3.25小时(195.03分钟)视频,这些摄像机跨越美国中等城市的10个交叉路口.两个最远的同时摄像机之间的距离是2.5公里.

该数据集涵盖了多种不同的位置类型,包括交叉路口,道路延伸段和高速公路。数据集分为5个场景.只有3个场景用于训练,其余2个场景用于测试。训练视频的长度为

58.43分钟,而测试视频的长度为136.60分钟。总的来说,数据集包含229,680个边界框在666个不同标书视频的车辆身份信息。只有通过至少2个摄像头的车辆才有标注。

每个视频的分辨率至少为960p,大多数视频的帧速率为10 FPS。此外,在每种情况下,每个视频的起始时间偏移都可用,可用于同步。有关更多详细信息,请参阅

ReadMe.txt文件。

  

  • Task

   团队应该检测并跟踪多个摄像机的目标。提供了baseline检测和单摄像机跟踪结果,但团队也可以使用自己的方法.

  • Submission Format

        应提交一个文本文件,其中包含每行,检测和跟踪车辆的详细信息,格式如下:

      <camera_id> <obj_id> <frame_id> <xmin> <ymin> <width> <height> <xworld> <yworld>    

<camera_id>   :是相机数字标识符,介于1和40之间

<obj_id>          :是每个对象的数字标识符,它应该是一个正整数,并且对于多个摄像机中的每个对象标识是一致的

<frame_id>     :表示当前视频中当前帧的帧数,从1开始

<xmin>  <ymin>    <width>    <height>  :

        检测到的对象的轴对齐矩形边界框由图像画布中的像素值坐标表示,<xmin> <ymin> <width> <height>,从图像的左上角计算。所有值都是整数

<xworld> ,<yworld>         :是每个物体的投影底点的GPS坐标。它们目前尚未用于评估,但可能在将来使用。因此,如果可能的话包括它们将是有益的。

包含所有预测的文本文件应命名为track1.txt,并且可以使用Zip(track1.zip)或tar + gz(track1.tar.gz)进行存档,以减少上传时间

  • Evaluation

    对于MTMC跟踪,IDF1得分[1]将用于对每个团队的表现进行排名。IDF1测量正确识别的检测与平均真实数和计算检测数之比。

我们的数据集提供的评估工具还计算了MOTChallenge采用的评估措施[2],[3],如多目标跟踪精度(MOTA),多目标跟踪精度(MOTP),

主要是跟踪目标(MT)和误报率(FAR)。但是,它们不会用于排名目的。将在评估系统中显示的措施是IDF1,IDP,IDR,精确度(检测)

和召回(检测)。

对于问答

  一般问答

    1 我们想参加。我们需要做什么?

      请填写此参与意向表以列出您的机构,您的团队以及您将参与的赛道。您只需按照说明操作并提交表格即可。

    2.我只对提交论文感兴趣,但不参与挑战。我能这样做吗?

      是。请务必在截止日期前提交论文。

    3.团队有多大?

      团队规模没有限制。

    4.下载数据集的规则是什么?

      在共享数据之前可以获得参与协议。您需要接受该协议并在访问数据集之前提交该响应      

    5.我是否可以使用任何可用的数据集来训练模型以检测本次挑战中的车辆?

      是。在用于执行任务的模型和方法方面没有约束。您可以自由使用您认为最好的方法。

    6.奖品是什么?

      此信息在奖励部分中共享:https://www.aicitychallenge.org/2019-challenge-awards/

    7.我们需要提交代码吗?

      获奖团队需要提交他们的代码以进行验证,以便组织者可以确保任务是由算法而不是人类执行的。

    8.如何评估提交的内容?

      每个赛道的提交格式在“数据和评估”页面上详细说明。:https://www.aicitychallenge.org/2019-data-sets/

    9.提交最终评估结果的截止日期是什么时候?

      评估结果将于5月10日太平洋时间上午9点公布。请参阅更新的时间表。提交系统将在几天后再次打开,并允许团队提交其他结果,但在挑选获胜团队时不会考虑这些结果。:https://www.aicitychallenge.org/2019-important-dates/

    10.提交的研究/挑战文件需要多长时间?

      研究和挑战文件的长度应为6-8页,并遵循CVPR格式。:http://cvpr2019.thecvf.com/submission/main_conference/author_guidelines#call_for_papers

    11. CVPRW文件提交审查的截止日期是什么时候?我们只在网页上看到提交相机的论文提交截止日期。但是,提交审查文件没有截止日期。

      论文截止日期是5月16日,应该尽可能接近相机准备审查,因为它将在很短的时间内进行审查。

    12.我们是否允许在此挑战中使用我们自己的注释数据或来自其他数据集的训练数据?

      是。我们鼓励团队利用最先进的域名转移来提高他们的表现。但请注意,获奖团队和亚军将被要求将他们的训练代码和推理代码开源,以便进行验证,就像之前所有的AI City挑战一样。他们还需要明确说明他们训练集的构成。

    组委会需要确保对该挑战的测试数据没有手动注释,并且所有实验结果都可以以自动方式再现。

    13.我们是否允许标记(部分)转移学习的测试数据?或者我们可以将测试集视为半监督学习的未标记数据吗?

      严格禁止对我们的测试数据进行额外注释。我们也不鼓励在训练期间以任何方式使用测试数据,有或没有标签,因为任务应该在现实生活中得到公平评估,我们根本无法访问测试数据。最后,请记住,与之前的所有AI City挑战一样,

    所有获胜方法和亚军将被要求使其代码开源以进行验证。其中需要明确说明使用过的培训数据,以确认其性能是可重复的。这就是为什么获胜者的确定日期晚于挑战提交截止日期。     

Track 1 

   1.在某些情况下,即使添加时间偏移,也会观察到一些同步错位。为什么会这样?

                请注意,由于视频传输中的噪声(在实际部署的系统中很常见),某些视频中会跳过某些帧,因此它们并不完全对齐。

   2.Mask R-CNN的基线分割结果的格式是什么?它们如何被解码。

    分割结果的每一行对应于“traintest/// det / det_mask_rcnn.txt”中的检测输出。

    为了生成分割结果,我们在Detectron中采用了Mask R-CNNhttps//github.com/facebookresearch/Detectron

    每个分段掩码是在detectron / utils / vis.py中处理vis_utils.convert_from_cls_format()之后的表示。它可以使用vis_utils中的其他函数进行可视化/显示。

    3.我们如何使用'calibration.txt'文件?它是从GPS2D图像像素位置的矩阵,在amilan-motchallenge-devkit / utils / camera中有一些关于图像到世界投影的工具,但我们如何才能正确使用代码呢?

     a  、你们中的许多人对我们为第1轨提供的校准基线的低投影精度表示担忧。这主要是由于校准参数的精度低(小数点后最多7位)。我们更新了校准工具,以实现最大可能的输出精度(小数点后最多15位)。更新的校准结果,配置参数和可视化均可在此处获得。 ReadMe.txt中描述了详细信息。(https://drive.google.com/open?id=1aV2o0uGh3714XYAWc2sVXc2dnv90yC2i)

     b、我们用于校准的工具也可在此公开获得(https://github.com/zhengthomastang/Cal_PnP),我们主要依靠OpenCV库进行单应操作。对于从GPS2D像素位置的投影,您可以简单地将矩阵乘法应用于我们提供的单应矩阵。

对于从2D像素位置到GPS的反投影,首先计算单应矩阵的逆(在OpenCV中使用invert()),然后应用矩阵乘法。“amilan-motchallenge-devkit / utils / camera”中的图像到世界投影方法也可以以类似的方式提供帮助。

     c、您也可以随意使用您选择的任何其他校准技术来生成您自己的校准结果。在更新的校准结果中,为鱼眼摄像机提供了固有参数矩阵和失真系数(一个在训练集中,另一个在测试集中)。

请注意,虽然GPS位置表示为角度值而不是平面上的坐标,由于两个摄像机之间的最长距离与地球周长(40,075 km)相比非常小(3 km),因此它们仍然可以安全地视为线性坐标系。

   4.如果没有固有的摄像机参数,我们如何校正鱼眼摄像机的径向畸变?

    有许多简单的方法来近似内在的相机参数。例如,可以选择焦距作为像素中的帧宽度。可以假设主点位于帧中心。宽高比和歪斜可以分别设置为10。对于径向失真校正,您可以从OpenCV库中应用cv :: undistort(),使用近似的内部相机矩阵并提供失真系数。

    最后但并非最不重要的是,请记住,摄像机参数不随视频提供,因此所有给定的单应矩阵和失真系数都是手动导出的。如有必要,请随意使用您自己选择的方法来改进相机校准。

   5.我们是否需要考虑汽车在多种情况下出现的情况?

     在赛道1中,不需要考虑跨场景出现的车辆,因此所提供的摄像机几何结构可用于跨摄像机跟踪。但是在Track 2中,摄像机中的所有ID都在训练集和测试集中混合,这是一个不同的问题需要解决。

   6.汽车ID如何用于评估?在训练数据中有大约200ID。但是当处理测试集时,跟踪器可能会生成任意车辆ID。他们需要与基本事实保持一致吗?评估是基于轨道的IOU吗?

  我们使用与MOTChallenge相同的指标进行评估。有关详细信息,请参阅包中的评估工具。提交结果中的ID不需要与 ground truths 中的确切ID相匹配。我们将使用二分匹配进行比较,这将基于边界框的IOU

   7.我们观察到一些案例,即基本事实和带注释的边界框不准确。标签的标准是什么?

     在下列情况下,车辆未贴上标签:

        (1)他们没有穿过多个摄像头;

        (2)它们与其他车辆重叠并被NMS拆除(只有前面的车辆注明);

        (3)它们在FOV中太小(边界框区域小于1,000像素);

                               (4)它们在框架的边缘被裁剪,车身可见不到2/3。另外,边界框通常注释较大的法线以确保每个整个车辆的完全覆盖,从而可以可靠地提取诸如车辆颜色,类型和姿势的属性以改善重新识别。

        更具体地说,每个边界框的宽度和高度都从中心延伸了大约20个像素。


关于写 cvpr 2019 workshop 论文(accepted)一些工具和注意:

    1、搜论文使用: http://www.arxiv-sanity.com/  related相关和借鉴相关工作,非常好用

    2、写论文,大家协作非常好用的协作工具:https://www.overleaf.com/

    3、论文主要框架(pipeline)一定要直观,清晰,简洁,一目了然.

    4、图多,表多,对比实验明显,重要部分可加粗,调色.

具体代码和方案论文.代码都是开源的

AI City Challenge 2019 Track1

Team 49 (DDashcam)

github:https://github.com/didichuxing/mtmc-vt

paper: http://openaccess.thecvf.com/content_CVPRW_2019/papers/AI%20City/Li_Spatio-temporal_Consistency_and_Hierarchical_Matching_for_Multi-Target_Multi-Camera_Vehicle_Tracking_CVPRW_2019_paper.pdf


原文地址:https://www.cnblogs.com/YouXiangLiThon/p/10273086.html