Enhanced Spectral Diversity

Sentinel-1 Enhanced Spectral Diversity

This operator implements the Network Enhanced Spectral Diversity (NESD) method for TOPS coregistration [1]. It performs the joint coregistration of a Sentinel-1 stack by creating a network (graph) of images and then estimating range and azimuth offsets by solving an optimization problem. This operator estimates rigid azimuth and range offsets (i.e., constant for each image) with respect to a reference image considering the offsets of multiple secondary-secondary pairs. Note that, in this context, an image corresponds to the whole sub-swath of a split S-1 SLC.

Operation

NESD first creates a network of images in which nodes represent the images in the stack and arcs represent image-pair offsets (either range or azimuth). Then, rigid image offsets are computed by integrating the image-pair offsets.

For the range integration network, image-pair offsets are estimated by using incoherent cross-correlation. The estimation is done for each burst using a small block of data in the center of the burst. The estimates from all bursts are then averaged to get the final constant range offset for the whole sub-swath.

For the azimuth integration network, image-pair offsets are estimated by using the Enhanced Spectral Diversity (ESD) method [2]. The ESD approach exploits the data in the overlap areas of adjacent bursts. The estimation is done for a number of windows in every overlap area and the final azimuth offset is obtained by one of the following two estimation methods: a periodogram or by averaging all the estimations. Both estimation methods are presented in [2].

The integrated range and azimuth shifts are saved in both the metadata of the output product and in a pair of json files [swath]_range_shifts.json and [swath]_azimuth_shifts.json, where [swath] is the name of the corresponding swath for a stack. Also, azimuth shifts for each image pair are stored in ASCII files named with the suffix _azimuth_shift.txt. These files can be found in the user's \.snap\var\log directory.

Finally, the operator applies range and azimuth shifts to every burst using the range and azimuth offsets estimated above.

Input

Output

Parameters



Execution Options

Depending on the amount of images available and your computational resources, there are two possible workflows for applying the joint coregistration.

Sequential workflow (recommended for Desktop users)

First apply Back Geocoding. In the menu choose:
Radar > Coregistration > S1 TOPS Coregistration > S-1 TOPS Back Geocoding.
Then apply Spectral Diversity. In the menu choose:
Radar > Coregistration > S1 TOPS Coregistration > S-1 TOPS Enhanced Spectral Diversity.
This will produce a coregistered stack.

Options for ESD should be set as follows:

It is recommended to use the ProductSet-Reader in combination with Back Geocoding and Enhanced Spectral Diversity.

This method should be preferred for small stacks, where the meaning of small will depend on your computational resources. If your resources are not enough to (timely) complete the execution, you might want to try the distributed workflow.

Distributed workflow (recommended for Cloud deployments)

This worklfow has two stages.

1. Compute range and azimuth shifts

For this stage, you have to execute Back Geocoding followed by Enhanced Spectral Diversity without writing the target bands. In the GUI you can do this through the menu:
Radar > Coregistration > S1 TOPS Coregistration > S-1 TOPS Joint Coregistration (write shifts to file). Make sure that the option Do not write target bands is selected:

It is recommended to use a smaller tile size in the azimuth direction (i.e., the tile height) so that wasteful processing is minimized when Back Geocoding is applied to burst overlaps (note that we are assuming Back Geocoding and Enhanced Spectral Diversity are included in the same graph). For example, this can be configured when calling GPT by passing -Dsnap.dataio.reader.tileWidth=500 -Dsnap.dataio.reader.tileHeight=75 as parameters.

If you are editing the graph' xml file, set doNotWriteTargetBands to false.

Once the Enhanced Spectral Diversity operator finishes, the range and azimuth shifts will be available in the [swath]_range_shifts.json and [swath]_azimuth_shifts.json files.

2. Apply range and azimuth shifts

Apply Back Geocoding and Enhanced Spectral Diversity for each reference-image specifying the range and azimuth shifts computed in stage 1. You can look them up in the json files. Please note that you must use the same reference image as in stage 1. In the, GUI you can specify the shifts as follows:

If you editing the graph's xml file, set useSuppliedRangeShift and useSuppliedAzimuthShift to true; and useSuppliedRangeShift and useSuppliedAzimuthShift to the corresponding shifts.

Note that, as the application of shifts are independent for each reference-secondary pair, stage 2 can be executed in parallel (in different processing nodes).

References

  1. H. Fattahi, P. Agram, and M. Simons. "A network-based enhanced spectral diversity approach for TOPS time-series analysis". In: IEEE Transactions on Geoscience and Remote Sensing, vol. 55, no. 2, pp. 777-786. February 2017. DOI:10.1109/TGRS.2016.2614925
  2. N. Yague-Martinez, P. Prats-Iraola, F. Rodriguez Gonzalez, R. Brcic, R. Shau, D. Geudtner, M. Eineder, and R. Bamler. "Interferometric Processing of Sentinel-1 TOPS Data". In: IEEE Transactions on Geoscience and Remote Sensing, vol. 54, no. 4, pp. 2220-2234, April 2016. ISSN:0196-2892. DOI:10.1109/TGRS.2015.2497902