ONE PLANET

ONE CHANCE

 

REAL-TIME DISCOVERY OF NEAR EARTH OBJECTS VIA ACCELERATED IMAGE ANALYSIS WITH AI

NEODetect – Technical Deepdive

What information can you find on this page

  • What is NEODetect and how it works?
  • Who is recommended to use NEODetect?
  • What are the technical conditions for its use?
  • What will be needed to be able to participate in the Beta Test and then in production?

What is NEODetect and how it works

The temporal streak detection

Unlike conventional preprocessing approaches, which typically rely on a single image or a difference image focused on transient phenomena, the NEODetect system employs a preprocessing pipeline based on sequences of three images aligned via stellar registration. For both conceptual clarity and ease of visualization, the measurements are represented as three-channel, 16-bit BGR images, where the B, G, and R channels correspond to observations taken at epochs T-1, T0, and T+1, respectively. Beyond standard dark, flat, bias calibration and iterative median filtering of the background, no additional preprocessing steps are applied. The principal objective is to enable the detection of streaks at the lowest possible signal-to-noise ratios (SNR). To avoid introducing interpolation artifacts, image alignment is performed using only pixel shifts. Inevitably, subpixel displacements during acquisition or variations in atmospheric seeing introduce differences in the images of otherwise static sources (e.g., stars, galaxies). In difference imaging, such discrepancies may persist and cannot be fully eliminated through subtraction. Consequently, a neural network trained solely on difference images cannot account for the origin of these signals. In contrast, the NEODetect input data preserves all such information in its original form, thereby providing the neural network with the opportunity to learn and distinguish various phenomena arising during the imaging process (e.g., cosmic rays, CCD amplification artifacts, diffraction spikes, seeing variations).
Following semantic segmentation by the neural network, all regions across the three temporal frames that may correspond to NEO candidates are identified. The initial step is to merge candidate detections across the image plane axes. Due to the high-noise environment, detected streaks often appear as discontinuous fragments rather than contiguous features. These fragments are typically collinear and share a common orientation, as determined by line fitting. After merging, the system searches across the temporal axis for collinear, directionally consistent segments, taking into account both the acquisition times and the exposure fill factor. If collinear candidate fragments are identified, share a consistent direction, and exhibit a coherent temporal sequence with the T0 segment always centrally positioned, the NEO candidate is added to a provisional list.

The imposition of chronological alignment – as a constraint – results in the automatic exclusion of 99.2% of false positives: in the test dataset, 71,995,819 of 72,575,480 candidates were classified as pixel noise or cosmic ray artifacts. The remaining 579,661 candidates, however, still represent an excessive number of false positives. To further minimize this figure, an additional criterion called the temporal consequence filter is enforced: there must exist at least one subsequent triplet of images containing a consistent continuation of the candidate within the measurement sequence, i.e., an independent NEO candidate whose position, direction, and apparent speed are compatible with the preceding detection. Only detections that satisfy this condition are reported and stored in the database.

How and what did the neural network learn?

The neural network needs lots of examples to learn. By definition, the number of real samples is small, so we created synthetic data. To have full control over what the neural network can learn, we used the following free parameters:

  • Synthetic NEO speed between 2″-500″ / min
  • Synthetic NEO direction: anything from 0-360 degrees on the image
  • CCD readout time: 0.1-1.5 exposure time ratio
  • Signal level: 0.25-10 SNR
  • FWHM: 0.7-2 pixels (for binned case)
  • Exposure times: 10-60 seconds

 

Our real dataset contains 208k binned 5k x 5k CCD images. The synthetic Near Earth Object (NEO) dataset was generated utilizing the terminal frame from each observation sequence within the 208k images, yielding 23,952 one-megapixel tiles. This dataset was divided into two equal subsets to accommodate different apparent motion profiles:

  • For the first subset, high-apparent motion synthetic NEOs were simulated with random velocities ranging from 50 to 500 arcseconds per minute, distributed non-overlappingly at a density of 676 objects per 25 tiles.
  • The second subset employed a similar methodology to generate slow-moving NEOs, with a higher density of 65,536 objects per 25-tile pack.

 

This balanced approach resulted in the creation of approximately 323,000 fast-moving and 31.4 million slow-moving synthetic NEOs. The signal-to-noise ratio (SNR) of the simulated NEOs relative to background noise was varied from 0.25 to 10. Notably, NEOs with an SNR of 0.25 are not directly detectable in single images and require advanced software tracking techniques for identification.

What does NEODetect do with the raw image?

  1. Fast astrometric/plate solving
  2. Image calibration with previously sent dark/flat/bias master frames
  3. Image tiling for neural network inference
  4. Inference
  5. Collecting candidates
  6. Removing false positives based on statistical information and constraints
  7. Matching with satellites and known space debris (~40k elements dataset)
  8. Matching with known asteroids (~1.3M elements dataset)
  9. Sending analysis results

