Mingxin Liu Peiyuan Zhang Yuan Liu Wei Zhang Yue Zhou Ning Liao Ziyang Gong Junwei Luo Zhirui Wang Yi Yu Xue Yang
We propose the first Partial Weakly-Supervised Oriented Object Detection (PWOOD) framework based on partially weak annotations (horizontal boxes or single points), which can efficiently leverage large amounts of unlabeled data, significantly outperforming weakly supervised algorithms trained with partially weak annotations, and also offers a lower cost solution.
conda create -n mm python==3.8 -y
conda activate mm
pip install torch==1.13.1+cu116 torchvision==0.14.1+cu116 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu116
pip install -U openmim
mim install mmcv-full
mim install mmdet\<3.0.0
pip install scikit-learn
pip install prettytable
# For Point branch
cd mmrotate
pip install -v -e .To divide the DOTA- v1.0/v1.5 dataset into labeled and unlabeled data, please refer to Data preparation of SOOD .
To divide the DOTA- v2.0 into labeled and unlabeled data, please refer to data_list/dotav2.
For details on how to split the DOTA dataset into patches, please refer to the official implementation .
After split, the data folder should be organized as follows:
split_ss_dota_vxx
├── train
│ ├── images
│ └── annfiles
├── val
│ ├── images
│ └── annfiles
├── train_xx_labeled
│ ├── images
│ └── annfiles
└──train_xx_unlabeled
├── images
└── annfiles
To divide the DIOR into labeled and unlabeled data, please refer to data_list/dior.
#2 GPU
CUDA_VISIBLE_DEVICES=0,1 python -m torch.distributed.launch --nnodes=1 \
--node_rank=0 --master_addr="127.0.0.1" --nproc_per_node=2 --master_port=25510 \
train.py configs_dota15/xxx/xxx.py \
--launcher pytorch \
--work-dir work_dir/xxx/
python test.py configs_dota15/xxx/xxx.py work_dir/xxx/xxx.pth | Labeled Data | mAP | Config | Model | Log |
|---|---|---|---|---|
| 20% | 62.93 | semi_h2rv2_adamw_dotav1_20p.py | best_0.629314_mAP.pth | dotav1_20p_log |
| 30% | 65.42 | semi_h2rv2_adamw_dotav1_30p.py | best_0.654153_mAP.pth | dotav1_30p_log |
| Labeled Data | mAP | Config | Model | Log |
|---|---|---|---|---|
| 10% | 52.87 | semi_h2rv2_adamw_dota15_10p.py | best_0.528748_mAP.pth | dotav15_10p_log |
| 20% | 59.36 | semi_h2rv2_adamw_dota15_20p.py | best_0.593614_mAP.pth | dotav15_20p_log |
| 30% | 61.58 | semi_h2rv2_adamw_dota15_30p.py | best_0.615836_mAP.pth | dotav15_30p_log |
| Labeled Data | mAP | Config | Model | Log |
|---|---|---|---|---|
| 10% | 31.30 | semi_h2rv2_adamw_dota2_10p.py | best_0.310266_mAP.pth | dotav2_10p_log |
| 20% | 36.39 | semi_h2rv2_adamw_dota2_20p.py | best_0.363926_mAP.pth | dotav2_20p_log |
| 30% | 40.27 | semi_h2rv2_adamw_dota2_30p.py | best_0.402659_mAP.pth | dotav2_30p_log |
| Labeled Data | mAP | Config | Model | Log |
|---|---|---|---|---|
| 10% | 54.33 | semi_h2rv2_adamw_dior_10p.py | best_0.543296_mAP.pth | doir_10p_log |
| 20% | 57.89 | semi_h2rv2_adamw_dior_20p.py | best_0.578923_mAP.pth | dior_20p_log |
| 30% | 60.42 | semi_h2rv2_adamw_dior_30p.py | best_0.604248_mAP.pth | dior_30p_log |
If you need Point version, please switch to the Point branch.
@inproceedings{liu2026pwood,
author = {Liu, Mingxin and Zhang, Peiyuan and Liu, Yuan and Zhang, Wei and Zhou, Yue and Liao, Ning and Gong, Ziyang and Luo, Junwei and Wang, Zhirui and Yu, Yi and Yang, Xue},
title = {Partial Weakly-Supervised Oriented Object Detection},
booktitle = {IEEE/CVF Conference on Computer Vision and Pattern Recognition},
month = {June},
year = {2026},
pages = {27644-27654}
}