GEE-Scholars 快速检测森林火灾位置及面积

沐风-GEE系列专栏

涵盖生态环境、卫星遥感、气候变化、云计算。

  • Google Earth Engine 系列学习笔记(一)
  • Google Earth Engine 系列学习笔记(二)
  • GEE-Scholars 可视化时间序列农业景观
  • GEE-Scholars 机器学习之卫星图像监督分类
  • GEE-Scholars 水体动态监测-河南水灾案例
  • GEE-Scholars 江淮平原水稻面积识别
  • GEE-Scholars 快速检测森林火灾位置及面积

前言

森林火灾不仅会破坏大量植被,改变火灾后的生态格局,而且森林火灾中燃烧的生物质量与碳排放量密切相关。

本篇文章基于GEE云平台的光学数据快速检测山火面积和位置,为国家应急部门提供依据。

研究区:2020年4月山东森林火灾事件

1、定义监测区域

// var roi 
var roi = ee.Geometry.Polygon(
        [[[120.0359831156161, 35.9990397515576],
          [120.0359831156161, 35.9305077800842],
          [120.16854933876063, 35.9305077800842],
          [120.16854933876063, 35.9990397515576]]]);
Map.centerObject(roi, 12)
Map.addLayer(roi, {color: "red"}, "roi");

GEE-Scholars 快速检测森林火灾位置及面积

2、定义FDI指数(Fire Danger Inder)

var addVariables = function(image){
  var FDI = image.expression("SWIR2/Redge",{
    Redge: image.select("B5"),
    SWIR2: image.select("B12")
  }).rename('FDI');
  var ndvi = image.normalizedDifference(['B8','B4']).rename('NDVI')
  return image.addBands([FDI,ndvi]);
}
;

3、数据获取

var S2 = ee.ImageCollection('COPERNICUS/S2')
            .filterBounds(roi)
            .filterDate("2020-04-21", "2020-04-28")
            .sort("system:time_start",false)

print(S2,"s2")
print("Time",S2.first().date().advance(8,"hour")) 

var S2_01 = ee.ImageCollection('COPERNICUS/S2')
        .filterBounds(roi)
        .filterDate("2020-04-21", "2020-04-24")
        .map(addVariables)
        .mosaic()
        .clip(roi)

var S2_02 = ee.ImageCollection('COPERNICUS/S2')
        .filterBounds(roi)
        .filterDate("2020-04-26", "2020-04-27")
        .map(addVariables)
        .mosaic()
        .clip(roi)
var visParams01 = {"bands": ["B12", "B8", "B4"],"min": 500,"max": 4000, gamma: 1.5, scale: 10};

Map.addLayer(S2_01,visParams01, "S2_01_true");
Map.addLayer(S2_02,visParams01, "S2_02_ture");

GEE-Scholars 快速检测森林火灾位置及面积
GEE-Scholars 快速检测森林火灾位置及面积
GEE-Scholars 快速检测森林火灾位置及面积

4、监测山火

var FDI01 = S2_01.select("FDI");
var FDI02 = S2_02.select("FDI");
var fire_FDI = FDI02.subtract(FDI01);
var fire_FDI = FDI02.gte(3).and(fire_FDI.gte(2));
var fire_FDI = fire_FDI.updateMask(fire_FDI.eq(1)).rename('fire_FDI');
Map.addLayer(fire_FDI, {palette: 'red'}, 'FDI');

GEE-Scholars 快速检测森林火灾位置及面积

5、检测 FDI_area 面积

var FDI_area = fire_FDI.multiply(ee.Image.pixelArea());
var FDI_area = FDI_area.reduceRegion({
                  reducer: ee.Reducer.sum(),
                  geometry: roi, 
                  scale: 10, 
                  maxPixels: 1e13
                });
print("Fire Area:",FDI_area);

GEE-Scholars 快速检测森林火灾位置及面积

6、统计燃烧面积

var ndvi01 = S2_01.select("NDVI");
var ndvi02 = S2_02.select("NDVI");
var fire_area = ndvi01.subtract(ndvi02);
var fire_area = fire_area.gte(0.1)
                .and(ndvi01.gte(0.15))
                .and(ndvi02.lte(0.15));
var fire_area = fire_area.updateMask(fire_area.eq(1)).rename('fire_area');
Map.addLayer(fire_area,{min: 0, max:1, palette: ['green','red']}, "fire_area");
var fire_area = fire_area.multiply(ee.Image.pixelArea());
var fire_area = fire_area.reduceRegion({
                  reducer: ee.Reducer.sum(),
                  geometry: roi, 
                  scale: 10, 
                  maxPixels: 1e13
                });
print("燃烧总面积:",fire_area);

GEE-Scholars 快速检测森林火灾位置及面积
GEE-Scholars 快速检测森林火灾位置及面积

总结

本章内容基于GEE利用哨兵卫星数据快速检测森林火灾位置及火灾面积。

期待下一期精彩案例分享,欢迎交流学习。

我是沐风,致力于打造丝般的知识分享,勤奋、睿智、帅气的沐风。

温馨提示:本栏目将于明年6月转为付费栏目,收益全部捐赠给希望之山小学项目。

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
扎眼的阳光的头像扎眼的阳光普通用户
上一篇 2022年3月18日 下午4:12
下一篇 2022年3月18日

相关推荐