Masking rivers/water bodies for Sentinel-1 GRDH

In general steps for S1 data preprocessing topic (General Steps for Sentinel-1 Data Preprocessing) there are no considerations regarding excluding/masking rivers/water bodies.

However, Sentinel 1 toolbox contains more than one operator for masking data:

I wonder which one should I use for Sentinel-1 GRDH product to exclude influence of the rivers and water bodies (not sea as I’m processing subset without sea areas) on sigma calculation (using Calibration Operator)?
I have a shapefile which stores river (without water bodies), but maybe it is better approach to generate appropriate mask using S1 Toolbox (LandWaterMask Operator) and apply it using (which operator?)

The land/sea mask by default uses the SRTM DEM to quickly give a rough mask to remove the land or sea. It’s intended for the ocean tools where you don’t really care about the coast and a rough over estimate is good. The SRTM of course does not include any information about in land water bodies.
The fractional land/water mask uses 50 m shoreline data and can be more precise along the coast.
If you have your own shape file for rivers, you could import it into the product and then use the land/sea mask operator with the option “use vector as mask” and selecting the vector node of your imported shape file from your product.

1 Like

Thank you.
When should I apply masking?

  • before or after calibarion?
  • before or after applying terrain correction?

For small areas like rivers and lake you will need it to be very precise. The lat/lons of the shape file will not be in the correct position in the SAR image if the image is in SAR geometry. You will need to apply the shape file after terrain correction or use to Update Georeference operator which does a sort of backwards geocoding into pixel bands. The downside to using Update Georeference is that using a pixel geocoding makes anything you do with afterwards very slow.

EDITED

I implemented this in Python as follows: