点击我爱计算机视觉标星,更快获取CVML新技术


机器之心发布

作者:罗志鹏

近日,在 ICCV 2019 Workshop 举办的 Vision Meets Drone: A Challenge(简称:VisDrone2019) 挑战赛公布了最终结果,来自深兰科技北京 AI 研发中心的 DeepBlueAI 团队斩获了「视频目标检测」和「多目标追踪」两项冠军。我们可以通过这篇文章来了解一下 DeepBlueAI 团队的解决方案。

The VisDrone2019 挑战赛

如今,配备摄像头的无人机或通用无人机已经广泛地应用在农业、航空摄影、快速交付、监视等多个领域。

挑战赛官网地址:http://aiskyeye.com/

VisDrone2019 数据集由天津大学机器学习与数据挖掘实验室 AISKYEYE 队伍负责收集,全部基准数据集由无人机捕获,包括 288 个视频片段,总共包括 261908 帧和 10209 个静态图像。

这些帧由 260 多万个常用目标(如行人、汽车、自行车和三轮车)的手动标注框组成。为了让参赛队伍能够更有效地利用数据,数据集还提供了场景可见性、对象类别和遮挡等重要属性。

本届挑战赛包含四个任务:

  • 任务 1:图像中的目标检测。任务旨在从无人机拍摄的单个图像中检测预定义类别的对象(例如,汽车和行人);

  • 任务 2:视频中的目标检测。该任务与任务 1 相似,不同之处在于需要从视频中检测对象;

  • 任务 3:单目标跟踪挑战。任务旨在估计后续视频帧中第一个帧中指示的目标状态;

  • 任务 4:多目标跟踪挑战。该任务旨在恢复每个视频帧中对象的轨迹。

数据集下载链接:https://github.com/VisDrone/VisDrone-Dataset

这次比赛的难点主要有:

1. 大量的检测物体

与常规检测数据集不同的是,每张图片包含上百个待检测物体,数据集总共含有 260 万个标注框,如果使用占用显存较大的模型,可能会出现资源不够的情况。同时面对一些重叠的结果时,我们需要选择合适的阈值去过滤出最好的结果。

2. 部分目标过小

因为数据集是由无人机拍摄而来,行人和远景的物体的标注框就非常小,这对模型产生 anchor 的能力形成了一定的挑战,高分辨率的空间信息和高质量的 proposal 在本次赛题中就显得尤为重要。

3. 不同的数据分布

常用的数据集如:COCO 数据集、OBJ365 都是广泛应用的数据集,所以大家经常用它们的预训练来 fine-tune 其他数据集。而这一次的数据集由于拍摄角度问题,预训练所带来的效果不如预期。

评测指标

为了进行综合评估并反映每个对象类别的性能,本次测评采用类似于 MS COCO 数据集的评估方案,使用 AP, APIOU=0.50, APIOU=0.75, ARmax=1, ARmax=10, ARmax=100, 和 ARmax=500,且这些指标是基于 10 个对象类别计算出来的。

最终,来自电子科技大学的李宏亮团队获得了 Task1「图像中的目标检测」的冠军;中科院信息工程研究所的葛仕明团队获得了 Task3「单目标跟踪挑战」的冠军;来自深兰科技北京 AI 研发中心的 DeepBlueAI 团队获得了 Task2「视频目标检测」和 Task4「多目标追踪」两项冠军。以下是 DeepBlueAI 团队分享的解决方案

任务 2:视频中的目标检测

检测器:Cascade RCNN + DCN + FPN + DH

团队基于现有数据集,并结合以往检测经验,打造了一个强大的目标检测器。

1. Cascade RCNN

用低 IoU 阈值进⾏训练会导致效果不好,因为会产⽣很多噪声框;所以我们希望阈值尽量⾼,但 IoU 阀值设过⾼时,训练出的 detector 效果却会呈现下降趋势。Cascade RCNN 将多个阈值越来越⾼的 detector 串联,得到了更好的效果。

⾸先,在每次 detector 计算后,IoU⾼的 bbox 的分布都会提升,使得下⼀阶段更⾼阈值下正样本的数量得到保证;其次,每经过⼀次 detector 计算,bbox 都会变得更准确,更⾼的阈值可保证下⼀次回归效果更好。

2. DCN(Deformable Convolution Network)

deformable convolution network 提出了「deformable convolution」和「deformable RoI pooling」两种网络结构单元,deformable convolution 和 deformable RoI pooling 都是基于通过学习一个额外的偏移(offset),使卷积核对输入 feature map 的采样产生偏移,集中于感兴趣的目标区域, 从而产生更好的感受野。

3. Double Heads

