All Projects → xiaoyufenfei → Efficient Segmentation Networks

xiaoyufenfei / Efficient Segmentation Networks

Licence: mit
Lightweight models for real-time semantic segmentationon PyTorch (include SQNet, LinkNet, SegNet, UNet, ENet, ERFNet, EDANet, ESPNet, ESPNetv2, LEDNet, ESNet, FSSNet, CGNet, DABNet, Fast-SCNN, ContextNet, FPENet, etc.)

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Efficient Segmentation Networks

Segmentation models.pytorch
Segmentation models with pretrained backbones. PyTorch.
Stars: ✭ 4,584 (+691.71%)
Mutual labels:  neural-networks, segmentation, semantic-segmentation, image-segmentation
Multiclass Semantic Segmentation Camvid
Tensorflow 2 implementation of complete pipeline for multiclass image semantic segmentation using UNet, SegNet and FCN32 architectures on Cambridge-driving Labeled Video Database (CamVid) dataset.
Stars: ✭ 67 (-88.43%)
Mutual labels:  segmentation, semantic-segmentation, image-segmentation
Erfnet pytorch
Pytorch code for semantic segmentation using ERFNet
Stars: ✭ 304 (-47.5%)
Mutual labels:  segmentation, semantic-segmentation, cityscapes
Hrnet Semantic Segmentation
The OCR approach is rephrased as Segmentation Transformer: https://arxiv.org/abs/1909.11065. This is an official implementation of semantic segmentation for HRNet. https://arxiv.org/abs/1908.07919
Stars: ✭ 2,369 (+309.15%)
Mutual labels:  segmentation, semantic-segmentation, cityscapes
Lightnet
LightNet: Light-weight Networks for Semantic Image Segmentation (Cityscapes and Mapillary Vistas Dataset)
Stars: ✭ 698 (+20.55%)
Mutual labels:  segmentation, semantic-segmentation, cityscapes
Deeplabv3 Plus
Tensorflow 2.3.0 implementation of DeepLabV3-Plus
Stars: ✭ 32 (-94.47%)
Mutual labels:  segmentation, semantic-segmentation, cityscapes
Keras Unet
Helper package with multiple U-Net implementations in Keras as well as useful utility tools helpful when working with image semantic segmentation tasks. This library and underlying tools come from multiple projects I performed working on semantic segmentation tasks
Stars: ✭ 196 (-66.15%)
Mutual labels:  segmentation, semantic-segmentation, image-segmentation
Entity
EntitySeg Toolbox: Towards Open-World and High-Quality Image Segmentation
Stars: ✭ 313 (-45.94%)
Mutual labels:  segmentation, image-segmentation, semantic-segmentation
Hyperdensenet
This repository contains the code of HyperDenseNet, a hyper-densely connected CNN to segment medical images in multi-modal image scenarios.
Stars: ✭ 124 (-78.58%)
Mutual labels:  neural-networks, segmentation, image-segmentation
Semanticsegpapercollection
Stars: ✭ 102 (-82.38%)
Mutual labels:  neural-networks, semantic-segmentation, image-segmentation
FCN-Segmentation-TensorFlow
FCN for Semantic Image Segmentation achieving 68.5 mIoU on PASCAL VOC
Stars: ✭ 34 (-94.13%)
Mutual labels:  segmentation, image-segmentation, semantic-segmentation
LightNet
LightNet: Light-weight Networks for Semantic Image Segmentation (Cityscapes and Mapillary Vistas Dataset)
Stars: ✭ 710 (+22.63%)
Mutual labels:  segmentation, semantic-segmentation, cityscapes
TensorFlow-Advanced-Segmentation-Models
A Python Library for High-Level Semantic Segmentation Models based on TensorFlow and Keras with pretrained backbones.
Stars: ✭ 64 (-88.95%)
Mutual labels:  segmentation, image-segmentation, semantic-segmentation
Neural Pipeline
Neural networks training pipeline based on PyTorch
Stars: ✭ 315 (-45.6%)
Mutual labels:  neural-networks, image-segmentation
Pspnet Tensorflow
TensorFlow-based implementation of "Pyramid Scene Parsing Network".
Stars: ✭ 313 (-45.94%)
Mutual labels:  semantic-segmentation, cityscapes
Kaggle salt bes phalanx
Winning solution for the Kaggle TGS Salt Identification Challenge.
Stars: ✭ 317 (-45.25%)
Mutual labels:  semantic-segmentation, image-segmentation
Superpoint graph
Large-scale Point Cloud Semantic Segmentation with Superpoint Graphs
Stars: ✭ 533 (-7.94%)
Mutual labels:  segmentation, semantic-segmentation
Bcdu Net
BCDU-Net : Medical Image Segmentation
Stars: ✭ 314 (-45.77%)
Mutual labels:  segmentation, semantic-segmentation
Crfasrnn keras
CRF-RNN Keras/Tensorflow version
Stars: ✭ 576 (-0.52%)
Mutual labels:  semantic-segmentation, image-segmentation
Edgenets
This repository contains the source code of our work on designing efficient CNNs for computer vision
Stars: ✭ 331 (-42.83%)
Mutual labels:  semantic-segmentation, cityscapes

Efficient-Segmentation-Networks

python-image pytorch-image

This project aims at providing an easy-to-use, modifiable reference implementation for real-time semantic segmentation models using PyTorch.

