StarNet Software

AI-powered software for star removal and noise reduction in astrophotography.

Documentation

This section collects technical notes and usage guides for StarNet and DeepSNR: command-line references, input behavior, data-quality guidance, and workflow examples.

This section currently contains basic documentation. More usage notes, examples, and workflow details will be added as the site grows.

Use color images when possible

For StarNet star removal, there is no advantage in processing channels one by one. Color images carry more information and usually allow more precise star removal than separate grayscale channel processing.

Choose stride from star size

Stride should be based on the size of stars in the image. For wide-field images with generally small stars, use a high value such as 384 in current versions.

For most other images, the default 256 is the right starting point. Going below 256 is rarely useful unless you have a specific reason to test it.

Round stars and missed detections

Some missed stars have historically appeared in grayscale images with very round, soft stars. Color input usually helps. Another workaround is to add subtle diffraction-like spikes with external tools so StarNet has more star-like structure to identify.

If only a few stars are missed, it may be faster to repair them manually with a clone or healing tool instead of over-tuning the whole run.

Use 2× upsampling only when needed

The 2× option mainly helps images with very tight stars. It can reduce radiating artifacts around removed stars and can help StarNet catch tiny stars in complex regions.

Tight bright stars before and after StarNet showing radiating artifacts.
Tight bright stars can leave visible radiating artifacts without 2× upsampling.
Complex image region where StarNet misses tiny stars and leaves artifacts.
Small stars in complicated areas can be missed at normal scale.
Same tight-star region after using 2× upsampling.
The same kind of region after using 2× upsampling.
Complex region after 2× upsampling with improved star removal.
2× upsampling can also improve tiny-star removal in complex structures.

The tradeoff is processing time. 2× upsampling can take roughly four times as much compute/runtime, and very large stars can become harder to handle. Use it when the image needs it, not as a default for every frame.

Adjust stretch when StarNet removes image structure

Auto STF is a good starting point for star removal most of the time, but it is not always optimal. Bright high-frequency nebula detail can sometimes be mistaken for stars, especially in grayscale or narrowband images.

Veil Nebula region showing starless result and star mask after automatic stretch.
A Veil Nebula example where the first starless result looks plausible, but the mask shows structure was removed.
Zoomed Veil Nebula region showing bright filaments removed by StarNet.
Zooming in shows StarNet removed some bright filaments around Pickering's Triangle.

First try a color version if one is available. Color data can help the model distinguish stars from nebular structure.

Color version of the Veil Nebula example used for StarNet processing.
Color data is often a better StarNet input than isolated grayscale channels.

If color data is not available, 2× upsampling can help by increasing image scale before star removal.

Veil Nebula example after using 2× upsampling.
2× upsampling improves the result, but some bright filaments can still be affected.

Another useful option is to reduce the apparent brightness of the image before running StarNet. In PixInsight terms, this means moving STF sliders so the brightest non-star structures are less dominant.

Veil Nebula example after adjusting STF sliders before StarNet.
Reducing image brightness before star removal can preserve bright filaments.
Zoomed result after adjusting STF and using automatic stretch to inspect the output.
Inspect the result after adjustment using a consistent stretch.
Final starless Veil Nebula result after upsampling and stretch adjustment.
Combining 2× upsampling with a better stretch can produce a much cleaner starless result.

The original example used a linear image. Repeating the same process on a pre-stretched image may be less optimal, but it is still worth testing when no linear image is available.