通过对比实验可发现:用 fc-head 去做分类,同时用 conv-head 去做回归,可以实现最好的效果。因为分类更多的需要语义信息,而回归坐标框需要更多的空间信息,这种方法采用「分而治之」的思想,针对不同的需求设计 head 结构,当然这种方法增加了计算量,在平衡速度和准确率的情况下,最后选择了 3 残差、2non-local,共 5 个模块。

实验细节:

1. 我们将 Faster rcnn + DCN + FPN 作为我们的 baseline,因为这两个模块总是能在不同的数据集上起到效果。

2. 将原有 head 改为 Double head

3. 采用级联检测 (Cascade rcnn)

4. 将 ResNeXt101 作为 backbone

5. 使用 cascade rcnn COCO-Pretrained weight

6. 多尺度训练+Testing tricks

实验结果 (验证集)

任务 4 : 多目标跟踪

跟踪算法:IOU tracker + KCF + tracklet vote

根据赛题描述与数据集分析结果,我们可以知道,如果图中有大量目标且大部分都为小目标,在这种情况下仍然使用 reid 相关跟踪算法的话,不仅最终效果不理想,而且也会在匹配排序的过程中耗费大量的资源,所以我们最终决定使用 iou-tracker。

原因:

  1. 使用不需要图片信息,仅根据检测结果的相邻帧的 iou 进行计算;

  2. iou-tracker 对检测结果有着较高的要求,我们对自己的检测结果有信心;

  3. 运行速度极快,不涉及到神经网络,节省时间和 GPU 资源。

MOT Pipeline:

难点:使用 iou tracker 之后,还是会不可避免地遇到断帧 (一条轨迹无法全部预测,被预测为多个子段) 的问题,这样会大大降低最后的得分,所以我们使用 KCF 对现有结果进行一个更新。

KCF 的原理极为复杂,但 KCF 作用就是根据现有结果使用传统算法,去预测之后几帧的结果,这相当于对一些丢失的信息进行补充的操作。

得到新的轨迹之后再使用 IOU 相关投票融合方法,将更新后的结果融合,融合过程如图所示:

KCF 更新轨迹之后,正常情况下轨迹之间就会有相互重叠的地方,我们使用一个基于 IOU 的投票方法,如果轨迹之间重叠部分的投票结果大于某个阈值,就将这两个轨迹进行融合。

实验细节:

1. 我们将任务二中的检测结果当做输入,先使用 GOG 方法作为我们的 baseline

2. 将方法改为 IOU tracker

3. 调整阈值,以及一些测试技巧

4.+KCF +tracklet voting

5. 得到更好的检测结果

实验结果 (验证集)

实验数据。

下一步工作

在检测方面,在网络结构上有一些其他可以使用的模块,例如「PAFPN--FPN 的改进版」,可以在特征提取之后更好地处理各层级之间的信息;以及「GCnet」,一种结合了两个不错的 attention 机制所得到的网络,等等。

由于时间的限制,在更新原有跟踪结果的时候,我们使用的是比较传统的 KCF 算法,这类算法比较节省时间,但同时也有很大的局限性。如果有机会,以后想尝试一些更好的、基于神经网络的方法进行更新。

参考文献

[1]Lin T Y , Dollár, Piotr, Girshick R , et al. Feature Pyramid Networks for Object Detection[J]. 2016.

[2]Dai J, Qi H, Xiong Y, et al. Deformable Convolutional Networks[J]. 2017.

[3]Cai Z , Vasconcelos N . Cascade R-CNN: Delving into High Quality Object Detection[J]. 2017.

[4]Xie S , Girshick R , Dollar P , et al. Aggregated Residual Transformations for Deep Neural Networks[C]// 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). IEEE Computer Society, 2017.

[5]Bochinski E , Eiselein V , Sikora T . High-Speed tracking-by-detection without using image information[C]// 2017 14th IEEE International Conference on Advanced Video and Signal Based Surveillance (AVSS). IEEE, 2017.

