一、GEE平台简介

GEE(Google Earth Engine)是Google推出的基于云计算的地理信息处理平台,提供了世界范围内包括高质量卫星图像、地形、气象数据等在内的数十PB级数据存储和高性能计算能力。

基于GEE平台,用户可以进行遥感影像获取、空间分析、模型构建等功能,广泛应用于林业、农业、城市规划等领域,提供了一种新型的数据驱动的科学研究方式。

二、GEE平台的数据源

GEE平台提供的数据源非常丰富,主要涵盖以下几个方面:

1.卫星图像

GEE平台提供了遥感卫星图像,包括Landsat、Sentinel等,可以快速获取任意区域及时间范围内的高质量遥感影像,并进行处理。

var image = ee.Image('LANDSAT/LC08/C01/T1/LC08_044034_20140318')
             .multiply(ee.Image(0.0001));
Map.addLayer(image, {}, 'Landsat 8 original');

2.地形数据

GEE平台提供了高分辨率的数字地形模型(DEM),由地球表面的高度信息构成。DEM数据可以用于遥感影像处理、地形分析等。

var elevation = ee.Image('USGS/SRTMGL1_003');
Map.addLayer(elevation, {min: 0, max: 3000}, 'SRTM elevation');

3.气象数据

GEE平台提供了全球各地的气象数据,包括降水量、温度等。这些数据可以方便地用于一些水文学、气候学等研究领域。

var precipitation = ee.ImageCollection('UCSB-CHG/CHIRPS/DAILY')
                      .filterDate('2015-01-01', '2015-12-31')
                      .select('precipitation')
                      .sum();
Map.addLayer(precipitation, {min:0, max:3500}, 'Precipitation');

三、GEE平台的常用功能

GEE平台提供了丰富的功能,以下是常用的几个功能:

1.影像处理

GEE平台可以对遥感影像进行处理,包括裁剪、拼接、滤波、分类等,为用户提供了一个高效的遥感影像处理平台。

// Load SRTM Digital Elevation Model data.
var elevation = ee.Image('USGS/SRTMGL1_003');

// Create a shaded relief image from the DEM.
var hillshade = ee.Terrain.hillshade(elevation);

// Display the result.
Map.addLayer(hillshade, {}, 'hillshade');

2.空间分析

GEE平台提供了各种空间分析工具,可以进行空间查询、缓冲区分析、空间插值、空间统计分析等。

// Compute the NDVI.
var image = ee.Image('LANDSAT/LC08/C01/T1/LC08_044034_20140318')
             .select(['B5', 'B4']);
var ndvi = image.normalizedDifference(['B5', 'B4']).rename('NDVI');

// Create a binary layer with pixels that are above the threshold.
var veg = ndvi.gte(0.2);

// Extract the geometry of the studied area.
var roi = ee.Geometry.Polygon(
        [[[36.06, 32.00],
          [36.06, 34.37],
          [38.98, 34.37],
          [38.98, 32.00]]]);

// Compute the area of the vegetation that intersects with the polygon.
var veg_area = veg.multiply(ee.Image.pixelArea())
              .reduceRegion({
                reducer: ee.Reducer.sum(),
                geometry: roi,
                scale: 30
              });

// Print the result.
print(veg_area);

3.模型构建

GEE平台提供了机器学习和深度学习工具包,可以进行图像分类、目标检测、遥感图像分割等模型构建工作。

// Load training data
var training = ee.FeatureCollection('users/kwuebker/example_training_data');

// Train a classifier.
var classifier = ee.Classifier.randomForest().train({
              features: training,
              classProperty: 'landcover',
              inputProperties: ['B1', 'B2', 'B3', 'B4', 'B5', 'B6', 'B7']
            });

// Classify the image.
var classified = image.select(['B1', 'B2', 'B3', 'B4', 'B5', 'B6', 'B7'])
           .classify(classifier);
           
// Display the classified image.
Map.addLayer(classified, {min: 1, max: 7, palette: ['#000000', '#ff0000', '#00ff00', '#0000ff', '#00ffff', '#ffff00', '#ff00ff']}, 'Classification');

四、GEE平台使用案例

GEE平台被广泛应用于各个领域,以下是几个典型案例。

1.森林覆盖分类

利用卫星图像和地形数据,对森林覆盖进行分类,并对森林质量进行评估。

// Load the MODIS vegetation collection.
var veg = ee.ImageCollection('MODIS/006/MOD13Q1')
          .filterDate('2018-01-01', '2020-12-31')
          .select('NDVI')
          .min();

// Define the forest type using Landsat and MODIS vegetation observations.
var forest1 = ee.Image('LANDSAT/LC08/C01/T1_SR/LC08_039032_20180407')
           .normalizedDifference(['B5', 'B4'])
           .gt(0.1);
var forest2 = veg.gte(4000);
var forest_type = forest1.and(forest2);

// Compute the area of the forest type and show the result.
var area = forest_type.multiply(ee.Image.pixelArea())
           .reduceRegion({
             reducer: ee.Reducer.sum(),
             scale: 30
           });
print(area);

2.城市绿化指数测算

利用卫星图像计算城市各地区的绿化指数,并据此制定绿化规划,提高城市绿化率。

// Load the Landsat 8 image.
var image = ee.Image('LANDSAT/LC08/C01/T1_SR/LC08_044034_20140318')
             .multiply(0.0001);

// Compute the NDVI.
var ndvi = image.normalizedDifference(['B5', 'B4']);

// Compute the average NDVI value in each polygon.
var meanNdvi = ndvi.reduceRegions({
                  collection: polygons,
                  reducer: ee.Reducer.mean(),
                  scale: 30
                });

// Display the result.
print(meanNdvi);

3.土地利用变化监测

利用多时相卫星图像进行土地利用变化监测,并观测土地覆盖状态的演变。

// Load the Landsat 8 Surface Reflectance image collection.
var collection = ee.ImageCollection('LANDSAT/LC08/C01/T1_SR')
                    .filterDate('2014-01-01', '2021-01-01')
                    .sort('CLOUD_COVER')
                    .select(['B4', 'B3', 'B2']);

// Define the visualization parameters.
var vizParams = {
  bands: ['B4', 'B3', 'B2'],
  min: 0,
  max: 3000,
  gamma: 1.4,
};

// Create a function for computing NDVI.
var addNdvi = function(image) {
  var ndvi = image.normalizedDifference(['B5', 'B4']).rename('NDVI');
  return image.addBands(ndvi);
};

// Map the function over the image collection.
var withNdvi = collection.map(addNdvi);

// Compute the mean NDVI value for each feature in the feature collection.
var meanNdvi = withNdvi.map(function(image) {
                  return image.reduceRegions({
                    collection: features,
                    reducer: ee.Reducer.mean(),
                    scale: 30
                  })
                });

// Plot the results on a chart.
print(ui.Chart.feature.byFeature(meanNdvi, 'system:index')
          .setChartType('LineChart')
          .setOptions({
            title: 'Mean NDVI Over Time',
            vAxis: {title: 'Mean NDVI'},
            hAxis: {title: 'Time'},
          }));

五、总结

GEE平台的强大功能使得其在遥感数据处理、空间分析、模型构建等领域得到了广泛的应用。本文介绍了GEE的基本概念、数据源、常用功能和使用案例,希望可以为读者提供一些帮助。