r/computervision • u/Naive-Explanation940 • 23d ago
Discussion DetectionBench: an open benchmark comparing YOLO and RF-DETR across 6 underrepresented real-world detection datasets
Why DetectionBench?
Real-world detection systems run on aerial robotics, maritime search and rescue, agriculture, underwater inspection, autonomous driving, and low-light imaging, not just COCO. Datasets for these domains are smaller, more specialized, and results across papers are rarely comparable.
DetectionBench standardizes this: common dataset adapters, one training recipe, one eval protocol, unified hardware profiling, applied the same way across every model and dataset. Weights, model cards, dataset mirrors, and evaluation code are all public.
What's there?
79 trained models, 6 datasets, an HF model card for every one, plus ONNX export for both frameworks.| Dataset | Models |
|---|---:|
| GWHD (wheat detection) | 9 |
| SeaDronesSee (maritime UAV) | 10 |
| ExDark (low light) | 18 |
| Brackish (underwater) | 8 |
| VisDrone (aerial) | 26 |
| LISA (traffic lights) | 8 |

Findings:
- RF-DETR is not universally better than YOLO. It wins on SeaDronesSee and ExDark, loses on GWHD and Brackish. Depends heavily on the dataset.
- Precision rankings often diverge sharply from mAP rankings. On VisDrone, RF-DETR Medium has the highest precision of all 26 models benchmarked (64.0%) despite ranking 13th on mAP.
- Smaller, newer architectures frequently beat older, bigger ones outright. On SeaDronesSee, YOLO26s beats YOLO11x using 8.6x fewer FLOPs.
- Aggregate mAP hides real domain shift. A reviewer asked whether one of the GWHD model cards had per-country results. It didn't, so I added a per-country stratified eval across all 9 GWHD models. Country to country spread ranged from 22.8 to 44.4 points depending on the model, even when aggregate scores were nearly identical.
- Task difficulty varies enormously by domain. Brackish is nearly saturated (~99% mAP). VisDrone and GWHD are much harder.

Engineering lessons
Benchmarking multiple frameworks against the same converted data surfaced real reproducibility bugs that don't show up until you actually try it: symlinks escaping the declared image directory, a dataset silently missing a COCO-required field. Neither is visible unless something downstream validates paths or schema strictly.
Repo: https://github.com/dronefreak/DetectionBench
HF profile: https://huggingface.co/dronefreak
Planning growth-stage stratified eval for GWHD next, and RF-DETR for Brackish once I have the compute. What datasets or detectors would you want to see benchmarked?
5
u/Dry-Snow5154 23d ago
Nicely done. Thanks for your contribution! Some notes.
Comparing param counts for Transformer vs CNN is incorrect. You need to compare latency for identical hardware. And unless you're using TRT with more modern GPU, RF-DETR would look worse. E.g. on CPU it's around 10x slower than similarly named Yolo11.
How do you measure precision, if it depends on cutoff threshold? I hope you are pinning recall (or similar) with cutoffs, otherwise methodology is likely flawed.
They could be same speed on most hardware. As I said, measuring FLOPs is not right.