GEE(Google earth engine)中的Landsat影像的选择和去云(附代码)

这篇具有很好参考价值的文章主要介绍了GEE(Google earth engine)中的Landsat影像的选择和去云(附代码)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  1.获取校正过的Landsat 影像

        在这里可以看到GEE提供的全部Landsat数据:Landsat Collections in Earth Engine  |  Earth Engine Data Catalog  |  Google Developers

landsat/lc08/c02/t1去云,javascript,云计算,数据挖掘,大数据     

        随便点进去,比如Landsat8,有三个数据,一个是地表面反射率数据,一个是大气层顶部的反射率数据,一个是raw。大气层顶部的反射数据需要进行大气校正才可以得到地表反照率。而raw数据自带了一个simplecomposite函数可以一步实现大气校正+去云(但亲测效果真的很靠运气,而且不是很好)。所以我推荐直接用地表反射率数据,不必为难自己去做校正,自己去云小问题。

        这里有个坑,地表反射率数据每一个波段都是空的!!!!!所以看到显示影像全是白色的时候不要害怕,本来就是这样的。请按照GEE的官方代码,自行套用,这个是Landsat8复制过来的代码:

var dataset = ee.ImageCollection('LANDSAT/LC08/C02/T1_L2')
    .filterDate('2021-05-01', '2021-06-01');

// Applies scaling factors.
function applyScaleFactors(image) {
  var opticalBands = image.select('SR_B.').multiply(0.0000275).add(-0.2);
  var thermalBands = image.select('ST_B.*').multiply(0.00341802).add(149.0);
  return image.addBands(opticalBands, null, true)
              .addBands(thermalBands, null, true);
}

dataset = dataset.map(applyScaleFactors);

var visualization = {
  bands: ['SR_B4', 'SR_B3', 'SR_B2'],
  min: 0.0,
  max: 0.3,
};

Map.setCenter(-114.2579, 38.9275, 8);

Map.addLayer(dataset, visualization, 'True Color (432)');

        上面那个代码是在Terms of use 上面找的。注意!不同的Landsat型号的上面那个代码是有细微差别的!不可以用同一个代码(自己曾经栽坑)!

        这里还有一个坑,Landsat5数据在1986后半年才有数据!虽然是1984才发射的!这里极易报错(如果不注意的话)。

        数据搞到了,现在开始去云。

2.去云

        很多代码直接无脑median()是很有问题的!有一些代码去云还是用mean(),这个更有问题!我下面的方法不一定是最方便的,但是应该是效果最好的。先说两种去云的方式:

(1)使用函数去云。

        这是我在csdn经常看到的。怎么说呢......还是看运气。有时候去了和没去一个样,有时候也works.因为相关的文章很多,这里就不贴具体的博文了。

(2)用median()。

        这个也是用得很多的。其实原理很直接明了,云的反射率很高,没有云的反射率就比较低,你先用cloud cover筛一遍,再用median也不错。但注意!一定要多多尝试cloud cover的阈值!不然很有可能你得到的结果精度不高,或者存在有些地方云还是没去掉。

        我先说为什么可能得到的精度不高。某一个pixel,如果有好几张相片都拍到,如果你监测城市用地的变化,那如果你这个pixel用的是年初的,另外旁边一个Pixel用的是年末的,那么你这一块城市用地到底是什么个情况很难说。所以对于这种应用场景,建议你设置一个时间的range,挑冬天没什么云的时候来搞。如果你想看农用地,那么一年得多大变化啊,所以更应该设置时间range。至于云为什么去不掉就不用多说了,假设你这一块有云的影像超过了半数,那就去不掉。所以建议先一点一点提高cloud cover的阈值,直到他刚好能覆盖完整研究区。

        上面这些经验真的我试了好几天!血泪教训!

        代码贴出来(你看这个2的阈值肯定就是一点一点去试出来的,同时设置了一下时间):

// Applies scaling factors for landsat 8.
function applyScaleFactors8(image) {
  var opticalBands = image.select('SR_B.').multiply(0.0000275).add(-0.2);
  var thermalBands = image.select('ST_B.*').multiply(0.00341802).add(149.0);
  return image.addBands(opticalBands, null, true)
              .addBands(thermalBands, null, true);
}

var landsat8 = ee.ImageCollection('LANDSAT/LC08/C02/T1_L2')
    .filterBounds(roi)
    .filterDate('2022-04-01', '2022-12-30')
    .map(applyScaleFactors8)
    .filter(ee.Filter.lt('CLOUD_COVER',2))
    .median();

        我师姐和我说,最好不要像这样一句代码写这么长,这样debug的时候就比较费劲(不管了)。可以这样去debug,你复制https://code.earthengine.google.com/这个网址,打开一个新的网页粘贴上去,就开了一个新窗口,然后就可以快乐debug目标代码啦~代码里面的filter就不解释了,总之就是用3个filter去限制时间和空间和云量。

        以上就是Landsat数据导入的全部内容啦~下次的内容是怎么做城市不透水面提取的年度变化!成果是下面这样:

