All Projects → ternaus → Ternausnetv2

ternaus / Ternausnetv2

Licence: bsd-3-clause
TernausNetV2: Fully Convolutional Network for Instance Segmentation

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Ternausnetv2

Lovaszsoftmax
Code for the Lovász-Softmax loss (CVPR 2018)
Stars: ✭ 1,148 (+120.35%)
Mutual labels:  jupyter-notebook, image-segmentation
Highres Net
Pytorch implementation of HighRes-net, a neural network for multi-frame super-resolution, trained and tested on the European Space Agency’s Kelvin competition.
Stars: ✭ 207 (-60.27%)
Mutual labels:  jupyter-notebook, satellite-imagery
Spacenet building detection
Project to train/test convolutional neural networks to extract buildings from SpaceNet satellite imageries.
Stars: ✭ 83 (-84.07%)
Mutual labels:  jupyter-notebook, satellite-imagery
Concise Ipython Notebooks For Deep Learning
Ipython Notebooks for solving problems like classification, segmentation, generation using latest Deep learning algorithms on different publicly available text and image data-sets.
Stars: ✭ 23 (-95.59%)
Mutual labels:  jupyter-notebook, image-segmentation
Tensorflow Segmentation
Semantic image segmentation in Tensorflow
Stars: ✭ 260 (-50.1%)
Mutual labels:  jupyter-notebook, image-segmentation
Satellite imagery analysis
Implementation of different techniques to find insights from the satellite data using Python.
Stars: ✭ 31 (-94.05%)
Mutual labels:  jupyter-notebook, satellite-imagery
Instancesegmentation sentinel2
🌱 Deep Learning for Instance Segmentation of Agricultural Fields - Master thesis
Stars: ✭ 206 (-60.46%)
Mutual labels:  jupyter-notebook, satellite-imagery
Trimap generator
Generating automatic trimap through pixel dilation and strongly-connected-component algorithms
Stars: ✭ 119 (-77.16%)
Mutual labels:  jupyter-notebook, image-segmentation
Danesfield
Kitware's system for 3D building reconstruction for the IARPA CORE3D program
Stars: ✭ 100 (-80.81%)
Mutual labels:  satellite-imagery, image-segmentation
Solt
Streaming over lightweight data transformations
Stars: ✭ 249 (-52.21%)
Mutual labels:  jupyter-notebook, image-segmentation
Robot Surgery Segmentation
Wining solution and its improvement for MICCAI 2017 Robotic Instrument Segmentation Sub-Challenge
Stars: ✭ 528 (+1.34%)
Mutual labels:  jupyter-notebook, image-segmentation
Notebooks
interactive notebooks from Planet Engineering
Stars: ✭ 339 (-34.93%)
Mutual labels:  jupyter-notebook, satellite-imagery
Keras Unet
Helper package with multiple U-Net implementations in Keras as well as useful utility tools helpful when working with image semantic segmentation tasks. This library and underlying tools come from multiple projects I performed working on semantic segmentation tasks
Stars: ✭ 196 (-62.38%)
Mutual labels:  image-segmentation, satellite-imagery
Multiclass Semantic Segmentation Camvid
Tensorflow 2 implementation of complete pipeline for multiclass image semantic segmentation using UNet, SegNet and FCN32 architectures on Cambridge-driving Labeled Video Database (CamVid) dataset.
Stars: ✭ 67 (-87.14%)
Mutual labels:  jupyter-notebook, image-segmentation
Kaggle dstl submission
Code for a winning model (3 out of 419) in a Dstl Satellite Imagery Feature Detection challenge
Stars: ✭ 159 (-69.48%)
Mutual labels:  image-segmentation, satellite-imagery
Pixel level land classification
Tutorial demonstrating how to create a semantic segmentation (pixel-level classification) model to predict land cover from aerial imagery. This model can be used to identify newly developed or flooded land. Uses ground-truth labels and processed NAIP imagery provided by the Chesapeake Conservancy.
Stars: ✭ 217 (-58.35%)
Mutual labels:  jupyter-notebook, image-segmentation
Geospatial Machine Learning
A curated list of resources focused on Machine Learning in Geospatial Data Science.
Stars: ✭ 289 (-44.53%)
Mutual labels:  image-segmentation, satellite-imagery
Pytorch Unet
Simple PyTorch implementations of U-Net/FullyConvNet (FCN) for image segmentation
Stars: ✭ 470 (-9.79%)
Mutual labels:  jupyter-notebook, image-segmentation
Cookbook and code
Stars: ✭ 511 (-1.92%)
Mutual labels:  jupyter-notebook
Hidt
Official repository for the paper "High-Resolution Daytime Translation Without Domain Labels" (CVPR2020, Oral)
Stars: ✭ 513 (-1.54%)
Mutual labels:  jupyter-notebook

=================================================================== TernausNetV2: Fully Convolutional Network for Instance Segmentation

|teaser|

