Home

Awesome

fcn - Fully Convolutional Networks

PyPI Version Python Versions GitHub Actions

Chainer implementation of Fully Convolutional Networks.

Installation

pip install fcn

Inference

Inference is done as below:

# forwaring of the networks
img_file=https://farm2.staticflickr.com/1522/26471792680_a485afb024_z_d.jpg
fcn_infer.py --img-files $img_file --gpu -1 -o /tmp  # cpu mode
fcn_infer.py --img-files $img_file --gpu 0 -o /tmp   # gpu mode
<img src=".readme/fcn8s_26471792680.jpg" width="80%" >

Original Image: https://www.flickr.com/photos/faceme/26471792680/

Training

cd examples/voc
./download_datasets.py
./download_models.py

./train_fcn32s.py --gpu 0
# ./train_fcn16s.py --gpu 0
# ./train_fcn8s.py --gpu 0
# ./train_fcn8s_atonce.py --gpu 0

The accuracy of original implementation is computed with (evaluate.py) after converting the caffe model to chainer one using convert_caffe_to_chainermodel.py.
You can download vgg16 model from here: vgg16_from_caffe.npz.

FCN32s

ImplementationAccuracyAccuracy ClassMean IUFWAVACCModel File
Original90.481076.482463.626183.4580fcn32s_from_caffe.npz
Ours (using vgg16_from_caffe.npz)90.566876.874063.818083.5067-

FCN16s

ImplementationAccuracyAccuracy ClassMean IUFWAVACCModel File
Original90.997178.071065.005084.2614fcn16s_from_caffe.npz
Ours (using fcn32s_from_caffe.npz)90.967178.061765.091184.2604-
Ours (using fcn32s_voc_iter00092000.npz)91.100977.252265.362884.3675-

FCN8s

ImplementationAccuracyAccuracy ClassMean IUFWAVACCModel File
Original91.221277.614665.512684.5445fcn8s_from_caffe.npz
Ours (using fcn16s_from_caffe.npz)91.251377.149065.478984.5460-
Ours (using fcn16s_voc_iter00100000.npz)91.260878.148465.844484.6447-

FCN8sAtOnce

ImplementationAccuracyAccuracy ClassMean IUFWAVACCModel File
Original91.128878.497965.399884.4326fcn8s-atonce_from_caffe.npz
Ours (using vgg16_from_caffe.npz)91.088377.352865.343384.4276-

<img src="examples/voc/.readme/fcn32s_iter00092000.jpg" width="30%" /> <img src="examples/voc/.readme/fcn16s_iter00100000.jpg" width="30%" /> <img src="examples/voc/.readme/fcn8s_iter00072000.jpg" width="30%" />

Left to right, FCN32s, FCN16s and FCN8s, which are fully trained using this repo. See above tables to see the accuracy.

License

See LICENSE.

Cite This Project

If you use this project in your research or wish to refer to the baseline results published in the README, please use the following BibTeX entry.

@misc{chainer-fcn2016,
  author =       {Ketaro Wada},
  title =        {{fcn: Chainer Implementation of Fully Convolutional Networks}},
  howpublished = {\url{https://github.com/wkentaro/fcn}},
  year =         {2016}
}