【转载】GEE使用Sentinel-1提取水体

var roi = ;
// 设置时间范围
var startDate = '2022-01-01';
var endDate = '2022-12-31';
// 使用Sentinel-1数据集
var s1Collection = ee.ImageCollection('COPERNICUS/S1_GRD')
  .filterBounds(roi)
  .filterDate(startDate, endDate)
  .filter(ee.Filter.listContains('transmitterReceiverPolarisation', 'VV'))
  .filter(ee.Filter.eq('instrumentMode', 'IW'));
// 定义SDWI计算函数
var calculateSDWI = function(image) {
  var XVH = image.select('VH');
  var XVV = image.select('VV');
  return image.expression('log(10*VV*VH)-8',{'VV':XVV,'VH':XVH}).rename('SDWI')}
// 计算SDWI
var s1SDWI = s1Collection.map(calculateSDWI);
// 合并SDWI图层
var sdwiComposite = s1SDWI.median().clip(roi);
Map.addLayer(sdwiComposite)
// 定义水体掩膜
var waterMask = sdwiComposite.gt(0).clip(roi);
// 可视化水体掩膜
var visParams = {
  min: 0,
  max: 1,
  palette: ['FFFFFF','0000FF']  // 蓝色表示水体,白色表示非水体
};
// 在地图上显示水体掩膜
Map.centerObject(roi, 10);
Map.addLayer(waterMask, visParams, 'Water Mask');
Map.addLayer(roi,{},"roi");

 

posted @ 2023-11-01 16:01  每日摸鱼  阅读(976)  评论(0)    收藏  举报