Export GeoTIFF with GCPs in ground range geometry


Sentinel 1 GRD products come in ground range geometry, where the georeference is given by a list of ground control points in form of a geolocation grid. The TIFF files in the measurement directory of a SAFE file actually have the ground control points included and the annotation XML files also contain them as a list.

However, when I use SNAP to export an image in ground range geometry (so without any ellipsoid or terrain correction to reproject the image), the resulting GeoTIFF loses any georeference. It does not contain ground control points anymore.

Is it possible to preprocess a GRD scene with SNAP (calibrate, remove noise, …) and export the result as a GeoTIFF including GCPs as a georeference? Ideally I want to use slice assembly to concatenate multiple Sentinel 1 scenes from the same orbit and export the result as a GeoTIFF containing all GCPs from the input scenes.

Why do you need the exported GRDs in radar ground range geometry instead of a map geometry? GRDs won’t match with any map geometry unless your area of interest in totally flat and you are very lucky…

Reprojecting the whole scene from GRD to a CRS is computationally expensive and keeping the same pixel size results in a way bigger image when range and azimuth directions don’t align well with the coordinate axes of the CRS. Instead of reprojecting the whole image I’d prefer to do my computation in ground range geometry and only reproject the results I’m interested in. This could be just a few corners of polygons of detected objects for example, so reprojecting the result would be way more efficient than reprojecting the whole scene.

I can understand that if you have further analysis after preprocessing the GRD, it would be way more efficient to work with the results in SAR geometry.

In my case, after the analysis, I just read the information of the tie point grids, which is written in the dim file (keyword: Tie_Point_Grid_Info), and use them as GCPs to georeference the image with GDAL.

But during the preprocessing in SNAP, there seems to be some resampling (?); instead of 10\times21 GCPs, there are only 11\times11 tie points written in the dim file…