Example applications

This page shows a few potential applications for which the Surface Water Mapping Tool could be used, by loading a pre-calculated map in the tool. These maps only cover the area of interest of each specific example to keep storage and loading times to a minimum. The input parameters are also updated to match those used to create the example map. If desired, the tool can then be used to replicate the map and extend it over the entire SERVIR-Mekong area. More extensive explanations and examples can be found in the documentation (at the About page).

Click on one of the images below to load an example. If you want to reload the default map that is shown when the application first starts up, click here.

Permanent and temporary water
The tool is primarily suited to detect permanent and temporary water, in any of its occurrences. Permanent water is water that was present for most of the time within the chosen period, and as such is often represented by reservoirs, lakes and rivers. Temporary water is water that was only present for a part of the period, and as such is often represented by floods or (seasonally) inundated land; wetlands, rice fields, fish ponds, etc.
The example shows the area around Phnom Penh, Cambodia, in 2013. This was a relatively wet year and therefore both permanent and temporary water are being detected in relatively large areas.
Reservoir surface areas can easily be picked up with the tool. By adjusting the time period the user can detect how the extent of a reservoir changes over time. This means that it is possible to detect:
- when a reservoir was constructed (and how this changed the surface water within its region)
- how reservoir surface area changes over the years (for example, to assess the effect of droughts)
- the long-term seasonality and/or monthly characteristics of reservoirs (by activating the monthly control option)
The example shows Shwegyin Reservoir in Myanmar, which was constructed in 2010. The time period has been selected to highlight how the reservoir was filling up after construction. Permanent water gives an indication of surface water when the reservoir just started filling up, and temporary water gives an indication of the final extent of reservoir in 2011.
As mentioned above, temporary water can be an indication of a flood (although it can also indicate other situations). For this purpose, the time period should be selected carefully: it should fully capture the period of the flood, while keeping the time period as short as possible. The latter is a challenge, because of the algorithm behind the tool, which requires a sufficient number of satellite images to function properly. Therefore, the time period is limited to a three months minimum. This implies that only large scale floods with a relatively long duration can be picked up by this tool.
The example shows the floods around Bangkok in 2011.
River morphology / erosion
Permanent water over different time period can show how surface water shifts over time. This can be particularly useful to assess river morphology, i.e. how the river course changes over the years. In the tool this could be achieved by selecting multiple time periods, updating the map each time. By downloading these maps as well, the user can carry out analyses on the combination of these maps, to really quantitatively assess the characteristics of river morphology over a region.
The example shows a section of the Irrawaddy/Ayeyarwady river in Myanmar over a 10 year period (2008-2017). The multi-year time period gives an indication of where water was present during this time, with permanent water showing where the river was stable and temporary water showing where it was changing, diverging or meandering.
Seasonal inundation
Aside from floods, temporary water is often an indication of seasonal inundation. This can be both natural (wetlands) or human-induced (rice fields). This is more easily picked up than floods, because the inundation often lasts longer and as such it is not hindered by the limitation on the time period selection. The detection of seasonal inundation can be used to assess:
- the location and area of rice fields and fish ponds
- the location and area of wetlands
- the seasonal characteristics of water bodies
The example shows Tonlé Sap Lake in Cambodia over the period 1988-2017, with the months slider activated. January is shown by default, but the slider can be used to view the other months. Each month represents an analysis done on all satellite images taken only during that month for 1988-2017.

About the Surface Water Mapping Tool

The tool works by merging data from different Landsat satellite missions, providing a dataset that spans from the present day all the way back to 1984, which is also continously being updated. A stack of images is created for the time period selected by the user. From this stack of images two percentile maps are calculated, which represent two different situations. The higher percentile (with a default value of 40) represents the permanent situation; that which was present for the entire selected time period. The lower percentile (default value of 8) represents a temporary situation; that which was present only for a short time within the selected time period. From each percentile map a water index map is calculated, using the Modified Normalized Difference Water Index (MNDWI) [Xu, 2006]. This index combines several spectral bands from the Landsat satellites that are sensitive to the occurrence of water. A threshold value is then applied at the pixel level to classify water and non-water. Corrections are applied to improve results, reducing errors associated with falsely classified water over dark vegetation and (hill) shadows. Dark vegetation is masked out using the Normalized Difference Vegetation Index (NDVI) and hill shadows are masked out using a Height Above Nearest Drainage (HAND) map [Rennó et al., 2008], derived from the Multi-Error-Removed Improved-Terrain (MERIT) Digital Elevation Model (DEM) [Yamazaki et al., 2017]. The various steps of the tool are shown in the figure below.