---

Table of Contents:

Requirements

PyTorch and Torchvision needs to be installed before running the scripts, PyTorch v1.1 or later is supported.

pip3 install -r requirements.txt

Models

The project supports these semantic segmentation models as follows:

  • (SQNet) Speeding up Semantic Segmentation for Autonomous Driving [Paper]
  • (LinkNet) Exploiting Encoder Representations for Efficient Semantic Segmentation [Paper]
  • (SegNet) A Deep Convolutional Encoder-Decoder Architecture for Image Segmentation [Paper]
  • (UNet) Convolutional Networks for Biomedical Image Segmentation [Paper]
  • (ENet) A Deep Neural Network Architecture for Real-Time Semantic Segmentation [Paper]
  • (ERFNet) Efficient ConvNet for Real-time Semantic Segmentation [Paper]
  • (EDANet) Efficient Dense Modules of Asymmetric Convolution for Real-Time Segmentation [Paper]
  • (ESPNet) Efficient Spatial Pyramid of Dilated Convolutions for Semantic Segmentation [Paper]
  • (ESPNetv2) A Light-weight, Power Efficient, and General Purpose ConvNet [Paper]
  • (LEDNet) A Lightweight Encoder-Decoder Network for Real-Time Semantic Segmentation [Paper]
  • (FSSNet) Fast Semantic Segmentation for Scene Perception [Paper]
  • (ESNet) An Efficient Symmetric Network for Real-time Semantic Segmentation [Paper]
  • (CGNet) A Light-weight Context Guided Network for Semantic Segmentation [Paper]
  • (Fast-SCNN) Fast Semantic Segmentation Network [Paper]
  • (DABNet) Depth-wise Asymmetric Bottleneck for Real-time Semantic Segmentation [Paper]
  • (ContextNet) Exploring Context and Detail for Semantic Segmentation in Real-time [Paper]
  • (FPENet) Feature Pyramid Encoding Network for Real-time Semantic Segmentation [Paper]
  • ...

Losses

The project supports these loss functions:

  1. Weighted Cross Entropy
  2. Weighted Cross Entropy with Label Smooth
  3. Focal Loss
  4. Ohem Cross Entropy
  5. LovaszSoftmax
  6. SegLoss-List
  7. ...

Optimizers

The project supports these optimizers:

  1. SGD
  2. Adam
  3. AdamW
  4. RAdam
  5. RAdam + Lookahead
  6. ...

Activations

  1. ReLu
  2. PReLU
  3. ReLU6
  4. Swish
  5. Mish : A Self Regularized Non-Monotonic Neural Activation Function
  6. ...

Learning Rate Scheduler

The project supports these LR_Schedulers:

  1. Poly decay
  2. Warmup Poly
  3. ...

Normalization methods

  1. In-Place Activated BatchNorm
  2. Switchable Normalization
  3. Weight Standardization
  4. ...

Enhancing Semantic Feature Learning Method

  1. Attention Family
  2. NAS Family
  3. ...

Some useful Tools

  1. pytorch-OpCounter
  2. flops-counter.pytorch
  3. Netron : Visualizer for neural network models, On line URL: Netron
  4. Falshtorch: Visualization toolkit for neural networks in PyTorch !
  5. Bag of Tricks for Image Classification with Convolutional Neural Networks
  6. ...

Dataset-Setting

This project has been tailored to suit the Cityscapes and CamVid datasets. The folds of your dataset need satisfy the following structures:

|-- dataset
|  |-- camvid
|  |  |-- train
|  |  |-- trainannot
|  |  |-- val
|  |  |-- valannot
|  |  |-- test
|  |  |-- testannot
|  |  |-- ...
|  |-- cityscapes
|  |  |-- leftImg8bit
|  |  |  |-- train
|  |  |  |-- val
|  |  |  |-- test
|  |  |-- gtFine
|  |  |  |-- train
|  |  |  |-- val
|  |  |  |-- test
|  |  |-- ...

Usage

Clone this Repo

git clone https://github.com/xiaoyufenfei/Efficient-Segmentation-Networks
cd Efficient-Segmentation-Networks

Currently, the code supports Python 3

Torch dependencies:

  • PyTorch (>=1.1.0)
  • torchvision(>=0.3.0)

Data dependencies:

Download Cityscapes and run the script createTrainIdLabelImgs.py to create annotations based on the training labels. Make sure that the folder is named cityscapes

Training
  • For Cityscapes / CamVid
  1. training on train set
python train.py  --help
  1. training on train+val set
python train.py --help
Testing
  • For Cityscapes / CamVid
python test.py --help
Predicting
  • For Cityscapes
python predict.py --help
Evaluating
  • For Cityscapes
cd tools
python trainID2labelID.py 

Contact

If you think this work useful, please give me a star! And if you find any errors or have any suggestions, please contact me.

GitHub: xiaoyufenfei Email: [email protected]

Refer to this Rep

You are encouraged to cite the following papers if this work helps your research.

@misc{Efficient-Segmentation-Networks,
  author = {Yu Wang},
  title = {Efficient-Segmentation-Networks Pytorch Implementation},
  year = {2019},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/xiaoyufenfei/Efficient-Segmentation-Networks}},
  commit = {master}
}

License

This project is released under the MIT License. See LICENSE for additional details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].