All Projects → daveluo → Zanzibar Aerial Mapping

daveluo / Zanzibar Aerial Mapping

Licence: apache-2.0
Open source notebooks to create state-of-the-art detection, segmentation, & classification of buildings on drone/aerial imagery with deep learning

Projects that are alternatives of or similar to Zanzibar Aerial Mapping

Artificial Intelligence Projects
Collection of Artificial Intelligence projects.
Stars: ✭ 152 (-0.65%)
Mutual labels:  jupyter-notebook
Ssd keras
简明 SSD 目标检测模型 keras version(交通标志识别 训练部分见 dev 分支)
Stars: ✭ 152 (-0.65%)
Mutual labels:  jupyter-notebook
Pytorch stylegan encoder
Pytorch implementation of a StyleGAN encoder. Images to latent space representation.
Stars: ✭ 151 (-1.31%)
Mutual labels:  jupyter-notebook
Mine pytorch
MINE: Mutual Information Neural Estimation in pytorch (unofficial)
Stars: ✭ 152 (-0.65%)
Mutual labels:  jupyter-notebook
3 Min Pytorch
<펭귄브로의 3분 딥러닝, 파이토치맛> 예제 코드
Stars: ✭ 152 (-0.65%)
Mutual labels:  jupyter-notebook
Cognitive Vision Python
Jupyter Notebook with Python samples for the Cognitive Services Computer Vision API
Stars: ✭ 152 (-0.65%)
Mutual labels:  jupyter-notebook
Simfin Tutorials
Tutorials for SimFin - Simple financial data for Python
Stars: ✭ 150 (-1.96%)
Mutual labels:  jupyter-notebook
Code For Learn Machinelearning
Stars: ✭ 153 (+0%)
Mutual labels:  jupyter-notebook
Pytorch Pose Estimation
PyTorch Implementation of Realtime Multi-Person Pose Estimation project.
Stars: ✭ 152 (-0.65%)
Mutual labels:  jupyter-notebook
Qml Mooc
Lecture notebooks and coding assignments for the quantum machine learning MOOC created by Peter Wittek on EdX in the Spring 2019
Stars: ✭ 152 (-0.65%)
Mutual labels:  jupyter-notebook
Stanford Cs229
Python solutions to the problem sets of Stanford's graduate course on Machine Learning, taught by Prof. Andrew Ng
Stars: ✭ 151 (-1.31%)
Mutual labels:  jupyter-notebook
Improved Seam Carving
A numpy implementation of forward energy from the paper “Improved Seam Carving for Video Retargeting" (2008)
Stars: ✭ 152 (-0.65%)
Mutual labels:  jupyter-notebook
Alphalens
Performance analysis of predictive (alpha) stock factors
Stars: ✭ 2,130 (+1292.16%)
Mutual labels:  jupyter-notebook
Santander Customer Transaction Prediction
2nd Place Solution 💰🥈
Stars: ✭ 152 (-0.65%)
Mutual labels:  jupyter-notebook
Python 100 Days Master
python100天学习资料
Stars: ✭ 152 (-0.65%)
Mutual labels:  jupyter-notebook
Amitt framework
Repo replaced by cogsec-collaborative/AMITT
Stars: ✭ 152 (-0.65%)
Mutual labels:  jupyter-notebook
Pennai
PennAI: AI-Driven Data Science
Stars: ✭ 152 (-0.65%)
Mutual labels:  jupyter-notebook
Sentiment analysis
This is the code for "Sentiment Analysis - Data Lit #1" by Siraj Raval on Youtube
Stars: ✭ 153 (+0%)
Mutual labels:  jupyter-notebook
Mish
Mish Deep Learning Activation Function for PyTorch / FastAI
Stars: ✭ 153 (+0%)
Mutual labels:  jupyter-notebook
Pyspark Pictures
Learn the pyspark API through pictures and simple examples
Stars: ✭ 152 (-0.65%)
Mutual labels:  jupyter-notebook

Aerial Mapping with Drones & Deep Learning in Zanzibar, Tanzania

Motivation:

Open source R&D notebooks of all the steps (deep learning and otherwise) to create a state of the art deep learning building detector & classifier from high-resolution aerial/drone imagery. Something like this:

Interactive version: https://alpha.anthropo.co/znz-demo

static/znz-demo.gif

7/25/2019 Update:

In process of rewriting everything as a series of interactive geospatial deep learning tutorials on Google Colab.

See 1st tutorial published 7/25/2019 for a complete data creation, model creation, inference, and evaluation workflow for building segmentation:

Prior dev notebooks can be found in /archive with details preserved below the line:


