GEE代码实例教程详解:地表温度与土地覆盖类型分析
简介
在本篇博客中,我们将使用Google Earth Engine (GEE) 对地表温度数据进行分析,并探究不同土地覆盖类型(特别是水体和城市区域)的地表温度变化。通过MODIS数据集,我们可以监测2001年至2024年间的数据。
(图片来源网络,侵删)
背景知识
MODIS数据集
MODIS数据集提供了多光谱遥感数据,广泛应用于植被、水文和城市研究。
地表温度 (LST)
地表温度是地表热辐射的度量,对于研究城市热岛效应、植被分布等具有重要意义。
土地覆盖分类
土地覆盖分类有助于识别地表不同类型的特征,如森林、草地、水体和城市区域。
完整代码
// 定义研究区域的坐标点 var cor = [ [51.72646131195613, 35.78622502387334], [54.07753553070613, 35.78622502387334], [54.07753553070613, 36.97144246810686], [51.72646131195613, 36.97144246810686], [51.72646131195613, 35.78622502387334] ]; // 创建多边形区域 var roi = ee.Geometry.Polygon(cor); // 将地图中心设置为研究区域 Map.centerObject(roi); // 加载MODIS土地覆盖数据集 var lc = ee.ImageCollection("MODIS/061/MCD12Q1") .mode().select('LC_Type1'); // 定义土地覆盖可视化参数 var vis = { min: 1.0, max: 17.0, palette: [ // ... 颜色代码 ... ], }; // 土地覆盖数据可视化 Map.addLayer(lc.clip(roi), vis, 'map', false); // 提取水体掩膜 var water_thr = lc.eq(17); Map.addLayer(water_thr.clip(roi), [], 'water_thr', false); var water_mask = water_thr.updateMask(water_thr); Map.addLayer(water_mask.clip(roi), [], 'water_mask', false); // 将水体掩膜转换为矢量数据 var water_vector = water_mask.reduceToVectors({ geometry: roi, scale: 500 }).union(1); Map.addLayer(water_vector, [], 'water_vector', false); // 加载MODIS地表温度数据集 var temp = ee.ImageCollection("MODIS/061/MOD11A2") .select('LST_Day_1km') .filterDate('2001', '2024') .map(function (img) { return img.multiply(0.02).subtract(273.15) .copyProperties(img, img.propertyNames()); }); // 绘制地表温度时间序列图表(水体) print( ui.Chart.image.series(temp, water_vector, ee.Reducer.mean(), 500, 'system:time_start') ); // 定义城市区域函数 function urban_layer(img) { var urban_thr = img.eq(13); var urban_mask = urban_thr.updateMask(urban_thr); var urban_vector = urban_mask.reduceToVectors({ geometry: roi, scale: 500 }).union(1); return urban_vector; } // 应用函数提取城市区域矢量数据 var urban_class = urban_layer(lc); // 绘制地表温度时间序列图表(城市区域) print( ui.Chart.image.series(temp, urban_class, ee.Reducer.mean(), 500, 'system:time_start') );
代码详解
1. 定义研究区域
创建一个多边形区域roi,用于限定分析的地理范围,并设置地图中心。
2. 加载和可视化MODIS土地覆盖数据集
加载MODIS土地覆盖数据集,选择LC_Type1波段,并进行可视化。
3. 提取水体掩膜和矢量数据
通过土地覆盖数据提取水体掩膜,并将其转换为矢量数据。
4. 加载和处理MODIS地表温度数据集
加载地表温度数据集,进行单位转换,并提取白天的数据。
5. 绘制地表温度时间序列图表
使用ui.Chart.image.series绘制水体区域的地表温度时间序列。
6. 提取城市区域矢量数据
定义函数提取城市区域(土地覆盖类别13),并将其转换为矢量数据。
7. 绘制城市区域地表温度时间序列图表
使用ui.Chart.image.series绘制城市区域的地表温度时间序列。
结论
本教程展示了如何使用GEE对MODIS数据进行土地覆盖分类和地表温度分析。通过此分析,可以了解不同土地覆盖类型(如水体和城市区域)的地表温度变化趋势。
进一步探索
GEE提供了多种工具和方法来进行土地覆盖分类和地表温度分析。在后续的教程中,我们将继续探索GEE在不同领域的应用。
文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。