As any other raster data, one can read S1 .tiff products using gdal module as:
It should then be able to get two crucial sets of information regarding “Geo-projection” and “Geo-transformation” using:
geoproj = ds.GetProjection()
geotransform = ds.GetGeoTransform()
I tried it with Sentinel-2 products being read with Python/gdal and it provides you the relevant information. However absolutely nothing will be achieved when you do it with Sentinel-1 data.
I also tried to find such information within the .xml files inside the “annotation” folder which comes with each Sentinel-1 .SAFE product. So far nothing is achieved. I wonder if this lack of information regarding “Transformation” and “Projection” could be linked to the fact that these S-1 tiles are Ground Range Detected and therefore the information regarding transformation/projection must be calculated from other existing parameters? If yes, how?
I would appreciate any hint in this respect.
GRD is not projected, because it is in ground range geometry (the .tiff in the SAFE set is not a GeoTIFF). You need to first apply terrain correction to project and create a GeoTIFF, which will then have the geometry information embedded in the relevant TIFF tags (which gdal.open() recognises).
Thank you very much for these clarifying comments. I wonder if you are aware of any open source terrain correction procedure other than the one in SNAP? I want to include it in a preprocessing step of my workflow and I want to be independent from using SNAP.
You can try for example S1-Tiling by Cesbio or ASF MapReady. There are probably other options too.
Thank you very much Glemoine and Mengdahl. Thanks to your comments and suggestions I am getting a more clear picture of SAR image acquisition and SAR geometry.
please have a look at this tutorial on how to use BEAM DIMAP data directly instead of converting to GeoTiff: Export of products from SNAP
Maybe this solves your problem already?