[6]Henriques J F , Caseiro R , Martins P , et al. High-Speed Tracking with Kernelized Correlation Filters[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2015, 37(3):583-596.


目标检测/跟踪交流群

关注最新最前沿的2D、3D目标检测,单/多目标跟踪技术,扫码添加CV君拉你入群,(如已为CV君其他账号好友请直接私信)

(请务必注明:检测/跟踪)

喜欢在QQ交流的童鞋,可以加52CV官方QQ群:805388940。

(不会时时在线,如果没能及时通过验证还请见谅)


长按关注我爱计算机视觉

ICCV 2019 VisDrone挑战赛冠军方案解读相关推荐

  1. ICCV 2019 | ActivityNet 挑战赛冠军方案—时序动作提名,边界匹配网络详解

    点击我爱计算机视觉标星,更快获取CVML新技术 本文作者为百度视觉技术部林天威,转载自知乎Video Analysis 论文笔记专栏: https://zhuanlan.zhihu.com/p/754 ...

  2. CVPR 2020 夜间目标检测挑战赛冠军方案解读

    ↑ 点击蓝字 关注视学算法 来源丨DeepBlue深兰科技 编辑丨极市平台 在 CVPR 2020 Workshop 举办的 NightOwls Detection Challenge 中,来自国内团 ...

  3. CVPR2020 夜间目标检测挑战赛冠军方案解读

    本文转载自DeepBlue深兰科技. 在 CVPR 2020 Workshop 举办的 NightOwls Detection Challenge 中,来自国内团队深兰科技的 DeepBlueAI 团 ...

  4. CVPR 2019 CLIC 图像压缩挑战赛冠军方案解读

    点击我爱计算机视觉标星,更快获取CVML新技术 导读:图像视频压缩是传统多媒体技术的核心,也是一项牵动整个多媒体信息产业的基础技术.深度学习在该领域的成功运用,已经引起了不少IT巨头的关注.图鸭科技是 ...

  5. CVPR 2020 SLAM挑战赛冠军方案解读,搞定超难数据集TartanAir

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨R 来源丨旷视研究院 编辑丨极市平台 导读 在CVPR 2020 SLAM挑战赛上,旷视研究院参 ...

  6. 今晚直播 | 高效视频理解模型的设计及ICCV比赛冠军方案解读

    「PW Live」是 PaperWeekly 的学术直播间,旨在帮助更多的青年学者宣传其最新科研成果.我们一直认为,单向地输出知识并不是一个最好的方式,而有效地反馈和交流可能会让知识的传播更加有意义, ...

  7. 直播预告 | 高效视频理解模型的设计及ICCV比赛冠军方案解读

    「PW Live」是 PaperWeekly 的学术直播间,旨在帮助更多的青年学者宣传其最新科研成果.我们一直认为,单向地输出知识并不是一个最好的方式,而有效地反馈和交流可能会让知识的传播更加有意义, ...

  8. CVPR2021 FGVC8植物病理识别挑战赛,冠军方案解读

    本文转载自DeepBlue深兰科技. 导读 近日,在计算机视觉和模式识别领域的三大顶级会议之一CVPR上,深兰科学院的两支团队在FGVC8 (CVPR2021)中包揽了植物病理识别挑战赛的冠军和亚军, ...

  9. 实录 | DSTC 8“基于Schema的对话状态追踪”竞赛冠军方案解读

    本文将回顾平安人寿近期在 PaperWeekly 直播间进行的主题为「DSTC 8"基于 Schema 的对话状态追踪"竞赛冠军方案解读」的技术分享,由平安人寿 AI 团队高级算法 ...

最新文章

  1. [转载]为什么mysql用的是B+树?
  2. java 泛型集合应用_Java泛型集合的应用和方法
  3. 计算机科学综合常用链接
  4. python树莓派串口通信实例_Python实现树莓派USB串口通讯及云端对接
  5. mysql 连接查询_Swoole 实战:MySQL 查询器的实现(协程连接池)
  6. 丑憨批的爬虫笔记4BeautifulSoup4
  7. PHP框架的ORM思想:O类的实例化 R数据表 M映射XML
  8. 如何批量删除指定的GitHub Repos
  9. ONVIF Device Manager修改设备密码
  10. 小升初想择校,英语跟语数一样重要吗?
  11. Pandas系列(三)新增数据列
  12. mysql c3p0 释放连接池_mysql – 如何阻止c3p0连接池隐藏连接异常的原因?
  13. 计算机word水印在哪,word中如何加入水印的两种方法
  14. web前端入门到实战:img中alt和title属性的区别
  15. AAAI 2022 | 同时适用于同质和异质性的图神经网络
  16. P3975 [TJOI2015]弦论 (SAM)
  17. 如何调用EasyCVR平台的登录、播放地址、录像回看接口?
  18. GitHub 上值得收藏的100个精选前端项目!
  19. 二维码解码器Zbar+VS2010开发环境配置
  20. idea出现Can not set int field xxx to java.lang.Long 错误

热门文章

  1. CREO - 基础2 - 如何让装配好的零件重新装配
  2. mysql dateformat 索引_DATE_FORMAT索引问题
  3. 解释http和html,解释HTTP、HTML的含义
  4. vue使用高德地图画电子围栏_Vue.js 中使用高德地图定位及渲染地图
  5. python sftp模块_python用paramiko模块上传本地目录到远程目录
  6. python物理模拟_在Python游戏中模拟重力【Programming(Python)】
  7. linux vi 撤销与恢复,vi撤销与恢复
  8. 海神祭司被机器人拉出来_全联盟最不怕机器人钩子的四个英雄,最后一个巴不得被钩中...
  9. linux64bit安装mysql、jdk、nodejs、nginx笔记
  10. mysql有热备设置_Mysql数据热备配置与操作方法