The repository contains official Pytorch implementations of training and evaluation codes and pre-trained models for SegNext.
For Jittor user, https://github.com/Jittor/JSeg is a jittor version.
The paper is in Here.
The code is based on MMSegmentaion v0.24.1.
If you find our repo useful for your research, please consider citing our paper:
Notes: ImageNet Pre-trained models can be found in TsingHua Cloud.
Rank 1 on Pascal VOC dataset: Leaderboard
Method | Backbone | Pretrained | Iters | mIoU(ss/ms) | Params | FLOPs | Config | Download |
---|---|---|---|---|---|---|---|---|
SegNeXt | MSCAN-T | IN-1K | 160K | 41.4/42.2 | 4M | 7G | config | TsingHua Cloud |
SegNeXt | MSCAN-S | IN-1K | 160K | 44.3/45.8 | 14M | 16G | config | TsingHua Cloud |
SegNeXt | MSCAN-B | IN-1K | 160K | 48.5/49.9 | 28M | 35G | config | TsingHua Cloud |
SegNeXt | MSCAN-L | IN-1K | 160K | 51.0/52.1 | 49M | 70G | config | TsingHua Cloud |
Method | Backbone | Pretrained | Iters | mIoU(ss/ms) | Params | FLOPs | Config | Download |
---|---|---|---|---|---|---|---|---|
SegNeXt | MSCAN-T | IN-1K | 160K | 79.8/81.4 | 4M | 56G | config | TsingHua Cloud |
SegNeXt | MSCAN-S | IN-1K | 160K | 81.3/82.7 | 14M | 125G | config | TsingHua Cloud |
SegNeXt | MSCAN-B | IN-1K | 160K | 82.6/83.8 | 28M | 276G | config | TsingHua Cloud |
SegNeXt | MSCAN-L | IN-1K | 160K | 83.2/83.9 | 49M | 578G | config | TsingHua Cloud |
Notes: In this scheme, The number of FLOPs (G) is calculated on the input size of 512
Install MMSegmentation and download ADE20K according to the guidelines in MMSegmentation.
pip install timm
cd SegNeXt && python -m pip setup.py develop
We use 8 GPUs for training by default. Run:
./tools/dist_train.sh /path/to/config 8
To evaluate the model, run:
./tools/dist_test.sh /path/to/config /path/to/checkpoint_file 8 --eval mIoU
Install torchprofile using
pip install torchprofile
To calculate FLOPs for a model, run:
bash tools/get_flops.py /path/to/config --shape 512 512
If you have any question, please feel free to contact me via [email protected].
Our implementation is mainly based on mmsegmentaion, Segformer and Enjoy-Hamburger. Thanks for their authors.
This repo is under the Apache-2.0 license. For commercial use, please contact the authors.