【GEE实践应用】GEE下载遥感数据以及下载后在ArcGIS中的常见显示问题处理(以下载哨兵2号数据为例)

本期内容我们使用GEE进行遥感数据的下载,使用的相关代码如下所示,其中table是我们提前导入的下载遥感数据的研究区域的矢量边界数据。

javascript 复制代码
var district = table;

var dsize = district.size();
print(dsize);

var district_geometry = district.geometry();

Map.centerObject(district_geometry,12);
Map.addLayer(district);
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 the function over one year of data.
// Load Sentinel-2 TOA reflectance data.
var dataset = ee.ImageCollection('COPERNICUS/S2')
                  .filterBounds(district_geometry)
                  .filterDate('2020-06-01', '2021-07-01')
                  // Pre-filter to get less cloudy granules.
                  .filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE', 20))
                  .map(maskS2clouds)
                  .median()
                  .clip(district_geometry);
                  
                

var rgbVis = {
  min: 0.0,
  max: 0.3,
  bands: ['B4', 'B3', 'B2'],
};


Map.addLayer(dataset, rgbVis, 'RGB');
                  
  var mosaic = dataset;
  
  Export.image.toDrive({
      image:mosaic,
      description:'chongQing',
      scale:10,
      maxPixels: 1e13,
      region:district_geometry,
      fileFormat: 'GeoTIFF',
      formatOptions: {
        cloudOptimized: true
      }
    });

在运行上述代码之后,我们直接点击"RUN"即可将数据导出,然后在云盘点击下载即可(图2),注意,导出的数据可能被分为了好几幅影像,我们分别下载即可,另外,当我们下载了数据,将数据 导入至ArcGIS中时,可能会出现图3的问题,这时我们将图像的合成波段修改成432真彩色合成,并改变拉伸方式即可(图4),结果如图5所示。

图1|哨兵2号数据下载(以重庆市为例)

图2|GEE导出的数据(示例)

图3|下载的数据导入ArcGIS后出现问题

图4|改变影像的合成波段为432以及拉伸方式

图5|改变合成波段以及拉伸方式的结果

相关推荐
视图猿人6 小时前
RxJS基本使用及在next.js中使用的例子
开发语言·javascript
bitbitDown7 小时前
从零打造一个 Vite 脚手架工具:比你想象的简单多了
前端·javascript·面试
冴羽8 小时前
为什么在 JavaScript 中 NaN !== NaN?背后藏着 40 年的技术故事
前端·javascript·node.js
久爱@勿忘9 小时前
vue下载项目内静态文件
前端·javascript·vue.js
前端炒粉9 小时前
21.搜索二维矩阵 II
前端·javascript·算法·矩阵
不爱吃糖的程序媛9 小时前
Electron 应用中的系统检测方案对比
前端·javascript·electron
pe7er9 小时前
用高阶函数实现递归:从匿名函数到通用递归生成器
前端·javascript
Jonathan Star10 小时前
NestJS 是基于 Node.js 的渐进式后端框架,核心特点包括 **依赖注入、模块化架构、装饰器驱动、TypeScript 优先、与主流工具集成** 等
开发语言·javascript·node.js
矢心10 小时前
setTimeout 和 setInterval:看似简单,但你不知道的使用误区
前端·javascript·面试
一枚前端小能手10 小时前
🧭 使用历史记录 API - SPA导航与状态管理的完整指南
前端·javascript