Hi everyone,
I’m encountering an unexpected inconsistency when processing Sentinel-1 GRD data for a time-series workflow, and I’d appreciate any insights from the community.
Goal
I am processing a stack of 7 Sentinel-1 GRD images (June–August 2021) to compute the minimum Gamma0 value across the series, so deterministic results are essential.
Processing Graph
Read → Apply-Orbit → Calibration (Beta0) → Terrain-Flattening → Speckle-Filter (Refined Lee) → Terrain-Correction (Nearest Neighbor) → Write
All parameters are identical in every run.
The Issue
I performed two tests using the Batch Processing tool in the SNAP Desktop GUI.
Test 1 – Process images one by one
-
Load one image into the Batch Processing tool
-
Run the graph
-
Then load the next image and run again
Result:
This approach always produces identical outputs. Re-running the workflow image-by-image yields perfectly reproducible pixel values.
Test 2 – Process all 7 images at once
-
Load all 7 images into the batch list simultaneously
-
Run the graph in one batch job
Result:
The outputs differ from Test 1.
Additionally, repeating Test 2 produces slightly different results each time — the results are not deterministic when processed as a full list.
My Question
-
Is there a setting or recommended approach in SNAP’s Batch Processing tool to ensure that each product in a batch is processed in complete isolation, producing deterministic results?
-
If not, is it advisable to switch to using gpt in a loop or script to guarantee consistent behaviour?
System Details
SNAP Version: 12.0.0
OS: Windows
Any guidance or explanation would be greatly appreciated!