Using fully convolutional networks for semantic segmentation with caffe for the cityscapes dataset

Overview

Using fully convolutional networks for semantic segmentation (Shelhamer et al.) with caffe for the cityscapes dataset

How to get started

  • Download the cityscapes dataset and the vgg-16-layer net
  • Modify the images in the dataset with cut_images.py or downscale_images.py for less resource demanding training and evaluation
  • Create the 32 pixel stride net with net_32.py
  • Modify the paths in train.txt and val.txt (first line: path to training/validation images, second line: path to annotations)
  • Start training with solve_start.py
  • Run evaluate_models.py to evaluate your model or create_eval_images.py to create images with pixel label ids

Sources

Fully Convolutional Models for Semantic Segmentation:

Shelhamer, Evan, Jonathon Long, and Trevor Darrell. "Fully Convolutional Networks for Semantic Segmentation." PAMI, 2016, URL http://fcn.berkeleyvision.org

Cityscapes Dataset (Semantic Understanding of Urban Street Scenes):

Cordts, Marius, et al. "The cityscapes dataset." CVPR Workshop on The Future of Datasets in Vision. 2015, URL https://www.cityscapes-dataset.com

Caffe Deep Learning Framework:

Jia, Yangqing, et al. "Caffe: Convolutional architecture for fast feature embedding." Proceedings of the 22nd ACM international conference on Multimedia. ACM, 2014, URL http://caffe.berkeleyvision.org

You might also like...
hipCaffe: the HIP port of Caffe

Caffe Caffe is a deep learning framework made with expression, speed, and modularity in mind. It is developed by the Berkeley Vision and Learning Cent

MMdnn is a set of tools to help users inter-operate among different deep learning frameworks. E.g. model conversion and visualization. Convert models between Caffe, Keras, MXNet, Tensorflow, CNTK, PyTorch Onnx and CoreML.
MMdnn is a set of tools to help users inter-operate among different deep learning frameworks. E.g. model conversion and visualization. Convert models between Caffe, Keras, MXNet, Tensorflow, CNTK, PyTorch Onnx and CoreML.

MMdnn MMdnn is a comprehensive and cross-framework tool to convert, visualize and diagnose deep learning (DL) models. The "MM" stands for model manage

 a reimplementation of LiteFlowNet in PyTorch that matches the official Caffe version
a reimplementation of LiteFlowNet in PyTorch that matches the official Caffe version

pytorch-liteflownet This is a personal reimplementation of LiteFlowNet [1] using PyTorch. Should you be making use of this work, please cite the paper

The original weights of some Caffe models, ported to PyTorch.

