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

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

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

报名链接:

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

(点击文末阅读原文直达)

1.赛题介绍

1.1 任务介绍

  • 任务一

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

  • 任务二

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

1.2 数据集介绍

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

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

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

  • 部分场景人口密集。

示例图片如下图所示:

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

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

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

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

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

1.3 评价指标

  • 任务一

按照COCO数据集规定的计算方式计算 ,计算两者的调和平均数作为得分:

  • 任务二

按照MOTChallenge规定的计算方式计算 ,计算两者的调和平均数作为得分:

最终得分为2个任务得分的加权和:

上式中

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)生成尺寸合适的图像块作为网络的输入。

实验结果如下图所示:

上图中的“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三个跟踪算法,这三个算法都是采用了“检测器+跟踪器”的策略,使用跟踪器作者提供的参数进行测试,结果如下图所示:

上图中的“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的轻量化,结构如下图所示:

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利用检测器输出的多个框融合最终结果,如下图所示:

上图表示分别使用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

仅用于学习交流!

END

备注:目标检测

目标检测交流群

2D、3D目标检测等最新资讯,若已为CV君其他账号好友请直接私信。

我爱计算机视觉

微信号:aicvml

QQ群:805388940

微博知乎:@我爱计算机视觉

投稿:amos@52cv.net

网站:www.52cv.net

在看,让更多人看到  

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
YOLOv7是一种基于YOLOv5的目标检测算法,并结合了目标跟踪技术。目标跟踪部分使用了基于OSNet的StrongSORT算法。 如果你想了解如何使用YOLOv7进行目标检测跟踪,你可以参考以下步骤: 1. 首先,你需要下载YOLOv7的源代码。你可以通过以下链接获取源代码:https://github.com/WongKinYiu/yolov7。 2. 然后,你还需要下载YOLOv7目标跟踪部分的代码。你可以在这个链接中找到相关代码:https://github.com/haroonshakeel/yolov7-object-tracking。 3. 安装适用于CPU版本的conda环境。如果你使用的是轻薄本没有GPU,这一步是必需的。你可以按照视频中的操作进行环境的安装。 4. 运行代码。按照视频中的指导,你可以运行YOLOv7目标检测跟踪的代码。 5. 最后,你可以使用自己的视频进行测试,确保代码能够正常运行。 通过以上步骤,你就可以使用YOLOv7进行目标检测跟踪了。请注意,在运行过程中可能会出现帧率卡顿的情况,但是整体功能应该没有问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [YOLOV7 + StrongSORT 实现目标检测跟踪](https://blog.csdn.net/djstavaV/article/details/126377310)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [无脑001————yolov7 目标检测跟踪](https://blog.csdn.net/weixin_44298961/article/details/127916970)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值