English | 简体中文
MMAction2 是一款基于 PyTorch 的视频理解开源工具箱,是 OpenMMLab 项目的成员之一
主分支代码目前支持 PyTorch 1.3 以上的版本
-
模块化设计 MMAction2 将统一的视频理解框架解耦成不同的模块组件,通过组合不同的模块组件,用户可以便捷地构建自定义的视频理解模型
-
支持多样的数据集 MMAction2 支持多种数据集的准备和构建,包括 UCF101, Kinetics-[400/600/700], Something-Something V1&V2, Moments in Time, Multi-Moments in Time, THUMOS14 等
-
支持多种视频理解任务 MMAction2 支持多种主流的视频理解任务
- 动作识别:TSN, TSM, TIN, R(2+1)D, I3D, SlowOnly, SlowFast, CSN, Non-local 等
- 时序动作检测:BSN, BMN, SSN
- 时空动作检测:SlowOnly + Fast-RCNN, SlowFast + Fast-RCNN
具体可参考 模型库
-
详尽的单元测试和文档 MMAction2 提供了详尽的说明文档,API 接口说明,全面的单元测试,以供社区参考
v0.16.0 版本已于 2021 年 7 月 1 日发布,可通过查阅 更新日志 了解更多细节以及发布历史
Model | input | io backend | batch size x gpus | MMAction2 (s/iter) | MMAction (s/iter) | Temporal-Shift-Module (s/iter) | PySlowFast (s/iter) |
---|---|---|---|---|---|---|---|
TSN | 256p rawframes | Memcached | 32x8 | 0.32 | 0.38 | 0.42 | x |
TSN | 256p dense-encoded video | Disk | 32x8 | 0.61 | x | x | TODO |
I3D heavy | 256p videos | Disk | 8x8 | 0.34 | x | x | 0.44 |
I3D | 256p rawframes | Memcached | 8x8 | 0.43 | 0.56 | x | x |
TSM | 256p rawframes | Memcached | 8x8 | 0.31 | x | 0.41 | x |
Slowonly | 256p videos | Disk | 8x8 | 0.32 | TODO | x | 0.34 |
Slowfast | 256p videos | Disk | 8x8 | 0.69 | x | x | 1.04 |
R(2+1)D | 256p videos | Disk | 8x8 | 0.45 | x | x | x |
更多详情可见 基准测试
支持的行为识别方法:
(点击收起)
- ✅ TSN (ECCV'2016)
- ✅ TSM (ICCV'2019)
- ✅ TSM Non-Local (ICCV'2019)
- ✅ R(2+1)D (CVPR'2018)
- ✅ I3D (CVPR'2017)
- ✅ I3D Non-Local (CVPR'2018)
- ✅ SlowOnly (ICCV'2019)
- ✅ SlowFast (ICCV'2019)
- ✅ CSN (ICCV'2019)
- ✅ TIN (AAAI'2020)
- ✅ TPN (CVPR'2020)
- ✅ C3D (CVPR'2014)
- ✅ X3D (CVPR'2020)
- ✅ OmniSource (ECCV'2020)
- ✅ MultiModality: Audio (ArXiv'2020)
- ✅ TANet (ArXiv'2020)
- ✅ TRN (CVPR'2015)
- ✅ PoseC3D (ArXiv'2021)
支持的时序动作检测方法:
支持的时空检测方法:
(点击收起)
- ✅ ACRN (ECCV'2018)
- ✅ SlowOnly+Fast R-CNN (ICCV'2019)
- ✅ SlowFast+Fast R-CNN (ICCV'2019)
- ✅ Long-Term Feature Bank (CVPR'2019)
各个模型的结果和设置都可以在对应的 config 目录下的 README_zh-CN.md 中查看。整体的概况也可也在 模型库 页面中查看
我们将跟进学界的最新进展,并支持更多算法和框架。如果您对 MMAction2 有任何功能需求,请随时在 问题 中留言。
支持的 数据集:
支持的动作识别数据集:
(点击收起)
- ✅ UCF101 [ 主页 ] (CRCV-IR-12-01)
- ✅ HMDB51 [ 主页 ] (ICCV'2011)
- ✅ Kinetics-[400/600/700] [ 主页 ] (CVPR'2017)
- ✅ Something-Something V1 [ 主页 ] (ICCV'2017)
- ✅ Something-Something V2 [ 主页 ] (ICCV'2017)
- ✅ Moments in Time [ 主页 ] (TPAMI'2019)
- ✅ Multi-Moments in Time [ 主页 ] (ArXiv'2019)
- ✅ HVU [ 主页 ] (ECCV'2020)
- ✅ Jester [ 主页 ] (ICCV'2019)
- ✅ GYM [ 主页 ] (CVPR'2020)
- ✅ ActivityNet [ 主页 ] (CVPR'2015)
- ✅ Diving48 [ 主页 ] (ECCV'2018)
支持的时序动作检测数据集:
(点击收起)
- ✅ ActivityNet [ 主页 ] (CVPR'2015)
- ✅ THUMOS14 [ 主页 ] (THUMOS Challenge 2014)
支持的时空动作检测数据集:
标记 🔲 代表对应数据集并未被完全支持,但提供相应的数据准备步骤。
请参考 安装指南 进行安装
请参考 数据准备 了解数据集准备概况。所有支持的数据集都列于 数据集清单 中
请参考 基础教程 了解 MMAction2 的基本使用。MMAction2也提供了其他更详细的教程:
MMAction2 也提供了相应的中文 Colab 教程,可以点击 这里 进行体验!
请参考 FAQ 了解其他用户的常见问题
该项目开源自 Apache 2.0 license
如果你觉得 MMAction2 对你的研究有所帮助,可以考虑引用它:
@misc{2020mmaction2,
title={OpenMMLab's Next Generation Video Understanding Toolbox and Benchmark},
author={MMAction2 Contributors},
howpublished = {\url{https://github.com/open-mmlab/mmaction2}},
year={2020}
}
我们非常欢迎用户对于 MMAction2 做出的任何贡献,可以参考 贡献指南 文件了解更多细节
MMAction2 是一款由不同学校和公司共同贡献的开源项目。我们感谢所有为项目提供算法复现和新功能支持的贡献者,以及提供宝贵反馈的用户。 我们希望该工具箱和基准测试可以为社区提供灵活的代码工具,供用户复现现有算法并开发自己的新模型,从而不断为开源社区提供贡献。
- MMCV: OpenMMLab 计算机视觉基础库
- MMClassification: OpenMMLab 图像分类工具箱与测试基准
- MMDetection: OpenMMLab 检测工具箱与测试基准
- MMDetection3D: OpenMMLab 新一代通用3D目标检测平台
- MMSegmentation: OpenMMLab 语义分割工具箱与测试基准
- MMAction2: OpenMMLab 新一代视频理解工具箱与测试基准
- MMTracking: OpenMMLab 一体化视频目标感知平台
- MMPose: OpenMMLab 姿态估计工具箱与测试基准
- MMEditing: OpenMMLab 图像视频编辑工具箱
- MMOCR: OpenMMLab 全流程文字检测识别理解工具包
- MMGeneration: OpenMMLab 图片视频生成模型工具箱
扫描下方的二维码可关注 OpenMMLab 团队的 知乎官方账号,加入 OpenMMLab 团队的 官方交流 QQ 群
我们会在 OpenMMLab 社区为大家
- 📢 分享 AI 框架的前沿核心技术
- 💻 解读 PyTorch 常用模块源码
- 📰 发布 OpenMMLab 的相关新闻
- 🚀 介绍 OpenMMLab 开发的前沿算法
- 🏃 获取更高效的问题答疑和意见反馈
- 🔥 提供与各行各业开发者充分交流的平台
干货满满 📘,等你来撩 💗,OpenMMLab 社区期待您的加入 👬