Step by Step: Recommended Practice Flood Mapping

SAR data from Sentinel-1, a SAR mission from ESA, is available free of charge. To download Sentinel-1 data, register at the Sentinels Scientific Data Hub. Then a search option becomes available which can be used to specify the data need such as region of interest, product type, sensor mode, sensing period, among others. In the example below, we used Level-1 Ground Range Detected (GRD) Sentinel-1 data, which incorporates already some basic preprocessing.

Other SAR imagery is not freely available; these include: Radarsat-2, TerraSAR-X, and Cosmo-SkyMed. But archived SAR images from past missions can be freely obtained. For example, SAR images from Envisat/ASAR can be obtained from the ESA Category-1 programme ( Also, for commercial images (Radarsat-2, TerraSAR-X, and Cosmo-SkyMed) there are opportunities for scientific use of data for free or reduced rates.


Processing and screenshots are based on ESA's Sentinel Application Platform (SNAP) version 8.0 64-bit.


Step 0: Data preparation

Step 1: Pre-processing - Calibration

Step 2: Pre-processing - Speckle filtering

Step 3: Binarization

Step 4: Post-processing - Geometric correction

Step 5: Visualization in Google Earth

Example of the resulting product

SNAP supports all major data formats that are used to store SAR images.

0. Data preparation

0.1 To read the data set point to File --> Open Product.

SNAP8 Step 0.1

0.2 Select the Sentinel-1 image, either directly the *.zip file or the from the unzipped folder.

SNAP8 Step 0.2

0.3 The Product Explorer on the left shows relevant information on the product. This includes: Metadata (different SAR parameters on the orbit and image); Tie-points grid (interpolated latitude, longitude, incident angle and slant range time values); Bands (actual image bands). By right clicking on the Product, Properties can be opened which include information on mission, acquisition date, pass, etc.

0.4 For each polarization recorded there are two bands: Amplitude and Intensity. (The Intensity band is a virtual one. It is the square of the amplitude). Double click on either Amplitude or Intensity to view the image. In the bottom left corner, the WorldWind View shows the footprint of the selected scene.

SNAP8 Step 0.4

0.5 If you need a subset, select on the Menu panel Raster --> Subset. Specify parameters of the region of interest and click OK button. SNAP will open the product with all metadata relevant to the subset.

SNAP8 Step 0.5

0.6 The created subset is added as a new product, which is handled simultaneously as described in step 0.4. The footprint of the subset is also shown in the WorldWind View.

SNAP8 Step 0.6

1. Pre-processing - Calibration

1.1 Calibration: select on the Menu panel Radar --> Radiometric --> Calibrate.

SNAP8 Step 1.1

1.2 A Calibration window will open. Select the tab: Processing Parameters. Select the Polarizations you wish to process. This will create a new product with calibrated values of the backscatter coefficient.

SNAP8 Step 1.2

2. Pre-processing - Speckle filtering

2.1 Next step is filtration. Select Radar --> Speckle Filtering --> Single Product Speckle Filter.

SNAP8 Step 2.1

2.2 A Speckle filtering window will appear. Select the tab: Processing Parameters. Select Sigma0_VV and select Lee filter with filter size 7 by 7. Click the Run button.

SNAP8 Step 2.2

2.3 A new product will be created in the Product Explorer. Open the band in the newly created product.

SNAP8 Step 2.3

2.4 Compare the non-filtered and filtered versions.

SNAP8 Step 2.4


3. Binarization

3.1 To separate water from non-water a threshold can be selected. For this, we will analyse the histogram of the filtered backscatter coefficient. On the left side panel select the Colour Manipulation tab. The histogram of the backscatter coefficient will show up and one might need to use the logarithmic display. The histogram will show one or more peaks of different magnitude depending on the data. Low values of the backscatter will correspond to the water, and high values will correspond to the non-water class. We need to select the value that will separate water from non-water. In our case, the threshold value will be 2.22E-2.

SNAP8 Step 3.1

3.2 To segment or binarize the image we will apply band arithmetic. For this, go to Raster --> Band Maths…

SNAP8 Step 3.2

3.3 A window will open. Type a name for the new band, for example, water. Remove checkbox from the virtual band (the virtual band is in the memory but not physically on the disc). Click Edit Expression… button. The band math utility allows one to make any sorts of mathematical and logical expressions on the bands available in the product. Our goal is to create a new image which will be, for example, 255, for water objects (for backscatter lower our threshold of 2.22E-2), and 0 for higher values. To do this, enter into the Expression field the following expression: 255*(Sigma0_VV<2.22E-2). The expression (Sigma0_VV<2.22E-2) will return the logical value: true (or 1) for values less than 2.22E-2, and false (or 0) for higher values. Then we just multiply by 255. Click OK button.

SNAP8 Step 3.3

Alternatively, another Band Math equation could be 

if Sigma0_VV < 2.22E-2 then 1 else 0

SNAP8 Step 3.3

3.4 A new band named water will be added to the product. Double click this band to view the image.

SNAP8 Step 3.4

4. Post-processing - Geometric correction

4.1 The obtained image is in the geometry of the sensor. We need to reproject it to the geographic projection. To do this, select Radar --> Geometric --> Terrain Correction --> Range-Doppler Terrain Correction.

SNAP8 Step 4.1

4.2 A window with parameters will open. Select the Processing Parameters tab. In the Source Bands select only water; Digital Elevation Model - SRTM 3Sec (Auto Download), the DEM over the region that SAR image covers will be automatically downloaded, use SRTM 1Sec (Auto Download) if the tool does not run properly; DEM Resampling Method - BILINEAR_INTERPOLATION; Image Resampling Method - NEAREST_NEIGHBOUR; Pixel Spacing - 10m (which depends on the sensor and its acquisition mode); Map projection - WGS84(DD), if UTM coordinates are needed, use UTM/WGS84 (Automatic), SNAP will automatically select the zones. Click OK button.

SNAP8 Step 4.2

4.3 A new product will be created and appear in the Product Explorer. The product will be created in the DIM format and the image will be in img format. Double click the band in the newly created product. Notice that the geometry of the image changed to the geographic projection. This file can now be opened in a GIS (for example QGIS) to visualize and create a map.

SNAP8 Step 4.3

5. Visualization in Google Earth

5.1 In order to display solely the water pixels, go to the left side panel, select the Colour Manipulation tab and the Table editor. Click on the boxes under Colour and set the background colours to None to make it transparent; optionally, you can change the water pixels (white colour) to another colour.

SNAP8 Step 5.1

5.2 To visualize the water band in Google Earth, export it as a KMZ file; right click on the opened image --> Export View as Google Earth KMZ. Another way to export the flood mask is through File --> Export --> select file format to export.

SNAP8 Step 5.2

5.3 Import the KMZ file to Google Earth.

SNAP8 Step 5.3.1SNAP8 Step 5.3.2

Example of the resulting product

SNAP8 Example result


To assess the quality of the resulting flood mask, we compare it with the flood mask created by the Copernicus Emergency Management Service (EMS). The Copernicus EMS website for the flood event in Malawi (January 2015) can be found here and includes the results in vector format. These files can be imported and analyzed in a GIS (e.g., Quantum GIS).

The following figure shows both flood masks in comparison. Due to the thresholding without manual post-editing or other post-processing techniques in the Recommended Practices Flood Mapping, several pixels around the main water bodies are found as water, whereby most of them might be false positives (a wrong classification of water). Apart from that and some river structures, there is an overall concordance between both flood masks.

SNAP image

In the next figure Sentinel-1 subsets from before and during the flood event as well as the Recommended Practies and EMS flood masks are shown in detail. As an example, the red markings indicate false negatives meaning that water pixels were not classified as water. The orange marking of the EMS flood mask indicates an example for a false positive - a wrong classification of water.

SNAP image