We present network definition and weights for our second place solution in CVPR 2018 DeepGlobe Building Extraction Challenge_.

.. contents::

Team members

Vladimir Iglovikov, Selim Seferbekov, Alexandr Buslaev, Alexey Shvets

Citation

If you find this work useful for your publications, please consider citing::

  @InProceedings{Iglovikov_2018_CVPR_Workshops,
       author = {Iglovikov, Vladimir and Seferbekov, Selim and Buslaev, Alexander and Shvets, Alexey},
        title = {TernausNetV2: Fully Convolutional Network for Instance Segmentation},
    booktitle = {The IEEE Conference on Computer Vision and Pattern Recognition (CVPR) Workshops},
        month = {June},
         year = {2018}
        }

Overview

Automatic building detection in urban areas is an important task that creates new opportunities for large scale urban planning and population monitoring. In a CVPR 2018 Deepglobe Building Extraction Challenge_ participants were asked to create algorithms that would be able to perform binary instance segmentation of the building footprints from satellite imagery. Our team finished second and in this work we share the description of our approach, network weights_ and code that is sufficient for inference.

Data

The training data for the building detection subchallenge originate from the SpaceNet dataset_. The dataset uses satellite imagery with 30 cm resolution collected from DigitalGlobe’s WorldView-3 satellite. Each image has 650x650 pixels size and covers 195x195 m2 of the earth surface. Moreover, each region consists of high-resolution RGB, panchromatic, and 8-channel low-resolution multi-spectral images. The satellite data comes from 4 different cities: Vegas, Paris, Shanghai, and Khartoum with different coverage, of (3831, 1148, 4582, 1012) images in the train and (1282, 381, 1528, 336) images in the test sets correspondingly.

Method

The originial TernausNet_ was extened in a few ways:

  1. The encoder was replaced with WideResnet 38 that has In-Place Activated BatchNorm_.

  2. The input to the network was extended to work with 11 input channels. Three for RGB and eight for multispectral data.

    In order to make our network to perform instance segmentation, we utilized the idea that was proposed and successfully executed by Alexandr Buslaev, Selim Seferbekov and Victor Durnov in their winning solutions of the Urban 3d_ and Data Science Bowl 2018_ challenges.

  3. Output of the network was modified to predict both the binary mask in which we predict building / non building classes on the pixel level and binary mask in which we predict areas of an image where different objects touch or very close to each other. These predicted masks are combined and used as an input to the watershed transform.

|network|

Results

Result on the public and private leaderboard with respect to the metric that was used by the organizers of the CVPR 2018 DeepGlobe Building Extraction Challenge_.

.. table:: Results per city

============= =================== ===================
City:         Public Leaderboard  Private Leaderboard
============= =================== ===================
Vegas         0.891               0.892
Paris         0.781               0.756
Shanghai      0.680               0.687
Khartoum      0.603               0.608
------------- ------------------- -------------------
Average       0.739               0.736
============= =================== ===================

Dependencies

  • Python 3.6
  • PyTorch 0.4
  • numpy 1.14.0
  • opencv-python 3.3.0.10

Demo Example

Network `weights`_


You can easily start using our network and weights, following the demonstration example
  `demo.ipynb`_

..  _`demo.ipynb`: https://github.com/ternaus/TernausNetV2/blob/master/Demo.ipynb
.. _`Selim Seferbekov`: https://www.linkedin.com/in/selim-seferbekov-474a4497/
.. _`Alexey Shvets`: https://www.linkedin.com/in/shvetsiya/
.. _`Vladimir Iglovikov`: https://www.linkedin.com/in/iglovikov/
.. _`Alexandr Buslaev`: https://www.linkedin.com/in/al-buslaev/
.. _`CVPR 2018 DeepGlobe Building Extraction Challenge`: https://competitions.codalab.org/competitions/18544
.. _`TernausNet`: https://arxiv.org/abs/1801.05746
.. _`U-Net`: https://arxiv.org/abs/1505.04597
.. _`Urban 3d`: https://www.spiedigitallibrary.org/conference-proceedings-of-spie/10645/0000/Urban-3D-challenge--building-footprint-detection-using-orthorectified-imagery/10.1117/12.2304682.short?SSO=1
.. _`Data Science Bowl 2018`: https://www.kaggle.com/c/data-science-bowl-2018/
.. _`WideResnet 38 that has In-Place Activated BatchNorm`: https://arxiv.org/abs/1712.02616
.. _`SpaceNet dataset`: https://spacenetchallenge.github.io/
.. _`weights`: https://drive.google.com/open?id=1k95VGNZG74Vvu-X-MSpbaHjMDvNEepIi


.. |network| image:: https://habrastorage.org/webt/jx/ni/ki/jxnikimnmkmkrrqlvcl6memouso.png
.. |teaser| image:: https://habrastorage.org/webt/ko/b2/tw/kob2twhjzjfnauix7ljted07ga8.png
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].