GithubHelp home page GithubHelp logo

firepy's Introduction

πŸ”₯ FirePy Project πŸ”₯

πŸ§™ Context πŸ§™

Datascientest_logo

This project was made out as part of training course at Datascientest.com (Data Scientist program June '21) .

🎯 Objectif 🎯

Create a deep learning model based on U-Net architecture for semantic segmentation of satellite images (Sentinel-2) to detect burned area.

πŸ§‘β€πŸ’Ό Business case πŸ§‘β€πŸ’Ό

Manual surveying of fire perimeters is a tedious and tiring task and subject to human error. The level could be limited due to pockets spared by the flames found inside the fire zones.

The automation of the detection of burnt surfaces by an algorithm would make it possible to lighten the human workload, to bring robustness to the analysis and to scale the analysis area and would make it possible to provide a preliminary estimate of damage (natural, property, infrastructure). Mathematical processing of satellite images is also a way to go beyond burnt/unburnt binary information and refine the burn level.

Traditional burn area detection methods have limited performance. By operating using thresholds, it is difficult for these techniques to detect small burned areas or low intensity burns. Some algorithms based on anomaly detection on the neighborhood of pixels have a high rate of false detection. Finally, methods exploiting differences in image sequences over time have the disadvantage of requiring a lot of data. Faced with this observation, deep learning algorithms seem particularly promising and are the subject of numerous research and publications.

The good availability of data from the Sentinel 2 satellites financed by ESA's Copernicus program is an essential asset for the launch of the project. Indeed, the images are available free of charge and have covered a large part of the earth's surface since 2015.

πŸ“‘ Files Descriptions πŸ“‘

  • Image1 - 1a_data_export.ipynb

  • Image2 - 1b_patches_generation.ipynb

  • Image3 - 2c_Unet_model_training_with_patches&albumentation.ipynb

  • Image4 - 2d_PSPNet_model_training_resize.ipynb

  • Image5 - 3_model_prediction.ipynb

☁️ Streamlit demo ☁️

Image

πŸ’Ύ Google Drive πŸ’Ύ

The backup files and images used to train/test our models are hosted on Google drive because they are too large to be hosted on GitHub.

Image This file contains 27 fires, witch mean almost 1200 patchs (256*256)

Despite the small number of images available, it was decided to favor the data quality. Non-quality factors are related to the presence of elements between the burnt area and the satellite sensor. Unlike other satellites with an active sensor (radar sending an electromagnetic wave crossing the elements), the Sentinel-2 images only receive emissions from Earth in different frequencies. Any unwanted element between the sensor and the burnt area is therefore disturbing for the training of the model.

The mask generation takes place in 4 steps:

  • Preparation of a mask raster image built on the features of the corresponding Sentinel 2 image and containing null values. The GDAL10 library containing the β€œGTiff” driver was used.
  • Recovery of geometry from the corresponding shapefile. The OGR11 library containing the β€œESRI shapefile” driver was used.
  • Added burnt area geometry to mask raster image.
  • Export mask raster image to tiff file.

πŸ’» Credits πŸ’»

Mentor :

firepy's People

Contributors

icecore013 avatar captainmolo avatar emme-hub avatar thibault-venet avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.