How Quartet Detects Aircraft from Space

Created by Brady Africk  |  Updated August 4 2026

Exploiting sub-second timing offsets between Sentinel-2 spectral bands to detect moving aircraft as collinear dot patterns in satellite imagery.

B2 (Blue) · B8 (NIR) · B3 (Green) · B4 (Red)

0
Spectral Bands
0
ML Features
~1s
Acquisition Window
10m
Pixel Resolution

1 The Key Idea

Sentinel-2 satellites take pictures of Earth using separate color filters — blue, near-infrared (NIR), green, and red — but they don't fire simultaneously. The filters fire in sequence over about one second: NIR ~0.26 s, green ~0.53 s, and red ~1.0 s after blue.

For anything on the ground — buildings, roads, fields — this doesn't matter. They don't move, so they look the same in all four images. But an aircraft moving at 800+ km/h covers about 220 meters in that one-second sequence.

Analogy: Imagine taking four photos of a highway, each at a slightly different time within one second. Parked cars look normal, but a speeding car appears as four separate dots — one in each photo, each at a slightly different position. That's exactly what Quartet looks for — hence the name.

The result: a flying aircraft shows up as four colored dots in a line — blue, NIR, green, red — while everything else on the ground appears as a single, ordinary point.

Real Examples from Sentinel-2

Each image below shows an actual aircraft detected in satellite imagery. Look for the blue, green, and red dots separated along the flight path.

Aircraft over ocean
Over ocean
Aircraft over desert
Over desert terrain
Aircraft over suburban area
Over suburban area

2 Finding Bright Dots

Aircraft are small (a 737 is about 3-4 pixels wide at this resolution) but surprisingly bright. Sunlight reflects off the metal fuselage, making them stand out against the darker ground below.

Quartet scans each color band separately, comparing every pixel to its local neighborhood. Pixels that are significantly brighter than their surroundings are flagged as candidates. Over a typical satellite tile (~110 km wide), this might find thousands of bright spots per color.

The brightness test also adapts to the scene. It relaxes over dark, calm water so faint over-water aircraft aren't missed, and tightens over clouds, snow, and sun-glint, where natural sparkle can mimic aircraft.

Analogy: Like looking at a dark parking lot from above at night — headlights stand out because they're much brighter than the asphalt around them, even though the parking lot has varying brightness across it.

3 Matching Triplets

Most bright spots are just noise — rooftops, wave crests, mineral deposits. Quartet filters them by looking for the specific pattern that only a moving aircraft produces: three dots in a straight line with the right spacing (the blue, green, and red dots — the fourth, NIR dot joins in step 5).

The spacing between dots depends on the aircraft's speed (faster = wider spacing), and the line direction reveals its heading. The green-red gap is roughly 0.907× the blue-green gap (set by the satellite's band-capture timing — 0.478 s vs 0.527 s), which provides a strong geometric test.

Of thousands of bright spots, typically only a handful form valid triplets.

4 AI Scoring

Even after geometric filtering, some false matches slip through — cloud edges, contrails, or coincidental alignments of bright features. Quartet uses a machine learning model (XGBoost) trained on ~63,000 human-labeled examples to score each candidate.

The model examines dozens of characteristics of each candidate — for example, whether the dot is bright in its own band but not in the others (the tell-tale sign of motion, since an aircraft's dot only appears in one band at each position), whether a contrail trails behind it, how uniform the surrounding terrain is, and whether the apparent speed is physically plausible — along with many finer spectral, geometric, and contextual cues. Together they separate real aircraft from look-alikes that fool simpler rules.

Candidates scoring above 60% confidence are kept as detections. The model's holdout F1 score is 0.96 (precision 0.97, recall 0.95 — very few false alarms, catches almost every aircraft).

Analogy: It's like having an expert photo analyst who has looked at 63,000 examples of "real aircraft" vs "things that look like aircraft" and learned the subtle differences that humans can see but are hard to put into rules.

5 The Fourth Band: Near-Infrared

Sentinel-2 also captures a near-infrared (NIR) band, invisible to human eyes but captured between the blue and green bands. This gives Quartet a fourth dot for each aircraft.

Four dots are better than three: the extra point confirms the detection is real (noise rarely produces four collinear dots at the right relative spacing) and improves speed/heading accuracy.

6 Verification with Flight Data

If you flip the ADS-B On toggle for a search, Quartet cross-references detections with ADS-B flight-tracking data — the position reports aircraft broadcast continuously, which public flight-tracking sites also receive. Quartet's source is adsb.lol, a community receiver network, and it is the only one a search queries. If a detection matches a known aircraft's reported position and timing, Quartet shows the aircraft's registration, callsign, altitude, and type.

A match is strong corroboration, not proof of identity. Quartet pairs a detection with the best-fitting aircraft within a distance allowance — about 2.5 km, widening as the ADS-B position ages — and does not use heading, because reported headings flip 180° too often to rely on. Over a busy airport, several aircraft can fit that allowance, so treat the registration as the most likely candidate and confirm it independently before publishing. Unmatched detections may be military aircraft, private flights without ADS-B transponders, or (rarely) false positives.

7 Imagery from Multiple Providers

Satellite imagery for any given date comes from multiple providers — Element84, Microsoft Planetary Computer, and CDSE. If one provider is lagging or missing a specific tile, Quartet automatically falls through to the next. You never have to think about where the data is coming from; the search just works. Tile imagery is cached on the server so repeat views are instant.

Why multiple providers? Each mirror of the Sentinel-2 archive ingests imagery on its own schedule. A tile missing from one provider on the day of capture is often already live on another.

By the Numbers

~63K
Training examples
96.1%
F1 score
53
ML features
10m
Pixel resolution
~1.0s
Blue→Red band offset
4 bands
B02 / B03 / B04 / B08