gee去云处理Landsat、Sentinel和Modis影像

gee去云处理Landsat、Sentinel和Modis影像

1.Landsat 和 MODIS影像的去云函数

function cloudfree_mod09a1(image){
  var qa = image.select('StateQA')
  var cloudState = bitwiseExtract(qa, 0, 1) 
  var cloudShadowState = bitwiseExtract(qa, 2)
  var cirrusState = bitwiseExtract(qa, 8, 9)
  var mask = cloudState.eq(0) // Clear
  .and(cloudShadowState.eq(0)) // No cloud shadow
  .and(cirrusState.eq(0)) // No cirrus
  return image.updateMask(mask)  
}

function cloudfree_landsat (image){
  var qa = image.select('pixel_qa')
  var cloudState = bitwiseExtract(qa, 5) 
  var cloudShadowState = bitwiseExtract(qa, 3)
  var mask = cloudState.eq(0) // Clear
  .and(cloudShadowState.eq(0)) // No cloud shadow
  return image.updateMask(mask)  
}

2.影像的筛选、去云和合成

Landsat8

var date_rg = ee.DateRange('2019-01-25','2019-12-30');
//利用时间和位置点筛选符合要求的影像
var imgcol = l8_imgcol.filterDate(date_rg).filterBounds(gz);
//对符合要求的影像进行合成
var raw_img = imgcol.mosaic();
//对符合要求的影像进行去云处理后合成
var cf_img = imgcol.map(cloudfree_landsat).mosaic();
//分别加载原始影像合成的结果和去云处理后影像的合成结果
Map.addLayer(raw_img,{min: 0, max: 3500, bands: ['B5', 'B4', 'B3']},'raw_img')
Map.addLayer(cf_img,{min: 0, max: 3500, bands: ['B5', 'B4', 'B3']},'cf_img')

Modis

//利用时间和位置点筛选符合要求的影像
var imgcol_m = modis_imgcol.filterDate(date_rg).filterBounds(gz)
对符合要求的影像进行合成
var raw_img_m = imgcol_m.mosaic();
//对符合要求的影像进行去云处理后合成
var cf_img_m = imgcol_m.map(cloudfree_mod09a1).mosaic();
//分别加载原始影像合成的结果和去云处理后影像的合成结果
Map.addLayer(raw_img_m,{min: 0, max: 3500, bands: ['sur_refl_b02', 'sur_refl_b01', 'sur_refl_b04']},'raw_img_m')
Map.addLayer(cf_img_m,{min: 0, max: 3500, bands: ['sur_refl_b02', 'sur_refl_b01', 'sur_refl_b04']},'cf_img_m')

Sentinel-2

#创建一个函数用来掩模云以及卷云
def maskS2clouds(image) {
#选择有关云掩膜的波段
  var qa = image.select('QA60')
  #位10和11分别代表云和卷云。
  var cloudBitMask = 1 << 10;
  var cirrusBitMask = 1 << 11;
  #将有关云的像元置为0
  var mask = qa.bitwiseAnd(cloudBitMask).eq(0).and(
             qa.bitwiseAnd(cirrusBitMask).eq(0))
  #掩模数据并选择多光谱波段,将反射率归为0-1复制时间属性
  return image.updateMask(mask).divide(10000)
      .select("B.*")
      .copyProperties(image, ["system:time_start"])
}
在Google Earth Engine(GEE)这一强大的服务平台上,进行LandsatMODISSentinel等遥感数据的分析,首先需要对GEE平台的基本架构使用权限有所了解。《Google Earth Engine教程:免费遥感数据分析与商业应用区别》将为你提供深入的指导,帮助你理解免费资源与商业许可之间的差异,以及如何高效利用这些资源。 参考资源链接:[Google Earth Engine教程:免费遥感数据分析与商业应用区别](https://wenku.youkuaiyun.com/doc/6401ad3dcce7214c316eecfa?spm=1055.2569.3001.10343) GEE提供的免费服务针对学术研究教育用户,这意味着他们可以完全免费地使用GEE进行数据探索科学发现。用户可以通过在线编辑器或第三方应用,利用JavaScript或Python接口与GEE交互,发送请求至端进行数据处理。平台上的所有公开遥感数据集,包括LandsatMODISSentinel等卫星系列数据,都可以免费使用。 在技术层面,进行遥感数据分析的步骤大致如下: 1. 访问GEE平台并登录。 2. 在在线编辑器中编写JavaScript或Python代码,或通过第三方应用与GEE API交互。 3. 利用GEE提供的API函数加载遥感数据集,例如使用`ee.ImageCollection('LANDSAT/LC08/C01/T1')`加载Landsat 8数据。 4. 应用过滤器筛选特定时间或地点的数据。 5. 进行图像预处理分析,如大气校正、遮蔽检测等。 6. 执行计算分析,例如计算NDVI(归一化植被指数)。 7. 将分析结果可视化或导出。 需要注意的是,虽然GEE提供了大量的免费计算能力,但用户的计算存储资源是有限的,GEE会根据用户的使用情况对免费使用进行管理。对于超出免费额度的计算存储需求,商业用户可能需要购买商业许可证,获得更高级别的服务支持。 在理解免费服务与商业许可服务的区别时,你需要明确以下几点: - 免费服务仅适用于学术非商业用途。 - 商业许可提供更强大的计算能力、更大的存储空间更优化的数据处理速度。 - 商业许可用户可以享受到更为专业定制化的技术支持服务。 为了确保你的分析活动符合平台的使用政策,建议在《Google Earth Engine教程:免费遥感数据分析与商业应用区别》中查阅更详细的服务条款政策说明。此外,本书还提供大量实际案例分析,帮助你深入理解如何在GEE平台上进行有效的遥感数据分析工作。 参考资源链接:[Google Earth Engine教程:免费遥感数据分析与商业应用区别](https://wenku.youkuaiyun.com/doc/6401ad3dcce7214c316eecfa?spm=1055.2569.3001.10343)
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值