Skip to content
Files for a tutorial to train SegNet for road scenes using the CamVid dataset
Branch: master
Clone or download
Latest commit bb68b64 Aug 13, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
CamVid fixed image paths Dec 16, 2015
Scripts fix a typo. Jul 24, 2018
docker build opencv from sources instead of apt provided Jan 29, 2017
.gitignore Update Jul 20, 2017

SegNet and Bayesian SegNet Tutorial

This repository contains all the files for you to complete the 'Getting Started with SegNet' and the 'Bayesian SegNet' tutorials here:

Please see this link for detailed instructions.


SegNet requires a modified version of Caffe to run. Please download and compile caffe-segnet to use these models:

This version supports cudnn v2 acceleration. @TimoSaemann has a branch supporting a more recent version of Caffe (Dec 2016) with cudnn v5.1:

Getting Started with Live Demo

If you would just like to try out an example model, then you can find the model used in the SegNet webdemo in the folder Example_Models/. You will need to download the weights separately using the link in the SegNet Model Zoo.

First open Scripts/ and edit line 14 to match the path to your installation of SegNet. You will also need a webcam, or alternatively edit line 39 to input a video file instead. To run the demo use the command:

python Scripts/ --model Example_Models/segnet_model_driving_webdemo.prototxt --weights /Example_Models/segnet_weights_driving_webdemo.caffemodel --colours /Scripts/camvid12.png

Getting Started with Docker

Use docker to compile caffe and run the examples. In order to run caffe on the gpu using docker, please install nvidia-docker (see or using ansbile:

to run caffe on the CPU:

docker build -t bvlc/caffe:cpu ./cpu 
# check if working
docker run -ti bvlc/caffe:cpu caffe --version
# get a bash in container to run examples
docker run -ti --volume=$(pwd):/SegNet -u $(id -u):$(id -g) bvlc/caffe:cpu bash

to run caffe on the GPU:

docker build -t bvlc/caffe:gpu ./gpu
# check if working
docker run -ti bvlc/caffe:gpu caffe device_query -gpu 0
# get a bash in container to run examples
docker run -ti --volume=$(pwd):/SegNet -u $(id -u):$(id -g) bvlc/caffe:gpu bash

Example Models

A number of example models for indoor and outdoor road scene understanding can be found in the SegNet Model Zoo.


For more information about the SegNet architecture: Alex Kendall, Vijay Badrinarayanan and Roberto Cipolla "Bayesian SegNet: Model Uncertainty in Deep Convolutional Encoder-Decoder Architectures for Scene Understanding." arXiv preprint arXiv:1511.02680, 2015. Vijay Badrinarayanan, Alex Kendall and Roberto Cipolla "SegNet: A Deep Convolutional Encoder-Decoder Architecture for Image Segmentation." PAMI, 2017.


This software is released under a creative commons license which allows for personal and research use only. For a commercial license please contact the authors. You can view a license summary here:


Alex Kendall

Cambridge University

You can’t perform that action at this time.