簡介
在本篇博客中,我們將使用Google Earth Engine (GEE) 進行植被狀況指數(Vegetation Condition Index, VCI)的計算和干旱監測。通過MODIS NDVI數據,我們可以評估2001年至2024年間的植被狀況和干旱等級。
背景知識
MODIS NDVI數據集
MODIS/061/MOD13A2數據集提供了MODIS的歸一化植被指數(NDVI)數據,這些數據可以用來評估植被覆蓋和健康狀況。
植被狀況指數(VCI)
VCI是一種基于NDVI的指標,用于評估植被狀況和監測干旱。VCI的計算公式為:
[ VCI = \left(\frac{(NDVI - NDVI_{min})}{(NDVI_{max} - NDVI_{min})}\right) \times 100 ]
完整代碼
// 定義研究點坐標
var cor = [52.91994991092, 33.56756085477778];
var point = ee.Geometry.Point(cor);// 加載FAO GAUL數據集并篩選研究區域
var feature = ee.FeatureCollection("FAO/GAUL/2015/level0");
var roi = feature.filterBounds(point);
Map.centerObject(roi);
Map.addLayer(roi);// 定義時間范圍
var time_start = '2001', time_end = '2003';// 加載MODIS NDVI數據集
var ndvi = ee.ImageCollection("MODIS/061/MOD13A2").select(['NDVI']).filterDate(time_start, time_end);// 計算VCI
var ndvi_min = ndvi.min().multiply(0.0001);
var ndvi_max = ndvi.max().multiply(0.0001);var vci = ndvi.map(function (img) {var band = img.multiply(0.0001);var index = band.expression('((ndvi - min)/(max - min))*100.0', {'ndvi': band,'min': ndvi_min,'max': ndvi_max}).rename('vci');return index.copyProperties(img, ['system:time_start', 'system:time_end']);
});// 計算VCI中值
var vci_median = vci.median();
Map.addLayer(vci_median.clip(roi), [], 'vci_median', false);// 打印VCI直方圖
print(ui.Chart.image.histogram(vci_median, roi, 1000)
);// VCI分類
var cons = ee.Image.constant(0);var extreme = cons.where(vci_median.gte(0).and(vci_median.lt(10)), 1);
var severe = extreme.where(vci_median.gte(10).and(vci_median.lt(20)), 2);
var moderate = severe.where(vci_median.gte(20).and(vci_median.lt(30)), 3);
var light = moderate.where(vci_median.gte(30).gte(vci_median.lt(40)), 4);
var no1 = light.where(vci_median.gte(40).and(vci_median.lt(60)), 5);
var no2 = no1.where(vci_median.gte(60).and(vci_median.lt(80)), 6);
var no3 = no2.where(vci_median.gte(80), 7);Map.addLayer(moderate.clip(roi), {min: 1, max: 7}, 'drought_map', false);// VCI時間序列分類
var time_start = '2001', time_end = '2024';
var ndvi2 = ee.ImageCollection("MODIS/061/MOD13A2").select(['NDVI']).filterDate(time_start, time_end);var ndvi_min2 = ndvi2.min().multiply(0.0001);
var ndvi_max2 = ndvi2.max().multiply(0.0001);var vci2 = ndvi2.map(function (img) {var band = img.multiply(0.0001);var index = band.expression('((ndvi - min)/(max - min))*100.0', {'ndvi': band,'min': ndvi_min2,'max': ndvi_max2}).rename('vci');return index.copyProperties(img, ['system:time_start', 'system:time_end']);
});// 修正:vci_class 應使用 vci2 而不是 vci_median
var vci_class = vci2.map(function (img) {var vci_value = img.select('vci');return img.expression('extreme + severe + moderate + light + no1 + no2 + no3',{'extreme': vci_value.gte(0).and(vci_value.lt(10)).multiply(1),'severe': vci_value.gte(10).and(vci_value.lt(20)).multiply(2),'moderate': vci_value.gte(20).and(vci_value.lt(30)).multiply(3),'light': vci_value.gte(30).and(vci_value.lt(40)).multiply(4),'no1': vci_value.gte(40).and(vci_value.lt(60)).multiply(5),'no2': vci_value.gte(60).and(vci_value.lt(80)).multiply(6),'no3': vci_value.gte(80).multiply(7)}).rename('class');
});var vci_map = vci_class.mode();Map.addLayer(vci_map.clip(roi), {palette: ['black', 'brown', 'red', 'orange', 'yellow', 'lightgreen', 'darkgreen'],min: 1,max: 7
}, 'vci_mode', false);// 導出VCI分類圖
Export.image.toDrive({image: vci_map.clip(roi),description: 'vci_map',region: roi,maxPixels: 1e13,crs: 'EPSG:4326',folder: 'drought',scale: 1000
});// 計算干旱面積
var drought_area = (ee.Image.pixelArea().divide(1e6)).addBands(vci_map);print(ui.Chart.image.byClass(drought_area, 'constant',roi, ee.Reducer.sum(), 1000, ['nan', 'extreme drought', 'severe drought', 'moderate drought', 'light drought', 'no drought1', 'nodrought2', 'no drought3'])
);
代碼詳解
1. 定義研究點
創建一個點對象point
,用于確定研究區域。
2. 加載FAO GAUL數據集
加載并篩選與研究點相交的區域roi
。
3. 加載MODIS NDVI數據集
加載指定時間范圍內的MODIS NDVI數據。
4. 計算VCI
基于NDVI的最小值和最大值計算VCI。
5. VCI分類
根據VCI值將圖像分類為不同的干旱等級。
6. 繪制VCI中值圖層
將VCI中值圖層添加到地圖上。
7. 打印VCI直方圖
打印VCI中值的直方圖,以了解VCI值的分布。
8. VCI時間序列分類
對整個時間序列的VCI進行分類,并計算每個干旱等級的頻率。
9. 導出VCI分類圖
將VCI分類圖導出到Google Drive。
10. 計算干旱面積
計算每個干旱等級的面積。
結論
本教程展示了如何使用GEE對MODIS數據進行VCI計算和干旱監測。通過VCI,我們可以評估植被狀況并識別干旱區域。
進一步探索
GEE提供了多種工具和方法來進行植被和干旱分析。在后續的教程中,我們將繼續探索GEE在不同領域的應用。