liu-zhy / mmaction2

OpenMMLab's Next Generation Action Understanding Toolbox and Benchmark

Home Page:https://mmaction2.readthedocs.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Documentation: https://mmaction2.readthedocs.io/.

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+.

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, 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, R(2+1)D, I3D, SlowOnly, SlowFast.

    • For temporal action localization, we implement BSN, BMN.

  • 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.

Benchmark and Model Zoo

MMAction2 supports various models and is more efficient in training. We compare with other popular codebases and the results are shown as below.

Model MMAction2 (s/iter) MMAction (s/iter) Temporal-Shift-Module (s/iter) PySlowFast (s/iter)
TSN 0.29 0.36 0.45 x
I3D (setting1) 0.45 0.58 x x
I3D (setting2) 0.32 x x 0.56
TSM 0.30 x 0.38 x
Slowonly 0.30 x x 1.03
Slowfast 0.80 x x 1.40
R(2+1)D 0.48 x x x

Supported methods for action recognition:

Supported methods for action localization:

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.

Get Started

Please see getting_started.md for the basic usage of MMAction2. There are also tutorials for finetuning models, adding new dataset, designing data pipeline, and adding new modules.

A Colab tutorial is also provided. You may preview the notebook here or directly run on Colab.

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.

Contact

If you have any question, please file an issue or contact the authors:

About

OpenMMLab's Next Generation Action Understanding Toolbox and Benchmark

https://mmaction2.readthedocs.org

License:Apache License 2.0


Languages

Language:Python 97.0%Language:Shell 2.9%Language:Dockerfile 0.1%