【问题标题】:Area estimation using image in R在 R 中使用图像进行面积估计
【发布时间】:2016-10-24 09:32:34
【问题描述】:

所以我正在寻找一种方法来估计一个区域的面积,只使用地图的图像。我这样做的原因是我想计算海平面上升一定会丢失的面积,但我找不到任何类型的元数据,只有地图(以图像格式)。以下是此类地图的链接:


(来源:cresis.ku.edu

所以我的想法是使用 EBimage 包将此图像转换为灰度图像,然后使用像素强度作为标准来计算代表潜在威胁区域的像素数。

我的问题是可能吗?我们如何才能将像素强度作为标准?如果有其他方法可以解决这个问题?

另外,如果有办法访问用于绘制我不知道的此类地图的元数据,请告诉我。

谢谢大家。

编辑:

感谢 hrbrmstr,我能够使用 rgdal 包读取网格数据 int R。因此,为了计算面积,我尝试使用 rgeos 包,但来自 CRESIS 的数据集没有形状文件。那么我们如何定义多边形并计算面积呢? 对不起,如果这个问题看起来很愚蠢。这是我第一次处理空间数据和分析

【问题讨论】:

  • 你为什么不用ESRI grid files
  • 我不知道如何处理 ESRI 文件。我尝试了一些 GIS 阅读器,但没有运气。我确实尝试了 RArcinfo,但出现了错误。

标签: r dictionary image-processing estimation


【解决方案1】:

数据在 ESRI 文件中:

library(rgdal)

grid_file_1m <- new("GDALReadOnlyDataset", "/full/path/to/inund1/w001001.adf")
grid_1m <- asSGDF_GROD(grid_file_1m, output.dim=c(1000, 1000))

plot(grid_1m, bg="black")

grid_1m_df <- as.data.frame(grid_1m)

str(grid_1m_df)
## 'data.frame': 2081 obs. of  3 variables:
##  $ band1: int  1 1 1 1 1 1 1 1 1 1 ...
##  $ x    : num  -77.2 -76.9 -76.5 -76.1 -75.8 ...
##  $ y    : num  83.1 83.1 83.1 83.1 83.1 ...

【讨论】:

  • 谢谢。这将是一个更好的方法。
  • 出于好奇,有没有办法使用我建议的方法来解决这个问题?
  • 所以,如果我没看错的话,当有内置方法来执行可能需要几个天学习掌握?如果是这样,可悲的是,是的。
  • 我真的不明白你想说什么。你的意思是我原来的方法行不通?显然,我将采用您建议的解决方案。我只是好奇这是否可能。
  • 另外,如果你不介意的话,你能告诉我下一步应该做什么来获得绘图点的总面积吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-19
  • 2014-06-09
  • 1970-01-01
  • 1970-01-01
  • 2019-08-14
相关资源
最近更新 更多