landsat/lc08/c02/t1去云,javascript,云计算,数据挖掘,大数据文章来源地址https://www.toymoban.com/news/detail-778559.html

到了这里,关于GEE(Google earth engine)中的Landsat影像的选择和去云(附代码)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Google Earth Engine(GEE):大数据林业应用

    近年来遥感技术得到了突飞猛进的发展,航天、航空、临近空间等多遥感平台不断增加,数据的空间、时间、光谱分辨率不断提高,数据量猛增,遥感数据已经越来越具有大数据特征。遥感大数据的出现为相关研究提供了前所未有的机遇,同时如何处理好这些数据也提出了巨

    2024年02月06日
    浏览(45)
  • Google Earth Engine(GEE)扩展——制作的GEE app的误区

    地球引擎有一个用户界面API,允许用户直接从JavaScript代码编辑器中构建和发布交互式Web应用。许多读者会在其他章节中遇到对ui.Chart的调用,但还有更多的界面功能可用。特别是,用户可以利用ui函数来为他们的地球引擎脚本构建整个图形用户界面(GUI)。GUI可以包括简单的

    2023年04月12日
    浏览(23)
  • Google Earth Engine(GEE)深度学习入门教程- GEE导出篇

    官方教程:TFRecord 和地球引擎 在GEE的JS Code Editor中,我们按照我们的需要去处理对应的遥感影像,得到处理后Image影像。为了导出后读取数据,在导出前 一定清楚每个波段的名称(不然没法读取) 。深度学习数据集所需数据以为patch为单位,所以需要对整个遥感影像进行裁剪

    2024年02月03日
    浏览(33)
  • Google Earth Engine(GEE)——LandScan人口数据集

    LandScan人口数据 LandScan计划于1997年在橡树岭国家实验室(ORNL)启动,以满足为后果评估改进人口估计的需要。例如,全球范围内的自然和人为灾害使大量的人口处于危险之中,而且往往没有什么预先警告。开发高分辨的估计值是至关重要的,这样他们就可以对多个地理范围内

    2024年02月12日
    浏览(30)
  • Google Earth Engine(GEE)——可视化动态图

    代码: 这里每一次最终的影像结果:  本文所需用到的函数: getVideoThumbURL(params, callback) 为这个ImageCollection获取一个动画缩略图的URL。 返回一个缩略图的URL,如果指定了回调,则未定义。 参数。 this:imagecollection(ImageCollection)。 ImageCollection实例。 params (对象): 与ee.data.get

    2024年02月16日
    浏览(25)
  • Google Earth Engine(GEE)——python导出 GeoTIFF 文件

    处理地球引擎数据集后,您可能需要将结果导出 ee.Image 到 GeoTIFF。例如,将其用作 Earth Engine 外部数值模型的输入,或将其与您喜欢的 GIS 中的个人地理参考文件重叠。有多种方法可以做到这一点(请参阅开发人员指南的导出部分)。在这里,我们探索两种选择: ee.Image 在

    2023年04月13日
    浏览(59)
  • Google Earth Engine(GEE)——快速建立一个10km的格网

    本文的主要目的是如何快速实现区域的一个网格的建立,主要过程是获取影像的经纬度,然后分别获取经纬度乘以一个数然后转化为整型,并将长宽相乘转化为一个矢量,然后对每一个歌王进行边界的坐标的获取与,最后返回一个多边形geometry,最后还要建立一个可以画图的

    2024年02月05日
    浏览(35)
  • Google Earth Engine(GEE)下载全球土壤砂粒(Sand)含量数据

    SoilGrids,是一个全球土壤属性地图,现在可以通过GEE下载。 SoilGrids是ISRIC–世界土壤信息的一个项目,旨在提供一个全球一致的、由数据驱动的系统,以预测土壤性质,并将其作为一项重要指标。该项目旨在提供一个全球一致的、由数据驱动的系统,使用全球协变量和全球拟

    2024年02月08日
    浏览(46)
  • Google Earth Engine(GEE)合成长时序的月NDVI与LST

    今天来简单分享下如何在GEE 合成长时序的月NDVI与LST,并进行分析 目标: 利用MODIS为数据源,在GEE计算某一地区对 月NDVI与LST ,并制作统计图 以武汉市为研究区 GEE实现代码: 首先确定研究区和使用的数据集 确定起止时间和月份 合成NDVI和LST 合成月NDVI 同样的方法合成月LST

    2024年02月15日
    浏览(35)
  • Google earth engine 基于面向对象遥感影像分割 SNIC分割算法

    摘要被导师嫌弃N+1次,又摘要阴影了,懒得写摘要,这篇主要是在GEE上基于面向对象以Sentinel-2数据做的无监督分类算法示例,嗯呢,就是这样,您接着往下看有没有你需要的。 文章目录 一、Google earth engine简介 二、面向对象遥感影像分析方法 三、SNIC分割算法 四、总结    

    2024年01月17日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包