Co-Deformable-DETR (Swin-B, 1x (12 epochs), COCO)

Task Framework Architecture Venue
COCO val box AP Params Schedule
Weights license Paper Code

Disclaimer

This is not an official release. All credit for the method, the architecture, and the trained weights belongs entirely to the original authors: Zhuofan Zong, Guanglu Song, and Yu Liu (SenseTime X-Lab). I claim no contribution to the underlying research or training. I host the same checkpoint the authors published to Google Drive, with a model card and a copy of its config file.

Mirror rationale

The original non-ViT Co-DETR checkpoints are distributed through a single shared Google Drive folder, which is inconvenient for automated and reproducible downloads (no per-file addressing, checksums, or versioning). The authors published their ViT-L checkpoints to the Hub but not the ResNet-50 / Swin ones. I mirror this checkpoint to provide stable artifact hosting, an explicit file checksum (see Provenance), and versioned Hub access.

I mirror only the pretrained weights; I do not redistribute any training or evaluation data. I will transfer or remove this mirror at the original authors' request. Please cite the original paper (see Citation) and use the official repository or the maintained fork dronefreak/Co-DETR for code.


Quickstart

This is not a plain-PyTorch / transformers model. Inference needs the Co-DETR project code and the OpenMMLab 1.x stack (MMDetection 2.25.3, MMCV-full 1.5.0, PyTorch 1.11). The maintained fork ships a one-command environment setup for exactly this.

# 1. Get the code + a validated environment
git clone https://github.com/dronefreak/Co-DETR && cd Co-DETR
bash tools/setup_codetr_env.sh          # builds the `codetr` conda env
conda activate codetr

# 2. Pull this checkpoint + its config from the Hub
pip install -U "huggingface_hub[cli]"
hf download dronefreak/co-deformable-detr-swin-b-1x-coco \
    co_deformable_detr_swin_base_1x_coco.pth co_deformable_detr_swin_base_1x_coco.py \
    --local-dir checkpoints/

# 3. Run detection on an image / folder / video / webcam
python tools/inference.py \
    --config checkpoints/co_deformable_detr_swin_base_1x_coco.py \
    --checkpoint checkpoints/co_deformable_detr_swin_base_1x_coco.pth \
    --input demo/demo.jpg --out-dir outputs/ --save-json

The bundled config is identical to projects/configs/co_deformable_detr/co_deformable_detr_swin_base_1x_coco.py in the repo.


What is Co-DETR / this checkpoint

Co-DETR ("DETRs with Collaborative Hybrid Assignments Training") is a training scheme, not a new architecture. It attaches auxiliary heads that use one-to-many label assignment (an ATSS head and a Faster-R-CNN-style RoI head) alongside the DETR decoder's one-to-one Hungarian matching, and feeds the positive proposals those heads produce back into the decoder as extra queries. This makes the encoder's features more discriminative and speeds up convergence. The auxiliary heads are used only during training: this checkpoint's config sets eval_module='detr', so at inference only the Co-Deformable-DETR query head runs and the RPN / RoI / ATSS heads add no inference-time computation to the deployed detector.

This checkpoint is Co-Deformable-DETR (two-stage, with iterative box refinement) with a Swin-B backbone:

