A MatConvNet-based implementation of the Fully-Convolutional Networks for image segmentation
Matlab Python Shell
Latest commit b5f3835 Jan 22, 2016 @vedaldi vedaldi sync matconvnet


MatConvNet implementation of the FCN models for semantic segmentation

This package contains an implementation of the FCN models (training and evaluation) using the MatConvNet library.

For training, look at the fcnTrain.m script, and for evaluation at fcnTest.m. The script fcnTestModelZoo.m is designed to test third party networks imported in MatConvNet (mainly from Caffe).

While we are still tuning parameters, on the PASCAL VOC 2011 validation data subset used in the FCN paper, this code has been used to train networks with this performance:

Model Test data Mean IOU Mean pix. accuracy Pixel accuracy
FCN-32s (ours) RV-VOC11 60.80 89.61 75.49
FCN-16s (ours) RV-VOC11 62.25 90.08 77.81
FCN-8s (ours) RV-VOC11 in prog. in prog. in prog.
FNC-32s (orig.) RV-VOC11 59.43 89.12 73.28
FNC-16s (orig.) RV-VOC11 62.35 90.02 75.74
FNC-8s (orig.) RV-VOC11 62.69 90.33 75.86

The original FCN models can be downloaded from the MatConvNet model repository.


This code was developed by

  • Sebastien Ehrhardt
  • Andrea Vedaldi


'Fully Convolutional Models for Semantic Segmentation', Jonathan Long, Evan Shelhamer and Trevor Darrell, CVPR, 2015 (paper).


  • v0.9.1 -- Bugfixes.
  • v0.9 -- Initial release. FCN32s and FCN16s work well.