1

Im completely new to SAR, and Im trying to understand the basics.

Im studying a small area in Google Earth Engine, and Im making timeseries of water pixels with SAR imagery. However, I observed significant differences between some days, and when I looked the angle from those images, there were like 31 and 40.

Therefore, how could I filter my image collection based on angle? Something like to stack images with angle 30-35, and 35-40, etc. Which function can I use in the filtering part?

Map.addLayer(vuursteentocht, {}, 'ROI')
Map.centerObject(vuursteentocht, 8)

var collectionVV_desc = ee.ImageCollection('COPERNICUS/S1_GRD')
 .filter(ee.Filter.eq('instrumentMode', 'IW'))
 .filter(ee.Filter.listContains('transmitterReceiverPolarisation', 'VV'))
 .filter(ee.Filter.eq('orbitProperties_pass', 'DESCENDING'))
 .filterBounds(vuursteentocht)
 .filterDate("2017-10-30", "2018-02-21")
print(collectionVV_desc);

1 Answer 1

1

You can mask every image based on the angle band like this:

var maskedAngles = collectionVV_desc
  .map(function (image) {
    var angle = image.select('angle')
    return image.updateMask(
      angle.gte(30).and(angle.lt(35))
    )
  })

An alternative would be to only use imagery from a specific orbit:

var relativeOrbitNumbers = ee.List(collectionVV_desc
    .distinct('relativeOrbitNumber_start')
    .aggregate_array('relativeOrbitNumber_start'))

print('relativeOrbitNumbers', relativeOrbitNumbers)

var fromASingleOrbit = collectionVV_desc
  .filter(ee.Filter.eq('relativeOrbitNumber_start', relativeOrbitNumbers.get(0)))
3
  • Thanks!! So, for the first way: after i make the mask, should i apply it to collection with the .map function or something like this? Because if i print the collection again, im getting the same amount of images (48). What i need is to keep only the images with angle between 30-35, in my roi. Commented Apr 21, 2020 at 10:35
  • The above code is not creating a mask, it is mapping over the collection, masking all images. The result is a new collection, with the same amount of imagery, but where pixels where the angle is outside of the range is masked. Commented Apr 21, 2020 at 10:38
  • The second approach is simply filtering out complete images from the collection. Commented Apr 21, 2020 at 11:02

Your Answer

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

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