Detector CoDETR meta-model; deployed head is CoDeformDETRHead
Backbone Swin-B, pretrained on ImageNet-22k
Object queries 300
Aux heads in state-dict RPNHead + CoStandardRoIHead, CoATSSHead: present in the weights but not executed at inference (eval_module='detr')
Parameters 109.4 M executed at inference (backbone + neck + query head). The checkpoint additionally stores the training-only RPN / RoI / ATSS heads (125.7 M total), which inference never touches.
Classes 80 (COCO things)
Training schedule COCO train2017, 1x (12 epochs)
Test-time input single scale, no flip / no TTA (the config's test pipeline; see Measured inference footprint for the actual resized size on the sample image)

Intended use & limitations

Intended use. Research and engineering work that needs a COCO-pretrained object detector in the Co-DETR family: as a baseline, a feature/detection backbone, or a starting point for fine-tuning on a custom COCO-format dataset.

Limitations.

  • Trained and evaluated on COCO only; predicts the 80 COCO thing categories and nothing else.
  • Accuracy can degrade substantially on domain-shifted imagery (aerial, medical, document, non-natural images, etc.).
  • The reported 55.5 box AP is the authors' number; I have not reproduced it (see Evaluation).
  • No real-time claim. See measured latency for actual timings I got on one GPU.
  • Runs only on the legacy OpenMMLab 1.x stack (MMDetection 2.25.3 / MMCV-full 1.5.0 / PyTorch 1.11); no transformers / pipeline() support, and inference: false on the Hub.
  • The auxiliary training heads in the checkpoint are not exposed as inference outputs; only the DETR query head's detections are returned.

What I checked

Integrity and "does it load and run" checks only. This is not an accuracy reproduction:

  • It loads with a full state-dict key match in the codetr env (Python 3.8 / torch 1.11.0+cu113 / mmcv-full 1.5.0 / mmdet 2.25.3): zero missing, zero unexpected keys.
  • I ran it end-to-end through tools/inference.py on the two dashcam clips shown in the banner above; it produced valid annotated outputs.
  • I did not re-measure COCO AP; the 55.5 box AP below is the authors' number.

Measured inference footprint

Method. I built the model with mmdet.apis.init_detector, then ran inference_detector() on a single image, device='cuda:0', batch size 1, FP32 (no AMP), cudnn.benchmark=False: one warm-up call, then torch.cuda.reset_peak_memory_stats() and 10 timed calls with torch.cuda.synchronize(). max_memory_allocated includes the resident model weights plus activation buffers; it excludes the CUDA context.

Item Value
GPU NVIDIA GeForce RTX 4070 SUPER, 12 GB, driver 580.173.02
Stack Python 3.8, torch 1.11.0+cu113, mmcv-full 1.5.0, mmdet 2.25.3
Precision / batch FP32 / 1
Params executed at inference 109.4 M
Params stored in the checkpoint 125.7 M
Test image demo/demo.jpg -> 800 x 1199 fed to backbone
Peak max_memory_allocated 1073 MiB (1.13 GB)
Peak max_memory_reserved 1388 MiB (1.46 GB)
Latency / image (warm, n=10) mean 113 ms (110-117)

CPU inference (--device cpu) also works and needs no GPU; it is slower.


Evaluation (as reported by the original authors)

Benchmark Metric Value Source Reproduced here?
COCO val2017 box AP 55.5 Co-DETR paper (arXiv:2211.12860) / official model zoo No

Schedule: 1x (12 epochs), 300 object queries, single-scale test, no TTA. I have not independently re-measured these numbers.


Training data

  • COCO 2017 train2017: 118k images, 80 things categories. Lin et al., Microsoft COCO: Common Objects in Context, ECCV 2014 (arXiv:1405.0312).
  • Backbone initialization: Swin-B pretrained on ImageNet-22k.

I do not redistribute COCO here. Get it from cocodataset.org. This checkpoint was trained using COCO and ImageNet initialization only; no Objects365 pretraining is described for it.


License status

The Co-DETR source code is MIT-licensed (© 2022 SenseTime X-Lab, LICENSE). The upstream repository does not provide a separate, explicit license for this checkpoint's weights. The original authors have published other Co-DETR checkpoints (the ViT-L family) on Hugging Face with MIT metadata, but I do not treat that as definitive evidence that these weights are independently licensed under MIT.

Because the applicable rights are undetermined, I set the Hub metadata for this repo to license: unknown. Verify the applicable rights yourself before redistribution or commercial use.

If you are one of the original authors and want this mirror removed or transferred, open an issue on this repo or contact dronefreak and I will action it.


Citation

@inproceedings{zong2023detrs,
  title={DETRs with Collaborative Hybrid Assignments Training},
  author={Zong, Zhuofan and Song, Guanglu and Liu, Yu},
  booktitle={Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)},
  pages={6748--6758},
  year={2023}
}

The underlying detector and backbone:

@inproceedings{zhu2021deformable,
  title={Deformable DETR: Deformable Transformers for End-to-End Object Detection},
  author={Zhu, Xizhou and Su, Weijie and Lu, Lewei and Li, Bin and Wang, Xiaogang and Dai, Jifeng},
  booktitle={International Conference on Learning Representations (ICLR)},
  year={2021}
}
@inproceedings{liu2021swin,
  title={Swin Transformer: Hierarchical Vision Transformer using Shifted Windows},
  author={Liu, Ze and Lin, Yutong and Cao, Yue and Hu, Han and Wei, Yixuan and Zhang, Zheng and Lin, Stephen and Guo, Baining},
  booktitle={Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)},
  year={2021}
}

Built with MMDetection / MMCV (OpenMMLab).


Acknowledgements

I sincerely thank Zhuofan Zong, Guanglu Song, and Yu Liu for developing Co-DETR and releasing the pretrained weights, and the OpenMMLab team for MMDetection and MMCV. This mirror only makes one of their existing checkpoints easier and more reliable to obtain.


Provenance

co_deformable_detr_swin_base_1x_coco.pth, 507,002,799 bytes, SHA-256 e9e1a0a9845f1ed2a0d799385aa9e5bd83481d9e8dbc2ed97324c50d6af303bc. I copied it byte-for-byte and unmodified from the authors' Google Drive folder 1asWoZ3SuM6APTL9D-QUF_YW9mjULNdh9.

Repo files: co_deformable_detr_swin_base_1x_coco.pth (weights), co_deformable_detr_swin_base_1x_coco.py (the MMDetection config needed to build the model), config.json (metadata summary; also what the Hub uses to count downloads), plus assets/demo_banner.mp4 / assets/demo_banner_poster.jpg for the card. config.json is descriptive only, inference: false, and is not a transformers config.

Downloads last month
15
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Dataset used to train dronefreak/co-deformable-detr-swin-b-1x-coco

Collection including dronefreak/co-deformable-detr-swin-b-1x-coco

Papers for dronefreak/co-deformable-detr-swin-b-1x-coco

Evaluation results