在gdal2tiles.py中使用空间参考EPSG:3440时出错

时间:2015-09-11 00:01:06

标签: google-maps gdal maptiler

我正在使用gdal2tiles.py和空间参考WSG84,它运行正常。但是,当我改为空间参考EPSG:3440。我收到了以下错误:

首先,我运行命令:

gdal_translate -of VRT -a_srs EPSG:3440 -gcp 0 0 58.068451479718924 23.65512391903488 -gcp 21816 0 58.126966134442846 23.65512391903488 -gcp 21816 14871 58.126966134442846 23.6185834507829  myinputimage.png myoutput.vrt

然后,我运行命令:

python gdal2tiles.py  myoutput.vrt

我收到以下错误: enter image description here

是否有办法修复此错误或使用没有此错误的类似空间参考。请注意,只有在使用WSG84以外的空间引用时才会发生此错误。

编辑:我想问题可能是空间参考EPSG:3440没有包含,但问题仍然存在,是否将它添加到gdal参考数据库。

1 个答案:

答案 0 :(得分:1)

EPSG:3440是预计系统。准确度0.5米的正确定义可能是:

+proj=utm +zone=40 +ellps=clrk80 +towgs84=-180.624,-225.516,173.919,-0.81,-1.898,8.336,16.71006 +units=m +no_defs 

如果我查看http://epsg.io/3440-1439,它会告诉我们:

Projected bounds:
-35283.71 1840661.51
789562.66 2942956.58

在上面的命令中,您可以指定地面控制点,它们看起来像大地测量(纬度经度数),例如58.068451479718924。这很可能是错误的 - 因为您指定的数字不在预计的边界范围内。

你必须使用更大的gdal_translate数字的-gcp参数 - 已经预测并且在上面的范围内。

可以通过以下在线界面从WGS84转换lat / lon: http://epsg.io/3440-1439/map并在-gcp参数中指定转换后的数字。

您已使用引用http://www.maptiler.com/的标记maptiler标记了您的查询。此工具可以在不需要创建VRT的情况下直观地分配坐标 - 因此您可以单击图像并将上述坐标复制并粘贴到投影系统中。 MapTiler生成一个查看器,在OpenLayers中显示EPSG:3440图块或将其转换为球形墨卡托图块,以便与Google或OSM叠加或在移动应用中使用。

BTW很高兴听到您使用我们开发的系统gdal2tiles,maptiler和http://epsg.io/ ......