在 R 中使用图像进行面积估计
Area estimation using image in R
所以我正在寻找一种仅使用地图图像来估算区域面积的方法。我这样做的原因是我想计算海平面上升一定幅度后会损失的面积,而且我找不到任何类型的元数据,只有地图(图像格式)。这是这样一张地图的link:
(来源:cresis.ku.edu)
所以我的想法是使用 EBimage 包将此图像转换为灰度图像,然后使用像素强度作为标准来计算代表潜在威胁区域的像素数。
我的问题可能吗?我们如何将像素强度作为标准?如果有任何其他方法可以解决这个问题?
此外,如果有办法访问我不知道的用于绘制此类地图的元数据,请告诉我。
谢谢大家
编辑:
感谢 hrbrmstr,我能够使用 rgdal 包读取网格数据 int R。因此,为了计算面积,我尝试使用 rgeos 包,但来自 CRESIS 的数据集没有形状文件。那么我们如何定义多边形并计算面积呢?
对不起,如果这个问题看起来很愚蠢。这是我第一次处理空间数据和分析
数据在 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 ...
所以我正在寻找一种仅使用地图图像来估算区域面积的方法。我这样做的原因是我想计算海平面上升一定幅度后会损失的面积,而且我找不到任何类型的元数据,只有地图(图像格式)。这是这样一张地图的link:
(来源:cresis.ku.edu)
所以我的想法是使用 EBimage 包将此图像转换为灰度图像,然后使用像素强度作为标准来计算代表潜在威胁区域的像素数。
我的问题可能吗?我们如何将像素强度作为标准?如果有任何其他方法可以解决这个问题?
此外,如果有办法访问我不知道的用于绘制此类地图的元数据,请告诉我。
谢谢大家
编辑:
感谢 hrbrmstr,我能够使用 rgdal 包读取网格数据 int R。因此,为了计算面积,我尝试使用 rgeos 包,但来自 CRESIS 的数据集没有形状文件。那么我们如何定义多边形并计算面积呢? 对不起,如果这个问题看起来很愚蠢。这是我第一次处理空间数据和分析
数据在 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 ...