Jeffri Murrugara-Llerena*1 José Henrique Lima Marques*2 Cláudio R. Jung2
1 Computer Science Department, Stony Brook University 2 Institute of Informatics, Federal University of Rio Grande do Sul
* First authors
[Paper] [Project] [Code] [BibTeX]
GauCho detects oriented objects with typical representations or Oriented Ellipses. It relies on a novel regression head designed to directly predict the parameters of 2D Gaussian distributions through the Cholesky decomposition of their covariance matrices, which theoretically mitigates the boundary discontinuity problem.
Note: Some older Pytorch versions have a significantly slower implementation of the eigendecomposition functions, and should thus be avoided
# Create environment
conda create --name gaucho python=3.8 -y
conda activate gaucho
# Install pytorch
conda install pytorch==1.11.0 torchvision==0.12.0 cudatoolkit=11.3.1 -c pytorch
# Install MMCV and MMDetection using MIM
pip install -U openmim
mim install mmcv-full
mim install mmdet\<3.0.0
# Install mmrotate-gaucho
cd mmrotate-gaucho
pip install -e .
# Build the provided image
docker build -t cvpr2025-gaucho .
# Run
docker run --gpus all --shm-size=8g -it -v {DATA_DIR}:/cvpr2025-gaucho/data cvpr2025-gaucho
Model config files are separated in a baseline and gaucho folder. Training and testing can be done using the default mmrotate scripts.
Example: Train GauCho FCOS with ProbIoU loss on DOTA 1.0
python tools/train.py \
configs_gaucho/gaucho_anchorless_dotav1/gaussian_fcos_r50_fpn_gaucho_probiou_1x_dota_le90.py
Example: Evalute GauCho FCOS
python tools/test.py \
configs_gaucho/gaucho_anchorless_dotav1/gaussian_fcos_r50_fpn_gaucho_probiou_1x_dota_le90.py \
path_to_checkpoint \
--eval mAP
We also provide simple shell scripts for mass-training / testing configuration files.
Example: Train all baseline anchor-based detectors on HRSC2016 with KLD
./train_configs configs_baseline/gaucho_one_stage_baseline_hrsc kld
If you use this model in your research, please consider citing:
@InProceedings{Marques_2025_CVPR,
author = {Marques, Jos\'e Henrique Lima and Murrugarra-Llerena, Jeffri and Jung, Claudio R.},
title = {GauCho: Gaussian Distributions with Cholesky Decomposition for Oriented Object Detection},
booktitle = {Proceedings of the Computer Vision and Pattern Recognition Conference (CVPR)},
month = {June},
year = {2025},
pages = {3593-3602}
}
Our codebase is built upon the MMRotate benchmark. Huge thanks to the OpenMMLab team and their contributors!
@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}
}
- Reorganize code to better fit MMRotate organization standards

