Pixel to lat/long transformation for GRD images

I have a question regarding Sentinel-1 GRD images and transforming pixels to lat/long, not using SNAP. I am calculating a transformation matrix using the lat/long coordinates of the 4 corners, but this gives me errors of hundreds of meters when I write out a km file (I am working in python). This does not seem right, my understanding is the absolute image registration should be much better than this.
Can someone provide pointers on how to do this? To be specific, I am downloading GRDH images, and I want to accurately map the pixels to lat/long. For Sentinel-2 this is done w/gdal and the geotransform matrix to map pixels to UTM coordinates, which can then be mapped to WGS84 coordinates, but I don’t see any analogous information encoded in the Sentinel-1 images to accurately do this.

Dear bbaris,

I am not surprised by your results.
The lat/lon is computed from 4 things. The SAR timing (range / azimuth), the orbit and the height.
The problems come from the fact the S-1 processor is using a coarse DEM and further sub-sampling it.
Hence the height used for a pixel could be not accurate to allow for a good geocoding.

Accurate geocoding is available only if using proper geocoding techniques based on the resolution of the range-doppler equation like the one implemented in SNAP. This allows you to use your own DEM and to properly geocode the data. This should allow you to have an accuracy of few meters (much below the pixel size)

This being said, we have improved the geolocation grid in the version of the IPF deployed last december 2019 (IPF V3.2) we still use a coarse DEM but the sub-sampling is not performed anymore such that the height used for each point is more accurate and we don’t expect this anymore.

KInd regards,
Nunio MIranda

1 Like

Ok, thank you very much for your reply! I was just worried I was missing something simple. I’ll look into more advanced solutions, using image formation techniques.