草庐IT

GEE11:2个土地覆盖数据(LUCC)分享和下载

Amyniez 2023-04-20 原文

LUCC

今天分享两个土地利用数据,一个可以直接下载(30m),另一个需要使用GEE平台进行下载(500m)。

1.2020年全球30米地表覆盖精细分类产品V1.0

  该数据来自中科院空天院数据网络——刘良云老师团队,里面包含了2000、2005、2010、2020年的土地覆盖数据,精度为30m,附上下载链接:添加链接描述

1.1 背景

  地表覆盖分布是气候变化研究、生态环境评估及地理国情监测等不可或缺的重要基础信息。近年来,随着遥感科学技术以及计算机存储和计算能力的不断提升,地表覆盖应用需求也逐步从公里尺度(如 1 公里,500 米)向更高分辨率的米级尺度(30 米和 10 米)过渡。目前,已公开的三套 30 米全球地表覆盖产品(GLC_FCS30,FROM_GLC 和 GlobeLand30)能够很好地服务了全球/区域尺度的应用需求。
  然而,随着遥感数据的逐步积累,针对长时序地表覆盖监测产品的需求也日益迫切,尤其是具有最长时间积累的 Landsat 卫星数据。目前而言,国内外已经陆续发布了多套长时序的全球地表覆盖产品,例如:NASA 发布的自 2000 年到2020 年逐年更新的 MCD12Q1 产品,ESA 发布的自 1992 年到 2020 年的逐年更新的 300 米 CCI_LC 产品,这两套产品在时间维度具上有很好的连续性,但其百米级的空间分辨率导致其依然无法准确地刻画在区域尺度上人为活动对地表覆盖的影响。在更高空间分辨率的 30 米尺度,国家地理信息中心已陆续发布了 2000年、2010 年和 2020 年三个版本的全球 30 米地表覆盖产品,该数据集能够为精细尺度的地表覆盖变化分析提供基础的数据支撑,但是,其更新周期跨度较长(10年)并且无法监测 2000 年之前的地表覆盖信息。
  为了实现全自动长时序的全球 30 米地表覆盖动态监测目标,本研究以课题组 2020 年最新研发的全球 30 米地表覆盖精细分类产品(GLC_FCS30-2020)为基准数据,提出了耦合变化检测和动态更新相结合的长时序地表覆盖动态监测方案,利用 1984-2020 年所有 Landsat 卫星数据(Landsat TM,ETM+和 OLI)在Google Earth Engine 云计算平台完成了长时序的地表覆盖变化检测,并结合变化检测结果实现了逐区域和逐期的地表覆盖动态更新,生产了 1985 年-2020 年全球 30 米精细地表覆盖动态监测产品。该产品沿用了 2020 年基准数据的分类体系,共包含 29 个地表覆盖类型,更新周期为 5 年。

1.2 分类体系



  这个数据需要自己下载单个图幅,然后自己进行拼接。

1.3 1985-2020 年全球 30 米精细地表覆盖动态监测产品

1.4 下载数据展示

2. MCD12Q1.006 MODIS Land Cover Type Yearly Global 500m

2.1 数据介绍

  MODIS三级数据土地覆盖类型产品(Land Cover data)是根据一年的Terra和Aqua观测所得的数据经过处理,描述土地覆盖的类型。该土地覆盖数据集中包含了17个主要土地覆盖类型,根据国际地圈生物圈计划(IGBP),其中包括11个自然植被类型,3个土地开发和镶嵌的地类和3个非草木土地类型定义类。
  MODIS Terra + Aqua三级土地覆盖类型年度全球500米产品MCD12Q1采用五种不同的土地覆盖分类方案,信息提取主要技术是监督决策树分类。下面是该数据中包含的五个数据集,五个分类方案如下:

  1. 土地覆盖分类1:IGBP的全球植被分类方案(我们主要使用此图层)
  2. 土地覆盖分类2:美国马里兰大学(UMD格式)方案
  3. 土地覆盖分类3:基于MODIS叶面积指数/光合有效辐射方案
  4. 土地覆盖分类4:基于MODIS衍生净初级生产力(NPP)方案
  5. 土地覆盖分类5:植物功能型方案

