【问题标题】:How to convert projection of png tile from epsg:4326 to epsg:3857 by one command using gdal如何使用 gdal 通过一个命令将 png tile 的投影从 epsg:4326 转换为 epsg:3857
【发布时间】:2020-11-28 21:48:20
【问题描述】:

我已经平铺了 png 文件,这些投影是 EPSG:4326。 我使用以下 2 个命令将投影转换为 EPSG:3857:

gdal_translate -of Gtiff -a_ullr 135.00000000000003 36.59788913307022 140.62500000000003 31.952162238024975 -a_srs EPSG:4326 4326.png 4326.tiff
gdalwarp -s_srs EPSG:4326 -t_srs EPSG:3857 4326.tiff 3857.png

我可以用 1 个命令完成吗?

【问题讨论】:

    标签: transform projection gdal


    【解决方案1】:

    我不知道如何使用一个命令来完成,但是如果您在类 Unix 环境中工作,则可以使用管道来避免创建中间文件。

    gdal_translate -of VRT -a_ullr 135.00000000000003 36.59788913307022 140.62500000000003 31.952162238024975 -a_srs EPSG:4326 4326.png /vsistdout/ | \
            gdalwarp -t_srs EPSG:3857 /vsistdin/ 3857.png
    

    /vsistdin/ 和 /vsistdout/ 是称为"GDAL Virtual File Systems" 的功能的一部分,它表示一个表示标准输入和标准输出的虚拟文件。 gdal_translate 的输出格式可能是 GTiff,但我尝试使用仅包含元数据的 VRT。如果这不起作用,请尝试将 VRT 更改为 GTiff。

    【讨论】:

    • 感谢您的出色回答。我第一次知道“/vsistdin/”和“/vsistdout/”。
    猜你喜欢
    • 1970-01-01
    • 2017-07-12
    • 2019-07-03
    • 2022-01-08
    • 2016-09-28
    • 1970-01-01
    • 2019-06-04
    • 1970-01-01
    • 2021-08-28
    相关资源
    最近更新 更多