Install
openclaw skills install @ruiduobao/geoskill-post-fire-recovery用 dNBR(NIR/SWIR 差分归一化烧伤比)判定五级烧伤严重度,结合火后多期 NDVI 恢复曲线估算恢复轨迹、恢复斜率与恢复年限,输出严重度 GeoTIFF、恢复轨迹 JSON 与恢复年限栅格。Post-fire recovery from dNBR severity and NDVI time series.
openclaw skills install @ruiduobao/geoskill-post-fire-recoveryMonitors post-fire vegetation dynamics in two steps: first, dNBR is used to determine burn severity; second, the post-fire multi-temporal NDVI time series is used to track the recovery trajectory. It suits burned-area loss assessment, vegetation recovery monitoring and post-disaster ecological restoration planning.
Core algorithm:
The --synthetic mode generates physically consistent scenes with varying burn severity and recovery rates (offline).
pip install numpy rasterio scipy
python geoskill-post-fire-recovery.py --bbox 118.0 34.0 119.0 35.0 --synthetic --n-dates 6 --output-dir ./output
python geoskill-post-fire-recovery.py \
--bbox 118.0 34.0 119.0 35.0 \
--synthetic --n-dates 6 --recovery-target 0.90 \
--output-dir ./target90
python geoskill-post-fire-recovery.py \
--input fire_scene.tif \
--n-dates 6 \
--output-dir ./real
Input band order: nir_pre / swir_pre / nir_post / swir_post / ndvi_prefire, followed by n-dates bands of post-fire NDVI per epoch.
| File | Format | Description |
|---|---|---|
burn_severity.tif | GeoTIFF (float32) | Severity 0=unburned … 4=high, EPSG:4326 |
dnbr.tif | GeoTIFF (float32) | Differenced burn ratio dNBR |
recovery_year.tif | GeoTIFF (float32) | Recovery year (epoch index), −1 = not recovered |
recovery_slope.tif | GeoTIFF (float32) | Post-fire NDVI linear slope |
recovery_trajectory.json | JSON | Per-epoch NDVI curve, severity areas, recovery proportion |
output-manifest.json | JSON | Run manifest (inputs/outputs/QA/software versions) |
MIT
分两步监测火灾后的植被动态:先用 dNBR 判定烧伤严重度,再用火后多期 NDVI 时间序列追踪恢复轨迹。适用于过火区损失评估、植被恢复监测与灾后生态恢复规划。
核心算法:
支持 --synthetic 模式生成含不同烧伤严重度与恢复速率的物理一致场景(离线)。
pip install numpy rasterio scipy
python geoskill-post-fire-recovery.py --bbox 118.0 34.0 119.0 35.0 --synthetic --n-dates 6 --output-dir ./output
python geoskill-post-fire-recovery.py \
--bbox 118.0 34.0 119.0 35.0 \
--synthetic --n-dates 6 --recovery-target 0.90 \
--output-dir ./target90
python geoskill-post-fire-recovery.py \
--input fire_scene.tif \
--n-dates 6 \
--output-dir ./real
输入波段顺序:nir_pre / swir_pre / nir_post / swir_post / ndvi_prefire,其后
n-dates 个波段为火后各期 NDVI。
| 文件 | 格式 | 说明 |
|---|---|---|
burn_severity.tif | GeoTIFF (float32) | 严重度 0=unburned … 4=high,EPSG:4326 |
dnbr.tif | GeoTIFF (float32) | 差分烧伤比 dNBR |
recovery_year.tif | GeoTIFF (float32) | 恢复年限(期号),−1=未恢复 |
recovery_slope.tif | GeoTIFF (float32) | 火后 NDVI 线性斜率 |
recovery_trajectory.json | JSON | 逐期 NDVI 曲线、严重度面积、恢复比例 |
output-manifest.json | JSON | 运行清单(输入/输出/QA/软件版本) |
MIT