Skip to content

Commit 14118a3

Browse files
authored
Merge pull request #2172 from open-mmlab/dev-1.x
Merge dev-1.x into 1.x
2 parents 20ac077 + 215378c commit 14118a3

File tree

359 files changed

+19960
-5822
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

359 files changed

+19960
-5822
lines changed

.circleci/test.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -66,11 +66,11 @@ jobs:
6666
pip install -U openmim
6767
mim install 'mmcv >= 2.0.0rc1'
6868
pip install git+ssh://[email protected]/open-mmlab/[email protected]
69-
pip install git+https://github.com/open-mmlab/[email protected]
69+
pip install git+https://github.com/open-mmlab/mmclassification.git@dev-1.x
7070
pip install -r requirements.txt
7171
- when:
7272
condition:
73-
equal: [ "1.12.1", << parameters.torch >> ]
73+
equal: [ "1.13.0", << parameters.torch >> ]
7474
steps:
7575
- run: pip install timm
7676
- when:
@@ -124,8 +124,8 @@ jobs:
124124
docker exec mmaction pip install git+https://[email protected]/open-mmlab/mmengine.git@main
125125
docker exec mmaction pip install -U openmim
126126
docker exec mmaction mim install 'mmcv >= 2.0.0rc1'
127-
docker exec mmaction pip install git+https://[email protected]/open-mmlab/[email protected]
128-
docker exec mmaction pip install git+https://github.com/open-mmlab/[email protected]
127+
docker exec mmaction pip install git+https://[email protected]/open-mmlab/mmdetection.git@dev-3.x
128+
docker exec mmaction pip install git+https://github.com/open-mmlab/mmclassification.git@dev-1.x
129129
docker exec mmaction pip install -r requirements.txt
130130
- when:
131131
condition:
@@ -177,13 +177,13 @@ workflows:
177177
name: minimum_version_cpu
178178
torch: 1.6.0
179179
torchvision: 0.7.0
180-
python: 3.6.9 # The lowest python 3.6.x version available on CircleCI images
180+
python: 3.7.4
181181
requires:
182182
- lint
183183
- build_cpu:
184184
name: maximum_version_cpu
185-
torch: 1.12.1
186-
torchvision: 0.13.1
185+
torch: 1.13.0
186+
torchvision: 0.14.0
187187
python: 3.9.0
188188
requires:
189189
- minimum_version_cpu

.github/CONTRIBUTING.md

Lines changed: 0 additions & 69 deletions
This file was deleted.

.github/workflows/lint.yml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,6 @@ jobs:
1717
python-version: 3.7
1818
- name: Install pre-commit hook
1919
run: |
20-
# markdownlint requires ruby >= 2.7
21-
sudo apt-add-repository ppa:brightbox/ruby-ng -y
22-
sudo apt-get update
23-
sudo apt-get install -y ruby2.7
2420
pip install pre-commit
2521
pre-commit install
2622
- name: Linting