Results:

As of 1/18/2019 (internal val only):

Mean F1 score Foundation F1 Unfinished F1 Completed F1 All Buildings F1
Internal Val (grid 042) 0.728 0.718 0.755 0.710 0.796

Top 2 in WeRobotics' Open AI Tanzania Challenge

Mean F1 score Foundation F1 Unfinished F1 Completed F1 All Buildings F1
Final Test (grids 059, 066) 0.697 0.744 0.692 0.655 0.723
Internal Val (grid 042) 0.696 0.683 0.749 0.656 0.757

Background:

https://blog.werobotics.org/2018/08/06/welcome-to-the-open-ai-tanzania-challenge/

Maps are absolutely essential for decision support. Knowing where buildings are located is a fundamental input for urban planning, public safety, public health, disaster response, environmental protection, sustainable development and census data, for example. Some of these applications typically require timely and high-resolution maps.

https://blog.werobotics.org/wp-content/uploads/2018/08/zmi-geonode.png

Take the following scenario: a local organization that provides low-cost solar panels to low-income households in rural Tanzania is evaluating a large neighborhood with many small houses. They have to determine how to best optimize the installation and distribution of their panels. So they need to know which of the residential structures are oriented in a way that makes them more suitable for solar panels. Knowing where these small houses are and what their orientation is vis-a-vis the sun and surrounding trees, what their roofs look like to determine where to place the panels, and what materials the roofs are made of are all key inputs for their planning. This is just one of many applications for high-resolution maps.

https://competitions.codalab.org/competitions/20100#learn_the_details

Open AI Tanzania — is a partnership with our friends at the State University of Zanzibar (SUZA), WeRobotics, World Bank, OpenAerialMap and Tanzania Flying Labs. Open AI Tanzania invites data scientists to develop feature detection algorithms that can automatically identify buildings and building types using high-resolution aerial imagery collected by Tanzanian drone pilots through the Zanzibar Mapping Initiative (ZMI). The goal of this challenge is to correctly segment and classify building footprints under various stages of construction.

Source imagery & training data license

We request that all participants fill out a Google Form.

The imagery data is released as OpenData using the Creative Commons Attribution 4.0 International license, attribution must be given to: Commission for Lands (COLA), Revolutionary Government of Zanzibar (RGoZ)

Overview:

Training workflow:

static/overview_train.png

Prediction workflow:

static/overview_predict.png

Notebooks (7/25/19 moved to archive):

archive/znz-segment-buildingfootprint-20190108-alldata.ipynb

  • segmentation model for pixel-level mapping of every building structure, regardless of condition
  • trained on image chips at three zooms: z20, z19, z18
  • combined BCE/dice loss function, pretrained resnet34 encoder
  • dice: 0.863, accuracy: 98.1%

archive/znz-classify-buildings-20190118.ipynb

  • building classification by condition (Complete, Incomplete, Foundation, Empty) after detection/segmentation
  • BCE loss, pretrained resnet50
  • accuracy: 94%

archive/znz-inference-20190118.ipynb

  • windowed reads and sub-windowed reads with rasterio to run inference on cloud-optimized geotiffs (COG) of arbitirary sizes
  • merge back to full cog extent

archive/znz-postprocess-20190118.ipynb

  • thresholding, polygonization of windowed reads, deduping, save as geojson
  • creating detected building crops for classifier
  • updating geojson with class predictions

archive/znz-eval-20190118.ipynb

Ready-to-train preprocessed datasets

znz-segment-z19.zip (212 MB):

  • 2,691 512x512 square image chips at zoom level 19 (~0.3m/pixel) as .jpg files with corresponding binary masks as .png files
  • Unzips as znz-train-z19-all-buffered/images-512 and znz-train-z19-all-buffered/masks-512

znz-classify.zip (259 MB):

  • 20,176 images of various sizes & shapes labeled as 4 classes: Complete, Incomplete, Foundation, Empty
  • Unzips as /images

Thanks

  • Commission for Lands (COLA), Revolutionary Government of Zanzibar (RGoZ)
  • Zanzibar Mapping Initiative
  • WeRobotics
  • OpenAerialMap
  • Fast.ai team and library v1
  • Fast.ai forum participants and fellow students (particularly @KarlH, @henripal for code/nbs)

TO DO

  • [x] train segmentation model in fastai v1 up to or exceeding prior performance level of dice = 0.847, accuracy = 0.977 from fastai v0.7
  • [x] polygonization nb
  • [x] prediction thresholding and clean-up nb
  • [x] evaluation scripts
  • [x] training image mask/tile creation nb
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].