IMPORTANT: Fmask 4.0 beta software on Windows (~1G) is ready to use now! It can be downloaded at this [link] (https://drive.google.com/drive/folders/1SXBnEBDJ1Kbv7IQ9qIgqloYHZfdP6O1O). This version has substantial better cloud, cloud shadow, and snow detection results for Sentinel 2 and better results (compared to the 3.3 version that is currently being used by USGS as the Collection 1 QA Band) for Landsats 4-8 . This one software can be used for Landsats 4-8 Collection 1 product and Sentinel 2 Level-1C product at the same time. NOTE this new version (including all features of MFmask) also works better in mountainous area than MFmask 1.1.
Further information about the Fmask 4.0 tool can be found at https://github.com/GERSL/Fmask.
Great news! MFmask 1.1 beta has been publicly released. This new package can FULL AUTOMATEDLY work!
The software called MFmask (Matlab package) is used for automated clouds, cloud shadows, and snow masking for Landsat 4-8 images. The MFmask is developed by integrating Digital Elevation Models (DEMs) into the existing Fmask algorithm (Version 3.3; https://github.com/prs021/fmask). It is specifically designed for Landsat images acquired from mountainous area well (thereafter we call this algorithm MFmask, in which the letter “M” refers to mountainous), and also applicative for Landsat images acquired in non-mountainous areas.
Now MFmask can AUTOMATEDLY download, project, and resample DEMs to Landsat's resolution and extent, thanking for TopoToolbox (https://topotoolbox.wordpress.com)! What we need to do just keep your network workable and run the MFmask package at Landsat folder. Note that Matlab version MUST be higher than R2014b, OR the corresponding DEM data for each Landsat image still needs to be manually downloaded, mosaicked, projected, and resampled to Landsat's resolution and extent.
If you HAVE Matlab higher than R2014b and workable network, just run the MFmask package at Landsat folder.
If you HAVE NOT Matlab higher than R2014b or workable network, but you still want to use DEMs to enhance the cloud and cloud shadow detection, please manually download, project, and resample to Landsat's resolution and extent, and resaved the DEM data as a TIFF file named with end of ‘_dem.TIF’. Available DEMs can be found as follows, ASTER 30m (1 arc-second) DEM data: http://dx.doi.org/10.5067/aster/astgtm.002. SRTM 30m (1 arc second) DEM data: https://doi.org/10.5067/measures/srtm/srtmgl1.003. Note that the corresponding DEM data for each Landsat image needs to bemanually downloaded, mosaicked, projected, and resampled to Landsat's resolution andextent. DEM derivatives (e.g., slope and aspect) are also calculated by using other software, such as ENVI, ERDAS, and ArcMap.
If you CANNOT automatedly or manually obtain DEMs, MFmask still works well. It will directly come back to the routine of Fmask, but also improve the cloud shadow location prediction with aid of neighboring clouds. That means MFmask will also generate similar cloud masks and better cloud shadow masks without DEMs, compared with original Fmask.
Please contact Shi Qiu (qsly09@hotmail.com) at School of Resources and Environment, University of Electronic Science and Technology of China if you have any questions. Please cite the following papers:
paper 1: Qiu, S., He, B., Zhu, Z., Liao, Z., and Quan, X. (2017). Improving Fmask cloud and cloud shadow detection in mountainous area for Landsats 4-8 images, Remote Sensing of Environment, 199, 107-119. doi:10.1016/j.rse.2017.07.002 (paper for MFmask version 1.0.).
paper 2: Zhu, Z., Wang, S., and Woodcock, C. E. (2015). Improvement and expansion of the fmask algorithm: cloud, cloud shadow, and snow detection for landsats 4–7, 8, and sentinel 2 images. Remote Sensing of Environment, 159, 269-277. doi:10.1016/j.rse.2014.12.014 (paper for Fmask version 3.2.).
paper 3: Zhu, Z. and Woodcock, C. E. (2012). Object-based cloud and cloud shadow detection in landsat imagery. Remote Sensing of Environment, 118(6), 83-94. doi:10.1016/j.rse.2011.10.028 (paper for Fmask version 1.6.).
After running MFmask, there will be an image called XXXMFmask that can be opened by ENVI. The image values are presenting the following classes:
0 => clear land pixel
1 => clear water pixel
2 => cloud shadow
3 => snow
4 => cloud
255 => no observation
One sample data can be download from the following links:
Google drive: https://drive.google.com/drive/folders/0B1UcOl384wK-S1hNU0g3UlpGQ2s
or
Baidu drive:https://pan.baidu.com/s/1bYENpk
Table 1. Validation data for MFmask. Note that * indicates the reference image with both manual cloud and cloud shadow mask. All of them are availble at the following link: https://landsat.usgs.gov/landsat-7-cloud-cover-assessment-validation-data.
Type | Name | Date | Sun Elevation(°) | True Cloud Cover (%) | Elevation Difference (m) | |
austral | p227_r98 | 2001/11/3 | 41.19 | 45.10 | 1564 | |
austral | p228_r94 | 2001/12/12 | 50.72 | 95.92 | 702 | |
austral | p228_r97 | 2001/11/26 | 46.90 | 67.89 | 630 | |
austral | p228_r98 | 2001/1/26 | 40.91 | 99.50 | 1553 | |
austral | p229_r97 | 2001/12/3 | 47.55 | 42.05 | 900 | |
* | austral | p230_r92 | 2001/12/26 | 51.62 | 2.32 | 885 |
* | austral | p230_r94 | 2001/12/26 | 49.91 | 12.46 | 1585 |
austral | p230_r95 | 2001/12/10 | 49.79 | 55.40 | 1830 | |
austral | p231_r96 | 2001/1/31 | 41.64 | 87.10 | 2799 | |
austral | p74_r92 | 2001/11/3 | 47.98 | 20.21 | 1066 | |
austral | p75_r92 | 2001/11/26 | 51.98 | 43.45 | 1583 | |
austral | p76_r92 | 2001/1/17 | 48.38 | 68.32 | 1460 | |
boreal | p139_r24 | 2001/8/7 | 51.06 | 7.53 | 1621 | |
boreal | p143_r21_2 | 2001/5/31 | 53.82 | 45.59 | 625 | |
* | boreal | p143_r21_3 | 2001/8/3 | 48.95 | 14.64 | 627 |
* | boreal | p195_r26 | 2001/5/11 | 55.42 | 7.18 | 854 |
* | boreal | p49_r22 | 2001/6/13 | 55.96 | 9.32 | 1009 |
boreal | p54_r19 | 2001/6/16 | 52.84 | 60.98 | 1420 | |
mid-latitude_N | p111_r29 | 2001/4/29 | 55.09 | 62.87 | 977 | |
mid-latitude_N | p139_r33 | 2001/5/19 | 63.07 | 0.00 | 3204 | |
mid-latitude_N | p147_r35 | 2001/5/11 | 63.03 | 6.75 | 3678 | |
mid-latitude_N | p154_r34 | 2001/7/31 | 60.87 | 0.00 | 1968 | |
mid-latitude_N | p184_r37 | 2001/6/15 | 66.50 | 0.00 | 558 | |
mid-latitude_N | p186_r32_1 | 2001/2/21 | 33.88 | 33.46 | 1714 | |
mid-latitude_N | p186_r32_2 | 2001/5/12 | 61.10 | 7.71 | 1703 | |
mid-latitude_N | p186_r32_4 | 2001/10/3 | 41.91 | 0.49 | 1703 | |
mid-latitude_N | p196_r35 | 2001/4/16 | 56.59 | 0.00 | 1339 | |
mid-latitude_N | p33_r37 | 2001/4/26 | 61.07 | 2.95 | 1592 | |
mid-latitude_N | p36_r37 | 2001/5/1 | 62.29 | 0.00 | 1698 | |
mid-latitude_N | p46_r32 | 2001/6/8 | 64.33 | 56.84 | 1530 | |
* | mid-latitude_S | p171_r82 | 2001/11/11 | 58.60 | 6.76 | 1267 |
* | mid-latitude_S | p71_r87 | 2001/10/29 | 51.87 | 8.14 | 1003 |
mid-latitude_S | p72_r88 | 2001/1/5 | 53.58 | 14.63 | 1215 | |
mid-latitude_S | p72_r89 | 2001/2/6 | 46.53 | 2.09 | 645 | |
mid-latitude_S | p73_r89 | 2001/12/30 | 53.43 | 1.77 | 1852 | |
mid-latitude_S | p73_r90 | 2001/12/14 | 54.11 | 29.38 | 1424 | |
* | mid-latitude_S | p74_r91 | 2001/11/3 | 49.04 | 31.53 | 1705 |
mid-latitude_S | p89_r82 | 2001/11/12 | 58.80 | 0.99 | 1337 | |
mid-latitude_S | p92_r86 | 2001/10/16 | 49.22 | 63.17 | 1454 | |
polar_north | p197_r14 | 2001/6/26 | 47.06 | 18.97 | 1149 | |
polar_north | p61_r2 | 2000/6/14 | 32.24 | 1.41 | 1700 | |
* | subtropical_N | p118_r40 | 2001/7/3 | 65.82 | 18.11 | 987 |
subtropical_N | p131_r46 | 2001/9/16 | 59.49 | 52.04 | 1358 | |
subtropical_N | p142_r48 | 2001/4/22 | 63.88 | 0.74 | 1041 | |
subtropical_N | p148_r42 | 2001/5/2 | 64.64 | 0.00 | 534 | |
* | subtropical_N | p189_r47 | 2001/8/5 | 62.92 | 12.07 | 1106 |
* | subtropical_N | p26_r46 | 2001/3/24 | 57.00 | 8.48 | 3200 |
* | subtropical_N | p31_r43 | 2001/6/15 | 66.29 | 16.93 | 2667 |
* | subtropical_N | p35_r42 | 2001/8/14 | 62.20 | 3.31 | 858 |
* | subtropical_S | p1_r75 | 2001/2/5 | 55.37 | 4.24 | 4845 |
subtropical_S | p1_r76 | 2001/11/20 | 62.13 | 1.41 | 3106 | |
subtropical_S | p113_r75 | 2001/1/5 | 58.62 | 22.07 | 880 | |
subtropical_S | p158_r72_1 | 2001/3/21 | 52.39 | 30.76 | 1259 | |
* | subtropical_S | p158_r72_2 | 2001/4/22 | 46.98 | 10.48 | 1260 |
subtropical_S | p158_r72_3 | 2001/9/13 | 52.54 | 55.38 | 1260 | |
subtropical_S | p158_r72_4 | 2001/11/16 | 62.79 | 43.00 | 1260 | |
subtropical_S | p177_r80 | 2001/10/20 | 55.92 | 7.66 | 1000 | |
subtropical_S | p179_r75 | 2001/2/20 | 53.84 | 0.00 | 1430 | |
subtropical_S | p216_r74 | 2001/12/8 | 61.24 | 42.64 | 1471 | |
subtropical_S | p230_r79 | 2001/2/9 | 53.15 | 5.94 | 998 | |
subtropical_S | p232_r79 | 2001/11/6 | 59.99 | 0.49 | 4934 | |
tropical | p11_r55 | 2001/6/3 | 59.05 | 95.63 | 1105 | |
tropical | p116_r50 | 2001/4/16 | 63.01 | 13.67 | 983 | |
tropical | p184_r55 | 2001/7/17 | 57.73 | 92.08 | 1117 | |
tropical | p184_r63 | 2001/12/8 | 56.94 | 89.23 | 607 | |
tropical | p190_r54 | 2001/9/29 | 61.57 | 34.97 | 527 | |
tropical | p4_r70 | 2001/2/26 | 55.53 | 87.75 | 2706 | |