GEE基于MODIS数据计算指数并进行逐16d结果影像导出 | 您所在的位置:网站首页 › 建筑造价指数计算公式 › GEE基于MODIS数据计算指数并进行逐16d结果影像导出 |
前言 记录一下刚刚基于MOD13A1.061 Terra Vegetation Indices 16-Day Global 500m数据计算NIRv指数并进行批量逐16d导出的代码,改指数计算公式如下: 主要还是基于他人已有代码修改了一点点 参考链接: GEE 代码快速下载研究区多年MODIS影像(包括NDVI、EVI、LAI、NPP、ET) MODIS数据介绍使用的原始数据介绍如下链接: 所有代码如下: var table = ee.FeatureCollection("projects/xxx/assets/ROI_name"); var ROI=table; //导入颜色参数 可以不用 var palette2 = require('users/gena/packages:palettes').colorbrewer.BrBG[11]; //计算NIRv公式 function applyNIRv(image){ var NIRv=image.expression( "(b('NDVI')*0.0001-0.08)*b('sur_refl_b02')*0.0001" ) .rename("NIRv"); return image.addBands(NIRv); } //-----------------Modis NIRv function------------------// 对每一个image计算改指数并选择该指数进行裁剪 function ModisNIRv(roi, startTime, endTime){ startTime = ee.Date(startTime).millis(); endTime = ee.Date(endTime).millis(); var dataset = ee.ImageCollection("MODIS/061/MOD13A1") .filter(ee.Filter.date(startTime, endTime)) .filterBounds(roi) .map(applyNIRv) .select('NIRv') .map(function(image){ return image.clip(roi) }); print("Modis NIRv data already") return dataset } // ------------------批量显示图像(单波段)------------------//可以不用 function BatchMap(IC, visParam, listLimt, preName){ function getICByIndex(IC, index){ return ee.Image(IC.toList(1, index).get(0)) } for (var i=0; i日期数量太多不想一个个run的话可以参考: 注意的点: (1)不同指数计算结果的范围区间不同,显示的时候min max需要注意,这影响显示效果 (2)计算的指数结果是小数要记得使用.multiply扩大处理一下,方便导出整数影响,这样也导出快一些 思考:怎么逐月合成导出呢?这个或许后期试试 |
CopyRight 2018-2019 实验室设备网 版权所有 |