Faint Light

Fast plate-solving/astrometry implementation in Rust.

Same API as astrometry.net's Nova.

Solves 10-100× faster using the same index files.

Warning: This project is still in beta. Currently solving 99.2% of the images tested.

0 s 5 s 10 s 15 s 20 s Faint Light 0.32 s 99.2% solved offline astrometry.net (modified by us) 1.91 s 100% solved ansvr 7.11 s 98.4% solved PlateSolve 3 7.22 s 33.2% solved offline astrometry.net 10.1 s 100% solved ASTAP 19.9 s 32.4% solved Median wall time per blind solve. 256 real frames, one machine.
Blind solves: nothing is known about the frame. Faint Light is about 6× faster than the next solver and about 32× faster than an offline astrometry.net as installed.

About

Faint Light is a fast plate-solving program made out of a single static binary, written in Rust, that implements the same nova.astrometry.net HTTP API.

It also reads the standard astrometry.net index files directly. The 4100, 4200 and Gaia-based series all work, including the healpix-tiled files, so an existing local astrometry.net installation can share its index directory with Faint Light. There is no conversion step and no separate catalogue to download.

Since it's the same API, programs like NINA can simply point its plate-solving to Faint Light.

Features

Benchmark

The numbers in the charts come from a controlled benchmark of every plate-solving program that could be installed on one machine, run over one identical set of 256 real telescope images: ZTF science quadrants at 0.87° and TESS full-frame crops at 5.8° and 11.7°. All candidates read byte-identical index files.

Benchmark machine: AMD Ryzen 9 9950X3D, 64 GB DDR5.

100 ms 1 s 10 s LOG SCALE Faint Light 0.32 s 0.12 s offline astrometry.net (modified by us) 1.91 s 1.31 s offline astrometry.net 10.1 s 9.96 s ansvr 7.11 s 4.85 s PlateSolve 3 7.22 s 1.12 s ASTAP 19.9 s 0.13 s blind field size known field size and position known Median wall time on a logarithmic axis: each grid step is 10× the previous one. Same 256 images at three hint levels.
Logarithmic axis. The same 256 images solved blind, then with the field size known, then with field size and position known. Faint Light gains 2.6× from a hint. Offline astrometry.net as installed gains nothing, because its latency is the job queue, not the solver.
0 s 2 s 4 s 6 s 8 s 10 s 12 s 0.87° field 5.8° field 11.7° field Faint Light offline astrometry.net (modified by us) ansvr offline astrometry.net Median wall time per blind solve. ZTF quadrants (0.87°) and TESS crops (5.8°, 11.7°).
Blind solve time against field of view, for the four solvers that solve all three classes. Faint Light stays under a second across the range.

About the two astrometry.net entries

The unmodified version of offline astrometry.net adds roughly 8 seconds of delay due to its job queue system. To provide a fair comparison, a modified version was also included in the benchmark, bypassing the job system and invoking the plate solver directly. This change alone represents a significant improvement for astrophotography software, reducing plate-solving time from around 10 seconds to less than a second. The impact is even greater during polar alignment, where dozens or sometimes hundreds of images may need to be plate-solved, causing the time savings to accumulate quickly.

Other candidates

Also tried but not on the chart: PlateSolve 2, which never matched a single frame; All Sky Plate Solver, a Windows wrapper around the same astrometry.net engine that solves interactively but failed every batch run; and twirl, which needs position, scale and online Gaia access, so it is not a blind solver. Note that ansvr, which is on the chart, is also astrometry.net underneath: a 2019 Cygwin build of it for Windows.

Please, e-mail me if you wish me to add other candidates not mentioned here.

Current challenges

On very wide, strongly distorted fields (the 11.7° TESS class) Faint Light finds the right field as reliably as offline astrometry.net, but its field-centre solution sits about 2.5× further from the solver consensus. At normal telescope scales the difference vanishes. Two of the 256 blind solves failed, both dense galactic-plane frames.

Worth checking the roadmap.

Download

Faint Light is open source under the Apache 2.0 licence.

Installation, configuration and the roadmap are in the repository at github.com/fschuindt/faint_light.