Monitoring Changes in Surface Water Using Satellite Image Data

Intermediate Python, Intermediate NumPy, Intermediate Matplotlib, Beginner TensorFlow, Basics of Deep Learning for Computer Vision
skills learned
Work with times series data, Perform image segmentation, Merge satellite imagery and perform operations on raster datasets, Data augmentation for boosting model training, Optimize and understand model performance
Daniel Buscombe
8 weeks · 5-8 hours per week · ADVANCED
Look inside
In this liveProject, you’ll fill the shoes of a data scientist at UNESCO (United Nations Educational, Scientific and Cultural Organization). Your job involves assessing long-term changes to freshwater deposits, one of humanity’s most important resources. Recently, two European Space Agency satellites have given you a massive amount of new data in the form of satellite imagery. Your task is to build a deep learning algorithm that can process this data and automatically detect water pixels in the imagery of a region. To accomplish this, you will design, implement, and evaluate a convolutional neural network model for image pixel classification, or image segmentation. Your challenges will include compiling your data, training your model, evaluating its performance, and providing a summary of your findings to your superiors. Throughout, you’ll use the Google Collaboratory (“Colab”) coding environment to access free GPU computer resources and speed up your training times.
This project is designed for learning purposes and is not a complete, production-ready application or solution.

book resources

When you start your liveProject, you get full access to the following books for 90 days.

project author

Daniel Buscombe
Daniel Buscombe is a geosciences researcher with 16 years experience applying innovation in computation, geostatistics, and machine learning to problems in coastal and hydraulic engineering, geophysics, hydrology and geomorphology. He has written many articles on the application of stochastic statistics, machine learning and artificial intelligence. Dan has a PhD in nearshore oceanography from the University of Plymouth, UK.


This course is for intermediate Python programmers who know basic data science techniques. You’ll augment your skills with some cutting-edge machine learning methods in demand across industry.

This course is for intermediate Python programmers. To begin this liveProject, you will need to be familiar with:

  • Basic Jupyter
  • Intermediate NumPy
  • Intermediate Matplotlib
  • Basic SciPy
  • Basic pandas
  • Intermediate Python package installation using conda and pip
  • Basics of neural networks or multi-layer perceptrons
  • Basic concepts in using digital imagery for environmental monitoring

you will learn

In this liveProject, you’ll learn to build a large-scale deep learning model to classify satellite imagery. You’ll develop techniques for handling satellite imagery data, performing geospatial operations on your data such as coordinating transformations, and optimizing model training algorithms by tuning model architecture, learning rates, loss functions and other model hyperparameters. These skills can easily be applied to a wide variety of deep learning tasks using imagery, and beyond.

  • Accessing cloud data servers to download satellite imagery
  • Manually creating your own ground truth data from imagery
  • Using the VGG-JSON image annotation format
  • Using Graphical Processing Unit (GPU) computation on Google Colab
  • Merging imagery and performing operations on raster datasets
  • Using Keras and TensorFlow for deep learning
  • Evaluating model performance by comparing estimated and observed results
  • Data augmentation for boosting model training
  • Optimizing model performance using experimentation
  • Understanding model performance metrics (such as Dice and Jaccard scores)


You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.

project outline


Prerequisites Test

New module

Get Started

1. Getting Started

1.1. Getting Started

Reading and Writing Raster Data

Working with Raster Data

Map Algebra with NumPy and SciPy

1.2. Submit Your Work

2. Data Acquisition and Pre-processing

2.1. Data Acquisition and Pre-processing

Introduction to Spatial Reference Systems

Using Spatial References with Pyproj

2.2. Submit Your Work

3. Enhancing and Segmenting Images

3.1. Enhancing and Segmenting Images

What is Deep Learning

Fairly Simple Neural Networks

Getting Started with Neural Networks

Fundamentals of Machine Learning

Welcome to Computer Vision

Deep Learning and Neural Networks

Convolutional Neural Networks

3.2. Submit Your Work

4. Model Training and Evaluation

4.1. Model Training and Evaluation

A Peek into Autoencoders

Object Detection with R-CNN, SSD, and YOLO

Introduction to Generative Modeling

4.2. Submit Your Work

5. Model Optimization

5.1. Model Optimization

Advanced Deep Learning Best Practices

Structuring Deep Learning Projects and Hyperparameters Tuning

Advanced CNN Architectures

5.2. Submit Your Work

6. Reporting to UNESCO

6.1. Reporting to UNESCO

6.2. Submit Your Work



Project Conclusions


Look inside

placing your order...

Don't refresh or navigate away from the page.
liveProject $35.99 $59.99 self-paced learning
Monitoring Changes in Surface Water Using Satellite Image Data (liveProject) added to cart
continue shopping
go to cart

Prices displayed in rupees will be charged in USD when you check out.