7

I have a geo-referenced tiff file, in the web-mercator projection; and I need it converted to an azimuthal equidistant projection. I'm new to GIS and can't figure out how to do this.

I'm open to using any program for any OS, as long as it gets the job done.

And as far as OS-specific is concerned, I have computers with : Linux-Debian, Mac OX 10.6.8, Windows 7, and Windows XP.

  • What, if anything, have you tried so far? Do you have any GIS software already? If not, are you only looking for open source options? – MaryBeth Dec 14 '15 at 15:34
  • I've tried 'GRASS GIS' and QGIS, but couldn't figure out how to use them. – sbom Dec 14 '15 at 15:48
  • I've also tried Gprojector from nasa, which I find very easy to use, but it only accepts 'plate carree' as the source – sbom Dec 14 '15 at 15:50
6

Your source tif is in Pseudo mercator, but the extent stored inside the file is in degrees. This can not be interpreted correctly by gdalwarp, and so it delivers the untouched source file. You can get the correct extent in pseudo mercator coordinates from https://github.com/mapnik/mapnik/wiki/XMLConfigReference : -20037508.34, -20037508.34, 20037508.34, 20037508.34. With that, you can set the extent with gdal_translate manually before reprojecting.

The target projection is not covered by EPSG, but ESRI has invented a code 102016, which is included in GDAL and QGIS as EPSG:102016:

+proj=aeqd +lat_0=90 +lon_0=0 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs

You will get nasty artefacts along the 180° meridian, so an extra option SOURCE_EXTRA is needed. A blind spot on the north pole will remain, because pseudo mercator does not cover it:

gdal_translate -a_srs EPSG:3857 -of GTiff -a_ullr -20037508.34 20037508.34 20037508.34 -20037508.34 F:/Download/63575605298.3c.tif F:/Karten/merc_corrected.tif
gdalwarp -overwrite -s_srs EPSG:3857 -t_srs EPSG:102016 -ts 8192 8192 -wo SOURCE_EXTRA=1000 -of GTiff F:/Karten/merc_corrected.tif F:/Karten/world_aeqd.tif

enter image description here

  • 1
    great answer, very impressive, am removing the solution that I posted – Grant Humphries Dec 20 '15 at 16:41
1
  1. Load your raster layer into QGIS. Right click on the raster layer name in layer list and select Save As... from the popup menu. In the Save As dialog select a target format, name and an other CRS.

  2. You can also use gdal_warp (GDAL Utilities) from the command line:

gdalwarp -s_srs +init=epsg:yyyy -t_srs +init=epsg:xxxx input_raster output_raster

s_srs is the source projection, t_srs is the target projection.

  • 1) With QGIS, from a source of 14mb, it takes a 100 minutes to save, to get an unreadable 4gb file. – sbom Dec 16 '15 at 16:59
  • 2) With gdalwarp, it does the conversion, but there's a distortion problem. No matter what projection I convert it to, it looks way more distorted than it should be. Is there a way to tell it the bounds of my map ? Would that solve the problem ? – sbom Dec 16 '15 at 17:01
  • Can you check the projection parameters on your machine? Are they correct? Do you know these values? 100 minutes on which operating system? Which QGIS version? Is the tiff compressed (gdalinfo filename)? – Zoltan Dec 16 '15 at 21:58
  • "Can you check the projection parameters on your machine?" I'm not sure what you're asking, QGIS detects WGS 84. "100 minutes on which operating system?" Debian, Intel i3 4 core 3.07Ghz, 8Gb ram gdalinfo returns that: – sbom Dec 16 '15 at 22:07
  • Driver: GTiff/GeoTIFF Files: 3c.tif Size is 8192, 8192 Coordinate System is: PROJCS["WGS_84_Pseudo_Mercator", GEOGCS["GCS_Popular Visualisation CRS", DATUM["D_Popular_Visualisation_Datum", SPHEROID["Popular_Visualisation_Sphere",6378137,0]], PRIMEM["Greenwich",0], UNIT["Degree",0.017453292519943295]], PROJECTION["Mercator"], PARAMETER["central_meridian",0], PARAMETER["false_easting",0], PARAMETER["false_northing",0], UNIT["Meter",1], PARAMETER["standard_parallel_1",0.0]] – sbom Dec 16 '15 at 22:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.