All Projects → DrSleep → Nas Segm Pytorch

DrSleep / Nas Segm Pytorch

Licence: other
Code for Fast Neural Architecture Search of Compact Semantic Segmentation Models via Auxiliary Cells, CVPR '19

Programming Languages

smalltalk
420 projects

Projects that are alternatives of or similar to Nas Segm Pytorch

AttaNet
AttaNet for real-time semantic segmentation.
Stars: ✭ 37 (-70.63%)
Mutual labels:  real-time, semantic-segmentation, cityscapes
Fasterseg
[ICLR 2020] "FasterSeg: Searching for Faster Real-time Semantic Segmentation" by Wuyang Chen, Xinyu Gong, Xianming Liu, Qian Zhang, Yuan Li, Zhangyang Wang
Stars: ✭ 438 (+247.62%)
Mutual labels:  semantic-segmentation, neural-architecture-search, cityscapes
Icnet Tensorflow
TensorFlow-based implementation of "ICNet for Real-Time Semantic Segmentation on High-Resolution Images".
Stars: ✭ 396 (+214.29%)
Mutual labels:  semantic-segmentation, cityscapes, real-time
Dabnet
Depth-wise Asymmetric Bottleneck for Real-time Semantic Segmentation (BMVC2019)
Stars: ✭ 109 (-13.49%)
Mutual labels:  semantic-segmentation, cityscapes, real-time
Lednet
LEDNet: A Lightweight Encoder-Decoder Network for Real-time Semantic Segmentation
Stars: ✭ 450 (+257.14%)
Mutual labels:  semantic-segmentation, real-time
Kimera Semantics
Real-Time 3D Semantic Reconstruction from 2D data
Stars: ✭ 368 (+192.06%)
Mutual labels:  semantic-segmentation, real-time
Real Time Semantic Segmentation
lightweight and efficient cnn for semantic segmentation, my blog address:
Stars: ✭ 118 (-6.35%)
Mutual labels:  semantic-segmentation, real-time
Efficient Segmentation Networks
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.)
Stars: ✭ 579 (+359.52%)
Mutual labels:  semantic-segmentation, cityscapes
Ademxapp
Code for https://arxiv.org/abs/1611.10080
Stars: ✭ 333 (+164.29%)
Mutual labels:  semantic-segmentation, cityscapes
Enet
ENet: A Deep Neural Network Architecture for Real-Time Semantic Segmentation
Stars: ✭ 530 (+320.63%)
Mutual labels:  semantic-segmentation, real-time
Lightnet
LightNet: Light-weight Networks for Semantic Image Segmentation (Cityscapes and Mapillary Vistas Dataset)
Stars: ✭ 698 (+453.97%)
Mutual labels:  semantic-segmentation, cityscapes
Mtlnas
[CVPR 2020] MTL-NAS: Task-Agnostic Neural Architecture Search towards General-Purpose Multi-Task Learning
Stars: ✭ 58 (-53.97%)
Mutual labels:  semantic-segmentation, neural-architecture-search
Pytorch Auto Drive
Segmentation models (ERFNet, ENet, DeepLab, FCN...) and Lane detection models (SCNN, SAD, PRNet, RESA, LSTR...) based on PyTorch 1.6 with mixed precision training
Stars: ✭ 32 (-74.6%)
Mutual labels:  semantic-segmentation, cityscapes
Espnetv2 Coreml
Semantic segmentation on iPhone using ESPNetv2
Stars: ✭ 66 (-47.62%)
Mutual labels:  semantic-segmentation, real-time
Espnet
ESPNet: Efficient Spatial Pyramid of Dilated Convolutions for Semantic Segmentation
Stars: ✭ 473 (+275.4%)
Mutual labels:  semantic-segmentation, real-time
Panoptic Deeplab
This is Pytorch re-implementation of our CVPR 2020 paper "Panoptic-DeepLab: A Simple, Strong, and Fast Baseline for Bottom-Up Panoptic Segmentation" (https://arxiv.org/abs/1911.10194)
Stars: ✭ 355 (+181.75%)
Mutual labels:  semantic-segmentation, cityscapes
Tusimple Duc
Understanding Convolution for Semantic Segmentation
Stars: ✭ 567 (+350%)
Mutual labels:  semantic-segmentation, cityscapes
Pspnet Tensorflow
TensorFlow-based implementation of "Pyramid Scene Parsing Network".
Stars: ✭ 313 (+148.41%)
Mutual labels:  semantic-segmentation, cityscapes
Edgenets
This repository contains the source code of our work on designing efficient CNNs for computer vision
Stars: ✭ 331 (+162.7%)
Mutual labels:  semantic-segmentation, cityscapes
Deeplabv3 Plus
Tensorflow 2.3.0 implementation of DeepLabV3-Plus
Stars: ✭ 32 (-74.6%)
Mutual labels:  semantic-segmentation, cityscapes

Neural Architecture Search of Semantic Segmentation Models (in PyTorch)

PWC PWC PWC PWC PWC PWC

This repository provides official models from two papers:

  1. Fast Neural Architecture Search of Compact Semantic Segmentation Models via Auxiliary Cells, available here;
  2. Template-Based Automatic Search of Compact Semantic Segmentation Architectures, available here.

For citations:

Fast Neural Architecture Search of Compact Semantic Segmentation Models via Auxiliary Cells
Vladimir Nekrasov, Hao Chen, Chunhua Shen, Ian Reid
CVPR, 2019

and

Template-Based Automatic Search of Compact Semantic Segmentation Architectures
Vladimir Nekrasov, Chunhua Shen, Ian Reid
WACV, 2020

Updates

22 May, 2020: Added the search script for the WACV 2020 experiments on CityScapes.

05 April, 2020 : Added decoder design and pre-trained segmentation models from the WACV 2020 paper "Template-Based Automatic Search of Compact Semantic Segmentation Architectures".

Getting Started

For flawless reproduction of our results, the Ubuntu OS is recommended. The models have been tested using Python 3.6.

Dependencies

pip3
Cython
cv2
jupyter-notebook
matplotlib
numpy
Pillow
torch>=1.0
torchvision

Inference Examples

For the ease of reproduction, we have embedded all our examples inside Jupyter notebooks.

CVPR 2019 Segmentation

Please refer to results on PASCAL VOC

CVPR 2019 Depth Estimation

Please refer to results on NYUD-v2

WACV 2020 Segmentation CityScapes

Please refer to results on CityScapes

WACV 2020 Segmentation CamVid

Please refer to results on CamVid

Note on the runtime of WACV 2020 models

In the paper we wrongly claimed that the latency of arch0 and arch1 on 2048x1048 inputs were 95.7±0.721 and 145±0.215, correspondingly (on a single 1080Ti). These numbers were incorrect as the model was in the training regime and not in the evaluation mode (model.eval() in PyTorch). Below are the characteristics of the discovered architectures with correct latency:

arch0 arch1
Number of parameters (19 output classes) 280147 268235
Latency, ms on 2048x1024 inputs 52.25±0.03 97.11±0.24
Latency, ms on 480x360 inputs 8.97±0.10 11.51±0.14

Search

If you would like to search for architectures yourself, please follow the instructions below:

CVPR 2019 (PASCAL VOC)

Prepare data

You would need to have PASCAL VOC segmentation dataset expanded with annotations from BSD.

After that, run in your terminal:

mkdir data/datasets
ln -s /path_to_voc/VOCdevkit data/datasets/

Running search

We rely on a Cython-based script for calculating mean IoU. In order to build the corresponding files, run the following:

cd src
python helpers/setup.py build_ext --build-lib=./helpers/

After that, you can execute ./examples/search/search.sh that will start the search process.

[!] Please note that all the hyperparameters were tuned for running the search process on 2 GPUs, each with at least 11GB of memory. In case when your setup differs, you would need to tune the hyperparameters accordingly.

Checking the results

We output the log-file with all information on the search process. You can easily see top-performing architectures using the following command: python src/helpers/num_uq.py path_to_genotypes.out

WACV 2020 (CityScapes)

Prepare data

You would need to have the CityScapes segmentation dataset.

After that, run in your terminal:

mkdir data/datasets
ln -s /path_to_cityscapes/cs/ data/datasets/

Running search

After that, you can execute ./examples/search/search_wacv.sh that will start the search process.

[!] Please note that all the hyperparameters were tuned for running the search process on 2 1080Ti GPUs. In case when your setup differs, you would need to tune the hyperparameters accordingly.

License

This project is free to use for non-commercial purposes - see the LICENSE file for details.

Acknowledgments

  • University of Adelaide and Australian Centre for Robotic Vision (ACRV) for making this project happen
  • HPC Phoenix cluster at the University of Adelaide for making the training of the models possible
  • PyTorch developers
  • Yerba mate tea
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].