Skip to content

Commit c62f148

Browse files
authored
Release of v0.3.2
Release of v0.3.2
2 parents d1d273b + 36de5f6 commit c62f148

File tree

28 files changed

+2798
-2622
lines changed

28 files changed

+2798
-2622
lines changed

.github/workflows/test_mim.yml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
name: test-mim
2+
3+
on:
4+
push:
5+
paths:
6+
- 'model-index.yml'
7+
- 'configs/**'
8+
9+
pull_request:
10+
paths:
11+
- 'model-index.yml'
12+
- 'configs/**'
13+
14+
concurrency:
15+
group: ${{ github.workflow }}-${{ github.ref }}
16+
cancel-in-progress: true
17+
18+
jobs:
19+
build_cpu:
20+
runs-on: ubuntu-18.04
21+
strategy:
22+
matrix:
23+
python-version: [3.7]
24+
torch: [1.8.0]
25+
include:
26+
- torch: 1.8.0
27+
torch_version: torch1.8
28+
torchvision: 0.9.0
29+
steps:
30+
- uses: actions/checkout@v2
31+
- name: Set up Python ${{ matrix.python-version }}
32+
uses: actions/setup-python@v2
33+
with:
34+
python-version: ${{ matrix.python-version }}
35+
- name: Upgrade pip
36+
run: pip install pip --upgrade
37+
- name: Install PyTorch
38+
run: pip install torch==${{matrix.torch}}+cpu torchvision==${{matrix.torchvision}}+cpu -f https://download.pytorch.org/whl/torch_stable.html
39+
- name: Install openmim
40+
run: pip install openmim
41+
- name: Build and install
42+
run: rm -rf .eggs && mim install -e .
43+
- name: test commands of mim
44+
run: mim search mmrotate

.pre-commit-config.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,12 +34,12 @@ repos:
3434
- id: codespell
3535
args: [ '--ignore-words-list', 'DOTA' ]
3636
- repo: https://github.com/executablebooks/mdformat
37-
rev: 0.7.14
37+
rev: 0.7.9
3838
hooks:
3939
- id: mdformat
4040
args: ["--number"]
4141
additional_dependencies:
42-
- mdformat-gfm
42+
- mdformat-openmmlab
4343
- mdformat_frontmatter
4444
- linkify-it-py
4545
- repo: https://github.com/myint/docformatter

README.md

Lines changed: 43 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -18,25 +18,33 @@
1818
</div>
1919
<div>&nbsp;</div>
2020

