GitHub - LikeLy-Journey/SegmenTron: Support Fast_SCNN, HRNet, Deeplabv3_plus(xce...
source link: https://github.com/LikeLy-Journey/SegmenTron
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
README.md
PyTorch for Semantic Segmentation
Introduce
This repository contains some models for semantic segmentation and the pipeline of training and testing models, implemented in PyTorch.
Model zoo
Model Backbone Datasets eval size Mean IoU(paper) Mean IoU(this repo) DeepLabv3_plus xception65 cityscape(val) (1025,2049) 78.8 78.93 DeepLabv3_plus xception65 coco(val) 480/520 - 70.50 DeepLabv3_plus xception65 pascal_aug(val) 480/520 - 89.56 DeepLabv3_plus xception65 pascal_voc(val) 480/520 - 88.39 DeepLabv3_plus resnet101 cityscape(val) (1025,2049) - 78.27 Danet resnet101 cityscape(val) (1024,2048) 79.9 79.34 Pspnet resnet101 cityscape(val) (1025,2049) 78.63 77.00real-time models
Model Backbone Datasets eval size Mean IoU(paper) Mean IoU(this repo) FPS ICnet resnet50(0.5) cityscape(val) (1024,2048) 67.8 - 41.39 DeepLabv3_plus mobilenetV2 cityscape(val) (1024,2048) 70.7 70.3 46.64 BiSeNet resnet18 cityscape(val) (1024,2048) - - 39.90 LEDNet - cityscape(val) (1024,2048) - - 31.78 CGNet - cityscape(val) (1024,2048) - - 46.11 HardNet - cityscape(val) (1024,2048) 75.9 - 69.06 DFANet xceptionA cityscape(val) (1024,2048) 70.3 - 21.46 HRNet w18_small_v1 cityscape(val) (1024,2048) 70.3 70.5 66.01 Fast_SCNN - cityscape(val) (1024,2048) 68.3 68.9 145.77FPS was tested on V100.
Environments
- python 3
- torch >= 1.1.0
- torchvision
- pyyaml
- Pillow
- numpy
INSTALL
python setup.py develop
if you do not want to run CCNet, you do not need to install, just comment following line in segmentron/models/__init__.py
from .ccnet import CCNet
Dataset prepare
Support cityscape, coco, voc, ade20k now.
Please refer to DATA_PREPARE.md for dataset preparation.
Pretrained backbone models
pretrained backbone models will be download automatically in pytorch default directory(~/.cache/torch/checkpoints/
).
Code structure
├── configs # yaml config file
├── segmentron # core code
├── tools # train eval code
└── datasets # put datasets here
Train
Train with a single GPU
CUDA_VISIBLE_DEVICES=0 python -u tools/train.py --config-file configs/cityscapes_deeplabv3_plus.yaml
Train with multiple GPUs
CUDA_VISIBLE_DEVICES=0,1,2,3 ./tools/dist_train.sh ${CONFIG_FILE} ${GPU_NUM} [optional arguments]
Eval
Eval with a single GPU
You can download trained model from model zoo table above, or train by yourself.
CUDA_VISIBLE_DEVICES=0 python -u ./tools/eval.py --config-file configs/cityscapes_deeplabv3_plus.yaml \
TEST.TEST_MODEL_PATH your_test_model_path
Eval with a multiple GPUs
CUDA_VISIBLE_DEVICES=0,1,2,3 ./tools/dist_test.sh ${CONFIG_FILE} ${GPU_NUM} \
TEST.TEST_MODEL_PATH your_test_model_path
References
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK