最新上线!MMTracking 视频实例分割食用指南

简介: VIS 旨在检测、跟踪、分割视频里出现的物体,也就是在多目标跟踪任务的基础上更进一层,需要提供每个物体的 mask 信息。

前几期,我们陆续推出了关于视频目标感知开源工具箱的3个重要任务: 视频目标检测(VID)任务、多目标跟踪(MOT)任务、单目标跟踪(SOT)任务。


10 月,MMTracking 最新支持了视频感知任务:视频实例分割(VIS)任务。欢迎大家上手使用!


有什么问题,或者对MMTracking的想法、建议,有想支持的新数据集、新方法、新任务,随时在评论区里留言!

640.png



VIS 任务简介

VIS 数据集介绍

MMTracking 支持的 VIS 算法与数据集

上手指南

MaskTrack R-CNN  实现解析


1. VIS 任务简介



VIS 旨在检测、跟踪、分割视频里出现的物体,也就是在多目标跟踪任务的基础上更进一层,需要提供每个物体的 mask 信息。


2. VIS 数据集介绍



目前 VIS 领域主流的数据集为 YouTube-VIS 2019、YouTube-VIS 2021。主要的评估指标是 Mask AP,与检测领域的 Mask AP 不同,VIS 中的 Mask AP 计算方式需要考虑算法的跟踪性能。


3. MMTracking 支持的 VIS 算法与数据集



MMTracking 目前支持以下 VIS 算法:

- MaskTrack R-CNN (ICCV 2019)

链接:https://arxiv.org/abs/1905.04804

MMTracking 目前支持 YouTube-VIS 2019、YouTube-VIS 2021 数据集。


4. 上手指南



接下来,本文详细地介绍在 MMTracking 里如何运行 VIS demo、测试 VIS 模型、训练 VIS 模型。


使用 MMTracking,你只需要克隆一下 github 上面的仓库到本地,然后按照安装手册配置一下环境即可,如果安装遇到什么问题,可以给 MMTracking 提 issue,我们会尽快为小伙伴们解答。


安装手册链接:

https://github.com/open-mmlab/mmtracking/blob/master/docs/install.md


假设已经将预训练权重放置在 MMTracking 根目录下的 checkpoints/ 文件夹下(预训练权重可以在相应的 configs 页面下载)。


运行 VIS demo


在 MMTracking 根目录下只需执行以下命令,即可使用 MaskTrack R-CNN 算法运行 VIS demo。

python demo/demo_mot_vis.py \
    configs/vis/masktrack_rcnn/masktrack_rcnn_r50_fpn_12e_youtubevis2019.py \
    --input ${VIDEO_FILE} \
    --checkpoint checkpoints/masktrack_rcnn_r50_fpn_12e_youtubevis2019_20211022_194830-6ca6b91e.pth \
    --output ${OUTPUT} \
    --show


测试 VIS 模型


在 MMTracking 根目录下使用以下命令即可在 YouTube-VIS 2019 上测试 MaskTrack R-CNN,并且生成一个用于提交结果的 zip 文件。

./tools/dist_test.sh \
   configs/vis/masktrack_rcnn/masktrack_rcnn_r50_fpn_12e_youtubevis2019.py \
   --checkpoint checkpoints/masktrack_rcnn_r50_fpn_12e_youtubevis2019_20211022_194830-6ca6b91e.pth \
   --out ${RESULTS_PATH}/results.pkl \
   --format-only \
   --eval-options resfile_path=${RESULTS_PATH}


训练 VIS 模型


在 MMTracking 根目录下使用以下命令即可在 YouTube-VIS 2019 数据集上训练 MaskTrack R-CNN。由于 YouTube-VIS 没有提供 validation 集的注释文件,因此在训练过程中不会进行评估。


bash ./tools/dist_train.sh \
    ./configs/vis/masktrack_rcnn/masktrack_rcnn_r50_fpn_12e_youtubevis2019.py \
    8 --work-dir ./work_dirs/

其实在 MMTracking 中支持了一些 VIS 模型,并且提供了公共的 checkpoint 供大家使用,在快速上手教程中也有更详细地介绍。


5. MaskTrack R-CNN  实现解析



经过上述步骤,本文已经介绍了怎样运行 VIS 算法,接下来将介绍 MaskTrack R-CNN 在 MMTracking 下的实现。


MaskTrack R-CNN  的配置文件

model = dict(
    type='MaskTrackRCNN',
    detector=dict(type='MaskRCNN'),
    track_head=dict(type='RoITrackHead'),
    tracker=dict(type='MaskTrackRCNNTracker'))

MaskTrack R-CNN 的配置文件如上所示,可以看到 MaskTrack R-CNN 由 3 部分构成:


detector:使用 MaskRCNN 算法,检测视频里的物体,并给出每个物体的 mask;


track_head:使用 RoITrackHead,计算相邻两帧物体的相似度得分,用于相邻两帧物体的匹配;


tracker:MaskTrack R-CNN  的 Tracker,用来进行相邻两帧物体的跟踪。