.github/workflows/merge_stage_test.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
runs-on: ubuntu-18.04
2222
strategy:
2323
matrix:
24-
python-version: [3.6, 3.8, 3.9]
24+
python-version: [3.8, 3.9]
2525
torch: [1.8.1]
2626
include:
2727
- torch: 1.8.1
@@ -58,9 +58,9 @@ jobs:
5858
pip install -U openmim
5959
mim install 'mmcv >= 2.0.0rc1'
6060
- name: Install MMDet
61-
run: pip install git+https://github.com/open-mmlab/[email protected]
61+
run: pip install git+https://github.com/open-mmlab/mmdetection.git@dev-3.x
6262
- name: Install MMCls
63-
run: pip install git+https://github.com/open-mmlab/[email protected]
63+
run: pip install git+https://github.com/open-mmlab/mmclassification.git@dev-1.x
6464
- name: Install PytorchVideo
6565
run: pip install pytorchvideo
6666
if: ${{matrix.torchvision == '0.10.0'}}
@@ -126,9 +126,9 @@ jobs:
126126
pip install -U openmim
127127
mim install 'mmcv >= 2.0.0rc1'
128128
- name: Install MMDet
129-
run: pip install git+https://github.com/open-mmlab/[email protected]
129+
run: pip install git+https://github.com/open-mmlab/mmdetection.git@dev-3.x
130130
- name: Install MMCls
131-
run: pip install git+https://github.com/open-mmlab/[email protected]
131+
run: pip install git+https://github.com/open-mmlab/mmclassification.git@dev-1.x
132132
- name: Install unittest dependencies
133133
run: pip install -r requirements.txt
134134
- name: Install PytorchVideo
@@ -189,8 +189,8 @@ jobs:
189189
pip install git+https://github.com/open-mmlab/mmengine.git@main
190190
pip install -U openmim
191191
mim install 'mmcv >= 2.0.0rc1'
192-
pip install git+https://github.com/open-mmlab/[email protected]
193-
pip install git+https://github.com/open-mmlab/[email protected]
192+
pip install git+https://github.com/open-mmlab/mmdetection.git@dev-3.x
193+
pip install git+https://github.com/open-mmlab/mmclassification.git@dev-1.x
194194
pip install -r requirements.txt
195195
- name: Install PytorchVideo
196196
run: python -m pip install pytorchvideo
@@ -226,8 +226,8 @@ jobs:
226226
pip install git+https://github.com/open-mmlab/mmengine.git@main
227227
pip install -U openmim
228228
mim install 'mmcv >= 2.0.0rc1'
229-
pip install git+https://github.com/open-mmlab/[email protected]
230-
pip install git+https://github.com/open-mmlab/[email protected]
229+
pip install git+https://github.com/open-mmlab/mmdetection.git@dev-3.x
230+
pip install git+https://github.com/open-mmlab/mmclassification.git@dev-1.x
231231
pip install -r requirements.txt
232232
- name: Install PytorchVideo
233233
run: python -m pip install pytorchvideo

.github/workflows/pr_stage_test.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,9 @@ jobs:
4848
pip install -U openmim
4949
mim install 'mmcv >= 2.0.0rc1'
5050
- name: Install MMDet
51-
run: pip install git+https://github.com/open-mmlab/[email protected]
51+
run: pip install git+https://github.com/open-mmlab/mmdetection.git@dev-3.x
5252
- name: Install MMCls
53-
run: pip install git+https://github.com/open-mmlab/[email protected]
53+
run: pip install git+https://github.com/open-mmlab/mmclassification.git@dev-1.x
5454
- name: Install unittest dependencies
5555
run: pip install -r requirements.txt
5656
- name: Install PytorchVideo
@@ -113,8 +113,8 @@ jobs:
113113
pip install git+https://github.com/open-mmlab/mmengine.git@main
114114
pip install -U openmim
115115
mim install 'mmcv >= 2.0.0rc1'
116-
pip install git+https://github.com/open-mmlab/[email protected]
117-
pip install git+https://github.com/open-mmlab/[email protected]
116+
pip install git+https://github.com/open-mmlab/mmdetection.git@dev-3.x
117+
pip install git+https://github.com/open-mmlab/mmclassification.git@dev-1.x
118118
pip install -r requirements.txt
119119
- name: Install PytorchVideo
120120
run: python -m pip install pytorchvideo
@@ -145,7 +145,7 @@ jobs:
145145
- name: Upgrade pip
146146
run: |
147147
python -V
148-
pip install pip --upgrade
148+
python -m pip install pip --upgrade
149149
- name: Install librosa and soundfile
150150
run: python -m pip install librosa soundfile
151151
- name: Install lmdb
@@ -159,8 +159,8 @@ jobs:
159159
pip install git+https://github.com/open-mmlab/mmengine.git@main
160160
pip install -U openmim
161161
mim install 'mmcv >= 2.0.0rc1'
162-
pip install git+https://github.com/open-mmlab/[email protected]
163-
pip install git+https://github.com/open-mmlab/[email protected]
162+
pip install git+https://github.com/open-mmlab/mmdetection.git@dev-3.x
163+
pip install git+https://github.com/open-mmlab/mmclassification.git@dev-1.x
164164
pip install -r requirements.txt
165165
- name: Install PytorchVideo
166166
run: python -m pip install pytorchvideo

.github/workflows/test_mim.yml

Lines changed: 0 additions & 47 deletions
This file was deleted.

README.md

