<div dir="ltr"><div>What I do to compute the (single) GSD (or pixel size) when there is a rotation is this:<br></div><div><br></div><div><span style="font-family:monospace">GSD = sqrt(abs(determinant([2x2 top left corner])))</span></div><div><br></div><div>see that pixel size can be different in X and Y directions. If you know your raster has no such distortion, you can just take the sqrt.<br></div><div>abs is important. Usually Y goes from top to bottom in images files, while the other way around in coordinate systems. That produces a negative determinant.</div><div><br></div><div>Cheers<br></div><div><div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature">.___ ._ ..._ .. . ._.  .___ .. __ . _. . __..  ... .... ._ .__<br>Entre dos pensamientos racionales <br>hay infinitos pensamientos irracionales.<br><br></div></div><br></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, 21 Dec 2020 at 12:55, Javier Jimenez Shaw <<a href="mailto:j1@jimenezshaw.com">j1@jimenezshaw.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Those transformation parameters can be seen as a 3x3 transformation matrix like this</div><div><span style="font-family:monospace"><br></span></div><div><span style="font-family:monospace">Xg     GT1 GT2 GT0     Xp</span></div><div><span style="font-family:monospace">Yg  =  GT4 GT5 GT3  *  Yp</span></div><div><span style="font-family:monospace"> 1      0   0   1       1<br></span></div><div><span style="font-family:monospace"><br></span></div><div><span style="font-family:monospace"><span style="font-family:arial,sans-serif">Where <span style="font-family:monospace">[Xp, Yp]</span> is the coordinate in pixels, and <span style="font-family:monospace">[Xg, Yg]</span> is the "geographic" coordinate (whatever it means ;)</span><br></span></div><div><span style="font-family:arial,sans-serif"><br></span></div><div><span style="font-family:arial,sans-serif">the 2x2 top left corner of the transformation matrix can be seen as a 2D rotation-scaling matrix: <a href="https://en.wikipedia.org/wiki/Transformation_matrix#Examples_in_2_dimensions" target="_blank">https://en.wikipedia.org/wiki/Transformation_matrix#Examples_in_2_dimensions</a><br><span style="font-family:monospace">[GT0, GT3]<span style="font-family:arial,sans-serif"> is the "geographic" coordinate of the pixel </span>[0, 0]<span style="font-family:arial,sans-serif"> (regardless rotation or scaling)</span><br></span></span></div><div><span style="font-family:monospace"><br></span></div><div><span style="font-family:monospace"><span style="font-family:arial,sans-serif">Cheers</span><br></span></div><div><div><div dir="ltr">.___ ._ ..._ .. . ._.  .___ .. __ . _. . __..  ... .... ._ .__<br>Entre dos pensamientos racionales <br>hay infinitos pensamientos irracionales.<br><br></div></div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, 21 Dec 2020 at 12:34, G Seiffert <<a href="mailto:hh1@posteo.de" target="_blank">hh1@posteo.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>
Hi all from GDLA.<br>
  <br>
Thanks for the opportunity to as a question. It's regarding the <span style="font-weight:bold">Geotransform Tutorial</span><span style="font-weight:bold"> </span>(<a href="https://gdal.org/tutorials/geotransforms_tut.html" target="_blank">https://gdal.org/tutorials/geotransforms_tut.html</a>).
 Tried to get info in the web but since this seems a tricky one, my 
searches failed.<br>
  <br>
The tutorial only deals with the ideal case of 'North up' images, for 
which GT(2) and GT(4) are zero. However, my images are 'East up' and 
potentially 'any direction up' (underwater photomosaic surveys by ROV). 
The rotation works with '90' for GT(2, 4). But the scaling seems 
completely ignored. Any hint?  If it would be easy, I assume your 
tutorial would give an example for how to deal with "non-N-up' images, 
but ...<br>
  <br>
My pics are 1920x1080, with pixel resolution of 0.0015 (yes, 0.15cm per 
pixel, we're flying just 3m above the bottom).<br>
  <br>
In case I rotate the images prior to geotransform (in Photoshop), 
geotransform works perfect, with GT(2, 4) = 0. Scaling spot on. I can 
live with that for our last survey but I'm also looking for a solution 
in case our survey heading cannot be 0, 90, 180, or 270, but has to be 
something like 35° (due to bottom currents etc.).<br>
  <br>
Best regards, any hint qappreciated,<br>
Gerhard<br>
  <br>
 <br>
</div>

_______________________________________________<br>
gdal-dev mailing list<br>
<a href="mailto:gdal-dev@lists.osgeo.org" target="_blank">gdal-dev@lists.osgeo.org</a><br>
<a href="https://lists.osgeo.org/mailman/listinfo/gdal-dev" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/gdal-dev</a><br>
</blockquote></div>
</blockquote></div>