news 2026/5/5 18:28:27

GEE实战:用Hansen v1.11森林变化数据,5分钟生成你家乡的20年毁林/造林地图

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
GEE实战:用Hansen v1.11森林变化数据,5分钟生成你家乡的20年毁林/造林地图

用GEE和Hansen数据5分钟生成家乡森林变迁地图

每次回到家乡,总会发现记忆中的山林变了模样——有些地方郁郁葱葱更胜从前,有些区域却成了裸露的土地。作为非专业开发者,我们如何用科学数据验证这些观察?Google Earth Engine(GEE)平台上的Hansen Global Forest Change v1.11数据集,让普通人也能快速生成专业级的森林变化分析图。本文将带你用最简单的代码,可视化2000-2023年间任意区域的森林变迁。

1. 准备工作:认识关键数据与工具

Hansen数据集是马里兰大学联合谷歌等机构开发的全球森林变化权威数据,30米分辨率足以呈现县级区域的细节。其核心波段包括:

  • treecover2000:2000年的初始森林覆盖率(高度超过5米的植被)
  • loss:2000-2023年间森林消失区域(二进制数据)
  • gain:2000-2012年间新增森林区域(该数据未随版本更新)
  • lossyear:森林消失的具体年份(2001=1,...,2023=23)
波段类型时间范围数据含义可视化建议颜色
森林消失(loss)2000-2023从森林变为非森林红色
森林增加(gain)2000-2012从非森林变为森林蓝色
初始覆盖2000年基准原始森林覆盖百分比绿色渐变

重要提示:GEE平台需要谷歌账号登录,但所有计算在云端完成,普通笔记本浏览器即可流畅操作。

2. 三步生成基础森林变化图

2.1 定位你的关注区域

