使用 GDAL 将 Robinson 转换为 EPSG:3857
Transforming Robinson to EPSG:3857 with GDAL
我正在尝试将完整的罗宾逊投影转换为墨卡托投影。比如我用这个image.
首先,我应用地理标记:
gdal_translate -a_ullr -180 90 180 -90 -a_srs ESRI:54030 source.jpg source_tagged.tif
最后将其变形为墨卡托:
gdalwarp -t_srs ESRI:54030 -s_srs EPSG:3857 source_tagged.tif target.tif
结果在垂直方向上略有拉伸,但离正确的墨卡托还差得很远。我做错了什么?
您的命令中有几个问题。首先是 -180 90 不在全局 Robinson 投影 GeoTIFF 的左上角像素中。左上角是 -338.2187147689 90,右下角是 338.2187147689 -90。但是,您还将 srs 指定为 ESRI:54030,因此这些边界需要位于投影坐标中,而不是 lat/lons。从图像生成 GeoTIFF 的命令是:
gdal_translate -a_ullr -17005833.3305252 8625154.47184994 17005833.3305252 -8625154.47184994 -a_srs ESRI:54030 source.jpg source_tagged.tif
您的第二个命令切换了 -t_srs 和 -s_srs。鉴于您要投影到 EPSG:3857,您还需要提供边界,因为墨卡托在极点处趋于无穷大。所以更新后的命令看起来像:
gdalwarp -s_srs ESRI:54030 -t_srs EPSG:3857 -te -180 -81 180 81 -te_srs EPSG:4326 source_tagged.tif target.tif
我使用这些命令根据您的示例制作了以下投影图像(在 运行 它们之前裁剪图像中的空白)。
我正在尝试将完整的罗宾逊投影转换为墨卡托投影。比如我用这个image.
首先,我应用地理标记:
gdal_translate -a_ullr -180 90 180 -90 -a_srs ESRI:54030 source.jpg source_tagged.tif
最后将其变形为墨卡托:
gdalwarp -t_srs ESRI:54030 -s_srs EPSG:3857 source_tagged.tif target.tif
结果在垂直方向上略有拉伸,但离正确的墨卡托还差得很远。我做错了什么?
您的命令中有几个问题。首先是 -180 90 不在全局 Robinson 投影 GeoTIFF 的左上角像素中。左上角是 -338.2187147689 90,右下角是 338.2187147689 -90。但是,您还将 srs 指定为 ESRI:54030,因此这些边界需要位于投影坐标中,而不是 lat/lons。从图像生成 GeoTIFF 的命令是:
gdal_translate -a_ullr -17005833.3305252 8625154.47184994 17005833.3305252 -8625154.47184994 -a_srs ESRI:54030 source.jpg source_tagged.tif
您的第二个命令切换了 -t_srs 和 -s_srs。鉴于您要投影到 EPSG:3857,您还需要提供边界,因为墨卡托在极点处趋于无穷大。所以更新后的命令看起来像:
gdalwarp -s_srs ESRI:54030 -t_srs EPSG:3857 -te -180 -81 180 81 -te_srs EPSG:4326 source_tagged.tif target.tif
我使用这些命令根据您的示例制作了以下投影图像(在 运行 它们之前裁剪图像中的空白)。