GSoC 2018 GRASS GIS module for Sentinel-2 cloud and shadow detection
Abstract
Unlike Landsat images, Sentinel-2 datasets do not include thermal and Quality Assessment bands that simplify the detection of clouds avoiding erroneous classification. Moreover, also clouds shadows on the ground lead to anomalous reflectance values which have to be taken into account during the image processing. To date, only a specific module for Landsat automatic cloud coverage assessment is available within GRASS GIS (i.landsat.acca) while regarding shadows, no specific module is available. Therefore to date, the detection of clouds and shadows has to be manually performed for Sentinel-2 images.
Goal
The aim is the coding of a specific module for GRASS GIS application which implements an automatic procedure for clouds and shadow detection within Sentinel 2 images. The module has to provide a tool which can be easily used by inexpert users, taking advantage of the suggested parameters, or by more expert users that can modify default values according to their needs.
Timeline
Time Period
|
Tasks
|
Deliverables
|
Status
|
---|
Community Bonding
| - Introduce myself in soc and dev lists
- Get in contact with my mentors
- Discuss and share ideas, suggestions, etc. with my mentors and the dev list
- Prepare the wiki page about the project and keep it up to date
- Set up the github repository of the project (https://github.com/RobiFag/GRASS_clouds_and_shadows)
- Get familiar with development environment
- Follow the procedure for access to the GRASS-Addons-SVN repository
- Familiarize myself with GRASS Python scripting library and the writing of GRASS module
- Elaborate a schema of the algorithm share and discuss it with the community list
| | |
MAY 14 - 20
| - Make any changes to the algorithm deriving from the discussions and feedback and define the final version of the algorithm
- Test the final version of the algorithm with several datasets
| | |
MAY 21 - 27
| - Translate the final algorithm in a GRASS Python script
- Test and validate the script and fix bugs
- Share the script with the community
| | |
MAY 28 - JUNE 3
| - Implement any change from discussions and feedback
- Translate the final algorithm in a GRASS Python script
- Test and validate the script and fix bugs
- Share the script with the community
| | |
JUNE 4 - JUNE 10
| - Implement any change from discussions and feedback
- Test and validate the script with several datasets and fix bugs
- Share the script with the community
| | |
JUNE 11 - JUNE 15
First evaluation
| - Final tests
- Check the script with mentors
- Share the script with the community
- Prepare deliverable for the evaluation
|
Working GRASS Python Script (without GUI)
| |
JUNE 16 - JUNE 24
| - Implement any change from discussions and feedback
- Discuss with mentors about the Graphical User Interface "design"
- Start implementing the GUI
| | |
JUNE 25 - JULY 1
| - Finish implementing the GUI
- Discuss with mentors about the GRASS GIS module prototype
- Define the module prototype
- Share it with the community
| | |
JULY 2 - JULY 8
| - Implement any change from discussions and feedback
- Compiling a detailed user documentation (GRASS GIS help page)
| | |
JULY 9 - JULY 13
Second evaluation
| - Check the module with mentors
- Publication of the module prototype as a GRASS add-on (svn official repository)
- Share the module with the community
- Prepare deliverable for the evaluation
|
GRASS add-on module prototype
| |
JULY 14 - JULY 22
| - Tests and bug fixing
- Implement any change from discussions and feedback
| | |
JULY 23 - JULY 29
| - Tests and bug fixing
- Implement any change from discussions and feedback
- Improvement of the user documentation (following feedback from community)
| | |
JULY 30 - AUGUST 5
| - Improvement of the user documentation (following feedback from community)
| | |
JULY 30 - AUGUST 5
| - Share the module with the community
- Implement any change from discussions and feedback
| | |
JULY 9 - JULY 13
Final evaluation
| - Publication of the final module prototype as a GRASS add-on (svn official repository)
- Prepare deliverable for the final evaluation
|
GRASS add-on module with documentation
| |