2023-5-30-GEE-土地覆盖处理


大家可以借鉴,但是希望不要抄的一模一样喔。・ࡇ・


GEE-土地覆盖处理

1 数据集介绍

MCD12Q1.061 MODIS 土地覆盖类型每年全球500m

DOIS:https://doi.org/10.5067/M ODIS/MCD12Q1.061

GEE中获取方式:ee.ImageCollection(“MODIS/061/MCD12Q1”)

描述:Terra 和 Aqua 组合的中分辨率成像光谱仪 (MODIS) 土地覆盖类型(MCD12Q1) 版本 6.1 数据产品每年提供全球土地覆盖类型。MCD12Q1 版本 6.1 数据产品是使用 MODIS Terra 和 Aqua 反射率数据的监督分类得出的。土地覆盖类型源自国际地圈-生物圈计划 (IGBP)、马里兰大学 (UMD)、叶面积指数 (LAI)、生物群落-生物地球化学循环 (BGC) 和植物功能类型 (PFT) 分类方案。监督分类然后进行额外的后处理,结合先验知识和辅助信息以进一步细化特定类别。还提供了土地覆盖类型 1-5、土地覆盖特性 1-3、土地覆盖特性评估 1-3、土地覆盖质量控制 (QC) 和土地水掩模的图层。

2 GEE

2.1 code

function addLegend(palette, names) {
 //图例的底层Panel
 var legend = ui.Panel({
   style: {
     position: 'bottom-right',
     padding: '5px 10px'
   }
 });
 //图例标题
 var title = ui.Label({
   value: '图例',
   style: {
     fontWeight: 'bold',
     color: "red",
     fontSize: '16px'
   }
 });
 legend.add(title);

 //添加每一列图例颜色以及说明
 var addLegendLabel = function(color, name) {
       var showColor = ui.Label({
         style: {
           backgroundColor: '#' + color,
           padding: '8px',
           margin: '0 0 4px 0'
         }
       });

       var desc = ui.Label({
         value: name,
         style: {margin: '0 0 4px 8px'}
       });
     //颜色和说明是水平放置
       return ui.Panel({
         widgets: [showColor, desc],
         layout: ui.Panel.Layout.Flow('horizontal')
       });
 };

 //添加所有的图例列表
 for (var i = 0; i < palette.length; i++) {
   var label = addLegendLabel(palette[i], names[i]);
   legend.add(label);
 }  

 Map.add(legend);
}


//modis地标分类数据  
var countries = ee.FeatureCollection("users/landusers/province"); 
var mcd12q1 = ee.ImageCollection("MODIS/006/MCD12Q1");  
var roi = countries.filter(ee.Filter.eq("PINYIN_NAM", "chongqingshi"));//feature 7 
Map.centerObject(roi, 8);  
Map.addLayer(roi, {}, "roi");
//选择重庆2020的土地覆盖  
var dataset = mcd12q1.filterDate('2020-01-01', '2021-1-01')
                     .select('LC_Type1')
                     .first()
                     .clip(roi)
print("dataset",dataset);  
//统计
var area = ee.Image.pixelArea().addBands(dataset)
.reduceRegion({
        reducer: ee.Reducer.sum().group({
          groupField: 1, 
          groupName: "discrete_classification"
        }),
        geometry: roi, 
        scale: 500,
        maxPixels:10e15,
})
print("discrete_classification",area)
var dataset = dataset.set({"area":area})

var dataseicol = ee.ImageCollection(dataset);

var area = dataseicol.reduceColumns(ee.Reducer.toList(), ['area'])
                            .get('list');
                            
var time = dataseicol.reduceColumns(ee.Reducer.toList(), ['system:time_start'])
                            .get('list');
var feature = ee.List(time).zip(area).map(function(timeArea){
  var time = 2020+"year";
  var area = ee.List(timeArea).get(1);
      area = ee.Dictionary(area).get("groups");
  var feature = ee.List(area).map(function(dict){
      dict = ee.Dictionary(dict);
  var value = dict.values();
    return ee.Feature(null, { 
      time: time,
      land:value.get(0),
      area:value.get(1)});
    });
    
  return feature;
});

feature = feature.flatten();
var feature = ee.FeatureCollection(feature);
var palette = [
    '05450a', '086a10', '54a708', '78d203', '009900', 'c6b044', 'dcd159',
    'dade48', 'fbff13', 'b6ff05', '27ff87', 'c24f44', 'a5a5a5', 'ff6d4c',
    '69fff8', 'f9ffa4', '1c0dff'
  ]
var names = [ '1 Evergreen Needleleaf Forests',
              '2 Evergreen Broadleaf Forests',
              '3 Deciduous Needleleaf Forests',
              '4 Deciduous Broadleaf Forests ',
              '5 Mixed Forests',
              '6 Closed Shrublands ',
              '7 Open Shrublands',
              '8 Woody Savannas',
              '9 Savannas',
              '10 Grasslands ',
              '11 Permanent Wetlands',
              '12 Croplands',
              '13 Urban and Built-up Lands ',
              '14 Cropland/Natural Vegetation Mosaics',
              '15 Permanent Snow and Ice',
              '16 Barren',
              '17 Water Bodies']
//画折线图
var chart = ui.Chart.feature.groups(feature, "land", "area", "time")
    .setOptions({
      title: 'area  Landcover',
      hAxis: {'title': 'classfication'},
      vAxis: {'title': 'area (m^2)'},
      pointSize: 3,
      colors:['c24f44']
    })
