/Fast_Seg

This repo provides :zap: fast:zap: semantic segmentation models on CityScapes/Camvid DataSet by Pytorch

Primary LanguagePythonApache License 2.0Apache-2.0

⚡Fast_Seg⚡

This repo try to implement state-of-art fast semantic segmentation model s on road scene dataset(CityScape, Mapillary, Camvid).

News!!

Check out our Fast Segmentation Framework in SFSegNets. SFNet-ECCV-2020, SFNet-Lite, IJCV-2023

What is the purpose of this repo?

This repo aims to do experiments and verify the idea of fast semantic segmentation, and this repo also provides some fast models.

Our ICnet implementation achieves 74.5% mIoU, which is 5% point higher than the original paper. !!!!! Here: model

Another Link For Accurate Seg:

GALD-net provides some state-of-art accurate methods of implementation.

Model Zoo (Updating)

  1. ICNet: ICnet for real-time semantic segmentation on high-resolution images. ECCV-2018, paper
  2. DF-Net: Partial Order Pruning: for Best Speed/Accuracy Trade-off in Neural Architecture Search.CVPR-2019, paper
  3. Bi-Seg: Bilateral segmentation network for real-time semantic segmentation.ECCV-2018, paper
  4. DFA-Net: Deep feature aggregation for real-time semantic segmentation.CVPR-2019,paper
  5. ESP-Net: Efficient Spatial Pyramid of Dilated Convolutions for Semantic Segmentation. ECCV-2018,paper
  6. SwiftNet: In defense of pre-trained imagenet architectures for real-time semantic segmentation of road-driving images. CVPR2019, paper
  7. Real-Time Semantic Segmentation via Multiply Spatial Fusion Network.(face++) arxiv,paper
  8. Fast-SCNN: Fast Semantic Segmentation Network.BMVC-2019 paper

Usage

  1. use train_distribute.py for training For example, use scripts in exp floder for training and evaluation.
  2. use prediction_test_different_size.py for prediction with different size input.

Datasets Perparation

Some Advice on Training

  1. use syn-bn(apex).
  2. use batch-size >=8.
  3. use deep supervised loss for easier optimation.
  4. use large crop size during training.
  5. longer training time for small models(60,000 interaction or more).
  6. use Mapillary data for pretraining for boosting performance.
  7. Deeply based resnet runs slowly than torch pretrained resnet but with higher accuracy.
  8. The small network doesn't need ImageNet pretraining if training longer time on Cityscape.(Fast-SCNN paper)
(a) test image (b) ground truth (c) predicted result
a b c

License

This project is released under the Apache 2.0 license.

Acknowledgement

Thanks to the previous open-sourced repo: Encoding CCNet TorchSeg pytorchseg