GEE中质量评估(QA)波段——去云、云量统计

目录

QA波段

MODIS去云

云量统计


QA波段

MOD09用户指南官方文档:

https://lpdaac.usgs.gov/documents/925/MOD09_User_Guide_V61.pdfhttps://lpdaac.usgs.gov/documents/925/MOD09_User_Guide_V61.pdf

Note that bit 0 is the Least Significant Bit (LSB)

QA(data product quality assessment)是数据质量评估波段的简称,在不同的产品中有不同的名称,

在MOD09GA称为state_1km,在MOD09A1叫做StateQA等等。

QA波段中存储的值显示为十进制,但是该十进制数值得转换成二进制数值使用,二进制数值的不同的位表示不同的含义。

第十位为1表示为有云,为0表示无云

1033        —— 0000 0100 0000 1001        ——        有云

72            —— 0000 0000 0100 1000        ——        无云

76            —— 0000 0000 0100 1100        ——        无云,但又云阴影

位数         ——              98 7654 3210

1              —— 0000 0000 0000 0001

1>>10      —— 0000 0100 0000 0000

bitwiseAnd : 1&1=1,1&0=0,0&1=0,0&0=0

云不仅仅影响被云遮蔽的像元,也会一定程度上影响周围的像元(例如:云的阴影会影响附近的像元;如果云是亮色的,有云阴影的像元比无云无阴影的像元暗)。

要根据实验数据要求,对数据进行处理;如果对数据要求严格,仅去云即可;如果想要最好的效果,把cloud、choud shadow、pixel adjacent to cloud都去掉。同时,一般去云的时候,还会把雪去除。

cloud(10)→ cloud shadow(2)→ pixel is adjacent to cloud(13) 

MODIS去云

var table = ee.FeatureCollection("users/gis418670826/province_ALL");
 
var dataset = ee.ImageCollection('MODIS/061/MOD09GA')
                  .filter(ee.Filter.date('2018-04-01', '2018-06-01'));
                  
var state = dataset.select('state_1km');
 
Map.centerObject(table, 4)
Map.addLayer(state.first().clip(table),{},'state_1km');
 
 
var trueColor143 =
    dataset.select(['sur_refl_b01', 'sur_refl_b04', 'sur_refl_b03']);
var trueColor143Vis = {
  min: -100.0,
  max: 8000.0,
};
 
Map.addLayer(trueColor143.first().clip(table), trueColor143Vis, 'True Color (143)');
 
function maskclouds(image) {
  var qa = image.select('state_1km');
  // 去云 cloud
  var cloudBitMask = 1 << 10;
  var mask = qa.bitwiseAnd(cloudBitMask).eq(0)
  // 去云阴影 cloud shadow
  var shadowBitMask = 1 << 2;
  var shadowMask = qa.bitwiseAnd(shadowBitMask).eq(0);
  mask = mask.and(shadowMask);
  // 去云附近的像素 Pixel is adacent to cloud
  var adjacentBitMask = 1 << 13;
  var adjacentMask = qa.bitwiseAnd(adjacentBitMask).eq(0);
  mask = mask.and(adjacentMask);
  // 去雪 show
  var snowBitMask = 1 << 15;
  var snowMask = qa.bitwiseAnd(snowBitMask).eq(0);
  mask = mask.and(snowMask);
  return image.updateMask(mask);
}


var NoCloud = dataset.map(maskclouds)
                     .select(['sur_refl_b01', 'sur_refl_b04', 'sur_refl_b03']);
 
Map.centerObject(table, 4)
Map.addLayer(NoCloud.first().clip(table),trueColor143Vis,'NoCloud');

云量统计

var table = ee.FeatureCollection("users/gis418670826/shandong_province");
var dataset = ee.ImageCollection('MODIS/061/MOD09GA')
                  .filter(ee.Filter.date('2018-04-01', '2018-06-01'));
var totalPixel = dataset.first().reduceRegion({
    crs: 'EPSG:4326',
    reducer: ee.Reducer.count(),
    geometry : table,
    scale : 1000,
  }).get('sur_refl_b01').getInfo()
print('totalPixel', totalPixel)
function maskclouds(image) {
  var qa = image.select('state_1km');
  var cloudBitMask = 1 << 10;
  var mask = qa.bitwiseAnd(cloudBitMask).eq(0)
  return image.updateMask(mask);
}
function computeCloudPixel(image) {
  var data = image.reduceRegion({
    crs: 'EPSG:4326',
    reducer: ee.Reducer.count(),
    geometry : table,
    scale : 1000,
  })
  var NoCloudPixel_Sum = data.get('sur_refl_b01').getInfo()
  var time =  image.id().getInfo();
  print(time, '无云像素数量:',NoCloudPixel_Sum, '无云像素占比:', NoCloudPixel_Sum/totalPixel)
}


             
var NoCloud = dataset.map(maskclouds)
                     .select(['sur_refl_b01', 'sur_refl_b04', 'sur_refl_b03'])
                     
var trueColor143Vis = {
  min: -100.0,
  max: 8000.0,
};

Map.centerObject(table, 4)
//Map.addLayer(NoCloud.first().clip(table),trueColor143Vis,'NoCloud');


var num = 3
// 把ImageCollection转化为List
var list = NoCloud.toList(num); 
print(list); 
 
for (var i=0; i<num; i++){
    var image = ee.Image(list.get(i));
    computeCloudPixel(image)
    var time =  image.id().getInfo();
    Map.addLayer(image.clip(table),trueColor143Vis,time,false);
}

  • 13
    点赞
  • 76
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
gee sentinel-3云量筛选是指使用Google Earth Engine(GEE)平台对Sentinel-3卫星图像进行云量筛选的过程。Sentinel-3卫星是欧空局(ESA)推出的一组遥感卫星,用于监测地球表面大气、海洋和陆地的变化。云量筛选是对卫星图像进行处理,以提取出被层覆盖较少的清晰地表影像。 在云量筛选过程GEE平台提供了一系列算法和工具,以便用户能够直观地识别和筛选出具有较低云量的卫星图像。这些算法和工具基于图像的光谱特征、纹理特征和时间序列信息进行计算和分析,从而能够更准确地评估图像云量。 其一种常用的云量筛选算法是基于多光谱指数(MSI)的方法。该算法利用了Sentinel-3卫星图像的红外波段信息,通过计算不同光谱波段之间的差异来识别和定位层。通过设定合适的阈值和筛选条件,可以将云量较高的图像排除在外,提取出具有较低云量的图像用于后续分析和应用。 GEE平台的优势在于其支持大数据处理和分布式计算能力,能够快速有效地处理大规模的Sentinel-3卫星图像数据。通过使用GEE平台进行云量筛选,可以为用户提供更高质量的地表影像数据,用于地表变化监测、资源管理和环境研究等领域。 总之,gee sentinel-3云量筛选是利用Google Earth Engine平台对Sentinel-3卫星图像进行处理和分析,以筛选出较低云量的地表影像数据。这一过程借助多光谱指数等算法,能够提高遥感数据的质量和可用性,为相关领域的研究和应用提供支持和数据基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

z6q6k6

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值