根据GEE官方公告,明年原来的Landsat/LT05/C01/T1_SR和Landsat/LC08/C01/T1_SR数据集将停止更新,并提供了新的地表反射率数据,就是LANDSAT/LT05/C02/T1_L2和LANDSAT/LC08/C02/T1_L2。新的数据集直接提供LST产品,方便获取地表温度,同时也给出官方代码去云处理。

参考:USGS Landsat 5 Level 2, Collection 2, Tier 1 (google.com)

去云代码如下:

 1 /****************************************L5 去云****************************************/
2 /***************************************************************************************/
3 // 使用Landsat5 Collection 2,Level 2 QA_PIXEL波段(CFMask)去云
4 function maskL5sr(image) {
5 // Bit 0 - fill
6 // Bit 1 - Dilated Cloud
7 // Bit 2 - Unused
8 // Bit 3 - Cloud
9 // Bit 4 - Cloud Shadow
10 var qaMask = image.select('QA_PIXEL').bitwiseAnd(parseInt('11111', 2)).eq(0);
11 var saturationMask = image.select('QA_RADSAT').eq(0);
12
13 // 将缩放系数应用于适当的波段
14 var opticalBands = image.select('SR_B.').multiply(0.0000275).add(-0.2);
15 var thermalBand = image.select('ST_B6').multiply(0.00341802).add(149.0);
16
17 // 用缩放后的波段替换,并应用云掩膜
18 return image.addBands(opticalBands, null, true)
19 .addBands(thermalBand, null, true)
20 .updateMask(qaMask)
21 .updateMask(saturationMask);
22 }
23
24 //处理一年的数据
25 var collection = ee.ImageCollection('LANDSAT/LT05/C02/T1_L2')
26 .filterDate('2010-01-01', '2011-01-01')
27 .map(maskL5sr);
28 //中值合成
29 var composite = collection.median();
30
31 // 地图展示
32 Map.addLayer(composite, {bands: ['SR_B3', 'SR_B2', 'SR_B1'], min: 0, max: 0.3});
33 /***************************************************************************************/
34
35 /****************************************L8 去云****************************************/
36 /***************************************************************************************/
37 // 使用Landsat8 Collection 2,Level 2 QA_PIXEL波段(CFMask)去云
38
39 function maskL8sr(image) {
40 // Bit 0 - Fill
41 // Bit 1 - Dilated Cloud
42 // Bit 2 - Cirrus
43 // Bit 3 - Cloud
44 // Bit 4 - Cloud Shadow
45 var qaMask = image.select('QA_PIXEL').bitwiseAnd(parseInt('11111', 2)).eq(0);
46 var saturationMask = image.select('QA_RADSAT').eq(0);
47
48 // 用缩放后的波段替换,并应用云掩膜
49 var opticalBands = image.select('SR_B.').multiply(0.0000275).add(-0.2);
50 var thermalBands = image.select('ST_B.*').multiply(0.00341802).add(149.0);
51
52 // 用缩放后的波段替换,并应用云掩膜
53 return image.addBands(opticalBands, null, true)
54 .addBands(thermalBands, null, true)
55 .updateMask(qaMask)
56 .updateMask(saturationMask);
57 }
58
59 // 处理一年的数据
60 var collection = ee.ImageCollection('LANDSAT/LC08/C02/T1_L2')
61 .filterDate('2020-01-01', '2021-01-01')
62 .map(maskL8sr);
63 //中值合成
64 var composite = collection.median();
65
66 // 地图展示
67 Map.addLayer(composite, {bands: ['SR_B4', 'SR_B3', 'SR_B2'], min: 0, max: 0.3});
68 /***************************************************************************************/

最新文章

  1. 使用Chef管理windows集群 | 运维自动化工具
  2. 常用的css的技巧
  3. wamp优化
  4. HDU 4734
  5. PHP常用内置函数
  6. .NET领域驱动设计—初尝(三:穿过迷雾走向光明)
  7. php 获取汉字拼音首字母的函数
  8. Sublime Text 3 注册码
  9. Git 安装配置手册
  10. Linux-#!/bin/sh理解
  11. Ocelot简易教程(六)之重写配置文件存储方式并优化响应数据
  12. let命令和块级作用域
  13. Cracking The Coding Interview3.3
  14. YII2中actions的作用与使用
  15. 小白之selenium+python关于cookies绕开登录1
  16. 2018/03/19 每日一个Linux命令 之 touch
  17. 2-Tenth Scrum Meeting20151210
  18. cocos2d-x 音效中断问题
  19. Centos7下python3.7的pipSSLError问题
  20. Xamarin中Unsupported major.minor version 52.0问题解决

热门文章

  1. 主题 1 The Shell
  2. [编程基础] Python数据生成库Faker总结
  3. linux系统一键开启root登陆
  4. CLISP学习(二)
  5. 【白话模电1】PN结与二极管
  6. 请务必注意精度不一样,就不相等(float 与double)
  7. Array.from的9大优美用途!!!看了不后悔哦~~~~
  8. Java基础1-1-3—java基础语法(条件控制语句)
  9. 使用 NineData 实现备份集的实时查询
  10. android开发技巧杂谈