GIMMS NDVI3g 数据
植被指数是对植被冠层绿叶中叶绿素吸收的光合有效辐射的辐射度量,因此是该地区生理功能表面绿度水平的良好替代度量。在1980年代初的一系列文章中,康普顿·塔克(Compton J. Tucker)展示了如何利用NOAA的超高分辨率高分辨率辐射计(AVHRR)数据生成的归一化植被指数(NDVI)来绘制土地覆盖图并监测植被变化和荒漠化在大陆和全球范围内。在Web of Science上的简单搜索显示标题或摘要中包含NDVI的5000多篇文章。康普顿·塔克(Compton J.Tucker)在过去30年中,在全球库存监控和建模系统(GIMMS)项目的框架内继续生成NDVI时间序列,并通过不同的AVHRR传感器精心组装,并考虑了各种有害影响,例如校准GIMMS NDVI数据集的最新版本横跨1981年7月至2011年12月,被称为NDVI3g(来自AVHRR传感器的第三代GIMMS NDVI)。
注意:此数据集已有更新。最新版本3g.v1跨度为1981年7月至2015年12月。原始版本3g.v0保留在原位置,并且仍可以访问。
下载地址:数据可以直接在这里下载 https://ecocast.arc.nasa.gov/data/pub/gimms/
R语言下载处理GIMMS NDVI3g数据
这里介绍一个R语言包gimms,下面介绍一些常用的处理方法。
.nc4格式转.tif格式
library(\'raster\')
library("gimms","rgdal")
input<- \'G:/ndvi_GIMMS3g/data\'
out<- \'G:/ndvi_GIMMS3g/data_tif\'
for (value in 1981:2015) {
fn1 <- paste0(input,"/ndvi3g_geo_v1_",value,"_","0712",".nc4")
print(paste0("正在读取...%s_%s",value,"0712"))
ndvi3g <- rasterizeGimms(x = fn1)
for (variable in 1:12) {
name <- paste0(out,"/ndvi3g_geo_v1_",value,"_","0712","-",variable,".tif")
print(paste0("正在处理...%s",name))
writeRaster(x = ndvi3g[[variable]],filename = name, overwrite=TRUE)
}
}
for (value in 1982:2015) {
fn1 <- paste0(input,"/ndvi3g_geo_v1_",value,"_","0106",".nc4")
print(paste0("正在读取...%s_%s",value,"0106"))
ndvi3g <- rasterizeGimms(x = fn1)
for (variable in 1:12) {
name <- paste0(out,"/ndvi3g_geo_v1_",value,"_","0106","-",variable,".tif")
print(paste0("正在处理...%s",name))
writeRaster(x = ndvi3g[[variable]],filename = name, overwrite=TRUE)
}
}
最大月合成
library(\'sp\')
library(\'raster\')
library(\'gimms\')
library(\'rgdal\')
input<- \'G:/ndvi_GIMMS3g/data\'
out<- \'G:/ndvi_GIMMS3g/data_mvc\'
for (value in 1981:2015) {
fn1 <- paste0(input,"/ndvi3g_geo_v1_",value,"_","0712",".nc4")
print(paste0("正在读取...%s_%s",value,"0712"))
ndvi3g <- rasterizeGimms(x = fn1)
mvc <- monthlyComposite(ndvi3g,indices = monthlyIndices(fn1))
for (variable in 1:6) {
mon<- 6+variable
if(mon<10){
name <- paste0(out,"/ndvi3g_geo_v1_",value,"_","0712","_0",mon,".tif")
}else{
name <- paste0(out,"/ndvi3g_geo_v1_",value,"_","0712","_",mon,".tif")
}
print(paste0("正在处理...%s",name))
writeRaster(x = mvc[[variable]],filename = name, overwrite=TRUE)
}
}
for (value in 1982:2015) {
fn1 <- paste0(input,"/ndvi3g_geo_v1_",value,"_","0106",".nc4")
print(paste0("正在读取...%s_%s",value,"0106"))
ndvi3g <- rasterizeGimms(x = fn1)
mvc <- monthlyComposite(ndvi3g,indices = monthlyIndices(fn1))
for (variable in 1:6) {
mon<- variable
if(mon<10){
name <- paste0(out,"/ndvi3g_geo_v1_",value,"_","0712","_0",mon,".tif")
}else{
name <- paste0(out,"/ndvi3g_geo_v1_",value,"_","0712","_",mon,".tif")
}
print(paste0("正在处理...%s",name))
writeRaster(x = mvc[[variable]],filename = name, overwrite=TRUE)
}
}
请发表评论