Using snappy for Sentinel1 GRD Preprocessing

@ABraun @arnab
I would like to go from the Sentinel 1 GRD Product to a Terrain Corrected Image following these steps (using snappy in python):

  1. Read
  2. Apply Orbit File
  3. Thermal Noise Removal
  4. Calibration
  5. Terrain Flattening
  6. Speckle-Filter
  7. Terrain Correction
  8. Write as .dim

I’m new to this community and would need some help to get started. Thank you!

there are quite some scripts around which do this task, for example

They should be a good start and help you getting into it, and modify it according to your needs.

Thank you very much!

When I run the code from the first link, the part that executes the “do_thermal_noise_removal” function returns following error:

107         applyorbit = do_apply_orbit_file(sentinel_1)

–> 108 thermaremoved = do_thermal_noise_removal(applyorbit)
109 calibrated = do_calibration(thermaremoved, polarization, pols)
110 down_filtered = do_speckle_filtering(calibrated)

in do_thermal_noise_removal(source)
10 parameters = HashMap()
11 parameters.put(‘removeThermalNoise’, True)
—> 12 output = GPF.createProduct(‘ThermalNoiseRemoval’, parameters, source)
13 return output
14

RuntimeError: org.esa.snap.core.gpf.OperatorException: java.lang.NullPointerException

Do you know why this error is occurring and how I can fix it?

Thank you in advance,

CS