On Tue, 23 Mar 2021, Bullinger, Sebastian wrote:

Dear gdal community,

I'm currently working with a set of satellite images that are geo-registered 
with a set of GCPs. To compute a geo-transform from the GCPs, I've been using 
gdalwarp with:

gdalwarp -of GTiff path/to/original/file path/to/warped/file

While "gdalwarp" correctly computes a transformation from the GCPs, at the same 
it also performs some kind of rectification / north-up image transformation. I'm not sure 
about the applied operation.

Presumably, the reason for this is that the original GCPs reflect a 
transformation with skew factors.
See the following transformations of the original and the warped image.

import gdal
dataset = gdal.Open("path/to/original/file")
print(gdal.GCPsToGeoTransform(dataset.GetGCPs()))
(-58.57294039342205, -3.991598267026281e-06, 0.0, -34.451175177186684, 
-3.6492767328575985e-07, 3.1987810722132996e-06)

import gdal
dataset = gdal.Open("path/to/warped/file")
print(dataset.GetGeoTransform())
(-58.577917916461026, 3.435846284510554e-06, 0.0, -34.44693359348493, 0.0, 
-3.435846284510554e-06)

The "rectification" result is very convenient, since it allows to use the 
images with an existing satellite image segmentation pipeline (which tiles the satellite 
images using geo-tiles)
However, in order to overlay the segmentations (performed on the "rectified" images) with 
the original images, I need some information about the transformation applied during 
"gdalwarp".

I've searched the documentation for more information - unfortunately without 
success.
For example, parameters like "-novshiftgrid" do not affect this transformation.

It would be very helpful, if someone could shed some light on the used 
"rectification".
What kind of operation is applied? What would be the correct term to search for?
Is it "only" a decomposition of the transform? Or does "gdalwarp" something 
else too?
Is there a possibility to access this information, while using "gdalwarp"? (Or 
can this operation also be done by hand?)
Does GDAL contain any functions to invert this "rectification" step - given the 
corresponding transformation used by "gdalwarp"?

I don't know the answers.

I *guess* that the rectification is not deliberate, but simply that the
output rectangle is aligned with the (target) spatial reference system (SRS). Have you noticed whether the output image has no-data pixels at the edges, or crops the original ? I would expect it to do a little of each.

--
Andrew C. Aitchison                                     Kendal, UK
                        and...@aitchison.me.uk
_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/gdal-dev

Reply via email to