mmrotate

OpenMMLab Rotated Object Detection Toolbox and Benchmark

https://github.com/open-mmlab/mmrotate

Science Score: 64.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Committers with academic emails
    2 of 33 committers (6.1%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.3%) to scientific vocabulary

Keywords

detection openmmlab pytorch rotated-object

Keywords from Contributors

deployment mmdetection mmsegmentation model-converter ncnn onnx onnxruntime openvino pplnn tensorrt
Last synced: 6 months ago · JSON representation ·

Repository

OpenMMLab Rotated Object Detection Toolbox and Benchmark

Basic Info
Statistics
  • Stars: 1,979
  • Watchers: 19
  • Forks: 596
  • Open Issues: 298
  • Releases: 0
Topics
detection openmmlab pytorch rotated-object
Created about 4 years ago · Last pushed over 1 year ago
Metadata Files
Readme Contributing License Citation

README.md

 
OpenMMLab website HOT      OpenMMLab platform TRY IT OUT
 
[![PyPI](https://img.shields.io/pypi/v/mmrotate)](https://pypi.org/project/mmrotate) [![docs](https://img.shields.io/badge/docs-latest-blue)](https://mmrotate.readthedocs.io/en/latest/) [![badge](https://github.com/open-mmlab/mmrotate/workflows/build/badge.svg)](https://github.com/open-mmlab/mmrotate/actions) [![codecov](https://codecov.io/gh/open-mmlab/mmrotate/branch/main/graph/badge.svg)](https://codecov.io/gh/open-mmlab/mmrotate) [![license](https://img.shields.io/github/license/open-mmlab/mmrotate.svg)](https://github.com/open-mmlab/mmrotate/blob/main/LICENSE) [![open issues](https://isitmaintained.com/badge/open/open-mmlab/mmrotate.svg)](https://github.com/open-mmlab/mmrotate/issues) [![issue resolution](https://isitmaintained.com/badge/resolution/open-mmlab/mmrotate.svg)](https://github.com/open-mmlab/mmrotate/issues) [📘Documentation](https://mmrotate.readthedocs.io/en/latest/) | [🛠️Installation](https://mmrotate.readthedocs.io/en/latest/install.html) | [👀Model Zoo](https://mmrotate.readthedocs.io/en/latest/model_zoo.html) | [🆕Update News](https://mmrotate.readthedocs.io/en/latest/changelog.html) | [🚀Ongoing Projects](https://github.com/open-mmlab/mmrotate/projects) | [🤔Reporting Issues](https://github.com/open-mmlab/mmrotate/issues/new/choose)
English | [简体中文](README_zh-CN.md)

Introduction

MMRotate is an open-source toolbox for rotated object detection based on PyTorch. It is a part of the OpenMMLab project.

The master branch works with PyTorch 1.6+.

https://user-images.githubusercontent.com/10410257/154433305-416d129b-60c8-44c7-9ebb-5ba106d3e9d5.MP4

Major Features - **Support multiple angle representations** MMRotate provides three mainstream angle representations to meet different paper settings. - **Modular Design** We decompose the rotated object detection framework into different components, which makes it much easy and flexible to build a new model by combining different modules. - **Strong baseline and State of the art** The toolbox provides strong baselines and state-of-the-art methods in rotated object detection.

What's New

Highlight

We are excited to announce our latest work on real-time object recognition tasks, RTMDet, a family of fully convolutional single-stage detectors. RTMDet not only achieves the best parameter-accuracy trade-off on object detection from tiny to extra-large model sizes but also obtains new state-of-the-art performance on instance segmentation and rotated object detection tasks. Details can be found in the technical report. Pre-trained models are here.

PWC PWC PWC

| Task | Dataset | AP | FPS(TRT FP16 BS1 3090) | | ------------------------ | ------- | ------------------------------------ | ---------------------- | | Object Detection | COCO | 52.8 | 322 | | Instance Segmentation | COCO | 44.6 | 188 | | Rotated Object Detection | DOTA | 78.9(single-scale)/81.3(multi-scale) | 121 |

0.3.4 was released in 01/02/2023:

  • Fix compatibility with numpy, scikit-learn, and e2cnn.
  • Support empty patch in Rotate Transform
  • use iof for RRandomCrop validation

Please refer to changelog.md for details and release history.

Installation

MMRotate depends on PyTorch, MMCV and MMDetection. Below are quick steps for installation. Please refer to Install Guide for more detailed instruction.

shell conda create -n open-mmlab python=3.7 pytorch==1.7.0 cudatoolkit=10.1 torchvision -c pytorch -y conda activate open-mmlab pip install openmim mim install mmcv-full mim install mmdet git clone https://github.com/open-mmlab/mmrotate.git cd mmrotate pip install -r requirements/build.txt pip install -v -e .

Get Started

Please see get_started.md for the basic usage of MMRotate. We provide colab tutorial, and other tutorials for:

Model Zoo

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.

Supported algorithms: - [x] [Rotated RetinaNet-OBB/HBB](configs/rotated_retinanet/README.md) (ICCV'2017) - [x] [Rotated FasterRCNN-OBB](configs/rotated_faster_rcnn/README.md) (TPAMI'2017) - [x] [Rotated RepPoints-OBB](configs/rotated_reppoints/README.md) (ICCV'2019) - [x] [Rotated FCOS](configs/rotated_fcos/README.md) (ICCV'2019) - [x] [RoI Transformer](configs/roi_trans/README.md) (CVPR'2019) - [x] [Gliding Vertex](configs/gliding_vertex/README.md) (TPAMI'2020) - [x] [Rotated ATSS-OBB](configs/rotated_atss/README.md) (CVPR'2020) - [x] [CSL](configs/csl/README.md) (ECCV'2020) - [x] [R3Det](configs/r3det/README.md) (AAAI'2021) - [x] [S2A-Net](configs/s2anet/README.md) (TGRS'2021) - [x] [ReDet](configs/redet/README.md) (CVPR'2021) - [x] [Beyond Bounding-Box](configs/cfa/README.md) (CVPR'2021) - [x] [Oriented R-CNN](configs/oriented_rcnn/README.md) (ICCV'2021) - [x] [GWD](configs/gwd/README.md) (ICML'2021) - [x] [KLD](configs/kld/README.md) (NeurIPS'2021) - [x] [SASM](configs/sasm_reppoints/README.md) (AAAI'2022) - [x] [Oriented RepPoints](configs/oriented_reppoints/README.md) (CVPR'2022) - [x] [KFIoU](configs/kfiou/README.md) (arXiv) - [x] [G-Rep](configs/g_reppoints/README.md) (stay tuned)

Data Preparation

Please refer to data_preparation.md to prepare the data.

FAQ

Please refer to FAQ for frequently asked questions.

Contributing

We appreciate all contributions to improve MMRotate. Please refer to CONTRIBUTING.md for the contributing guideline.

Acknowledgement

MMRotate 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 methods.

Citation

If you use this toolbox or benchmark in your research, please cite this project.

bibtex @inproceedings{zhou2022mmrotate, title = {MMRotate: A Rotated Object Detection Benchmark using PyTorch}, 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}, booktitle={Proceedings of the 30th ACM International Conference on Multimedia}, year={2022} }

License

This project is released under the Apache 2.0 license.

Projects in OpenMMLab

  • MMCV: OpenMMLab foundational library for computer vision.
  • MIM: MIM installs OpenMMLab packages.
  • MMClassification: OpenMMLab image classification toolbox and benchmark.
  • MMDetection: OpenMMLab detection toolbox and benchmark.
  • MMDetection3D: OpenMMLab's next-generation platform for general 3D object detection.
  • MMRotate: OpenMMLab rotated object detection toolbox and benchmark.
  • MMSegmentation: OpenMMLab semantic segmentation toolbox and benchmark.
  • MMOCR: OpenMMLab text detection, recognition, and understanding toolbox.
  • MMPose: OpenMMLab pose estimation toolbox and benchmark.
  • MMHuman3D: OpenMMLab 3D human parametric model toolbox and benchmark.
  • MMSelfSup: OpenMMLab self-supervised learning toolbox and benchmark.
  • MMRazor: OpenMMLab model compression toolbox and benchmark.
  • MMFewShot: OpenMMLab fewshot learning toolbox and benchmark.
  • MMAction2: OpenMMLab's next-generation action understanding toolbox and benchmark.
  • MMTracking: OpenMMLab video perception toolbox and benchmark.
  • MMFlow: OpenMMLab optical flow toolbox and benchmark.
  • MMEditing: OpenMMLab image and video editing toolbox.
  • MMGeneration: OpenMMLab image and video generative models toolbox.
  • MMDeploy: OpenMMLab model deployment framework.

Owner

  • Name: OpenMMLab
  • Login: open-mmlab
  • Kind: organization
  • Location: China

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
  - name: "MMRotate Contributors"
title: "OpenMMLab rotated object detection toolbox and benchmark"
date-released: 2022-02-18
url: "https://github.com/open-mmlab/mmrotate"
license: Apache-2.0

GitHub Events

Total
  • Issues event: 14
  • Watch event: 171
  • Issue comment event: 113
  • Pull request review comment event: 2
  • Pull request review event: 6
  • Pull request event: 2
  • Fork event: 67
Last Year
  • Issues event: 14
  • Watch event: 171
  • Issue comment event: 113
  • Pull request review comment event: 2
  • Pull request review event: 6
  • Pull request event: 2
  • Fork event: 67

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 139
  • Total Committers: 33
  • Avg Commits per committer: 4.212
  • Development Distribution Score (DDS): 0.619
Past Year
  • Commits: 2
  • Committers: 2
  • Avg Commits per committer: 1.0
  • Development Distribution Score (DDS): 0.5
Top Committers
Name Email Commits
Yue Zhou 5****9@q****m 53
yangxue y****7@1****m 16
Hakjin Lee n****h@g****m 12
jbwang1997 j****7@g****m 11
Yanyi Liu w****u@1****m 10
RangiLyu l****i@g****m 5
KAIWANG w****k@w****n 3
np-csu n****8@g****m 2
LF 5****a 2
DC a****a@v****p 2
BrotherHappy 7****y 1
GamblerZSY 8****Y 1
Han Jaeseung h****n@a****v 1
J. Istiak x****9@g****m 1
Jamie j****5 1
JinYuannn 8****n 1
MinkiSong M****g@s****i 1
sunshine.lwt s****t@1****m 1
zhanggefan l****e@g****m 1
CANOE l****5@o****m 1
Kelvin Chiu k****1@o****m 1
Lue Fan 1****0@q****m 1
MingJian.L 4****8 1
Range King R****Z@g****m 1
Sheffield 4****o 1
Weijia Liu n****s@1****m 1
chenmin00 1****0 1
lalalagogogo 4****g 1
q.yao s****o@l****m 1
remi-or 8****r 1
and 3 more...
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 288
  • Total pull requests: 81
  • Average time to close issues: 24 days
  • Average time to close pull requests: 20 days
  • Total issue authors: 221
  • Total pull request authors: 48
  • Average comments per issue: 2.85
  • Average comments per pull request: 2.59
  • Merged pull requests: 32
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 20
  • Pull requests: 5
  • Average time to close issues: about 21 hours
  • Average time to close pull requests: 1 minute
  • Issue authors: 20
  • Pull request authors: 4
  • Average comments per issue: 0.5
  • Average comments per pull request: 0.8
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • zhu011 (7)
  • hh123445 (6)
  • ZhenboZhao77 (5)
  • milamiqi (5)
  • willwang-cv (4)
  • luoz66 (4)
  • houw0517 (3)
  • tikitong (3)
  • Nicolaing (3)
  • 15689933561 (3)
  • 0Freeebaby (3)
  • bityangtian (2)
  • 19990101lrk (2)
  • Luo-Z13 (2)
  • zhongqiu1245 (2)
Pull Request Authors
  • zytx121 (9)
  • liuyanyi (5)
  • yuyi1005 (4)
  • gillsin (4)
  • Li-Qingyun (3)
  • hanhaowen-mt (3)
  • CSberlin (3)
  • heiyuxiaokai (2)
  • fengshiwest (2)
  • Atlantisming (2)
  • unique-chan (2)
  • akindofyoga (2)
  • nijkah (2)
  • k-papadakis (2)
  • Haru-zt (2)
Top Labels
Issue Labels
bug (5) good first issue (3) community discussion (3) help wanted (3) documentation (2) dev-1.x (1) feature request (1) planned feature (1) enhancement (1) reimplementation (1)
Pull Request Labels
dev-1.x (2) feature (2) community discussion (1) documentation (1) planned feature (1) algorithm (1) need-resolve-conflict (1) WIP (1)

Packages

  • Total packages: 2
  • Total downloads:
    • pypi 1,888 last-month
  • Total dependent packages: 2
    (may contain duplicates)
  • Total dependent repositories: 8
    (may contain duplicates)
  • Total versions: 18
  • Total maintainers: 1
pypi.org: mmrotate

Rotation Detection Toolbox and Benchmark

  • Versions: 10
  • Dependent Packages: 2
  • Dependent Repositories: 8
  • Downloads: 1,888 Last month
  • Docker Downloads: 0
Rankings
Stargazers count: 1.7%
Forks count: 2.6%
Average: 4.2%
Docker downloads count: 4.3%
Dependent packages count: 4.8%
Dependent repos count: 5.2%
Downloads: 6.5%
Maintainers (1)
Last synced: 6 months ago
proxy.golang.org: github.com/open-mmlab/mmrotate
  • Versions: 8
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 6.5%
Average: 6.7%
Dependent repos count: 6.9%
Last synced: 6 months ago

Dependencies

docker/Dockerfile docker
  • pytorch/pytorch ${PYTORCH}-cuda${CUDA}-cudnn${CUDNN}-devel build
.github/workflows/build.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • codecov/codecov-action v2 composite
.github/workflows/lint.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
.github/workflows/publish-to-pypi.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
.github/workflows/test_mim.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
.circleci/docker/Dockerfile docker
  • pytorch/pytorch ${PYTORCH}-cuda${CUDA}-cudnn${CUDNN}-devel build
docker/serve/Dockerfile docker
  • pytorch/pytorch ${PYTORCH}-cuda${CUDA}-cudnn${CUDNN}-devel build
requirements/build.txt pypi
  • cython *
  • numpy *
requirements/docs.txt pypi
  • docutils ==0.16.0
  • markdown >=3.4.0
  • myst-parser *
  • sphinx ==4.0.2
  • sphinx-copybutton *
  • sphinx_markdown_tables >=0.0.16
  • sphinx_rtd_theme ==0.5.2
requirements/mminstall.txt pypi
  • mmcv-full >=1.5.0
requirements/optional.txt pypi
  • imagecorruptions *
  • scipy *
  • sklearn *
requirements/readthedocs.txt pypi
  • e2cnn *
  • mmcv *
  • mmdet *
  • torch *
  • torchvision *
requirements/runtime.txt pypi
  • e2cnn *
  • matplotlib *
  • mmcv-full *
  • mmdet *
  • numpy *
  • pycocotools *
  • six *
  • terminaltables *
  • torch *
requirements/tests.txt pypi
  • asynctest * test
  • codecov * test
  • coverage * test
  • cython * test
  • e2cnn * test
  • flake8 * test
  • interrogate * test
  • isort ==4.3.21 test
  • kwarray * test
  • matplotlib * test
  • pytest * test
  • sklearn * test
  • ubelt * test
  • wheel * test
  • xdoctest >=0.10.0 test
  • yapf * test
requirements.txt pypi
setup.py pypi