Skip to content

Fully Convolutional Networks for Semantic Segmentation in TensorFlow

Notifications You must be signed in to change notification settings

tonyjo/fcn_semantic_segmentation_tf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fully Convolutional Networks for Semantic Segmentation

Sample Output

alt text

Dataset

  • Traning Data: BSD [link]
  • Testing Data: VOC 2012 [link]

    Both BSD and VOC 2012 Dataset contains 21 categories of object. [Category list]

Segmentation Class

[Class list]

Prerequisites

  1. Tensorflow Version --v1.4 with CUDA > 8.0
  2. Numpy --v1.15
  3. OpenCV --v4.0
  4. Matplotlib --v2.0

Training

Once the dataset is obtained, the model properties can be configured in config_files directory:

config_files
  │ config_fcn16s_train.yaml
  | config_fcn32s_train.yaml
  | config_fcn8s_train.yaml    

and then run the following command:

./run0.sh config_files/config_fcn32s_train.yaml

or

./run0.sh config_files/config_fcn16s_train.yaml

or

./run0.sh config_files/config_fcn16s_train.yaml

Testing

./run0_test.sh config_files/config_fcn32s_test.yaml

or

./run0_test.sh config_files/config_fcn16s_test.yaml

or

./run0_test.sh config_files/config_fcn16s_test.yaml

Visualization

jupyter notebook
  │evaluate_and_viz.ipynb

Paper citation

@article{ShelhamerLD17,
  author    = {Evan Shelhamer and
               Jonathan Long and
               Trevor Darrell},
  title     = {Fully Convolutional Networks for Semantic Segmentation},
  journal   = {{IEEE} Trans. Pattern Analysis and Machine Intelligence},
  volume    = {39},
  number    = {4},
  pages     = {640--651},
  year      = {2017}
}