Files
geointel/docs/CHANGE_DETECTION_SPEC.md
T
Codex 6ea3586a3e
GeoIntel CI / docs-smoke (push) Has been cancelled
GeoIntel CI / contract-smoke (push) Has been cancelled
Initial GeoIntel V1 foundation
2026-06-16 23:36:32 +02:00

117 lines
2.1 KiB
Markdown

# 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
```text
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
```http
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.