GEE教程:下载2018年到2023年指定矢量的影像,计算温度,间隔每三个月下载一张影像,总共下载24张影像,输出24张影像以及合并波段后的图

// 感兴趣的区域信息
var roi = table;

// 设置地图中要素的颜色和填充颜色
var style_set = { color: "red", fillColor: "00000000" };

// 将roi添加到地图中
Map.addLayer(roi.style(style_set), {}, "shape");

// 将地图中心设置为roi对象,并设置缩放级别为10
Map.centerObject(roi, 10);

// 定义函数maskL8sr,接受一个图像作为输入,并对图像进行处理
function maskL8sr(image) {
  // Bit 0 - Fill
  // Bit 1 - Dilated Cloud
  // Bit 2 - Cirrus
  // Bit 3 - Cloud
  // Bit 4 - Cloud Shadow
  var qaMask = image.select('QA_PIXEL').bitwiseAnd(parseInt('11111', 2)).eq(0);

  // 从输入图像中选择QA_PIXEL波段,使用位运算和掩码来识别填充、云、云影等像素
  var saturationMask = image.select('QA_RADSAT').eq(0);

  // 用缩放因子应用于适当的频带
  var opticalBands = image.select('SR_B.').multiply(0.0000275).add(-0.2);
  var thermalBands = image.select('ST_B.*').multiply(0.00341802).add(149.0);

  // 用缩放的带替换原始带并应用掩码
  return image.addBands(opticalBands, null, true)
      .addBands(thermalBands, null, true)
      .updateMask(qaMask)
      .updateMask(saturationMask);
}

// 创建一个空数组来存储每个时间段的影像
var finalImages = [];

// 循环遍历所需的时间段
for (var i = 0; i < 24; i++) {
  var startDate = ee.Date('2018-01-01').advance(i * 3, 'month');
  var endDate = ee.Date('2018-01-01').advance((i + 1) * 3, 'month');

  // 为当前时间段筛选图像集合
  var collection = ee.ImageCollection('LANDSAT/LC08/C02/T1_L2')
    .filterDate(startDate, endDate)
    .map(maskL8sr)
    .median()
    .clip(roi);

  // 选择所需的波段(例如,'ST_B10')
  var img = collection.select('ST_B10');

  // 计算LST
  var lst = img.expression(
    'B1 - 273.15',
    {
      B1: img.select('ST_B10')
    }
  );

  // 打印LST直方图
  print('LST直方图', ui.Chart.image.histogram(lst, roi, 100, 258));

  // 将当前时间段的影像添加到 finalImages 数组中
  finalImages.push(lst);

  // 为当前时间段导出影像
  exportImage(lst, roi, 'lst_' + i);
}

// 循环结束后,合并所有影像
var mergedCollection = ee.ImageCollection(finalImages).mosaic();

// 导出合并影像
exportImage(mergedCollection, roi, 'merged_lst');

// 导出影像的函数
function exportImage(image, roi, fileName) {
  Export.image.toDrive({
    image: image,
    description: fileName,
    fileNamePrefix: fileName,
    folder: "Landsat 8",
    scale: 30,
    region: roi,
    maxPixels: 1e13,
    crs: "EPSG:4326"
  });
}

您可以使用Google Earth Engine (GEE)平台来下载gee影像,并根据需要获取矢量边界信息。使用GEE平台,您可以通过以下步骤进行操作: 1. 首先,导入所需的库和数据集。您可以使用以下代码导入GEE库: ```python import ee ee.Initialize() ``` 2. 接下来,您可以定义您感兴趣的影像区域。您可以使用以下代码来定义一个矩形边界: ```python # 定义一个矩形边界范围 roi = ee.Geometry.Rectangle([lon_min, lat_min, lon_max, lat_max]) ``` 在代码中,`lon_min`和`lat_min`分别是矩形边界的左下角经纬度坐标,`lon_max`和`lat_max`是矩形边界的右上角经纬度坐标。 3. 然后,您可以选择您感兴趣的影像数据集,并应用您定义的矩形边界。例如,您可以使用Landsat 8的影像数据集: ```python # 选择Landsat 8的影像数据集 dataset = ee.ImageCollection('LANDSAT/LC08/C01/T1_TOA').filterDate('2019-01-01', '2019-12-31') ``` 在代码中,`filterDate`函数用于筛选出指定日期范围内的影像。 4. 接下来,您可以在所选影像数据集上应用矩形边界,并裁剪出您感兴趣的影像区域: ```python # 在所选影像数据集上应用矩形边界 image = dataset.mosaic().clip(roi) ``` 在代码中,`mosaic`函数用于选择一幅影像作为最终结果,并使用`clip`函数将其裁剪为矩形边界。 5. 最后,您可以下载裁剪后的影像,并将其保存到本地文件夹: ```python # 下载并保存影像 ee.batch.Export.image.toDrive({ 'image': image, 'description': 'image_clip', 'scale': 30, 'region': roi }) ``` 在代码中,`toDrive`函数用于将影像导出到Google Drive上,并使用`description`参数指定影像的描述,`scale`参数指定影像的分辨率,`region`参数指定影像的裁剪范围。 这样,您就可以使用GEE平台来下载gee影像,并根据需要获取矢量边界信息。请注意,上述代码仅为示例,您可以根据实际需求进行修改和调整。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Google Earth Engine(GEE)——矢量边界的积、边界、中心点、边界坐标、相交、缓冲边界以及拓扑差异详解](https://blog.csdn.net/qq_31988139/article/details/121118227)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值