Anonymous submission to ICRA 2027

SIGNN++Robust graph neural star identification on Earth

Authors withheld for review

Video

A drone on Earth views a patch of the celestial sphere; matched stars form a graph. Below, three real night-sky images with identified stars labelled by HR catalog number.
A camera on the ground sees a small patch of the celestial sphere. Identifying which stars those are fixes the camera's attitude, and with it a bearing that needs no satellite. The three images below show severe motion blur, cloud occlusion and star streaks, where SIGNN++ still identifies the stars and conventional SID methods fail. (Fig. 1)

Abstract

We present SIGNN++, a learning-based star identification (SID) framework for celestial navigation in GNSS-denied nighttime environments. Although researchers have developed learning-based SID methods to improve robustness to observation noise, prior evaluations focus mainly on synthetic or non-terrestrial environments, leaving their reliability under real terrestrial conditions unclear. In particular, prior work has not validated SIGNN, a graph neural network-based SID method with strong performance in virtual environments, on real night-sky images, and SIGNN shows degraded performance under combined noise. To address these limitations, SIGNN++ extends SIGNN with three components: a more realistic noise model for training data, Fourier Transform (FT) of angular-distance edge features, and RANSAC-based Perspective Star Alignment for identification and attitude refinement. We evaluate SIGNN++ through noise ablations, Stellarium simulations, and real terrestrial datasets containing random-view and sequential night-sky images. The results show that SIGNN++ is more robust to terrestrial observation disturbances and achieves higher star identification accuracy and solved rates than the original SIGNN and publicly available SID baselines, while maintaining comparable attitude accuracy and practical computation time for continuous operation.

How it works

  1. 1Star centroiding Bright pixels are grouped and reduced to sub-pixel centres of gravity.
  2. 2SIGNN+FT Stars become graph nodes; angular distances become edges, lifted into Fourier features so the network can separate geometrically similar pairs.
  3. 3Perspective Star Alignment RANSAC over the network's confident predictions recovers a rotation, then refines it jointly with the field of view.
  4. 4Star IDs and camera attitude Every detection is relabelled from the recovered pose.
SIGNN++ pipeline: input image, star centroiding, SIGNN+FT graph network with GATv2 layers and sinusoidal edge encoding, then Perspective Star Alignment (star selection, SVD, projection, consensus, attitude optimization), output star IDs and camera attitude.
SIGNN++ takes a night-sky image and returns star identities and the camera's attitude. Centroiding uses the centre-of-gravity method, and every SID method receives the same centroids for a fair comparison. (Fig. 2)

What SIGNN++ adds

A terrestrial noise model
Training samples carry four noise types at once rather than one at a time, with faint stars dropped more often and faint false stars generated more often — the way light pollution and cloud actually degrade a ground-based frame.
Fourier features on edge distances
A scalar angular distance is mapped through sinusoids at six frequencies, which counters the spectral bias of the network and makes near-identical edges separable. This is what recovers accuracy under positional noise.
Perspective Star Alignment
Pairs of high-confidence predictions each hypothesise a rotation by SVD; the hypothesis with the largest catalog consensus is kept and refined by iterative closest point and a Trust-Region-Reflective least-squares solve over rotation and field of view together. Identification and attitude are solved as one problem, so a network mistake can be corrected geometrically.
Four scatter plots in RA/Dec: drop noise removes real stars, false noise adds stars, magnitude noise perturbs brightness, position noise shifts stars slightly.
The four training noise types. Drop and false-star noise remove and add stars with fixed probabilities; magnitude and positional noise apply Gaussian perturbations. SIGNN++ applies all four to every training sample. (Fig. 3)

Evaluation setup

Three kinds of evaluation: a noise ablation on synthetic catalog data, a terrestrial simulation in Stellarium (light pollution and atmospheric refraction), and real night-sky images captured with an iPhone 15 Pro Max, with ground truth from Astrometry.net or a star tracker.

Orion without atmosphere on the left; on the right, detected centroids at Bortle levels 6, 7, 8 and 9, with 40, 35, 18 and 16 stars detected.
Light pollution rendered by Stellarium. The same Orion scene at Bortle levels 6 to 9: as the sky brightens, detected stars fall from 40 to 16. (Fig. 4)
Star positions without and with atmosphere; near the horizon each star is lifted upward by about 0.116 to 0.125 degrees.
Atmospheric refraction rendered by Stellarium. Near the horizon each centroid is displaced by about 0.12°. (Fig. 5)
A Rocket Lab ST-RT star tracker and an iPhone 15 Pro Max mounted together on a 3-axis rotation stage outdoors at night, with an iPhone image and illustrated star-tracker centroids.
Setup for the sequential real-sky dataset: a star tracker (Rocket Lab ST-RT) and an iPhone 15 Pro Max on a 3-axis rotation stage. The iPhone image is a real 500 ms exposure; the ST centroid panel is an illustration of the expected star locations. (Fig. 6)

