50万奖金,10亿像素,这个目标检测与跟踪可不简单

作者:张凯

近期,中国人工智能学会在阿里云天池平台上发布了首届全球人工智能技术创新大赛,其中一个赛道是在10亿像素的图像视频中进行目标检测与跟踪,总奖池50万人民币,初赛将于3月2日开赛。

随着视频监控的发展,大范围场景的自动化检测识别逐渐成为需求,本文以该赛题为背景,介绍相关技术方案,感兴趣的朋友加官方QQ群758344321或扫码加入52CV群。

报名链接:

https://tianchi.aliyun.com/s/be6691073b92dc4f2c2f230db97af7f5

 

1.赛题介绍

 

1.1 任务介绍

任务一

目标检测任务:在PANDA数据集上完成车辆检测和行人检测,其中行人检测需要检测出可见范围框、全身范围框和头部范围框,车辆检测只需要检测出可见范围框。

 

任务二

多目标跟踪任务:输出PANDA视频序列上的行人轨迹,即输出每帧图片的行人ID和位置框。

 

1.2 数据集介绍

PANDA是清华大学开放的一个十亿像素的高分辨率、宽视场的图片\视频数据集,该数据集有如下特点:

1 宽视场,可视范围为1平方公里左右;

2 图片分辨率很高,因此即使对于远处的行人,依然有很丰富的细节特征;

3 部分场景人口密集。

示例图片如下图所示:

50万奖金,10亿像素,这个目标检测与跟踪可不简单

在该数据集上在做目标检测和多目标跟踪任务,有如下难点:

1 由于数据集中的图片有很宽的视场,近处的行人和远处的行人的尺寸有较大差异;

2 场景复杂,一些场景下行人被遮挡;

3 图片分辨率比较大,对算法的运行效率有挑战;

4 需要对运动距离和运动时间长的行人进行跟踪。

 

1.3 评价指标

50万奖金,10亿像素,这个目标检测与跟踪可不简单

2.PANDA数据集论文中的baseline

 

PANDA数据集的开发团队使用一些算法在该数据集上进行测试,测试结果发表在CVPR2020的论文《PANDA: A Gigapixel-level Human-centric Video Dataset》中。

 

2.1 检测

作者测试了Faster R-CNN、Cascade R-CNN和RetinaNet三种网络,用于行人检测(包括可见范围框、全身范围框和头部范围框)任务,这三种算法都是基于MMDetection库实现的。

在COCO数据集预训练模型基础上训练,训练时,对PANDA数据集的图像进行resize操作,然后将图像分割为若干尺寸合适的图像块作为网络的输入。在分割图像块时,需要对分割线位置处的目标进行特殊处理,若在某图像块上该目标被分割后保留的面积超过原面积的50%,则保留该目标。

在测试时,将测试数据集中的图像做resize操作形成不同尺寸的图像,使用滑动窗口法(sliding window approach)生成尺寸合适的图像块作为网络的输入。

实验结果如下图所示:

50万奖金,10亿像素,这个目标检测与跟踪可不简单

 

上图中的“FR”代表Faster R-CNN,“CR”代表Cascade R-CNN,“RN”代表RetinaNet。“Sub”代表对不同尺寸的目标进行分组,其中“S”代表尺寸小于个像素点的目标,“M”代表尺寸在-个像素点的目标,“L”代表尺寸大于个像素点的目标。表示时的average precision,表示在[0.5,0.95]范围内步长取0.05时的average recall。

从上图中可以看出,三个算法检测小目标时性能都比较差,一个可能的原因是,PANDA数据集中目标的尺寸变化比较大,上述3个算法均不能很好地适配于目标尺寸变化如此巨大的数据集。

 

2.2 跟踪

作者在PANDA数据集上测试了DeepSORT、MOTDT和DAN三个跟踪算法,这三个算法都是采用了“检测器+跟踪器”的策略,使用跟踪器作者提供的参数进行测试,结果如下图所示:

50万奖金,10亿像素,这个目标检测与跟踪可不简单

上图中的“DS”、“DAN”、“MD”分别表示DeepSORT、DAN和MOTDT,“T”表示跟踪器,“D”表示检测器。

3.Gigavision往届获奖方案解读

 

