Coding

geoskill-sar-forest-biomass

Try it

SAR 森林生物量估算:由后向散射 σ⁰ 用线性/饱和经验模型反演森林地上生物量 AGB (t/ha),支持 C/L 波段与地面样本标定

What it does

SAR 森林生物量估算:由后向散射 σ⁰ 用线性/饱和经验模型反演森林地上生物量 AGB (t/ha),支持 C/L 波段与地面样本标定

The skill document

SAR森林生物量估算 | SAR Forest Biomass Estimation

Estimates forest above-ground biomass (AGB, t/ha) from the SAR backscatter coefficient σ⁰. Two empirical relationships are implemented:

  • Linear model: σ⁰_dB = m·AGB + c, suitable for low-biomass, unsaturated ranges.
  • Saturation model: AGB = AGB_sat·(1 − e^(−k·σ⁰_lin)), capturing the physical behavior of SAR backscatter saturating as biomass increases (sensitivity decreases in high-AGB areas).

--calibration accepts a ground-sample CSV (columns sigma0,agb) for coefficient fitting: least squares for the linear model and nonlinear least squares (scipy curve_fit) for the saturation model. Without calibration, built-in default coefficients per band (C / L) are used; the L band has stronger penetration and a higher saturation biomass.

Application Scenarios / 应用场景

  • Forest carbon stock estimation and carbon sink monitoring
  • Forest resource surveys and biomass mapping
  • REDD+ and climate change research

Dependencies / 依赖

pip install 'numpy' 'rasterio' 'scipy' 'scikit-learn'

Usage / 使用方法

Example 1 (synthetic data, offline, L-band saturation model)

python geoskill-sar-forest-biomass.py --bbox 110.0 22.0 111.0 23.0 --band l --synthetic --output-dir ./out

Example 2 (C-band linear model)

python geoskill-sar-forest-biomass.py --bbox 110.0 22.0 111.0 23.0 --band c --model linear --synthetic --output-dir ./out

Example 3 (real σ⁰ imagery + ground-sample calibration)

python geoskill-sar-forest-biomass.py --input sigma0_db.tif --band c --model linear --calibration samples.csv --output-dir ./out

Example 4 (saturation model calibration)

python geoskill-sar-forest-biomass.py --input sigma0_db.tif --band l --model saturation --calibration samples.csv --output-dir ./out

Output / 输出

FileFormatDescription
forest_biomass.tifGeoTIFFRetrieved AGB (t/ha)
biomass_report.jsonJSONModel coefficients, statistics, synthetic validation (RMSE/correlation)
output-manifest.jsonJSONRun manifest

Data Source / 数据源 / Source

Local σ⁰ (dB) GeoTIFF plus optional calibration CSV, or a simulated scene generated by forward modeling of an AGB field via --synthetic.

Privacy / 隐私声明 / Privacy

  • Runs offline by default; --synthetic mode is fully network-free.
  • All processing is done locally; no user data is uploaded.

License / License

MIT



name: geoskill-sar-forest-biomass description: 'SAR 森林生物量估算:由后向散射 σ⁰ 用线性/饱和经验模型反演森林地上生物量 AGB (t/ha),支持 C/L 波段与地面样本标定'

SAR森林生物量估算 | SAR Forest Biomass Estimation

从 SAR 后向散射系数 σ⁰ 估算森林地上生物量 AGB(above-ground biomass, t/ha)。 实现两类经验关系:

  • 线性模型:σ⁰_dB = m·AGB + c,适用于低生物量、未饱和区间。
  • 饱和模型:AGB = AGB_sat·(1 − e^(−k·σ⁰_lin)),刻画 SAR 后向散射随生物量 增加趋于饱和的物理特征(高 AGB 区敏感度下降)。

支持 --calibration 提供地面样本 CSV(列 sigma0,agb)做系数拟合:线性用最小 二乘,饱和用非线性最小二乘(scipy curve_fit)。无标定时使用按波段(C / L)内置的 默认系数,L 波段穿透性强、饱和生物量更高。

应用场景

  • 森林碳储量估算、碳汇监测
  • 森林资源调查与生物量制图
  • REDD+ 与气候变化研究

依赖

pip install 'numpy' 'rasterio' 'scipy' 'scikit-learn'

使用方法

示例 1(合成数据,离线,L 波段饱和模型)

python geoskill-sar-forest-biomass.py --bbox 110.0 22.0 111.0 23.0 --band l --synthetic --output-dir ./out

示例 2(C 波段线性模型)

python geoskill-sar-forest-biomass.py --bbox 110.0 22.0 111.0 23.0 --band c --model linear --synthetic --output-dir ./out

示例 3(真实 σ⁰ 影像 + 地面样本标定)

python geoskill-sar-forest-biomass.py --input sigma0_db.tif --band c --model linear --calibration samples.csv --output-dir ./out

示例 4(饱和模型标定)

python geoskill-sar-forest-biomass.py --input sigma0_db.tif --band l --model saturation --calibration samples.csv --output-dir ./out

输出

文件格式说明
forest_biomass.tifGeoTIFF反演 AGB (t/ha)
biomass_report.jsonJSON模型系数、统计、合成验证 (RMSE/相关)
output-manifest.jsonJSON运行清单

数据源 / Source

本地 σ⁰ (dB) GeoTIFF + 可选标定 CSV,或 --synthetic AGB 场正演的模拟场景。

隐私声明 / Privacy

  • 默认离线运行,--synthetic 模式完全无网络。
  • 所有处理在本地完成,不上传用户数据。

License

MIT

Related skills

SAR 土壤湿度反演:基于简化 Dubois/Oh 半经验模型,由后向散射系数 σ⁰、入射角与地表粗糙度解析反演裸土体积含水量 (m³/m³)

1 installs

多时相 SAR 后向散射时序统计:逐像元均值/标准差/振幅/变异系数与极化比。Multi-temporal SAR backscatter time-series statistics (mean/std/amplitude/CV) and polarization ratio. 输入多时相 σ⁰ 立方体(或用 --synthetic 生成含植被物候正弦信号的时序),输出多波段统计 GeoTIFF + 时序曲线 JSON。

1 installs

基于多时相 SAR 后向散射时序的农作物分类:逐像元时序/统计/物候特征 + 随机森林。SAR crop classification from multi-temporal backscatter time series using per-pixel phenological features and Random Forest. 合成模式生成水稻/小麦/玉米三类时序真值并评估精度,输出分类 GeoTIFF + 面积统计 + 混淆矩阵 JSON。

1 installs

由 NDVI 幂律异速生长方程估算地上生物量碳,叠加根茎比地下碳与类型化土壤碳密度。Estimates carbon stocks from biomass allometry and soil carbon density. 输出地上碳/土壤碳/总碳三张 GeoTIFF 与汇总 JSON。

Estimate forest carbon stock from remote sensing data using BEF, allometric equations, or IPCC Tier 1/2 methods. Includes Monte Carlo uncertainty analysis. Supports raster (GeoTIFF) and tabular (CSV) inputs.