基于GEE使用MODIS/006/MCD64A1进行长时间序列野外火点识别代码

hellohello!GIS辣妹来了,今天带来使用 Google Earth Engine (GEE) 平台来提取和分析福建省在 2010 年至 2020 年期间的火灾数据的代码,导出格式为带有经纬度信息的表格数据,后续可在各个gis软件中进行可视化,效果如下,使用数据为MODIS 火灾数据集(MCD64A1)。
在这里插入图片描述

GEE中代码如下,代码如果需要自己运行的话有以下两点需要修改:
1.边界改成自己上传的边界
2.定义自己的时间序列,代码是2010-2020

// 加载用户自定义的福建省边界
var fujian = ee.FeatureCollection("users/dyx13100530097/fujian");

// 加载MODIS火灾数据集
var fireCollection = ee.ImageCollection('MODIS/006/MCD64A1')
  .filterDate('2010-01-01', '2020-12-31')
  .filterBounds(fujian);

// 选择感兴趣的波段:例如烧毁日期Band(BurnDate)
var burnDate = fireCollection.select('BurnDate');

// 提取火点函数
var extractFirePoints = function(image) {
  var fireMask = image.select('BurnDate').gt(0);  // 烧毁日期大于0的区域
  var fireVectors = fireMask.selfMask().reduceToVectors({
    geometry: fujian.geometry(),
    geometryType: 'centroid',
    scale: 500,
    maxPixels: 1e8
  });
  return fireVectors.set({system: image.get('system:time_start')}); // 添加时间属性
};

// 映射提取火点函数到图像集合
var fireVectorsCollection = burnDate.map(extractFirePoints);

// 扁平化火点集合
var firePointsFlattened = fireVectorsCollection.flatten();

// 添加经纬度信息
var withLatLon = firePointsFlattened.map(function(feature) {
  var centroid = feature.geometry().centroid();
  var lon = centroid.coordinates().get(0);
  var lat = centroid.coordinates().get(1);
  return feature.set('longitude', lon).set('latitude', lat);
});

// 可视化火点
Map.addLayer(withLatLon, {color: 'red'}, 'Fire Points');

// 设置地图中心
Map.centerObject(fujian, 7);

// 导出带有经纬度的火点数据为CSV文件
Export.table.toDrive({
  collection: withLatLon,
  description: 'Fujian_Fire_Points_2010_2020_CSV',
  fileFormat: 'CSV',
  selectors: ['system:time_start', 'longitude', 'latitude'] // 选择需要导出的字段
});

给辣妹点个赞再走吧!

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值