The resulting water maps are loaded into the web application and displayed on top of the background map. The map calculated from the 40th percentile map represents permanent water (within the selected time period) and the map calculated from the 8th percentile map represents temporary water. Permanent water mostly represents reservoirs, lakes and rivers (that did not change a lot over the selected time period). Temporary water most often represents (seasonally) inundated land, such as wetlands, rice fields or fish ponds. It can also be an indication of floods or changes in water bodies.

The following layers can be visualized using the tool:
- background (white background that can be used to more clearly see other layers)
- HAND (pre-calculated Height Above Nearest Drainge map)
- water (the final result; permanent and temporary water)

Please note that, due to the statistical nature of this method, the maps are asynchronous in time, i.e. not each pixel is covered with water at the same time but these maps are an integration over the selected period.

Relevant links:
User Guide
Background and verification

Development and Acknowledgement

The development of the algorithm using Landsat 8 data was initiated in the PhD research of Gennadii Donchyts (co-funded by Deltares and the Technical University of Delft). Testing and further development of the algorithm using the Murray-Darling basin in Australia was funded by the EC FP7 project eartH2Observe (under grant agreement No 603608), which led to the publication of Donchyts et al. (2016), see below.

Application to the Mekong basin, which included testing, applying and adjusting thresholds, as well as further optimisation of the scripts to fully take advantage of Google Earth Engine capabilities, was supported by the SERVIR-Mekong project. This also included the addition of data from Landsat 4, 5 and 7. The development of the method to calculate the HAND dataset was fully supported by the eartH2Observe project, but the application for the Mekong, as well as refinement for this area, was supported by the SERVIR-Mekong project.

Landsat data is made freely available by the U.S. Geological Survey (USGS) and is both accessed and processed in Google Earth Engine.

The creation of the Google Appspot based online application was fully supported by the SERVIR-Mekong project.


Gennadii, D., Schellekens, J., Winsemius, H., Eisemann, E. & van de Giesen, N. (2016). A 30 m Resolution Surface Water Mask Including Estimation of Positional and Thematic Differences Using Landsat 8, SRTM and OpenStreetMap: A Case Study in the Murray-Darling Basin, Australia. Remote Sensing, 8(5), 386 .

Rennó, C. D., Nobre, A. D., Cuartas, L. A., Soares, J. V., Hodnett, M. G., Tomasella, J., & Waterloo, M. J. (2008). HAND, a new terrain descriptor using SRTM-DEM: Mapping terra-firme rainforest environments in Amazonia. Remote Sensing of Environment, 112(9), 3469-3481.

Xu, H. (2006). Modification of normalised difference water index (NDWI) to enhance open water features in remotely sensed imagery. International Journal of Remote Sensing, 27(14), 3025–3033. http://doi.org/10.1080/01431160600589179.

Yamazaki D., D. Ikeshima, R. Tawatari, T. Yamaguchi, F. O'Loughlin, J.C. Neal, C.C. Sampson, S. Kanae & P.D. Bates. (2017). A high accuracy map of global terrain elevations. Geophysical Research Letters, vol.44, pp.5844-5853. doi: 10.1002/2017GL072874.

Landsat images courtesy of the USGS: https://landsat.usgs.gov/

MERIT DEM: http://hydro.iis.u-tokyo.ac.jp/~yamadai/MERIT_DEM/

Surface Water Mapping Tool
Welcome to the SERVIR-Mekong Surface Water Mapping Tool.
This application allows you to carry out live calculations using a sophisticated water detection algorithm for the SERVIR-Mekong region. It is based on the algorithm described in this paper.

You can change the time period over which results are calculated and download the results for a region of your choosing. If you are confident that you understand the implications, you can also check out the other options which give you greater control over the outcome of the algorithm.

Temporary water can, in certain cases, be seen as in indication of a flood. However, both permanent and temporary water are relative to the selected time period. For example, if a long time period is chosen (e.g. 10 years), temporary water does not necessarily indicate a flood has occurred there, but it does show that water was detected there for some time within the selected period. To detect flooded water, it is advised to use a time period of 1 year or shorter.

Please note that, because everything is calculated on-the-fly, it might take some time for results to load.

Enter or select a time period to perform a new calculation.
Check out the documentation to learn more about the tool.