打开GEE代码编辑器(https://code.earthengine.google.com/),在搜索框输入你的家乡坐标。例如查询杭州余杭区:

var region = ee.Geometry.Rectangle([119.7, 30.2, 120.2, 30.6]); // 替换为你的坐标 Map.centerObject(region, 10); // 10表示缩放级别

坐标获取技巧

  • 用谷歌地图右键点击位置→复制经纬度
  • 城市级区域建议矩形范围边长0.5度以内
  • 山区可改用ee.Geometry.Polygon绘制复杂边界

2.2 加载并渲染森林数据

var hansen = ee.Image('UMD/hansen/global_forest_change_2023_v1_11'); var visualization = { bands: ['treecover2000'], min: 0, max: 100, palette: ['black', 'green'] // 黑色到绿色渐变 }; Map.addLayer(hansen.clip(region), visualization, '2000年森林覆盖');

此时地图已显示2000年基线森林情况。继续添加变化图层:

// 森林消失区域(红色半透明) Map.addLayer(hansen.updateMask(hansen.select('loss')).clip(region), {palette: ['red'], opacity: 0.6}, '森林消失'); // 森林增加区域(蓝色半透明) Map.addLayer(hansen.updateMask(hansen.select('gain')).clip(region), {palette: ['blue'], opacity: 0.4}, '森林增加');

2.3 调整可视化效果

通过图层管理器(右上角图层图标)可以:

  • 拖动调整图层顺序
  • 点击眼睛图标显示/隐藏图层
  • 调整透明度使多层叠加更清晰

典型判读场景

  • 红绿交错:森林被砍伐后未恢复
  • 蓝绿混合:新增造林或自然恢复
  • 纯红区域:完全退化的森林地带

3. 进阶分析:时间维度深度挖掘

3.1 逐年森林消失动态

lossyear波段记录了具体消失年份,用不同颜色区分:

var lossYear = hansen.select('lossyear'); var lossVis = { min: 1, max: 23, palette: [ '#FF0000', '#FF5500', '#FFAA00', '#FFFF00', '#AAFF00', '#55FF00', '#00FF00', '#00FF55', '#00FFAA', '#00FFFF', '#00AAFF', '#0055FF', '#0000FF', '#5500FF', '#AA00FF', '#FF00FF', '#FF00AA', '#FF0055', '#FF0000' // 彩虹色渐变 ] }; Map.addLayer(lossYear.updateMask(lossYear.gt(0)).clip(region), lossVis, '按年份着色森林消失');

提示:2001年编码为1,2023年编码为23。暖色调表示早期消失,冷色调表示近期消失。

3.2 统计变化数据

在Console控制台运行以下代码获取量化结果:

var stats = hansen.select(['treecover2000','loss','gain']).reduceRegion({ reducer: ee.Reducer.sum(), geometry: region, scale: 30, maxPixels: 1e9 }); print('2000年森林面积(像素)', stats.get('treecover2000')); print('消失森林总面积', stats.get('loss')); print('新增森林面积', stats.get('gain'));

结果解读

  • 每个像素代表30m×30m=900平方米
  • 将像素数乘以0.0009换算为平方公里
  • 注意gain数据只更新到2012年

4. 成果输出与应用技巧

4.1 导出高清图片

点击地图右上角的"Export"按钮,选择"Download"可保存PNG图片。推荐设置:

  • 分辨率:建议300-600dpi
  • 范围:勾选"Region"并绘制精确范围
  • 格式:PNG保留透明图层更佳

4.2 制作交互式网页地图

将以下完整代码保存为独立应用:

var app = function() { var panel = ui.Panel({style: {width: '300px'}}); var title = ui.Label('家乡森林变化可视化工具', {fontWeight: 'bold'}); panel.add(title); var dropdown = ui.Select({ items: ['2000年基线', '森林消失', '森林增加', '逐年变化'], onChange: function(selection) { Map.layers().reset(); if(selection === '2000年基线') { Map.addLayer(baseVis, {}, '2000年森林'); } else if(selection === '森林消失') { Map.addLayer(lossVis, {}, '消失区域'); } // 其他条件省略... } }); panel.add(dropdown); Map.add(panel); }; var baseVis = hansen.select('treecover2000').clip(region); var lossVis = hansen.select('loss').clip(region); // 其他可视化层定义... app();

4.3 常见问题排查

  • 无数据显示:检查坐标是否越界(中国经度约73-135°,纬度3-53°)
  • 颜色异常:确认波段值范围设置正确(treecover2000为0-100,loss/gain为0/1)
  • 加载缓慢:缩小区域范围或降低分辨率(调整scale参数)

5. 数据解读与延伸思考

对比我生成的多个地区案例,发现几个有趣现象:

  • 南方丘陵地带常见"红蓝交错"——轮伐造林的特征
  • 大城市周边红色集中连片——城镇化扩张的明显痕迹
  • 自然保护区边界呈现"红绿分明"——保护政策的效果验证

将结果叠加谷歌卫星影像(GEE中加载'LANDSAT/LC08/C01/T1'数据集),还能发现:

  • 红色区域对应新建道路或开发区
  • 蓝色区域可能是经济林或退耕还林项目
  • 误判情况多发生在云雾覆盖频繁的山区
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/5 18:25:29

Windows风扇控制终极方案:FanControl让你的电脑散热静如止水

Windows风扇控制终极方案:FanControl让你的电脑散热静如止水 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trend…

作者头像 李华
网站建设 2026/5/5 18:20:01

通达信公式进阶:用板块函数和窗口输出函数DIY你的专属看盘界面

通达信公式进阶:打造高效看盘界面的函数组合技巧 当K线图上密密麻麻的指标线让你眼花缭乱,当每次查看不同维度的数据都需要切换多个窗口时,一个高度集成、布局合理的自定义看盘界面就显得尤为重要。本文将带你突破基础公式编写的限制&#xf…

作者头像 李华
网站建设 2026/5/5 18:19:28

Modbus RTU 与 Modbus TCP 深入指南-帧结构与报文格式

三、帧结构与报文格式3.1 Modbus RTU 帧结构3.1.1 帧组成字段长度说明起始≥3.5字符静默帧分隔符(非显式字节)地址域1字节0广播,1-247从站地址,248-255保留功能码1字节1-127公共功能码,128-255异常响应数据域N字节随功…

作者头像 李华
网站建设 2026/5/5 18:18:27

终极指南:5步快速掌握重庆大学毕业论文LaTeX模板CQUThesis

终极指南:5步快速掌握重庆大学毕业论文LaTeX模板CQUThesis 【免费下载链接】CQUThesis :pencil: 重庆大学毕业论文LaTeX模板---LaTeX Thesis Template for Chongqing University 项目地址: https://gitcode.com/gh_mirrors/cq/CQUThesis 重庆大学毕业论文LaT…

作者头像 李华