简介
结合 Google Earth Engine(GEE)遥感云计算平台和20期MODIS遥感影像提取绿度指标、湿度指标、干度指标和热度指标信息,通过主成分变换耦合各指标得到遥感生态指数(Remote Sensing Ecological Index,RSEI)。
效果图
任务界面有四个分量以及RSEI
输出界面有PCA的方差贡献率、特征值以及特征向量
代码块
var MOD09A1 = ee.ImageCollection("MODIS/006/MOD09A1"),
var MOD11A2 = ee.ImageCollection("MODIS/006/MOD11A2"),
var MOD13A1 = ee.ImageCollection("MODIS/006/MOD13A1"),
var sa = ee.FeatureCollection("projects/ee-h1181408226/assets/henan");
//去云
function bitwiseExtract(value, fromBit, toBit) {
if (toBit === undefined) toBit = fromBit
var maskSize = ee.Number(1).add(toBit).subtract(fromBit)
var mask = ee.Number(1).leftShift(maskSize).subtract(1)
return value.rightShift(fromBit).bitwiseAnd(mask)}
function cloudfree_mod09a1(image){
var qa = image.select('StateQA')
var cloudState = bitwiseExtract(qa, 0, 1)
var cloudShadowState = bitwiseExtract(qa, 2)
var cirrusState = bitwiseExtract(qa, 8, 9)
var mask = cloudState.eq(0) // Clear
.and(cloudShadowState.eq(0)) // No cloud shadow
.and(cirrusState.eq(0)) // No cirrus
return image.updateMask(mask)}
//定义时间范围
var dr0 = ee.DateRange('2002-06-01','2002-06-25');
var dr1 = ee.DateRange('2003-06-01','2003-06-25');
var dr2 = ee.DateRange('2004-06-01','2004-06-25');
var dr3 = ee.DateRange('2005-06-01','2005-06-25');
var dr4 = ee.DateRange('2006-06-01','2006-06-25');
var dr5 = ee.DateRange('2007-06-01','2007-06-25');
var dr6 = ee.DateRange('2008-06-01','2008-06-25');
var dr7 = ee.DateRange('2009-06-01','2009-06-25');
var dr8 = ee.DateRange('2010-06-01','2010-06-25');
var dr9 = ee.DateRange('2011-06-01','2011-06-25');
var dr10 = ee.DateRange('2012-06-01','2012-06-25');
var dr11 = ee.DateRange('2013-06-01','2013-06-25');
var dr12 = ee.DateRange('2014-06-01','2014-06-25');
var dr13 = ee.DateRange('2015-06-01','2015-06-25');
var dr14 = ee.DateRange('2016-06-01','2016-06-25');
var dr15 = ee.DateRange('2017-06-01','2017-06-25');
var dr16 = ee.DateRange('2018-06-01','2018-06-25');
var dr17 = ee.DateRange('2019-06-01','2019-06-25');
var dr18 = ee.DateRange('2020-06-01','2020-06-10');
var dr19 = ee.DateRange('2021-06-01','2021-06-25');
var DateRG = ee.List([dr0,dr1,dr2,dr3,dr4,dr5,dr6,dr7,dr8,dr9,dr10,dr11,dr12,dr13,dr14,dr15,dr16,dr17,dr18,dr19])
//水体掩膜
function cal_mndwi(image){
return image.normalizedDifference(['sur_refl_b04', 'sur_refl_b06']).rename('mndwi')}
var rencentIMG = MOD09A1.filterDate(dr19).filterBounds(sa).map(cloudfree_mod09a1).mean().clip(sa)
var WaterMask = cal_mndwi(ee.Image(rencentIMG)).lt(0.2)
function GetIMGLST(dr){
//计算LST
function sts_minmax (image){
获取输入的最小值和最大值
var minmax = image.reduceRegion({
reducer: ee.Reducer.minMax(),
geometry:sa,
scale: 500,
maxPixels: 1e9}).values();
return minmax;}
var rawLST = MOD11A2.filterDate(dr)
.filterBounds(sa).mosaic().clip(sa).select('LST_Day_1km')
.multiply(0.02).subtract(273.15).rename('lst').updateMask(WaterMask)