以下是将LANDSAT TM影像中云的像元替换为另一影像对应的值的代码:

var cloud_image = ee.Image("LANDSAT/LT05/C01/T1_SR/LT05_044034_20091215"); // 输入云影像
var replace_image = ee.Image("LANDSAT/LT05/C01/T1_SR/LT05_044034_20101220"); // 输入替换影像
var cloud_mask = cloud_image.select('pixel_qa').bitwiseAnd(1 << 5).eq(0); // 获取云的掩膜
var replaced_image = replace_image.where(cloud_mask, replace_image); // 替换云的像元
Map.addLayer(replaced_image, {bands:['B3','B2','B1'],min:0,max:3000}, 'Replaced Image'); // 添加图层

解释:

  1. cloud_image:输入的云影像,可以是LANDSAT TM的某一时刻影像。
  2. replace_image:输入的替换影像,可以是与云影像相同位置的LANDSAT TM的另一时刻影像。
  3. cloud_mask:获取云的掩膜,即在pixel_qa波段中获取云的像元。
  4. replaced_image:使用where函数替换云的像元,将replace_image中对应云的像元替换到cloud_image中。
  5. Map.addLayer:添加图层,在地图上显示替换后的影像。

注意:

  1. 需要根据实际情况修改输入影像的ID。
  2. 需要根据实际情况修改Map.addLayer函数中的参数。
在Google-earth-engine中将LANDSAT-TM影像中云的像元替换为另一影像对应的值的代码

原文地址: http://www.cveoy.top/t/topic/gum 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录