Track Head 的配置文件


track_head=dict(
    type='RoITrackHead',
    roi_extractor=dict(type='SingleRoIExtractor'),
    embed_head=dict(type='RoIEmbedHead'),
    train_cfg=dict(
        assigner=dict(type='MaxIoUAssigner'),
        sampler=dict(type='RandomSampler')))

Track Head 的配置文件如上所示,可以看到 Track Head 由 3 部分构成:


- roi_extractor:使用 RoI Align 为 proposals 提取特征;


- embed_head:使用 RoIEmbedHead 对提取出的特征进行进一步加工,然后计算相邻两帧物体的相似度得分;


- train_cfg:track head 的训练配置,其中 assigner 基于最大 IoU 分配正负样本,sampler 基于分配后的结果采样正负样本,在 RoITrackHead 中,一般只使用正样本进行相邻两帧物体的计算。


文章来源:公众号【OpenMMLab】

 2021-11-11 20:35

目录
相关文章
|
2月前
|
数据采集 机器人 计算机视觉
一手训练,多手应用:国防科大提出灵巧手抓取策略迁移新方案
【10月更文挑战第24天】国防科技大学研究人员提出了一种新颖的机器人抓取方法,通过学习统一的策略模型,实现不同灵巧夹具之间的策略迁移。该方法分为两个阶段:与夹具无关的策略模型预测关键点位移,与夹具相关的适配模型将位移转换为关节调整。实验结果显示,该方法在抓取成功率、稳定性和速度方面显著优于基线方法。论文地址:https://arxiv.org/abs/2404.09150
44 1
|
3月前
|
机器学习/深度学习 人工智能 文字识别
MMMU华人团队更新Pro版!多模态基准升至史诗级难度:过滤纯文本问题、引入纯视觉问答
【10月更文挑战第12天】多模态理解是人工智能的重要研究方向,华人团队改进了现有的MMMU基准,推出MMMU-Pro,以更严格地评估模型的多模态理解和推理能力。MMMU-Pro通过过滤纯文本问题、增加候选选项和引入纯视觉问答设置,提高了评估难度。实验结果显示,模型在MMMU-Pro上的性能明显下降,但CoT推理有助于提升表现。MMMU-Pro为多模态理解提供了更严格的评估工具,但也面临一些挑战。
57 1
|
3月前
|
机器学习/深度学习 搜索推荐 语音技术
进阶教程:优化语音克隆效果与提升TTS自然度
【10月更文挑战第20天】语音克隆技术和基于文本到语音(Text-to-Speech, TTS)系统的应用已经在诸多领域展现出了巨大的潜力,从智能助手到个性化客服,再到教育和娱乐产业。作为一名在语音技术领域有着多年实践经验的研发人员,我希望通过本文分享一些我个人在优化语音克隆效果与提升TTS自然度方面的经验和见解,帮助那些已经具备了一定基础并希望进一步提升自身技能的同行们。
99 0
|
6月前
研究上百个小时,高手总结了这份 DALL-E 3 人物连续性公式(中)
研究上百个小时,高手总结了这份 DALL-E 3 人物连续性公式(中)
46 0
|
6月前
|
自然语言处理 前端开发
研究上百个小时,高手总结了这份 DALL-E 3 人物连续性公式(下)
研究上百个小时,高手总结了这份 DALL-E 3 人物连续性公式(下)
52 0
|
6月前
研究上百个小时,高手总结了这份 DALL-E 3 人物连续性公式(上)
研究上百个小时,高手总结了这份 DALL-E 3 人物连续性公式(上)
52 0
|
8月前
|
机器学习/深度学习 开发工具 计算机视觉
视觉智能平台常见问题之平台的换脸或者换人物到对应的某个图片里面去如何解决
视觉智能平台是利用机器学习和图像处理技术,提供图像识别、视频分析等智能视觉服务的平台;本合集针对该平台在使用中遇到的常见问题进行了收集和解答,以帮助开发者和企业用户在整合和部署视觉智能解决方案时,能够更快地定位问题并找到有效的解决策略。
|
人工智能 数据可视化 人机交互
基于跨模态元迁移,美图&大连理工的参考视频目标分割方法只需单阶段
基于跨模态元迁移,美图&大连理工的参考视频目标分割方法只需单阶段
106 0
|
人工智能 自然语言处理
Midjourney|文心一格prompt教程[技巧篇]:生成多样性、增加艺术风格、图片二次修改、渐进优化、权重、灯光设置等17个技巧等你来学
Midjourney|文心一格prompt教程[技巧篇]:生成多样性、增加艺术风格、图片二次修改、渐进优化、权重、灯光设置等17个技巧等你来学
|
机器学习/深度学习 编解码 计算机视觉
真的这么丝滑吗?Hinton组提出基于大型全景掩码的实例分割框架,图像视频场景丝滑切换
真的这么丝滑吗?Hinton组提出基于大型全景掩码的实例分割框架,图像视频场景丝滑切换