
Explore deep learning applications for earth observation by processing satellite imagery to map building footprints, perform land use classification, detect landslides, and enable object detection and image segmentation.
Explore convolutional neural networks for image analysis, detailing input, convolutional and max pooling hidden layers, followed by a fully connected layer and softmax classification for earth observation tasks.
Learn python for earth observation data with a beginner-friendly guide to installation, basics, control flow, functions, classes, and libraries like numpy, pandas, and matplotlib.
Set up deep learning tools on your local machine and in Google Colab, installing Jupyter, TensorFlow, and leveraging Colab for memory and GPU constraints.
Compare local deep learning environments to Google Colab for earth observation, highlighting data privacy, installation ease, and access to free GPUs and RAM.
Learn to download and install Anaconda on Windows, set up a deep learning environment, and configure the path for conda, with optional Google Colab as an alternative.
Install and verify TensorFlow on Windows using Anaconda, create a Python 3.9 virtual environment, upgrade pip, test GPU availability, or use Google Colab for free GPU.
Learn to install TensorFlow in a virtual environment, add its kernel to Jupyter notebook with ipykernel, and verify TensorFlow by importing it in a running notebook.
Install and configure Matplotlib, GDAL, and Rasterio within a virtual environment, enabling raster and vector data work with TIFF datasets; notes on Google Colab as an option; verify imports.
Learn to run and validate TensorFlow in Google Colab, install the library, execute code cells, and enable GPU to accelerate neural network training.
Create an area of interest in ArcGIS Pro, load a waterbody polygon, and clip Landsat or Sentinel imagery to prepare a deep learning dataset for waterbody extraction.
Learn to download sentinel-2 MSI imagery from gee by filtering data with cloud under five percent, clip to area of interest, select bands 2,3,4,8, median, and export to google drive.
Create the output imagery for deep learning by combining zero-valued AOI rasters with a one-valued water mask using raster calculator, preparing tiles for deep learning model input.
Create deep learning training data by exporting 256x256 tiles and labeled water and non-water classes in ArcGIS Pro, with options for Pascal Vue or XML labels.
Explore the Sentinel-2 input dataset with RGB and NIR bands at 10 meter resolution, and learn to tile imagery for a deep learning training dataset using zero time.
Discover the geotile package, a Python library for tiling geographic raster datasets, with installation steps, basic functionality, and Google Colab support, plus guidance to consult the documentation.
Generate and mosaic tiles from sentinel-2 imagery for deep learning water-body segmentation, using zero tile in Colab to produce 256 by 256 tiles with 128 overlap and masking.
Introduce image classification with deep learning applied to satellite imagery, classifying into ten classes such as industrial area, forest, residential, and river, and compare classification, object detection, and segmentation.
Explore a land use and land cover dataset based on Sentinel-2 with ten classes, 13 spectral bands, and about 27,000 samples, for training a convolutional neural network on satellite imagery.
Apply a ResNet-50 based image classifier to ten earth observation classes using TensorFlow and Keras, with 80/20 train-validation split, data preparation, training, saving, and confusion-matrix evaluation.
Explore deep learning object detection with the YOLO model, showcasing fast detection in images and videos, using a satellite imagery dataset to identify cars and swimming pools.
Explore a Kaggle satellite imagery dataset for car and swimming pool detection, including train and test splits, bounding box annotations in YOLO format, and guidance to create labeled patches.
Learn how to perform object detection with YOLOv4 tiny on earth observation data in Google Colab, including Kaggle datasets, training steps, and testing results for cars and swimming pools.
Explore a building-detection dataset with 128 by 128 rgb images and a single-band label, featuring a 70/30 train-test split, download from Kaggle, and upload to drive for model testing.
Apply a lightweight unet model to detect buildings in satellite imagery by preparing train and test datasets in Google Colab, training with TensorFlow, and evaluating with a thresholded output.
Learn to perform multiclass land use and land cover mapping from RGB satellite imagery, classifying pixels into background, building, vegetation, and water using one-hot encoding and softmax with cross-entropy loss.
Learn to convert an image to a NumPy (.npy) file using the building mapping node notebook, save the one-dimensional array, and verify the saved file in your drive.
Convert numpy files to images by loading the array and saving results. Handle one or three channels, and extract the first band (unsigned eight-bit) for train and test datasets.
Explore landslide inventory detection using a CNN on Sentinel-2 data, combining six spectral bands with slope and elevation features, through a TensorFlow train-validate pipeline to improve the F1 score.
Explore how the attention unit focuses on relevant pixels, weighting landslide areas more while reducing computation during training. Apply this approach to earth observation tasks with SAR data.
Learn landslide detection on SAR data with an attention unit segmentation model, train with dice loss, evaluate using IOU and F1, and optimize hyperparameters.
Deep Learning is a subset of Machine Learning that uses mathematical functions to map the input to the output. These functions can extract non-redundant information or patterns from the data, which enables them to form a relationship between the input and the output. This is known as learning, and the process of learning is called training.
With the rapid development of computing, the interest, power, and advantages of automatic computer-aided processing techniques in science and engineering have become clear—in particular, automatic computer vision (CV) techniques together with deep learning (DL, a.k.a. computational intelligence) systems, in order to reach both a very high degree of automation and high accuracy.
This course is addressing the use of AI algorithms in EO applications. Participants will become familiar with AI concepts, deep learning, and convolution neural network (CNN). Furthermore, CNN applications in object detection, semantic segmentation, and classification will be shown. The course has six different sections, in each section, the participants will learn about the recent trend of deep learning in the earth observation application. The following technology will be used in this course,
Tensorflow (Keras will be used to train the model)
Google Colab (Alternative to Jupiter notebook)
GeoTile package (to create the training dataset for DL)
ArcGIS Pro (Alternative way to create the training dataset)
QGIS (Simply to visualize the outputs)