Skip to content
AI360Xpert
Beta

Change Detection

Change detection compares two photos of the same place taken at different times and keeps only what really changed, ignoring light and season shifts.

Two coregistered views differ by 42 gray levels on changed pixels against 6 on stable ones, so a threshold of 20 separates flood from noise
Two coregistered views differ by 42 gray levels on changed pixels against 6 on stable ones, so a threshold of 20 separates flood from noise

Why Does This Exist?

A single satellite picture tells you what is there. Cities, farms, and relief teams need what appeared, vanished, or flooded since last month. Eyeballing two dates fails at scale: a city tile holds millions of pixels, and sun angle plus crop growth repaint every field even when nothing important moved.

Change detection exists to turn a pair of repeat views into an honest change mask. Input is two coregistered images of the same ground plus their acquisition dates. Output is a per pixel label for changed versus stable, often with a change magnitude. The umbrella is remote sensing; the per date land labels come from satellite analysis and land cover. Motion cousins that track pixels between frames live in optical flow.

Use it when you have repeat passes of one place and a question about difference. Use single image classification when you have one date only.

Think of It Like This

Two dated tracings on a light table

You trace a street map onto thin paper in spring, then lay the tracing over a fresh autumn print on a light table. You pin two church corners so the sheets cannot slide, then circle only ink that misses its old line. Faded pencil from sun is not a new road.

Coregistration is pinning the corners. The difference threshold is your rule for how far ink must miss before you circle it. The analogy stops at automation: the model must also forgive shadows and crop cycles that you would forgive at a glance.

How It Actually Works

Start with coregistration: warp the second image onto the first so one pixel means one ground cell in both. Normalize for sun and atmosphere, often by matching stable surfaces. Then difference: per pixel change magnitude D=∣I2−I1∣D = |I_2 - I_1| in gray levels or in a band index. Threshold TT splits the histogram into stable versus changed. Post steps clean speckle with a majority filter and drop tiny regions below a minimum mapping unit.

Worked example

Two 100×100100 \times 100 gray patches share 9800 stable pixels and 200 flooded pixels. Stable pixels differ by about 66 levels from sensor noise. Flooded pixels jump by about 4242 levels from water darkening. Pick T=20T = 20. Stable pixels pass at 6<206 < 20. Flooded pixels fire at 42>2042 > 20. The mask reports 200200 changed pixels. At 1010 m ground sampling each pixel covers 100100 square meters, so the flood covers 200×100=20000200 \times 100 = 20000 square meters. Raise TT to 5050 and the flood vanishes from the map, which shows why the threshold is a policy choice, not a constant.

Watch Out For

Misregistration that paints edges as change

A shift of even one pixel makes every road edge and roof edge differ strongly. The symptom is thin change outlines tracing all straight features, with interiors stable. Fix it by checking coregistration on stable corners before differencing and by dilating the no change mask around strong gradients.

Seasonal change drowning the signal you want

Crops green up by 3030 levels between spring and summer, larger than a new shed at 2525 levels. A raw difference map reports the whole farm as changed. Fix it by differencing stable indices, masking crop cycles with land cover labels, or comparing same season dates.

The Quick Version

  • Change detection takes two coregistered views and returns a changed versus stable mask.
  • Coregistration plus radiometric normalization comes before any subtraction.
  • Change magnitude D=∣I2−I1∣D = |I_2 - I_1| plus a threshold TT makes the decision per pixel.
  • The fixture finds 200200 flooded pixels at T=20T = 20 because 42>20>642 > 20 > 6.
  • Report change in ground units and state TT alongside every map.