# Analysis-Ready Data for SAR (Sentinel-1)

# Backscatter computation

Data from synthetic aperture radar (SAR) sensors requires significant preprocessing to be calibrated and normalized for terrain. This is referred to as backscatter computation, and provider in openEO Platform by

To perform a backscatter computation, the user has to load an raw SAR data with the load_collection process and immediately apply ├┤ne of the processes to it.

  • Python
  • JavaScript
# Load the data. You have to specify a collection ID, spatial_extent and temporal_extent
datacube = connection.load_collection(...)
# Either apply
datacube = datacube.sar_backscatter()
# or 
datacube = datacube.ard_normalized_radar_backscatter()

For more details see the Python client documentation for the respective methods:

WARNING

These correction algorithms are typically tightly coupled with the raw data, so it is important they are applied immediately after the load_collection process. It is recommended to avoid any other operations in between.

# Reference implementations

This section shows a few working examples for these processes.

Note

Please note that you need to connect and authenticate to openEO Platform first before you can execute any of the code snippets below. Details can be found in the corresponding Getting Started guides.

# Sentinel-1 toolbox (provided by EODC)

EODC supports the sar_backscatter process, which internally uses the Sentinel-1 toolbox (opens new window).

There are two collections available at this back-end right now: S1_GRD_SIGMA0_ASCENDING and S1_GRD_SIGMA0_DESCENDING. Below is an example for one of them:

  • Python
  • JavaScript
datacube = connection.load_collection(
    'S1_GRD_SIGMA0_ASCENDING',
    spatial_extent = {'west': 2.59003, 'east': 2.8949, 'south': 51.069, 'north': 51.2206},
    temporal_extent = ['2019-10-10', '2019-10-10']
)
datacube = datacube.sar_backscatter()
job = datacube.execute_batch(format = 'GTiff')
job.get_results().download_files("sar-nrb")

# CARD4L NRB for SENTINEL1_GRD collection (provided by Sentinel Hub)

When working with the Sentinel Hub based SENTINEL1_GRD collection, both SAR backscatter processes can be used. The underlying implementation is provided by Sentinel Hub (opens new window), and offers full CARD4L compliant processing options.

  • Python
  • JavaScript
datacube = connection.load_collection(
    'SENTINEL1_GRD',
    spatial_extent = {'west': 2.59003, 'east': 2.8949, 'south': 51.069, 'north': 51.2206},
    temporal_extent = ['2019-10-10', '2019-10-10'],
    bands = ['VH','VV']
)
datacube = datacube.ard_normalized_radar_backscatter()
job = datacube.execute_batch(format = 'GTiff')
job.get_results().download_files("sar-nrb")

# Orfeo for other GRD collections (provided by VITO / TerraScope)

When working with other GRD data, an implementation (opens new window) based on Orfeo Toolbox (opens new window) is used.

The Orfeo implementation currently only supports sigma0 computation, and is not CARD4L compliant.

Last Updated: 10/14/2021, 11:56:19 AM