Robert D Feinman

Correcting Wide Angle Vignetting in 8 or 16 bit Images


One of the problems with ultra wide angle lenses is light fall off in the corners.
This is caused by a variety of factors, especially the extreme oblique angle of the rays reaching the corners.
Here is an example of the original image shot with the Voightlander 12mm lens on 35mm film. The horizontal angle of view is about 112º.
Notice the darkening of the snow in the lower corners. Other optics with a similar problem include the X-Pan camera and the Super Angulon lenses.

Original Image
Original Image

The traditional way to offset this is by means of a center darkening filter. This is a filter which is darker in the center and clear at the edges. It compensates for the light falloff when the picture is taken. The downside to this is the expense of the filter and the loss of one to two stops to compensate for the filter density.

We want to do this digitally. The first step is to use a negative film rather than transparency film. Negative films have enough latitude to accommodate the exposure variations. Set the film speed to 2/3 to one stop lower than the rated speed. So, for example, shoot 200 ISO film at 100 or 125. This way the corners will get full exposure while the center will fall within the overexposure latitude of the film.

original info panel
Original Image Brightness Readings
Center Snow #1
Lower Right Corner Snow #2

Here is a way to achieve similar results using Photoshop.

As explained in several other tips, large changes in brightness are better done using 16bit images. The finer adjustment to values will minimize posterization.
Unfortunately all the tricks with filters and layers are not allowed in 16bit images.
Duplicate the 16 bit image and convert to 8 bits.

Now add a gradient fill adjustment layer above the 8 bit image. Set the gradient to black to white, radial and scale to 150%. The second image shows the layers palette after this step. You can modify the gradient itself or change the scale if necessary.

gradient fill dialog
Gradient Fill Dialog

gradient layers
Gradient Fill Layers

Next we need to "rasterize" the gradient so that it contains actual pixels, not just a mathematical formula. Select rasterize fill content from the layers menu. The layer will now become visible as shown. Notice how the icon on the layers panel has changed as well.  It now shows the actual shades of the gradient.

Go to the channels pallet and control select on the RGB image icon to select the brightness channel of the gradient. This is called load channel selection.

gradient fill
Gradient Fill Rasterized
layers pallet
Rasterized Gradient Fill Layers
Return to the main image and you should see the selection as a circle in the center of the image. Pixels that are less than 50% selected do not show but in this view but are still selected.

We click in the image and drag it to the 16 bit original while keeping the shift key depressed so the selection falls exactly centered on the image.

load selection
Gradient Fill Layer Selection
Set a couple of samples in the image in the center and the corner.

Open the curves dialog and shift the brightness upward to lighten the corners. Keep an eye on the info pallet to see the changes.
brighten corners curve
Brighten Corners Curve

Here is the image after the curves adjustment. Notice that the corners are lighter than in the original.

Next we invert the selection (Control-Shift-I). The selection will appear not to change but it is now the opposite of before.

after brighten corners
After Brighten Corners
Open the curves dialog again and shift the brightness downward to darken the center. Keep an eye on the info pallet to see the changes.

We do this in two steps so that all the changes won't be concentrated on one part of the image. This makes the effects blend better and prevents color shifts.

darken center curve
Darken Center Curve
Here is the image after the second curves adjustment. Notice that the corners are lighter than in the original and the center is darker. Thus we have balanced the darkening effect of the wide angle lens.
after darken center
After Darken Center
We now make some overall color and brightness adjustments. We also fix the perspective distortion and crop to final size.

Here is the info panel for the final image. Compared to the original image the corner is about 40 values brighter.

final info
Final Image Brightness Readings
Here is the final image. The original is below it for comparison.
Because of the overall adjustments, the center of the image is almost the same brightness as before, but this is an aesthetic decision and also depends on the settings used when the original negative was scanned.

It is important to capture all the values in the negative and not permit the scanner software to clip the bright or dark values or they may block up when then the brightness curves are applied.

As always the aim is to make subtle adjustments which compensate for deficiencies in the photographic process and not to make the adjustments obvious.

See the prior tip on simpler ways to do this.
Final Image
Final Image
original image
Original Image
Update for Photoshop CS:
It is now possible to do the editing with layers on 16 bit images as well. This means that it is no longer necessary to copy the selection from a duplicate 8 bit image.
In addition the curves can now be kept as layers so that fine tuning can be applied after both adjustments have been made.

Download the action in the right panel to fix vignetting using adjustment layers.
You may need to modify the curve and gradient amounts for your specific film contrast and lens.
Right click to download Photoshop action
Sponsored Advertisement

Back to Tips

Take some time to enjoy the rest of the site
Send email to robert.feinman@gmail.com

© 2003 Robert D Feinman