Results

Noise ablation

Each noise type on its own, 11 levels each, on the catalog dataset.

Four line charts of pooled recall against noise level for drop, false-star, magnitude and position noise; SIGNN++ stays highest in all four.
Pooled recall of SIGNN, SIGNN+FT, SIGNN++, Tetra and ROSIA. Maximum levels are 50% drop, 50% false stars, 0.1 magnitude and 0.01 rad (≈0.5°) position. SIGNN++ is the most robust overall; the Fourier features alone (SIGNN+FT) account for most of the gain under positional noise, where Tetra is weakest. (Fig. 7)

Real night sky, random views

67 images from three nights, many containing cloud and motion blur. Ground truth from Astrometry.net.

Performance on the real random-view dataset
MethodSolved rate F1Time, solved Time, failedAttitude error
SIGNN59.7%32.63% 0.012 s0.012 s—
SIGNN++98.5% 98.32%0.366 s 0.001 s0.203°
ROSIA70.1%69.15% 0.532 s0.696 s0.328°
Tetra79.1%91.83% 0.593 s6.053 s0.183°

Attitude error is averaged over each method's own solved frames. On the 53 frames both methods solved, SIGNN++ and Tetra are statistically indistinguishable (0.194° against 0.183°, paired Wilcoxon p = 0.22), while SIGNN++ additionally returns an attitude on 13 frames where Tetra returns none.

A random-view real image with motion blur; SIGNN, SIGNN++, Tetra and ROSIA results side by side, with correct matches in green and mismatches in red. SIGNN++ is mostly green.
A random-view real image with motion blur from camera shake. Green marks a correct match, red a mismatch. Because SIGNN++ only connects stars 1–4° apart, duplicated centroids from blur do not break it. (Fig. 8)

Simulated light pollution

5,000 Stellarium frames across four Bortle levels, from bright suburban sky to inner city (see Fig. 4).

Performance across Bortle levels
MethodMetric Bortle 6Bortle 7 Bortle 8Bortle 9
SIGNNSolved rate 84.16%85.28%57.78%19.72%
F150.37%51.90%38.85%32.79%
SIGNN++Solved rate 96.88%95.68% 86.36%64.59%
F198.94%98.98% 99.06%98.69%
Attitude error0.04°0.03° 0.03°0.03°
ROSIASolved rate 82.00%82.24%53.45%16.35%
F195.02%94.64%91.31%85.40%
Attitude error0.29°0.30°0.38°0.67°
TetraSolved rate 79.52%79.76%60.35%21.45%
F198.02%98.03% 97.63%97.01%
Attitude error0.03°0.03° 0.03°0.03°

At Bortle 9 the baselines fall below a 22% solved rate while SIGNN++ holds 64.59%. Its F1 barely moves across the four levels, so the frames it does solve are solved just as cleanly in the worst sky as the best.

Looking at the horizon

Elevation 10–30°, where atmospheric refraction displaces centroids (see Fig. 5), against 50–90° overhead.

Performance by horizontality
MethodMetric SkyHorizon
SIGNNSolved rate 76.00%47.87%
F151.14 ± 18.44%39.92 ± 15.59%
SIGNN++Solved rate 94.87%77.06%
F199.07 ± 2.07% 98.77 ± 2.82%
Attitude error0.026 ± 0.032° 0.035 ± 0.034°
ROSIASolved rate 75.12%42.28%
F195.09 ± 9.84%90.32 ± 14.51%
Attitude error0.292 ± 0.530°0.427 ± 0.613°
TetraSolved rate 77.40%43.45%
F197.93 ± 2.24%97.68 ± 2.59%
Attitude error0.025 ± 0.014° 0.031 ± 0.033°

Near the horizon the baselines solve fewer than half the frames. SIGNN++ keeps 77%, which the noise ablation predicts: refraction displaces centroids by around 0.002 rad, and that is inside the positional noise SIGNN++ was trained to absorb.

Continuous sequences

A camera and a star tracker on a rotation stage, 15 sequences at 0.5 fps under varying elevation, rotation axis and angular velocity (setup in Fig. 6).

Frames 3 to 5 of a sequence: top row input centroids as red crosses, bottom row SIGNN++ identifications as labelled green circles; a zoomed crop shows one star streak detected as two overlapping centroids.
SIGNN++ on the fifth sequence (top: input centroids, bottom: identified stars). In the crop, a star streak is detected as two separate centroids, which makes the other SID methods fail; SIGNN++ still identifies the stars. (Fig. 9)

Identification under real conditions

SIGNN++ output on real terrestrial images (the three panels of Fig. 1).

Citation

@inproceedings{signnpp,
  title     = {SIGNN++: Robust Graph Neural Star Identification on Earth},
  author    = {Anonymous},
  booktitle = {Under review},
  year      = {2027}
}