GEE原始数据下载
原始数据也称为0级产品,下文介绍如何在gee中下载原始数据
- 原始数据下载代码
// 加载一个lansat的图像并且选择三个波段
var landsat= ee.Image('LANDSAT/LC08/C01/T1_TOA/LC08_123032_20140515')
.select(['B4', 'B3', 'B2']);
// 创建一个可以表示下载区域的多边形区域
var geometry = ee.Geometry.Rectangle([116.2621, 39.8412, 116.4849, 40.01236]);
//设置导出图像的配置信息并将图像导出到Google drive中
Export.image.toDrive
({
image: landsat,
description: 'image To Drive Example',
scale: 30,
region: geometry
});
- 单击Run按钮执行该脚本代码
- 前往task执行该任务,并设置好task name以及所需导出Google drive的存储路径
- 前往Google drive下载所导出的影像数据
GEE对遥感图像进行辐射校正
辐射定标是用户需要计算地物的光谱反射率或光谱辐射亮度时,或者需要对不同时间、不同传感器获取的图像进行比较时,都必须将图像的亮度灰度值转换为绝对的辐射亮度,这个过程就是辐射定标。辐射定标的本质是波段运算,即y = ax+b,下文介绍如何在gee中进行波段运算
- 对LANDSAT北京区域数据进行辐射定标
var geometry = ee.Geometry.Rectangle([116.2621, 39.8412, 116.4849, 40.01236]);
var landsat= ee.Image('LANDSAT/LC08/C01/T1_TOA/LC08_123032_20140515')
.select(['B4', 'B3', 'B2']).clip(geometry);
var rad2 = landsat.select('B2').multiply(3.420).add(0.1)
Map.centerObject(rad2)
Map.addLayer(rad2)
- 在网页编辑器内输入如下JS脚本程序并单击Run按钮执行该脚本得到处理后的图像
GEE计算特定区域的ndvi值
- NDVI计算代码
// 本函数用于计算landsat8的归一化植被指数
var NDVI = function(image) {
return image.normalizedDifference(['B5', 'B4']);
};
// 加载landsat8的原始数据并对其进行地理区域过滤和时间过滤
var collection = ee.ImageCollection('LANDSAT/LC08/C01/T1')
.filterBounds(ee.Geometry.Point(-122.262, 37.8719))
.filterDate('2014-06-01', '2014-10-01');
// 使用 NDVI 函数对collection进行修饰
var ndvi = collection.map(NDVI);
Map.centerObject(ndvi)
Map.addLayer(ndvi)
- 控制台单击Run按钮后运行NDVI计算脚本
使用掩膜来显示不同区间内NDVI增加和减少的区域
- 计算代码
// 使用Landsat 5的图像计算NDVI
var getNDVI = function(image) {
return image.normalizedDifference(['B4', 'B3']);
};
// 加载间隔20年的Landsat 5图像数据
var image1 = ee.Image('LANDSAT/LT05/C01/T1_TOA/LT05_044034_19900604');
var image2 = ee.Image('LANDSAT/LT05/C01/T1_TOA/LT05_044034_20100611');
// 计算NDVI
var ndvi1 = getNDVI(image1);
var ndvi2 = getNDVI(image2);
// 计算NDVI的差值
var ndviDifference = ndvi2.subtract(ndvi1);
// 从 SRTM DEM加载掩膜
var landMask = ee.Image('CGIAR/SRTM90_V4').mask();
// 用陆地掩膜更新NDVI掩膜
var maskedDifference = ndviDifference.updateMask(landMask);
// 展示结果
var vizParams = {min: -0.5, max: 0.5, palette: ['FF0000', 'FFFFFF', '0000FF']};
Map.centerObject(maskedDifference)
Map.addLayer(maskedDifference, vizParams, 'NDVI difference');
- 单击Run执行该脚本