21-
[![Documentation](https://readthedocs.org/projects/mmrotate/badge/?version=latest)](https://mmrotate.readthedocs.io/en/latest/?badge=latest)
22-
[![actions](https://github.com/open-mmlab/mmrotate/workflows/build/badge.svg)](https://github.com/open-mmlab/mmrotate/actions)
23-
[![codecov](https://codecov.io/gh/open-mmlab/mmrotate/branch/master/graph/badge.svg)](https://codecov.io/gh/open-mmlab/mmrotate)
24-
[![PyPI](https://img.shields.io/pypi/v/mmrotate)](https://pypi.org/project/mmrotate/)
25-
[![LICENSE](https://img.shields.io/github/license/open-mmlab/mmrotate.svg)](https://github.com/open-mmlab/mmrotate/blob/master/LICENSE)
26-
[![Average time to resolve an issue](https://isitmaintained.com/badge/resolution/open-mmlab/mmrotate.svg)](https://github.com/open-mmlab/mmrotate/issues)
27-
[![Percentage of issues still open](https://isitmaintained.com/badge/open/open-mmlab/mmrotate.svg)](https://github.com/open-mmlab/mmrotate/issues)
21+
[![PyPI](https://img.shields.io/pypi/v/mmrotate)](https://pypi.org/project/mmrotate)
22+
[![docs](https://img.shields.io/badge/docs-latest-blue)](https://mmrotate.readthedocs.io/en/latest/)
23+
[![badge](https://github.com/open-mmlab/mmrotate/workflows/build/badge.svg)](https://github.com/open-mmlab/mmrotate/actions)
24+
[![codecov](https://codecov.io/gh/open-mmlab/mmrotate/branch/main/graph/badge.svg)](https://codecov.io/gh/open-mmlab/mmrotate)
25+
[![license](https://img.shields.io/github/license/open-mmlab/mmrotate.svg)](https://github.com/open-mmlab/mmrotate/blob/main/LICENSE)
26+
[![open issues](https://isitmaintained.com/badge/open/open-mmlab/mmrotate.svg)](https://github.com/open-mmlab/mmrotate/issues)
27+
[![issue resolution](https://isitmaintained.com/badge/resolution/open-mmlab/mmrotate.svg)](https://github.com/open-mmlab/mmrotate/issues)
2828

2929
[📘Documentation](https://mmrotate.readthedocs.io/en/latest/) |
3030
[🛠️Installation](https://mmrotate.readthedocs.io/en/latest/install.html) |
31-
[👀Model Zoo](docs/en/model_zoo.md) |
31+
[👀Model Zoo](https://mmrotate.readthedocs.io/en/latest/model_zoo.html) |
32+
[🆕Update News](https://mmrotate.readthedocs.io/en/latest/changelog.html) |
33+
[🚀Ongoing Projects](https://github.com/open-mmlab/mmrotate/projects) |
3234
[🤔Reporting Issues](https://github.com/open-mmlab/mmrotate/issues/new/choose)
3335

3436
</div>
3537

36-
## Introduction
38+
<!--中/英 文档切换-->
39+
40+
<div align="center">
3741

3842
English | [简体中文](README_zh-CN.md)
3943

44+
</div>
45+
46+
## Introduction
47+
4048
MMRotate is an open-source toolbox for rotated object detection based on PyTorch.
4149
It is a part of the [OpenMMLab project](https://github.com/open-mmlab).
4250

@@ -62,23 +70,37 @@ https://user-images.githubusercontent.com/10410257/154433305-416d129b-60c8-44c7-
6270

6371
</details>
6472

65-
## Changelog
73+
## What's New
6674

67-
**0.3.1** was released in 6/6/2022:
75+
**0.3.2** was released in 6/7/2022:
6876

69-
- Support Rotated FCOS (#223)
77+
- Support Oriented Reppoints (CVPR'22) (#286)
78+
- Support ConvNeXt backbone (CVPR'22) (#343)
7079

7180
Please refer to [changelog.md](docs/en/changelog.md) for details and release history.
7281

7382
## Installation
7483

75-
Please refer to [install.md](docs/en/install.md) for installation guide.
84+
MMRotate depends on [PyTorch](https://pytorch.org/), [MMCV](https://github.com/open-mmlab/mmcv) and [MMDetection](https://github.com/open-mmlab/mmdetection).
85+
Below are quick steps for installation.
86+
Please refer to [Install Guide](https://mmrotate.readthedocs.io/en/latest/install.html) for more detailed instruction.
87+
88+
```shell
89+
conda create -n open-mmlab python=3.7 pytorch==1.7.0 cudatoolkit=10.1 torchvision -c pytorch -y
90+
conda activate open-mmlab
91+
pip install openmim
92+
mim install mmcv-full
93+
mim install mmdet
94+
git clone https://github.com/open-mmlab/mmrotate.git
95+
cd mmrotate
96+
pip install -r requirements/build.txt
97+
pip install -v -e .
98+
```
7699

77100
## Get Started
78101

79102
Please see [get_started.md](docs/en/get_started.md) for the basic usage of MMRotate.
80-
We provide [colab tutorial](demo/MMRotate_Tutorial.ipynb) for beginners.
81-
There are also tutorials:
103+
We provide [colab tutorial](demo/MMRotate_Tutorial.ipynb), and other tutorials for:
82104

83105
- [learn the basics](docs/en/intro.md)
84106
- [learn the config](docs/en/tutorials/customize_config.md)
@@ -116,10 +138,6 @@ A summary can be found in the [Model Zoo](docs/en/model_zoo.md) page.
116138

117139
</details>
118140

119-
### Model Request
120-
121-
We will keep up with the latest progress of the community, and support more popular algorithms and frameworks. If you have any feature requests, please feel free to leave a comment in [MMRotate Roadmap](https://github.com/open-mmlab/mmrotate/issues/1).
122-
123141
## Data Preparation
124142

125143
Please refer to [data_preparation.md](tools/data/README.md) to prepare the data.
@@ -138,13 +156,15 @@ MMRotate is an open source project that is contributed by researchers and engine
138156

139157
## Citation
140158

141-
If you find this project useful in your research, please consider cite:
159+
If you use this toolbox or benchmark in your research, please cite this project.
142160

143161
```bibtex
144162
@article{mmrotate2022,
145-
title={MMRotate: A Rotated Object Detection Benchmark using PyTorch},
146-
author={Zhou, Yue and Yang, Xue and Zhang, Gefan and Wang, Jiabao and Liu, Yanyi and Hou, Liping and Jiang, Xue and Liu, Xingzhao and Yan, Junchi and Lyu, Chengqi and Zhang, Wenwei and Chen, Kai},
147-
journal={arXiv preprint arXiv:2204.13317},
163+
title = {MMRotate: A Rotated Object Detection Benchmark using PyTorch},
164+
author = {Zhou, Yue and Yang, Xue and Zhang, Gefan and Wang, Jiabao and Liu, Yanyi and
165+
Hou, Liping and Jiang, Xue and Liu, Xingzhao and Yan, Junchi and Lyu, Chengqi and
166+
Zhang, Wenwei and Chen, Kai},
167+
journal= {arXiv preprint arXiv:2204.13317},
148168
year={2022}
149169
}
150170
```

README_zh-CN.md

Lines changed: 46 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -18,24 +18,30 @@
1818
</div>
1919
<div>&nbsp;</div>
2020

21-
[![Documentation](https://readthedocs.org/projects/mmrotate/badge/?version=latest)](https://mmrotate.readthedocs.io/en/latest/?badge=latest)
22-
[![actions](https://github.com/open-mmlab/mmrotate/workflows/build/badge.svg)](https://github.com/open-mmlab/mmrotate/actions)
23-
[![codecov](https://codecov.io/gh/open-mmlab/mmrotate/branch/master/graph/badge.svg)](https://codecov.io/gh/open-mmlab/mmrotate)
24-
[![PyPI](https://img.shields.io/pypi/v/mmrotate)](https://pypi.org/project/mmrotate/)
25-
[![LICENSE](https://img.shields.io/github/license/open-mmlab/mmrotate.svg)](https://github.com/open-mmlab/mmrotate/blob/master/LICENSE)
26-
[![Average time to resolve an issue](https://isitmaintained.com/badge/resolution/open-mmlab/mmrotate.svg)](https://github.com/open-mmlab/mmrotate/issues)
27-
[![Percentage of issues still open](https://isitmaintained.com/badge/open/open-mmlab/mmrotate.svg)](https://github.com/open-mmlab/mmrotate/issues)
28-
29-
[📘文档](https://mmrotate.readthedocs.io/en/latest/) |
30-
[🛠️安装](https://mmrotate.readthedocs.io/en/latest/install.html) |
31-
[👀模型库](docs/en/model_zoo.md) |
21+
[![PyPI](https://img.shields.io/pypi/v/mmrotate)](https://pypi.org/project/mmrotate)
22+
[![docs](https://img.shields.io/badge/docs-latest-blue)](https://mmrotate.readthedocs.io/en/latest/)
23+
[![badge](https://github.com/open-mmlab/mmrotate/workflows/build/badge.svg)](https://github.com/open-mmlab/mmrotate/actions)
24+
[![codecov](https://codecov.io/gh/open-mmlab/mmrotate/branch/main/graph/badge.svg)](https://codecov.io/gh/open-mmlab/mmrotate)
25+
[![license](https://img.shields.io/github/license/open-mmlab/mmrotate.svg)](https://github.com/open-mmlab/mmrotate/blob/main/LICENSE)
26+
[![open issues](https://isitmaintained.com/badge/open/open-mmlab/mmrotate.svg)](https://github.com/open-mmlab/mmrotate/issues)
27+
[![issue resolution](https://isitmaintained.com/badge/resolution/open-mmlab/mmrotate.svg)](https://github.com/open-mmlab/mmrotate/issues)
28+
29+
[📘使用文档](https://mmrotate.readthedocs.io/zh_CN/stable/) |
30+
[🛠️安装教程](https://mmrotate.readthedocs.io/zh_CN/stable/get_started.html) |
31+
[👀模型库](https://mmrotate.readthedocs.io/zh_CN/stable/model_zoo.html) |
32+
[🆕更新日志](https://mmrotate.readthedocs.io/en/stable/changelog.html) |
33+
[🚀进行中的项目](https://github.com/open-mmlab/mmrotate/projects) |
3234
[🤔报告问题](https://github.com/open-mmlab/mmrotate/issues/new/choose)
3335

3436
</div>
3537

36-
## 介绍
38+
<div align="center">
3739

38-
[English](./README.md) | 简体中文
40+
[English](/README.md) | 简体中文
41+
42+
</div>
43+
44+
## 介绍
3945

4046
MMRotate 是一款基于 PyTorch 的旋转框检测的开源工具箱,是 [OpenMMLab](http://openmmlab.org/) 项目的成员之一。
4147

@@ -60,23 +66,36 @@ https://user-images.githubusercontent.com/10410257/154433305-416d129b-60c8-44c7-
6066

6167
</details>
6268

63-
## 更新日志
69+
## 最新进展
6470

65-
最新的 **0.3.1** 版本已经在 2022.06.06 发布:
71+
最新的 **0.3.2** 版本已经在 2022.07.06 发布:
6672

67-
- 支持了 Rotated FCOS 模型 (#223)
73+
- 支持了 Oriented Reppoints 模型 (CVPR'22) (#286)
74+
- 支持了 ConvNeXt 骨干网络 (CVPR'22) (#343)
6875

6976
如果想了解更多版本更新细节和历史信息,请阅读[更新日志](docs/en/changelog.md)
7077

7178
## 安装
7279

73-
请参考 [安装指南](docs/zh_cn/install.md) 进行安装。
80+
MMRotate 依赖 [PyTorch](https://pytorch.org/), [MMCV](https://github.com/open-mmlab/mmcv)[MMDetection](https://github.com/open-mmlab/mmdetection),以下是安装的简要步骤。
81+
更详细的安装指南请参考 [安装文档](https://mmrotate.readthedocs.io/zh_CN/latest/install.html)
82+
83+
```shell
84+
conda create -n open-mmlab python=3.7 pytorch==1.7.0 cudatoolkit=10.1 torchvision -c pytorch -y
85+
conda activate open-mmlab
86+
pip install openmim
87+
mim install mmcv-full
88+
mim install mmdet
89+
git clone https://github.com/open-mmlab/mmrotate.git
90+
cd mmrotate
91+
pip install -r requirements/build.txt
92+
pip install -v -e .
93+
```
7494

7595
## 教程
7696

77-
请参考 [get_started.md](docs/zh_cn/get_started.md) 了解 MMRotate 的基本使用。
78-
我们为初学者提供了 [colab 教程](demo/MMRotate_Tutorial.ipynb)
79-
MMRotate 也提供了其他更详细的教程:
97+
请参考[快速入门文档](docs/zh_cn/get_started.md)学习 MMRotate 的基本使用。
98+
我们提供了 [colab 教程](demo/MMRotate_Tutorial.ipynb),也为新手提供了完整的运行教程,其他教程如下
8099

81100
- [学习基础知识](docs/zh_cn/intro.md)
82101
- [配置文件](docs/zh_cn/tutorials/customize_config.md)
@@ -113,10 +132,6 @@ MMRotate 也提供了其他更详细的教程:
113132

114133
</details>
115134

116-
### 模型需求
117-
118-
我们将跟进学界的最新进展,并支持更多算法和框架。如果您对 MMRotate 有任何功能需求,请随时在 [MMRotate Roadmap](https://github.com/open-mmlab/mmrotate/issues/1) 中留言。
119-
120135
## 数据准备
121136

122137
请参考 [data_preparation.md](tools/data/README.md) 进行数据集准备。
@@ -136,14 +151,15 @@ MMRotate 是一款由不同学校和公司共同贡献的开源项目。我们
136151

137152
## 引用
138153

139-
如果您觉得 MMRotate 对您的研究有所帮助,请考虑引用它:
154+
如果你在研究中使用了本项目的代码或者性能基准,请参考如下 bibtex 引用 MMRotate。
140155

141156
```bibtex
142157
@article{mmrotate2022,
143-
title={MMRotate: A Rotated Object Detection Benchmark using PyTorch},
144-
author={Zhou, Yue and Yang, Xue and Zhang, Gefan and Wang, Jiabao and Liu, Yanyi and Hou, Liping and Jiang, Xue and Liu, Xingzhao and Yan, Junchi and Lyu, Chengqi and Zhang, Wenwei and Chen, Kai},
145-
journal={arXiv preprint arXiv:2204.13317},
146-
year={2022}
158+
title = {MMRotate: A Rotated Object Detection Benchmark using PyTorch},
159+
author = {Zhou, Yue and Yang, Xue and Zhang, Gefan and Wang, Jiabao and Liu, Yanyi and
160+
Hou, Liping and Jiang, Xue and Liu, Xingzhao and Yan, Junchi and Lyu, Chengqi and
161+
Zhang, Wenwei and Chen, Kai},
162+
journal= {arXiv preprint arXiv:2204.13317},
147163
}
148164
```
149165

@@ -175,7 +191,7 @@ MMRotate 是一款由不同学校和公司共同贡献的开源项目。我们
175191

176192
## 欢迎加入 OpenMMLab 社区
177193

178-
扫描下方的二维码可关注 OpenMMLab 团队的 [知乎官方账号](https://www.zhihu.com/people/openmmlab)联络 OpenMMLab [官方微信小助手](/docs/en/imgs/wechat_assistant_qrcode.png)或加入 OpenMMLab 团队的 [官方交流 QQ 群](https://jq.qq.com/?_wv=1027&k=GJP18SjI)
194+
扫描下方的二维码可关注 OpenMMLab 团队的 [知乎官方账号](https://www.zhihu.com/people/openmmlab)加入 OpenMMLab 团队的 [官方交流 QQ 群](https://jq.qq.com/?_wv=1027&k=aCvMxdr3)或联络 OpenMMLab 官方微信小助手
179195

180196
<div align="center">
181197
<img src="https://raw.githubusercontent.com/open-mmlab/mmcv/master/docs/en/_static/zhihu_qrcode.jpg" height="400"><img src="https://raw.githubusercontent.com/open-mmlab/mmcv/master/docs/en/_static/wechat_qrcode.jpg" height="400"><img src="https://raw.githubusercontent.com/open-mmlab/mmcv/master/docs/en/_static/qq_group_qrcode.jpg" height="400">

configs/_base_/schedules/schedule_1x.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# evaluation
2-
evaluation = dict(interval=12, metric='mAP')
2+
evaluation = dict(interval=1, metric='mAP')
33
# optimizer
44
optimizer = dict(type='SGD', lr=0.0025, momentum=0.9, weight_decay=0.0001)
55
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
@@ -11,4 +11,4 @@
1111
warmup_ratio=1.0 / 3,
1212
step=[8, 11])
1313
runner = dict(type='EpochBasedRunner', max_epochs=12)
14-
checkpoint_config = dict(interval=12)
14+
checkpoint_config = dict(interval=1)

configs/_base_/schedules/schedule_3x.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# evaluation
2-
evaluation = dict(interval=36, metric='mAP')
2+
evaluation = dict(interval=1, metric='mAP')
33
# optimizer
44
optimizer = dict(type='SGD', lr=0.0025, momentum=0.9, weight_decay=0.0001)
55
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
@@ -11,4 +11,4 @@
1111
warmup_ratio=1.0 / 3,
1212
step=[24, 33])
1313
runner = dict(type='EpochBasedRunner', max_epochs=36)
14-
checkpoint_config = dict(interval=12)
14+
checkpoint_config = dict(interval=1)

configs/_base_/schedules/schedule_40e.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# evaluation
2-
evaluation = dict(interval=40, metric='mAP')
2+
evaluation = dict(interval=1, metric='mAP')
33
# optimizer
44
optimizer = dict(type='SGD', lr=0.0025, momentum=0.9, weight_decay=0.0001)
55
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
@@ -11,4 +11,4 @@
1111
warmup_ratio=1.0 / 3,
1212
step=[24, 32, 38])
1313
runner = dict(type='EpochBasedRunner', max_epochs=40)
14-
checkpoint_config = dict(interval=10)
14+
checkpoint_config = dict(interval=1)

configs/_base_/schedules/schedule_6x.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# evaluation
2-
evaluation = dict(interval=36, metric='mAP')
2+
evaluation = dict(interval=1, metric='mAP')
33
# optimizer
44
optimizer = dict(type='SGD', lr=0.0025, momentum=0.9, weight_decay=0.0001)
55
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
@@ -11,4 +11,4 @@
1111
warmup_ratio=1.0 / 3,
1212
step=[48, 66])
1313
runner = dict(type='EpochBasedRunner', max_epochs=72)
14-
checkpoint_config = dict(interval=36)
14+
checkpoint_config = dict(interval=1)

configs/csl/metafile.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Collections:
2-
- Name: CSL
2+
- Name: csl
33
Metadata:
44
Training Data: DOTAv1.0
55
Training Techniques:

configs/oriented_rcnn/metafile.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Collections:
1616
Models:
1717
- Name: oriented_rcnn_r50_fpn_fp16_1x_dota_le90
1818
In Collection: oriented_rcnn
19-
Config: configs/cfa/oriented_rcnn_r50_fpn_fp16_1x_dota_le90.py
19+
Config: configs/oriented_rcnn/oriented_rcnn_r50_fpn_fp16_1x_dota_le90.py
2020
Metadata:
2121
Training Data: DOTAv1.0
2222
Results:
@@ -28,7 +28,7 @@ Models:
2828

2929
- Name: oriented_rcnn_r50_fpn_1x_dota_le90
3030
In Collection: oriented_rcnn
31-
Config: configs/cfa/oriented_rcnn_r50_fpn_1x_dota_le90.py
31+
Config: configs/oriented_rcnn/oriented_rcnn_r50_fpn_1x_dota_le90.py
3232
Metadata:
3333
Training Data: DOTAv1.0
3434
Results:

0 commit comments

Comments
 (0)