print(chart)
var landcoverVisualization = {palette: palette, min: 1, max: 17, format: 'png'};
Map.addLayer(dataseicol.first().clip(roi), landcoverVisualization, 'landcover');

//添加图例
addLegend(palette, names);
//下载
 Export.image.toDrive({
  image: dataset,
  description: 'modis_landcover_chongqing',
  folder:"DATA",
  region: roi,
  scale: 500,
  crs:'EPSG:4326',
  fileFormat: 'GeoTIFF',
});
  1. 其中颜色标注与土地分类来源于文档MCD12_User_Guide_V61.pdf (https://lpdaac.usgs.gov/documents/101/MCD12_User_Guide_V6.pdf)中关于LC_Type1的说明。

  2. 选择重庆市的土地覆盖数据时,ee.Filter.eq字段为"chongqingshi",而不是"Chongqing",这需要打印countries字段查看属性得知,发现有很多省份也不是首字母大写,此外还有西藏不是国际上一般使用的"Tibet",而是中文拼音。可能是ID字段要唯一有关。

2.2 代码运行结果:

  1. 重庆市土地覆盖分类图

在这里插入图片描述

  1. 重庆各类土地折线图

在这里插入图片描述

2.2 结果分析

结果导出计算得到重庆面积大约为81150平方公里,而实际重庆面积为82402万平方公里,误差约为1.5%,说明整个过程误差准确性较高。

表格 1 GEE-土地覆盖各类面积

value and nameArea(km²)
1 Evergreen Needleleaf Forests300
2 Evergreen Broadleaf Forests62
4 Deciduous Broadleaf Forests3841
5 Mixed Forests10542
8 Woody Savannas29103
9 Savannas10624
10 Grasslands250
11 Permanent Wetlands328
12 Croplands461
13 Urban and Built-up Lands1640
14 Cropland/Natural Vegetation Mosaics23909
16 Barren15
17 Water Bodies74

GEE-各类土地复合饼图

在这里插入图片描述

3 Arcmap

3.1 重分类

选择Spatal Analyst工具-重分类-重分类,对GEE导出的tif文件进行重分类重分类字段选择value,分类方法(M)选择唯一,手动修改重分类旧值与新值对应无误后,其中0值对应为NoData,最后选择输出栅格。

3.2 颜色标注与土地分类

参考文档:

MCD12_User_Guide_V61.pdf(https://lpdaac.usgs.gov/documents/101/MCD12 _User_Guide_V6.pdf)中关于LC_Type1的说明

表格 2 颜色对照表

value and nameColor ValueRGB
1 Evergreen Needleleaf Forests05450aRGB(5,69,10)
2 Evergreen Broadleaf Forests086a10RGB(8,106,16)
3 Deciduous Needleleaf Forests54a708RGB(84,167,8)
4 Deciduous Broadleaf Forests78d203RGB(120,210,3)
5 Mixed Forests009900RGB(0,153,0)
6 Closed Shrublandsc6b044RGB(198,176,68)
7 Open Shrublandsdcd159RGB(220,209,89)
8 Woody Savannasdade48RGB(218,222,72)
9 Savannasfbff13RGB(251,255,19)
10 Grasslandsb6ff05RGB(182,255,5)
11 Permanent Wetlands27ff87RGB(39,255,135)
12 Croplandsc24f44RGB(194,79,68)
13 Urban and Built-up Landsa5a5a5RGB(165,165,165)
14 Cropland/Natural Vegetation Mosaicsff6d4cRGB(255,109,76)
15 Permanent Snow and Ice69fff8RGB(105,255,248)
16 Barrenf9ffa4RGB(249,255,164)
17 Water Bodies1c0dffRGB(28,13,255)

3.4 导出图层

1、重庆市土地覆盖图1

在这里插入图片描述

2、重庆市土地覆盖图2

3.5 结果分析

将图层进行投影变换,查看属性得出每一个像元大小大约为475.5m*475.5m,总计379420 个像元,计算得到重庆面积大约为85791平方公里,而实际重庆面积为82402万平方公里,误差约为4.1%,说明整个过程误差并没有很大。误差可能产生在投影变换中。

表格 3 Arcmap-土地覆盖各类面积

value and nameCountArea(km²)
1Evergreen Needleleaf Forests1400317
2 Evergreen Broadleaf Forests29266
4 Deciduous Broadleaf Forests182814134
5 Mixed Forests4967311232
8 Woody Savannas13602930758
9 Savannas4954511203
10 Grasslands1166264
11 Permanent Wetlands1525345
12 Croplands2157488
13 Urban and Built-up Lands75831715
14 Cropland/Natural Vegetation Mosaics11135425178
16 Barren6916
17 Water Bodies34678

Arcmap-各类土地复合饼图

在这里插入图片描述

4总结

首先,GEE上面编程更加方便快捷,只要更改数据,对其他研究区域也可以很快的进行处理。在ArcMap上面手动操作就慢了许多,而且每次都要进行相同的处理,在制图时更加耗时耗力。

不过,ArcMap制图更加的标准以及有着丰富的功能进行制图美化。

总的来说,可以把数据处理放到GEE上面来做,而制图使用ArcMap工具,这样综合两者的长处。

  • 17
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值