Integrations

geoskill-desertification-monitoring

Try it

融合 NDVI 趋势(Sen 斜率/线性回归)、反照率与植被稀缺度,综合评分分级荒漠化(稳定/轻/中/重度),输出等级与趋势栅格、面积统计。Fuses NDVI trend (Sen/linear slope), albedo and vegetation scarcity to grade desertification.

What it does

融合 NDVI 趋势(Sen 斜率/线性回归)、反照率与植被稀缺度,综合评分分级荒漠化(稳定/轻/中/重度),输出等级与趋势栅格、面积统计。Fuses NDVI trend (Sen/linear slope), albedo and vegetation scarcity to grade desertification.

The skill document

荒漠化监测 | 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 / 输出

FileFormatDescription
desertification_grade.tifGeoTIFF (float32)Grade 0=stable 1=mild 2=moderate 3=severe, EPSG:4326
ndvi_trend.tifGeoTIFF (float32)NDVI trend slope (per epoch), negative=degradation
desertification_score.tifGeoTIFF (float32)Fusion score [0,1]
desertification_area.jsonJSONPixel/area/share per grade + component means
output-manifest.jsonJSONRun 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.tifGeoTIFF (float32)等级 0=稳定 1=轻度 2=中度 3=重度,EPSG:4326
ndvi_trend.tifGeoTIFF (float32)NDVI 趋势斜率(每期),负值=退化
desertification_score.tifGeoTIFF (float32)融合得分 [0,1]
desertification_area.jsonJSON各等级像元/面积/占比 + 分项均值
output-manifest.jsonJSON运行清单(输入/输出/QA/软件版本)

数据源 / Source

  • 合成模式:本地生成,无外部数据源
  • 真实模式:用户提供多期 NDVI GeoTIFF(如 MODIS MOD13 / Landsat NDVI 时序)

隐私声明 / Privacy

  • 默认完全离线运行,不发起任何网络请求
  • 所有计算在本地完成,不上传用户数据

License

MIT

Related skills

融合 SPI(标准化降水指数,Gamma 分布拟合+正态反演)与 VHI(植被健康指数)的综合干旱分级。Combined drought grading fusing SPI (Gamma-fit standardized precipitation index) and VHI (vegetation health index). 输出干旱等级/SPI 栅格 + 面积统计 JSON。

融合 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.

1 installs

用热惯量法与 SAR Dubois 模型估算表层土壤湿度并划分干旱等级。Estimates surface soil moisture via thermal inertia and the SAR Dubois model, with drought grading.

1 installs

融合裸土指数 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.