我将此处存储的 GLASS 反照率数据用于 2000 年前 (AVHRR) 数据,此处用于 2000 年后数据 (MODIS)。我的最终目标是创建每个月的栅格堆栈,其中包含 1982-2015 年的白色天空反照率数据。我遇到的问题是 MODIS 和 AVHRR 数据位于不同的空间参考系统中,我似乎无法将它们重新投影到同一系统中。
我使用 R 将 hdf 转换为 tif,如下所示:
fileavhrr <- ".../GLASS02B05.V04.A1990161.2018062.hdf"
filemodis<-".../GLASS02B06.V04.A2013169.2017128.hdf"
gdal_translate(get_subdatasets(filemodis)[10], dst_dataset =
".../modis.tif")
gdal_translate(get_subdatasets(fileavhrr)[8], projwin = c(-180,90,180,50), dst_dataset = ".../avhrr.tif") #ideally I'd only like data north of 50 degrees
avhrr<- raster(".../avhrr.tif")
#class : RasterLayer
#dimensions : 800, 7200, 5760000 (nrow, ncol, ncell)
#resolution : 0.05, 0.05 (x, y)
#extent : -180, 180, 50, 90 (xmin, xmax, ymin, ymax)
#coord. ref. : +proj=longlat +ellps=clrk66 +no_defs
#values : -32768, 32767 (min, max)
modis<- raster(".../modis.tif")
#class : RasterLayer
#dimensions : 3600, 7200, 25920000 (nrow, ncol, ncell)
#resolution : 154.4376, 308.8751 (x, y)
#extent : -20015109, -18903159, 8895604, 10007555 (xmin, xmax, ymin, ymax)
#coord. ref. : +proj=sinu +lon_0=0 +x_0=0 +y_0=0 +a=6371007.181
+b=6371007.181 +units=m +no_defs
#values : -32768, 32767 (min, max)
以下是我尝试过的事情:
1.) 使用MODIS 重投影工具。无论出于何种原因,该工具似乎认为 MODIS .hdf 文件的子数据集只是一个图块(最左上角的图块,图块 0,0),而不是全局数据集。我的理解是 MODIS 数据是全局的(不是在瓦片中?),所以我不知道捷运为什么要这样做。
2.)在R中使用光栅包。
projectedMODIS <- projectRaster(modis,avhrr,method="bilinear")
这将返回一个值全部为 NA 的栅格:
class : RasterLayer
dimensions : 800, 7200, 5760000 (nrow,> ncol, ncell)
resolution : 0.05, 0.05 (x, y)
extent : -180, 180,> 50, 90 (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +ellps=clrk66 +no_defs
values : NA, NA (min, max)
3.) 在 R 中使用 gdalUtils 包:
gdalwarp(srcfile=get_subdatasets(filemodis)[10], dstfile= ".../gdalMODIS_avhrr.tif", s_srs = crs(modis), t_srs =crs(avhrr) )
这将返回一个基本上没有空间范围的栅格。
gdalMODISavhrr<-raster(".../gdalMODIS_avhrr.tif")
#class : RasterLayer
#dimensions : 357, 12850, 4587450 (nrow, ncol, ncell)
#resolution : 0.02801551, 0.02801573 (x, y)
#extent : -180, 179.9993, 79.99838, 90 (xmin, xmax, ymin, ymax)
#coord. ref. : +proj=longlat +ellps=clrk66 +no_defs
#values : -32768, 32767 (min, max)
关于为什么重新投影此 MODIS 数据如此困难的任何想法?