Citizen science · Open source

Measure the sky from many places at once.

UAP Finder is a network of passive, sky-facing cameras in volunteers' homes that triangulates unidentified aerial objects from two or more viewpoints miles apart, turning sightings into measured 3D tracks with altitude, speed, acceleration and error bars.

We make no claims about what anything is. We measure where it is and how it moves, and publish the uncertainty with every number.

Why stereo

One camera sees a direction. Two see a position.

A single video, however sharp, records where an object appears and how fast it crosses the frame, but not how far away it is. A bird 50 metres away and an airliner 10 kilometres away can trace exactly the same path across the image. Without distance there is no altitude, no true speed and no acceleration, only impressions.

When two cameras several miles apart see the same object at the same instant, their sight lines cross at the object. That crossing point is a position in three dimensions. Repeat it ten times a second and you have a track, from which speed and acceleration follow, each with a stated uncertainty.

One camera sees direction, not distance A single camera on the ground looks up along one line of sight. A small nearby bird, a mid-sized drone and a large distant aircraft all fill the same narrow cone, so they produce the same dot in the image. Without a second viewpoint the distance, and therefore altitude and true speed, are unknown. bird, 50 m? drone, 500 m? aircraft, 10 km? one camera same dot for all three camera image
Not to scale. Angular size and angular speed are identical for all three, so a single video cannot say how high, how big or how fast the object is.

Altitude

Comes straight from the triangulated position. Over typical node spacings, the error model predicts tens of metres of uncertainty for an object at 10 km, not the guesswork of a single viewpoint.

Speed

True speed is angular speed multiplied by distance. Stereo supplies the distance, so a fast-looking dot can be told apart from a slow, close one.

Acceleration

Estimated from curves fitted to the 3D track, never from noisy point-to-point differences. A high-g flag needs the lower end of the error range to exceed 10 g.

Why a network

Many cheap, passive, distributed eyes

The sky is large and interesting events are brief and rare. Professional sensors are few and their data is rarely public. A dense network of modest cameras, always watching and synchronised to GPS time, covers more sky more of the time, and every node added creates new stereo pairs.

Passive

Cameras only receive light. There is no radar and no emission; each node sends small data packets and nothing else.

Distributed

Any two nodes 5–40 miles apart form a stereo baseline. Three or more sight lines over-determine a fix and expose false matches.

Off-the-shelf

A small AI computer, a camera module and a GPS receiver, all analysed on the device. See the parts list and prices.

Synchronised

GPS pulse-per-second timing keeps clocks aligned, so "simultaneous" really means within milliseconds across the network.

How it works

From pixels to a measured track

  1. Detect on the device

    Each node analyses its own video and discards stars, clouds, birds, insects and aircraft that broadcast their position (ADS-B).

  2. Send only metadata

    For what remains, the node sends direction, time and position: about half a kilobyte, ten times a second.

  3. Match and triangulate

    The server pairs sightings from nodes within 80 miles taken within 50 milliseconds of each other and intersects their sight lines.

  4. Track, then verify

    Fixes become 3D tracks with speed and acceleration. Only when two or more nodes agree does the server ask them for a short HD clip.

The full pipeline, error model and limitations

Stereo triangulation with two ground nodes Two cameras, node A and node B, sit on the ground several miles apart. Each draws a line of sight to the same object in the sky, surrounded by a narrow wedge of angular uncertainty. The lines cross at the object; the small diamond where the wedges overlap is the position uncertainty. The angle between the sight lines at the object is the parallax, and a dashed line from the object to the ground marks its altitude. Node A Node B object 5–40 miles 1 2 3 4 5
  1. Line of sight. Each node measures only a direction to the object: its azimuth and elevation, to about 0.01–0.05° when the camera is calibrated against the stars.
  2. Angular uncertainty. A small angular error becomes a sideways position error that grows with distance: range × angle.
  3. Position and its error. Where the sight lines cross is the estimate; the overlap of the two wedges is its uncertainty, published as sigma_m.
  4. Parallax. The angle between the sight lines at the object. Larger parallax pins down distance better, which is why nodes need to be miles apart.
  5. Altitude. Follows directly from the 3D position. Successive fixes, ten per second, give speed and acceleration.
Angles exaggerated for clarity. Real pointing errors are a few hundredths of a degree.

Network status

Checking the network…

Active nodes
— Not available
Active 3D tracks
— Not available
Packets per second
— Not available
Volunteers signed up
— Not available

Figures from the public network API, refreshed every 30 seconds. Packets are metadata only, averaged over the last 10 seconds.

What to expect

Most detections will turn out to be ordinary

Aircraft without ADS-B, satellites, balloons, drones, meteors, birds and insects near the lens, reflections and sensor artefacts: a sky camera sees all of them. Filtering removes many on the device; measurement explains most of the rest. That is the point. A track with altitude, speed and trajectory lets anyone test an explanation against data instead of arguing about a blurry video.

Whatever is left after that comes with numbers, error bars and the raw sight lines, so that others can check the work.

  • Measurement first. Position, altitude, speed and acceleration, each with its uncertainty.
  • Transparency. The code, the geometry and the error model are open source.
  • Privacy by design. Video stays on the node unless a confirmed stereo match asks for a clip. Public node locations are rounded to about 1 km.
  • Honest limits. We say what the system cannot do. Read the limitations.

Help build the network

Coverage grows one rooftop, yard or field at a time. Rural sites, where cameras are scarce, are especially valuable.