GEE时间参数详解:Date, Date Range及操作实践

需积分: 10 4 下载量 70 浏览量 更新于2024-08-07 收藏 238KB PDF 举报
在第 09 节 GEE (Google Earth Engine) 的参数类型中,时间作为栅格数据处理中的关键参数,起着至关重要的作用。本节主要讲解了以下几个关于时间的参数类型及其操作: 1. **Date 创建**:GEE 中的时间参数始于1970年1月1日0时,以毫秒为单位。例如,`vardate_1=ee.Date('1970-01-01')` 和 `vardate_2=ee.Date(24*60*60*1000)` 分别创建了两个日期对象,展示了基本的时间创建方式。 2. **格式创建**:`varDate_From_YMD=ee.Date.fromYMD(1992,05,10)` 用于根据年、月、日的整数值创建日期,这有助于将不同格式的日期转换成GEE可识别的形式。 3. **Parse创建**:`varTheDATE=ee.Date.parse('yyyy-MM-dd-HH-mm-ss', '2019-03-27-16-26-12')` 展示了如何解析字符串格式的时间,如 'YYYY-MM-DD-HH-MM-SS' 格式,将其转换为日期对象。 4. **时间单位增加**:`varDate_0` 被用作基础,`advance` 方法可以增加年、月、周、天、小时、分钟和秒,如 `varDate_1=Date_0.advance(1,'year')` 表示增加一年。这可用于按特定时间间隔进行时间序列操作。 5. **时间更新**:`varDate_1=ee.Date('1992-05-10')` 可以更新其日期值,如 `varDate_2=Date_1.update(2019,06,9)`,这允许对原有日期进行修改。 6. **时间格式更改**:虽然没有给出具体代码,但时间格式更改可能涉及到日期对象的重新格式化或标准化,以便于输出或与其他系统兼容。 通过学习这些内容,用户可以有效地在GEE中处理包含时间信息的遥感数据,进行时空数据分析和应用,如时间序列分析、季节性变化监测等。理解并熟练运用这些时间参数类型和操作对于高效利用GEE进行地球观测和地理信息系统分析至关重要。

var s2Sr = ee.ImageCollection('COPERNICUS/S2'); var s2Clouds = ee.ImageCollection('COPERNICUS/S2_CLOUD_PROBABILITY'); var START_DATE = ee.Date('2018-01-01'); var END_DATE = ee.Date('2018-12-31'); var MAX_CLOUD_PROBABILITY = 65; function maskClouds(img) { var clouds = ee.Image(img.get('cloud_mask')).select('probability'); var isNotCloud = clouds.lt(MAX_CLOUD_PROBABILITY); return img.updateMask(isNotCloud); } // The masks for the 10m bands sometimes do not exclude bad data at // scene edges, so we apply masks from the 20m and 60m bands as well. // Example asset that needs this operation: // COPERNICUS/S2_CLOUD_PROBABILITY/20190301T000239_20190301T000238_T55GDP function maskEdges(s2_img) { return s2_img.updateMask( s2_img.select('B8A').mask().updateMask(s2_img.select('B9').mask())); } // Filter input collections by desired data range and region. var criteria = ee.Filter.and( ee.Filter.bounds(table), ee.Filter.date(START_DATE, END_DATE)); s2Sr = s2Sr.filter(criteria).map(maskEdges); s2Clouds = s2Clouds.filter(criteria); // Join S2 SR with cloud probability dataset to add cloud mask. var s2SrWithCloudMask = ee.Join.saveFirst('cloud_mask').apply({ primary: s2Sr, secondary: s2Clouds, condition: ee.Filter.equals({leftField: 'system:index', rightField: 'system:index'}) }); var s2CloudMasked = ee.ImageCollection(s2SrWithCloudMask).map(maskClouds).median(); var rgbVis = {min: 0, max: 3000, bands: ['B4', 'B3', 'B2']}; var rgbVis = {min: 0, max: 3000, bands: ['B4', 'B3', 'B2']}; Map.addLayer( s2CloudMasked, rgbVis, 'S2 SR masked at ' + MAX_CLOUD_PROBABILITY + '%', true);将合成图像的全波段下载

2023-05-29 上传