计算Sentinel1/2数据逐像元有效观测数量和总观测数量并导出

代码

var cd = ee.FeatureCollection("users/ciscodengyw/ChangdeBound"),
    dt = ee.FeatureCollection("users/ciscodengyw/Dongting_dissolve");


var s2 = ee.ImageCollection("COPERNICUS/S2_HARMONIZED");
var roi=dt;  
var nameof="dt"
var startDate='2015-04-01'
var endDate='2022-04-01'
// rmcloud
function maskS2clouds(image) {
  var qa = image.select('QA60');

  // Bits 10 and 11 are clouds and cirrus, respectively.
  var cloudBitMask = 1 << 10;
  var cirrusBitMask = 1 << 11;

  // Both flags should be set to zero, indicating clear conditions.
  var mask = qa.bitwiseAnd(cloudBitMask).eq(0)
      .and(qa.bitwiseAnd(cirrusBitMask).eq(0));

  return image.updateMask(mask).divide(10000);
}
// map_clip
var subset = function(image){
  return image.clip(roi)
}

// filter data
var s2_filter = s2.filterDate(startDate,endDate)
                  .filterBounds(roi)
                  .filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE', 20))
                  .map(subset);
// totalobscount
var s2totalobscount = ee.Image(s2_filter.select('B2').count());
// clearmask count
var s2clearobscount = ee.Image(s2_filter.map(maskS2clouds).select('B2').count());
print(s2_filter)
var s1 = ee.ImageCollection("COPERNICUS/S1_GRD") 
           .filterDate(startDate,endDate)
           .filterBounds(roi)
            .filter(ee.Filter.listContains('transmitterReceiverPolarisation', 'VV'))
                    .filter(ee.Filter.listContains('transmitterReceiverPolarisation', 'VH'))
                    // Filter to get images collected in interferometric wide swath mode.
                    .filter(ee.Filter.eq('instrumentMode', 'IW'));

print(s1)
var s1count =  ee.Image(s1.select(["VH"]).count());
//var s1counth =  ee.Image(s1.select(['VH']).count());
print('finished');
Export.image.toDrive({
  image:s2totalobscount,
  description:nameof+'_s2totalobscountdt',
  //fileNamePrefix:'s2totalobscountdt',
  scale:10,
  region:roi
})

// define image render parameters
var visParam = {
 min: 60,
 max: 300,
 palette: '#00c82d, #15cc2d, #95e11d, #d4d900, #ffae18, #ff6a30, #f53031, #f53031'};

var visParam2 = {
 min: 60,
 max: 200,
 palette: '#00c82d, #15cc2d, #95e11d, #d4d900, #ffae18, #ff6a30, #f53031, #f53031'};
//Map.addLayer(imgCount_V1,visParam,"imgCount_V1");

// define image render parameters
var visParamLAND = {
 min: 0,
 max: 50,
palette: '#00c82d, #15cc2d, #95e11d, #d4d900, #ffae18, #ff6a30, #f53031, #f53031'
};
//Map.addLayer(imgCount_V2,visParam,"imgCount_V2");
Map.addLayer(s2clearobscount,visParam2,"Cloud lt 20");

Export.image.toDrive({
   image:s2clearobscount.toInt16(),
  description:nameof+'_s2clearobscount',
  //fileNamePrefix:'s2clearobscount',
  scale:10,
  region:roi.geometry(),
  maxPixels: 1E10
})

Export.image.toDrive({
  image: s1count.toInt16(),
  description: nameof+'_s1countVV',
  region:roi.geometry(),
  scale:10,
  maxPixels: 1E10
});

 

结果:

 

 

 

 

 

 
posted @ 2022-08-27 20:27  icydengyw  阅读(74)  评论(0编辑  收藏  举报