Detect and quantify urban expansion from multi-temporal built-up rasters. Use when the user wants to analyze changes, compare multi-temporal rasters, compute indices, or generate assessment reports.
设计与多媒体
Geoskill: Impervious Surface Mapping
试用Estimate impervious surface fraction from multi-band satellite imagery (Sentinel-2) using spectral indices (NDBI, NDVI, MNDWI). Supports binary classification and continuous fraction estimation, with zone-level aggregation and change detection. Use when mapping urban impervious surfaces, computing impervious ratios by watershed/admin unit, or analyzing temporal changes in built-up areas.
它能做什么
Estimate impervious surface fraction from multi-band satellite imagery (Sentinel-2) using spectral indices (NDBI, NDVI, MNDWI). Supports binary classification and continuous fraction estimation, with zone-level aggregation and change detection. Use when mapping urban impervious surfaces, computing impervious ratios by watershed/admin unit, or analyzing temporal changes in built-up areas.
技能文档
Impervious Surface Mapping
GIS/remote sensing workflow for estimating impervious surface fraction from multi-band satellite imagery. Uses spectral indices and sub-pixel estimation to produce continuous impervious fraction maps, with optional binary thresholding, zone aggregation, and change detection.
Trigger
Use when the user wants to:
- Estimate impervious surface fraction from satellite imagery
- Map built-up areas using NDBI and related spectral indices
- Compute impervious ratios by street, community, or watershed
- Compare impervious surface changes between years
- Mask out water and vegetation before impervious analysis
CLI Usage
# Basic fraction estimation
python scripts/impervious_surface_mapping.py \
--raster sentinel2.tif \
--year 2024 \
--mode fraction
# Binary classification with threshold
python scripts/impervious_surface_mapping.py \
--raster sentinel2.tif \
--year 2024 \
--mode binary \
--threshold 0.5
# Zone aggregation
python scripts/impervious_surface_mapping.py \
--raster sentinel2.tif \
--year 2024 \
--mode fraction \
--aggregation-layer watersheds.geojson
# Change detection
python scripts/impervious_surface_mapping.py \
--raster sentinel2_2024.tif \
--year 2024 \
--compare-year 2020 \
--raster-compare sentinel2_2020.tif \
--mode fraction
Data Download
This skill can auto-fetch a Sentinel-2 L2A scene from the Microsoft
Planetary Computer when given a bounding box + date range. The script picks
the B04 (red) asset by default; you can change prefer_assets in the
code to use visual for an RGB composite.
python scripts/impervious_surface_mapping.py \
--bbox 116,39,117,40 \
--date-range 2024-06-01,2024-06-30 \
--output-dir ./impervious-output
The PYTHONPATH must include the parent of _geoskill_data_fetcher/
(the same directory the 50 skills live in). Set it once:
export PYTHONPATH="/path/to/行业Skill创意-20260727"
Parameters
| Parameter | Default | Description |
|---|---|---|
--raster | required | Multi-band raster (Sentinel-2: B2,B3,B4,B8,B11) |
--year | required | Analysis year |
--mode | fraction | binary or fraction |
--training-data | None | Training samples GeoJSON (with impervious field) |
--threshold | 0.5 | Threshold for binary mode |
--aggregation-layer | None | Zone layer GeoJSON for aggregation |
--compare-year | None | Comparison year for change detection |
--raster-compare | None | Raster for comparison year |
--ndvi-mask | 0.6 | NDVI threshold to mask dense vegetation |
--mndwi-mask | 0.0 | MNDWI threshold to mask water |
--output-dir | ./impervious-output | Output directory |
Output
| File | Description |
|---|---|
impervious_fraction.tif | Continuous impervious fraction [0, 1] |
impervious_binary.tif | Binary impervious mask (1=impervious) |
zones_summary.csv | Zone-level statistics (if aggregation-layer given) |
change.tif | Change raster (fraction difference) |
accuracy.json | Accuracy metrics (if training-data given) |
Exit Codes
| Code | Meaning |
|---|---|
| 0 | Success |
| 2 | Argument error |
| 3 | Dependency missing |
| 6 | Data validation failure |
| 7 | Processing failure |
相关技能
Analyze urban heat island intensity and ventilation index from land surface temperature, NDVI, impervious surface and building morphology.
Compute forest fire burn severity from pre/post-fire NIR and SWIR imagery using differenced Normalized Burn Ratio (dNBR). Classifies severity into unburned, low, moderate, and high categories. Use when the user wants to assess burn severity, map fire damage, or generate burn severity reports.
Analyze land subsidence from InSAR displacement data. Use when the user wants to analyze changes, detect hazards, or generate assessment reports.
Overlay flood extent with population, buildings, roads, and cropland to estimate affected objects and generate impact reports. Use when the user wants to assess flood impact, count affected population/roads/buildings, or generate flood impact summaries from a flood extent raster.
Multi-criteria suitability analysis for infrastructure site selection. Use when the user wants to analyze changes, compare multi-temporal rasters, compute indices, or generate assessment reports.