You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用terra包将EPSG:7532栅格投影至EPSG:4326失败求助

解决EPSG:7532栅格投影至EPSG:4326失败的问题

错误根源

报错核心是PROJ缺少垂直转换网格文件:EPSG:7532是包含水平投影(NAD83(2011)/WISCRS Brown)和垂直基准(NAVD88 via Geoid18)的复合坐标系,转换到EPSG:4326(WGS84地理坐标系)时,需要PROJ调用垂直基准转换的网格完成坐标映射,环境中缺失该网格会导致所有坐标点转换失败,无法生成输出边界。

具体解决方案

1. 安装PROJ垂直转换网格

  • 需要获取us_geoid18.tif网格文件(用于NAVD88与WGS84椭球高的转换)。
  • 在R中运行以下代码找到PROJ数据目录:
    terra::gdal("PROJ_LIB")
    
  • 将网格文件放入该目录,重启R后重新尝试投影。

2. 显式指定无垂直转换的投影参数

如果暂时无法获取网格,可以忽略垂直基准转换,仅处理水平坐标(栅格高程值保留NAVD88基准):

# 使用仅水平的WGS84地理坐标系定义
dsm_test <- terra::project(dsm, "+proj=longlat +datum=WGS84 +no_defs", method="bilinear")

3. 剥离栅格的垂直基准信息

先将栅格CRS修改为仅水平的EPSG:6418(NAD83(2011)/WISCRS Brown,无垂直基准),再进行投影:

dsm_horizontal <- dsm
terra::crs(dsm_horizontal) <- "EPSG:6418"
dsm_test <- terra::project(dsm_horizontal, "EPSG:4326", method="bilinear")

补充说明

EPSG:7532的复合CRS包含垂直基准定义,默认情况下terra::project会尝试同时转换水平和垂直坐标,但缺少对应网格时会失败。上述方法要么补全转换依赖,要么跳过垂直转换,优先完成水平投影需求。

内容的提问来源于stack exchange,提问作者robert

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 03:35:45