Geoskill: Construction Progress Monitor

Monitor construction progress from multi-temporal satellite imagery. Classifies project stages (clearing, earthwork, foundation, structure, finishing, completed) using spectral ind…

ruiduobao

@ruiduobao

Install

$ openclaw skills install @ruiduobao/geoskill-construction-progress-monitor

Construction Progress Monitor

Monitors construction site evolution from multi-temporal imagery using spectral indices and a state machine to classify project stages.

Trigger

Use when the user wants to:

  • Track construction progress from satellite imagery
  • Classify project stages (clearing → earthwork → foundation → structure → finishing → completed)
  • Detect stagnant projects (no change for N periods)
  • Generate progress reports for infrastructure projects
  • Audit construction timelines against planned schedules

CLI Usage

# Basic monitoring with project boundaries and schedule
python scripts/construction_progress_monitor.py \
  --projects projects.geojson \
  --schedule schedule.csv \
  --monitor-period 2024-01,2024-04,2024-07,2024-10

# With custom stage schema and stagnation threshold
python scripts/construction_progress_monitor.py \
  --projects projects.geojson \
  --schedule schedule.csv \
  --monitor-period 2024-01,2024-04,2024-07,2024-10 \
  --stage-schema stages.json \
  --stagnation-periods 2 \
  --imagery-source sentinel2

# Specify output directory
python scripts/construction_progress_monitor.py \
  --projects projects.geojson \
  --schedule schedule.csv \
  --monitor-period 2024-01,2024-04 \
  --output-dir ./cpm-output

Parameters

ParameterDefaultDescription
--projectsrequiredProject boundaries with IDs (GeoJSON)
--schedulerequiredPlanned schedule CSV (project_id, node, date)
--monitor-periodrequiredComma-separated monitoring dates (YYYY-MM)
--stage-schemabuilt-inCustom stage definition JSON
--imagery-sourcesentinel2Imagery source identifier
--stagnation-periods2Periods of no change to flag stagnation
--output-dir./cpm-outputOutput directory

Output

FileDescription
project_status.geojsonPer-project current stage and metrics
progress_timeseries.csvStage timeline per project
stage_map.tifRaster stage classification map
exceptions.xlsxStagnation and anomaly report

Construction Stages

StageCodeKey Indicators
clearing0High bare soil, low NDVI, low NDBI
earthwork1Dominant bare soil, minimal vegetation
foundation2Mixed bare soil and built material
structure3High NDBI, low NDVI, built materials
finishing4Moderate NDBI, increasing NDVI
completed5Low NDBI, high NDVI, stable

Exit Codes

CodeMeaning
0Success
2Argument error
3Dependency missing
6Data validation failure
7Processing failure

数据下载

本 skill 可自动从 Microsoft Planetary Computer 下载数据 (无需 API key):

python construction_progress_monitor.py --bbox 116,39,117,40 --date-range 2024-06-01,2024-06-30 --output-dir <tmp>
  • --bbox W,S,E,N: WGS-84 边界框 (西, 南, 东, 北)
  • --date-range START,END: 日期范围 (YYYY-MM-DD,YYYY-MM-DD)
  • --aoi-file <path.geojson>: 替代 --bbox 的 GeoJSON 多边形
  • --cache-dir <path>: 缓存目录 (默认 ~/.geoskill_cache)

当用户只给 --bbox + --date-range (没有 --image) 时,skill 自动下载数据。 当用户给 --image 时,走原文件路径 (向后兼容)。

Top skills in this category