Pytorch Deeplab

DeepLab-ResNet rebuilt in Pytorch
Alternatives To Pytorch Deeplab
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Pytorch Image Models24,193
a day ago92apache-2.0Python
PyTorch image models, scripts, pretrained weights -- ResNet, ResNeXT, EfficientNet, EfficientNetV2, NFNet, Vision Transformer, MixNet, MobileNet-V3/V2, RegNet, DPN, CSPNet, and more
Deeplearning Models15,594
a month ago5mitJupyter Notebook
A collection of various deep learning architectures, models, and tips
Pretrained Models.pytorch8,09452282 years ago16October 29, 201891bsd-3-clausePython
Pretrained ConvNets for pytorch: NASNet, ResNeXt, ResNet, InceptionV4, InceptionResnetV2, Xception, DPN, etc.
Segmentation_models.pytorch6,87023418 days ago10November 18, 202119mitPython
Segmentation models with pretrained backbones. PyTorch.
Tensorrtx5,186
14 days ago43mitC++
Implementation of popular deep learning networks with TensorRT network definition API
Pytorch Cifar5,131
25 days ago103mitPython
95.47% on CIFAR10 with PyTorch
Yolact4,432
7 months ago366mitPython
A simple, fully convolutional model for real-time instance segmentation.
Pytorch Opcounter4,01432610 days ago48June 30, 202262mitPython
Count the MACs / FLOPs of your PyTorch model.
Torch2trt3,786
a month ago274mitPython
An easy to use PyTorch to TensorRT converter
Mmpose3,243117 hours ago25July 06, 2022197apache-2.0Python
OpenMMLab Pose Estimation Toolbox and Benchmark.
Alternatives To Pytorch Deeplab
Select To Compare


Alternative Project Comparisons
Readme

DeepLab-ResNet-Pytorch

New! We have released Pytorch-Segmentation-Toolbox which contains PyTorch Implementations for DeeplabV3 and PSPNet with Better Reproduced Performance on cityscapes.

This is an (re-)implementation of DeepLab-ResNet in Pytorch for semantic image segmentation on the PASCAL VOC dataset.

Updates

9 July, 2017:

  • The training script train.py has been re-written following the original optimisation setup: SGD with momentum, weight decay, learning rate with polynomial decay, different learning rates for different layers, ignoring the 'void' label (255).
  • The training script with multi-scale inputs train_msc.py has been added: the input is resized to 0.5 and 0.75 of the original resolution, and 4 losses are aggregated: loss on the original resolution, on the 0.75 resolution, on the 0.5 resolution, and loss on the all fused outputs.
  • Evaluation of a single-scale model on the PASCAL VOC validation dataset (using 'SegmentationClassAug') leads to 74.0% mIoU 'VOC12_scenes_20000.pth' without CRF as post-processing step. The evaluation of multi-scale model is in progress.

Model Description

The DeepLab-ResNet is built on a fully convolutional variant of ResNet-101 with atrous (dilated) convolutions, atrous spatial pyramid pooling, and multi-scale inputs (not implemented here).

The model is trained on a mini-batch of images and corresponding ground truth masks with the softmax classifier at the top. During training, the masks are downsampled to match the size of the output from the network; during inference, to acquire the output of the same size as the input, bilinear upsampling is applied. The final segmentation mask is computed using argmax over the logits. Optionally, a fully-connected probabilistic graphical model, namely, CRF, can be applied to refine the final predictions. On the test set of PASCAL VOC, the model achieves 79.7% with CRFs and 76.4% without CRFs of mean intersection-over-union.

For more details on the underlying model please refer to the following paper:

@article{CP2016Deeplab,
  title={DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs},
  author={Liang-Chieh Chen and George Papandreou and Iasonas Kokkinos and Kevin Murphy and Alan L Yuille},
  journal={arXiv:1606.00915},
  year={2016}
}

Dataset and Training

To train the network, one can use the augmented PASCAL VOC 2012 dataset with 10582 images for training and 1449 images for validation. Pytorch >= 0.4.0.

You can download converted init.caffemodel with extension name .pth here. Besides that, one can also exploit random scaling and mirroring of the inputs during training as a means for data augmentation. For example, to train the model from scratch with random scale and mirroring turned on, simply run:

python train.py --random-mirror --random-scale --gpu 0

Evaluation

The single-scale model shows 74.0% mIoU on the Pascal VOC 2012 validation dataset ('SegmentationClassAug'). No post-processing step with CRF is applied.

The following command provides the description of each of the evaluation settings:

python evaluate.py --help

Acknowledgment

This code is heavily borrowed from pytorch-deeplab-resnet.

Other implementations

Popular Pytorch Projects
Popular Resnet Projects
Popular Machine Learning Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Python
Pytorch
Pascal
Resnet
Semantic Segmentation
Crf
Pascal Voc