融合 SPI(标准化降水指数,Gamma 分布拟合+正态反演)与 VHI(植被健康指数)的综合干旱分级。Combined drought grading fusing SPI (Gamma-fit standardized precipitation index) and VHI (vegetation health index). 输出干旱等级/SPI 栅格 + 面积统计 JSON。
集成
geoskill-desertification-monitoring
试用融合 NDVI 趋势(Sen 斜率/线性回归)、反照率与植被稀缺度,综合评分分级荒漠化(稳定/轻/中/重度),输出等级与趋势栅格、面积统计。Fuses NDVI trend (Sen/linear slope), albedo and vegetation scarcity to grade desertification.
它能做什么
融合 NDVI 趋势(Sen 斜率/线性回归)、反照率与植被稀缺度,综合评分分级荒漠化(稳定/轻/中/重度),输出等级与趋势栅格、面积统计。Fuses NDVI trend (Sen/linear slope), albedo and vegetation scarcity to grade desertification.
技能文档
荒漠化监测 | Desertification Monitoring
Fuses multi-epoch NDVI trend, albedo, and vegetation scarcity to score and grade desertification severity (stable / mild / moderate / severe). Suitable for long time-series monitoring of land degradation in arid and semi-arid regions, identifying degradation hotspots, and evaluating restoration effectiveness.
Core algorithm:
- NDVI trend: estimates the slope of the NDVI time series for each pixel, supporting Sen's slope (robust median slope, resistant to outliers) and least-squares linear regression. A negative slope indicates vegetation degradation.
- Albedo: mean of the visible-light bands. Bare soil / desert has high albedo, while vegetated areas are low.
- Vegetation scarcity: reflected by mean NDVI; low NDVI indicates sparse vegetation or bare ground.
- Fusion score: score = 0.4×scarcity + 0.35×bare + 0.25×decline, thresholded into four levels.
--synthetic mode generates a physically consistent simulated sequence with degradation trends, allowing the full workflow to be validated without network access or real data.
Dependencies / 依赖
pip install numpy rasterio scipy
Usage / 使用方法
Basic Usage (synthetic data, offline)
python geoskill-desertification-monitoring.py --bbox 100.0 40.0 101.0 41.0 --synthetic --n-dates 6 --output-dir ./output
Example 1: Sen's slope trend estimation
python geoskill-desertification-monitoring.py \
--bbox 100.0 40.0 101.0 41.0 \
--synthetic --n-dates 6 --method sens \
--output-dir ./sens
Example 2: least-squares linear trend
python geoskill-desertification-monitoring.py \
--bbox 100.0 40.0 101.0 41.0 \
--synthetic --n-dates 6 --method linear \
--output-dir ./linear
Example 3: real multi-epoch NDVI raster
python geoskill-desertification-monitoring.py \
--input ndvi_series.tif \
--n-dates 6 --method sens \
--output-dir ./real
Input band convention: the first n-dates bands are the NDVI of each epoch; if one extra band is present (n-dates+1 in total), the last band is treated as albedo; otherwise (1 − mean_ndvi) is used as an albedo proxy.
Output / 输出
| File | Format | Description |
|---|---|---|
desertification_grade.tif | GeoTIFF (float32) | Grade 0=stable 1=mild 2=moderate 3=severe, EPSG:4326 |
ndvi_trend.tif | GeoTIFF (float32) | NDVI trend slope (per epoch), negative=degradation |
desertification_score.tif | GeoTIFF (float32) | Fusion score [0,1] |
desertification_area.json | JSON | Pixel/area/share per grade + component means |
output-manifest.json | JSON | Run manifest (input/output/QA/software versions) |
Data Source / 数据源 / Source
- Synthetic mode: generated locally, no external data source
- Real mode: user provides multi-epoch NDVI GeoTIFF (e.g., MODIS MOD13 / Landsat NDVI time series)
Privacy / 隐私声明 / Privacy
- Runs fully offline by default and makes no network requests
- All computation is done locally; no user data is uploaded
License / License
MIT
name: geoskill-desertification-monitoring description: '融合 NDVI 趋势(Sen 斜率/线性回归)、反照率与植被稀缺度,综合评分分级荒漠化(稳定/轻/中/重度),输出等级与趋势栅格、面积统计。Fuses NDVI trend (Sen/linear slope), albedo and vegetation scarcity to grade desertification.'
荒漠化监测 | Desertification Monitoring
融合多期 NDVI 趋势、反照率(albedo)与植被稀缺度,对荒漠化程度综合评分并 分级(稳定 / 轻度 / 中度 / 重度)。适用于干旱-半干旱区土地退化的长时序监测、 退化热点识别与治理成效评估。
核心算法:
- NDVI 趋势:对每个像元的 NDVI 时间序列估计斜率,支持 Sen's slope(稳健 中位数斜率,抗异常值)与最小二乘线性回归。负斜率指示植被退化。
- 反照率:可见光波段均值。裸土/沙漠反照率高,植被覆盖区低。
- 植被稀缺度:由平均 NDVI 反映,低 NDVI 指示稀疏植被或裸地。
- 融合评分:score = 0.4×scarcity + 0.35×bare + 0.25×decline,阈值化为四级。
支持 --synthetic 模式生成含退化趋势的物理一致模拟序列,无需网络和真实数据
即可验证全流程。
依赖
pip install numpy rasterio scipy
使用方法
基本用法(合成数据,离线)
python geoskill-desertification-monitoring.py --bbox 100.0 40.0 101.0 41.0 --synthetic --n-dates 6 --output-dir ./output
示例 1:Sen's slope 趋势估计
python geoskill-desertification-monitoring.py \
--bbox 100.0 40.0 101.0 41.0 \
--synthetic --n-dates 6 --method sens \
--output-dir ./sens
示例 2:最小二乘线性趋势
python geoskill-desertification-monitoring.py \
--bbox 100.0 40.0 101.0 41.0 \
--synthetic --n-dates 6 --method linear \
--output-dir ./linear
示例 3:真实多期 NDVI 栅格
python geoskill-desertification-monitoring.py \
--input ndvi_series.tif \
--n-dates 6 --method sens \
--output-dir ./real
输入波段约定:前 n-dates 个波段为各期 NDVI;若再多一个波段(共 n-dates+1),
末波段被视为反照率,否则用 (1 − mean_ndvi) 作为反照率代理。
输出
| 文件 | 格式 | 说明 |
|---|---|---|
desertification_grade.tif | GeoTIFF (float32) | 等级 0=稳定 1=轻度 2=中度 3=重度,EPSG:4326 |
ndvi_trend.tif | GeoTIFF (float32) | NDVI 趋势斜率(每期),负值=退化 |
desertification_score.tif | GeoTIFF (float32) | 融合得分 [0,1] |
desertification_area.json | JSON | 各等级像元/面积/占比 + 分项均值 |
output-manifest.json | JSON | 运行清单(输入/输出/QA/软件版本) |
数据源 / Source
- 合成模式:本地生成,无外部数据源
- 真实模式:用户提供多期 NDVI GeoTIFF(如 MODIS MOD13 / Landsat NDVI 时序)
隐私声明 / Privacy
- 默认完全离线运行,不发起任何网络请求
- 所有计算在本地完成,不上传用户数据
License
MIT
相关技能
融合 NDVI/NDRE/LST 多指数健康评分、历史偏差异常检测与空间聚类,输出作物健康等级栅格。Fuses NDVI/NDRE/LST into a health score with historical anomaly detection and spatial clustering.
基于 NDVI 覆盖度、物候生长季与峰值及退化指数评估草地质量。Assesses pasture quality from NDVI cover, phenology (season and peak) and a degradation index.
用热惯量法与 SAR Dubois 模型估算表层土壤湿度并划分干旱等级。Estimates surface soil moisture via thermal inertia and the SAR Dubois model, with drought grading.
融合裸土指数 BSI、亮度与局部纹理(裸土低对比度)阈值提取裸土/裸地分布,支持 Otsu 自动阈值,输出裸土 GeoTIFF、BSI 栅格与面积统计。Maps bare soil by fusing BSI, brightness and local texture.
基于 NDVI 时序积分估算累积生物量,叠加气候校正得到生产力指数。Estimates cumulative biomass from NDVI time-series integration with climate correction to yield a productivity index.