Image for post
Image for post
Building footprints hand-labeled by community mapping teams overlaid (in yellow outline) on high resolution drone imagery in Dar es Salaam, Tanzania from the Open Cities AI Challenge dataset.

Segment buildings in African cities from aerial imagery and advance Responsible AI ideas for disaster risk management

Post by Dave Luo, Grace Doherty, Nicholas Jones, and Vivien Deparday, GFDRR Labs/World Bank


The Global Facility for Disaster Reduction and Recovery (GFDRR) is partnering with Azavea and DrivenData to introduce a new dataset and machine learning (ML) competition ($15,000 in total prizes) to improve mapping for resilient urban planning. …

An Interactive Intro to Geospatial Deep Learning on Google Colab

by daveluo (on github and elsewhere)

In this post and the accompanying Google Colab notebook, we’ll learn all the code and concepts comprising a complete workflow to automatically detect and delineate building footprints (instance segmentation) from drone imagery with cutting edge deep learning models.

All you’ll need is a Google account, an internet connection, and a couple of hours to learn how to make the data & model that learns to make something like this:

Image for post
Image for post
Building segmentation and classification of completeness in Zanzibar, interactive link: https://alpha.anthropo.co/znz-demo

In modular steps, we’ll learn to…

Preprocess image geoTIFFs and manually labeled data geoJSON files into training data for deep learning:

Image for post
Image for post
Input geoTIFF imagery and GeoJSON label files

Create a U-net segmentation model to predict what pixels in an image represent buildings (and building-related features):

Image for post
Image for post
Raw segmentation prediction vs actual

Test our model’s performance on unseen imagery with GPU or CPU:

Image for post
Image for post

Image for post
Image for post
Rapidly mapping the extent of Rohingya refugee camps in Bangladesh with drones, cloud optimized geoTIFFs, & deep learning


You open Google Maps and enter “coffee” to find shops nearby. The app proceeds to download a map of your entire city at the highest detail. You wait minutes and 100s of MBs download to your phone before 4 or 5 location pins drop closest to you.

If the app did this every time you’re in a new area or search for something different, you would probably stop using it. This scenario is extreme, even absurd, yet we often do something similar with geospatial data in deep learning.

We download full-sized satellite or aerial imagery (at 100s of MBs to GBs per image or per band), crop, resize, & tile them to the areas, sizes, & formats we need, and run our model training or inference on the end product while holding a relatively large portion of the source data unused. …


Dave Luo

Writing on tech for climate change, sustainable dev, & planetary health in the Anthropocene. Geospatial ML consultant @GFDRR Labs & making things at anthropo.co

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store