Deconvolution Explained: Recovering Detail the Atmosphere Blurred

What deconvolution actually does, why it's the biggest quality lever in deep-sky processing, and the three cases where running it makes your image worse.

Deconvolution has a reputation for being both the most powerful step in deep-sky processing and the one most likely to ruin an image. Both halves are true, and they have the same cause: it is an iterative method that converges toward sharper detail and then, if left running, toward amplified noise and ringed stars.

Understanding where that turn happens is most of what you need.

Every star is a picture of the same thing

A star is a point source. It is unimaginably far away and has no measurable angular size through amateur optics. Whatever shape it takes on your sensor is not the star — it is what your optics, your tracking and the atmosphere did to a point.

That shape is the point spread function, and because your frame is full of stars, your frame tells you what it is.

This is the insight the whole method rests on. You do not need to guess how blurred your image is. You can measure it, from the image itself, using objects whose true appearance is known exactly.

Knowing the blur, you can partly undo it. Richardson–Lucy — the standard approach — works iteratively: guess what the unblurred image was, blur that guess by the known PSF, compare against what you actually recorded, and adjust. Repeat.

Each iteration moves the estimate closer to something that, when blurred, matches your data.

Where it goes wrong

The catch is that “matches your data” includes matching the noise.

Real detail recovery converges. After enough iterations the genuine structure has been recovered and further iterations start explaining the noise — inventing sharp features that correspond to nothing. Stars develop dark rings; the background acquires a mottled texture that looks like fine detail and is entirely fabricated.

This is why every tool exposes an iteration count and why the standard advice is to stop early. It is also why deconvolution has a reputation for artefacts: the failure is gradual and the early stages of it look like sharpening.

Measuring the PSF properly

If the PSF is measured from stars, which stars you use matters.

Exclude saturated stars. A clipped core has no width left to measure. Its profile is a flat-topped plateau whose apparent size depends on how badly it clipped, not on the seeing. Including them biases the estimate wide, which means deconvolving with a blur larger than the real one — and that over-sharpens everything.

Exclude outliers. A close double star measures as one very broad object. A cosmic ray hit measures as one very narrow one. Take the median of the measured widths and discard anything far from it, and both disappear without needing a threshold anyone has to choose.

Check the shape. If the stars are consistently elongated, the blur is not seeing — it is tracking error, field curvature, coma or sensor tilt. Those produce an asymmetric PSF, and deconvolving with a symmetric model turns oval stars into dumbbells. This is one of the most recognisable deconvolution artefacts and it is entirely avoidable by checking eccentricity first.

The three cases where you should not run it

Deconvolution is not always an improvement, and the cases where it is not are identifiable in advance.

Already sharp. If your stars are around two pixels across, the image is sampled at roughly the limit the pixel grid can express. There is no blur to undo, and iterating just sharpens noise into artefacts. Undersampled data — stars landing on very few pixels — is common with short focal lengths and small sensors, and it is exactly where deconvolution has nothing to offer.

Too noisy. Deconvolution amplifies noise as a matter of arithmetic. On a shallow or high-ISO stack it will amplify grain faster than it recovers structure, and the result looks worse at every setting. There is no iteration count that rescues a stack without enough signal.

Elongated stars. As above: the model is wrong for the blur, and applying it makes the shape defect worse rather than better.

Each of these is measurable before running anything. Star width tells you the first, measured noise and signal-to-noise the second, eccentricity the third.

Where it acts matters as much as how hard

The background is where deconvolution does its visible damage.

There is nothing there to recover — empty sky contains no structure, only noise — so every iteration applied to it is pure noise amplification. Meanwhile the object is where all the recoverable detail lives.

Gating the correction by signal strength solves this: full strength on the object, none on empty sky, with a smooth transition so no edge appears where the gate turns on. The sky comes back untouched and the object gets the full benefit.

This is the same reasoning behind masks in manual workflows, arrived at from the other direction. The mask is not a stylistic choice; it is a statement about where the method is valid.

Colour, and why luminance only

An astrophotograph’s sharpness lives almost entirely in its luminance. The eye resolves brightness detail far better than colour detail — the reason every video codec stores chroma at reduced resolution.

So deconvolve the luminance and carry the colour through as a ratio. This costs a third as much computation as doing three channels, and it avoids a real artefact: channels converge at slightly different rates, which produces colour fringing at every edge. Doing it once, on brightness, sidesteps that entirely.

Deconvolution is not sharpening

Worth being precise, because they are routinely conflated.

Sharpening — unsharp masking, wavelet gain — increases local contrast. It makes edges more visible by exaggerating the difference across them. It adds no information and, applied hard, produces halos.

Deconvolution attempts to invert a known physical process. Within the limits of the noise, what it recovers was genuinely present in the data and merely spread out. It is a reconstruction rather than an enhancement.

In practice both are used, and deconvolution belongs first, on linear data, before any stretch. The blur is a linear process — a convolution of the true image with the PSF — and undoing it after a nonlinear stretch means solving the wrong problem. The relationship the method depends on no longer holds.

What it cannot do

Deconvolution cannot recover detail your optics never resolved. If two stars are closer together than your aperture can separate, no amount of processing separates them. The information is not attenuated; it was never recorded.

It also cannot recover detail buried below the noise floor. Signal that never rose above the noise is not blurred, it is absent, and the method has nothing to work with.

What it recovers is detail that was recorded and then spread out — which, on a well-tracked stack in average seeing, is a great deal. That is why it is the largest single quality lever available. But it is a lever on data you already have, and no substitute for having it.

In practice

If you are doing this by hand: measure your star FWHM, check eccentricity is low, confirm your stack has real signal-to-noise, build a mask that confines the correction to the object, start with few iterations and stop as soon as the background starts to change.

If your software measures the PSF from your own stars, derives the strength from the measured signal-to-noise, gates the correction by signal, and declines outright in the three bad cases — you get the same result without the vocabulary, and the case where it should not run is the one you most want handled for you, because it is the one that silently damages images.

Try it on your own data

Akastroid does everything in this guide automatically, and tells you what it did.

Download Akastroid — free