Deconvolution Explained: Recovering Detail the Atmosphere Blurred
What deconvolution 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 as the step in deep-sky processing that does the most good and the one most likely to ruin an image. Both are true, and for the same reason. It is an iterative method that moves toward sharper detail and then, if you let it keep running, toward amplified noise and ringed stars.
Most of what you need to know is where that turn happens.
Every star is a picture of the same thing
A star is a point source. It is so far away that it 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 (PSF). Your frame is full of stars, so your frame tells you what the PSF is.
The whole method rests on this. You do not have to guess how blurred your image is. You can measure it from the image itself, using objects whose true appearance you know exactly.
Once you know 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 it with what you recorded, and adjust. Then repeat.
Each iteration moves the estimate closer to something that, once blurred, matches your data.
Where it goes wrong
“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 by inventing sharp features that correspond to nothing. Stars develop dark rings. The background picks up a mottled texture that looks like fine detail and is entirely made up.
This is why every tool exposes an iteration count, and why the usual advice is to stop early. It is also why deconvolution has a reputation for artifacts: the failure comes on gradually, and its early stages look like sharpening.
Measuring the PSF properly
If the PSF is measured from stars, the choice of stars matters.
Leave out 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 those stars biases the estimate wide, so you deconvolve with a blur larger than the real one and over-sharpen everything.
Leave out outliers. A close double star measures as one very broad object, and a cosmic ray hit as one very narrow one. Take the median of the measured widths and discard anything far from it. Both disappear, and nobody has to choose a threshold.
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 give an asymmetric PSF, and deconvolving with a symmetric model turns oval stars into dumbbells. It is one of the most recognizable deconvolution artifacts, and checking eccentricity first avoids it completely.
The three cases where you should not run it
Deconvolution does not always help, and you can tell in advance when it won’t.
Already sharp. If your stars are around two pixels across, the image is sampled at roughly the limit the pixel grid can show. There is no blur to undo, and iterating only sharpens noise into artifacts. Undersampled data, with stars landing on very few pixels, is common with short focal lengths and small sensors, and deconvolution has nothing to offer it.
Too noisy. Deconvolution amplifies noise by its arithmetic. On a shallow or high-ISO stack it amplifies grain faster than it recovers structure, and the result looks worse at every setting. No iteration count rescues a stack that lacks signal.
Elongated stars. As above, the model is wrong for the blur, and applying it makes the shape defect worse.
You can measure each of these before running anything. Star width tells you the first, measured noise and signal-to-noise the second, and eccentricity the third.
Where it acts matters as much as how hard
The background is where deconvolution does its visible damage.
Empty sky contains no structure, only noise, so every iteration applied there only amplifies noise. All the recoverable detail is in the object.
Gating the correction by signal strength deals with this. Apply it at full strength on the object and not at all 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.
Masks in manual workflows follow the same reasoning from the other direction. A mask marks where the method is valid. It is not there for style.
Color, and why luminance only
Nearly all of an astrophotograph’s sharpness is in its luminance. The eye resolves brightness detail far better than color detail, which is why every video codec stores chroma at reduced resolution.
So deconvolve the luminance and carry the color through as a ratio. That takes a third of the computation of doing three channels, and it avoids a real artifact. The channels converge at slightly different rates, which puts color fringes on every edge. Doing it once, on brightness, avoids that.
Deconvolution is not sharpening
The two are often mixed up, so it is worth being precise.
Sharpening (unsharp masking, wavelet gain) increases local contrast. It makes edges more visible by exaggerating the difference across them. It adds no information and, pushed hard, produces halos.
Deconvolution tries to invert a known physical process. Within the limits set by the noise, what it recovers was present in the data and had been spread out. It reconstructs rather than enhances.
In practice you use both, and deconvolution comes first, on linear data, before any stretch. The blur is a linear process, a convolution of the true image with the PSF. Undoing it after a nonlinear stretch means solving the wrong problem, because 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 processing will separate them. That information was never recorded in the first place.
Nor can it recover detail below the noise floor. Signal that never rose above the noise is absent rather than blurred, and the method has nothing to work with.
What it recovers is detail that was recorded and then spread out. On a well-tracked stack in average seeing there is a lot of that, which is why it is the largest single quality lever available. It still only works on data you already have.
In practice
By hand: measure your star FWHM, check that 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.
Some software measures the PSF from your own stars, sets the strength from the measured signal-to-noise, gates the correction by signal, and refuses to run in the three bad cases. That gets you the same result without the vocabulary. The refusal is the part you most want automated, because running deconvolution where it shouldn’t run damages images without any obvious warning.
Try it on your own data
Akastroid runs its processing on your own frames and logs each step it took.
Download Akastroid