pytorch-caffe-models This repo contains the original weights of some Caffe models, ported to PyTorch. Currently there are: GoogLeNet (Going Deeper wit

Caffe-like explicit model constructor. C(onfig)Model

cmodel Caffe-like explicit model constructor. C(onfig)Model Installation pip install git+https://github.com/bonlime/cmodel Usage In order to allow usi

PyTorch implementation of ShapeConv: Shape-aware Convolutional Layer for RGB-D Indoor Semantic Segmentation.
PyTorch implementation of ShapeConv: Shape-aware Convolutional Layer for RGB-D Indoor Semantic Segmentation.

Shape-aware Convolutional Layer (ShapeConv) PyTorch implementation of ShapeConv: Shape-aware Convolutional Layer for RGB-D Indoor Semantic Segmentatio

Semantic Segmentation of images using PixelLib with help of Pascalvoc dataset trained with Deeplabv3+ framework.
Semantic Segmentation of images using PixelLib with help of Pascalvoc dataset trained with Deeplabv3+ framework.

CARscan- Approach 1 - Segmentation of images by detecting contours. It failed because in images with elements along with cars were also getting detect

Mae segmentation - Reproduction of semantic segmentation using masked autoencoder (mae)

ADE20k Semantic segmentation with MAE Getting started Install the mmsegmentation

End-to-End Object Detection with Fully Convolutional Network
End-to-End Object Detection with Fully Convolutional Network

This project provides an implementation for "End-to-End Object Detection with Fully Convolutional Network" on PyTorch.

Comments
  • only get mIOU 56% on cityscape dataset

    only get mIOU 56% on cityscape dataset

    Hi Simon,

    I downloaded your weight file "cityscapes-fcn8s-2x.caffemodel" and used the "deploy_8s.prototxt" for evaluation on the 500 validation images of cityscape, however, I only got 56% mean class IOU. I followed the evaluation code on your github. Do you think it is a reasonable result on this model file? Do you have another model file which can achieve 60.8% mentioned in your report? Thanks so much!

    Best,

    opened by xhnie 3
  • Converting scores to RGB image

    Converting scores to RGB image

    Hello,

    I am trying to understand your model output a bit by taking a look at create_eval_images.py. Can the score be treated as segmentation values?

    I managed to convert the caffemodel to Apple's Core ML. The counts of the multi dimensional output array is as follows: [1, 1, 19, 500, 500]

    I would like to convert each score to some RGB color and export an image using those colors. Is this possible in the current implementation?

    Regards, Giovanni

    opened by gi097 1
  • How to set batch size?

    How to set batch size?

    I tried this code to train a fcn on cityscapes, yet I found the batch size might not be changed in solve_start.py. could you please explain a little bit about this? Thanks

    opened by Luoyadan 1
  • Test

    Test

    Can you tell me how to test the mean iou in the cityscape test set online? Because the cityscape test set has no tags, online testing is required, but I don't know what to do.I uploaded the test results as he asked, but there was always Content of zip archive does not match specifications. Not all predictions for all images were found. Thank you very much!

    opened by InstantWindy 0
Owner
Simon Guist
PhD Student at Max Planck Institute for Intelligent Systems
Simon Guist
U-Net Implementation: Convolutional Networks for Biomedical Image Segmentation" using the Carvana Image Masking Dataset in PyTorch

U-Net Implementation By Christopher Ley This is my interpretation and implementation of the famous paper "U-Net: Convolutional Networks for Biomedical

Christopher Ley 1 Jan 6, 2022
This repository implements and evaluates convolutional networks on the Möbius strip as toy model instantiations of Coordinate Independent Convolutional Networks.

Orientation independent Möbius CNNs This repository implements and evaluates convolutional networks on the Möbius strip as toy model instantiations of

Maurice Weiler 59 Dec 9, 2022
LoveDA: A Remote Sensing Land-Cover Dataset for Domain Adaptive Semantic Segmentation (NeurIPS2021 Benchmark and Dataset Track)

LoveDA: A Remote Sensing Land-Cover Dataset for Domain Adaptive Semantic Segmentation by Junjue Wang, Zhuo Zheng, Ailong Ma, Xiaoyan Lu, and Yanfei Zh

Kingdrone 174 Dec 22, 2022
Recall Loss for Semantic Segmentation (This repo implements the paper: Recall Loss for Semantic Segmentation)

Recall Loss for Semantic Segmentation (This repo implements the paper: Recall Loss for Semantic Segmentation) Download Synthia dataset The model uses

null 32 Sep 21, 2022
Another pytorch implementation of FCN (Fully Convolutional Networks)

FCN-pytorch-easiest Trying to be the easiest FCN pytorch implementation and just in a get and use fashion Here I use a handbag semantic segmentation f

Y. Dong 158 Dec 21, 2022
PyTorch Implementation of Fully Convolutional Networks. (Training code to reproduce the original result is available.)

pytorch-fcn PyTorch implementation of Fully Convolutional Networks. Requirements pytorch >= 0.2.0 torchvision >= 0.1.8 fcn >= 6.1.5 Pillow scipy tqdm

Kentaro Wada 1.6k Jan 7, 2023
Another pytorch implementation of FCN (Fully Convolutional Networks)

FCN-pytorch-easiest Trying to be the easiest FCN pytorch implementation and just in a get and use fashion Here I use a handbag semantic segmentation f

Y. Dong 158 Dec 21, 2022
BMW TechOffice MUNICH 148 Dec 21, 2022
Speech Separation Using an Asynchronous Fully Recurrent Convolutional Neural Network

Speech Separation Using an Asynchronous Fully Recurrent Convolutional Neural Network This repository is the official implementation of Speech Separati

Kai Li (李凯) 116 Nov 9, 2022
Caffe: a fast open framework for deep learning.

Caffe Caffe is a deep learning framework made with expression, speed, and modularity in mind. It is developed by Berkeley AI Research (BAIR)/The Berke

Berkeley Vision and Learning Center 33k Dec 28, 2022