GEE17: 基于Theil-Sen Median斜率估计和Mann-Kendall趋势分析方法分析四川省2022年NDVI变化情况

Theil-Sen Median + Mann-Kendall

    • 1. Theil-Sen Median + Mann-Kendall 原理
      • 1.1 Theil-Sen Median
      • 1.2 Mann-Kendall
    • 2. GEE code
      • 2.1 数据导入
      • 2.2 Theil-Sen Median斜率估计
      • 2.3 Mann-Kendall趋势分析

1. Theil-Sen Median + Mann-Kendall 原理

1.1 Theil-Sen Median

  Theil-Sen Median方法又称为Sen斜率估计,是一种稳健的非参数统计的趋势计算方法。该方法计算效率高,对于测量误差和利群数据不敏感,适用于长时间序列数据的趋势分析。其计算公式为:
在这里插入图片描述

  式中,n为研究图层数,即n=22; ρ为趋势度,当ρ<0时,表示NDVI随时间呈下降趋势,当ρ>0时,表示NDVI随时间呈上升趋势。

1.2 Mann-Kendall

  Mann-Kendall(MK) 检验是一种非参数的时间序列趋势性检验方法,其不需要测量值服从正太分布,不受缺失值和异常值的影响,适用于长时间序列数据的趋势显著检验。检验公式:
GEE17: 基于Theil-Sen Median斜率估计和Mann-Kendall趋势分析方法分析四川省2022年NDVI变化情况_第1张图片
  式中,Q为检验统计量;Z为标准化后的检验统计量;Var(Q)为方差,在给定的α显著性水平下,若Z

  方差计算公式:
在这里插入图片描述

GEE17: 基于Theil-Sen Median斜率估计和Mann-Kendall趋势分析方法分析四川省2022年NDVI变化情况_第2张图片

2. GEE code

数据:MOD13Q1.061 Terra Vegetation Indices 16-Day Global 250m

GEE17: 基于Theil-Sen Median斜率估计和Mann-Kendall趋势分析方法分析四川省2022年NDVI变化情况_第3张图片

数据集:

GEE17: 基于Theil-Sen Median斜率估计和Mann-Kendall趋势分析方法分析四川省2022年NDVI变化情况_第4张图片

var dataset = ee.ImageCollection('MODIS/061/MOD13Q1')
                  .filter(ee.Filter.date('2018-01-01', '2018-05-01'));
var ndvi = dataset.select('NDVI');
var ndviVis = {
   
  min: 0,
  max: 8000,
  palette: [
    'ffffff', 'ce7e45', 'df923d', 'f1b555', 'fcd163', '99b718', '74a901',
    '66a000', '529400', '3e8601', '207401', '056201', '004c00', '023b01',
    '012e01', '011d01', '011301'
  ],
};
Map.setCenter(6.746, 46.529, 2);
Map.addLayer(ndvi, ndviVis, 'NDVI');

2.1 数据导入

var imageCollection = ee.ImageCollection("MODIS/006/MOD13Q1");
var table = ee.FeatureCollection("users/cduthes1991/boundry/China_province_2019");
var roi = table.filter(ee.Filter.eq('provinces','sichuan'));
Map.centerObject(roi,5.8)

var styling = {
   color:"red",fillColor:"00000000"}
Map.addLayer(roi.style(styling),{
   },"geometry")


var imgCol = ee.ImageCollection("MODIS/006/MOD13Q1")
                        .filterDate('2022-1-1','2022-12-31')
                        .filterBounds(roi)
                        .select('NDVI')
                        .map(function(image){
   
                          var imgsub = image;
                          return image.clip(roi)
                        });
var palette = ['red', 'yellow', 

你可能感兴趣的:(gee,javascript,GEE,arcgis,NDVI,经验分享,Mann-Kendall,Sen,Median)