When loading Sentinel-1 imagery using the GEE template script and zooming to the Arabian Peninsular some areas appear distorted with higher values for VV and VH bands independent of the time frame inspected.


Is this an artefact and can be corrected? The aim is to map surface soil moisture.

// Load the Sentinel-1 ImageCollection, filter to Jun-Sep 2020 observations.
    var sentinel1 = ee.ImageCollection('COPERNICUS/S1_GRD')
                        .filterDate('2020-06-01', '2020-10-01');
    // Filter the Sentinel-1 collection by metadata properties.
    var vvVhIw = sentinel1
      // Filter to get images with VV and VH dual polarization.
      .filter(ee.Filter.listContains('transmitterReceiverPolarisation', 'VV'))
      .filter(ee.Filter.listContains('transmitterReceiverPolarisation', 'VH'))
      // Filter to get images collected in interferometric wide swath mode.
      .filter(ee.Filter.eq('instrumentMode', 'IW'));
    // Separate ascending and descending orbit images into distinct collections.
    var vvVhIwAsc = vvVhIw.filter(
      ee.Filter.eq('orbitProperties_pass', 'ASCENDING'));
    var vvVhIwDesc = vvVhIw.filter(
      ee.Filter.eq('orbitProperties_pass', 'DESCENDING'));
    // Calculate temporal means for various observations to use for visualization.
    // Mean VH ascending.
    var vhIwAscMean = vvVhIwAsc.select('VH').mean();
    // Mean VH descending.
    var vhIwDescMean = vvVhIwDesc.select('VH').mean();
    // Mean VV for combined ascending and descending image collections.
    var vvIwAscDescMean = vvVhIwAsc.merge(vvVhIwDesc).select('VV').mean();
    // Mean VH for combined ascending and descending image collections.
    var vhIwAscDescMean = vvVhIwAsc.merge(vvVhIwDesc).select('VH').mean();
    // Display the temporal means for various observations, compare them.
    Map.addLayer(vvIwAscDescMean, {min: -12, max: -4}, 'vvIwAscDescMean');
    Map.addLayer(vhIwAscDescMean, {min: -18, max: -10}, 'vhIwAscDescMean');
    Map.addLayer(vhIwAscMean, {min: -18, max: -10}, 'vhIwAscMean');
    Map.addLayer(vhIwDescMean, {min: -18, max: -10}, 'vhIwDescMean');
    Map.setCenter(46.92140579223, 24.62017849068771, 9);  // KSA

1 Answer 1


This is RFI from (mostly) ground based radars and other EM sources. I've wrote about it here. You can't "clear" it up completely, but using lower DB values, or aggregating them over time, can give you a cleaner backscatter image.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.