What it refuses to do, and the words it uses

Star Trail Stacker refuses rather than guesses whenever guessing would produce a picture that looks right and is wrong, and every refusal names itself and says what to do instead — because a tool that guesses leaves nothing downstream able to tell.

Why a refusal is the good outcome

The failure to be afraid of in this kind of tool is not the one that stops. It is the one that continues: a set of frames from two cameras stacked into a picture that is slightly soft everywhere, a RAW file read through the wrong decoder so a night of 160×120 thumbnails comes out looking plausible, an aircraft search that could not tell a star trail from an aeroplane and deleted one of them. Each of those produces a file you can open, and nothing afterwards can tell you which half is wrong.

So where this tool cannot tell, it says so and stops, with the two things a refusal owes you: what it found, and what to do about it.

Refusals at the door, before any pixel is read

What you seeWhat it meansWhat to do
These frames are not all the same size A stack combines pixel with pixel. It names both sizes it found. Look for a crop, a rotated frame, or a different aspect ratio in the set.
These frames are not all colour, or not all greyscale A stack combines channel with channel; neither is silently converted into the other. Choose one or the other.
These frames came from two different cameras Two bodies mean two sensors, two noise floors and two scales. Stack each camera's night separately.
This folder has both RAW files and ordinary pictures in it One is sensor samples, the other is a developed picture. They are not the same measurement. Pick the RAW files if you have them.
None of these files is an image this tool reads Nothing in the selection matched a format it can decode. What it can read lists every one, and which have had a real file through them.

Refusals during the run, which cost one frame rather than the night

Controls that switch themselves off, and always say why

A greyed-out control with no reason reads as a bug. Two of them turn themselves off on purpose: gap filling needs trails to fill along, so it is unavailable on a darken fold; and the trail taper needs the record of which frame won each pixel, which a plain lighten does not keep. Both name their reason on the page rather than leaving you to work it out.

The words this tool uses

Equalised lighten
The default fold. Each frame's sky is brought to a common level before the maximum is taken, so one brightening cloud cannot win the whole picture. A plain lighten does not, which is why it loses faint trails.
Residual
A frame with its own sky model subtracted and its own noise divided out, so a pixel's value is in units of that frame's noise rather than in brightness. Everything the trail search does happens here.
Sigma
One standard deviation of the local noise. "Four sigma" means four times as far from the sky as the noise usually wanders.
Donor frame
A neighbouring exposure that can supply the sky underneath a removed trail. Without one, nothing is removed.
Matched filter
Summing along a hypothesised line instead of thresholding pixels. A faint streak that never crosses a threshold in any single pixel is a strong signal once its whole length is added up.
Registration
Measuring how far each frame moved against a reference and correcting it, so stars land on stars.
Point spread function, FWHM
How a point of light is smeared by the optics and the air. Its full width at half maximum, in pixels, is the scale that separates a star from something longer.
Drizzle
Placing each frame's samples onto a finer grid, which recovers detail only if the frames are dithered — that is, if the sky moved by fractions of a pixel between them.
Wavelet layers
Splitting a picture into scales, so structure a few pixels across can be strengthened without touching structure a hundred pixels across.
Linear, stretched
Linear means a pixel's number is proportional to the light that landed. Stretched means a curve has been applied to make the faint end visible. Measurements belong on the linear one.
Signed and unclamped
A pixel below the sky background keeps its negative value instead of being clipped at zero, and a bright star keeps its value instead of being flattened to white. Both matter to whatever processes the file next.

Try it on your own night

Open the stacker Nothing is uploaded and nothing is installed; the frames are read in your browser.