List of awesome things around semantic segmentation 🎉

Overview

Awesome Semantic Segmentation

Awesome

List of awesome things around semantic segmentation 🎉

Semantic segmentation is a computer vision task in which we label specific regions of an image according to what's being shown. Semantic segmentation awswers for the question: "What's in this image, and where in the image is it located?".

Semantic segmentation is a critical module in robotics related applications, especially autonomous driving, remote sensing. Most of the research on semantic segmentation is focused on improving the accuracy with less attention paid to computationally efficient solutions.

Seft-driving-car

The recent appoarch in semantic segmentation is using deep neural network, specifically Fully Convolutional Network (a.k.a FCN). We can follow the trend of semantic segmenation approach at: paper-with-code.

Evaluate metrics: mIOU, accuracy, speed,...

State-Of-The-Art (SOTA) methods of Semantic Segmentation

Paper Benchmark on PASALVOC12 Release Implement
EfficientNet-L2+NAS-FPN Rethinking Pre-training and Self-training 90.5% NeurIPS 2020 TF
DeepLab V3+ Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation 89% ECCV 2018 TF, Keras, Pytorch, Demo
DeepLab V3 Rethinking Atrous Convolution for Semantic Image Segmentation 86.9% 17 Jun 2017 TF, TF
Smooth Network with Channel Attention Block Learning a Discriminative Feature Network for Semantic Segmentation 86.2% CVPR 2018 Pytorch
PSPNet Pyramid Scene Parsing Network 85.4% CVPR 2017 Keras, Pytorch, Pytorch
ResNet-38 MS COCO Wider or Deeper: Revisiting the ResNet Model for Visual Recognition 84.9% 30 Nov 2016 MXNet
RefineNet RefineNet: Multi-Path Refinement Networks for High-Resolution Semantic Segmentation 84.2% CVPR 2017 Matlab, Keras
GCN Large Kernel Matters -- Improve Semantic Segmentation by Global Convolutional Network 83.6% CVPR 2017 TF
CRF-RNN Conditional Random Fields as Recurrent Neural Networks 74.7% ICCV 2015 Matlab, TF
ParseNet ParseNet: Looking Wider to See Better 69.8% 15 Jun 2015 Caffe
Dilated Convolutions Multi-Scale Context Aggregation by Dilated Convolutions 67.6% 23 Nov 2015 Caffe
FCN Fully Convolutional Networks for Semantic Segmentation 67.2% CVPR 2015 Caffe

