A curated list of awesome tools, tutorials, code, helpful projects, links, stuff about Earth Observation and Geospatial stuff!
This is being extended frequently in May 2020. Please note that this is not offically an awesome list (yet). Please help me to get it there by contributing and commenting. guidelines
Update May 2020 We now have almost 300 links/resources. The focus at the moment is resorting and ordering all these links and potentially reclassifiying where needed. I think there are still 100-200 more resources potentially to add
Annotations are based on the headers - where available - on the github accounts
Alastair Graham @ajggeoger and Andrew Cutts @map_andrew come together to present an informal podcast @eoscenefrom looking at the world of modern remote sensing and EO.
Fuelled by their passion for all things raster and geospatial, the #scenefromabove podcast aims to be a mix of news, opinion, discussion and interviews.
Shortcuts
| Python processing | Resources for R | Languages other than Python | Training and Learning | Deep Learning & Machine Learning | List of Great GitHub accounts | GDAL of course | Earth Observation coding on YouTube | Google Earth Engine | EO Geospatial companies or orgs making big contributions | QGIS and Grass | Climate & Weather resources | DEM projects | SAR | LiDAR | InSAR | Visualisation | EO code Competitions | Useful EO code based twitter accounts|
These sections are non EO code specific, but included to be relevant | Interesting Non EO parts Python | Interesting Non EO parts other languages | Data | A footnote on awesome
OpenEO covers many of the bases, hard to know whether to break it into different categories, it has many components. At present I mention it here at the start only.
- Open EO - openEO develops an open API to connect
R
,Python
,JavaScript
and other clients to big Earth observation cloud back-ends in a simple and unified way.
You may also wish to navigate a search of the terms satellite-imagery
and earth-observation
to get the lastest list of topics that have these terms in their headers
This section full of great code and projects related to processing optical satellite imagery with Python
- StarFM for Python - The STARFM fusion model for
Python
(image fusion) - Python from space -
Python
Examples for Remote Sensing - count blue pixels - This project is an experiment in using simple image processing techniques on satellite images downloaded from Google Maps in order to quantify the relative density of temporary shelters in adjacent qudarants.
Python
Ruby
- Satellite imagery analysis with Python - Getting acquainted with the concept of satellite imagery data and how it can be analyzed to investigate real-world environmental and humanitarian challenges.
Python
Jupyter Notebooks
associated blog - Povetry predition using satellite imagery - Poverty Prediction by Combination of Satellite Imagery
- Remote Sensing indicies calc - Calculate spectral remote sensing indices from satellite imagery
- Satellite imagery in Pakistan - This repository contains a study how we can examine the vegetation cover of a region with the help of satellite data. The notebook in this repository aims to familiarise with the concept of satellite imagery data and how it can be analyzed to investigate real-world environmental and humanitarian challenges.
- esa_sentinel - ESA Sentinel Search & Download API
- EarthPy - A package built to support working with spatial data using open source python. docs
- RasterFrames / pyrasterframes - brings together Earth-observation (EO) data access, cloud computing, and DataFrame-based data science. docs
- SIF tools - some tools for accessing OCO-2 data
- SIAC - A sensor invariant Atmospheric Correction (SIAC) alg doc
- S2_TOA_TO_LAI - From Sentinel 2 TOA reflectance to LAI
- cresi - Road network extraction from satellite imagery, with speed and travel time estmates
- COG Validator - Cloud Optimized GeoTIFF validation service
- 6S_emulator - Atmospheric correction in Python using a 6S emulator
- bv - Quickly view satellite imagery, hyperspectral imagery, and machine learning image outputs directly in your iTerm2 terminal.
Python
- mapchete - Tile-based geodata processing using rasterio & Fiona
Python
- unmixing - Interactive tools for spectral mixture analysis of multispectral raster data in
Python
- Sedas API -
Python
client library for the SeDAS API - SentinelBot - A twitter bot which processes raw sentinel data
Python
SentinelBot on twitter - Py6S - A
Python
interface to the 6S Radiative Transfer Model - Xarray pyconuk 2018 - Code and slides for my talk at PyCon UK 2018 on XArray
Python
- PyProSail - Python interface to the ProSAIL leaf/canopy reflectance model
- gdbx-surface-water - Reservoir surface area detection with Digital Globe imagery and Bayesian methods
- Landsat7 errors - Identifies errors in raw values of Landsat 7
- get_modis - Downloading MODIS data from the USGS repository
Python
- prosail -
Python
bindings for the PROSAIL canopy reflectance model - landsatexplore - Search and download Landsat scenes from EarthExplorer.
Python
- pylandsat - Search, download, and preprocess Landsat imagery
Python
- landsat and sentinel fusion - Complementarity Between Sentinel-1 and Landsat 8 Imagery for Built-Up Mapping in Sub-Saharan Africa
Python
- pyimpute - Spatial classification and regression using Scikit-learn and Rasterio
Python
- Planet Movement - Find and process Planet image pairs to highlight object movement.
Python
- Sentinel-download - Automated download of Sentinel-2 L1C data from ESA (through wget)
Python
- aws-sat-api-py - Process Satellite data using AWS Lambda functions
- Sentinel Sat - Search and download Copernicus Sentinel satellite images Sentinel Sat docs
Python
- Whitebox Python - WhiteboxTools
Python
Frontend - spatialist - A
Python
module for spatial data handling - LANDSAT-Download - Automated download of LANDSAT data from USGS website
- RasterStats - Summary statistics of geospatial raster datasets based on vector geometries.
Python
R is not my area of expertise so this section is lighter than I'd like, plus I'd love to know what is a useful resource
- R-Spatial - This book provides a short introduction to satellite data analysis with R.
- Remote Sensing analysis with R - Builds on above R-Spatial
- GDAL Cubes - Earth Observation Data Cubes from Satellite Image Collections. Also here on github
- Image Classification with RandomForests in R - The goal of this post is to demonstrate the ability of R to classify multispectral imagery using RandomForests algorithms.
- R code for ML in Sat imagery - # Random Forest image classification Adapted from stackoverflow.
- whiteboxR - An R frontend of the advanced geospatial data analysis platform - whitebox-tools.
- RasterVIS - Methods for enhanced visualization and interaction with raster data. It implements visualization methods for quantitative data and categorical data, both for univariate and multivariate rasters. It also provides methods to display spatiotemporal rasters, and vector fields.
- Landsat - Processing of Landsat or other multispectral satellite imagery. Includes relative normalization, image-based radiometric correction, and topographic correction options.
- rnoaa - R interface to many NOAA data APIs
- MODISTools - Interface to the MODIS Land Products Subsets Web Services Docs
- A Step-by-Step Guide to Making 3D Maps with Satellite Imagery in R - Walk you through [on] how to obtain the data required to make these types of maps, as well as the R code used to generate them
- landsatlinkr - An automated system for creating spectrally consistent and cloud-free Landsat image time series stacks from a combination of MSS, TM, ETM+, and OLI sensors project
- planetR - (early development) R tools to search, activate and download satellite imagery from the Planet API
- Georust - A collection of geospatial tools and libraries written in
Rust
- ArchGDAL - Julia -
Julia
A high level API for GDAL - Geospatial Data Abstract - Julia_Geospatial - Examples for a blog series on Geospatial
Julia
using ArchGDAL - GeoTrellis homepage - GeoTrellis is a geographic data processing engine for high performance applications.
Scala
- GDAL with GoLang -
Go
(golang) wrapper for GDAL, the Geospatial Data Abstraction Library - C++ gdalcubes - Earth observation data cubes from GDAL image collections
C++
- RSGLib - The remote sensing and GIS software library (RSGISLib) is a set of
C++
libraries and commands for the processing of spatial data (raster and vector). Functionality is viaPython
interface though - WhiteBox with Java - An open-source GIS and remote sensing package -
Java
- Perl extension for GDAL - Geo::GDAL -
Perl
extension for the GDAL library for geospatial data - PDAL - PDAL is Point Data Abstraction Library. GDAL for point cloud data.
- force - Framework for Operational Radiometric Correction for Environmental monitoring in
c
- LLR-landTrendr - Landsat-based Detection of Trends in Disturbance and Recovery algorimth modified to accept LandsatLinkr-processed imagery.
IDL
- Global Forest Watch - Global Forest Watch: An online, global, near-real time forest monitoring tool
- conda recipes - Conda recipes for remote sensing
Shell
- Earth Data Lab - A site dedicated to tutorials, course and other learning materials and resources developed by the Earth Lab team
- EO College Github
- tomography_tutorial - A tutorial for Synthetic Aperture Radar Tomography
- profLewis-geog0111 - UCL Geography: 4th year course, Scientific Computing
- Intro to Geospatial Vector and Raster - Data Carpentry’s aim is to teach researchers basic concepts, skills, and tools for working with data so that they can get more done in less time, and with less pain.
- Andrew Cutts Github - I am an Earth Observation and Geospatial enthusiast, primarily using
Python
to automate and process images at scale using computer vision- Satelite Imagery Python - Sample sample scripts and notebooks on processing satellite imagery
- Geospatial Python Programming Course - This is an collection of blog posts turned into a course format
- Open Geo Tutorial - Tutorial of fundamental remote sensing and GIS methodologies using open source software in
Python
- Foss4gUKJupyter - FOSS4G UK 2019 Workshop "Geoprocessing with Jupyter Notebooks"
- Geoprocessing with Python - GIS circa 2009 - This material is really old and some of it is outdated (not all, though!). One of these days I might get around to putting newer class materials online, but you're stuck with this for now.
Curated lists
- Christoph Rieke git hub for much much more
- Deep Vector - A curated list of resources focused on Machine Learning in Geospatial Data Science.
- Robin Cole on satellite imagery and deep learning resources - Resources for deep learning with satellite & aerial imagery Specific examples
- TernausNetV2 - TernausNetV2: Fully Convolutional Network for Instance Segmentation [paper](TernausNetV2: Fully Convolutional Network for Instance Segmentation)
- CNN-Sentinel -Analyzing Sentinel-2 satellite data in Python with Keras (repository of our talks at Minds Mastering Machines 2019 and PyCon 2018)
- Image patches - Using a U-Net for image segmentation, blending predicted patches smoothly is a must to please the human eye.
- Fast AI Satellite imagery resources
- Crop yield prediction - The motive here is to predict the yield of crops of a particular farm by the change in pixels of the image of farm yearly. Uses Tensorflow
- Houston Flooding with deep learning - Using A Segmentation Neural Net to map out flooded areas of Houston TX using satellite imagery
- Satellite Imagery Classification with R - Pixel based classification of satellite imagery - feature generation using Orfeo Toolbox, feature selection using Learning Vector Quantization, CLassification using Decision Tree, Neural Networks, Random Forests, KNN and Naive Bayes Classifier
- SpaceNet building detection - Project to train/test convolutional neural networks to extract buildings from SpaceNet satellite imageries.
- Road segmentation - Road Detection in satellite imagery. Semantic segmentation is the process of classifying each pixel of an image into distinct classes using deep learning. This aids in identifying regions in an image where certain objects reside.This aim of this project is to identify and segment roads in aerial imagery. Detecting roads can be an important factor in predicting further development of cities, and this concept plays a major role in GeoArchitect (A project which I started). Segmentation of roads is important to map-based applications and is used for finding distances or shortest routes between two places.
- Super resolution (srcnn) - Super Resolution for Satellite Imagery
- Pixel decoder - A tool of running deep learning algorithms for semantic segmentation with satellite imagery
- Detecting ships - Using Satellite Imagery to detect ships (Basic Object Detection)
- deepOSM - Train a deep learning net with OpenStreetMap features and satellite imagery.
- Keras for computer vision (Maxime Lenormand GitHub) - Introductions to Keras to perform computer vision tasks, with data exploration, error analysis and improving results.
- Airplane image classification - This article details building a ML pipeline to classify the presence of planes in satellite images using a Convolutional Neural Network (CNN).
- TorchSat - an open-source deep learning framework for satellite imagery analysis based on PyTorch.
Python
docs - ml_drought - Machine learning to better predict and understand drought
Python
. docs - pycrop yield prediction - A PyTorch Implementation of Jiaxuan You's Deep Gaussian Process for Crop Yield Prediction
Python
- neat-EO - Efficient AI4EO OpenSource framework
Python
- dfc2020_baseline - Simple Baseline for the IEEE GRSS Data Fusion Contest 2020
Python
- Planesnet - Labeled training data for detection of aircraft in Planet satellite imagery
- Planesnet detector - Detect airplanes in Planet imagery using machine learning
- shipsnet - Detect container ships in Planet imagery using machine learning
- Deep Learning for satellite imagery - Deep learning courses and projects
- DeepNetsForEO - Deep networks for Earth Observation
Please do explore these accounts, there are some absolutely brilliant projects on these accounts. This was previously a section containing examples, but these are better grouped into the other headings and repitition of links removed. However I feel its very important to highlight individuals wherever possible, ordered by github account name.
| Christoph Rieke git hub | Fernerkundung | gena github | jgomezdans github - blog | Johntruckhenbrodt github | Marcus Netler on github | Oliverhagolle github | PerryGeo | giswqs - Qiusheng Wu github | rhammell | Remote pixel github | robintw | Evan Roualt github | samapriya github | shakasom github | yannforget github |
- GDAL Cheat Sheet - Cheat sheet for GDAL/OGR command-line tools
- GDAL / OGR cookbook - This cookbook has simple code snippets on how to use the Python GDAL/OGR API
- GDAL tutorial - This blogpost gives in an introduction to GDAL/OGR and explains how the various command line tools can be used.
- docker-base-gdal - A base docker image for geospatial applications
(presenters listed where possible)
There are many videos relating to Earth Observation and coding, especially Python. This is really such a small collection of videos here. I have attempted to only include ones with good audio and code examples.
- xArray at PyConUK2018 - Robin Wilson - Processing thousands of satellite images to understand air quality in the UK - it's efficient and easy with XArray
- Visualizing & Analyzing Earth Science Data Using PyViz & PyData - Julia Signell - In this talk, we'll work through some specific workflows and explore how various tools - such as Intake, Dask, Xarray, and Datashader - can be used to effectively analyze and visualize these data. Working from within the notebook, we'll iteratively build a product that is interactive, scalable, and deployable.
- Hands on Satellite Imagery 2019 edition - Sara Safavi - In this tutorial, gain hands-on experience exploring Planet’s publicly-available satellite imagery and using Python tools for geospatial and time-series analysis of medium- and high-resolution imagery data. Using free & open source libraries, learn how to perform foundational imagery analysis techniques and apply these techniques to real satellite data.
- Python from space - Katherine Scott - In this talk we will work through a jupyter notebook that covers the satellite data ecosystem and the python tools that can be used to sift through and analyze that data. Topics include python tools for using Open Street Maps data, the Geospatial Data Abstraction Library (GDAL), and OpenCV and NumPy for image processing.
- Remote Sening with Python in Jupyter - In this video we're looking at using Google Earth Engine in Jupyter with the Python API.
- Writing Image Processing Algorithms with ArcGIS/ArcPy - Jamie Drisdelle - learn how your algorithms can integrate with the raster processing and visualization pipelines in ArcGIS. We’ll demonstrate the concept and discuss the API by diving deep into a few interesting examples with a special focus on multidimensional scientific rasters.
- Google Earth Engine Python - Qiusheng Wu - Introducing the geemap Python package for interactive mapping with Google Earth Engine and ipyleaflet.
- Google Earth Engine EE101 Condensed - Noel Gorelick - Introduction to the Earth Engine API and a conceptual overview of key functionality such as compositing, reducing, mapping, zonal statistics and cluminating with building a small app.
- Image classification with RandomForests using the R languageIn this video I show how to import a Landsat image into R and how to extract pixel data to train and fit a RandomForests model. I also explain how to conduct image classification and how to speed it up through parallel processing.
- GeoPython 2019 stream - 17:23 Machine Learning for Land Use/Landcover Statistics of Switzerland (Adrian Meyer), 50:58 How to structure geodata, 1:18:13 Terrain segmentation with label bootstrapping for lidar datasets, case of doline detection (Rok Mihevc), 2:34:41 Bias in machine learning, 3:06:23 Software for planning research aircraft missions (Reimar Bauer), 3:32:38 How Technology Moves Fast (PJ Hagerty) , 5:02:05 Spotting Sharks with the TensorFlow Object Detection API (Andrew Carter), 5:40:23 Center for Open Source Data and AI Technologies (CODAIT), 6:03:40 Bayesian modeling with spatial data using PyMC3 (Shreya Khurana) (Sound at 6:04:23 ^^), 7:02:45 Understanding and Implementing Generative Adversarial Networks(GANs) (Anmol Krishan Sachdeva), 7:37:00 Messaging with Satellites from Anywhere on the Planet (Andrew Carter), 8:04:52 Automation of the definition and optimizatino of census sampling areas using AREA (GRID3) (Freja Hunt), 8:35:26 Coastline Mapping with Python, Satellite Imagery and Computer Vision (Rachel Keay)
JavaScript
& Python
& R
- Earth Engine API -
Python
andJavaScript
bindings for calling the Earth Engine API. - from GEE to Numpy to Geotiff - Use the GEE python api to export your data to numpy and store the result as a geotiff.
- Google Earth Engine Community - This organization contains content contributed by the Earth Engine developer community. This is not an officially supported Google product.
- Geo4Good 2019 workshop materials - 2019 material javascript and Python to be found here
- 2018 GEE summit - Dublin materials - 2018 material javascript and Python to be found here
- 10 tips for becoming an Earth Engine expert - Keiko Nomura shares her 10 favourite tips
- Earth Engine Developer list - registration required
- Earth Engine Beginner's Cookbook - n this tutorial, we will introduce several types of geospatial data, and enumerate key Earth Engine functions for analyzing and visualizing them. This cookbook was originally created as a workshop during Yale-NUS Data 2.0 hackathon, and later updated for Yale GIS Day 2018 and 2019.
JavaScript
- Google Earth Engine Repos - all the repos matching
earth-engine
- geetools - A set of tools to use in Google Earth Engine Code Editor
JavaScript
docs - gee-up - Simple CLI for Google Earth Engine Uploads docs
- gee_asset_manager - Google Earth Engine Asset Manager with Addons docs
- Planet-GEE_Pipeline -Planet and Google Earth Engine Pipeline Command Line Interface Tool docs
- GEE code archive - Unsorted archived Earth Engine scripts
JavaScript
- Python GEE notebooks - A collection of 360+ Jupyter Python notebook examples for using Google Earth Engine with interactive mapping
- GEE Map - A Python package for interactive mapping with Google Earth Engine, ipyleaflet, and ipywidgets
- cloud frequency app - CloudFrequency webapp, using Google App Engine
Python
JavaScript
- rgee - Google Earth Engine for
R
docs
Github accounts only with examples of work. Also contains (Python) libraries for processing satellite data. This list aims at highlighting the great work some of the companies / organisations are doing or have done that contribute to the bigger ecosystem. Examples of the accounts work is not exhaustive, some do much more than shown below:
- development seed
- Landsat-Util - A utility to search, download and process Landsat 8 satellite imagery
Python
- GeoLamda - Create and deploy Geospatial AWS Lambda functions
Python
- LabelMaker - Data Preparation for Satellite Machine Learning docs
Python
- rio-viz - Visualize Cloud Optimized GeoTIFF in browser
html
Python
- cogeo-mosaic - Create and use COG mosaic based on mosaicJSON
Pythoon
- Sentinel-2-cog - Convert Sentinel-2 JPEG 2000 to COG with AWS Lambda
Python
- Sentinel-s3 - Python libraries for extracting Sentinel-2's metadata from Amazon S3
- Landsat-Util - A utility to search, download and process Landsat 8 satellite imagery
- mapbox
- Planet Labs, now just Planet
- Planet notebooks - interactive notebooks from Planet Engineering
- Digital Globe - now Maxar
- Maxar GDBx tools - Python SDK for using GBDX.
- Azavea
- Azavea - RasterVision - An open source framework for deep learning on satellite and aerial imagery.
- Radiant Earth foundation
- STAC Spec - SpatioTemporal Asset Catalog specification - making geospatial assets openly searchable and crawlable
- Sentinel Hub
- EO Learn - Earth observation processing framework for machine learning in Python
- EO Browser Custom Scripts - A repository of custom scripts to be used with Sentinel Hub
- EO flow - Collection of TensorFlow 2.0 code for Earth Observation applications
- SentinelHub-py - Download and process satellite imagery in Python using Sentinel Hub services.
- sentinel2-cloud-detector - Sentinel Hub Cloud Detector for Sentinel-2 images in
Python
- sentinelhub-js - Download and process satellite imagery in
JavaScript
orTypeScript
using Sentinel Hub services.
- Opendatacube
- Opendatacube -core - Open Data Cube analyses continental scale Earth Observation data through time
- Opendatacube notebooks - Extra documentation about using ODC with Jupyter Notebooks
- PyTroll
- SatPy - Python package for earth-observing satellite data processing
- pyresample - Geospatial image resampling in Python
- CosmiQ
- Solaris - CosmiQ Works Geospatial Machine Learning Analysis Toolkit
- CometTS - Comet Time Series Toolset for working with a time-series of remote sensing imagery and user defined polygons
- SpaceNet6 Baseline - Baseline algorithm for the SpaceNet 6 Challenge
- Theia software and tools
- sparkgeo
- stac-validator - Validator for the stac-spec
- Geoscience Australia
- PyRate - A Python tool for estimating velocity and time-series from Interferometric Synthetic Aperture Radar (InSAR) data.
- Digital Earth Australia Notebooks - R- Jupyter Notebooks, tools and workflows for continental-scale earth observation/geospatial analysis with Open Data Cube (link above) and
xarray
- Dymaxion Labs
- dask-rasterio - Read and write rasters in parallel using Rasterio and Dask
- ap-latem - Detection of slums and informal settlements from satellite imagery
- Satellogic
- Telluric - telluric is a Python library to manage vector and raster geospatial data in an interactive and easy way
- Orbit predictor - Python library to propagate satellite orbits.
- senbox-org - SNAP - ESA's SentiNel Application Platform
- s3tbx - A toolbox for the OLCI and SLSTR instruments on board of ESA's Sentinel-3 satellite -
Java
- s2tbx - Sentinel 2 Toolbox (s2tbx) -
Java
- s1tbx - The Sentinel-1 Toolbox -
Java
- snap_engine - ESA Earth Observation Toolbox and
Java
Development Platform
- s3tbx - A toolbox for the OLCI and SLSTR instruments on board of ESA's Sentinel-3 satellite -
- Nasa-gibs - for info here
- mundialis
- actinia core - Actinia Core is an open source REST API for scalable, distributed, high performance processing of geographical data that uses mainly GRASS GIS for computational tasks.
- actinia plugin - This actinia plugin is designed for efficient satellite data handling, especially Landsat and Sentinel-2 scenes
- Qgis Earth Engine Plugin - Integrates Google Earth Engine and QGIS using Python API
- grass-dev-py3-pdal - Dockerfile which compiles GRASS GIS 7.9 master with Python 3 and PDAL suppor
These are Python
resources. Please see R resources for info on R
- s3 tools - A collection of sentinel 3 processing tools
Python
- eumetsat -python - Shows how to read and plot satellite data from EUMETSAT NETCDF files
Python
- unidata on GOES-16 - This notebook shows how to make a true color image from the GOES-16 Advanced Baseline Imager (ABI) level 2 data. We will plot the image with matplotlib and Cartopy.
Python
- MetPy - MetPy is a collection of tools in Python for reading, visualizing and performing calculations with weather data.
Python
- MetPy docs
Python
- aqua-monitor - Monitoring surface water changes from space at global scale. Also checkout the app
Python
- MetPy docs
- Ocean Color - Modis - introduction to accessing and plotting ocean color satellite data from MODIS
Python
- Climate data science - Climate Data Science and Earth Observation with
Python
- Tin Terrain - A command-line tool for converting heightmaps in GeoTIFF format into tiled optimized meshes.
- TauDEM - Terrain Analysis Using Digital Elevation Models (TauDEM) software for hydrologic terrain analysis and channel network extraction. Docs
- DEM.net - Digital Elevation model library in C#. 3D terrain models, line/point Elevations, intervisibility reports. Docs
- Stereo Mapping to create Elevation with Python - Satellite Stereo Pipeline
- SAR docker - Source files for Docker image mort/sardocker/
- awesome SAR - A curated list of awesome Synthetic Aperture Radar (SAR) software, libraries, and resources.
- pyroSAR - framework for large-scale SAR satellite data processing
- pyGEDI - pyGEDI is a Python Package for NASA's Global Ecosystem Dynamics Investigation (GEDI) mission, data extraction, analysis, processing and visualization.
- GEDI extraction script - Python script to take GEDI level 2 data and convert variables to a geospatial vector format
- rGEDI - rGEDI: An R Package for NASA's Global Ecosystem Dynamics Investigation (GEDI) Data Visualization and Processing.
- ICESAT extraction script - Python script to convert from ICESat-2 ATL08 HDF data to shapefile. Usage: 'python icesat2_shp.py
- ICESAT tools - Tools and code for Icesat-2 data analysis (Python)
- usgs-lidar - AWS Entwine Point Tiles USGS LiDAR Public Dataset GitHub repo
- Lidar - Terrain and hydrological analysis based on LiDAR-derived digital elevation models (DEM)
- ISCE - InSAR Scientific Computing Environment version 3 alpha
- LiCSBAS - LiCSBAS package to carry out InSAR time series analysis using LiCSAR products
- MintPy - Miami InSAR time-series software in Python
- Pyrocko - Can be utilized flexibly for a variety of geophysical tasks, like seismological data processing and analysis, modelling of InSAR, GPS data and dynamic waveforms, or for seismic source characterization.
- InSARFlow - Parallel InSAR processing for Time-series analysis
- Tiled video!
- Video map - Tools to create,, export and share video maps
- Tree height and canopy cover map in 3D - Use Kepler.gl to visualise 3D and 2D data
- Philipp Gartner blog
- Series Temporelles
- The downlinq
- GEDI canopy data - How we processed data to retrieving canopy height
- challenges 2020 - ECMWF Summer of Weather Code 2020 challenges
- SpaceNet - See also CosmiQ Works blog the downlinq
- See also Sentinel hub old competitions of note
- Planet: Understanding the Amazon from Space - Use satellite data to track the human footprint in the Amazon rainforest
- DeepGlobe Building Extraction Challenge - We would like to pose the challenge of automatically detecting buildings from satellite images.
- DSTL feature extraction - Kagglers are challenged to accurately classify features in overhead imagery
- crowdAI misisng maps challenge - Building Missing Maps with Machine Learning
- openAI solution - Open solution to the Mapping Challenge
- pyGEDI - pyGEDI is a Python Package for NASA's Global Ecosystem Dynamics Investigation (GEDI) mission, data extraction, analysis, processing and visualization.
This bit could potentially become the most valuable resource. Lets not ignore other sectors/industries/data science, instead lets embrace it and learn from all that other amazing stuff!
- realtime covid19 graphs in USA - A collection of work related to COVID-19
- Deep learning with Python notebooks - Jupyter notebooks for the code samples of the book "Deep Learning with Python"
- Python data science handbook
- A-Z of tips and tricks for Python - 'Most of these ‘tricks’ are things I’ve used or stumbled upon during my day-to-day work. '
- Visual intro into Numpy- Visualizing machine learning one concept at a time
- Change your Jupyter Theme - Custom Jupyter Notebook Themes
- Awesome Semantic Segmentation - awesome-semantic-segmentation
- unidata Python workshop - Would you like some in-depth training on the scientific Python ecosystem for atmospheric science and meteorology? Work through our workshop materials at your own pace to learn and practice the syntax, functionality, and utility of this powerful programming language, or return to the material after taking the workshop in-person to further your understanding of the material you were taught.
- TernausNet - used in DSTL kaggle competition (came 3rd) - UNet model with VGG11 encoder pre-trained on Kaggle Carvana dataset
- Introduction to Python for computational science - Book: Introduction to Python for Computational Science and Engineering
- Another Book on Data Science - Learn R and Python in Parallel
- Xarray - N-D labeled arrays and datasets in Python
- Matplotlib colab notebook tutorial - This notebook demonstrates how to use the matplotlib library to plot beautiful graphs.
- PostGIS raster cheatsheet - Useful tips on rasters in PostGIS
- 65 data science books on Springer - not checked but perhaps useful
- Intro to Numerical Computing - youtube - Intro to Numerical Computing with NumPy (Beginner) | SciPy 2018 Tutorial | Alex Chabot-Leclerc
This section is aimed more a data science/programming resources that 'might' be applicable to Earth Observation, that are not Python
- Efficient R programming - This is the online version of the O’Reilly book: Efficient R programming. Code is here
- jupyterhub-platform-tutorials = Tutorials to install and manage JupyterHub platforms with Kubernetes
I don't really want to add many data resources to this list as it creeps out of scope but this part contains some good data links [not necessarily EO]
- Environmental_Intelligence - Data for Environmental Intelligence: A mega list of Earth System Datasets covering earth observations, climate, water, forests, biodiversity, ecology, protected areas, natural hazards, marine and the tracking of UN's Sustainable Development Goals
There are many awesome lists relating to 'Geo'. I use that term as widely as possible. This list is not meant to replace these lists. Earth Observation is still way behind the GIS world in terms of audience, reach, number of users etc. Things are changing though, by bringing these links together I hope you can see that there has been so much progress in the last 5 years. I do hope these links are helpful espcially to those who are new to Earth Observation, but also to people like me who with several years of experience think they may have seen it all - we haven't and there is still so much to learn. Earth Observation is not just an academic 'thing' or a basemap anymore, it forms the basis for a growing and diverse business environment. Lets embrace this.
Finally, I wanted to acknowledge a couple of awesome Earth Observation lists that you may list to check out:
- Awesome Sentinel - curated list of awesome tools, tutorials and APIs for Copernicus Sentinel satellite data
- awesome-remote-sensing - Collection of Remote Sensing Resources
- awesome-remote-sensing-papers - Selection of remote sensing papers
- awesome-Geospatial - Long list of geospatial tools and resources