我设法从 HDF 文件中提取 MODIS 土地覆盖数据并将其放入栅格中。
library(gdalUtils) #? gdal_translate?
library(raster)
sds <- get_subdatasets(".......myfileplath/file.hdf")
# Isolate the name of the first sds
name <- sds[5]
filename <- '2009test.tif'
gdal_translate(sds[5], dst_dataset = filename)
# Load the Geotiff created into R
r <- raster(filename)
我想把它放到一个数据框中,但是从原来的正弦曲线中重新投影+proj=sinu +lon_0=0 +x_0=0 +y_0=0 +a=6371007.181 +b=6371007.181 +units=m +no_defs
,我认为。
对于与我正在分析的其他数据集兼容的普通椭圆体/WGS84。
这是我尝试过并且似乎有效的方法:
sr <- '+proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0'
projected_raster <- projectRaster(r, crs = sr)
但是,当我随后将我的土地覆盖数据放入这个新投影中的数据框时,所有土地覆盖值都变为 NA。
这就是数据框在正弦投影中的样子(4 是土地覆盖分类)
DF <- as.data.frame(r, xy=TRUE)
head(DF)
# x y X2009test
#1 -1111718.9 1111719 4
#2 -1111255.6 1111719 4
#3 -1110792.2 1111719 4
#4 -1110328.9 1111719 4
#5 -1109865.6 1111719 4
通过我的重新投影,它看起来像这样:
reprojected_DF <- as.data.frame(projected_raster, xy=TRUE)
head(reprojected_DF)
# x y X2009test
#1 -10.173076 10.01876 NA
#2 -10.168896 10.01876 NA
#3 -10.164716 10.01876 NA
#4 -10.160536 10.01876 NA
#5 -10.156356 10.01876 NA
#6 -10.152176 10.01876 NA
#7 -10.147996 10.01876 NA
关于我做错了什么或如何让土地覆盖坐标正确重新投影的任何建议?
干杯!!!!
我还读到有一个 NASA MODIS 重投影工具,但它不再存在/可用。有人知道吗?