Google Earth Engine——基於新的Landsat SR數據集去雲處理


根據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 /***************************************************************************************/

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM