Code release for [Semi-Supervised Semantic Segmentation via Gentle Teaching Assistant], NeurIPS 2022.
cd GTA-Seg
conda create -n gta python=3.6.9
conda activate gta
pip install -r requirements.txt
pip install pip install torch==1.8.1+cu102 torchvision==0.9.1+cu102 -f https://download.pytorch.org/whl/torch_stable.html
For PASCAL VOC 2012
Download "VOCtrainval_11-May-2012.tar" from: http://host.robots.ox.ac.uk/pascal/VOC/voc2012/VOCtrainval_11-May-2012.tar.
And unzip the files to folder data
and make the dictionary structures as follows:
data/VOC2012
├── Annotations
├── ImageSets
├── JPEGImages
├── SegmentationClass
├── SegmentationClassAug
└── SegmentationObject
Before training, please download ResNet101 pretrained on ImageNet-1K from one of the following:
- Google Drive
- Baidu Drive Fetch Code: 3p9h
After that, modify model_urls
in models/resnet.py
to </path/to/resnet101.pth>
We can train a model on PASCAL VOC 2012 with 183
labeled data for supervision by:
cd experiments/pascal/183/ours
# use slurm
sh slurm_train.sh <num_gpu> <port> <partition>
# or use torch.distributed.launch
# sh train.sh <num_gpu> <port>
We reproduce our work based on U2PL.
Sincere gratitude to their work.
@inproceedings{jin2022semi,
title={Semi-Supervised Semantic Segmentation via Gentle Teaching Assistant},
author={Jin, Ying and Wang, Jiaqi and Lin, Dahua},
booktitle={Advances in Neural Information Processing Systems},
year={2022}
}
- Ying Jin, sherryying003@gmail.com