2.2 分类体系

2.3 GEE code

/**
 * @Author: Jackson Zhao
 * @Date: 2023-03-15 20:33:13
 * @LastEditors: Jackson Zhao  
 * @LastEditTime: 2023-03-15 20:33:13
 * Description: This code is used to download lucc dataset.
 */
 
//只保留roi的几何形状
var roi = china;

//将显示的图层缩放到研究区中心
Map.centerObject(roi,5) 

var styling = {color:"red",fillColor:"00000000"};
Map.addLayer(roi.style(styling),{},"geometry")

for(var i = 2005;i<=2010;i++){
var dataset = ee.ImageCollection("MODIS/006/MCD12Q1")
                .filterDate(i+'-01-01', i+'-12-31')
                .select('LC_Type1')
var classification = dataset.mosaic().clip(roi)

//在窗口展示一下classification图像
//配置显示参数
var igbpLandCoverVis = {
  min: 1.0,
  max: 17.0,
  palette: [
    '05450a', '086a10', '54a708', '78d203', '009900', 'c6b044', 'dcd159',
    'dade48', 'fbff13', 'b6ff05', '27ff87', 'c24f44', 'a5a5a5', 'ff6d4c',
    '69fff8', 'f9ffa4', '1c0dff'
  ],
};

print(classification)
//图像展示
Map.addLayer(classification, igbpLandCoverVis, i+"MCD12Q1 LC_Type1");

Export.image.toDrive({
      image: classification,
      description: i+'land',
      region: roi,
      scale: 500,
      maxPixels: 1e13,
      crs: "EPSG:32648",
      folder: 'LUCC'
    })   
}

结果展示:

控制台:

效果图:

点击下载就可以了,tif影像不大,几百kb。

