[gdal-dev] coordinate transforms

Al Niessner al.niessner at gmail.com
Mon Aug 20 22:07:13 PDT 2012


OS:    Ubuntu 12.04
lang:   Python
mods: gdal/osr

I am very new to this topic. I have been searching the web for my answers
and have not been able to find them yet. The short version of my question
is, how do I use gdal/osr to transform vectors of points between UTM
(NAD83) and WSG84?

If this is not the correct mailing list, then please let me know and give
me a hint as to where the right one is so that I can get in the correct
room. If I am in the correct room and have your attention, here is the
longer version of the question.

The latest gdal installed with Ubuntu allows me to load the USGS maps in
geo-referenced PDF format into numpy arrays via the dataset (or ds as I
will call it from now on). Those tutorials are straight forward and I
understand them. I can load the geo transform and understand the pixel to
UTM (NAD83) mapping. Not overly difficult really.

Now, I have tracks from my GPS in WSG84 DMS format. Now I want to convert
that vector of points to UTM (NAD83) so that I can lay it back on my numpy
array (USGS Map).

I read the osr Coordinate Transform page and have some vague idea that I
need to create two SpatialReference objects and set some attributes about
them. I can then use these to create a CoordinateTransform, which in turn
contains the method that I want to transform my vector of points. Not fun,
but fun enough.

Creating the WGS84 SpatialReference is pretty straight forward. I just do:
          in_sr.SetWellKnownGeogCS ('WGS84')
and all seems well enough.

Now I need to create my SpatialReference for the UTM (NAD83) coordinates.
So, I go back to my USGS geo-referenced PDF dataset and look at its
projection:
 'PROJCS["unnamed",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS
1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY["EPSG","6269"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9108"]],AUTHORITY["EPSG","4269"]],PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",34],PARAMETER["standard_parallel_2",40.5],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",-120],PARAMETER["false_easting",0],PARAMETER["false_northing",-4000000]]'

The projection onto the Albers_Conic is different than the base NAD83 that
is in osr. So, I tried several random swings at doing and ImportFrom but
none of them work. Some even crash hard. Since I do not understand the
acronyms it really is just random guessing. I understand URL and this is
not a URL and same with XML. The rest are a bit of a mystery to me.

So, this is where I am. How do I define my SpatialReference's  so that I
can translate a vector of points. I want to be able to extract as much
information from the PDF as I can because I want to automate this process a
bit more. I basically want to look up the maps given a GPS track and lay it
on the map. First, however, I just need to know how initialize the
SpatialReference and do the CoordinateTransforms.

Thanks for any all help. It is very much appreciated.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/gdal-dev/attachments/20120820/b9179a58/attachment.html>


More information about the gdal-dev mailing list