【开源】港中文多媒体实验室开源目标跟踪工具箱MMTracking

点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

作者丨OpenMMLab@知乎(已授权)

来源丨https://zhuanlan.zhihu.com/p/341283833

编辑丨realcat

2021年的第一个工作日,OpenMMLab又有新成员加入。

太长不看系列

MMTracking作为OpenMMLab的一体化视频目标感知平台,同时支持了视频目标检测、单目标跟踪、多目标跟踪等多种任务和算法,填补了这些领域内基准开源平台的空白MMTracking延续了OpenMMLab系列的模块化风格,并与OpenMMLab其他平台充分交互,直接通过configs即可继承复用MMDetection的大量功能,取长补短MMTracking提供了简洁的用户接口与高效、强大的基准模型,部分实现精度超出官方版本。

地址:github.com/open-mmlab/mmtracking

接下来,我们将详细介绍 MMTracking 的一些具体特性。

MMTracking

1. 首个开源一体化视频目标感知平台

对视频内的目标进行感知识别一直是学界、业界都非常关心的问题。这个问题在学界常被细分为不同的子问题进行研究,比如视频目标检测、多目标跟踪与单目标跟踪。具体来说:

  • 视频目标检测只需要对视频内的每一帧进行检测,不要求对不同帧中的同一目标进行关联。

  • 多目标检测在完成视频目标检测的基础上,更加侧重于对视频内的同一目标进行关联。

  • 单目标跟踪更加侧重人机交互,算法需要在给定一个任意类别,任意形状目标的情况下,能够对其进行持续跟踪。

近几年来,虽然各个任务都涌现了许多优秀的算法,这些领域依然缺少开源的代码框架,给代码复现、借鉴、公平对比都带来了很大的困难。同时考虑到这些任务本身是紧密联系的,我们将这些任务融合到了同一框架下,我们希望能够作为开源的一体化视频目标感知平台,能够推动不同子领域间的融合、互促与发展。

2. OpenMMLab 内部项目间的充分交互

视频内的目标感知在大部分情况下可以认为是2D目标检测的下游任务,十分依赖各种 2D 目标检测算法。在此之前,如何使用或切换不同的2D目标检测器其实是一个很烦琐耗时的任务。

在MMTracking中,我们充分利用了OpenMMLab其他平台的成果与优势,极大的简化了代码框架。比如,我们import或继承了MMDetection中的大部分模块,极大的简化了代码框架。在这种模式下,我们可以通过configs直接使用MMDetection中的所有模型。以多目标跟踪举例,每一个多目标跟踪模型多由以下几个模块组成:

import torch.nn as nn
from mmdet.models import build_detector
class BaseMultiObjectTracker(nn.Module):
    def __init__(self,
                 detector=None,
                 reid=None,
                 tracker=None,
                 motion=None,
                 pretrains=None):
        self.detector = build_detector(detector)
        ...

Configs 示例:

model = dict(
    type='BaseMultiObjectTracker',
    detector=dict(type='FasterRCNN', **kwargs),
    reid=dict(type='BaseReID', **kwargs),
    motion=dict(type='KalmanFilter', **kwargs),
    tracker=dict(type='BaseTracker', **kwargs))

其中,现阶段的ReID模型也继承了MMClassification中的一些模块并将在后期增加其他支持。

受益于OpenMMLab的这种模块化设计,我们可以利用其他图像级平台的已有成果,从而只需要注重于视频部分模块的的设计与开发。同时,如果你需要单独训练一个目标检测器,我们也支持直接使用 MMDetection的configs进行训练,只需要在config中添加一句USE_MMDET=True, 即可将模式切换到MMDetection下,来进行前序模型训练。

3. 高效、强大的基准模型

在视频目标感知这一领域有相关科研经的同学们应该都会感受到这些任务中的不同方法一般各成一派,十分缺乏公认的训练方法与准则,因此在很多时候很难做到真正的公平对比。

在 MMTracking v0.5 中,我们复现了各个领域的主流算法,包括:

  • 视频目标检测:DFF, FGFA, SELSA

  • 多目标跟踪:SORT, DeepSORT, Tracktor

  • 单目标跟踪: SiameseRPN++

受益于MMDetection的持续推进,我们的方法在保证了高效的训练、推理的基础上,有些模型甚至超出官方实现,例如:

对视频目标检测算法 SELSA 的实现结果(第一行)相比于官方实现(第二行),在 ImageNet VID 数据集上 mAP@50 超出 1.25 个点。

对多目标跟踪算法 Tracktor 的实现结果(第一行)相比于官方实现(第二行),在 MOT17 数据集上 MOTA 超出 4.9 个点以及 IDF1 超出 3.3 个点。

对单目标跟踪算法 SiameseRPN++ 的实现结果(第一行)相比于官方实现(第二行),在 LaSOT 数据集上 Norm precision 超出 1.0 个点。

作为 MM 系列的新晋成员,MMTracking 也将会持续不断的增加支持的数据集与算法模型,提升用户体验。

本文仅做学术分享,如有侵权,请联系删文。

下载1

在「3D视觉工坊」公众号后台回复:3D视觉即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。

下载2

在「3D视觉工坊」公众号后台回复:3D视觉github资源汇总即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计源码汇总等。

下载3

在「3D视觉工坊」公众号后台回复:相机标定即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配即可下载独家立体匹配学习课件与视频网址。

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

 圈里有高质量教程资料、可答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值