OpenMMLab Action Understanding Toolbox and Benchmark
Project description
Introduction
MMAction2 is an open-source toolbox for action understanding based on PyTorch. It is a part of the OpenMMLab project.
The master branch works with PyTorch 1.3+.
Action Recognition Results on Kinetics-400
Spatio-Temporal Action Detection Results on AVA-2.1
Major Features
-
Modular design
We decompose the action understanding framework into different components and one can easily construct a customized action understanding framework by combining different modules.
-
Support for various datasets
The toolbox directly supports multiple datasets, UCF101, Kinetics-[400/600/700], Something-Something V1&V2, Moments in Time, Multi-Moments in Time, THUMOS14, etc.
-
Support for multiple action understanding frameworks
MMAction2 implements popular frameworks for action understanding:
-
For action recognition, various algorithms are implemented, including TSN, TSM, TIN, R(2+1)D, I3D, SlowOnly, SlowFast, CSN, Non-local, etc.
-
For temporal action localization, we implement BSN, BMN, SSN.
-
-
Well tested and documented
We provide detailed documentation and API reference, as well as unittests.
License
This project is released under the Apache 2.0 license.
Changelog
v0.10.0 was released in 05/01/2021. Please refer to changelog.md for details and release history.
Benchmark
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 |
Details can be found in benchmark.
ModelZoo
Supported methods for action recognition:
- TSN
- TSM
- TSM Non-Local
- R(2+1)D
- I3D
- I3D Non-Local
- SlowOnly
- SlowFast
- CSN
- TIN
- TPN
- C3D
- X3D
- OmniSource
- MultiModality: Audio
Supported methods for action localization:
Supported methods for spatio-temporal action detection:
Results and models are available in the README.md of each method's config directory. A summary can be found in the model zoo page.
Installation
Please refer to install.md for installation.
Data Preparation
Please refer to data_preparation.md for a general knowledge of data preparation. The supported datasets are listed in supported_datasets.md
Get Started
Please see getting_started.md for the basic usage of MMAction2. There are also tutorials for learn about configs, finetuning models, adding new dataset, designing data pipeline, adding new modules, exporting model to onnx and customizing runtime settings.
A Colab tutorial is also provided. You may preview the notebook here or directly run on Colab.
FAQ
Please refer to FAQ for frequently asked questions.
Contributing
We appreciate all contributions to improve MMAction2. Please refer to CONTRIBUTING.md for the contributing guideline.
Acknowledgement
MMAction2 is an open source project that is contributed by researchers and engineers from various colleges and companies. We appreciate all the contributors who implement their methods or add new features, as well as users who give valuable feedbacks. We wish that the toolbox and benchmark could serve the growing research community by providing a flexible toolkit to reimplement existing methods and develop their own new models.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for mmaction2-0.10.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 50919215327f7cbad1c12936a8c7f722e7f9fe141545c41c9e3f9adc58d9001b |
|
MD5 | 0b617f674fd5660ddb61e497dcd04876 |
|
BLAKE2b-256 | bd7e13a75a7196dcc66f476b3562849d0924259e16783a2b5374133c1d37f66c |