Variants

  • FCN with VGG(Resnet, Densenet) backbone: pytorch
  • The easiest implementation of fully convolutional networks (FCN8s VGG): pytorch
  • TernausNet (UNet model with VGG11 encoder pre-trained on Kaggle Carvana dataset paper: pytorch
  • TernausNetV2: Fully Convolutional Network for Instance Segmentation: pytorch

Review list of Semantic Segmentation

  • Evolution of Image Segmentation using Deep Convolutional Neural Network: A Survey 2020 (University of Gour Banga,India)
  • A peek of Semantic Segmentation 2018 (mc.ai)
  • Semantic Segmentation guide 2018 (towardds)
  • An overview of semantic image segmentation (jeremyjordan.me)
  • Recent progress in semantic image segmentation 2018 (arxiv, towardsdatascience)
  • A 2017 Guide to Semantic Segmentation Deep Learning Review (blog.qure.ai)
  • Review popular network architecture (medium-towardds)
  • Lecture 11 - Detection and Segmentation - CS231n (slide, vid):
  • A Survey of Semantic Segmentation 2016 (arxiv)

Case studies

  • Dstl Satellite Imagery Competition, 3rd Place Winners' Interview: Vladimir & Sergey: Blog, Code
  • Carvana Image Masking Challenge–1st Place Winner's Interview: Blog, Code
  • Data Science Bowl 2017, Predicting Lung Cancer: Solution Write-up, Team Deep Breath: Blog
  • MICCAI 2017 Robotic Instrument Segmentation: Code and explain
  • 2018 Data Science Bowl Find the nuclei in divergent images to advance medical discovery: 1st place, 2nd, 3rd, 4th, 5th, 10th
  • Airbus Ship Detection Challenge: 4th place, 6th

Most used loss functions

  • Pixel-wise cross entropy loss:
  • Dice loss: which is pretty nice for balancing dataset
  • Focal loss:
  • Lovasz-Softmax loss:

Datasets

Frameworks for segmentation

Related techniques

Feel free to show your ❤️ by giving a star

🎁 Check Out the List of Contributors - Feel free to add your details here!

Owner
Dam Minh Tien
Tech enthusiast
Dam Minh Tien
Stereo Radiance Fields (SRF): Learning View Synthesis for Sparse Views of Novel Scenes

Stereo Radiance Fields (SRF): Learning View Synthesis for Sparse Views of Novel Scenes

111 Dec 29, 2022
This is the implementation of the paper "Self-supervised Outdoor Scene Relighting"

Self-supervised Outdoor Scene Relighting This is the implementation of the paper "Self-supervised Outdoor Scene Relighting". The model is implemented

Ye Yu 24 Dec 17, 2022
Large dataset storage format for Pytorch

H5Record Large dataset ( 100G, = 1T) storage format for Pytorch (wip) Support python 3 pip install h5record Why? Writing large dataset is still a

theblackcat102 43 Oct 22, 2022
Implementation of fast algorithms for Maximum Spanning Tree (MST) parsing that includes fast ArcMax+Reweighting+Tarjan algorithm for single-root dependency parsing.

Fast MST Algorithm Implementation of fast algorithms for (Maximum Spanning Tree) MST parsing that includes fast ArcMax+Reweighting+Tarjan algorithm fo

Miloš Stanojević 11 Oct 14, 2022
Self-Supervised Learning of Event-based Optical Flow with Spiking Neural Networks

Self-Supervised Learning of Event-based Optical Flow with Spiking Neural Networks Work accepted at NeurIPS'21 [paper, video]. If you use this code in

TU Delft 43 Dec 07, 2022
Python package for Bayesian Machine Learning with scikit-learn API

Python package for Bayesian Machine Learning with scikit-learn API Installing & Upgrading package pip install https://github.com/AmazaspShumik/sklearn

Amazasp Shaumyan 482 Jan 04, 2023
An executor that performs image segmentation on fashion items

ClothingSegmenter U2NET fashion image/clothing segmenter based on https://github.com/levindabhi/cloth-segmentation Overview The ClothingSegmenter exec

Jina AI 5 Mar 30, 2022
Python package for covariance matrices manipulation and Biosignal classification with application in Brain Computer interface

pyRiemann pyRiemann is a python package for covariance matrices manipulation and classification through Riemannian geometry. The primary target is cla

447 Jan 05, 2023
PyTorch implementation of "Transparency by Design: Closing the Gap Between Performance and Interpretability in Visual Reasoning"

Transparency-by-Design networks (TbD-nets) This repository contains code for replicating the experiments and visualizations from the paper Transparenc

David Mascharka 351 Nov 18, 2022
Contrastive Language-Image Pretraining

CLIP [Blog] [Paper] [Model Card] [Colab] CLIP (Contrastive Language-Image Pre-Training) is a neural network trained on a variety of (image, text) pair

OpenAI 11.5k Jan 08, 2023
A PyTorch Implementation of "SINE: Scalable Incomplete Network Embedding" (ICDM 2018).

Scalable Incomplete Network Embedding ⠀⠀ A PyTorch implementation of Scalable Incomplete Network Embedding (ICDM 2018). Abstract Attributed network em

Benedek Rozemberczki 69 Sep 22, 2022
Code for "Steerable Pyramid Transform Enables Robust Left Ventricle Quantification"

Code for "Steerable Pyramid Transform Enables Robust Left Ventricle Quantification" This is an end-to-end framework for accurate and robust left ventr

2 Jul 09, 2022
An ever-growing playground of notebooks showcasing CLIP's impressive zero-shot capabilities.

Playground for CLIP-like models Demo Colab Link GradCAM Visualization Naive Zero-shot Detection Smarter Zero-shot Detection Captcha Solver Changelog 2

Kevin Zakka 101 Dec 30, 2022
A Comprehensive Analysis of Weakly-Supervised Semantic Segmentation in Different Image Domains (IJCV submission)

wsss-analysis The code of: A Comprehensive Analysis of Weakly-Supervised Semantic Segmentation in Different Image Domains, arXiv pre-print 2019 paper.

Lyndon Chan 48 Dec 18, 2022
A PyTorch-based open-source framework that provides methods for improving the weakly annotated data and allows researchers to efficiently develop and compare their own methods.

Knodle (Knowledge-supervised Deep Learning Framework) - a new framework for weak supervision with neural networks. It provides a modularization for se

93 Nov 06, 2022
Stochastic Normalizing Flows

Stochastic Normalizing Flows We introduce stochasticity in Boltzmann-generating flows. Normalizing flows are exact-probability generative models that

AI4Science group, FU Berlin (Frank Noé and co-workers) 50 Dec 16, 2022
Embeds a story into a music playlist by sorting the playlist so that the order of the music follows a narrative arc.

playlist-story-builder This project attempts to embed a story into a music playlist by sorting the playlist so that the order of the music follows a n

Dylan R. Ashley 0 Oct 28, 2021
A set of Deep Reinforcement Learning Agents implemented in Tensorflow.

Deep Reinforcement Learning Agents This repository contains a collection of reinforcement learning algorithms written in Tensorflow. The ipython noteb

Arthur Juliani 2.2k Jan 01, 2023
An official PyTorch Implementation of Boundary-aware Self-supervised Learning for Video Scene Segmentation (BaSSL)

An official PyTorch Implementation of Boundary-aware Self-supervised Learning for Video Scene Segmentation (BaSSL)

Kakao Brain 72 Dec 28, 2022
MoveNet Single Pose on OpenVINO

MoveNet Single Pose tracking on OpenVINO Running Google MoveNet Single Pose models on OpenVINO. A convolutional neural network model that runs on RGB

35 Nov 11, 2022