Skip to content
/ DCU Public

Implementation of the "Dense Convolutional Networks for Semantic Segmentation"

License

Notifications You must be signed in to change notification settings

hancy16/DCU

Repository files navigation

#Dense Convolutional Networks for Semantic Segmentation

by Chaoyi Han, Yiping Duan, Xiaoming Tao, and Jianhua Lu.

##Introduction This repository is modified from 'Pyramid Scene Parsing Network' and DeepLab v2. The implementation mainly involves the "DCU" layer and corresponding group softmax normalizations. Currently, the group normalization explicitly uses a combination of softmax layers in official caffe.

##Usage For quick start, we provide training and validation scripts on Cityscapes dataset. The example is the Res101-SPP-DCU structure introduced in our paper. Training scripts on other sturctures as well as datasets should be strightforward with minor modifications.

##Installation - Clone this repo:

git clone https://github.com/hancy16/DCU
cd DCU
- Follow the instructions of [Caffe](https://github.com/BVLC/caffe) and [DeepLab v2](https://bitbucket.org/aquariusjay/deeplab-public-ver2) for installation. 

The code is tested on Ubuntu 16.04 with CUDA 8.0.

##Training

  1. Get in the subdirectory:

    cd trainval/Cityscapes/
  2. Preparing the training Scripts on Cityscapes:

    • Modify the variable 'path' in init.sh, this contains your path to the Cityscapes dataset. The script will automatically generate the prototxt file, 'pspnet101_cityscapes_473_dcu.prototxt' and the data list, 'list/train.txt'. For any problem concerning the data list please refer to 'list/trainval_list_examples.sh'.

    • Run the scripts:

    ./init.sh 
    
    • Download the initmodel for pretraining, e.g. 'pspnet101_cityscapes.caffemodel' for Res101-SPP-DCU. Replace the variable 'INITMODEL' in 'train_test.sh' with the path to your initmodel.
  3. Run the training scripts:

    sh ./train_test.sh
    

##Testing We adopt the evaluation code in Pyramid Scene Parsing Network with some modifications. Multiscale testing and mirror testing are included in our evaluations. For how to use the scripts please refer to the PSPNET.README.

##Citation

Please consider citing:

@ARTICLE{8678765,
author={C. {Han} and Y. {Duan} and X. {Tao} and J. {Lu}},
journal={IEEE Access},
title={Dense Convolutional Networks for Semantic Segmentation},
year={2019},
volume={7},
number={},
pages={43369-43382},
keywords={Convolution;Semantics;Task analysis;Image segmentation;Standards;Benchmark testing;Training;Dense convolution unit;fully convolutional network;overlapped prediction;semantic segmentation},
doi={10.1109/ACCESS.2019.2908685},
ISSN={2169-3536},
month={},}

Contact

For any problem please contact [email protected].

About

Implementation of the "Dense Convolutional Networks for Semantic Segmentation"

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published