Hello! I am working on a Python script that uses the esa_snappy plugin to process a time series of Sentinel-1 GRD images. First, each image is individually preprocessed by applying the following operators:
- Thermal Noise Removal
- Apply Orbit File
- Calibration
- Subset
After preprocessing, I would like to coregister all the images using the DEM-Assisted-Coregistration operator. Here is a snippet of my code, where preprocessed_products contains all the products after the preprocessing steps described above:
source_array = jpy.array(‘org.esa.snap.core.datamodel.Product’, len(preprocessed_products))
for idx, p in enumerate(preprocessed_products):
source_array[idx] = p
parameters = HashMap()
parameters.put('demName', 'Copernicus 30m Global DEM')
parameters.put('demResamplingMethod', 'BILINEAR_INTERPOLATION')
parameters.put('resamplingType', 'BILINEAR_INTERPOLATION')
parameters.put('maskOutAreaWithoutElevation', 'false')
stack_product = GPF.createProduct('DEM-Assisted-Coregistration', parameters, source_array)
At this point, I am facing two issues.
- Master image selection: the master image is not the first image in the time series, even though I have verified that all products are sorted chronologically before being passed to the coregistration operator.
- Slave image ordering: the slave images are also not ordered chronologically. For example, the output bands are named as follows (the same applies for VH):
Sigma0_VV_mst_12Jul2024
Sigma0_VV_slv1_24Jul2024
Sigma0_VV_slv2_06Jun2024
Sigma0_VV_slv3_18Jun2024
Sigma0_VV_slv4_13May2024
Sigma0_VV_slv5_25May2024
Sigma0_VV_slv6_07Apr2024
Sigma0_VV_slv7_19Apr2024
Sigma0_VV_slv8_01May2024
Is this the expected behavior of the DEM-Assisted-Coregistration operator? If so, how does SNAP determine the master image and the ordering of the slave images?
Finally, after coregistration, I apply Multi-look followed by Terrain Correction.
Thank you in advance for your help.