Gigavision 2020挑战赛与本次比赛的任务基本相同,下面选取挑战赛中的冠军解决方案进行简要解读。

 

3.1 检测

baseline为:Backbone+DCN+FPN+Cascade R-CNN。在训练时,在baseline基础上做了如下优化:

1.使用滑动窗口切图作为网络输入,若在某图像块上该目标被分割后保留的面积超过原面积的50%,则保留该目标。

2.对于每个类别使用单独检测器,以提高检测效果。

3.在检测器中使用Global Context block,增加了网络对目标上下文的建模能力。Global Context block兼顾NLNet的全局上下文建模能力和SENet的轻量化,结构如下图所示:

50万奖金,10亿像素,这个目标检测与跟踪可不简单

Global Context block主要包括三部分:

(1)用于上下文建模的global attention pooling;

(2)用于捕获通道间依赖的bottleneck transform;

(3)用于特征融合的broadcast element-wise addition。

该结构出自论文《GCNet: Non-local Networks Meet Squeeze-Excitation Networks and Beyond》,开源代码:https://github.com/xvjiarui/GCNet

4.除Cascade R-CNN以外,还采用了Generalize Focal Loss(GFL)对Cascade R-CNN结果进行补充,GFL将分类与定位联合表示,而且提出了对边界框建模的新方法,实验表明使用GFL能够有效提高单阶段检测器的性能。

GFL出自论文《Generalized Focal Loss: Learning Qualified and Distributed Bounding Boxes for Dense Object Detection》,开源代码:https://github.com/implus/GFocal

5.将检测器结果使用 Weighted Box Fusion(WBF)进行融合,WBF利用检测器输出的多个框融合最终结果,如下图所示:

50万奖金,10亿像素,这个目标检测与跟踪可不简单

 

上图表示分别使用NMS和WBF根据检测器输出结果得到最终检测框,图中蓝色是检测器预测结果,红色为ground truth。

该方法出自论文《Weighted Boxes Fusion: combining boxes for object detection models》,开源代码:https://github.com/ZFTurbo/Weighted-Boxes-Fusion

 

3.2 跟踪

使用了Detection+Embedding的方法。

 

1.检测器部分,构建anchor-free检测器,损失函数为GFL。

由于数据集有很高的分辨率,需要对图片切成若干子图,每个子图的分辨率为6000*6000,相邻的子图横向重叠1000个像素,纵向重叠2000个像素,防止子图边缘处的目标被分开。分别对子图进行检测,并将检测结果进行融合。

 

2. 参考论文《Learning Discriminative Features with Multiple Granularities for Person Re-Identification》

(开源代码:https://github.com/seathiefwang/MGN-pytorch)中提出的MGN架构,

参考《Two at Once: Enhancing Learning and Generalization Capacities via IBN-Net》

(开源代码:https://github.com/XingangPan/IBN-Net)

中的方法,使用ResNet50-ibn-a提取目标的特征,然后使用Triplet loss和Softmax loss计算全局特征损失,使用Softmax loss计算局部特征损失。

参考论文《Bag of tricks and a strong baseline for deep person re-identification》

(开源代码:https://github.com/michuanhaohao/reid-strong-baseline)

中的方法优化MGN。

 

3.数据关联:根据第一帧的检测框初始化若干轨迹,在后面的图片序列中,根据embedding features的距离将检测框与轨迹关联,每一帧都通过指数加权平均更新跟踪器特征。

 

4.部分开源代码和相关论文

 

https://github.com/hasanirtiza/Pedestron,对应论文《Generalizable Pedestrian Detection: The Elephant In The Room》,基于MMDetection框架的行人检测代码仓库。

https://github.com/saic-vul/iterdet,拥挤环境的目标检测,对应论文《IterDet: Iterative Scheme for Object Detection in Crowded Environments》,同样是基MMDetection框架。

https://github.com/liuwei16/CSP,对应论文《High-level Semantic Feature Detection: A New Perspective for Pedestrian Detection》。

PS-RCNN: Detecting Secondary Human Instances in a Crowd via Primary Object Suppression

NMS by Representative Region: Towards Crowded Pedestrian Detection by Proposal Pairing

Double Anchor R-CNN for Human Detection in a Crowd

仅用于学习交流!

转载请注明:《50万奖金,10亿像素,这个目标检测与跟踪可不简单