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

如何用R语言提取山脉山脊线?地形分析需求

如何基于DEM提取山脊线并计算特定点到山脊的距离?

我正在开展地形分析工作,需计算特定点到山脉山脊的距离。已使用geodata获取SRTM数据得到DEM,通过terra包的内置方法可完成坡度、TRI等地形参数计算:

aspect <- terra::terrain(dem, v = "aspect")
tri <- terra::terrain(dem, v = "TRI")
slope <- terra::terrain(dem, v = "slope")

但尚未找到合适的山脊线提取方法。曾尝试通过坡度变化实现,但存在两个关键问题:

  • 山峰与山谷的坡度均为0(无负坡度),无法通过坡度正负区分山脊与山谷;
  • 使用focal方法仅能得到局部最大值点,而我需要提取的是连续的最高山脊线要素。

现有相关方案多聚焦于寻找最高点,而我需要的是线要素而非点数据。此外研究范围地理跨度大,通过设置高程阈值识别山脊的方法不可行。恳请有地理分析经验的人士提供解决方案,谢谢!

(附:高程、坡度、坡向示例图)
高程示例图
坡度示例图
坡向示例图

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 16:19:57