Show months:
Instead of a single map, this will show results for each individual month. This makes it possible to detect monthly trends. Since this substantially reduces the total amount of images within each map, this does require a longer time period. Instead of the usual 90 days minimum, the minimum time period when climatology is activated is 3 years. Even so, it is still possible that a certain month will not have sufficient satellite coverage to show accurate information over the entire area. Since 12 maps are calculated instead of 1, this can also slow down the application a lot. Please consider these things when activating this option.

When activated, a slider for the different months will appear at the layers control section.
Defringe images:
Some Landsat satellite images contain noise due to sensor failures. See the following page for background information: http://landsat.usgs.gov/. The defringe algorithm attemps to mask out the pixels where sensor failures are an issue, reducing noise in the final result. However, due to the masking involved, this does result in less water being detected (especially temporary water), as it reduces the total amount of information. It is therefore important to consider what is most relevant; reducing the noise (apply defringing) or maintaining as much information from the data as possible (do not apply defringing). Since defringing requires additional steps in the calculation, it delays the visualization of results slightly.
The percentile value controls the how the complete stack of satellite images is reduced to a single image (see GEE documentation for more info on this). This parameter can take a value between 0 and 100, but in the lower ranges the effect of shadows will deteriorate results, while clouds will do the same in the higher ranges. The value on the left is used to calculate permanent water, the value on the right for temporary water. The value for permanent water should always exceed the one for temporary water. For permanent water, it is recommended to stay within the range of 15 - 60. For temporary water, it is recommended to stay within the range of 5 - 15.
Water threshold:
The water threshold value controls when something is classified as water from the Modified Normalized Difference Water Index (MNDWI). For more information on MNDWI, check out the relevant paper by Xu (2006). The parameter can take a value between -1 and 1, with lower values resulting in more areas identified as being water. However, it is recommended to stay within the range of 0.0 - 0.4.
Vegetation threshold:
The vegetation threshold value controls when something is classified as vegetation, which is used to mask out false-positives from the water detection algorithm. The latter especially occurs in areas with dark vegetation. This uses the Normalized Difference Vegetation Index (NDVI), which is often used to study vegetation.
A little background information on NDVI can be found, amongst others, at Wikipedia. The parameter can take a value between -1 and 1, but it is recommended to stay within the range of 0.2 - 0.6.
HAND threshold:
HAND (Height Above Nearest Drainage) is a method to normalize land elevation values relative to streams. For more information about HAND see the relevant papers by Rennó et al. (2008) and Nobre et al. (2011). This makes it possible to use a single value to mask out false-positives related to elevation, such as hill shades (these can appear similar to water in the processed satellite images). The parameter can take a value between 0 and 9999 meter. It is recommended to choose a value of at least 10 meter.
Clouds threshold:
The cloud threshold value controls when something is classified as a cloud, which will subsequently be removed from the analysis. This is done to reduce the impact of clouds on the algorithm. The parameter can take a value between 0 and 100, or be turned off completely, by setting it to -1 (default). This parameter an effect on the percentile calculation, as cloud masking is carried out before that step. As such, changes in this parameter could permit the use of a different percentile value, and vice versa.

Exporting results is enabled once you have selected a region (or completed drawing a polygon) on the map. This is done by first choosing a region selection method above. This will either load a new map layer from which you can select one ore more areas, or it will allow you to draw a polygon on the map yourself. Since this accesses the same database as the other map layers it is advised to wait for those to load before making a region selection.

You can select multiple areas (up to a maximum of four) by holding down the Ctrl key. Pressing the Esc key will reset the region selection.

Optionally, a filename for the to-be-downloaded data can be entered. If omitted, a default filename will be constructed using the selected time period.

Clicking the Export button reveals a panel on the top left of the screen. Download links will be shown there once they are ready for use. Map (water) layers are downloaded as zipped GeoTIFF files (0=no water, 1=temporary water, 2=permanent water). Metadata with input parameters can be downloaded directly as a CSV file.

NOTE: Due to limitations with the current implementation of the download option, there is a constraint on the size of the area that can be downloaded. You will see a warning if the area you have selected or drawn is too big. Near the limit there is a possibility that you receive a corrupted zip file. In that case, simply delete it and retry the download. We are working on a better implementation of the download option, which will remove all area constraints and other issues.
The legend clarifies the map layers. You can toggle between the water legend and HAND legend by clicking on their respective tabs. The visualization of the layers themselves are handled in the control panel on the right.
0 m
20 m
40 m
60 m
80 m
100+ m