detrex

detrex is a research platform for DETR-based object detection, segmentation, pose estimation and other visual recognition tasks.

https://github.com/idea-research/detrex

Science Score: 62.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
  • Institutional organization owner
    Organization idea-research has institutional domain (www.idea.edu.cn)
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.0%) to scientific vocabulary

Keywords

anchor-detr conditional-detr dab-detr deformable-detr deta detr dino dn-detr group-detr h-detr mask-dino object-detection pose-estimation pytorch segmentation state-of-the-art
Last synced: 6 months ago · JSON representation ·

Repository

detrex is a research platform for DETR-based object detection, segmentation, pose estimation and other visual recognition tasks.

Basic Info
Statistics
  • Stars: 2,165
  • Watchers: 24
  • Forks: 223
  • Open Issues: 84
  • Releases: 7
Topics
anchor-detr conditional-detr dab-detr deformable-detr deta detr dino dn-detr group-detr h-detr mask-dino object-detection pose-estimation pytorch segmentation state-of-the-art
Created over 3 years ago · Last pushed over 1 year ago
Metadata Files
Readme License Citation

README.md

🦖detrex: Benchmarking Detection Transformers

release docs Documentation Status GitHub PRs Welcome open issues

[📚Read detrex Benchmarking Paper](https://arxiv.org/abs/2306.07265) | [🏠Project Page](https://rentainhe.github.io/projects/detrex/) | [🏷️Cite detrex](#citation) | [🚢DeepDataSpace](https://github.com/IDEA-Research/deepdataspace)
[📘Documentation](https://detrex.readthedocs.io/en/latest/index.html) | [🛠️Installation](https://detrex.readthedocs.io/en/latest/tutorials/Installation.html) | [👀Model Zoo](https://detrex.readthedocs.io/en/latest/tutorials/Model_Zoo.html) | [🚀Awesome DETR](https://github.com/IDEA-Research/awesome-detection-transformer) | [🆕News](#whats-new) | [🤔Reporting Issues](https://github.com/IDEA-Research/detrex/issues/new/choose)

Introduction

detrex is an open-source toolbox that provides state-of-the-art Transformer-based detection algorithms. It is built on top of Detectron2 and its module design is partially borrowed from MMDetection and DETR. Many thanks for their nicely organized code. The main branch works with Pytorch 1.10+ or higher (we recommend Pytorch 1.12).

Major Features - **Modular Design.** detrex decomposes the Transformer-based detection framework into various components which help users easily build their own customized models. - **Strong Baselines.** detrex provides a series of strong baselines for Transformer-based detection models. We have further boosted the model performance from **0.2 AP** to **1.1 AP** through optimizing hyper-parameters among most of the supported algorithms. - **Easy to Use.** detrex is designed to be **light-weight** and easy for users to use: - [LazyConfig System](https://detectron2.readthedocs.io/en/latest/tutorials/lazyconfigs.html) for more flexible syntax and cleaner config files. - Light-weight [training engine](./tools/train_net.py) modified from detectron2 [lazyconfig_train_net.py](https://github.com/facebookresearch/detectron2/blob/main/tools/lazyconfig_train_net.py) Apart from detrex, we also released a repo [Awesome Detection Transformer](https://github.com/IDEA-Research/awesome-detection-transformer) to present papers about Transformer for detection and segmentation.

Fun Facts

The repo name detrex has several interpretations: - detr-ex : We take our hats off to DETR and regard this repo as an extension of Transformer-based detection algorithms.

  • det-rex : rex literally means 'king' in Latin. We hope this repo can help advance the state of the art on object detection by providing the best Transformer-based detection algorithms from the research community.

  • de-t.rex : de means 'the' in Dutch. T.rex, also called Tyrannosaurus Rex, means 'king of the tyrant lizards' and connects to our research work 'DINO', which is short for Dinosaur.

What's New

v0.5.0 was released on 16/07/2023: - Support Focus-DETR (ICCV'2023). - Support SQR-DETR (CVPR'2023), credits to Fangyi Chen - Support Align-DETR (ArXiv'2023), credits to Zhi Cai - Support EVA-01 (CVPR'2023 Highlight) and EVA-02 (ArXiv'2023) backbones, please check DINO-EVA for more benchmarking results.

Please see changelog.md for details and release history.

Installation

Please refer to Installation Instructions for the details of installation.

Getting Started

Please refer to Getting Started with detrex for the basic usage of detrex. We also provides other tutorials for: - Learn about the config system of detrex - How to convert the pretrained weights from original detr repo into detrex format - Visualize your training data and testing results on COCO dataset - Analyze the model under detrex - Download and initialize with the pretrained backbone weights - Frequently asked questions - A simple onnx convert tutorial provided by powermano - Simple training techniques: Model-EMA, Mixed Precision Training, Activation Checkpoint - Simple tutorial about custom dataset training

Although some of the tutorials are currently presented with relatively simple content, we will constantly improve our documentation to help users achieve a better user experience.

Documentation

Please see documentation for full API documentation and tutorials.

Model Zoo

Results and models are available in model zoo.

Supported methods - [x] [DETR (ECCV'2020)](./projects/detr/) - [x] [Deformable-DETR (ICLR'2021 Oral)](./projects/deformable_detr/) - [x] [PnP-DETR (ICCV'2021)](./projects/pnp_detr/) - [x] [Conditional-DETR (ICCV'2021)](./projects/conditional_detr/) - [x] [Anchor-DETR (AAAI 2022)](./projects/anchor_detr/) - [x] [DAB-DETR (ICLR'2022)](./projects/dab_detr/) - [x] [DAB-Deformable-DETR (ICLR'2022)](./projects/dab_deformable_detr/) - [x] [DN-DETR (CVPR'2022 Oral)](./projects/dn_detr/) - [x] [DN-Deformable-DETR (CVPR'2022 Oral)](./projects/dn_deformable_detr/) - [x] [Group-DETR (ICCV'2023)](./projects/group_detr/) - [x] [DETA (ArXiv'2022)](./projects/deta/) - [x] [DINO (ICLR'2023)](./projects/dino/) - [x] [H-Deformable-DETR (CVPR'2023)](./projects/h_deformable_detr/) - [x] [MaskDINO (CVPR'2023)](./projects/maskdino/) - [x] [CO-MOT (ArXiv'2023)](./projects/co_mot/) - [x] [SQR-DETR (CVPR'2023)](./projects/sqr_detr/) - [x] [Align-DETR (ArXiv'2023)](./projects/align_detr/) - [x] [EVA-01 (CVPR'2023 Highlight)](./projects/dino_eva/) - [x] [EVA-02 (ArXiv'2023)](./projects/dino_eva/) - [x] [Focus-DETR (ICCV'2023)](./projects/focus_detr/) Please see [projects](./projects/) for the details about projects that are built based on detrex.

License

This project is released under the Apache 2.0 license.

Acknowledgement

  • detrex is an open-source toolbox for Transformer-based detection algorithms created by researchers of IDEACVR. We appreciate all contributions to detrex!
  • detrex is built based on Detectron2 and part of its module design is borrowed from MMDetection, DETR, and Deformable-DETR.

Citation

If you use this toolbox in your research or wish to refer to the baseline results published here, please use the following BibTeX entries:

  • Citing detrex:

BibTeX @misc{ren2023detrex, title={detrex: Benchmarking Detection Transformers}, author={Tianhe Ren and Shilong Liu and Feng Li and Hao Zhang and Ailing Zeng and Jie Yang and Xingyu Liao and Ding Jia and Hongyang Li and He Cao and Jianan Wang and Zhaoyang Zeng and Xianbiao Qi and Yuhui Yuan and Jianwei Yang and Lei Zhang}, year={2023}, eprint={2306.07265}, archivePrefix={arXiv}, primaryClass={cs.CV} }

Citing Supported Algorithms ```BibTex @inproceedings{carion2020end, title={End-to-end object detection with transformers}, author={Carion, Nicolas and Massa, Francisco and Synnaeve, Gabriel and Usunier, Nicolas and Kirillov, Alexander and Zagoruyko, Sergey}, booktitle={European conference on computer vision}, pages={213--229}, year={2020}, organization={Springer} } @inproceedings{ zhu2021deformable, title={Deformable {\{}DETR{\}}: Deformable Transformers for End-to-End Object Detection}, author={Xizhou Zhu and Weijie Su and Lewei Lu and Bin Li and Xiaogang Wang and Jifeng Dai}, booktitle={International Conference on Learning Representations}, year={2021}, url={https://openreview.net/forum?id=gZ9hCDWe6ke} } @inproceedings{meng2021-CondDETR, title = {Conditional DETR for Fast Training Convergence}, author = {Meng, Depu and Chen, Xiaokang and Fan, Zejia and Zeng, Gang and Li, Houqiang and Yuan, Yuhui and Sun, Lei and Wang, Jingdong}, booktitle = {Proceedings of the IEEE International Conference on Computer Vision (ICCV)}, year = {2021} } @inproceedings{ liu2022dabdetr, title={{DAB}-{DETR}: Dynamic Anchor Boxes are Better Queries for {DETR}}, author={Shilong Liu and Feng Li and Hao Zhang and Xiao Yang and Xianbiao Qi and Hang Su and Jun Zhu and Lei Zhang}, booktitle={International Conference on Learning Representations}, year={2022}, url={https://openreview.net/forum?id=oMI9PjOb9Jl} } @inproceedings{li2022dn, title={Dn-detr: Accelerate detr training by introducing query denoising}, author={Li, Feng and Zhang, Hao and Liu, Shilong and Guo, Jian and Ni, Lionel M and Zhang, Lei}, booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition}, pages={13619--13627}, year={2022} } @inproceedings{ zhang2023dino, title={{DINO}: {DETR} with Improved DeNoising Anchor Boxes for End-to-End Object Detection}, author={Hao Zhang and Feng Li and Shilong Liu and Lei Zhang and Hang Su and Jun Zhu and Lionel Ni and Heung-Yeung Shum}, booktitle={The Eleventh International Conference on Learning Representations }, year={2023}, url={https://openreview.net/forum?id=3mRwyG5one} } @InProceedings{Chen_2023_ICCV, author = {Chen, Qiang and Chen, Xiaokang and Wang, Jian and Zhang, Shan and Yao, Kun and Feng, Haocheng and Han, Junyu and Ding, Errui and Zeng, Gang and Wang, Jingdong}, title = {Group DETR: Fast DETR Training with Group-Wise One-to-Many Assignment}, booktitle = {Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)}, month = {October}, year = {2023}, pages = {6633-6642} } @InProceedings{Jia_2023_CVPR, author = {Jia, Ding and Yuan, Yuhui and He, Haodi and Wu, Xiaopei and Yu, Haojun and Lin, Weihong and Sun, Lei and Zhang, Chao and Hu, Han}, title = {DETRs With Hybrid Matching}, booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)}, month = {June}, year = {2023}, pages = {19702-19712} } @InProceedings{Li_2023_CVPR, author = {Li, Feng and Zhang, Hao and Xu, Huaizhe and Liu, Shilong and Zhang, Lei and Ni, Lionel M. and Shum, Heung-Yeung}, title = {Mask DINO: Towards a Unified Transformer-Based Framework for Object Detection and Segmentation}, booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)}, month = {June}, year = {2023}, pages = {3041-3050} } @article{yan2023bridging, title={Bridging the Gap Between End-to-end and Non-End-to-end Multi-Object Tracking}, author={Yan, Feng and Luo, Weixin and Zhong, Yujie and Gan, Yiyang and Ma, Lin}, journal={arXiv preprint arXiv:2305.12724}, year={2023} } @InProceedings{Chen_2023_CVPR, author = {Chen, Fangyi and Zhang, Han and Hu, Kai and Huang, Yu-Kai and Zhu, Chenchen and Savvides, Marios}, title = {Enhanced Training of Query-Based Object Detection via Selective Query Recollection}, booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)}, month = {June}, year = {2023}, pages = {23756-23765} } ```

Owner

  • Name: IDEA-Research
  • Login: IDEA-Research
  • Kind: organization
  • Location: China

The International Digital Economy Academy (“IDEA”).

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
  - name: "detrex Contributors"
title: "IDEA-CVR Detection-Transformer Toolbox and Benchmark"
date-released: 2022-09-21
url: "https://github.com/IDEA-Research/detrex"
license: Apache-2.0

GitHub Events

Total
  • Issues event: 13
  • Watch event: 212
  • Issue comment event: 11
  • Pull request event: 12
  • Fork event: 32
Last Year
  • Issues event: 13
  • Watch event: 212
  • Issue comment event: 11
  • Pull request event: 12
  • Fork event: 32

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 280
  • Total Committers: 32
  • Avg Commits per committer: 8.75
  • Development Distribution Score (DDS): 0.586
Past Year
  • Commits: 3
  • Committers: 3
  • Avg Commits per committer: 1.0
  • Development Distribution Score (DDS): 0.667
Top Committers
Name Email Commits
Ren Tianhe 4****e 116
ntianhe ren r****e@d****a 115
Hao Zhang 9****5@q****m 7
Shilong Liu 3****u 6
Kamila Sultanova K****a@i****t 4
ntianhe ren r****e@c****a 2
rayleizhu r****u@o****m 2
Fangyi Chen 3****n 2
Feng Li f****y@c****k 2
coco鸭 7****5 2
feng li l****g@m****1 1
Shawn Rong 1****4@q****m 1
Allen s****0@h****m 1
BingfengYan 1****2@q****m 1
Chi Xie c****e@1****m 1
Diego c****o@g****m 1
Dom 9****l 1
FelixCaae c****3@o****m 1
zengzhaoyang 6****8@q****m 1
tripleMu g****u@1****m 1
rodriguhe r****e@g****m 1
jiading j****z@o****m 1
Zhe Chen w****9@1****m 1
Tiago Comassetto Fróes f****4@g****m 1
Pakcheera Choppradit 7****a 1
Mohammed Ammar Al-Sherfawi Al-Jazaerly 4****a 1
Maksim Litvinov 9****g 1
Khoa Nguyen t****9 1
Kami s****i@g****m 1
Jinjing Zhao 5****3 1
and 2 more...
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 91
  • Total pull requests: 29
  • Average time to close issues: 21 days
  • Average time to close pull requests: 3 days
  • Total issue authors: 70
  • Total pull request authors: 17
  • Average comments per issue: 3.43
  • Average comments per pull request: 0.45
  • Merged pull requests: 17
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 14
  • Pull requests: 8
  • Average time to close issues: N/A
  • Average time to close pull requests: 5 days
  • Issue authors: 13
  • Pull request authors: 4
  • Average comments per issue: 0.21
  • Average comments per pull request: 0.13
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • todesti2 (8)
  • Cao-PeiPei (3)
  • wangzhaoyang-508 (3)
  • rentainhe (2)
  • yjdzyr (2)
  • nhw649 (2)
  • Kunaldargan (2)
  • zhangchbin (2)
  • DanielWit (2)
  • kasteric (2)
  • mmaaz60 (2)
  • dgcnz (2)
  • Asafgendler (1)
  • lolikonloli (1)
  • guoqsGary (1)
Pull Request Authors
  • thomas-hossler (8)
  • rentainhe (6)
  • dgcnz (6)
  • ZhaoJingjing713 (2)
  • oliver-batchelor (2)
  • maksimlitvinov39kg (2)
  • ArthurHartAB (2)
  • xx025 (2)
  • thangngoc89 (1)
  • tosemml (1)
  • ZoutOP (1)
  • rodriguhe (1)
  • hukkelas (1)
  • ShenghaiRong (1)
  • FelixCaae (1)
Top Labels
Issue Labels
documentation (3) bug (2) discussion (1) question (1) enhancement (1)
Pull Request Labels

Packages

  • Total packages: 2
  • Total downloads: unknown
  • Total dependent packages: 0
    (may contain duplicates)
  • Total dependent repositories: 0
    (may contain duplicates)
  • Total versions: 12
proxy.golang.org: github.com/IDEA-Research/detrex
  • Versions: 6
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 6.5%
Average: 6.7%
Dependent repos count: 7.0%
Last synced: 6 months ago
proxy.golang.org: github.com/idea-research/detrex
  • Versions: 6
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 6.5%
Average: 6.7%
Dependent repos count: 7.0%
Last synced: 6 months ago

Dependencies

docs/requirements.txt pypi
  • Pillow *
  • autoflake *
  • black ==22.3.0
  • cloudpickle *
  • flake8 ==3.8.1
  • future *
  • hydra-core *
  • isort ==4.3.21
  • jinja2 <3.1
  • matplotlib *
  • numpy *
  • omegaconf ==2.1.0
  • pybind11 *
  • pytest *
  • recommonmark ==0.6.0
  • scipy ==1.7.3
  • sphinx *
  • sphinx-rtd-theme ==1.0.0
  • tabulate *
  • termcolor *
  • timm *
  • tqdm *
requirements.txt pypi
  • autoflake *
  • black ==22.3.0
  • cloudpickle *
  • flake8 ==3.8.1
  • hydra-core *
  • isort ==4.3.21
  • omegaconf ==2.1.0
  • pybind11 *
  • pytest *
  • scipy ==1.7.3
  • timm *
setup.py pypi