Introduction to detrex
detrex is a cutting-edge, open-source toolbox designed for implementing transformer-based detection algorithms. It harnesses the power of the popular Detectron2 framework, while incorporating design principles from MMDetection and DETR libraries. This makes detrex a versatile platform for researchers and developers interested in object detection using transformers. Compatible with Pytorch 1.10+ (with Pytorch 1.12 recommended), detrex aims to simplify the creation of customized models by offering a modular approach.
Major Features
Modular Design
detrex divides the transformer-based detection framework into several components, allowing users to build models tailored to their needs with ease. This decomposition enhances flexibility and customization, making it user-friendly for developers.
Strong Baselines
Providing robust baselines for transformer-based detection models is another key feature of detrex. Through meticulous hyper-parameter tuning, the framework has enhanced model performance significantly, showing improvements in Average Precision (AP) from 0.2 to 1.1 AP for supported algorithms.
Ease of Use
detrex is designed to be lightweight and straightforward for users. It features:
- A LazyConfig System for more efficient and cleaner configuration files.
- A lightweight training engine adapted from Detectron2's lazyconfig training script, which simplifies the training process.
Moreover, detrex also houses an Awesome Detection Transformer repository, showcasing research papers on transformer-based detection and segmentation.
Fun Facts
The name "detrex" can be interpreted in multiple ways:
- detr-ex: A nod to DETR, while positioning the repository as an extension of transformer-based detection algorithms.
- det-rex: "Rex" means king in Latin, symbolizing detrex's ambition to be at the forefront of object detection advancements.
- de-t.rex: Linking to their research project "DINO" (Dinosaur) and T.rex - the king of dinosaurs, reinforcing the project's leading-edge aspirations.
What's New
As of version 0.5.0, released on July 16, 2023, detrex includes support for several new projects:
- Focus-DETR (ICCV'2023)
- SQR-DETR (CVPR'2023)
- Align-DETR (ArXiv'2023)
- EVA-01 and EVA-02 (highlighted at CVPR'2023 and ArXiv'2023 respectively)
Installation and Getting Started
For installation details, users can refer to the comprehensive installation guide. For those just beginning with detrex, a variety of tutorials are available, covering topics such as the configuration system, converting pretrained weights, data visualization, and custom dataset training.
Documentation and Model Zoo
Complete API documentation and various tutorials are available for users seeking in-depth understanding. The Model Zoo provides results and models for a wide range of supported methods like DETR, Deformable-DETR, DAB-DETR, and more.
License
detrex is distributed under the Apache 2.0 license, opening it up for broad use and collaboration within the community.
Acknowledgement
The detrex project is a collaborative effort by IDEACVR researchers, built upon the foundation of existing frameworks like Detectron2, MMDetection, and DETR. Their community welcomes and appreciates contributions and feedback from users globally.
Citation
For researchers who utilize detrex in academic work, detailed citation guidelines are provided to acknowledge the framework's contributions appropriately. Various algorithms are supported, each with its specific citation instructions.
In summary, detrex stands as a highly effective tool for those delving into the realm of transformers in object detection, promising ease of use, flexibility, and cutting-edge performance enhancements.