tensorflow-deeplab-v3-plus  by rishizek

TensorFlow implementation for semantic image segmentation

created 7 years ago
839 stars

Top 43.3% on sourcepulse

GitHubView on GitHub
Project Summary

This repository provides a TensorFlow implementation of DeepLabv3+ for semantic image segmentation, targeting researchers and practitioners working with datasets like PASCAL VOC and Cityscapes. It aims to reproduce state-of-the-art results, offering a pre-trained model with 77.31% mIoU on PASCAL VOC 2012.

How It Works

The implementation leverages an encoder-decoder architecture with atrous separable convolutions, a key component of DeepLabv3+. It builds upon previous DeepLab versions and TensorFlow's official model implementations, utilizing ResNet-101 as the backbone. This approach allows for capturing multi-scale contextual information and precise localization, crucial for accurate semantic segmentation.

Quick Start & Requirements

  • Install: pip install -r requirements.txt
  • Prerequisites: TensorFlow >= 1.6, NumPy, Matplotlib, Pillow, OpenCV-Python.
  • Dataset Preparation: Requires downloading Cityscapes (leftImg8bit, gtFine) and PASCAL VOC datasets. Scripts are provided to convert these datasets into TFRecord format.
  • Training: Requires pre-trained ResNet v2 101 models.
  • Pre-trained Model: Available for download for inference.
  • Documentation: https://github.com/rishizek/tensorflow-deeplab-v3-plus

Highlighted Details

  • Achieves 77.31% mIoU on PASCAL VOC 2012 validation dataset with ResNet101 backbone.
  • Training time for the reported model was approximately 9.5 hours on a Tesla V100 with TensorFlow 1.6.
  • Supports training and inference on PASCAL VOC and Cityscapes datasets.
  • Includes scripts for TFRecord creation for both datasets.

Maintenance & Community

The repository appears to be a personal project with contributions from the author. There are no explicit links to community channels or a roadmap.

Licensing & Compatibility

The repository does not explicitly state a license. Given its reliance on TensorFlow and other libraries, users should verify compatibility with their intended use, especially for commercial applications.

Limitations & Caveats

The project is based on TensorFlow 1.x, which is legacy. Several features are listed as TODO, including support for Xception backbone, depthwise separable convolutions, multi-GPU support, and MS-COCO pre-training, indicating potential areas for improvement or missing functionality.

Health Check
Last commit

2 years ago

Responsiveness

1 week

Pull Requests (30d)
0
Issues (30d)
0
Star History
1 stars in the last 90 days

Explore Similar Projects

Starred by Aravind Srinivas Aravind Srinivas(Cofounder of Perplexity), Ross Taylor Ross Taylor(Cofounder of General Reasoning; Creator of Papers with Code), and
3 more.

pixel-cnn by openai

0.1%
2k
TensorFlow implementation for PixelCNN++ research paper
created 9 years ago
updated 5 years ago
Feedback? Help us improve.