Files
geointel/docs/CHANGE_DETECTION_SPEC.md
Jens faeb58ef6d
GeoIntel release gates / Compile, test, contracts and builds (push) Successful in 1m49s
GeoIntel release gates / Python and npm vulnerability policy (push) Successful in 21s
GeoIntel release gates / Production AI image, SBOM and container scan (push) Successful in 5m39s
GeoIntel release gates / Deploy exact gated revision to Unraid (push) Failing after 58m43s
Initial public release
2026-08-31 21:56:53 +02:00

2.1 KiB

GeoIntel Kempen — Change Detection Specification v1.0

Change Detection is a major showcase workflow combining raster, vector, AI and QA/QC.

Goal

Compare two datasets or analysis runs for the same area and detect additions, removals and significant changes.

Supported methods

Method A — Vector change detection V1

Compare two vector layers or two analysis outputs.

Examples:

  • GRB buildings snapshot A vs snapshot B.
  • AI detections from raster A vs AI detections from raster B.
  • OSM buildings from run A vs OSM buildings from run B.

Inputs

  • layer A
  • layer B
  • area polygon
  • class filter optional
  • matching threshold

Algorithm

  1. Normalize CRS.
  2. Clip both layers to area.
  3. Match features using IoU or spatial overlap.
  4. Classify:
    • added: feature in B without match in A
    • removed: feature in A without match in B
    • unchanged: matched with stable geometry
    • modified: matched but area or geometry changed above threshold

Metrics

  • added count
  • removed count
  • modified count
  • added area m²
  • removed area m²
  • net area change m²
  • percentage change

Method B — Raster index change V2

Compare NDVI/NDWI/NDBI rasters.

Inputs

  • index raster A
  • index raster B
  • threshold

Algorithm

delta = index_B - index_A
classify pixels by threshold
polygonize changed zones

Outputs

  • change raster
  • changed polygons
  • summary statistics

Method C — AI segmentation change V3

Run segmentation on both images and compare class polygons.

Examples:

  • vegetation loss
  • new buildings
  • water change

Output layers

  • change_added
  • change_removed
  • change_modified
  • change_heatmap
  • change_uncertain

API

POST /analysis/change-detection
GET /analysis/{id}/changes
POST /analysis/{id}/exports/change-geojson

UI requirements

Change Lab must support:

  • dataset/layer A selector
  • dataset/layer B selector
  • method selector
  • area selector
  • threshold controls
  • timeline labels
  • map overlays for added/removed/modified
  • metrics cards
  • export

V1 target

Implement vector change detection. Raster and AI-based change detection are later phases.