What is the difference between NEODetect and synthetic/software tracking algorithms?

Synthetic tracking improves the signal-to-noise ratio (SNR) of moving targets by stacking the images with different displacement vectors. After that, the NEO is detected using traditional methods. A star-like (or minimally elongated shape) signal above an SNR threshold value is considered a hit.

Pros:

  • It is very simple to implement and use
  • In theory, any faint celestial body can be discovered, it just depends on the number of images

Cons:

  • Only objects with almost star-like traces can be searched with it.
  • It requires enormous computing power, which is O(n2) related to the number of images and the apparent speed of NEO
  • a large number of observations are required from the same sky area, therefore the sky area that can be examined in one night is low.
  • Synthetic tracking is a post-processing function, the calculation can only be started after all recordings have been recorded, which can also take longer than the recording time

 

NEODetect uses a neural network in the basic configuration to search for NEO traces from 4 consecutive recordings. Taking advantage of the necessary changes in the image sequence caused by continuous movement, it can register hits with a very low SNR (<0.5).

Pros:

  • 4 shots are sufficient for its use, so maximum sky area scanning can be achieved.
  • NEOs of any speed can be detected with it, which is why the system can also be used for space debris detection and tracking
  • It can detect signals with SNR <0.5
  • It enables real-time processing and also gives partial results from the arrival of the 3rd image.
  • Adding more images can increase the confidence level
  • It has very low computational requirements and is therefore extremely economical

Cons:

  • It is not possible to increase the sensitivity by adding additional measurements
  • Its implementation and operation is complex

Who should choose which method?

Observatories performing confirmatory detections look for objects that have already been found. In this situation, the use of software/synthetic tracking methods is recommended, since an object discovered with a larger telescope can be easily confirmed with smaller telescopes. In addition, due to the known apparent motion, the search space of the stacking algorithm can be narrowed.

For observatories performing primary discovery, the scannable sky size should be preferred. In this case, we recommend using NEODetect, since based on our statistics so far, 2.5 – 3x more discoveries can be achieved in the same time than wit a consolidated (18 images per sky area) software tracking detection program.

Technical conditions for using NEODetect

Faster NEOs are not like stars! The brightness of stars is influenced only by the telescope’s aperture. The brightness of NEOs is also affected by the field of view/focal ratio because regardless of the exposure time, it stays on a pixel for a given time. Therefore:

  • A telescope with good (equatorial) mounting and precise sidereal motion
  • Diameter: the larger the better
  • Focal ratio: the smaller the better
  • File format: standard FITS file or compressed (fz)
  • Telescope location: necessary (highest precision possible)
  • Providing RA/DEC: necessary
  • Providing resolution (arcsec/pixel): necessary
  • Plate solving: optional
  • Calibration frames: highly recommended
  • Internet connection: necessary
  • Upload bandwidth: minimum 10 mbit/s for 2kx2k images, 100mbit/s for 4kx4k or larger

Download bandwidth: not relevant

How to join the Beta Test?

  1. Contact via email or the registration form
  2. Provide necessary information about the telescope
  3. Contact with technical person
  4. Registration on NEODetect website
  5. Acceptance of terms of use
  6. Generate account and tenant for the telescope
  7. Setup necessary telescope parameters into the system
  8. Upload optional dark/flat/bias frames for calibration
  9. Consultation regarding the method of data transmission
  10. Test data transmission

What is the purpose of the Beta Test?

Checking the correct operation, detecting errors:

  • We primarily want to make sure that our planned service is operational even with the simultaneous use of many users.
  • We assess the availability and reveal the operation statistics of each module.

 

Examine whether individual training is necessary for different telescopes:

  • We do not yet know whether it is necessary to adapt the deep learning solution to telescopes individually. Ideally not, but if it does, then the question to be decided is whether a simpler fine-tuning is sufficient or a completely new training is necessary.
  • We tried to prepare the system for the presence of many artifacts, but we are definitely interested in how the system reacts to the various characteristic errors of different imaging devices

 

To explore the unknown

  • Searching for asteroids is not a new task. Despite this, we have very little information about how many smaller bodies (5-50m) pass near the Earth. These fast-moving, hard-to-detect objects have not yet been consciously followed programmatically.

 

Promote this new method

  • Devoting detection time and immediately following all fast-moving candidates is an exhausting task, so discoveries could be maximized primarily by building a community.
  • It is a non-zero-sum game and also a zero-sum mind trap. We can only achieve success if we give up the individual maximization interest and work cooperatively.
  • Our long-term goal is that, with the help of the NEODetect system, our users can jointly maximize the scannable sky area.