I have a series of images which are vignetted - an artefact which I want to reduce from the images (see the smoothed and down-sampled image). enter image description here

My approach is to subtract a heavily-smoothed version from the actual image to remove the inhomongeious background brightness, however the results of that were far from satisfactorily. Changing the black point of the image obviously does not work either.

Is there a way I miss to deal with such problem?

Information on the lens vignetting behaviour are not available beyond what I see on images.

An approach I can imagine to work is to subtract a frequency-filtered version of the image where I only retain the very low radial-symmetric frequencies from the original, thus keeping the high-frequency content of stars and galaxies intact. Yet I fail to find any way to do so safe than writing such plugin myself. Do I miss any approach with gimp (or another programme which I can get working on linux)?

  • \$\begingroup\$ This comment won't answer your question but it may help. Lenses tends to have more vignetting wide open. Maybe you can shoot with less aperture? One or two stops less than wide open. On the other hand, if you do stacking, you may use flat frames. Flats correct vignetting before stacking. \$\endgroup\$
    – vsis
    Apr 7, 2020 at 16:31
  • 1
    \$\begingroup\$ Yep, flat fields are a solution I shall try to employ. Stepping down is no option: telescopes have no iris to change and are fixed in that regard. Also you want all light you can get when a single exposure takes minutes. \$\endgroup\$ Apr 8, 2020 at 0:48

2 Answers 2


Two techniques:

The old technique (Gimp or Photoshop)

  • Duplicate your image
  • Set the top layer to Grain extract
  • Apply a Gaussian blur to the top layer, enough to make vignetting disappear, but before halos appear around bright objects.

enter image description here

  • The result will have a mostly gray background so use Curves or else to restore the blackpoint and add a bit of contrast.

enter image description here

A more modern technique (Gimp does it, I don't know if PS does it...)

  • Apply wavelet decomposition to your image. This transforms it into a stack of layers, each layer representing a level of detail. The bottom one (aka "Residual") is the very low frequency stuff.
  • Bucket fill the Residual with black
  • Optionally, duplicate the fine detail layers to give some "pop" to the stars

enter image description here

  • \$\begingroup\$ Thank you for the verbose answer and showing both methods. That opens new ways for me to get something out of images where I have no decent flats \$\endgroup\$ Apr 8, 2020 at 0:52
  • \$\begingroup\$ Awesome, Wavelet Decomposition was most instructive, thanks! \$\endgroup\$ Apr 8, 2020 at 20:50

Old school method: stop down your lens a bit.

Many relatively wide-angle lenses (say, 35 mm on a 24x36mm frame or sensor) will vignette when wide open, but will cover the frame evenly when closed down one or two stops -- and some lenses that "don't cover the frame" (like a common 105 mm made for 6x9 cm film used in a 4x5 inch camera) will gain significantly in coverage when stopped down to around f/11 or smaller.

since your image looks very much as if you're sky-tracking, the option probably exists to reduce your aperture by one or two stops, and increase exposure time accordingly. Assuming the center brightness isn't due to air transparency problems or light pollution, this will likely improve the overall evenness of exposure.

  • \$\begingroup\$ The OP is using a telescope with fixed aperture, so it can't be stopped down. The solution here is to shoot flat frames. \$\endgroup\$
    – vsis
    Apr 9, 2020 at 20:19
  • \$\begingroup\$ Of course it's possible to stop down. A circular aperture just in front of the objective (or at the front end of the optical tube, if it's a reflector) does this. Can even be made of cardboard, at least for testing purposes. One of my 105 mm reflectors came with an aperture stop for Lunar viewing. \$\endgroup\$
    – Zeiss Ikon
    Apr 10, 2020 at 11:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.