VIIRS 夜间灯光监测工具
这是一个基于 Google Earth Engine (GEE) 的交互式应用程序,用于监测、分析和下载 NOAA VIIRS 月度夜间灯光数据。该工具集成了动态可视化、时序分析、GIF 动图生成以及批量数据导出到 Google Drive 的功能。
✨ 主要功能


- 自定义时间范围: 支持用户输入任意年份范围(2014年至今),一键更新面板数据。
注意不一定是最新的今天,因为 GEE 数据更新会有一定延迟

- 交互式图层浏览 :
* 年份滑块 : 加载指定年份的所有月度数据。
* 月份滑块 : 快速切换当前年份下的月份图层,查看细节。

注意图层处也可以选择显示某年某月的数据

- 时序趋势分析: 集成交互式图表,点击图表上的数据点,地图会自动跳转到对应的年份和月份。
- GIF 动图生成 :
- 自动生成所选时间段内的灯光变化动图。
- 直接下载链接 : 提供生成的
.gif文件下载链接,无需通过 Drive 即可保存预览。

- 数据批量导出 (增强功能) :
- 按月批量导出: 一键将选中年份的所有月度影像导出到 Google Drive (Tasks)。
- 均值导出 : 导出整个时间段内的平均灯光强度图。


🛠️ 数据集信息
- 数据源 :
NOAA/VIIRS/DNB/MONTHLY_V1/VCMSLCFG - 波段 :
avg_rad(平均辐射亮度) - 分辨率: 约 500米
- 可视化阈值: 0 (黑) - 60 (白)
🚀 快速开始
1. 必要的配置 (重要)
代码中使用了自定义的感兴趣区域 (ROI)。在运行代码前,请务必修改 第 8 行 的 roi 变量为你自己的资产路径或几何图形。
javascript
// 修改前
var roi = ee.FeatureCollection("projects/maxhecheng/assets/chengdu");
// 修改示例 (使用几何图形)
// var roi = ee.Geometry.Polygon([...]);
// 或者使用你自己的 table assets
// var roi = ee.FeatureCollection("users/your_username/your_shapefile");
2. 使用指南
🕒 设置时间
在左侧面板顶部输入开始年份 和结束年份 ,点击 🔄 更新并刷新 按钮。系统将重新计算图表并加载数据。
🗺️ 浏览地图
- 拖动 年份滑块 加载特定年份的数据。
- 拖动 月份滑块 在地图上切换 1-12 月的显示。
📊 趋势分析
点击左侧面板下方的折线图。点击图表上的任意一点,地图会自动跳转到该时间点,方便对比异常值。
💾 数据下载
- 导出当前年份 : 点击
📥 导出当前选中年份的所有月度数据。- 操作 : 此时右侧 Tasks 面板会出现 12 个任务,点击
Run即可保存到 Google Drive 的VIIRS_Export_YYYY文件夹中。
- 操作 : 此时右侧 Tasks 面板会出现 12 个任务,点击
- 导出均值 : 点击
📥 导出整个时段的平均值图保存多主要时段的平均影像。
🎞️ 动图下载
地图右下角会自动生成预览动图。点击下方的蓝色链接 ⬇️ 点击下载 .gif 动图 即可直接将动图保存到本地。
📂 输出文件说明
| 导出类型 | 文件命名格式 | 存储位置 (Drive) |
|---|---|---|
| 月度数据 | VIIRS_YYYY_MM.tif |
文件夹: VIIRS_Export_YYYY |
| 均值数据 | VIIRS_Mean_StartYear_EndYear.tif |
文件夹: VIIRS_Export_Mean |
⚠️ 注意事项
- Tasks 面板 : 点击导出按钮后,必须去 GEE 编辑器右侧的
Tasks选项卡点击Run才能真正开始下载。 - GIF 生成速度: 如果研究区域 (ROI) 非常大,生成 GIF 下载链接可能需要几秒钟到几分钟的时间。
- 数据缺失: 如果某一年份 NOAA 没有数据(或尚未发布),控制台会打印 "⚠️ 无数据" 的提示。
源码分享

https://github.com/mojoin/GEE-