Change Detection in Satellite Imagery
modelling Level 3

Change Detection in Satellite Imagery

Where did deforestation occur? How much urban area expanded? What burned in the wildfire? Change detection compares satellite images from different dates to map what changed. This model derives image differencing, NDVI change, change vector analysis, and post-classification comparison methods.

Prerequisites: image differencing, ratio methods, change vector analysis, thresholding

Updated 12 min read

1. The Question

How much forest was lost between 2010 and 2020?

Change detection identifies where and what type of change occurred:

Applications:

  • Deforestation: Forest loss mapping
  • Urban growth: City expansion tracking
  • Agriculture: Crop rotation patterns
  • Disaster assessment: Flood/fire damage extent
  • Coastal change: Erosion, land reclamation
  • Mining: Excavation monitoring

Challenges:

  • Phenology: Seasonal vegetation differences (not real change)
  • Sensor differences: Different satellites/settings
  • Atmospheric conditions: Clouds, haze, sun angle
  • Registration: Images must align precisely

The mathematical question: Given two co-registered images from different dates, how do we reliably identify actual change while minimizing false positives from natural variation?


2. The Conceptual Model

Types of Change

1. Land Cover Conversion

  • Forest → Urban (permanent)
  • Cropland → Wetland (land use change)

2. Condition Change

  • Healthy forest → Degraded forest (same class, different state)
  • Dense vegetation → Sparse vegetation

3. Temporary vs. Permanent

  • Snow cover (temporary)
  • Deforestation (permanent)
  • Crop harvest (seasonal)

Change Detection Methods

1. Image Differencing

\[\Delta = \text{Image}_2 - \text{Image}_1\]

Threshold to identify significant change.

2. Image Ratioing

\[R = \frac{\text{Image}_2}{\text{Image}_1}\]

Less sensitive to illumination differences.

3. NDVI Differencing

\[\Delta\text{NDVI} = \text{NDVI}_2 - \text{NDVI}_1\]

Negative = vegetation loss
Positive = vegetation gain

4. Change Vector Analysis (CVA)

Compute magnitude and direction of change in multi-dimensional space.

5. Post-Classification Comparison

Classify each image independently, then compare classes:

\[\text{Change} = (\text{Class}_1 \neq \text{Class}_2)\]

3. Building the Mathematical Model

Image Differencing

For band $i$:

\[\Delta_i = DN_{i,t_2} - DN_{i,t_1}\]

Where $DN$ = digital number (pixel value).

Change threshold:

\[|\Delta_i| > T_i\]

T can be:

  • Fixed: e.g., $T = 20$ (DN units)
  • Statistical: $T = k\sigma$ where $\sigma$ = standard deviation of $\Delta_i$ over stable areas
  • Adaptive: Vary spatially based on local variance

Typical: $T = 2\sigma$ or $3\sigma$ (95% or 99.7% confidence)

NDVI Change Detection

NDVI at time $t$:

\[\text{NDVI}_t = \frac{\text{NIR}_t - \text{Red}_t}{\text{NIR}_t + \text{Red}_t}\]

Change:

\[\Delta\text{NDVI} = \text{NDVI}_{t_2} - \text{NDVI}_{t_1}\]

Interpretation:

  • $\Delta\text{NDVI} < -0.2$: Significant vegetation loss (deforestation, fire)
  • $-0.2 \leq \Delta\text{NDVI} < -0.1$: Moderate degradation
  • $-0.1 \leq \Delta\text{NDVI} \leq 0.1$: No change (stable)
  • $\Delta\text{NDVI} > 0.1$: Vegetation increase (regrowth, greening)

Advantages:

  • Normalized (reduces illumination effects)
  • Directly interpretable (vegetation change)
  • Works across sensors

Change Vector Analysis (CVA)

Multi-band approach: Treat each pixel as vector in $n$-dimensional space.

Change vector:

\[\Delta\mathbf{x} = \mathbf{x}_{t_2} - \mathbf{x}_{t_1}\]