有关GEE11:2个土地覆盖数据(LUCC)分享和下载的更多相关文章

  1. ruby - 解析 RDFa、微数据等的最佳方式是什么,使用统一的模式/词汇(例如 schema.org)存储和显示信息 - 2

    我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i

  2. ruby-on-rails - 在混合/模块中覆盖模型的属性访问器 - 2

    我有一个包含模块的模型。我想在模块中覆盖模型的访问器方法。例如:classBlah这显然行不通。有什么想法可以实现吗? 最佳答案 您的代码看起来是正确的。我们正在毫无困难地使用这个确切的模式。如果我没记错的话,Rails使用#method_missing作为属性setter,因此您的模块将优先,阻止ActiveRecord的setter。如果您正在使用ActiveSupport::Concern(参见thisblogpost),那么您的实例方法需要进入一个特殊的模块:classBlah

  3. ruby - 如何使用 Ruby aws/s3 Gem 生成安全 URL 以从 s3 下载文件 - 2

    我正在编写一个小脚本来定位aws存储桶中的特定文件,并创建一个临时验证的url以发送给同事。(理想情况下,这将创建类似于在控制台上右键单击存储桶中的文件并复制链接地址的结果)。我研究过回形针,它似乎不符合这个标准,但我可能只是不知道它的全部功能。我尝试了以下方法:defauthenticated_url(file_name,bucket)AWS::S3::S3Object.url_for(file_name,bucket,:secure=>true,:expires=>20*60)end产生这种类型的结果:...-1.amazonaws.com/file_path/file.zip.A

  4. ruby - 无法覆盖 irb 中的 to_s - 2

    我在pry中定义了一个函数:to_s,但我无法调用它。这个方法去哪里了,怎么调用?pry(main)>defto_spry(main)*'hello'pry(main)*endpry(main)>to_s=>"main"我的ruby版本是2.1.2看了一些答案和搜索后,我认为我得到了正确的答案:这个方法用在什么地方?在irb或pry中定义方法时,会转到Object.instance_methods[1]pry(main)>defto_s[1]pry(main)*'hello'[1]pry(main)*end=>:to_s[2]pry(main)>defhello[2]pry(main)

  5. ruby - 安装 Ruby 时遇到问题(无法下载资源 "readline--patch") - 2

    当我尝试安装Ruby时遇到此错误。我试过查看this和this但无济于事➜~brewinstallrubyWarning:YouareusingOSX10.12.Wedonotprovidesupportforthispre-releaseversion.Youmayencounterbuildfailuresorotherbreakages.Pleasecreatepull-requestsinsteadoffilingissues.==>Installingdependenciesforruby:readline,libyaml,makedepend==>Installingrub

  6. ruby - 覆盖相似的方法,更短的语法 - 2

    在Ruby类中,我重写了三个方法,并且在每个方法中,我基本上做同样的事情:classExampleClassdefconfirmation_required?is_allowed&&superenddefpostpone_email_change?is_allowed&&superenddefreconfirmation_required?is_allowed&&superendend有更简洁的语法吗?如何缩短代码? 最佳答案 如何使用别名?classExampleClassdefconfirmation_required?is_a

  7. ruby - Ruby 有 `Pair` 数据类型吗? - 2

    有时我需要处理键/值数据。我不喜欢使用数组,因为它们在大小上没有限制(很容易不小心添加超过2个项目,而且您最终需要稍后验证大小)。此外,0和1的索引变成了魔数(MagicNumber),并且在传达含义方面做得很差(“当我说0时,我的意思是head...”)。散列也不合适,因为可能会不小心添加额外的条目。我写了下面的类来解决这个问题:classPairattr_accessor:head,:taildefinitialize(h,t)@head,@tail=h,tendend它工作得很好并且解决了问题,但我很想知道:Ruby标准库是否已经带有这样一个类? 最佳

  8. ruby - 是否可以覆盖 gemfile 进行本地开发? - 2

    我们的git存储库中目前有一个Gemfile。但是,有一个gem我只在我的环境中本地使用(我的团队不使用它)。为了使用它,我必须将它添加到我们的Gemfile中,但每次我checkout到我们的master/dev主分支时,由于与跟踪的gemfile冲突,我必须删除它。我想要的是类似Gemfile.local的东西,它将继承从Gemfile导入的gems,但也允许在那里导入新的gems以供使用只有我的机器。此文件将在.gitignore中被忽略。这可能吗? 最佳答案 设置BUNDLE_GEMFILE环境变量:BUNDLE_GEMFI

  9. ruby - 我如何添加二进制数据来遏制 POST - 2

    我正在尝试使用Curbgem执行以下POST以解析云curl-XPOST\-H"X-Parse-Application-Id:PARSE_APP_ID"\-H"X-Parse-REST-API-Key:PARSE_API_KEY"\-H"Content-Type:image/jpeg"\--data-binary'@myPicture.jpg'\https://api.parse.com/1/files/pic.jpg用这个:curl=Curl::Easy.new("https://api.parse.com/1/files/lion.jpg")curl.multipart_form_

  10. 世界前沿3D开发引擎HOOPS全面讲解——集3D数据读取、3D图形渲染、3D数据发布于一体的全新3D应用开发工具 - 2

    无论您是想搭建桌面端、WEB端或者移动端APP应用,HOOPSPlatform组件都可以为您提供弹性的3D集成架构,同时,由工业领域3D技术专家组成的HOOPS技术团队也能为您提供技术支持服务。如果您的客户期望有一种在多个平台(桌面/WEB/APP,而且某些客户端是“瘦”客户端)快速、方便地将数据接入到3D应用系统的解决方案,并且当访问数据时,在各个平台上的性能和用户体验保持一致,HOOPSPlatform将帮助您完成。利用HOOPSPlatform,您可以开发在任何环境下的3D基础应用架构。HOOPSPlatform可以帮您打造3D创新型产品,HOOPSSDK包含的技术有:快速且准确的CAD

随机推荐