Porting Berkeley’s FCN to PyTorch without losing a percentage point
A from-scratch PyTorch reimplementation of the original FCN paper that gets within hundredths of a point of the Caffe baseline’s Mean IU on PASCAL VOC.

What it does
Implements the classic Fully Convolutional Network variants—FCN32s, FCN16s, FCN8s, and FCN8sAtOnce—in PyTorch with training scripts for PASCAL VOC. The goal is not to improve the architecture but to faithfully replicate the original Caffe implementation’s semantic segmentation scores. It packages the models and utilities so you can train or evaluate without switching frameworks.
The interesting bit
Back when PyTorch was still on version 0.2.0, simply matching Berkeley’s original numbers was a legitimate contribution. The FCN8s model here scores 65.49 Mean IU against the original’s 65.51—close enough that the gap is practically a rounding error.
Key highlights
- Reproduces all four major FCN variants from the 2015 paper.
- Scores land within roughly one percentage point (and often much closer) of the original Caffe results.
- Includes a VOC training example and pretrained model links.
- Published on PyPI as
torchfcn.
Caveats
- Requirements list PyTorch >= 0.2.0 and torchvision >= 0.1.8, so the codebase is effectively a time capsule from 2017.
- Scope is narrow: it solves FCN and FCN only; don’t expect modern segmentation bells and whistles.
Verdict
Grab this if you need a clean, verified baseline for FCN or you’re reproducing older segmentation literature. Skip it if you want a maintained, general-purpose semantic segmentation framework.
Frequently asked
- What is wkentaro/pytorch-fcn?
- A from-scratch PyTorch reimplementation of the original FCN paper that gets within hundredths of a point of the Caffe baseline’s Mean IU on PASCAL VOC.
- Is pytorch-fcn open source?
- Yes — wkentaro/pytorch-fcn is open source, released under the MIT license.
- What language is pytorch-fcn written in?
- wkentaro/pytorch-fcn is primarily written in Python.
- How popular is pytorch-fcn?
- wkentaro/pytorch-fcn has 1.8k stars on GitHub.
- Where can I find pytorch-fcn?
- wkentaro/pytorch-fcn is on GitHub at https://github.com/wkentaro/pytorch-fcn.