Where $\mathbf{x} = (B_1, B_2, \ldots, B_n)$ is spectral vector.

Change magnitude:

\[M = ||\Delta\mathbf{x}|| = \sqrt{\sum_{i=1}^{n} (B_{i,t_2} - B_{i,t_1})^2}\]

Change direction:

\[\theta = \arctan\left(\frac{\Delta B_2}{\Delta B_1}\right)\]

(For 2D case; generalizes to $n$ dimensions)

Interpretation:

  • Magnitude: How much changed
  • Direction: Type of change (e.g., vegetation loss vs. urban growth have different spectral trajectories)

Post-Classification Comparison

Algorithm:

1. Classify Image_t1 → Map_t1
2. Classify Image_t2 → Map_t2
3. Create change matrix:
   
   For each pixel (i, j):
       if Map_t1[i,j] != Map_t2[i,j]:
           Change[i,j] = type of transition
       else:
           Change[i,j] = no change

Change matrix (transition table):

  Forest_t2 Urban_t2 Water_t2
Forest_t1 8500 450 50
Urban_t1 20 1200 0
Water_t1 5 10 285

Analysis:

  • Diagonal: No change (stable)
  • Off-diagonal: Change
  • 450 pixels: Forest → Urban (deforestation + urbanization)

Advantage: Provides “from-to” information

Disadvantage: Errors in both classifications compound


4. Worked Example by Hand

Problem: Detect forest loss using NDVI differencing.

Pixel values:

Date 1 (2015):

  • Red = 0.08, NIR = 0.42

Date 2 (2020):

  • Red = 0.25, NIR = 0.28

Solution

Step 1: Calculate NDVI for each date

Date 1:

\[\text{NDVI}_1 = \frac{0.42 - 0.08}{0.42 + 0.08} = \frac{0.34}{0.50} = 0.68\]

Date 2:

\[\text{NDVI}_2 = \frac{0.28 - 0.25}{0.28 + 0.25} = \frac{0.03}{0.53} = 0.057\]

Step 2: Calculate NDVI change

\[\Delta\text{NDVI} = 0.057 - 0.68 = -0.623\]

Step 3: Interpret

Large negative change ($< -0.2$) → Significant vegetation loss

Likely: Deforestation or land clearing occurred between 2015 and 2020.

Original pixel: Dense vegetation (NDVI = 0.68, healthy forest)
New pixel: Bare soil or sparse vegetation (NDVI = 0.057)

Conclusion: Forest loss detected.


5. Computational Implementation

Below is an interactive change detection demo.

Total pixels: --

Changed pixels: --

Change rate: --%

Try this:

  • NDVI differencing: Most sensitive to vegetation change
  • Image differencing: Simple NIR band comparison
  • Change vector analysis: Uses both Red and NIR together
  • Adjust threshold: Higher = only major changes detected
  • Show change only: Isolates just the changed areas (red/green)
  • Time 1: All forest (uniformly green)
  • Time 2: Clearcut region visible (less green)
  • Change map: Red shows deforestation area clearly!

Key insight: Change detection reveals WHERE and HOW MUCH changed—critical for monitoring deforestation, urbanization, and disasters!


6. Interpretation

Global Forest Change

Hansen et al. (2013) Global Forest Change dataset:

  • 30m resolution, 2000-2023
  • Annual forest loss maps
  • Based on Landsat time series
  • Free, publicly available

Method: NDVI-based change detection + classification

Findings:

  • ~1.5 million km² forest lost 2000-2012
  • Brazil, Indonesia, Canada largest losses
  • Tropics most dynamic

Urban Growth Monitoring

Nighttime lights change detection:

  • VIIRS/DMSP satellite data
  • Increase in lights = urbanization
  • Independent of weather/season

NDVI decrease + impervious surface increase = urban expansion

Disaster Assessment

Rapid mapping after events:

Floods:

  • Water extent change (NIR differencing)
  • Pre-flood vs. during flood

Wildfires:

  • NDVI drop in burned areas
  • Burn severity mapping (dNBR)

Earthquakes:

  • Building collapse (texture change)
  • Landslides (slope failure)

Agricultural Monitoring

Crop rotation:

  • Annual land cover change
  • Corn-soybean patterns

Irrigation expansion:

  • NDVI increase in arid regions
  • Water use monitoring

7. What Could Go Wrong?

Phenological Differences

Images from different seasons:

Time 1: July (peak green)
Time 2: November (senescence)

Result: ΔNDVI < 0 everywhere (false change!)

Solution:

  • Use anniversary dates (same month/season)
  • Or normalize for phenology using time series
  • Multi-year baseline to understand natural variation

Atmospheric Differences

Haze, clouds, sun angle affect reflectance.

Apparent change from atmospheric conditions, not land cover.

Solution:

  • Atmospheric correction (essential!)
  • Cloud masking
  • Surface reflectance products (pre-corrected)

Registration Errors

Images misaligned by 1-2 pixels:

Edge pixels show false change.

Solution:

  • Co-registration (align precisely)
  • Sub-pixel accuracy (<0.5 pixel)
  • Buffer stable features to avoid edges

Classification Error Propagation

Post-classification comparison:

If each classification is 90% accurate:

Overall accuracy of change detection ≈ $0.9 \times 0.9 = 81\%$

Errors compound!

Solution:

  • Use direct change detection (differencing) when possible
  • Improve individual classifications first

8. Extension: Continuous Change Detection

Traditional: Compare two dates (binary change/no-change)

Time series approach: Continuous monitoring

BFAST (Breaks For Additive Season and Trend):

Decomposes time series into:

  • Trend (long-term change)
  • Seasonal (phenology)
  • Remainder (noise + abrupt changes)

Detects:

  • Gradual change (forest degradation)
  • Abrupt change (clearcut)
  • Timing of change (when it occurred)

LandTrendr (Landsat-based Detection of Trends in Disturbance and Recovery):

Fits segmented trajectories to NDVI time series:

  • Growth (reforestation)
  • Decline (degradation)
  • Stable (no change)

Advantage: Richer information than two-date comparison


9. Math Refresher: Statistical Thresholding

Normal Distribution Assumption

If $\Delta$ values for “no change” pixels follow normal distribution:

\[\Delta \sim N(0, \sigma^2)\]

Change threshold:

\[T = \mu + k\sigma\]

Where:

  • $\mu$ = mean (ideally 0 for radiometric correction)
  • $\sigma$ = standard deviation
  • $k$ = 2 (95% confidence) or 3 (99.7% confidence)

Estimating σ from Data

Use stable areas (known no-change):

1. Identify stable regions (water, urban cores)
2. Calculate Δ for these pixels
3. Estimate σ = std(Δ_stable)
4. Set T = k*σ

ROC Analysis

Receiver Operating Characteristic:

Plot True Positive Rate vs. False Positive Rate for different thresholds.

Optimal threshold: Maximize TPR while minimizing FPR

Area Under Curve (AUC): Measure of classifier quality

  • AUC = 1.0: Perfect
  • AUC = 0.5: Random

Summary

  • Change detection identifies where land cover changed between two dates
  • Image differencing: Simple subtraction, threshold for significant change
  • NDVI differencing: Normalized, reduces illumination effects, vegetation-specific
  • Change vector analysis (CVA): Multi-band magnitude and direction
  • Post-classification comparison: Provides from-to change matrix
  • Threshold selection: 2-3 standard deviations from stable area variation
  • Applications: Deforestation, urban growth, disaster assessment, agriculture
  • Challenges: Phenology, atmosphere, registration errors, classification error propagation
  • Time series methods: BFAST, LandTrendr for continuous monitoring
  • Critical for environmental monitoring and reporting (e.g., REDD+, SDG indicators)

References