Detect fire from satellite images
Be it forest fires or villages being attacked, some fires can be detected from space. We hope to build a tool for monitoring the environment and watching for the safety of defenseless civilians.
Our goals is to help monitor fires all over the globe for plenty of good reasons.
While many satellite's images are free to access, the amount of images to process in order to watch the whole of earth is just too big (over 4 Terabytes of fresh products published every day on the Copernicus portals).
This tool won't allow us to monitor the entire planet. But it will be the bsis of an opensource webapp for anyone to use, giving everyone the possibility to monitor a part of earth for large fires (e.g. fire of a dry forest, garbage burning illegally intoxicating its neighbours, or a tool for the United Nations to watch for genocide and human rights atrocities.
This project is mainly split into 2 applications:
-
a python library for handling Satellite's images and processing them to detect fire: to measure and to locate the fire as accurately as possible. This module should be easily usable by any developer with a computer, therefore without worrying about any cost of cloud resources.
-
a webapp for non-developers eager to get alerted in case of fires: For the other users who prefer a user interface, a webapp should allow them to rent cloud resources required for monitoring the part of earth they are interested in, or to share the cost with others watching the same area already.
Join us on Slack, then join our channel.
See all tasks organised in:
- Milestones/Objectives,
- Kanban boards to track their development.
The project is just starting, but come help us or learn with us. Don't hesitate to contact us and ask questions on our Slack channel.
- Wildfires in California, USA clearly visile on Sentinel Hub, less visible on planet.com (Nov. 8th 2018).
- Spotting Colombia deforestation (before on 2018, Feb. 9th and after on 2018, Feb. 10th, moving on on 2018, Feb 20th.
- Deonar's garbage burning (2016, Janv. 30th), continuously polluting the air until 2016, March 28th.
- Southern Portugal, August 2018.
- Central Portugal, Summer 2017.
- La Tune Fire, California, Sept. 2017 No flames but huge!
- Bands: resolution, frequencies, purpose, definitions of "levels" (Level-1B, Level-1C, Level-2A), granules, ortho-rectified tiles, ...
- Processing in QGIS by Batbandi Uranchimeg.
- Centre d'Etude Spatial de la BIOsphere (CESBIO): How it works?: French/English explanations/definitons (e.g. levels, Cloud shadow detection, python tips, sentinel2+OpenStreetMap, ...)
- Satellite data allows real-time detection of potential fires (article, Aug. 2018): seems that using Landsat only. Using Sentinel 2 should give better results ;)
- NASA covers wildfires from many sources (Phys.org, Jan. 2018)
- 3 Active Fire Maps: How to Track Real-Time Wildfires Around the World (gisgeography.com, 2018)
- Python from Space Analyzing Open Satellite Imagery Using the Python Ecosystem (PyCon 2017, Katherine Scott)
- The potentials of Sentinel-2 and LandSat-8 data in green infrastructure extraction, using object based image analysis (OBIA) method (article, June 2017)
- Satellite Imagery Analysis with Python
- Working with Satellite Data, a Gentle Introduction to GDAL Part
- ESA global observations of fires for their active climate change initiative: "Essential climate variables", data visualisation, specifically their page on Fire CCI (Climate Change Initiative)
- Mentionning a project named FireCCISFD11 (burned area dataset) using Sentinel sensors for land monitoring.
Geographic information system (GIS) platform for distribution of satellite data:
- pySAL: Python Spatial Analysis Library
- Rastervision: open source framework for Python developers building computer vision models on satellite.
- Google Cloud Podcast discussing the process of (PetaBytes of) satellite imagery almost for free on GCP (using pre-emptible VMs).
- LandSat data on Google Cloud Storage
- Sentinel 2 data on Cloud Storage
- Google Earth Engine: Datasets & JavaScript/Python API (Installaton).
-
Awesome Sentinel: a curated list of awesome tools, tutorials and APIs for Copernicus Sentinel satellite data.
-
Copernicus Open Access Hub:The Copernicus Open Access Hub (previously known as Sentinels Scientific Data Hub, or SciHub) provides complete, free and open access to Sentinel-1, Sentinel-2, Sentinel-3 and Sentinel-5P user products.
- Manual download within the browser in the browser, stacking bands in QGIS
- Sentinelsat: a Python package that "makes searching, downloading and retrieving the metadata of Sentinel satellite images from the Copernicus Open Access Hub easy."
-
sentinel-hub: Non-free platform.
- EO-Browser: a search tool for Sentinel-1, -2, -3, Landsat 5, 7, 8, Modis and Envisat satellite imagery
- sentinelhub-py: Download and process satellite imagery in Python.
- EO-learn: "a set of tools to make prototyping of complex EO workflows as easy, fast, and accessible as possible." (github, docs)
-
planet.com's Explorer: "See the Earth change by navigating through space and time. Identify an area of interest using the search box, draw tools, or supported area definition files", Non-free platform.
conda create --name sat_3.6 --file environment.yml
it contains:
- pySAL (https://pysal.readthedocs.io/en/v1.9/users/installation.html): Python Spatial Analysis Library
- planet (https://pypi.org/project/planet/): Python client library and CLI for Planet.com’s public API.
- Rasterio (https://github.com/mapbox/rasterio): reads and writes geospatial raster data.
- geojson (https://github.com/jazzband/python-geojson): Python bindings and utilities for GeoJSON
- Thanks to Trygve Halsne from the Norwegian space center who shared this demo monitoring vegetation change over a predefined area of interest by means of Sentinel-2 that got us started.