Comments (4)
Hi Mathias,
that's an interesting question, and it's true that with its nominal parameters, MAJA is not at its best over tropical forests. MAJA's strength originates from the use of multi-temporal information, using a previous cloud free observation as a reference.
Over sites where 95% of the pixels are cloudy, previous cloud free and not too old pixels become difficult to find. As the multi-temporal methods require more computing, we have to work at a coarser resolution to spare computing time. And over tropical forests, there are plenty of small clouds.
This is why using Fmask might be a better compromise for cloud detection on tropical forests. On our side, we did not work much on adjusting the parameters of MAJA on these places (but we definitely should), I don't have sure answers on how to tweak the parameters. But if you have time to try, it could be interesting.
First, the coarse resolution should be 120 instead of 240. It will detect part of the smaller clouds.
A description of the meaning of the cloud masks parameters is available here. It's a bit old and should be updated.
You could try to improve the multi-temporal detection to adapt it to the forest area, even if it will have drawbacks. Tropical forests tend to change less rapidly than agriculture fields. The current config is;
<!-- Minimum Threshold on surface reflectance variation with time in the blue band -->
<Min_Threshold_Var_Blue>0.016</Min_Threshold_Var_Blue>
<!-- Maximum Threshold on surface reflectance variation with time in the blue band -->
<Max_Threshold_Var_Blue>0.060</Max_Threshold_Var_Blue>
<!-- Time delay after which Refl_Variation_Threshold is doubled (in days) -->
<Cloud_Forgetting_Duration>45</Cloud_Forgetting_Duration>
You might try to decrease the first value, and increase the third. The threshold used in the multi-temporal detection increases with the time lag wrt the reference observation. It doubles every 45 days with the current parameters. This could improve the results in general, but classify as clouds some changes in reflectances.
You might also use stricter values for the cirrus band threshold (0.006 or 0.005), the current value being
<Cirrus_Mask_Threshold_Offset>0.007</Cirrus_Mask_Threshold_Offset>
<!-- Gain for reflectance threshold to detect a cirrus -->
If you try those, I am interested by the impact you'll observe
Olivier
from maja.
Hi Olivier,
thank you for such a quick reply.
I will tweak the parameters as suggested and report back the results.
Mathias
from maja.
Hello again Olivier,
My apologies for taking this long for getting back to you.
We did do some experiments with MAJA for different settings, and it seems the lack of clear-sky days in the rain forest were consistently problematic.
The GIPP settings for MAJA, were (with everything else being default) and with grid settings set to 120m:
<!-- Minimum Threshold on surface reflectance variation with time in the blue band -->
<Min_Threshold_Var_Blue>0.010</Min_Threshold_Var_Blue>
<!-- Maximum Threshold on surface reflectance variation with time in the blue band -->
<Max_Threshold_Var_Blue>0.060</Max_Threshold_Var_Blue>
<!-- Time delay after which Refl_Variation_Threshold is doubled (in days) -->
<Cloud_Forgetting_Duration>55</Cloud_Forgetting_Duration>
...
<Cirrus_Mask_Threshold_Offset>0.007</Cirrus_Mask_Threshold_Offset>
<!-- Gain for reflectance threshold to detect a cirrus -->
We also tried for some other settings, e.g. lowering the Cirrus_Mask_Threshold_Offset
, or increasing Cloud_Forgetting_Duration
further, but that yielded similar or worse results. Reading at the description of some the parameters seen here, we also tried lowering Cloud_Blue_Reflectance_Threshold
to 0.20
, but that too did not improve the cloud detection.
Per your suggestion, we also tried using FMask, which gave fairly good results for the rain forest. Below is a comparison between MAJA, FMask, and S2Cloudless. The image seen is one of best clear-sky images seen in the rain forest for the target period.
If you have any other settings that can be tweaked, I could try that, otherwise FMask yielded good enough results for our purpose.
Thanks again,
Mathias
from maja.
Thank you Mathias for the feedback and report of your tests to improve MAJA performances over rain forests. I guess the cloudyness is simply too high there for MAJA's multi-temporal methods to be efficient . As Fmask fits your needs, don't search more.
Best regards,
Olivier
from maja.
Related Issues (20)
- How to install MAJA 4 in Ubuntu 20.04 and Docker HOT 3
- [best practices] Processing by orbit HOT 11
- Using StartMaja with MAJA v3.2.2 HOT 1
- Solution for the error happening in case you try to use CAMS (if "NbNonInterpolate" in self._beforeFile.keys(): 'NoneType' object has no attribute 'keys') HOT 3
- Testing MAJA - Where to get "MAJA-DATA" and "MAJA-Validation"? HOT 1
- Github vs gitlab - which MAJA code should I use? HOT 3
- What are the differences between StartMaja scripts on different repositories? HOT 1
- License confusion HOT 2
- Access denied HOT 11
- Xml encoding in xml_tools.py HOT 2
- SRTM download link doesn't respond HOT 5
- Optimal parameters to get the best results (advice needed) HOT 10
- Inputs do not occupy the same physical space HOT 5
- CMake error for EXPAT when compiling MAJA HOT 11
- Cmake error for GDAL while compiling MAJA
- SameFileError when processing with StartMaja HOT 1
- Repository no more active, please use MAJA's Forum for issues
- Directory of input files as symbolic links
- Maja creates L2A level data with empty cloud masks & 0 instead of -10000 for each band HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from maja.