Lines changed: 24 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -64,15 +64,21 @@ The 1.x branch works with **PyTorch 1.6+**.
6464

6565
- **Modular design**: We decompose a video understanding framework into different components. One can easily construct a customized video understanding framework by combining different modules.
6666

67-
- **Support four major video understanding tasks**: MMAction2 implements various algorithms for multiple video understanding tasks, including action recognition, action localization, spatio-temporal action detection, and skeleton-based action detection. We support **27** different algorithms and **20** different datasets for the four major tasks.
67+
- **Support four major video understanding tasks**: MMAction2 implements various algorithms for multiple video understanding tasks, including action recognition, action localization, spatio-temporal action detection, and skeleton-based action detection.
6868

6969
- **Well tested and documented**: We provide detailed documentation and API reference, as well as unit tests.
7070

7171
## What's New
7272

73-
- (2022-10-11) We support **Video Swin Transformer** on Kinetics400 and additionally train a Swin-L model on Kinetics700 to extract video features for downstream tasks.
73+
**Release**: v1.0.0rc2 with the following new features:
7474

75-
**Release**: v1.0.0rc1 was released in 14/10/2022. Please refer to [changelog.md](docs/en/notes/changelog.md) for details and release history.
75+
- We Support Omni-Sourece training on ImageNet and Kinetics datasets.
76+
- We support exporting spatial-temporal detection models to ONNX.
77+
- We support **STGCN++** on NTU-RGB+D.
78+
- We support **MViT V2** on Kinetics 400 and something-V2.
79+
- We refine our skeleton-based pipelines and support the joint training of multi-stream skeleton information, including **joint, bone, joint-motion, and bone-motion**.
80+
- We support **VideoMAE** on Kinetics400.
81+
- We support **C2D** on Kinetics400, achieve 73.57% Top-1 accuracy (higher than 71.8% in the [paper](https://arxiv.org/abs/1711.07971)).
7682

7783
## Installation
7884

@@ -88,17 +94,18 @@ Please refer to [install.md](https://mmaction2.readthedocs.io/en/1.x/get_started
8894
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/c3d/README.md">C3D</a> (CVPR'2014)</td>
8995
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/tsn/README.md">TSN</a> (ECCV'2016)</td>
9096
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/i3d/README.md">I3D</a> (CVPR'2017)</td>
97+
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/c2d/README.md">C2D</a> (CVPR'2018)</td>
9198
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/i3d/README.md">I3D Non-Local</a> (CVPR'2018)</td>
92-
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/r2plus1d/README.md">R(2+1)D</a> (CVPR'2018)</td>
9399
</tr>
94100
<tr>
101+
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/r2plus1d/README.md">R(2+1)D</a> (CVPR'2018)</td>
95102
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/trn/README.md">TRN</a> (ECCV'2018)</td>
96103
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/tsm/README.md">TSM</a> (ICCV'2019)</td>
97104
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/tsm/README.md">TSM Non-Local</a> (ICCV'2019)</td>
98105
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/slowonly/README.md">SlowOnly</a> (ICCV'2019)</td>
99-
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/slowfast/README.md">SlowFast</a> (ICCV'2019)</td>
100106
</tr>
101107
<tr>
108+
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/slowfast/README.md">SlowFast</a> (ICCV'2019)</td>
102109
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/csn/README.md">CSN</a> (ICCV'2019)</td>
103110
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/tin/README.md">TIN</a> (AAAI'2020)</td>
104111
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/tpn/README.md">TPN</a> (CVPR'2020)</td>
@@ -109,6 +116,14 @@ Please refer to [install.md](https://mmaction2.readthedocs.io/en/1.x/get_started
109116
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/tanet/README.md">TANet</a> (ArXiv'2020)</td>
110117
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/timesformer/README.md">TimeSformer</a> (ICML'2021)</td>
111118
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/swin/README.md">VideoSwin</a> (CVPR'2022)</td>
119+
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/recognition/videomae/README.md">VideoMAE</a> (NeurIPS'2022)</td>
120+
</tr>
121+
<tr>
122+
<td><a href="https://github.com/open-mmlab/mmaction2/blob/dev-1.x/configs/recognition/mvit/README.md">MViT V2</a> (CVPR'2022)</td>
123+
<td></td>
124+
<td></td>
125+
<td></td>
126+
<td></td>
112127
</tr>
113128
<tr>
114129
<td colspan="5" style="font-weight:bold;">Action Localization</td>
@@ -137,7 +152,7 @@ Please refer to [install.md](https://mmaction2.readthedocs.io/en/1.x/get_started
137152
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/skeleton/stgcn/README.md">ST-GCN</a> (AAAI'2018)</td>
138153
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/skeleton/2s-agcn/README.md">2s-AGCN</a> (CVPR'2019)</td>
139154
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/skeleton/posec3d/README.md">PoseC3D</a> (CVPR'2022)</td>
140-
<td></td>
155+
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/configs/skeleton/stgcnpp/README.md">STGCN++</a> (ArXiv'2022)</td>
141156
<td></td>
142157
</tr>
143158
</table>
@@ -161,10 +176,10 @@ If you have any feature requests, please feel free to leave a comment in [Issues
161176
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/tools/data/kinetics/README.md">Kinetics-[400/600/700]</a> (<a href="https://deepmind.com/research/open-source/kinetics/">Homepage</a>) (CVPR'2017)</td>
162177
</tr>
163178
<tr>
164-
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/tools/data/sthv1/README.md">SthV1</a> (<a href="https://20bn.com/datasets/something-something/v1/">Homepage</a>) (ICCV'2017)</td>
165-
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/tools/data/sthv2/README.md">SthV2</a> (<a href="https://20bn.com/datasets/something-something/">Homepage</a>) (ICCV'2017)</td>
179+
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/tools/data/sthv1/README.md">SthV1</a> (ICCV'2017)</td>
180+
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/tools/data/sthv2/README.md">SthV2</a> (<a href="https://developer.qualcomm.com/software/ai-datasets/something-something">Homepage</a>) (ICCV'2017)</td>
166181
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/tools/data/diving48/README.md">Diving48</a> (<a href="http://www.svcl.ucsd.edu/projects/resound/dataset.html">Homepage</a>) (ECCV'2018)</td>
167-
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/tools/data/jester/README.md">Jester</a> (<a href="https://20bn.com/datasets/jester/v1">Homepage</a>) (ICCV'2019)</td>
182+
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/tools/data/jester/README.md">Jester</a> (<a href="https://developer.qualcomm.com/software/ai-datasets/jester">Homepage</a>) (ICCV'2019)</td>
168183
</tr>
169184
<tr>
170185
<td><a href="https://github.com/open-mmlab/mmaction2/blob/1.x/tools/data/mit/README.md">Moments in Time</a> (<a href="http://moments.csail.mit.edu/">Homepage</a>) (TPAMI'2019)</td>

configs/_base_/default_runtime.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66
logger=dict(type='LoggerHook', interval=20, ignore_last=False),
77
param_scheduler=dict(type='ParamSchedulerHook'),
88
checkpoint=dict(type='CheckpointHook', interval=1, save_best='auto'),
9-
sampler_seed=dict(type='DistSamplerSeedHook'))
9+
sampler_seed=dict(type='DistSamplerSeedHook'),
10+
sync_buffers=dict(type='SyncBuffersHook'))
1011

1112
env_cfg = dict(
1213
cudnn_benchmark=False,

configs/_base_/models/agcn.py

Lines changed: 0 additions & 13 deletions
This file was deleted.

configs/_base_/models/c2d_r50.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
model = dict(
2+
type='Recognizer3D',
3+
backbone=dict(
4+
type='C2D',
5+
depth=50,
6+
pretrained='https://download.pytorch.org/models/resnet50-11ad3fa6.pth',
7+
norm_eval=False),
8+
cls_head=dict(
9+
type='I3DHead',
10+
num_classes=400,
11+
in_channels=2048,
12+
spatial_type='avg',
13+
dropout_ratio=0.5,
14+
init_std=0.01,
15+
average_clips='prob'),
16+
data_preprocessor=dict(
17+
type='ActionDataPreprocessor',
18+
mean=[123.675, 116.28, 103.53],
19+
std=[58.395, 57.12, 57.375],
20+
format_shape='NCTHW'))

0 commit comments

Comments
 (0)